From 7eea57ebdb5f27e9983c88dffed85aedf12cc61a Mon Sep 17 00:00:00 2001 From: BenediktMehl Date: Mon, 17 Feb 2025 15:33:56 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20MaibornW?= =?UTF-8?q?olff/codecharta@384dc4a3ec8fb27d21fee60cd2ba82f9e32da26d=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- stg/visualization/codecharta.cc.json | 2 +- stg/visualization/codecharta.cc.json.gz | Bin 45618 -> 46368 bytes stg/visualization/codecharta_analysis.cc.json | 2 +- .../codecharta_analysis.cc.json.gz | Bin 29661 -> 29781 bytes stg/visualization/index.html | 2 +- ...64fa05ffa6.js => main.a780f3d1b87e953f.js} | 2 +- 6 files changed, 4 insertions(+), 4 deletions(-) rename stg/visualization/{main.37706c64fa05ffa6.js => main.a780f3d1b87e953f.js} (75%) diff --git a/stg/visualization/codecharta.cc.json b/stg/visualization/codecharta.cc.json index 1b0ca54525..50e7f8fe29 100644 --- a/stg/visualization/codecharta.cc.json +++ b/stg/visualization/codecharta.cc.json @@ -1 +1 @@ -{"data":{"projectName":"","nodes":[{"name":"root","type":"Folder","attributes":{},"children":[{"name":"app","type":"Folder","attributes":{},"children":[{"name":"app.config.ts","type":"File","attributes":{"line_coverage":0.0,"loc":61.0,"sonar_lines_to_cover":26.0,"rloc":56.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":26.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/app.config.ts","children":[]},{"name":"app.scss","type":"File","attributes":{"loc":49.0,"rloc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/app.scss","children":[]},{"name":"codeCharta","type":"Folder","attributes":{},"children":[{"name":"assets","type":"Folder","attributes":{},"children":[{"name":"gameObjectsFile.json","type":"File","attributes":{"loc":76.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/gameObjectsFile.json","children":[]},{"name":"helvetiker_regular.typeface.json","type":"File","attributes":{"loc":1282.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/helvetiker_regular.typeface.json","children":[]},{"name":"sample1.cc.json","type":"File","attributes":{"loc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/sample1.cc.json","children":[]},{"name":"sample2.cc.json","type":"File","attributes":{"loc":47.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/sample2.cc.json","children":[]},{"name":"sample3.cc.json","type":"File","attributes":{"loc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/sample3.cc.json","children":[]},{"name":"sample4.cc.json","type":"File","attributes":{"loc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/sample4.cc.json","children":[]},{"name":"scenarios.json","type":"File","attributes":{"loc":51.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/scenarios.json","children":[]},{"name":"area_icon_for_3D_print.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codecharta_logo.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"color_icon_for_3D_print.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"empty.png","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"favicon.ico","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"flatten.png","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"height_icon_for_3D_print.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"icon.icns","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"icon.ico","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"icon.png","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"logo.png","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mw_logo.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mw_logo_min.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mw_logo_text.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"output.cc.json.gz","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeCharta.api.model.ts","type":"File","attributes":{"line_coverage":100.0,"loc":62.0,"sonar_lines_to_cover":9.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/codeCharta.api.model.ts","children":[]},{"name":"codeCharta.component.html","type":"File","attributes":{"loc":15.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/codeCharta.component.html","children":[]},{"name":"codeCharta.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":41.0,"sonar_lines_to_cover":18.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/codeCharta.component.ts","children":[]},{"name":"codeCharta.model.ts","type":"File","attributes":{"line_coverage":100.0,"loc":386.0,"sonar_lines_to_cover":40.0,"rloc":338.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":2.0,"sonar_comment_lines_density":0.6,"sonar_complexity":6.0,"sonar_conditions_to_cover":26.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/codeCharta.model.ts","children":[]},{"name":"model","type":"Folder","attributes":{},"children":[{"name":"customConfig","type":"Folder","attributes":{},"children":[{"name":"customConfig.api.model.ts","type":"File","attributes":{"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":3.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/model/customConfig/customConfig.api.model.ts","children":[]}]},{"name":"files","type":"Folder","attributes":{},"children":[{"name":"files.helper.ts","type":"File","attributes":{"line_coverage":97.2,"loc":76.0,"sonar_lines_to_cover":36.0,"rloc":58.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":97.7,"sonar_file_complexity":26.0,"sonar_files":1.0,"functions":22.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":26.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":25.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/model/files/files.helper.ts","children":[]},{"name":"files.ts","type":"File","attributes":{"line_coverage":100.0,"loc":14.0,"sonar_lines_to_cover":5.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/model/files/files.ts","children":[]},{"name":"files.helper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"resources","type":"Folder","attributes":{},"children":[{"name":"fixed-folders","type":"Folder","attributes":{},"children":[{"name":"example.json","type":"File","attributes":{"loc":387.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/fixed-folders/example.json","children":[]},{"name":"fixed-folders-example.ts","type":"File","attributes":{"line_coverage":100.0,"loc":355.0,"sonar_lines_to_cover":3.0,"rloc":352.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/fixed-folders/fixed-folders-example.ts","children":[]}]},{"name":"minimalScene.json","type":"File","attributes":{"loc":2661.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/minimalScene.json","children":[]},{"name":"sample1_with_api_warning.cc.json","type":"File","attributes":{"loc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_api_warning.cc.json","children":[]},{"name":"sample1_with_different_edges.cc.json","type":"File","attributes":{"loc":102.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_different_edges.cc.json","children":[]},{"name":"sample1_with_lower_minor_api.cc.json","type":"File","attributes":{"loc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_lower_minor_api.cc.json","children":[]},{"name":"sample1_with_old_mcc_metric.cc.json","type":"File","attributes":{"loc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_old_mcc_metric.cc.json","children":[]},{"name":"sample1_with_rloc_0.cc.json","type":"File","attributes":{"loc":109.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_rloc_0.cc.json","children":[]},{"name":"fileStorage","type":"Folder","attributes":{},"link":"","children":[{"name":".gitkeep","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"usageData","type":"Folder","attributes":{},"link":"","children":[{"name":".gitkeep","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]}]},{"name":"services","type":"Folder","attributes":{},"children":[{"name":"3DExports","type":"Folder","attributes":{},"children":[{"name":"3DPreview","type":"Folder","attributes":{},"children":[{"name":"ColorChangeStrategies","type":"Folder","attributes":{},"children":[{"name":"backPrintColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":10.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/backPrintColorChangeStrategy.ts","children":[]},{"name":"baseplateColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":4.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/baseplateColorChangeStrategy.ts","children":[]},{"name":"colorChangeStrategy.ts","type":"File","attributes":{"loc":6.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/colorChangeStrategy.ts","children":[]},{"name":"frontPrintColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":8.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/frontPrintColorChangeStrategy.ts","children":[]},{"name":"negativePrintColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":6.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/negativePrintColorChangeStrategy.ts","children":[]},{"name":"neutralPrintColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":6.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/neutralPrintColorChangeStrategy.ts","children":[]},{"name":"positivePrintColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":6.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/positivePrintColorChangeStrategy.ts","children":[]},{"name":"backPrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"baseplateColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontPrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"negativePrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"neutralPrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"positivePrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"CreateGeometryStrategies","type":"Folder","attributes":{},"children":[{"name":"createBaseplateGeometryStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":17.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":3.0,"sonar_comment_lines_density":11.5,"sonar_complexity":3.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":15.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/CreateGeometryStrategies/createBaseplateGeometryStrategy.ts","children":[]},{"name":"createGeometryStrategy.ts","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/CreateGeometryStrategies/createGeometryStrategy.ts","children":[]},{"name":"createSvgGeometryStrategy.ts","type":"File","attributes":{"line_coverage":93.1,"loc":65.0,"sonar_lines_to_cover":29.0,"sonar_major_violations":1.0,"rloc":57.0,"sonar_minor_violations":0.0,"sonar_coverage":93.5,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":27.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/CreateGeometryStrategies/createSvgGeometryStrategy.ts","children":[]},{"name":"createTextGeometryStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":76.0,"sonar_lines_to_cover":29.0,"rloc":67.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":9.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":13.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":25.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/CreateGeometryStrategies/createTextGeometryStrategy.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"createBaseplateGeometryStrategy.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createSvgGeometryStrategy.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createTextGeometryStrategy.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"createBaseplateGeometryStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createSvgGeometryStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createTextGeometryStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"MeshModels","type":"Folder","attributes":{},"children":[{"name":"BackMeshModels","type":"Folder","attributes":{},"children":[{"name":"backBelowLogoTextMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":5.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/backBelowLogoTextMesh.ts","children":[]},{"name":"backMWLogoMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":15.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":11.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/backMWLogoMesh.ts","children":[]},{"name":"backPrintContainerMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":72.0,"sonar_lines_to_cover":38.0,"rloc":62.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":26.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/backPrintContainerMesh.ts","children":[]},{"name":"codeChartaLogoMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":32.0,"sonar_lines_to_cover":15.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/codeChartaLogoMesh.ts","children":[]},{"name":"codeChartaTextMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":5.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/codeChartaTextMesh.ts","children":[]},{"name":"colorMetricDescriptionBlockMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":91.0,"sonar_lines_to_cover":29.0,"rloc":80.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":24.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/colorMetricDescriptionBlockMesh.ts","children":[]},{"name":"metricDescriptionBlockMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":83.0,"sonar_lines_to_cover":23.0,"rloc":70.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":14.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/metricDescriptionBlockMesh.ts","children":[]},{"name":"metricDescriptionsContainerMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":98.0,"sonar_lines_to_cover":36.0,"rloc":86.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":29.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/metricDescriptionsContainerMesh.ts","children":[]},{"name":"qrCodeMesh.ts","type":"File","attributes":{"line_coverage":91.2,"loc":65.0,"sonar_lines_to_cover":34.0,"rloc":50.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":89.5,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":3.0,"sonar_comment_lines_density":5.7,"sonar_complexity":10.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":30.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/qrCodeMesh.ts","children":[]},{"name":"backBelowLogoTextMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"backMWLogoMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"backPrintContainerMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeChartaLogoMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeChartaTextMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"colorMetricDescriptionBlockMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricDescriptionBlockMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricDescriptionsContainerMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"qrCodeMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"FrontMeshModels","type":"Folder","attributes":{},"children":[{"name":"customLogoMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":55.0,"sonar_lines_to_cover":21.0,"rloc":44.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":17.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/customLogoMesh.ts","children":[]},{"name":"frontLogo.ts","type":"File","attributes":{"line_coverage":100.0,"loc":29.0,"sonar_lines_to_cover":16.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":12.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/frontLogo.ts","children":[]},{"name":"frontMWLogoMesh.ts","type":"File","attributes":{"line_coverage":93.8,"loc":37.0,"sonar_lines_to_cover":16.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":88.9,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":12.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/frontMWLogoMesh.ts","children":[]},{"name":"frontPrintContainerMesh.ts","type":"File","attributes":{"line_coverage":86.3,"loc":102.0,"sonar_lines_to_cover":51.0,"rloc":83.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":84.7,"sonar_file_complexity":17.0,"sonar_files":1.0,"functions":13.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":17.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":42.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":7.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/frontPrintContainerMesh.ts","children":[]},{"name":"frontTextMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":9.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/frontTextMesh.ts","children":[]},{"name":"secondRowTextMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":5.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/secondRowTextMesh.ts","children":[]},{"name":"customLogoMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontLogo.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontMWLogoMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontPrintContainerMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontTextMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"secondRowTextMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"baseplateMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":40.0,"sonar_lines_to_cover":21.0,"sonar_major_violations":1.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":3.0,"sonar_comment_lines_density":8.8,"sonar_complexity":6.0,"sonar_conditions_to_cover":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":15.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/baseplateMesh.ts","children":[]},{"name":"customVisibilityMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":42.0,"sonar_lines_to_cover":16.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":91.7,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":13.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/customVisibilityMesh.ts","children":[]},{"name":"generalMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":55.0,"sonar_lines_to_cover":21.0,"rloc":48.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/generalMesh.ts","children":[]},{"name":"mapMesh.ts","type":"File","attributes":{"line_coverage":97.6,"loc":83.0,"sonar_lines_to_cover":42.0,"rloc":65.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":92.5,"sonar_critical_violations":1.0,"sonar_file_complexity":20.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":84.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":23.0,"comment_lines":5.0,"sonar_comment_lines_density":7.1,"sonar_complexity":20.0,"sonar_conditions_to_cover":25.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.7,"statements":40.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/mapMesh.ts","children":[]},{"name":"textMesh.ts","type":"File","attributes":{"line_coverage":92.9,"loc":35.0,"sonar_lines_to_cover":14.0,"sonar_major_violations":1.0,"rloc":28.0,"sonar_minor_violations":0.0,"sonar_coverage":87.5,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":2.4,"statements":7.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/textMesh.ts","children":[]},{"name":"baseplateMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customVisibilityMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"generalMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"textMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"preview3DPrintMesh.ts","type":"File","attributes":{"line_coverage":92.8,"loc":179.0,"sonar_lines_to_cover":69.0,"rloc":148.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":93.7,"sonar_file_complexity":26.0,"sonar_files":1.0,"functions":20.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":1.0,"sonar_comment_lines_density":0.7,"sonar_complexity":26.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":54.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":5.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/preview3DPrintMesh.ts","children":[]},{"name":"preview3DPrintMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"generateXML","type":"Folder","attributes":{},"children":[{"name":"build3mfModel.ts","type":"File","attributes":{"line_coverage":100.0,"loc":46.0,"sonar_lines_to_cover":18.0,"rloc":40.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":19.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/generateXML/build3mfModel.ts","children":[]},{"name":"build3mfModelConfig.ts","type":"File","attributes":{"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":9.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/generateXML/build3mfModelConfig.ts","children":[]},{"name":"build3mfStatics.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":4.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/generateXML/build3mfStatics.ts","children":[]},{"name":"build3mfModel.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"build3mfModelConfig.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"build3mfStatics.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"serialize3mf.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":254.0,"sonar_lines_to_cover":91.0,"sonar_major_violations":1.0,"rloc":225.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":33.0,"sonar_files":1.0,"functions":10.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":36.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":33.0,"sonar_conditions_to_cover":25.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":91.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/serialize3mf.service.ts","children":[]},{"name":"serialize3mf.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"idToBuilding","type":"Folder","attributes":{},"children":[{"name":"idToBuilding.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":20.0,"sonar_lines_to_cover":7.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":1.0,"sonar_comment_lines_density":6.3,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/idToBuilding/idToBuilding.service.ts","children":[]}]},{"name":"isAttributeSideBarVisible.service.ts","type":"File","attributes":{"line_coverage":77.8,"loc":17.0,"sonar_lines_to_cover":9.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":77.8,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_lines":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/isAttributeSideBarVisible.service.ts","children":[]},{"name":"loadFile","type":"Folder","attributes":{},"children":[{"name":"fileParser.ts","type":"File","attributes":{"line_coverage":95.0,"loc":143.0,"sonar_lines_to_cover":60.0,"rloc":128.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":89.1,"sonar_file_complexity":23.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":78.1,"sonar_classes":0.0,"sonar_cognitive_complexity":18.0,"comment_lines":2.0,"sonar_comment_lines_density":1.5,"sonar_complexity":23.0,"sonar_conditions_to_cover":32.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":52.0,"sonar_uncovered_conditions":7.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadFile/fileParser.ts","children":[]},{"name":"fileRoot.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":3.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadFile/fileRoot.ts","children":[]},{"name":"loadFile.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":81.0,"sonar_lines_to_cover":40.0,"rloc":68.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":20.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadFile/loadFile.service.ts","children":[]},{"name":"loadFile.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"loadInitialFile","type":"Folder","attributes":{},"children":[{"name":"loadInitialFile.service.ts","type":"File","attributes":{"line_coverage":89.8,"loc":490.0,"sonar_lines_to_cover":304.0,"rloc":451.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":87.2,"sonar_file_complexity":114.0,"sonar_files":1.0,"functions":30.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":78.7,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":57.0,"comment_lines":3.0,"sonar_comment_lines_density":0.7,"sonar_complexity":114.0,"sonar_conditions_to_cover":94.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":242.0,"sonar_uncovered_conditions":20.0,"sonar_uncovered_lines":31.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadInitialFile/loadInitialFile.service.ts","children":[]},{"name":"urlExtractor.ts","type":"File","attributes":{"line_coverage":97.6,"loc":82.0,"sonar_lines_to_cover":41.0,"rloc":68.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":98.3,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":9.0,"comment_lines":2.0,"sonar_comment_lines_density":2.9,"sonar_complexity":18.0,"sonar_conditions_to_cover":17.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":34.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadInitialFile/urlExtractor.ts","children":[]},{"name":"loadInitialFile.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"urlExtractor.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"version","type":"Folder","attributes":{},"children":[{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"compareVersion.ts","type":"File","attributes":{"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":22.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":94.7,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":0.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":14.0,"sonar_conditions_to_cover":16.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":18.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/version/utils/compareVersion.ts","children":[]},{"name":"compareVersion.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"version.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":29.0,"sonar_lines_to_cover":15.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/version/version.service.ts","children":[]},{"name":"version.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"state","type":"Folder","attributes":{},"children":[{"name":"effects","type":"Folder","attributes":{},"children":[{"name":"addBlacklistItemsIfNotResultsInEmptyMap","type":"Folder","attributes":{},"children":[{"name":"addBlacklistItemsIfNotResultsInEmptyMap.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":51.0,"sonar_lines_to_cover":24.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/addBlacklistItemsIfNotResultsInEmptyMap/addBlacklistItemsIfNotResultsInEmptyMap.effect.ts","children":[]},{"name":"resultsInEmptyMap.ts","type":"File","attributes":{"line_coverage":93.3,"loc":31.0,"sonar_lines_to_cover":15.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":95.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":14.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/addBlacklistItemsIfNotResultsInEmptyMap/resultsInEmptyMap.ts","children":[]},{"name":"addBlacklistItemsIfNotResultsInEmptyMap.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"autoFitCodeMapChange","type":"Folder","attributes":{},"children":[{"name":"autoFitCodeMap.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":47.0,"sonar_lines_to_cover":22.0,"rloc":43.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":1.0,"sonar_comment_lines_density":2.3,"sonar_complexity":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/autoFitCodeMapChange/autoFitCodeMap.effect.ts","children":[]},{"name":"selectorsTriggeringAutoFit.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":9.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/autoFitCodeMapChange/selectorsTriggeringAutoFit.ts","children":[]},{"name":"autoFitCodeMap.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"linkColorMetricToHeightMetric","type":"Folder","attributes":{},"children":[{"name":"linkColorMetricToHeightMetric.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":13.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/linkColorMetricToHeightMetric/linkColorMetricToHeightMetric.effect.ts","children":[]},{"name":"linkColorMetricToHeightMetric.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"nodeContextMenu","type":"Folder","attributes":{},"children":[{"name":"excludeButton","type":"Folder","attributes":{},"children":[{"name":"excludeButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/excludeButton/excludeButton.component.html","children":[]},{"name":"excludeButton.component.ts","type":"File","attributes":{"line_coverage":85.7,"loc":33.0,"sonar_lines_to_cover":7.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":85.7,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/excludeButton/excludeButton.component.ts","children":[]}]},{"name":"flattenButtons","type":"Folder","attributes":{},"children":[{"name":"flattenButtons.component.html","type":"File","attributes":{"loc":12.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.html","children":[]},{"name":"flattenButtons.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":43.0,"sonar_lines_to_cover":8.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.ts","children":[]},{"name":"flattenButtons.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"focusButtons","type":"Folder","attributes":{},"children":[{"name":"focusButtons.component.html","type":"File","attributes":{"loc":21.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/focusButtons/focusButtons.component.html","children":[]},{"name":"focusButtons.component.ts","type":"File","attributes":{"line_coverage":81.3,"loc":40.0,"sonar_lines_to_cover":16.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":81.3,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/focusButtons/focusButtons.component.ts","children":[]},{"name":"isNodeFocused.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":7.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/focusButtons/isNodeFocused.pipe.ts","children":[]},{"name":"focusButtons.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"isNodeFocused.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"highlightButtons","type":"Folder","attributes":{},"children":[{"name":"highlightButtons.component.html","type":"File","attributes":{"loc":10.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/highlightButtons/highlightButtons.component.html","children":[]},{"name":"highlightButtons.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":51.0,"sonar_lines_to_cover":17.0,"rloc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/highlightButtons/highlightButtons.component.ts","children":[]},{"name":"highlightButtons.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"markFolderRow","type":"Folder","attributes":{},"children":[{"name":"markFolderRow.component.html","type":"File","attributes":{"loc":26.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/markFolderRow/markFolderRow.component.html","children":[]},{"name":"markFolderRow.component.scss","type":"File","attributes":{"loc":36.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/markFolderRow/markFolderRow.component.scss","children":[]},{"name":"markFolderRow.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":13.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/markFolderRow/markFolderRow.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"markFolderItems.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":33.0,"sonar_lines_to_cover":13.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/markFolderRow/selectors/markFolderItems.selector.ts","children":[]},{"name":"markFolderItems.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"markFolderRow.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"nodeContextMenu.service.ts","type":"File","attributes":{"line_coverage":92.3,"loc":88.0,"sonar_lines_to_cover":39.0,"rloc":70.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":88.7,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":78.6,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":1.0,"sonar_comment_lines_density":1.4,"sonar_complexity":14.0,"sonar_conditions_to_cover":14.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":26.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenu.service.ts","children":[]},{"name":"nodeContextMenuButton.component.scss","type":"File","attributes":{"loc":23.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuButton.component.scss","children":[]},{"name":"nodeContextMenuCard","type":"Folder","attributes":{},"children":[{"name":"lastPartOfNodePath.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":3.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/lastPartOfNodePath.pipe.ts","children":[]},{"name":"nodeContextMenuCard.component.html","type":"File","attributes":{"loc":20.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.html","children":[]},{"name":"nodeContextMenuCard.component.scss","type":"File","attributes":{"loc":11.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.scss","children":[]},{"name":"nodeContextMenuCard.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":16.0,"rloc":40.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.ts","children":[]},{"name":"lastPartOfNodePath.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeContextMenuCard.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"openNodeContextMenu.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":12.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/openNodeContextMenu.effect.ts","children":[]},{"name":"rightClickedCodeMapNode.selector.ts","type":"File","attributes":{"line_coverage":80.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":57.1,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/rightClickedCodeMapNode.selector.ts","children":[]},{"name":"nodeContextMenu.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeContextMenu.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeContextMenu.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"openNodeContextMenu.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"renderCodeMapEffect","type":"Folder","attributes":{},"children":[{"name":"actionsRequiringRerender.ts","type":"File","attributes":{"line_coverage":100.0,"loc":72.0,"sonar_lines_to_cover":29.0,"rloc":70.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/renderCodeMapEffect/actionsRequiringRerender.ts","children":[]},{"name":"renderCodeMap.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":55.0,"sonar_lines_to_cover":30.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/renderCodeMapEffect/renderCodeMap.effect.ts","children":[]},{"name":"renderCodeMap.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetChosenMetrics","type":"Folder","attributes":{},"children":[{"name":"resetChosenMetrics.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":46.0,"sonar_lines_to_cover":27.0,"rloc":40.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/resetChosenMetrics/resetChosenMetrics.effect.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"getDefaultDistributionMetric.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/resetChosenMetrics/utils/getDefaultDistributionMetric.ts","children":[]},{"name":"metricHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":64.0,"sonar_lines_to_cover":33.0,"rloc":55.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":13.0,"comment_lines":1.0,"sonar_comment_lines_density":1.8,"sonar_complexity":16.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":33.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/resetChosenMetrics/utils/metricHelper.ts","children":[]},{"name":"getDefaultDistribution.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetChosenMetrics.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetSelectedEdgeMetricWhenItDoesntExistAnymore","type":"Folder","attributes":{},"children":[{"name":"resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":14.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/resetSelectedEdgeMetricWhenItDoesntExistAnymore/resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.ts","children":[]},{"name":"resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"saveCcState","type":"Folder","attributes":{},"children":[{"name":"actionsRequiringSaveCcState.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":5.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/saveCcState/actionsRequiringSaveCcState.ts","children":[]},{"name":"saveCcState.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":16.0,"rloc":28.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/saveCcState/saveCcState.effect.ts","children":[]},{"name":"saveCcState.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"setLoadingIndicator","type":"Folder","attributes":{},"children":[{"name":"setLoadingIndicator.effect.ts","type":"File","attributes":{"line_coverage":0.0,"loc":27.0,"sonar_lines_to_cover":15.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":15.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/setLoadingIndicator/setLoadingIndicator.effect.ts","children":[]}]},{"name":"unfocusNodes","type":"Folder","attributes":{},"children":[{"name":"unfocusNodes.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":9.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/unfocusNodes/unfocusNodes.effect.ts","children":[]},{"name":"unfocusNodes.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateEdgePreviews","type":"Folder","attributes":{},"children":[{"name":"updateEdgePreviews.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":13.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateEdgePreviews/updateEdgePreviews.effect.ts","children":[]},{"name":"updateEdgePreviews.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateFileSettings","type":"Folder","attributes":{},"children":[{"name":"updateFileSettings.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":48.0,"sonar_lines_to_cover":24.0,"rloc":44.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/updateFileSettings.effect.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"attributeDescriptors.merger.ts","type":"File","attributes":{"line_coverage":100.0,"loc":16.0,"sonar_lines_to_cover":7.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/attributeDescriptors.merger.ts","children":[]},{"name":"attributeTypes.merger.ts","type":"File","attributes":{"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":11.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":13.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/attributeTypes.merger.ts","children":[]},{"name":"blacklist.merger.ts","type":"File","attributes":{"line_coverage":91.7,"loc":26.0,"sonar_lines_to_cover":12.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":81.3,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/blacklist.merger.ts","children":[]},{"name":"edges.merger.ts","type":"File","attributes":{"line_coverage":94.4,"loc":37.0,"sonar_lines_to_cover":18.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":84.6,"sonar_critical_violations":1.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":62.5,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":25.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":8.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":1.6,"statements":16.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/edges.merger.ts","children":[]},{"name":"markedPackages.merger.ts","type":"File","attributes":{"line_coverage":91.7,"loc":26.0,"sonar_lines_to_cover":12.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":81.3,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/markedPackages.merger.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"blacklist.merger.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"edges.merger.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"markedPackages.merger.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeDescriptors.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"attributeTypes.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"blacklist.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"edges.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"markedPackages.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateFileSettings.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateMapColors","type":"Folder","attributes":{},"children":[{"name":"updateMapColors.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":22.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateMapColors/updateMapColors.effect.ts","children":[]},{"name":"updateMapColors.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateQueryParameters","type":"Folder","attributes":{},"children":[{"name":"actionsRequiringUpdateQueryParameters.ts","type":"File","attributes":{"line_coverage":100.0,"loc":14.0,"sonar_lines_to_cover":6.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateQueryParameters/actionsRequiringUpdateQueryParameters.ts","children":[]},{"name":"updateQueryParameters.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":110.0,"sonar_lines_to_cover":61.0,"rloc":93.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":98.7,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":94.1,"sonar_classes":1.0,"sonar_cognitive_complexity":16.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":18.0,"sonar_conditions_to_cover":17.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":42.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateQueryParameters/updateQueryParameters.effect.ts","children":[]},{"name":"updateQueryParameters.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateVisibleTopLabels","type":"Folder","attributes":{},"children":[{"name":"getNumberOfTopLabels.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":8.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateVisibleTopLabels/getNumberOfTopLabels.ts","children":[]},{"name":"updateVisibleTopLabels.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":35.0,"sonar_lines_to_cover":17.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateVisibleTopLabels/updateVisibleTopLabels.effect.ts","children":[]},{"name":"getNumberOfTopLabels.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"updateVisibleTopLabels.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"accumulatedData","type":"Folder","attributes":{},"children":[{"name":"accumulatedData.selector.ts","type":"File","attributes":{"line_coverage":96.8,"loc":62.0,"sonar_lines_to_cover":31.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":93.2,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":84.6,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":13.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/accumulatedData.selector.ts","children":[]},{"name":"codeMapNodes.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":5.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/codeMapNodes.selector.ts","children":[]},{"name":"idToNode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":11.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/idToNode.selector.ts","children":[]},{"name":"metricData","type":"Folder","attributes":{},"children":[{"name":"edgeMetricData.calculator.ts","type":"File","attributes":{"line_coverage":98.1,"loc":110.0,"sonar_lines_to_cover":52.0,"rloc":95.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":97.0,"sonar_file_complexity":23.0,"sonar_files":1.0,"functions":6.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":92.9,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":31.0,"comment_lines":1.0,"sonar_comment_lines_density":1.0,"sonar_complexity":23.0,"sonar_conditions_to_cover":14.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":54.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/edgeMetricData.calculator.ts","children":[]},{"name":"metricData.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":7.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/metricData.selector.ts","children":[]},{"name":"metricNames.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/metricNames.selector.ts","children":[]},{"name":"nodeMetricData.calculator.ts","type":"File","attributes":{"line_coverage":100.0,"loc":61.0,"sonar_lines_to_cover":30.0,"rloc":47.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_critical_violations":1.0,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":1.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":28.0,"comment_lines":1.0,"sonar_comment_lines_density":2.1,"sonar_complexity":14.0,"sonar_conditions_to_cover":12.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":1.3,"statements":31.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/nodeMetricData.calculator.ts","children":[]},{"name":"selectedColorMetricData.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":9.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":24.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/selectedColorMetricData.selector.ts","children":[]},{"name":"sortByMetricName.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"sonar_major_violations":1.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_coverage":88.9,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":2.4,"statements":5.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/sortByMetricName.ts","children":[]},{"name":"sortedNodeEdgeMetricsMap.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":28.0,"sonar_lines_to_cover":14.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":11.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/sortedNodeEdgeMetricsMap.selector.ts","children":[]},{"name":"edgeMetricData.calculator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricNames.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeMetricData.calculator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"sortedNodeEdgeMetricsMap.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"rootUnary.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/rootUnary.selector.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"addEdgeMetricsForLeaves.ts","type":"File","attributes":{"line_coverage":54.5,"loc":21.0,"sonar_lines_to_cover":11.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":53.8,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/utils/addEdgeMetricsForLeaves.ts","children":[]},{"name":"getDeltaFile.ts","type":"File","attributes":{"line_coverage":45.5,"loc":17.0,"sonar_lines_to_cover":11.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":38.5,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":6.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/utils/getDeltaFile.ts","children":[]},{"name":"getMetricValuesForNode.ts","type":"File","attributes":{"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":7.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/utils/getMetricValuesForNode.ts","children":[]},{"name":"getMetricValuesForNode.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"accumulatedData.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"idToNode.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"allNecessaryRenderDataAvailable","type":"Folder","attributes":{},"children":[{"name":"areAllNecessaryRenderDataAvailable.selector.ts","type":"File","attributes":{"line_coverage":73.7,"loc":40.0,"sonar_lines_to_cover":19.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":58.3,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/allNecessaryRenderDataAvailable/areAllNecessaryRenderDataAvailable.selector.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"areDynamicSettingsAvailable.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":10.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/allNecessaryRenderDataAvailable/utils/areDynamicSettingsAvailable.ts","children":[]},{"name":"areMetricsAvailable.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":3.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/allNecessaryRenderDataAvailable/utils/areMetricsAvailable.ts","children":[]},{"name":"areDynamicSettingsAvailable.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"areMetricsAvailable.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"hoveredNode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/hoveredNode.selector.ts","children":[]},{"name":"isDeltaState.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":4.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/isDeltaState.selector.ts","children":[]},{"name":"primaryMetrics","type":"Folder","attributes":{},"children":[{"name":"primaryMetricNames.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":20.0,"sonar_lines_to_cover":7.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/primaryMetrics/primaryMetricNames.selector.ts","children":[]},{"name":"primaryMetrics.selector.ts","type":"File","attributes":{"line_coverage":69.2,"loc":51.0,"sonar_lines_to_cover":13.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":79.3,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":16.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/primaryMetrics/primaryMetrics.selector.ts","children":[]},{"name":"primaryMetrics.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"referenceFile","type":"Folder","attributes":{},"children":[{"name":"referenceFile.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":6.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/referenceFile/referenceFile.selector.ts","children":[]},{"name":"referenceFile.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchedNodes","type":"Folder","attributes":{},"children":[{"name":"getNodesByGitignorePath.ts","type":"File","attributes":{"line_coverage":100.0,"loc":20.0,"sonar_lines_to_cover":12.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/searchedNodes/getNodesByGitignorePath.ts","children":[]},{"name":"searchedNodePaths.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/searchedNodes/searchedNodePaths.selector.ts","children":[]},{"name":"searchedNodes.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":6.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/searchedNodes/searchedNodes.selector.ts","children":[]},{"name":"getNodesByGitignorePath.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"selectedNode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":88.9,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/selectedNode.selector.ts","children":[]},{"name":"visibleFileStates","type":"Folder","attributes":{},"children":[{"name":"visibleFileStates.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":60.0,"sonar_lines_to_cover":35.0,"rloc":48.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":21.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":21.0,"sonar_conditions_to_cover":21.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":23.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/visibleFileStates/visibleFileStates.selector.ts","children":[]},{"name":"visibleFileStates.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"store","type":"Folder","attributes":{},"children":[{"name":"appSettings","type":"Folder","attributes":{},"children":[{"name":"amountOfEdgePreviews","type":"Folder","attributes":{},"children":[{"name":"amountOfEdgePreviews.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfEdgePreviews/amountOfEdgePreviews.actions.ts","children":[]},{"name":"amountOfEdgePreviews.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfEdgePreviews/amountOfEdgePreviews.reducer.ts","children":[]},{"name":"amountOfEdgePreviews.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfEdgePreviews/amountOfEdgePreviews.selector.ts","children":[]},{"name":"amountOfEdgePreviews.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"amountOfTopLabels","type":"Folder","attributes":{},"children":[{"name":"amountOfTopLabels.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfTopLabels/amountOfTopLabels.actions.ts","children":[]},{"name":"amountOfTopLabels.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfTopLabels/amountOfTopLabels.reducer.ts","children":[]},{"name":"amountOfTopLabels.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfTopLabels/amountOfTopLabels.selector.ts","children":[]},{"name":"amountOfTopLabels.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"appSettings.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":63.0,"sonar_lines_to_cover":26.0,"rloc":61.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/appSettings.actions.ts","children":[]},{"name":"appSettings.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":101.0,"sonar_lines_to_cover":30.0,"rloc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/appSettings.reducer.ts","children":[]},{"name":"appSettings.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/appSettings.selector.ts","children":[]},{"name":"colorLabels","type":"Folder","attributes":{},"children":[{"name":"colorLabels.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/colorLabels/colorLabels.actions.ts","children":[]},{"name":"colorLabels.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/colorLabels/colorLabels.reducer.ts","children":[]},{"name":"colorLabels.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/colorLabels/colorLabels.selector.ts","children":[]},{"name":"colorLabels.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edgeHeight","type":"Folder","attributes":{},"children":[{"name":"edgeHeight.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/edgeHeight/edgeHeight.actions.ts","children":[]},{"name":"edgeHeight.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/edgeHeight/edgeHeight.reducer.ts","children":[]},{"name":"edgeHeight.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/edgeHeight/edgeHeight.selector.ts","children":[]},{"name":"edgeHeight.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"enableClipboard","type":"Folder","attributes":{},"children":[{"name":"screenshotToClipboardEnabled.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableClipboard/screenshotToClipboardEnabled.actions.ts","children":[]},{"name":"screenshotToClipboardEnabled.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableClipboard/screenshotToClipboardEnabled.reducer.ts","children":[]},{"name":"screenshotToClipboardEnabled.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableClipboard/screenshotToClipboardEnabled.selector.ts","children":[]},{"name":"screenshotToClipboardEnabled.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"enableExperimentalFeatures","type":"Folder","attributes":{},"children":[{"name":"experimentalFeaturesEnabled.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableExperimentalFeatures/experimentalFeaturesEnabled.actions.ts","children":[]},{"name":"experimentalFeaturesEnabled.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableExperimentalFeatures/experimentalFeaturesEnabled.reducer.ts","children":[]},{"name":"experimentalFeaturesEnabled.selector.ts","type":"File","attributes":{"line_coverage":75.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":75.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableExperimentalFeatures/experimentalFeaturesEnabled.selector.ts","children":[]},{"name":"experimentalFeaturesEnabled.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"enableFloorLabels","type":"Folder","attributes":{},"children":[{"name":"enableFloorLabels.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.actions.ts","children":[]},{"name":"enableFloorLabels.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.reducer.ts","children":[]},{"name":"enableFloorLabels.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.selector.ts","children":[]},{"name":"enableFloorLabels.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"hideFlatBuildings","type":"Folder","attributes":{},"children":[{"name":"hideFlatBuildings.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/hideFlatBuildings/hideFlatBuildings.actions.ts","children":[]},{"name":"hideFlatBuildings.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/hideFlatBuildings/hideFlatBuildings.reducer.ts","children":[]},{"name":"hideFlatBuildings.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/hideFlatBuildings/hideFlatBuildings.selector.ts","children":[]},{"name":"hideFlatBuildings.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"invertArea","type":"Folder","attributes":{},"children":[{"name":"invertArea.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertArea/invertArea.actions.ts","children":[]},{"name":"invertArea.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertArea/invertArea.reducer.ts","children":[]},{"name":"invertArea.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertArea/invertArea.selector.ts","children":[]},{"name":"invertArea.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"invertHeight","type":"Folder","attributes":{},"children":[{"name":"invertHeight.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertHeight/invertHeight.actions.ts","children":[]},{"name":"invertHeight.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertHeight/invertHeight.reducer.ts","children":[]},{"name":"invertHeight.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertHeight/invertHeight.selector.ts","children":[]},{"name":"invertHeight.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isEdgeMetricVisible","type":"Folder","attributes":{},"children":[{"name":"isEdgeMetricVisible.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isEdgeMetricVisible/isEdgeMetricVisible.actions.ts","children":[]},{"name":"isEdgeMetricVisible.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":6.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isEdgeMetricVisible/isEdgeMetricVisible.reducer.ts","children":[]},{"name":"isEdgeMetricVisible.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isEdgeMetricVisible/isEdgeMetricVisible.selector.ts","children":[]},{"name":"isEdgeMetricVisible.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isHeightAndColorMetricLinked","type":"Folder","attributes":{},"children":[{"name":"isColorMetricLinkedToHeightMetric.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":3.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isHeightAndColorMetricLinked/isColorMetricLinkedToHeightMetric.actions.ts","children":[]},{"name":"isColorMetricLinkedToHeightMetric.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":6.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isHeightAndColorMetricLinked/isColorMetricLinkedToHeightMetric.reducer.ts","children":[]},{"name":"isColorMetricLinkedToHeightMetric.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isHeightAndColorMetricLinked/isColorMetricLinkedToHeightMetric.selector.ts","children":[]},{"name":"isColorMetricLinkedToHeightMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isLoadingFile","type":"Folder","attributes":{},"children":[{"name":"isLoadingFile.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingFile/isLoadingFile.actions.ts","children":[]},{"name":"isLoadingFile.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingFile/isLoadingFile.reducer.ts","children":[]},{"name":"isLoadingFile.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingFile/isLoadingFile.selector.ts","children":[]},{"name":"isLoadingFile.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isLoadingMap","type":"Folder","attributes":{},"children":[{"name":"isLoadingMap.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingMap/isLoadingMap.actions.ts","children":[]},{"name":"isLoadingMap.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingMap/isLoadingMap.reducer.ts","children":[]},{"name":"isLoadingMap.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingMap/isLoadingMap.selector.ts","children":[]},{"name":"isLoadingMap.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isPresentationMode","type":"Folder","attributes":{},"children":[{"name":"isPresentationMode.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isPresentationMode/isPresentationMode.actions.ts","children":[]},{"name":"isPresentationMode.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isPresentationMode/isPresentationMode.reducer.ts","children":[]},{"name":"isPresentationMode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isPresentationMode/isPresentationMode.selector.ts","children":[]},{"name":"isPresentationMode.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isSearchPanelPinned","type":"Folder","attributes":{},"children":[{"name":"isSearchPanelPinned.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isSearchPanelPinned/isSearchPanelPinned.actions.ts","children":[]},{"name":"isSearchPanelPinned.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":6.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isSearchPanelPinned/isSearchPanelPinned.reducer.ts","children":[]},{"name":"isSearchPanelPinned.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isSearchPanelPinned/isSearchPanelPinned.selector.ts","children":[]},{"name":"isSearchPanelPinned.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isWhiteBackground","type":"Folder","attributes":{},"children":[{"name":"isWhiteBackground.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isWhiteBackground/isWhiteBackground.actions.ts","children":[]},{"name":"isWhiteBackground.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isWhiteBackground/isWhiteBackground.reducer.ts","children":[]},{"name":"isWhiteBackground.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isWhiteBackground/isWhiteBackground.selector.ts","children":[]},{"name":"isWhiteBackground.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"layoutAlgorithm","type":"Folder","attributes":{},"children":[{"name":"layoutAlgorithm.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/layoutAlgorithm/layoutAlgorithm.actions.ts","children":[]},{"name":"layoutAlgorithm.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":6.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/layoutAlgorithm/layoutAlgorithm.reducer.ts","children":[]},{"name":"layoutAlgorithm.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/layoutAlgorithm/layoutAlgorithm.selector.ts","children":[]},{"name":"layoutAlgorithm.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapColors","type":"Folder","attributes":{},"children":[{"name":"mapColors.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":4.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/mapColors/mapColors.actions.ts","children":[]},{"name":"mapColors.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":7.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/mapColors/mapColors.reducer.ts","children":[]},{"name":"mapColors.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/mapColors/mapColors.selector.ts","children":[]},{"name":"mapColors.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"maxTreeMapFiles","type":"Folder","attributes":{},"children":[{"name":"maxTreeMapFiles.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/maxTreeMapFiles/maxTreeMapFiles.actions.ts","children":[]},{"name":"maxTreeMapFiles.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/maxTreeMapFiles/maxTreeMapFiles.reducer.ts","children":[]},{"name":"maxTreeMapFiles.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/maxTreeMapFiles/maxTreeMapFiles.selector.ts","children":[]},{"name":"maxTreeMapFiles.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetCameraIfNewFileIsLoaded","type":"Folder","attributes":{},"children":[{"name":"resetCameraIfNewFileIsLoaded.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/resetCameraIfNewFileIsLoaded/resetCameraIfNewFileIsLoaded.actions.ts","children":[]},{"name":"resetCameraIfNewFileIsLoaded.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/resetCameraIfNewFileIsLoaded/resetCameraIfNewFileIsLoaded.reducer.ts","children":[]},{"name":"resetCameraIfNewFileIsLoaded.selector.ts","type":"File","attributes":{"line_coverage":75.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":75.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/resetCameraIfNewFileIsLoaded/resetCameraIfNewFileIsLoaded.selector.ts","children":[]},{"name":"resetCameraIfNewFileIsLoaded.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"scaling","type":"Folder","attributes":{},"children":[{"name":"scaling.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/scaling/scaling.actions.ts","children":[]},{"name":"scaling.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/scaling/scaling.reducer.ts","children":[]},{"name":"scaling.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/scaling/scaling.selector.ts","children":[]},{"name":"scaling.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sharpnessMode","type":"Folder","attributes":{},"children":[{"name":"sharpnessMode.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sharpnessMode/sharpnessMode.actions.ts","children":[]},{"name":"sharpnessMode.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":6.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sharpnessMode/sharpnessMode.reducer.ts","children":[]},{"name":"sharpnessMode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sharpnessMode/sharpnessMode.selector.ts","children":[]},{"name":"sharpnessMode.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showMetricLabelNameValue","type":"Folder","attributes":{},"children":[{"name":"showMetricLabelNameValue.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNameValue/showMetricLabelNameValue.actions.ts","children":[]},{"name":"showMetricLabelNameValue.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNameValue/showMetricLabelNameValue.reducer.ts","children":[]},{"name":"showMetricLabelNameValue.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNameValue/showMetricLabelNameValue.selector.ts","children":[]},{"name":"showMetricLabelNameValue.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showMetricLabelNodeName","type":"Folder","attributes":{},"children":[{"name":"showMetricLabelNodeName.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNodeName/showMetricLabelNodeName.actions.ts","children":[]},{"name":"showMetricLabelNodeName.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNodeName/showMetricLabelNodeName.reducer.ts","children":[]},{"name":"showMetricLabelNodeName.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNodeName/showMetricLabelNodeName.selector.ts","children":[]},{"name":"showMetricLabelNodeName.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showOnlyBuildingsWithEdges","type":"Folder","attributes":{},"children":[{"name":"showOnlyBuildingsWithEdges.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showOnlyBuildingsWithEdges/showOnlyBuildingsWithEdges.actions.ts","children":[]},{"name":"showOnlyBuildingsWithEdges.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showOnlyBuildingsWithEdges/showOnlyBuildingsWithEdges.reducer.ts","children":[]},{"name":"showOnlyBuildingsWithEdges.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showOnlyBuildingsWithEdges/showOnlyBuildingsWithEdges.selector.ts","children":[]},{"name":"showOnlyBuildingsWithEdges.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sortingOrderAscending","type":"Folder","attributes":{},"children":[{"name":"sortingOrderAscending.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sortingOrderAscending/sortingOrderAscending.actions.ts","children":[]},{"name":"sortingOrderAscending.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":6.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sortingOrderAscending/sortingOrderAscending.reducer.ts","children":[]},{"name":"sortingOrderAscending.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sortingOrderAscending/sortingOrderAscending.selector.ts","children":[]},{"name":"sortingOrderAscending.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"appStatus","type":"Folder","attributes":{},"children":[{"name":"appStatus.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":7.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/appStatus.reducer.ts","children":[]},{"name":"appStatus.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/appStatus.selector.ts","children":[]},{"name":"currentFilesAreSampleFiles","type":"Folder","attributes":{},"children":[{"name":"currentFilesAreSampleFiles.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/currentFilesAreSampleFiles/currentFilesAreSampleFiles.actions.ts","children":[]},{"name":"currentFilesAreSampleFiles.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/currentFilesAreSampleFiles/currentFilesAreSampleFiles.reducer.ts","children":[]},{"name":"currentFilesAreSampleFiles.selector.ts","type":"File","attributes":{"line_coverage":0.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/currentFilesAreSampleFiles/currentFilesAreSampleFiles.selector.ts","children":[]}]},{"name":"hoveredNodeId","type":"Folder","attributes":{},"children":[{"name":"hoveredNodeId.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/hoveredNodeId/hoveredNodeId.actions.ts","children":[]},{"name":"hoveredNodeId.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/hoveredNodeId/hoveredNodeId.reducer.ts","children":[]},{"name":"hoveredNodeId.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/hoveredNodeId/hoveredNodeId.selector.ts","children":[]},{"name":"hoveredNodeId.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"rightClickedNodeData","type":"Folder","attributes":{},"children":[{"name":"rightClickedNodeData.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":2.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/rightClickedNodeData/rightClickedNodeData.actions.ts","children":[]},{"name":"rightClickedNodeData.reducer.ts","type":"File","attributes":{"line_coverage":80.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":80.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/rightClickedNodeData/rightClickedNodeData.reducer.ts","children":[]},{"name":"rightClickedNodeData.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/rightClickedNodeData/rightClickedNodeData.selector.ts","children":[]}]},{"name":"selectedBuildingId","type":"Folder","attributes":{},"children":[{"name":"selectedBuildingId.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/selectedBuildingId/selectedBuildingId.actions.ts","children":[]},{"name":"selectedBuildingId.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/selectedBuildingId/selectedBuildingId.reducer.ts","children":[]},{"name":"selectedBuildingId.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":3.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/selectedBuildingId/selectedBuildingId.selector.ts","children":[]},{"name":"selectedBuildingId.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"dynamicSettings","type":"Folder","attributes":{},"children":[{"name":"areaMetric","type":"Folder","attributes":{},"children":[{"name":"areaMetric.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/areaMetric/areaMetric.actions.ts","children":[]},{"name":"areaMetric.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/areaMetric/areaMetric.reducer.ts","children":[]},{"name":"areaMetric.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/areaMetric/areaMetric.selector.ts","children":[]},{"name":"areaMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorMetric","type":"Folder","attributes":{},"children":[{"name":"colorMetric.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMetric/colorMetric.actions.ts","children":[]},{"name":"colorMetric.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMetric/colorMetric.reducer.ts","children":[]},{"name":"colorMetric.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMetric/colorMetric.selector.ts","children":[]},{"name":"colorMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorMode","type":"Folder","attributes":{},"children":[{"name":"colorMode.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMode/colorMode.actions.ts","children":[]},{"name":"colorMode.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":6.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMode/colorMode.reducer.ts","children":[]},{"name":"colorMode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMode/colorMode.selector.ts","children":[]},{"name":"colorMode.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorRange","type":"Folder","attributes":{},"children":[{"name":"calculateInitialColorRange.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":6.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/calculateInitialColorRange.ts","children":[]},{"name":"colorRange.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/colorRange.actions.ts","children":[]},{"name":"colorRange.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/colorRange.reducer.ts","children":[]},{"name":"colorRange.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/colorRange.selector.ts","children":[]},{"name":"resetColorRange.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":37.0,"sonar_lines_to_cover":21.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/resetColorRange.effect.ts","children":[]},{"name":"calculateInitialColorRange.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"colorRange.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"resetColorRange.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"distributionMetric","type":"Folder","attributes":{},"children":[{"name":"distributionMetric.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/distributionMetric/distributionMetric.actions.ts","children":[]},{"name":"distributionMetric.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/distributionMetric/distributionMetric.reducer.ts","children":[]},{"name":"distributionMetric.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/distributionMetric/distributionMetric.selector.ts","children":[]},{"name":"distributionMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"dynamicSettings.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":13.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/dynamicSettings.actions.ts","children":[]},{"name":"dynamicSettings.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":41.0,"sonar_lines_to_cover":14.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/dynamicSettings.reducer.ts","children":[]},{"name":"dynamicSettings.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/dynamicSettings.selector.ts","children":[]},{"name":"edgeMetric","type":"Folder","attributes":{},"children":[{"name":"edgeMetric.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/edgeMetric/edgeMetric.actions.ts","children":[]},{"name":"edgeMetric.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/edgeMetric/edgeMetric.reducer.ts","children":[]},{"name":"edgeMetric.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/edgeMetric/edgeMetric.selector.ts","children":[]},{"name":"edgeMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"focusedNodePath","type":"Folder","attributes":{},"children":[{"name":"currentFocused.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/focusedNodePath/currentFocused.selector.ts","children":[]},{"name":"focusedNodePath.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/focusedNodePath/focusedNodePath.actions.ts","children":[]},{"name":"focusedNodePath.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":9.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/focusedNodePath/focusedNodePath.reducer.ts","children":[]},{"name":"focusedNodePath.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/focusedNodePath/focusedNodePath.selector.ts","children":[]},{"name":"focusedNodePath.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"heightMetric","type":"Folder","attributes":{},"children":[{"name":"heightMetric.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/heightMetric/heightMetric.actions.ts","children":[]},{"name":"heightMetric.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/heightMetric/heightMetric.reducer.ts","children":[]},{"name":"heightMetric.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/heightMetric/heightMetric.selector.ts","children":[]},{"name":"heightMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"margin","type":"Folder","attributes":{},"children":[{"name":"margin.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/margin/margin.actions.ts","children":[]},{"name":"margin.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/margin/margin.reducer.ts","children":[]},{"name":"margin.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/margin/margin.selector.ts","children":[]},{"name":"margin.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchPattern","type":"Folder","attributes":{},"children":[{"name":"searchPattern.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/searchPattern/searchPattern.actions.ts","children":[]},{"name":"searchPattern.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":7.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/searchPattern/searchPattern.reducer.ts","children":[]},{"name":"searchPattern.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/searchPattern/searchPattern.selector.ts","children":[]},{"name":"searchPattern.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sortingOption","type":"Folder","attributes":{},"children":[{"name":"sortingOption.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/sortingOption/sortingOption.actions.ts","children":[]},{"name":"sortingOption.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":6.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/sortingOption/sortingOption.reducer.ts","children":[]},{"name":"sortingOrder.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/sortingOption/sortingOrder.selector.ts","children":[]},{"name":"sortingOption.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"fileSettings","type":"Folder","attributes":{},"children":[{"name":"attributeDescriptors","type":"Folder","attributes":{},"children":[{"name":"attributeDescriptors.action.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeDescriptors/attributeDescriptors.action.ts","children":[]},{"name":"attributeDescriptors.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":5.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeDescriptors/attributeDescriptors.reducer.ts","children":[]},{"name":"attributeDescriptors.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeDescriptors/attributeDescriptors.selector.ts","children":[]},{"name":"attributeDescriptors.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeTypes","type":"Folder","attributes":{},"children":[{"name":"attributeTypes.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":3.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeTypes/attributeTypes.actions.ts","children":[]},{"name":"attributeTypes.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":6.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeTypes/attributeTypes.reducer.ts","children":[]},{"name":"attributeTypes.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeTypes/attributeTypes.selector.ts","children":[]},{"name":"attributeTypes.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"blacklist","type":"Folder","attributes":{},"children":[{"name":"blacklist.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":6.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/blacklist/blacklist.actions.ts","children":[]},{"name":"blacklist.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":9.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/blacklist/blacklist.reducer.ts","children":[]},{"name":"blacklist.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/blacklist/blacklist.selector.ts","children":[]},{"name":"blacklist.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edges","type":"Folder","attributes":{},"children":[{"name":"edges.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":4.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/edges/edges.actions.ts","children":[]},{"name":"edges.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":14.0,"sonar_lines_to_cover":8.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/edges/edges.reducer.ts","children":[]},{"name":"edges.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/edges/edges.selector.ts","children":[]},{"name":"edges.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"fileSettings.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":6.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/fileSettings.actions.ts","children":[]},{"name":"fileSettings.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":8.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/fileSettings.reducer.ts","children":[]},{"name":"fileSettings.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/fileSettings.selector.ts","children":[]},{"name":"markedPackages","type":"Folder","attributes":{},"children":[{"name":"markedPackages.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":4.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/markedPackages.actions.ts","children":[]},{"name":"markedPackages.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":16.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/markedPackages.reducer.ts","children":[]},{"name":"markedPackages.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/markedPackages.selector.ts","children":[]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"addMarkedPackage.ts","type":"File","attributes":{"line_coverage":92.3,"loc":28.0,"sonar_lines_to_cover":13.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":87.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":80.0,"sonar_classes":0.0,"sonar_cognitive_complexity":12.0,"comment_lines":1.0,"sonar_comment_lines_density":4.2,"sonar_complexity":9.0,"sonar_conditions_to_cover":10.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":13.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/util/addMarkedPackage.ts","children":[]},{"name":"findIndexOfMarkedPackageOrParent.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":11.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":5.0,"comment_lines":1.0,"sonar_comment_lines_density":5.3,"sonar_complexity":7.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/util/findIndexOfMarkedPackageOrParent.ts","children":[]},{"name":"addMarkedPackage.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"findIndexOfMarkedPackageOrParent.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"markedPackages.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"files","type":"Folder","attributes":{},"children":[{"name":"files.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":11.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/files/files.actions.ts","children":[]},{"name":"files.reducer.ts","type":"File","attributes":{"line_coverage":96.8,"loc":131.0,"sonar_lines_to_cover":62.0,"rloc":120.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":96.3,"sonar_file_complexity":45.0,"sonar_files":1.0,"functions":28.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":95.0,"sonar_classes":0.0,"sonar_cognitive_complexity":18.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":45.0,"sonar_conditions_to_cover":20.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":47.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/files/files.reducer.ts","children":[]},{"name":"files.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/files/files.selector.ts","children":[]},{"name":"files.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"state.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/state.actions.ts","children":[]},{"name":"state.manager.ts","type":"File","attributes":{"line_coverage":100.0,"loc":67.0,"sonar_lines_to_cover":26.0,"rloc":57.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":4.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":8.0,"comment_lines":1.0,"sonar_comment_lines_density":1.7,"sonar_complexity":11.0,"sonar_conditions_to_cover":11.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":17.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/state.manager.ts","children":[]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"setState.reducer.factory.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":8.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/util/setState.reducer.factory.ts","children":[]},{"name":"setState.reducer.factory.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"state.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"ui","type":"Folder","attributes":{},"children":[{"name":"actionIcon","type":"Folder","attributes":{},"children":[{"name":"actionIcon.component.html","type":"File","attributes":{"loc":2.0,"sonar_major_violations":1.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":16.7,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/actionIcon/actionIcon.component.html","children":[]},{"name":"actionIcon.component.scss","type":"File","attributes":{"loc":32.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/actionIcon/actionIcon.component.scss","children":[]},{"name":"actionIcon.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":2.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/actionIcon/actionIcon.component.ts","children":[]}]},{"name":"attributeSideBar","type":"Folder","attributes":{},"children":[{"name":"attributeSideBar.component.html","type":"File","attributes":{"loc":9.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBar.component.html","children":[]},{"name":"attributeSideBar.component.scss","type":"File","attributes":{"loc":28.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":1.0,"sonar_comment_lines_density":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBar.component.scss","children":[]},{"name":"attributeSideBar.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":35.0,"sonar_lines_to_cover":15.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":91.3,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBar.component.ts","children":[]},{"name":"attributeSideBarHeaderSection","type":"Folder","attributes":{},"children":[{"name":"attributeSideBarHeaderSection.component.html","type":"File","attributes":{"loc":14.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.html","children":[]},{"name":"attributeSideBarHeaderSection.component.scss","type":"File","attributes":{"loc":66.0,"rloc":53.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.scss","children":[]},{"name":"attributeSideBarHeaderSection.component.ts","type":"File","attributes":{"line_coverage":87.5,"loc":26.0,"sonar_lines_to_cover":8.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":87.5,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.ts","children":[]},{"name":"nodePath","type":"Folder","attributes":{},"children":[{"name":"fileCountSelector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":11.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":33.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/fileCountSelector.ts","children":[]},{"name":"nodePath.component.html","type":"File","attributes":{"loc":27.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.html","children":[]},{"name":"nodePath.component.scss","type":"File","attributes":{"loc":28.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.scss","children":[]},{"name":"nodePath.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":8.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.ts","children":[]},{"name":"fileCount.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodePath.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeSideBarHeaderSection.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeSideBarMetrics.scss","type":"File","attributes":{"loc":120.0,"rloc":99.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarMetrics.scss","children":[]},{"name":"attributeSideBarPrimaryMetrics","type":"Folder","attributes":{},"children":[{"name":"attributeSideBarPrimaryMetric","type":"Folder","attributes":{},"children":[{"name":"attributeSideBarPrimaryMetric.component.html","type":"File","attributes":{"loc":23.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.html","children":[]},{"name":"attributeSideBarPrimaryMetric.component.scss","type":"File","attributes":{"loc":31.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.scss","children":[]},{"name":"attributeSideBarPrimaryMetric.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":29.0,"sonar_lines_to_cover":8.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.ts","children":[]}]},{"name":"attributeSideBarPrimaryMetrics.component.html","type":"File","attributes":{"loc":68.0,"rloc":67.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.html","children":[]},{"name":"attributeSideBarPrimaryMetrics.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":14.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.ts","children":[]}]},{"name":"attributeSideBarSecondaryMetrics","type":"Folder","attributes":{},"children":[{"name":"attributeSideBarSecondaryMetrics.component.html","type":"File","attributes":{"loc":44.0,"rloc":43.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.html","children":[]},{"name":"attributeSideBarSecondaryMetrics.component.scss","type":"File","attributes":{"loc":17.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.scss","children":[]},{"name":"attributeSideBarSecondaryMetrics.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":16.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.ts","children":[]},{"name":"secondaryMetrics.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":12.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/secondaryMetrics.selector.ts","children":[]},{"name":"secondaryMetrics.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeTypeSelector","type":"Folder","attributes":{},"children":[{"name":"attributeTypeSelector.component.html","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.html","children":[]},{"name":"attributeTypeSelector.component.ts","type":"File","attributes":{"line_coverage":92.3,"loc":41.0,"sonar_lines_to_cover":13.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":92.3,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.ts","children":[]},{"name":"attributeTypeSelector.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricDeltaSelected","type":"Folder","attributes":{},"children":[{"name":"metricDeltaSelected.component.html","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.html","children":[]},{"name":"metricDeltaSelected.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.scss","children":[]},{"name":"metricDeltaSelected.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":9.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.ts","children":[]},{"name":"metricDeltaSelected.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"edge.ts","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/util/edge.ts","children":[]},{"name":"metric.ts","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/util/metric.ts","children":[]},{"name":"showAttributeTypeSelector.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/util/showAttributeTypeSelector.selector.ts","children":[]},{"name":"showDeltaValueSelector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/util/showDeltaValueSelector.ts","children":[]},{"name":"showAttributeTypeSelector.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"showDeltaValueSelector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeSideBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMap","type":"Folder","attributes":{},"children":[{"name":"arrow","type":"Folder","attributes":{},"children":[{"name":"codeMap.arrow.service.ts","type":"File","attributes":{"line_coverage":81.8,"loc":266.0,"sonar_lines_to_cover":143.0,"sonar_major_violations":2.0,"rloc":220.0,"sonar_minor_violations":0.0,"sonar_coverage":76.1,"sonar_file_complexity":58.0,"sonar_files":1.0,"functions":26.0,"sonar_info_violations":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":61.1,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":35.0,"comment_lines":10.0,"sonar_comment_lines_density":4.3,"sonar_complexity":58.0,"sonar_conditions_to_cover":54.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":118.0,"sonar_uncovered_conditions":21.0,"sonar_uncovered_lines":26.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/arrow/codeMap.arrow.service.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"edgePreviewNodes.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":40.0,"sonar_lines_to_cover":18.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":14.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/arrow/utils/edgePreviewNodes.selector.ts","children":[]},{"name":"edgeVisibility.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":10.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/arrow/utils/edgeVisibility.selector.ts","children":[]},{"name":"setEdgeVisibility.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":13.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":9.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":13.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/arrow/utils/setEdgeVisibility.ts","children":[]},{"name":"edgePreviewNodes.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"setEdgeVisibility.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"codeMap.arrow.service.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMap.arrow.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMap.component.html","type":"File","attributes":{"loc":6.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.component.html","children":[]},{"name":"codeMap.component.scss","type":"File","attributes":{"loc":15.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.component.scss","children":[]},{"name":"codeMap.component.ts","type":"File","attributes":{"line_coverage":95.8,"loc":51.0,"sonar_lines_to_cover":24.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":95.8,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.component.ts","children":[]},{"name":"codeMap.label.service.ts","type":"File","attributes":{"line_coverage":93.6,"loc":313.0,"sonar_lines_to_cover":171.0,"sonar_major_violations":1.0,"rloc":243.0,"sonar_minor_violations":0.0,"sonar_coverage":90.3,"sonar_file_complexity":43.0,"sonar_files":1.0,"functions":15.0,"sonar_info_violations":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":74.3,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":33.0,"comment_lines":20.0,"sonar_comment_lines_density":7.6,"sonar_complexity":43.0,"sonar_conditions_to_cover":35.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":146.0,"sonar_uncovered_conditions":9.0,"sonar_uncovered_lines":11.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.label.service.ts","children":[]},{"name":"codeMap.mouseEvent.service.ts","type":"File","attributes":{"line_coverage":91.3,"loc":457.0,"sonar_lines_to_cover":240.0,"sonar_major_violations":4.0,"rloc":390.0,"sonar_minor_violations":0.0,"sonar_coverage":88.6,"sonar_critical_violations":1.0,"sonar_file_complexity":92.0,"sonar_files":1.0,"functions":40.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":83.0,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":75.0,"comment_lines":4.0,"sonar_comment_lines_density":1.0,"sonar_complexity":92.0,"sonar_conditions_to_cover":112.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":185.0,"sonar_uncovered_conditions":19.0,"sonar_uncovered_lines":21.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.mouseEvent.service.ts","children":[]},{"name":"codeMap.render.service.ts","type":"File","attributes":{"line_coverage":97.8,"loc":184.0,"sonar_lines_to_cover":93.0,"sonar_major_violations":7.0,"rloc":160.0,"sonar_minor_violations":0.0,"sonar_coverage":94.7,"sonar_file_complexity":46.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":1.0,"sonar_code_smells":7.0,"sonar_cognitive_complexity":32.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":46.0,"sonar_conditions_to_cover":40.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.6,"statements":72.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":2.0,"sonar_violations":7.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":7.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.render.service.ts","children":[]},{"name":"rendering","type":"Folder","attributes":{},"children":[{"name":"codeMapBuilding.ts","type":"File","attributes":{"line_coverage":97.4,"loc":118.0,"sonar_lines_to_cover":38.0,"sonar_major_violations":2.0,"rloc":95.0,"sonar_minor_violations":0.0,"sonar_coverage":97.6,"sonar_file_complexity":22.0,"sonar_files":1.0,"functions":20.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":22.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":35.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/codeMapBuilding.ts","children":[]},{"name":"codeMapGeometricDescription.ts","type":"File","attributes":{"line_coverage":27.3,"loc":80.0,"sonar_lines_to_cover":33.0,"sonar_major_violations":2.0,"rloc":61.0,"sonar_minor_violations":0.0,"sonar_coverage":25.0,"sonar_file_complexity":12.0,"sonar_files":1.0,"functions":8.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":0.0,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":10.0,"comment_lines":1.0,"sonar_comment_lines_density":1.6,"sonar_complexity":12.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":33.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":24.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/codeMapGeometricDescription.ts","children":[]},{"name":"codeMapMesh.ts","type":"File","attributes":{"line_coverage":71.0,"loc":234.0,"sonar_lines_to_cover":93.0,"sonar_major_violations":4.0,"rloc":184.0,"sonar_minor_violations":0.0,"sonar_coverage":61.2,"sonar_file_complexity":43.0,"sonar_files":1.0,"functions":23.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":39.0,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":28.0,"comment_lines":11.0,"sonar_comment_lines_density":5.6,"sonar_complexity":43.0,"sonar_conditions_to_cover":41.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":88.0,"sonar_uncovered_conditions":25.0,"sonar_uncovered_lines":27.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/codeMapMesh.ts","children":[]},{"name":"geometryGenerationHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":292.0,"sonar_lines_to_cover":131.0,"rloc":217.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":9.0,"comment_lines":37.0,"sonar_comment_lines_density":14.6,"sonar_complexity":11.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":122.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/geometryGenerationHelper.ts","children":[]},{"name":"geometryGenerator.ts","type":"File","attributes":{"line_coverage":94.6,"loc":143.0,"sonar_lines_to_cover":56.0,"sonar_major_violations":1.0,"sonar_minor_violations":1.0,"rloc":112.0,"sonar_coverage":91.5,"sonar_file_complexity":20.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":80.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":13.0,"comment_lines":1.0,"sonar_comment_lines_density":0.9,"sonar_complexity":20.0,"sonar_conditions_to_cover":15.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":50.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/geometryGenerator.ts","children":[]},{"name":"postprocessor","type":"Folder","attributes":{},"children":[{"name":"customComposer.ts","type":"File","attributes":{"line_coverage":82.6,"loc":87.0,"sonar_lines_to_cover":46.0,"sonar_minor_violations":1.0,"rloc":69.0,"sonar_major_violations":0.0,"sonar_coverage":82.1,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":5.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":81.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":16.0,"comment_lines":2.0,"sonar_comment_lines_density":2.8,"sonar_complexity":16.0,"sonar_conditions_to_cover":21.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":46.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":8.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/postprocessor/customComposer.ts","children":[]},{"name":"customComposer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"shaders","type":"Folder","attributes":{},"children":[{"name":"loaders","type":"Folder","attributes":{},"children":[{"name":"codeMapShaderStrings.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":3.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/shaders/loaders/codeMapShaderStrings.ts","children":[]},{"name":"fxaaShaderStrings.ts","type":"File","attributes":{"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":5.0,"sonar_minor_violations":2.0,"rloc":22.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":1.5,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/shaders/loaders/fxaaShaderStrings.ts","children":[]}]},{"name":"glsl","type":"Folder","attributes":{},"link":"","children":[{"name":"codeMapFragmentShader.glsl","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMapVertexShader.glsl","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fxaaFragmentShader.glsl","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fxaaVertexShader.glsl","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"rendering.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMapBuilding.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMapMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"geometryGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"rendering.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"threeViewer","type":"Folder","attributes":{},"children":[{"name":"floorLabels","type":"Folder","attributes":{},"children":[{"name":"floorLabelDrawer.ts","type":"File","attributes":{"line_coverage":97.8,"loc":195.0,"sonar_lines_to_cover":90.0,"sonar_major_violations":3.0,"rloc":148.0,"sonar_minor_violations":0.0,"sonar_coverage":96.1,"sonar_file_complexity":23.0,"sonar_files":1.0,"functions":10.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":83.3,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":17.0,"comment_lines":9.0,"sonar_comment_lines_density":5.7,"sonar_complexity":23.0,"sonar_conditions_to_cover":12.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":87.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":2.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/floorLabels/floorLabelDrawer.ts","children":[]},{"name":"floorLabelHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":8.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/floorLabels/floorLabelHelper.ts","children":[]},{"name":"floorLabelDrawer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"floorLabelHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"threeCamera.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":11.0,"sonar_minor_violations":3.0,"rloc":18.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"comment_lines":1.0,"sonar_comment_lines_density":5.3,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":11.1,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeCamera.service.ts","children":[]},{"name":"threeMapControls.service.ts","type":"File","attributes":{"line_coverage":95.0,"loc":202.0,"sonar_lines_to_cover":101.0,"rloc":154.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":95.2,"sonar_file_complexity":25.0,"sonar_files":1.0,"functions":22.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":3.0,"sonar_comment_lines_density":1.9,"sonar_complexity":25.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":84.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":5.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeMapControls.service.ts","children":[]},{"name":"threeRenderer.service.ts","type":"File","attributes":{"line_coverage":96.1,"loc":139.0,"sonar_lines_to_cover":77.0,"sonar_major_violations":6.0,"sonar_minor_violations":7.0,"rloc":119.0,"sonar_coverage":90.6,"sonar_file_complexity":21.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.9,"sonar_classes":1.0,"sonar_code_smells":13.0,"sonar_cognitive_complexity":12.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":21.0,"sonar_conditions_to_cover":29.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":4.3,"statements":52.0,"sonar_uncovered_conditions":7.0,"sonar_uncovered_lines":3.0,"sonar_violations":13.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":13.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeRenderer.service.ts","children":[]},{"name":"threeSceneService.ts","type":"File","attributes":{"line_coverage":85.7,"loc":443.0,"sonar_lines_to_cover":217.0,"sonar_major_violations":9.0,"rloc":357.0,"sonar_minor_violations":0.0,"sonar_coverage":77.7,"sonar_file_complexity":82.0,"sonar_files":1.0,"functions":42.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":52.9,"sonar_classes":1.0,"sonar_code_smells":10.0,"sonar_cognitive_complexity":47.0,"comment_lines":6.0,"sonar_comment_lines_density":1.7,"sonar_complexity":82.0,"sonar_conditions_to_cover":70.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":192.0,"sonar_uncovered_conditions":33.0,"sonar_uncovered_lines":31.0,"sonar_violations":10.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":10.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeSceneService.ts","children":[]},{"name":"threeStats.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":89.0,"sonar_lines_to_cover":47.0,"sonar_major_violations":4.0,"rloc":73.0,"sonar_minor_violations":0.0,"sonar_coverage":98.2,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":12.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":16.0,"sonar_conditions_to_cover":8.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":35.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeStats.service.ts","children":[]},{"name":"threeViewer.service.ts","type":"File","attributes":{"line_coverage":69.8,"loc":116.0,"sonar_lines_to_cover":63.0,"sonar_major_violations":5.0,"rloc":95.0,"sonar_minor_violations":0.0,"sonar_coverage":56.8,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":16.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":11.1,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":18.0,"sonar_conditions_to_cover":18.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":48.0,"sonar_uncovered_conditions":16.0,"sonar_uncovered_lines":19.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeViewer.service.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"threeMapControls.service.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"threeCamera.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeMapControls.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeRenderer.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeSceneService.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeStats.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeViewer.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"codeMap.render.service.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMap.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMap.label.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMap.mouseEvent.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMap.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMap.render.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorPicker","type":"Folder","attributes":{},"children":[{"name":"colorPicker.component.html","type":"File","attributes":{"loc":17.0,"sonar_major_violations":1.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":1.1,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPicker/colorPicker.component.html","children":[]},{"name":"colorPicker.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPicker/colorPicker.component.scss","children":[]},{"name":"colorPicker.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":51.0,"sonar_lines_to_cover":17.0,"rloc":39.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPicker/colorPicker.component.ts","children":[]},{"name":"colorPicker.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorPickerForMapColor","type":"Folder","attributes":{},"children":[{"name":"colorPickerForMapColor.component.html","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPickerForMapColor/colorPickerForMapColor.component.html","children":[]},{"name":"colorPickerForMapColor.component.ts","type":"File","attributes":{"line_coverage":94.1,"loc":38.0,"sonar_lines_to_cover":17.0,"sonar_major_violations":1.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_coverage":94.1,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPickerForMapColor/colorPickerForMapColor.component.ts","children":[]},{"name":"mapColorLabel.pipe.ts","type":"File","attributes":{"line_coverage":90.0,"loc":63.0,"sonar_lines_to_cover":30.0,"rloc":59.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":87.0,"sonar_file_complexity":17.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":81.3,"sonar_classes":1.0,"sonar_cognitive_complexity":13.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":17.0,"sonar_conditions_to_cover":16.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":28.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPickerForMapColor/mapColorLabel.pipe.ts","children":[]},{"name":"colorPickerForMapColor.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapColorLabel.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"copyToClipboardButton","type":"Folder","attributes":{},"children":[{"name":"copyToClipboard.service.ts","type":"File","attributes":{"line_coverage":84.6,"loc":25.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_coverage":84.6,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":6.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/copyToClipboard.service.ts","children":[]},{"name":"copyToClipboardButton.component.html","type":"File","attributes":{"loc":3.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/copyToClipboardButton.component.html","children":[]},{"name":"copyToClipboardButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":6.0,"sonar_major_violations":1.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/copyToClipboardButton.component.ts","children":[]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"clipboardString.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":9.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":1.0,"sonar_comment_lines_density":5.6,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/util/clipboardString.ts","children":[]},{"name":"getFilenamesWithHighestMetrics.ts","type":"File","attributes":{"line_coverage":100.0,"loc":62.0,"sonar_lines_to_cover":24.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":15.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":15.0,"sonar_conditions_to_cover":17.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":23.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/util/getFilenamesWithHighestMetrics.ts","children":[]},{"name":"clipboardString.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getFilenamesWithHighestMetric.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"copyToClipboard.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"copyToClipboardButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigs","type":"Folder","attributes":{},"children":[{"name":"addCustomConfigButton","type":"Folder","attributes":{},"children":[{"name":"addCustomConfigButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.html","children":[]},{"name":"addCustomConfigButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":6.0,"sonar_major_violations":1.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.ts","children":[]},{"name":"addCustomConfigDialog","type":"Folder","attributes":{},"children":[{"name":"addCustomConfigDialog.component.html","type":"File","attributes":{"loc":38.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.html","children":[]},{"name":"addCustomConfigDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":96.0,"sonar_lines_to_cover":33.0,"sonar_major_violations":3.0,"rloc":89.0,"sonar_minor_violations":0.0,"sonar_coverage":97.3,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":13.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.ts","children":[]},{"name":"downloadAndPurgeConfigs","type":"Folder","attributes":{},"children":[{"name":"downloadAndCollectPurgeableConfigs.ts","type":"File","attributes":{"line_coverage":100.0,"loc":34.0,"sonar_lines_to_cover":17.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":95.8,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":85.7,"sonar_classes":0.0,"sonar_cognitive_complexity":6.0,"comment_lines":2.0,"sonar_comment_lines_density":8.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":16.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndCollectPurgeableConfigs.ts","children":[]},{"name":"downloadAndPurgeConfigs.component.html","type":"File","attributes":{"loc":12.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.html","children":[]},{"name":"downloadAndPurgeConfigs.component.scss","type":"File","attributes":{"loc":23.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.scss","children":[]},{"name":"downloadAndPurgeConfigs.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":53.0,"sonar_lines_to_cover":20.0,"sonar_major_violations":1.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.ts","children":[]},{"name":"validateLocalStorageSize.ts","type":"File","attributes":{"line_coverage":85.7,"loc":17.0,"sonar_lines_to_cover":7.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":85.7,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":5.0,"sonar_comment_lines_density":35.7,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/validateLocalStorageSize.ts","children":[]},{"name":"downloadAndCollectPurgeableConfigs.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"downloadAndPurgeConfigs.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"addCustomConfigDialog.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"addCustomConfigButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigButtons.scss","type":"File","attributes":{"loc":24.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigButtons.scss","children":[]},{"name":"customConfigHelper.service.ts","type":"File","attributes":{"line_coverage":61.5,"loc":24.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_coverage":61.5,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":0.0,"sonar_uncovered_lines":5.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigHelper.service.ts","children":[]},{"name":"customConfigList","type":"Folder","attributes":{},"children":[{"name":"customConfigItemGroup","type":"Folder","attributes":{},"children":[{"name":"customConfig2ApplicableColor.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":7.0,"sonar_major_violations":1.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableColor.pipe.ts","children":[]},{"name":"customConfig2ApplicableMessage.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableMessage.pipe.ts","children":[]},{"name":"customConfigDescription","type":"Folder","attributes":{},"children":[{"name":"applyCustomConfigButton.component.html","type":"File","attributes":{"loc":27.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.html","children":[]},{"name":"applyCustomConfigButton.component.scss","type":"File","attributes":{"loc":54.0,"rloc":45.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.scss","children":[]},{"name":"applyCustomConfigButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":39.0,"sonar_lines_to_cover":15.0,"sonar_major_violations":4.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.8,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.ts","children":[]},{"name":"customConfigColorSchemaBySelectionMode.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":5.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/customConfigColorSchemaBySelectionMode.pipe.ts","children":[]},{"name":"filterCustomConfigDataBySearchTerm.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":9.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/filterCustomConfigDataBySearchTerm.pipe.ts","children":[]},{"name":"applyCustomConfigButton.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfigColorSchemaBySelectionMode.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"filterCustomConfigDataBySearchTerm.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigItemGroup.component.html","type":"File","attributes":{"loc":61.0,"rloc":60.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.html","children":[]},{"name":"customConfigItemGroup.component.scss","type":"File","attributes":{"loc":51.0,"rloc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.scss","children":[]},{"name":"customConfigItemGroup.component.ts","type":"File","attributes":{"line_coverage":94.7,"loc":94.0,"sonar_lines_to_cover":38.0,"sonar_major_violations":4.0,"rloc":87.0,"sonar_minor_violations":0.0,"sonar_coverage":93.8,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":90.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":15.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":14.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":15.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":2.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.ts","children":[]},{"name":"getMissingCustomConfigModeAndMaps.ts","type":"File","attributes":{"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":9.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/getMissingCustomConfigModeAndMaps.ts","children":[]},{"name":"customConfig2ApplicableColor.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfig2ApplicableMessage.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfigItemGroup.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getMissingCustomConfigModeAndMaps.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigList.component.html","type":"File","attributes":{"loc":51.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.html","children":[]},{"name":"customConfigList.component.scss","type":"File","attributes":{"loc":27.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.scss","children":[]},{"name":"customConfigList.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":50.0,"sonar_lines_to_cover":21.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.ts","children":[]},{"name":"getCustomConfigItemGroups.ts","type":"File","attributes":{"line_coverage":100.0,"loc":54.0,"sonar_lines_to_cover":18.0,"rloc":45.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":16.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/getCustomConfigItemGroups.ts","children":[]},{"name":"customConfigList.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getCustomConfigItemGroups.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigNoteDialogButton","type":"Folder","attributes":{},"children":[{"name":"customConfigNoteDialog","type":"Folder","attributes":{},"children":[{"name":"customConfigNoteDialog.component.html","type":"File","attributes":{"loc":13.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.html","children":[]},{"name":"customConfigNoteDialog.component.scss","type":"File","attributes":{"loc":32.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.scss","children":[]},{"name":"customConfigNoteDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":10.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.ts","children":[]}]},{"name":"customConfigNoteDialogButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.html","children":[]},{"name":"customConfigNoteDialogButton.component.scss","type":"File","attributes":{"loc":15.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.scss","children":[]},{"name":"customConfigNoteDialogButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":12.0,"sonar_major_violations":1.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.ts","children":[]},{"name":"customConfigNoteDialogButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigs.component.html","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigs.component.html","children":[]},{"name":"customConfigs.component.scss","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigs.component.scss","children":[]},{"name":"customConfigs.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":51.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":44.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigs.component.ts","children":[]},{"name":"downloadCustomConfigsButton","type":"Folder","attributes":{},"children":[{"name":"downloadCustomConfigHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":9.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigHelper.ts","children":[]},{"name":"downloadCustomConfigsButton.component.html","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigsButton.component.html","children":[]},{"name":"downloadCustomConfigsButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":34.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigsButton.component.ts","children":[]},{"name":"getDownloadableCustomConfigs.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":10.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":1.0,"sonar_comment_lines_density":4.5,"sonar_complexity":5.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/getDownloadableCustomConfigs.ts","children":[]},{"name":"downloadCustomConfigButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getDownloadableCustomConfigs.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"uploadCustomConfigButton","type":"Folder","attributes":{},"children":[{"name":"uploadCustomConfigButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.component.html","children":[]},{"name":"uploadCustomConfigButton.component.ts","type":"File","attributes":{"line_coverage":38.5,"loc":32.0,"sonar_lines_to_cover":13.0,"rloc":28.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":38.5,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":1.0,"sonar_comment_lines_density":3.4,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_lines":8.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.component.ts","children":[]},{"name":"uploadCustomConfigButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"visibleFilesBySelectionMode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":12.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/visibleFilesBySelectionMode.selector.ts","children":[]},{"name":"customConfigs.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"visibleFilesBySelectionMode.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"dialogs","type":"Folder","attributes":{},"children":[{"name":"changelogDialog","type":"Folder","attributes":{},"children":[{"name":"changelogDialog.component.html","type":"File","attributes":{"loc":21.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.html","children":[]},{"name":"changelogDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":74.0,"sonar_lines_to_cover":37.0,"rloc":60.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":9.0,"comment_lines":2.0,"sonar_comment_lines_density":3.2,"sonar_complexity":14.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":30.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.ts","children":[]},{"name":"changelogDialog.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"changelogDialog.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"confirmationDialog","type":"Folder","attributes":{},"children":[{"name":"confirmationDialog.component.html","type":"File","attributes":{"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.html","children":[]},{"name":"confirmationDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":6.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.ts","children":[]}]},{"name":"dialogs.ts","type":"File","attributes":{"line_coverage":0.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/dialogs.ts","children":[]},{"name":"errorDialog","type":"Folder","attributes":{},"children":[{"name":"errorDialog.component.html","type":"File","attributes":{"loc":11.0,"sonar_major_violations":1.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":2.1,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.html","children":[]},{"name":"errorDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":7.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.ts","children":[]},{"name":"errorDialog.component.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"export3DMapButton","type":"Folder","attributes":{},"children":[{"name":"export3DMapButton.component.html","type":"File","attributes":{"loc":2.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapButton.component.html","children":[]},{"name":"export3DMapButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":65.0,"sonar_lines_to_cover":28.0,"sonar_major_violations":3.0,"rloc":59.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":6.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":4.0,"comment_lines":1.0,"sonar_comment_lines_density":1.7,"sonar_complexity":8.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":14.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapButton.component.ts","children":[]},{"name":"export3DMapDialog","type":"Folder","attributes":{},"children":[{"name":"export3DMapDialog.component.html","type":"File","attributes":{"loc":110.0,"rloc":96.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapDialog/export3DMapDialog.component.html","children":[]},{"name":"export3DMapDialog.component.scss","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapDialog/export3DMapDialog.component.scss","children":[]},{"name":"export3DMapDialog.component.ts","type":"File","attributes":{"line_coverage":79.2,"loc":378.0,"sonar_lines_to_cover":159.0,"sonar_major_violations":3.0,"rloc":327.0,"sonar_minor_violations":0.0,"sonar_coverage":77.0,"sonar_file_complexity":43.0,"sonar_files":1.0,"functions":32.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":65.6,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":7.0,"comment_lines":10.0,"sonar_comment_lines_density":3.0,"sonar_complexity":43.0,"sonar_conditions_to_cover":32.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":110.0,"sonar_uncovered_conditions":11.0,"sonar_uncovered_lines":33.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapDialog/export3DMapDialog.component.ts","children":[]},{"name":"export3DMapDialog.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"export3DMapButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"fileExtensionBar","type":"Folder","attributes":{},"children":[{"name":"distributionMetricChooser","type":"Folder","attributes":{},"children":[{"name":"distributionMetricChooser.component.html","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.html","children":[]},{"name":"distributionMetricChooser.component.scss","type":"File","attributes":{"loc":10.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.scss","children":[]},{"name":"distributionMetricChooser.component.ts","type":"File","attributes":{"line_coverage":90.0,"loc":25.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_coverage":90.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.ts","children":[]}]},{"name":"fileExtensionBar.component.html","type":"File","attributes":{"loc":44.0,"rloc":40.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.html","children":[]},{"name":"fileExtensionBar.component.scss","type":"File","attributes":{"loc":81.0,"rloc":69.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.scss","children":[]},{"name":"fileExtensionBar.component.ts","type":"File","attributes":{"line_coverage":96.3,"loc":65.0,"sonar_lines_to_cover":27.0,"sonar_major_violations":2.0,"rloc":56.0,"sonar_minor_violations":0.0,"sonar_coverage":90.9,"sonar_file_complexity":13.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":66.7,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":10.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":13.0,"sonar_conditions_to_cover":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":17.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"fileExtensionCalculator.ts","type":"File","attributes":{"line_coverage":98.1,"loc":124.0,"sonar_lines_to_cover":54.0,"sonar_major_violations":1.0,"rloc":106.0,"sonar_minor_violations":0.0,"sonar_coverage":95.9,"sonar_file_complexity":25.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":89.5,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":23.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":25.0,"sonar_conditions_to_cover":19.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":51.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/selectors/fileExtensionCalculator.ts","children":[]},{"name":"metricDistribution.selector.ts","type":"File","attributes":{"line_coverage":83.3,"loc":12.0,"sonar_lines_to_cover":6.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":83.3,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/selectors/metricDistribution.selector.ts","children":[]},{"name":"fileExtensionCalculator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"fileExtensionBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"filePanel","type":"Folder","attributes":{},"children":[{"name":"filePanel.component.html","type":"File","attributes":{"loc":7.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanel.component.html","children":[]},{"name":"filePanel.component.scss","type":"File","attributes":{"loc":11.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanel.component.scss","children":[]},{"name":"filePanel.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanel.component.ts","children":[]},{"name":"filePanelDeltaSelector","type":"Folder","attributes":{},"children":[{"name":"filePanelDeltaSelector.component.html","type":"File","attributes":{"loc":38.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.html","children":[]},{"name":"filePanelDeltaSelector.component.scss","type":"File","attributes":{"loc":48.0,"rloc":39.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.scss","children":[]},{"name":"filePanelDeltaSelector.component.ts","type":"File","attributes":{"line_coverage":79.2,"loc":117.0,"sonar_lines_to_cover":48.0,"sonar_major_violations":2.0,"rloc":101.0,"sonar_minor_violations":0.0,"sonar_coverage":68.5,"sonar_file_complexity":30.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":48.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":14.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":30.0,"sonar_conditions_to_cover":25.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":27.0,"sonar_uncovered_conditions":13.0,"sonar_uncovered_lines":10.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.ts","children":[]},{"name":"incompatibleMapsDialog","type":"Folder","attributes":{},"children":[{"name":"incompatibleMapsDialog.component.html","type":"File","attributes":{"loc":16.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/incompatibleMapsDialog/incompatibleMapsDialog.component.html","children":[]},{"name":"incompatibleMapsDialog.component.scss","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/incompatibleMapsDialog/incompatibleMapsDialog.component.scss","children":[]},{"name":"incompatibleMapsDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":10.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/incompatibleMapsDialog/incompatibleMapsDialog.component.ts","children":[]},{"name":"incompatibleMapsDialog.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"pictogramBackground.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/pictogramBackground.selector.ts","children":[]},{"name":"filePanelDeltaSelector.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"pictogramBackground.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"filePanelFileSelector","type":"Folder","attributes":{},"children":[{"name":"filePanelFileSelector.component.html","type":"File","attributes":{"loc":36.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.html","children":[]},{"name":"filePanelFileSelector.component.scss","type":"File","attributes":{"loc":23.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.scss","children":[]},{"name":"filePanelFileSelector.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":165.0,"sonar_lines_to_cover":80.0,"rloc":139.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":49.0,"sonar_files":1.0,"functions":36.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":17.0,"comment_lines":1.0,"sonar_comment_lines_density":0.7,"sonar_complexity":49.0,"sonar_conditions_to_cover":18.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":57.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.ts","children":[]},{"name":"removeOrAddFileButton","type":"Folder","attributes":{},"children":[{"name":"removeOrAddFileButton.component.html","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/removeOrAddFileButton/removeOrAddFileButton.component.html","children":[]},{"name":"removeOrAddFileButton.component.scss","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/removeOrAddFileButton/removeOrAddFileButton.component.scss","children":[]},{"name":"removeOrAddFileButton.component.ts","type":"File","attributes":{"line_coverage":50.0,"loc":21.0,"sonar_lines_to_cover":6.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":50.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/removeOrAddFileButton/removeOrAddFileButton.component.ts","children":[]}]},{"name":"filePanelFileSelector.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"filePanelStateButtons","type":"Folder","attributes":{},"children":[{"name":"filePanelStateButtons.component.html","type":"File","attributes":{"loc":19.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.html","children":[]},{"name":"filePanelStateButtons.component.scss","type":"File","attributes":{"loc":32.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.scss","children":[]},{"name":"filePanelStateButtons.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.ts","children":[]}]},{"name":"fileSelectionMode.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":59.0,"sonar_lines_to_cover":25.0,"sonar_major_violations":3.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_coverage":95.1,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":3.0,"comment_lines":6.0,"sonar_comment_lines_density":11.5,"sonar_complexity":16.0,"sonar_conditions_to_cover":16.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":11.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/fileSelectionMode.service.ts","children":[]},{"name":"filePanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"filePanel.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileSelectionMode.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"labelledColorPicker","type":"Folder","attributes":{},"children":[{"name":"labelledColorPicker.component.html","type":"File","attributes":{"loc":31.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.html","children":[]},{"name":"labelledColorPicker.component.scss","type":"File","attributes":{"loc":47.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":5.0,"sonar_comment_lines_density":12.2,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.scss","children":[]},{"name":"labelledColorPicker.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":6.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.ts","children":[]},{"name":"readableColorForBackground.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":4.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/labelledColorPicker/readableColorForBackground.pipe.ts","children":[]},{"name":"labelledColorPicker.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"legendPanel","type":"Folder","attributes":{},"children":[{"name":"legendBlock","type":"Folder","attributes":{},"children":[{"name":"legendBlock.component.html","type":"File","attributes":{"loc":26.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.html","children":[]},{"name":"legendBlock.component.scss","type":"File","attributes":{"loc":32.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.scss","children":[]},{"name":"legendBlock.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.ts","children":[]}]},{"name":"legendMarkedPackages","type":"Folder","attributes":{},"children":[{"name":"legendMarkedPackages.component.html","type":"File","attributes":{"loc":11.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.html","children":[]},{"name":"legendMarkedPackages.component.scss","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.scss","children":[]},{"name":"legendMarkedPackages.component.ts","type":"File","attributes":{"line_coverage":86.7,"loc":44.0,"sonar_lines_to_cover":15.0,"sonar_major_violations":1.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_coverage":86.7,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":5.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.ts","children":[]},{"name":"legendMarkedPackages.selector.ts","type":"File","attributes":{"line_coverage":37.5,"loc":18.0,"sonar_lines_to_cover":8.0,"sonar_major_violations":1.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_coverage":33.3,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":0.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":1.1,"statements":5.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":5.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.selector.ts","children":[]},{"name":"legendMarkedPackages.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"legendPanel.component.html","type":"File","attributes":{"loc":49.0,"rloc":44.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendPanel.component.html","children":[]},{"name":"legendPanel.component.scss","type":"File","attributes":{"loc":62.0,"rloc":53.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendPanel.component.scss","children":[]},{"name":"legendPanel.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":67.0,"sonar_lines_to_cover":35.0,"sonar_major_violations":1.0,"rloc":58.0,"sonar_minor_violations":0.0,"sonar_coverage":97.6,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":85.7,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":7.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":12.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendPanel.component.ts","children":[]},{"name":"legendPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"legendPanel.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"legendPanel.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"loadingFileProgressSpinner","type":"Folder","attributes":{},"children":[{"name":"loadingFileProgressSpinner.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.html","children":[]},{"name":"loadingFileProgressSpinner.component.scss","type":"File","attributes":{"loc":17.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.scss","children":[]},{"name":"loadingFileProgressSpinner.component.ts","type":"File","attributes":{"line_coverage":85.7,"loc":23.0,"sonar_lines_to_cover":7.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":85.7,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.ts","children":[]}]},{"name":"logo","type":"Folder","attributes":{},"children":[{"name":"logo.component.html","type":"File","attributes":{"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/logo/logo.component.html","children":[]},{"name":"logo.component.scss","type":"File","attributes":{"loc":25.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/logo/logo.component.scss","children":[]},{"name":"logo.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":4.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/logo/logo.component.ts","children":[]},{"name":"logo.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricChooser","type":"Folder","attributes":{},"children":[{"name":"filterMetricDataBySearchTerm.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":8.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":2.0,"sonar_comment_lines_density":10.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/filterMetricDataBySearchTerm.pipe.ts","children":[]},{"name":"metricChooser.component.html","type":"File","attributes":{"loc":51.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooser.component.html","children":[]},{"name":"metricChooser.component.scss","type":"File","attributes":{"loc":27.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooser.component.scss","children":[]},{"name":"metricChooser.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":110.0,"sonar_lines_to_cover":45.0,"sonar_major_violations":2.0,"rloc":97.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":24.0,"sonar_files":1.0,"functions":12.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":10.0,"comment_lines":1.0,"sonar_comment_lines_density":1.0,"sonar_complexity":24.0,"sonar_conditions_to_cover":18.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.6,"statements":21.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooser.component.ts","children":[]},{"name":"metricChooserType","type":"Folder","attributes":{},"children":[{"name":"createAttributeTypeSelector.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":7.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserType/createAttributeTypeSelector.selector.ts","children":[]},{"name":"metricChooserType.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserType/metricChooserType.component.html","children":[]},{"name":"metricChooserType.component.ts","type":"File","attributes":{"line_coverage":95.0,"loc":47.0,"sonar_lines_to_cover":20.0,"sonar_major_violations":3.0,"sonar_minor_violations":2.0,"rloc":40.0,"sonar_coverage":90.9,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.7,"statements":8.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserType/metricChooserType.component.ts","children":[]},{"name":"createAttributeType.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricChooserType.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricChooserValue","type":"Folder","attributes":{},"children":[{"name":"metricChooserValue.component.html","type":"File","attributes":{"loc":13.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserValue/metricChooserValue.component.html","children":[]},{"name":"metricChooserValue.component.scss","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserValue/metricChooserValue.component.scss","children":[]},{"name":"metricChooserValue.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":17.0,"sonar_major_violations":2.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserValue/metricChooserValue.component.ts","children":[]},{"name":"metricChooserValue.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"nodeSelection.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":23.0,"sonar_major_violations":2.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_coverage":97.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":90.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":8.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/nodeSelection.service.ts","children":[]},{"name":"metricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeselection.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetMapButton","type":"Folder","attributes":{},"children":[{"name":"confirmResetMapDialog","type":"Folder","attributes":{},"children":[{"name":"confirmResetMapDialog.component.html","type":"File","attributes":{"loc":15.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetMapButton/confirmResetMapDialog/confirmResetMapDialog.component.html","children":[]},{"name":"confirmResetMapDialog.component.ts","type":"File","attributes":{"line_coverage":97.2,"loc":68.0,"sonar_lines_to_cover":36.0,"sonar_major_violations":5.0,"rloc":61.0,"sonar_minor_violations":0.0,"sonar_coverage":97.4,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":14.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetMapButton/confirmResetMapDialog/confirmResetMapDialog.component.ts","children":[]},{"name":"confirmResetMapDialog.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetMapButton.component.html","type":"File","attributes":{"loc":2.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetMapButton/resetMapButton.component.html","children":[]},{"name":"resetMapButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":7.0,"sonar_major_violations":1.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetMapButton/resetMapButton.component.ts","children":[]},{"name":"resetMapButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetSettingsButton","type":"Folder","attributes":{},"children":[{"name":"getPartialDefaultState.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":26.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_critical_violations":1.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":17.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.6,"statements":24.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetSettingsButton/getPartialDefaultState.ts","children":[]},{"name":"resetSettingsButton.component.html","type":"File","attributes":{"loc":7.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.html","children":[]},{"name":"resetSettingsButton.component.scss","type":"File","attributes":{"loc":28.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.scss","children":[]},{"name":"resetSettingsButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":33.0,"sonar_lines_to_cover":11.0,"sonar_major_violations":2.0,"rloc":28.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.ts","children":[]},{"name":"getPartialDefaultState.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"resetSettingsButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"ribbonBar","type":"Folder","attributes":{},"children":[{"name":"areaMetricChooser","type":"Folder","attributes":{},"children":[{"name":"areaMetricChooser.component.html","type":"File","attributes":{"loc":9.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.html","children":[]},{"name":"areaMetricChooser.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.ts","children":[]},{"name":"areaMetricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"areaSettingsPanel","type":"Folder","attributes":{},"children":[{"name":"areaSettingsPanel.component.html","type":"File","attributes":{"loc":19.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.html","children":[]},{"name":"areaSettingsPanel.component.scss","type":"File","attributes":{"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.scss","children":[]},{"name":"areaSettingsPanel.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":23.0,"sonar_major_violations":1.0,"sonar_minor_violations":1.0,"rloc":37.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":2.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.ts","children":[]},{"name":"areaSettingsPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"artificialIntelligence","type":"Folder","attributes":{},"children":[{"name":"artificialIntelligence.component.html","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.html","children":[]},{"name":"artificialIntelligence.component.scss","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.scss","children":[]},{"name":"artificialIntelligence.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.ts","children":[]},{"name":"highRiskProfile","type":"Folder","attributes":{},"children":[{"name":"highRiskProfile.component.html","type":"File","attributes":{"loc":69.0,"rloc":67.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.html","children":[]},{"name":"highRiskProfile.component.scss","type":"File","attributes":{"loc":37.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.scss","children":[]},{"name":"highRiskProfile.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":5.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.ts","children":[]},{"name":"riskProfileBar.directive.ts","type":"File","attributes":{"line_coverage":100.0,"loc":20.0,"sonar_lines_to_cover":8.0,"sonar_major_violations":1.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/riskProfileBar.directive.ts","children":[]},{"name":"highRiskProfile.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"artificialIntelligence.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":100.0,"sonar_lines_to_cover":43.0,"rloc":86.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":13.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":18.0,"sonar_conditions_to_cover":19.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":34.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/artificialIntelligence.selector.ts","children":[]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"artificialIntelligence.metricThresholds.ts","type":"File","attributes":{"line_coverage":100.0,"loc":161.0,"sonar_lines_to_cover":1.0,"rloc":151.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":6.0,"sonar_comment_lines_density":3.8,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/artificialIntelligence.metricThresholds.ts","children":[]},{"name":"getMetricThresholds.ts","type":"File","attributes":{"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":3.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/getMetricThresholds.ts","children":[]},{"name":"mainProgrammingLanguageHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":7.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/mainProgrammingLanguageHelper.ts","children":[]},{"name":"riskProfileHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":21.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":6.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":17.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/riskProfileHelper.ts","children":[]},{"name":"suspiciousMetricsHelper.ts","type":"File","attributes":{"line_coverage":97.8,"loc":121.0,"sonar_lines_to_cover":46.0,"rloc":100.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":97.3,"sonar_file_complexity":22.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":96.6,"sonar_classes":0.0,"sonar_cognitive_complexity":24.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":22.0,"sonar_conditions_to_cover":29.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":45.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/suspiciousMetricsHelper.ts","children":[]},{"name":"mainProgrammingLanguageHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"riskProfileHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"suspiciousMetricsHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"artificialIntelligence.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"suspiciousMetrics","type":"Folder","attributes":{},"children":[{"name":"suspiciousMetrics.component.html","type":"File","attributes":{"loc":20.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.html","children":[]},{"name":"suspiciousMetrics.component.scss","type":"File","attributes":{"loc":11.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.scss","children":[]},{"name":"suspiciousMetrics.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":11.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.ts","children":[]},{"name":"suspiciousMetricsMenu","type":"Folder","attributes":{},"children":[{"name":"suspiciousMetricsDialog","type":"Folder","attributes":{},"children":[{"name":"suspiciousMetricDialog.component.html","type":"File","attributes":{"loc":16.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsDialog/suspiciousMetricDialog.component.html","children":[]},{"name":"suspiciousMetricsDialog.component.scss","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsDialog/suspiciousMetricsDialog.component.scss","children":[]},{"name":"suspiciousMetricsDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":5.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsDialog/suspiciousMetricsDialog.component.ts","children":[]}]},{"name":"suspiciousMetricsList","type":"Folder","attributes":{},"children":[{"name":"suspiciousMetricsList.component.html","type":"File","attributes":{"loc":58.0,"rloc":56.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsList/suspiciousMetricsList.component.html","children":[]},{"name":"suspiciousMetricsList.component.scss","type":"File","attributes":{"loc":32.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsList/suspiciousMetricsList.component.scss","children":[]},{"name":"suspiciousMetricsList.component.ts","type":"File","attributes":{"line_coverage":97.3,"loc":83.0,"sonar_lines_to_cover":37.0,"sonar_major_violations":1.0,"rloc":76.0,"sonar_minor_violations":0.0,"sonar_coverage":97.9,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":15.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsList/suspiciousMetricsList.component.ts","children":[]}]},{"name":"suspiciousMetricsMenu.component.html","type":"File","attributes":{"loc":17.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsMenu.component.html","children":[]},{"name":"suspiciousMetricsMenu.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsMenu.component.scss","children":[]},{"name":"suspiciousMetricsMenu.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":35.0,"sonar_lines_to_cover":11.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsMenu.component.ts","children":[]},{"name":"unsuspiciousMetricsList","type":"Folder","attributes":{},"children":[{"name":"unsuspiciousMetricsList.component.html","type":"File","attributes":{"loc":28.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/unsuspiciousMetricsList/unsuspiciousMetricsList.component.html","children":[]},{"name":"unsuspiciousMetricsList.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":5.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/unsuspiciousMetricsList/unsuspiciousMetricsList.component.ts","children":[]}]},{"name":"untrackedMetricsList","type":"Folder","attributes":{},"children":[{"name":"untrackedMetricsList.component.html","type":"File","attributes":{"loc":31.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/untrackedMetricsList/untrackedMetricsList.component.html","children":[]},{"name":"untrackedMetricsList.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":5.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/untrackedMetricsList/untrackedMetricsList.component.ts","children":[]}]}]},{"name":"suspiciousMetrics.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"colorMetricChooser","type":"Folder","attributes":{},"children":[{"name":"colorMetricChooser.component.html","type":"File","attributes":{"loc":10.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.html","children":[]},{"name":"colorMetricChooser.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":12.0,"sonar_major_violations":1.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.ts","children":[]},{"name":"colorMetricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorSettingsPanel","type":"Folder","attributes":{},"children":[{"name":"colorSettingsPanel.component.html","type":"File","attributes":{"loc":93.0,"rloc":90.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.html","children":[]},{"name":"colorSettingsPanel.component.scss","type":"File","attributes":{"loc":21.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.scss","children":[]},{"name":"colorSettingsPanel.component.ts","type":"File","attributes":{"line_coverage":95.5,"loc":123.0,"sonar_lines_to_cover":67.0,"sonar_major_violations":3.0,"rloc":109.0,"sonar_minor_violations":0.0,"sonar_coverage":95.1,"sonar_file_complexity":15.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":92.9,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":15.0,"sonar_conditions_to_cover":14.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":24.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":3.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.ts","children":[]},{"name":"metricColorRangeDiagram","type":"Folder","attributes":{},"children":[{"name":"metricColorRangeDiagram.component.html","type":"File","attributes":{"loc":2.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeDiagram/metricColorRangeDiagram.component.html","children":[]},{"name":"metricColorRangeDiagram.component.scss","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeDiagram/metricColorRangeDiagram.component.scss","children":[]},{"name":"metricColorRangeDiagram.component.ts","type":"File","attributes":{"line_coverage":98.4,"loc":418.0,"sonar_lines_to_cover":123.0,"sonar_major_violations":1.0,"rloc":363.0,"sonar_minor_violations":0.0,"sonar_coverage":96.1,"sonar_file_complexity":58.0,"sonar_files":1.0,"functions":34.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.1,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":31.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":58.0,"sonar_conditions_to_cover":31.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":115.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeDiagram/metricColorRangeDiagram.component.ts","children":[]},{"name":"metricColorRangeDiagram.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricColorRangeSlider","type":"Folder","attributes":{},"children":[{"name":"metricColorRangeSlider.component.html","type":"File","attributes":{"loc":59.0,"rloc":55.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.html","children":[]},{"name":"metricColorRangeSlider.component.scss","type":"File","attributes":{"loc":26.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.scss","children":[]},{"name":"metricColorRangeSlider.component.ts","type":"File","attributes":{"line_coverage":84.3,"loc":139.0,"sonar_lines_to_cover":51.0,"rloc":125.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":86.2,"sonar_file_complexity":15.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":15.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":37.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":8.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.ts","children":[]},{"name":"rangeSliderLabels","type":"Folder","attributes":{},"children":[{"name":"rangeSliderLabels.component.html","type":"File","attributes":{"loc":31.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSliderLabels/rangeSliderLabels.component.html","children":[]},{"name":"rangeSliderLabels.component.scss","type":"File","attributes":{"loc":10.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSliderLabels/rangeSliderLabels.component.scss","children":[]},{"name":"rangeSliderLabels.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":64.0,"sonar_lines_to_cover":22.0,"sonar_major_violations":1.0,"rloc":51.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":16.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSliderLabels/rangeSliderLabels.component.ts","children":[]},{"name":"rangeSliderLabels.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"SliderRangePosition.ts","type":"File","attributes":{"line_coverage":100.0,"loc":143.0,"sonar_lines_to_cover":30.0,"rloc":128.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":5.0,"comment_lines":1.0,"sonar_comment_lines_density":0.8,"sonar_complexity":10.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":30.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/utils/SliderRangePosition.ts","children":[]},{"name":"SliderRangePosition.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricColorRangeSlider.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"metricColorRangeColors.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":4.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/selectors/metricColorRangeColors.selector.ts","children":[]},{"name":"metricColorRangeValues.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":16.0,"sonar_lines_to_cover":5.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/selectors/metricColorRangeValues.selector.ts","children":[]}]},{"name":"colorSettingsPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edgeMetricChooser","type":"Folder","attributes":{},"children":[{"name":"edgeMetricChooser.component.html","type":"File","attributes":{"loc":21.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.html","children":[]},{"name":"edgeMetricChooser.component.scss","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.scss","children":[]},{"name":"edgeMetricChooser.component.ts","type":"File","attributes":{"line_coverage":96.4,"loc":58.0,"sonar_lines_to_cover":28.0,"sonar_major_violations":4.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_coverage":93.8,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":9.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.ts","children":[]},{"name":"edgeChooser.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"edgeChooser.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"edgeMetricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edgeSettingsPanel","type":"Folder","attributes":{},"children":[{"name":"edgeMetricToggle","type":"Folder","attributes":{},"children":[{"name":"edgeMetricToggle.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.html","children":[]},{"name":"edgeMetricToggle.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":29.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.ts","children":[]},{"name":"edgeMetricToggle.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edgeSettingsPanel.component.html","type":"File","attributes":{"loc":40.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.html","children":[]},{"name":"edgeSettingsPanel.component.ts","type":"File","attributes":{"line_coverage":89.7,"loc":58.0,"sonar_lines_to_cover":29.0,"sonar_major_violations":1.0,"rloc":52.0,"sonar_minor_violations":0.0,"sonar_coverage":89.7,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":3.0,"sonar_uncovered_lines":3.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"amountOfBuildingsWithSelectedEdgeMetric.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":84.6,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/selectors/amountOfBuildingsWithSelectedEdgeMetric.selector.ts","children":[]}]},{"name":"edgeSettingsPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"heightMetricChooser","type":"Folder","attributes":{},"children":[{"name":"heightMetricChooser.component.html","type":"File","attributes":{"loc":9.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightMetricChooser/heightMetricChooser.component.html","children":[]},{"name":"heightMetricChooser.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightMetricChooser/heightMetricChooser.component.ts","children":[]},{"name":"heightMetricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"heightSettingsPanel","type":"Folder","attributes":{},"children":[{"name":"heightSettingsPanel.component.html","type":"File","attributes":{"loc":44.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.html","children":[]},{"name":"heightSettingsPanel.component.ts","type":"File","attributes":{"line_coverage":86.1,"loc":61.0,"sonar_lines_to_cover":36.0,"sonar_major_violations":1.0,"sonar_minor_violations":1.0,"rloc":52.0,"sonar_coverage":86.1,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":1.4,"statements":5.0,"sonar_uncovered_lines":5.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"isLabelsSliderDisabled.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightSettingsPanel/selectors/isLabelsSliderDisabled.selector.ts","children":[]}]},{"name":"heightSettingsPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"linkColorMetricToHeightMetricButton","type":"Folder","attributes":{},"children":[{"name":"linkColorMetricToHeightMetricButton.component.html","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.html","children":[]},{"name":"linkColorMetricToHeightMetricButton.component.scss","type":"File","attributes":{"loc":22.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.scss","children":[]},{"name":"linkColorMetricToHeightMetricButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.ts","children":[]},{"name":"linkColorMetricToHeightMetricButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"ribbonBar.component.html","type":"File","attributes":{"loc":66.0,"rloc":52.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBar.component.html","children":[]},{"name":"ribbonBar.component.scss","type":"File","attributes":{"loc":46.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBar.component.scss","children":[]},{"name":"ribbonBar.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":56.0,"sonar_lines_to_cover":26.0,"rloc":53.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBar.component.ts","children":[]},{"name":"ribbonBarMenuButton","type":"Folder","attributes":{},"children":[{"name":"ribbonBarMenuButton.component.html","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarMenuButton/ribbonBarMenuButton.component.html","children":[]},{"name":"ribbonBarMenuButton.component.scss","type":"File","attributes":{"loc":15.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarMenuButton/ribbonBarMenuButton.component.scss","children":[]},{"name":"ribbonBarMenuButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":2.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarMenuButton/ribbonBarMenuButton.component.ts","children":[]}]},{"name":"ribbonBarPanel","type":"Folder","attributes":{},"children":[{"name":"ribbonBarPanel.component.html","type":"File","attributes":{"loc":26.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanel.component.html","children":[]},{"name":"ribbonBarPanel.component.scss","type":"File","attributes":{"loc":41.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanel.component.scss","children":[]},{"name":"ribbonBarPanel.component.ts","type":"File","attributes":{"line_coverage":96.7,"loc":107.0,"sonar_lines_to_cover":30.0,"sonar_major_violations":3.0,"rloc":85.0,"sonar_minor_violations":0.0,"sonar_coverage":90.2,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":83.9,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":18.0,"sonar_conditions_to_cover":31.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":19.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":1.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanel.component.ts","children":[]},{"name":"ribbonBarPanelSettings.component.scss","type":"File","attributes":{"loc":15.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanelSettings.component.scss","children":[]},{"name":"ribbonBarPanelSettings.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":2.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanelSettings.component.ts","children":[]},{"name":"ribbonBarPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"roundedBox","type":"Folder","attributes":{},"children":[{"name":"roundedBox.component.html","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/roundedBox/roundedBox.component.html","children":[]},{"name":"roundedBox.component.scss","type":"File","attributes":{"loc":11.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/roundedBox/roundedBox.component.scss","children":[]},{"name":"roundedBox.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":2.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/roundedBox/roundedBox.component.ts","children":[]}]},{"name":"searchPanel","type":"Folder","attributes":{},"children":[{"name":"blacklistPanel","type":"Folder","attributes":{},"children":[{"name":"blacklistPanel.component.html","type":"File","attributes":{"loc":49.0,"rloc":45.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/blacklistPanel/blacklistPanel.component.html","children":[]},{"name":"blacklistPanel.component.scss","type":"File","attributes":{"loc":7.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/blacklistPanel/blacklistPanel.component.scss","children":[]},{"name":"blacklistPanel.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":28.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/blacklistPanel/blacklistPanel.component.ts","children":[]},{"name":"createBlacklistItemSelector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":8.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/blacklistPanel/createBlacklistItemSelector.ts","children":[]},{"name":"blacklistPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createBlacklistItemSelector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapTreeView","type":"Folder","attributes":{},"children":[{"name":"areaMetricValidPipe.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":5.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":10.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/areaMetricValidPipe.pipe.ts","children":[]},{"name":"isNodeLeaf.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":4.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/isNodeLeaf.pipe.ts","children":[]},{"name":"mapTreeView.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeView.component.html","children":[]},{"name":"mapTreeView.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":7.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeView.component.ts","children":[]},{"name":"mapTreeViewItemIcon","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewItemIcon.component.html","type":"File","attributes":{"loc":7.0,"sonar_major_violations":1.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":2.8,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIcon.component.html","children":[]},{"name":"mapTreeViewItemIcon.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":16.0,"sonar_lines_to_cover":4.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIcon.component.ts","children":[]},{"name":"mapTreeViewItemIconClass.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":8.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIconClass.pipe.ts","children":[]},{"name":"mapTreeViewItemIconColor.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":33.0,"sonar_lines_to_cover":15.0,"sonar_major_violations":1.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIconColor.pipe.ts","children":[]},{"name":"mapTreeViewItemIconClass.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapTreeViewItemIconColor.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapTreeViewItemName","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewItemName.component.html","type":"File","attributes":{"loc":23.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.html","children":[]},{"name":"mapTreeViewItemName.component.scss","type":"File","attributes":{"loc":20.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.scss","children":[]},{"name":"mapTreeViewItemName.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":12.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.ts","children":[]},{"name":"mapTreeViewItemName.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapTreeViewItemOptionButtons","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewItemOptionButtons.component.html","type":"File","attributes":{"loc":12.0,"sonar_major_violations":1.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":1.7,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.html","children":[]},{"name":"mapTreeViewItemOptionButtons.component.scss","type":"File","attributes":{"loc":33.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.scss","children":[]},{"name":"mapTreeViewItemOptionButtons.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":2.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.ts","children":[]}]},{"name":"mapTreeViewLevel","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewLevel.component.html","type":"File","attributes":{"loc":39.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.html","children":[]},{"name":"mapTreeViewLevel.component.scss","type":"File","attributes":{"loc":41.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.scss","children":[]},{"name":"mapTreeViewLevel.component.ts","type":"File","attributes":{"line_coverage":85.2,"loc":110.0,"sonar_lines_to_cover":54.0,"sonar_major_violations":6.0,"rloc":93.0,"sonar_minor_violations":0.0,"sonar_coverage":83.1,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":60.0,"sonar_classes":1.0,"sonar_code_smells":6.0,"sonar_cognitive_complexity":1.0,"comment_lines":1.0,"sonar_comment_lines_density":1.1,"sonar_complexity":9.0,"sonar_conditions_to_cover":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":24.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":8.0,"sonar_violations":6.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":6.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.ts","children":[]},{"name":"mocks.ts","type":"File","attributes":{"line_coverage":100.0,"loc":43.0,"sonar_lines_to_cover":2.0,"rloc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewLevel/mocks.ts","children":[]},{"name":"mapTreeViewLevel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapTreeViewNodeSelector","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewNode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":8.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":1.0,"sonar_comment_lines_density":6.7,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewNodeSelector/mapTreeViewNode.selector.ts","children":[]},{"name":"sortNode.ts","type":"File","attributes":{"line_coverage":96.2,"loc":49.0,"sonar_lines_to_cover":26.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":94.1,"sonar_file_complexity":13.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":0.0,"sonar_cognitive_complexity":10.0,"comment_lines":1.0,"sonar_comment_lines_density":2.7,"sonar_complexity":13.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":27.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewNodeSelector/sortNode.ts","children":[]},{"name":"sortNode.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"areaMetricValidPipe.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"isNodeLeaf.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapTreeView.level.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapTreeView.level.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"matchingFilesCounter","type":"Folder","attributes":{},"children":[{"name":"matchingFilesCounter.component.html","type":"File","attributes":{"loc":18.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/matchingFilesCounter/matchingFilesCounter.component.html","children":[]},{"name":"matchingFilesCounter.component.scss","type":"File","attributes":{"loc":36.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/matchingFilesCounter/matchingFilesCounter.component.scss","children":[]},{"name":"matchingFilesCounter.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":9.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/matchingFilesCounter/matchingFilesCounter.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"matchingFilesCounter.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":40.0,"sonar_lines_to_cover":11.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/matchingFilesCounter/selectors/matchingFilesCounter.selector.ts","children":[]},{"name":"matchingFilesCounter.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"matchingFilesCounter.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchBar","type":"Folder","attributes":{},"children":[{"name":"blacklistSearchPattern.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":75.0,"sonar_lines_to_cover":28.0,"sonar_major_violations":4.0,"rloc":68.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":12.0,"sonar_files":1.0,"functions":12.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":12.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/blacklistSearchPattern.effect.ts","children":[]},{"name":"searchBar.component.html","type":"File","attributes":{"loc":35.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/searchBar.component.html","children":[]},{"name":"searchBar.component.scss","type":"File","attributes":{"loc":70.0,"rloc":59.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/searchBar.component.scss","children":[]},{"name":"searchBar.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":23.0,"sonar_major_violations":1.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/searchBar.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"isExcludePatternDisabled.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":9.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/selectors/isExcludePatternDisabled.selector.ts","children":[]},{"name":"isFlattenPatternDisabled.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":9.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/selectors/isFlattenPatternDisabled.selector.ts","children":[]},{"name":"isSearchPatternEmpty.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":4.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/selectors/isSearchPatternEmpty.selector.ts","children":[]},{"name":"isSearchPatternEmpty.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"isPatternBlacklisted.ts","type":"File","attributes":{"line_coverage":57.1,"loc":23.0,"sonar_lines_to_cover":14.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":52.4,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":42.9,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":15.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":6.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/utils/isPatternBlacklisted.ts","children":[]},{"name":"parseBlacklistItems.ts","type":"File","attributes":{"line_coverage":93.8,"loc":27.0,"sonar_lines_to_cover":16.0,"sonar_major_violations":1.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_coverage":90.5,"sonar_critical_violations":1.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":80.0,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":16.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":1.5,"statements":17.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/utils/parseBlacklistItems.ts","children":[]},{"name":"unifyWildCard.ts","type":"File","attributes":{"line_coverage":88.9,"loc":14.0,"sonar_lines_to_cover":9.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":90.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":90.9,"sonar_classes":0.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":11.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/utils/unifyWildCard.ts","children":[]},{"name":"isPatternBlacklisted.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"parseBlacklistItems.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"blacklistSearchPattern.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"searchBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchPanel.component.html","type":"File","attributes":{"loc":19.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanel.component.html","children":[]},{"name":"searchPanel.component.scss","type":"File","attributes":{"loc":25.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanel.component.scss","children":[]},{"name":"searchPanel.component.ts","type":"File","attributes":{"line_coverage":90.9,"loc":65.0,"sonar_lines_to_cover":22.0,"sonar_major_violations":1.0,"rloc":55.0,"sonar_minor_violations":0.0,"sonar_coverage":84.6,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":8.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanel.component.ts","children":[]},{"name":"searchPanelModeSelector","type":"Folder","attributes":{},"children":[{"name":"hideBlacklistItemsIndicator.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanelModeSelector/hideBlacklistItemsIndicator.selector.ts","children":[]},{"name":"searchPanelModeSelector.component.html","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.html","children":[]},{"name":"searchPanelModeSelector.component.scss","type":"File","attributes":{"loc":23.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.scss","children":[]},{"name":"searchPanelModeSelector.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":7.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.ts","children":[]},{"name":"searchPanelModeSelector.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sortingButton","type":"Folder","attributes":{},"children":[{"name":"sortingButton.component.html","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingButton/sortingButton.component.html","children":[]},{"name":"sortingButton.component.scss","type":"File","attributes":{"loc":17.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingButton/sortingButton.component.scss","children":[]},{"name":"sortingButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingButton/sortingButton.component.ts","children":[]},{"name":"sortingButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sortingOption","type":"Folder","attributes":{},"children":[{"name":"sortingOption.component.html","type":"File","attributes":{"loc":14.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingOption/sortingOption.component.html","children":[]},{"name":"sortingOption.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingOption/sortingOption.component.scss","children":[]},{"name":"sortingOption.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingOption/sortingOption.component.ts","children":[]},{"name":"sortingOption.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"thumbTackButton","type":"Folder","attributes":{},"children":[{"name":"thumbTackButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/thumbTackButton/thumbTackButton.component.html","children":[]},{"name":"thumbTackButton.component.scss","type":"File","attributes":{"loc":21.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/thumbTackButton/thumbTackButton.component.scss","children":[]},{"name":"thumbTackButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/thumbTackButton/thumbTackButton.component.ts","children":[]},{"name":"thumbTackButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"searchPanel.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showScenariosButton","type":"Folder","attributes":{},"children":[{"name":"addCustomScenarioDialog","type":"Folder","attributes":{},"children":[{"name":"addCustomScenarioDialog.component.html","type":"File","attributes":{"loc":38.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/addCustomScenarioDialog.component.html","children":[]},{"name":"addCustomScenarioDialog.component.scss","type":"File","attributes":{"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/addCustomScenarioDialog.component.scss","children":[]},{"name":"addCustomScenarioDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":62.0,"sonar_lines_to_cover":22.0,"sonar_major_violations":1.0,"rloc":57.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/addCustomScenarioDialog.component.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"customScenarioName.validator.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":8.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/utils/customScenarioName.validator.ts","children":[]},{"name":"getInitialScenarioMetricProperties.ts","type":"File","attributes":{"line_coverage":100.0,"loc":56.0,"sonar_lines_to_cover":6.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/utils/getInitialScenarioMetricProperties.ts","children":[]},{"name":"getInitialScenarioMetricProperties.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"addCustomScenarioDialog.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"scenario.service.ts","type":"File","attributes":{"line_coverage":95.4,"loc":118.0,"sonar_lines_to_cover":65.0,"rloc":109.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":92.5,"sonar_file_complexity":17.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":80.0,"sonar_classes":1.0,"sonar_cognitive_complexity":11.0,"comment_lines":2.0,"sonar_comment_lines_density":1.8,"sonar_complexity":17.0,"sonar_conditions_to_cover":15.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":32.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenario.service.ts","children":[]},{"name":"scenarioHelper.ts","type":"File","attributes":{"line_coverage":96.6,"loc":262.0,"sonar_lines_to_cover":88.0,"sonar_minor_violations":1.0,"rloc":230.0,"sonar_major_violations":0.0,"sonar_coverage":94.9,"sonar_file_complexity":46.0,"sonar_files":1.0,"functions":15.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":90.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":29.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":46.0,"sonar_conditions_to_cover":30.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":85.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenarioHelper.ts","children":[]},{"name":"scenarios","type":"Folder","attributes":{},"children":[{"name":"scenarios.component.html","type":"File","attributes":{"loc":32.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.html","children":[]},{"name":"scenarios.component.scss","type":"File","attributes":{"loc":58.0,"rloc":48.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.scss","children":[]},{"name":"scenarios.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.ts","children":[]},{"name":"scenarios.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showScenariosButton.component.html","type":"File","attributes":{"loc":7.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.html","children":[]},{"name":"showScenariosButton.component.scss","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.scss","children":[]},{"name":"showScenariosButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":9.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.ts","children":[]},{"name":"scenario.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"scenarioHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"showScenariosButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"ribbonBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"ribbonBar.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"ribbonBar.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"screenshotButton","type":"Folder","attributes":{},"children":[{"name":"screenshotButton.component.html","type":"File","attributes":{"loc":13.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/screenshotButton/screenshotButton.component.html","children":[]},{"name":"screenshotButton.component.ts","type":"File","attributes":{"line_coverage":95.9,"loc":195.0,"sonar_lines_to_cover":97.0,"sonar_major_violations":5.0,"sonar_minor_violations":3.0,"rloc":167.0,"sonar_coverage":88.3,"sonar_file_complexity":22.0,"sonar_files":1.0,"functions":15.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":56.5,"sonar_classes":1.0,"sonar_code_smells":8.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":22.0,"sonar_conditions_to_cover":23.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":73.0,"sonar_uncovered_conditions":10.0,"sonar_uncovered_lines":4.0,"sonar_violations":8.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":8.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/screenshotButton/screenshotButton.component.ts","children":[]},{"name":"screenshotButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"slider","type":"Folder","attributes":{},"children":[{"name":"slider.component.html","type":"File","attributes":{"loc":20.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/slider/slider.component.html","children":[]},{"name":"slider.component.scss","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/slider/slider.component.scss","children":[]},{"name":"slider.component.ts","type":"File","attributes":{"line_coverage":84.6,"loc":35.0,"sonar_lines_to_cover":13.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":82.4,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/slider/slider.component.ts","children":[]},{"name":"slider.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"toolBar","type":"Folder","attributes":{},"children":[{"name":"globalConfigurationButton","type":"Folder","attributes":{},"children":[{"name":"globalConfigurationButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.html","children":[]},{"name":"globalConfigurationButton.component.scss","type":"File","attributes":{"loc":18.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.scss","children":[]},{"name":"globalConfigurationButton.component.ts","type":"File","attributes":{"line_coverage":87.5,"loc":23.0,"sonar_lines_to_cover":8.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_coverage":87.5,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.ts","children":[]},{"name":"globalConfigurationDialog","type":"Folder","attributes":{},"children":[{"name":"displayQualitySelection","type":"Folder","attributes":{},"children":[{"name":"displayQualitySelection.component.html","type":"File","attributes":{"loc":11.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.html","children":[]},{"name":"displayQualitySelection.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":14.0,"sonar_major_violations":1.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.ts","children":[]},{"name":"displayQualitySelection.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"globalConfigurationDialog.component.html","type":"File","attributes":{"loc":61.0,"rloc":56.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.html","children":[]},{"name":"globalConfigurationDialog.component.scss","type":"File","attributes":{"loc":21.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.scss","children":[]},{"name":"globalConfigurationDialog.component.ts","type":"File","attributes":{"line_coverage":66.7,"loc":72.0,"sonar_lines_to_cover":33.0,"rloc":64.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":66.7,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_lines":11.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.ts","children":[]},{"name":"mapLayoutSelection","type":"Folder","attributes":{},"children":[{"name":"mapLayoutSelection.component.html","type":"File","attributes":{"loc":22.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.html","children":[]},{"name":"mapLayoutSelection.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":21.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.ts","children":[]},{"name":"mapLayoutSelection.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]}]},{"name":"hoveredNodePathPanel","type":"Folder","attributes":{},"children":[{"name":"hoveredNodePathPanel.component.html","type":"File","attributes":{"loc":14.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.html","children":[]},{"name":"hoveredNodePathPanel.component.scss","type":"File","attributes":{"loc":19.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.scss","children":[]},{"name":"hoveredNodePathPanel.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":7.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.ts","children":[]},{"name":"hoveredNodePathPanelData.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":5.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanelData.selector.ts","children":[]},{"name":"hoveredNodePathPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"hoveredNodePathPanelData.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"loadingMapProgressSpinner","type":"Folder","attributes":{},"children":[{"name":"loadingMapProgressSpinner.component.html","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.html","children":[]},{"name":"loadingMapProgressSpinner.component.scss","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.scss","children":[]},{"name":"loadingMapProgressSpinner.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":7.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.ts","children":[]}]},{"name":"presentationModeButton","type":"Folder","attributes":{},"children":[{"name":"presentationModeButton.component.html","type":"File","attributes":{"loc":11.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.html","children":[]},{"name":"presentationModeButton.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.scss","children":[]},{"name":"presentationModeButton.component.ts","type":"File","attributes":{"line_coverage":71.4,"loc":31.0,"sonar_lines_to_cover":14.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":71.4,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":4.0,"sonar_uncovered_lines":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.ts","children":[]},{"name":"presentationModeButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"toolBar.component.html","type":"File","attributes":{"loc":18.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/toolBar.component.html","children":[]},{"name":"toolBar.component.scss","type":"File","attributes":{"loc":19.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/toolBar.component.scss","children":[]},{"name":"toolBar.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":41.0,"sonar_lines_to_cover":17.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/toolBar.component.ts","children":[]},{"name":"uploadFilesButton","type":"Folder","attributes":{},"children":[{"name":"uploadFiles.service.ts","type":"File","attributes":{"line_coverage":92.1,"loc":73.0,"sonar_lines_to_cover":38.0,"rloc":61.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":90.2,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":66.7,"sonar_classes":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":27.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/uploadFilesButton/uploadFiles.service.ts","children":[]},{"name":"uploadFilesButton.component.html","type":"File","attributes":{"loc":2.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/uploadFilesButton/uploadFilesButton.component.html","children":[]},{"name":"uploadFilesButton.component.ts","type":"File","attributes":{"line_coverage":83.3,"loc":18.0,"sonar_lines_to_cover":6.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":83.3,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/uploadFilesButton/uploadFilesButton.component.ts","children":[]},{"name":"uploadFiles.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"uploadFilesButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"uploadFilesButton.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"uploadFilesButton.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"toolBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"viewCube","type":"Folder","attributes":{},"children":[{"name":"centerMapButton","type":"Folder","attributes":{},"children":[{"name":"centerMapButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.html","children":[]},{"name":"centerMapButton.component.scss","type":"File","attributes":{"loc":26.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.scss","children":[]},{"name":"centerMapButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":5.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.ts","children":[]},{"name":"centerMapButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"viewCube.component.html","type":"File","attributes":{"loc":3.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.component.html","children":[]},{"name":"viewCube.component.scss","type":"File","attributes":{"loc":12.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.component.scss","children":[]},{"name":"viewCube.component.ts","type":"File","attributes":{"line_coverage":60.4,"loc":218.0,"sonar_lines_to_cover":111.0,"sonar_major_violations":1.0,"rloc":187.0,"sonar_minor_violations":0.0,"sonar_coverage":65.6,"sonar_file_complexity":31.0,"sonar_files":1.0,"functions":14.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":3.0,"sonar_comment_lines_density":1.6,"sonar_complexity":31.0,"sonar_conditions_to_cover":17.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":91.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":44.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.component.ts","children":[]},{"name":"viewCube.materials.ts","type":"File","attributes":{"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":4.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.materials.ts","children":[]},{"name":"viewCube.meshGenerator.ts","type":"File","attributes":{"line_coverage":100.0,"loc":218.0,"sonar_lines_to_cover":89.0,"rloc":187.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":86.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.meshGenerator.ts","children":[]},{"name":"viewCube.mouseEvents.service.ts","type":"File","attributes":{"line_coverage":91.4,"loc":163.0,"sonar_lines_to_cover":81.0,"rloc":140.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":89.0,"sonar_file_complexity":39.0,"sonar_files":1.0,"functions":25.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":78.9,"sonar_classes":1.0,"sonar_cognitive_complexity":18.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":39.0,"sonar_conditions_to_cover":19.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":69.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":7.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.mouseEvents.service.ts","children":[]},{"name":"zoomSlider","type":"Folder","attributes":{},"children":[{"name":"zoomSlider.component.html","type":"File","attributes":{"loc":15.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/zoomSlider/zoomSlider.component.html","children":[]},{"name":"zoomSlider.component.scss","type":"File","attributes":{"loc":56.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/zoomSlider/zoomSlider.component.scss","children":[]},{"name":"zoomSlider.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":50.0,"sonar_lines_to_cover":15.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":3.0,"sonar_comment_lines_density":7.5,"sonar_complexity":6.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":10.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/zoomSlider/zoomSlider.component.ts","children":[]},{"name":"zoomSlider.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"viewCube.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"viewCube.meshGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"viewCube.mouseEvents.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"EventEmitter.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":9.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":94.4,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":88.9,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":1.0,"sonar_comment_lines_density":5.3,"sonar_complexity":4.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/EventEmitter.ts","children":[]},{"name":"aggregationGenerator.ts","type":"File","attributes":{"line_coverage":100.0,"loc":117.0,"sonar_lines_to_cover":48.0,"rloc":102.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":21.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":19.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":21.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":43.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/aggregationGenerator.ts","children":[]},{"name":"algorithm","type":"Folder","attributes":{},"children":[{"name":"streetLayout","type":"Folder","attributes":{},"children":[{"name":"boundingBox.ts","type":"File","attributes":{"line_coverage":91.7,"loc":30.0,"sonar_lines_to_cover":12.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":91.7,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/boundingBox.ts","children":[]},{"name":"horizontalStreet.ts","type":"File","attributes":{"line_coverage":87.1,"loc":251.0,"sonar_lines_to_cover":93.0,"rloc":162.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":72.3,"sonar_file_complexity":42.0,"sonar_files":1.0,"functions":17.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":35.1,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":30.0,"comment_lines":57.0,"sonar_comment_lines_density":26.0,"sonar_complexity":42.0,"sonar_conditions_to_cover":37.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":86.0,"sonar_uncovered_conditions":24.0,"sonar_uncovered_lines":12.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/horizontalStreet.ts","children":[]},{"name":"house.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":9.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/house.ts","children":[]},{"name":"rectangle.ts","type":"File","attributes":{"line_coverage":100.0,"loc":33.0,"sonar_lines_to_cover":10.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":5.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":1.0,"sonar_comment_lines_density":3.8,"sonar_complexity":6.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/rectangle.ts","children":[]},{"name":"squarifiedTreeMap.ts","type":"File","attributes":{"line_coverage":90.9,"loc":113.0,"sonar_lines_to_cover":55.0,"rloc":95.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":86.4,"sonar_file_complexity":20.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":63.6,"sonar_classes":1.0,"sonar_cognitive_complexity":14.0,"comment_lines":1.0,"sonar_comment_lines_density":1.0,"sonar_complexity":20.0,"sonar_conditions_to_cover":11.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":49.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/squarifiedTreeMap.ts","children":[]},{"name":"street.ts","type":"File","attributes":{"line_coverage":100.0,"loc":43.0,"sonar_lines_to_cover":17.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/street.ts","children":[]},{"name":"streetLayoutGenerator.ts","type":"File","attributes":{"line_coverage":98.1,"loc":112.0,"sonar_lines_to_cover":53.0,"sonar_major_violations":1.0,"rloc":97.0,"sonar_minor_violations":0.0,"sonar_coverage":93.7,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":70.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":13.0,"comment_lines":3.0,"sonar_comment_lines_density":3.0,"sonar_complexity":16.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":44.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/streetLayoutGenerator.ts","children":[]},{"name":"streetViewHelper.ts","type":"File","attributes":{"line_coverage":87.5,"loc":86.0,"sonar_lines_to_cover":32.0,"rloc":74.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":86.0,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":3.0,"sonar_info_violations":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":83.3,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":13.0,"comment_lines":4.0,"sonar_comment_lines_density":5.1,"sonar_complexity":14.0,"sonar_conditions_to_cover":18.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":28.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":4.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/streetViewHelper.ts","children":[]},{"name":"strip","type":"Folder","attributes":{},"children":[{"name":"horizontalStrip.ts","type":"File","attributes":{"line_coverage":72.7,"loc":63.0,"sonar_lines_to_cover":33.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":70.7,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":62.5,"sonar_classes":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":25.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":9.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/strip/horizontalStrip.ts","children":[]},{"name":"strip.ts","type":"File","attributes":{"line_coverage":95.7,"loc":67.0,"sonar_lines_to_cover":23.0,"rloc":53.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":92.0,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":12.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":1.0,"sonar_comment_lines_density":1.9,"sonar_complexity":14.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/strip/strip.ts","children":[]},{"name":"verticalStrip.ts","type":"File","attributes":{"line_coverage":97.0,"loc":63.0,"sonar_lines_to_cover":33.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":90.2,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":62.5,"sonar_classes":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":25.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/strip/verticalStrip.ts","children":[]}]},{"name":"treeMap.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":9.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/treeMap.ts","children":[]},{"name":"verticalStreet.ts","type":"File","attributes":{"line_coverage":87.3,"loc":207.0,"sonar_lines_to_cover":102.0,"rloc":173.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":73.0,"sonar_file_complexity":46.0,"sonar_files":1.0,"functions":19.0,"sonar_info_violations":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":35.9,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":32.0,"comment_lines":3.0,"sonar_comment_lines_density":1.7,"sonar_complexity":46.0,"sonar_conditions_to_cover":39.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":94.0,"sonar_uncovered_conditions":25.0,"sonar_uncovered_lines":13.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/verticalStreet.ts","children":[]},{"name":"horizontalStreet.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"house.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"rectangle.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"streetLayoutGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"streetViewHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"treeMapLayout","type":"Folder","attributes":{},"children":[{"name":"treeMapGenerator.ts","type":"File","attributes":{"line_coverage":98.1,"loc":289.0,"sonar_lines_to_cover":106.0,"sonar_major_violations":1.0,"rloc":209.0,"sonar_minor_violations":0.0,"sonar_coverage":95.8,"sonar_file_complexity":44.0,"sonar_files":1.0,"functions":14.0,"sonar_info_violations":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":91.7,"sonar_classes":0.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":48.0,"comment_lines":41.0,"sonar_comment_lines_density":16.4,"sonar_complexity":44.0,"sonar_conditions_to_cover":60.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":106.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":2.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/treeMapLayout/treeMapGenerator.ts","children":[]},{"name":"treeMapHelper.ts","type":"File","attributes":{"line_coverage":98.2,"loc":278.0,"sonar_lines_to_cover":114.0,"rloc":236.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":96.4,"sonar_file_complexity":60.0,"sonar_files":1.0,"functions":16.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":93.8,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":37.0,"comment_lines":1.0,"sonar_comment_lines_density":0.4,"sonar_complexity":60.0,"sonar_conditions_to_cover":81.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":101.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/treeMapLayout/treeMapHelper.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"treeMapGenerator.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"treeMapHelper.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"treeMapGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"treeMapHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"arrayHelper.ts","type":"File","attributes":{"line_coverage":96.4,"loc":55.0,"sonar_lines_to_cover":28.0,"rloc":43.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":96.9,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":16.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":22.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/arrayHelper.ts","children":[]},{"name":"clipboard","type":"Folder","attributes":{},"children":[{"name":"clipboardWriter.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":5.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/clipboard/clipboardWriter.ts","children":[]},{"name":"clipBoardWriter.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"clone.ts","type":"File","attributes":{"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":3.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/clone.ts","children":[]},{"name":"codeMapHelper.ts","type":"File","attributes":{"line_coverage":91.9,"loc":132.0,"sonar_lines_to_cover":74.0,"sonar_major_violations":2.0,"rloc":112.0,"sonar_minor_violations":0.0,"sonar_coverage":82.9,"sonar_file_complexity":42.0,"sonar_files":1.0,"functions":14.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":67.4,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":34.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":42.0,"sonar_conditions_to_cover":43.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":59.0,"sonar_uncovered_conditions":14.0,"sonar_uncovered_lines":6.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/codeMapHelper.ts","children":[]},{"name":"color","type":"Folder","attributes":{},"children":[{"name":"colorConverter.ts","type":"File","attributes":{"line_coverage":100.0,"loc":142.0,"sonar_lines_to_cover":68.0,"rloc":114.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":24.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":5.0,"comment_lines":3.0,"sonar_comment_lines_density":2.6,"sonar_complexity":24.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":61.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/color/colorConverter.ts","children":[]},{"name":"getReadableColorForBackground.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":6.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":1.0,"sonar_comment_lines_density":12.5,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/color/getReadableColorForBackground.ts","children":[]},{"name":"gradientCalculator.ts","type":"File","attributes":{"line_coverage":94.0,"loc":87.0,"sonar_lines_to_cover":50.0,"rloc":70.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":87.5,"sonar_file_complexity":20.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":72.7,"sonar_classes":0.0,"sonar_cognitive_complexity":14.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":20.0,"sonar_conditions_to_cover":22.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":48.0,"sonar_uncovered_conditions":6.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/color/gradientCalculator.ts","children":[]},{"name":"hsl.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":10.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/color/hsl.ts","children":[]},{"name":"colorConverter.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getReadableColorForBackground.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"hsl.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigBuilder.ts","type":"File","attributes":{"line_coverage":100.0,"loc":142.0,"sonar_lines_to_cover":23.0,"rloc":120.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":12.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":9.0,"sonar_comment_lines_density":7.0,"sonar_complexity":12.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/customConfigBuilder.ts","children":[]},{"name":"customConfigHelper.ts","type":"File","attributes":{"line_coverage":92.0,"loc":210.0,"sonar_lines_to_cover":75.0,"rloc":172.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":90.9,"sonar_file_complexity":38.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":1.0,"sonar_cognitive_complexity":23.0,"comment_lines":2.0,"sonar_comment_lines_density":1.1,"sonar_complexity":38.0,"sonar_conditions_to_cover":24.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":69.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":6.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/customConfigHelper.ts","children":[]},{"name":"dataMocks.ts","type":"File","attributes":{"loc":2919.0,"rloc":2822.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":6.0,"comment_lines":1.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":97.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/dataMocks.ts","children":[]},{"name":"debounce.ts","type":"File","attributes":{"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":6.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/debounce.ts","children":[]},{"name":"deltaGenerator.ts","type":"File","attributes":{"line_coverage":100.0,"loc":163.0,"sonar_lines_to_cover":69.0,"rloc":134.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_critical_violations":1.0,"sonar_file_complexity":29.0,"sonar_files":1.0,"functions":9.0,"sonar_info_violations":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":32.0,"comment_lines":7.0,"sonar_comment_lines_density":5.0,"sonar_complexity":29.0,"sonar_conditions_to_cover":28.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":68.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/deltaGenerator.ts","children":[]},{"name":"fileDownloader.ts","type":"File","attributes":{"line_coverage":80.0,"loc":125.0,"sonar_lines_to_cover":50.0,"sonar_minor_violations":1.0,"rloc":111.0,"sonar_major_violations":0.0,"sonar_coverage":78.8,"sonar_file_complexity":23.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":14.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":23.0,"sonar_conditions_to_cover":16.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":42.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":10.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/fileDownloader.ts","children":[]},{"name":"fileHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":94.0,"sonar_lines_to_cover":40.0,"rloc":79.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":26.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":14.0,"comment_lines":1.0,"sonar_comment_lines_density":1.3,"sonar_complexity":26.0,"sonar_conditions_to_cover":34.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":29.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/fileHelper.ts","children":[]},{"name":"fileNameHelper.ts","type":"File","attributes":{"line_coverage":94.4,"loc":41.0,"sonar_lines_to_cover":18.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":95.5,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":15.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/fileNameHelper.ts","children":[]},{"name":"fileValidator.ts","type":"File","attributes":{"line_coverage":99.1,"loc":247.0,"sonar_lines_to_cover":109.0,"sonar_minor_violations":1.0,"rloc":214.0,"sonar_major_violations":0.0,"sonar_coverage":98.2,"sonar_critical_violations":1.0,"sonar_file_complexity":65.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":96.6,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":48.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":65.0,"sonar_conditions_to_cover":58.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":103.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots":1.0,"sonar_security_hotspots_reviewed":0.0,"sonar_security_hotspots_to_review_status":1.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/fileValidator.ts","children":[]},{"name":"gameObjectsParser","type":"Folder","attributes":{},"children":[{"name":"gameObjectsImporter.ts","type":"File","attributes":{"line_coverage":100.0,"loc":202.0,"sonar_lines_to_cover":70.0,"rloc":167.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":98.8,"sonar_file_complexity":30.0,"sonar_files":1.0,"functions":18.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":93.8,"sonar_classes":0.0,"sonar_cognitive_complexity":18.0,"comment_lines":3.0,"sonar_comment_lines_density":1.8,"sonar_complexity":30.0,"sonar_conditions_to_cover":16.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":69.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/gameObjectsParser/gameObjectsImporter.ts","children":[]},{"name":"gameObjectsMocks.ts","type":"File","attributes":{"line_coverage":100.0,"loc":76.0,"sonar_lines_to_cover":1.0,"rloc":75.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/gameObjectsParser/gameObjectsMocks.ts","children":[]},{"name":"gameObjectsSchema.json","type":"File","attributes":{"loc":272.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/gameObjectsParser/gameObjectsSchema.json","children":[]},{"name":"gameObjectsValidator.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/gameObjectsParser/gameObjectsValidator.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"gameObjectsImporter.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"gameObjectsImporter.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"gameObjectsValidator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"generatedSchema.json","type":"File","attributes":{"loc":266.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/generatedSchema.json","children":[]},{"name":"indexedDB","type":"Folder","attributes":{},"children":[{"name":"indexedDBWriter.ts","type":"File","attributes":{"line_coverage":100.0,"loc":42.0,"sonar_lines_to_cover":23.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/indexedDB/indexedDBWriter.ts","children":[]},{"name":"indexedDBWriter.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"loadFilesValidationToErrorDialog.ts","type":"File","attributes":{"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":15.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":13.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":13.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/loadFilesValidationToErrorDialog.ts","children":[]},{"name":"metric","type":"Folder","attributes":{},"children":[{"name":"metricTitles.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":1.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/metric/metricTitles.ts","children":[]}]},{"name":"mockHelper.ts","type":"File","attributes":{"line_coverage":0.0,"loc":9.0,"sonar_lines_to_cover":5.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":3.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/mockHelper.ts","children":[]},{"name":"nodeDecorator.ts","type":"File","attributes":{"line_coverage":93.6,"loc":359.0,"sonar_lines_to_cover":156.0,"rloc":302.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":92.9,"sonar_critical_violations":2.0,"sonar_file_complexity":85.0,"sonar_files":1.0,"functions":15.0,"sonar_info_violations":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":91.9,"sonar_classes":0.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":110.0,"comment_lines":13.0,"sonar_comment_lines_density":4.1,"sonar_complexity":85.0,"sonar_conditions_to_cover":99.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":161.0,"sonar_uncovered_conditions":8.0,"sonar_uncovered_lines":10.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/nodeDecorator.ts","children":[]},{"name":"nodePathHelper.ts","type":"File","attributes":{"line_coverage":76.5,"loc":31.0,"sonar_lines_to_cover":17.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":78.3,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":4.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":83.3,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":1.0,"sonar_comment_lines_density":4.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":12.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":4.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/nodePathHelper.ts","children":[]},{"name":"parseNumberInput.ts","type":"File","attributes":{"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":7.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/parseNumberInput.ts","children":[]},{"name":"pipes","type":"Folder","attributes":{},"children":[{"name":"attributeDescriptorTooltip.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":10.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":15.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/pipes/attributeDescriptorTooltip.pipe.ts","children":[]},{"name":"removeExtension.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":14.0,"sonar_lines_to_cover":4.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/pipes/removeExtension.pipe.ts","children":[]},{"name":"truncateText.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":4.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/pipes/truncateText.pipe.ts","children":[]},{"name":"attributeDescriptorTooltip.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"removeExtension.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"truncateText.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"settingsHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":9.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":96.6,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":95.0,"sonar_classes":0.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":20.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/settingsHelper.ts","children":[]},{"name":"uploadFiles","type":"Folder","attributes":{},"children":[{"name":"createCCFileInput.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":7.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":7.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/uploadFiles/createCCFileInput.ts","children":[]},{"name":"readFiles.ts","type":"File","attributes":{"line_coverage":95.5,"loc":38.0,"sonar_lines_to_cover":22.0,"sonar_minor_violations":1.0,"rloc":31.0,"sonar_major_violations":0.0,"sonar_coverage":89.7,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":71.4,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":8.0,"comment_lines":1.0,"sonar_comment_lines_density":3.1,"sonar_complexity":10.0,"sonar_conditions_to_cover":7.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":20.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/uploadFiles/readFiles.ts","children":[]},{"name":"createCCFileInput.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"loadFilesValidationToErrorDialog.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"readFiles.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"aggregationGenerator.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"deltaGenerator.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileHelper.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"aggregationGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"arrayHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"clone.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMapHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfigBuilder.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfigHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"debounce.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"deltaGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileDownloader.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileNameHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileValidator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeDecorator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"parseNumberInput.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"settingsHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"testUtils","type":"Folder","attributes":{},"link":"","children":[{"name":"markdown-transformer.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"store.utils.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"wait.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"codeCharta.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeCharta.model.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"e2e","type":"Folder","attributes":{},"link":"","children":[{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"logo.e2e.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"logo.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"logo.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"url.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"index.d.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"streetLayoutTodo.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"index.html","type":"File","attributes":{"loc":19.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/index.html","children":[]},{"name":"main.ts","type":"File","attributes":{"line_coverage":0.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":1.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/main.ts","children":[]},{"name":"material","type":"Folder","attributes":{},"children":[{"name":"_theme.scss","type":"File","attributes":{"loc":25.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":1.0,"sonar_comment_lines_density":5.3,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/_theme.scss","children":[]},{"name":"_variables.scss","type":"File","attributes":{"loc":54.0,"rloc":50.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/_variables.scss","children":[]},{"name":"matAttributeTypeSelector.scss","type":"File","attributes":{"loc":26.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matAttributeTypeSelector.scss","children":[]},{"name":"matBlacklistPanel.scss","type":"File","attributes":{"loc":14.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matBlacklistPanel.scss","children":[]},{"name":"matChangeLogDialog.scss","type":"File","attributes":{"loc":37.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matChangeLogDialog.scss","children":[]},{"name":"matColorPicker.scss","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matColorPicker.scss","children":[]},{"name":"matConfirmResetMapDialog.scss","type":"File","attributes":{"loc":29.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matConfirmResetMapDialog.scss","children":[]},{"name":"matConfirmationDialog.scss","type":"File","attributes":{"loc":20.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matConfirmationDialog.scss","children":[]},{"name":"matCustomConfigItemGroup.scss","type":"File","attributes":{"loc":45.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matCustomConfigItemGroup.scss","children":[]},{"name":"matCustomConfigList.scss","type":"File","attributes":{"loc":53.0,"rloc":43.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matCustomConfigList.scss","children":[]},{"name":"matDialog.scss","type":"File","attributes":{"loc":39.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matDialog.scss","children":[]},{"name":"matExport3DMapDialog.scss","type":"File","attributes":{"loc":36.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matExport3DMapDialog.scss","children":[]},{"name":"matIncompatibleMapsDialog.scss","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matIncompatibleMapsDialog.scss","children":[]},{"name":"matMenu.scss","type":"File","attributes":{"loc":49.0,"rloc":39.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matMenu.scss","children":[]},{"name":"matSelect.scss","type":"File","attributes":{"loc":17.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSelect.scss","children":[]},{"name":"matSelectFileSelect.scss","type":"File","attributes":{"loc":31.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSelectFileSelect.scss","children":[]},{"name":"matSelectMetricChooser.scss","type":"File","attributes":{"loc":63.0,"rloc":51.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":1.0,"sonar_comment_lines_density":1.9,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSelectMetricChooser.scss","children":[]},{"name":"matSlideTogglePresentationMode.scss","type":"File","attributes":{"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSlideTogglePresentationMode.scss","children":[]},{"name":"matSlider.scss","type":"File","attributes":{"loc":79.0,"rloc":61.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSlider.scss","children":[]},{"name":"matSuspiciousMetricPanel.scss","type":"File","attributes":{"loc":85.0,"rloc":69.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSuspiciousMetricPanel.scss","children":[]},{"name":"material.scss","type":"File","attributes":{"loc":38.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/material.scss","children":[]}]},{"name":"mixins.scss","type":"File","attributes":{"loc":9.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/mixins.scss","children":[]},{"name":"polyfills.ts","type":"File","attributes":{"line_coverage":0.0,"loc":29.0,"sonar_lines_to_cover":1.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":1.0,"sonar_comment_lines_density":50.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"statements":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/polyfills.ts","children":[]},{"name":"app.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"puppeteer.helper.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":".gitignore","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":".npmrc","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"CHANGELOG.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"Dockerfile","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"LICENSE.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"MANUAL_TESTING.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"NEW_TO_VISUALIZATION.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"README.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"angular.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"cli.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"conf","type":"Folder","attributes":{},"link":"","children":[{"name":"jestE2E-preset.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"jestE2E.config.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"jestUnit.config.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"setupJestUnit.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"webpack.config.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"electron","type":"Folder","attributes":{},"link":"","children":[{"name":"main.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"jest-puppeteer.config.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mocks","type":"Folder","attributes":{},"link":"","children":[{"name":"changelogMock.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"dateMock.helper.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileTransformer.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"localStorageMock.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"package-lock.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"package.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"script","type":"Folder","attributes":{},"link":"","children":[{"name":"appBuild.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appConfig.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appDownload.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appMain.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appUtils.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appZip.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"docker-publish.sh","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sonar-project.properties","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"tsconfig.app.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"tsconfig.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"tsconfig.spec.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}],"apiVersion":"1.3","edges":[],"attributeTypes":{"nodes":{"number_of_authors":"relative","number_of_commits":"absolute","range_of_weeks_with_commits":"relative","weeks_with_commits":"relative","highly_coupled_files":"absolute","median_coupled_files":"relative","number_of_renames":"absolute","age_in_weeks":"relative"},"edges":{"temporal_coupling":"absolute"}},"attributeDescriptors":{"sonar_accepted_issues":{"title":"Accepted Issues","description":"Accepted issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_blocker_violations":{"title":"Blocker Violations","description":"Total count of issues of the severity blocker","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_bugs":{"title":"Number of Bugs","description":"Number of bugs","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_class_complexity":{"title":"Complexity per class","description":"Average cyclomatic complexity of classes","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_classes":{"title":"Number of Classes","description":"Number of classes (including nested classes, interfaces, enums and annotations","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_code_smells":{"title":"Code Smells","description":"Total count of code smell issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_cognitive_complexity":{"title":"Cognitive Complexity","description":"A sonar excluside metric to measure how hard is it to understand the control flow of code","hintLowValue":"","hintHighValue":"","link":"https://www.sonarsource.com/resources/cognitive-complexity/","direction":-1},"comment_lines":{"title":"Comment Lines","description":"Number of lines containing either a comment or commented-out code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_comment_lines_density":{"title":"Comment line Density","description":"Density of comment lines in relation to total lines of code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_complexity":{"title":"Cyclomatic Complexity","description":"Cyclomatic complexity based on the number of paths through the code (similar but not equal to McCabe complexity)","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_complexity_in_classes":{"title":"Class Complexity","description":"Cyclomatic complexity of classes","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_complexity_in_functions":{"title":"Function Complexity","description":"Cyclomatic complexity of functions","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_conditions_to_cover":{"title":"Conditions to Cover","description":"Number of conditions which could be covered by unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_confirmed_issues":{"title":"Confirmed Issues","description":"Total count of issues in the confirmed state","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_critical_violations":{"title":"Critical Violations","description":"Total count of issues of the severity critical","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_duplicated_blocks":{"title":"Duplicated Blocks","description":"Number of duplicated blocks of lines","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_duplicated_files":{"title":"Duplicated Files","description":"Number of files involved in duplications","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_duplicated_lines":{"title":"Duplicated Lines","description":"Number of lines involved in duplications","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_duplicated_lines_density":{"title":"Duplicated Line Density","description":"Density of duplicated lines","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_false_positive_issues":{"title":"False Positive Issues","description":"Total count of issues marked false positive","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_file_complexity":{"title":"Complexity per file","description":"Average cyclomatic complexity of files","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_files":{"title":"Number of Files","description":"Number of files","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"average_function_mcc":{"title":"Complexity per function","description":"Average cyclomatic complexity of functions","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"functions":{"title":"Number of Functions","description":"Number of functions","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_generated_lines":{"title":"Generated Lines","description":"Number of generated lines of code (includes comments and empty lines)","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_generated_ncloc":{"title":"Generated Real Lines of Code","description":"Number of generated non-empty lines of code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_high_impact_accepted_issues":{"title":"High Impact Accepted Issues","description":"Accepted issues with high impact","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_info_violations":{"title":"Info Violations","description":"Total count of issues of the severity info","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"loc":{"title":"Number of Lines","description":"Number of code lines (number of carriage returns)","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_lines_to_cover":{"title":"Lines to Cover","description":"Number of lines of code which could be covered by unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_major_violations":{"title":"Major Violations","description":"Total count of issues of the severity major","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_minor_violations":{"title":"Minor Violations","description":"Total count of issues of the severity minor","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"rloc":{"title":"Real Lines of Code","description":"Number of code lines that contain at least one character which is neither a whitespace nor a tabulation nor part of a comment","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_accepted_issues":{"title":"New Accepted Issues","description":"New accepted issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_blocker_violations":{"title":"Blocker Violations on new code","description":"Number of issues of the severity blocker raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_bugs":{"title":"Number of New Bugs","description":"Number of new bug issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_code_smells":{"title":"Code Smells on new code","description":"Total count of code smell issues raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_conditions_to_cover":{"title":"Conditions to Cover on new code","description":"Number of new/updated conditions which could be covered by unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_critical_violations":{"title":"Critical Violations on new code","description":"Number of issues of the severity critical raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_development_cost":{"title":"Development Cost on new code","description":"Development cost of new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_duplicated_blocks":{"title":"Duplicated Blocks on new code","description":"Number of duplicated blocks of lines in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_duplicated_lines":{"title":"Duplicated Lines on new code","description":"Number of lines involved in duplications in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_duplicated_lines_density":{"title":"Duplicated Lines Density on new code","description":"Density of duplicated lines in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_info_violations":{"title":"Info Violations on new code","description":"Number of issues of the severity info raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_lines":{"title":"Number of New Lines","description":"Number of new/updated lines of code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_lines_to_cover":{"title":"Lines to Cover on new code","description":"Number of new/updated lines of code which could be covered by unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_major_violations":{"title":"Major Violations on new code","description":"Number of issues of the severity major raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_minor_violations":{"title":"Minor Violations on new code","description":"Number of issues of the severity minor raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_security_hotspots":{"title":"Security Hotspots on new code","description":"Number of new security hotspots in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_security_hotspots_reviewed_status":{"title":"Security Hotspots Reviewed Status on new code","description":"Total number of reviewed security hotspots in new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_security_hotspots_to_review_status":{"title":"Security Hotspots to Review Status on new code","description":"Number of security hotspots to review in new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_sqale_debt_ratio":{"title":"Technical Debt Ratio on New Code","description":"Technical Debt Ratio of new/changed code.","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_uncovered_conditions":{"title":"Uncovered Conditions on new code","description":"Total number of uncovered conditions in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_uncovered_lines":{"title":"Uncovered Lines on new code","description":"Total number of uncovered lines in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_violations":{"title":"Issues on new code","description":"Number of issues raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_vulnerabilities":{"title":"Vulnerabilities on new code","description":"Number of new vulnerability issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_open_issues":{"title":"Number of Open Issues","description":"Total count of issues in the open state","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_projects":{"title":"Number of Projects","description":"Total number of projects","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"public_api":{"title":"Public API","description":"Public api available","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_public_undocumented_api":{"title":"Public Undocumented API","description":"Public undocumented classes, functions and variables available","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_reopened_issues":{"title":"Number of Reopened Issues","description":"Total count of issues in the reopened state","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_security_hotspots":{"title":"Security Hotspots","description":"Number of security hotspots","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_security_hotspots_reviewed_status":{"title":"Security Hotspots Reviewed Status","description":"Total number of reviewed security hotspots","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_security_hotspots_to_review_status":{"title":"Security Hotspots to Review Status","description":"Number of security hotspots to review","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_skipped_tests":{"title":"Number of skipped Tests","description":"Number of skipped unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_sqale_debt_ratio":{"title":"Technical Debt Ratio","description":"Ratio of the actual technical debt compared to the estimated cost to develop the whole source code from scratch","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"statements":{"title":"Number of Statements","description":"Number of statements","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_test_errors":{"title":"Number of Test Errors","description":"Number of unit tests that have thrown errors","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_test_failures":{"title":"Number of Test Failures","description":"Number of unit test failures","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_uncovered_conditions":{"title":"Uncovered Conditions","description":"Total number of uncovered conditions","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_uncovered_lines":{"title":"Uncovered Lines","description":"Total number of uncovered lines","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_violations":{"title":"Number of Violations","description":"Total count of issues in all states","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_vulnerabilities":{"title":"Number of Vulnerabilities","description":"Number of vulnerability issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_wont_fix_issues":{"title":"Number of Won\u0027t Fix Issues","description":"Total count of issues in the wont fix state","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"branch_coverage":{"title":"Branch Coverage","description":"Density of fully covered boolean conditions in flow control structures","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_coverage":{"title":"Test Coverage","description":"Mix of branch and line coverage","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"line_coverage":{"title":"Line Coverage","description":"Density of fully covered lines of code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_new_branch_coverage":{"title":"Branch Coverage on new code (%)","description":"Density of fully covered boolean conditions in flow control structures in new or updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_new_coverage":{"title":"Coverage on new code","description":"Coverage of new/changed code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_new_line_coverage":{"title":"Line Coverage on new code","description":"Density of fully covered lines of new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_public_documented_api_density":{"title":"Public Documented API Density (%)","description":"Public documented classes and functions balanced by rloc","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_pull_request_fixed_issues":{"title":"Pull request fixed issues","description":"Count of issues that would be fixed by the pull request","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_security_hotspots_reviewed":{"title":"Security Hotspots Reviewed","description":"Percentage of reviewed (fixed or safe) security hotspots","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_test_success_density":{"title":"Test Success Density","description":"Ratio between successful tests and all tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_tests":{"title":"Number of Tests","description":"Number of unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"age_in_weeks":{"title":"Age in Weeks","description":"File age in weeks","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"number_of_authors":{"title":"Number of Authors","description":"Number of authors","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"number_of_commits":{"title":"Number of Commits","description":"Number of commits","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"number_of_renames":{"title":"Number of Renames","description":"Number of file renames","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"range_of_weeks_with_commits":{"title":"Week Range of Commits","description":"Average number of weeks between commits","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"weeks_with_commits":{"title":"Weeks with Commits","description":"Number of weeks in which commits occurred","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"highly_coupled_files":{"title":"Highly Coupled Files","description":"Number of highly coupled files (\u003e\u003d35% of times modified the same time) with this file","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"median_coupled_files":{"title":"Median Coupled Files","description":"Median of number of other files that where committed with this file","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1}},"blacklist":[]},"checksum":"afc5e0d629fbdcceb5a7166049d9611b"} \ No newline at end of file +{"data":{"projectName":"","nodes":[{"name":"root","type":"Folder","attributes":{},"children":[{"name":"app","type":"Folder","attributes":{},"children":[{"name":"app.config.ts","type":"File","attributes":{"sonar_coverage":0.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":0.0,"loc":61.0,"sonar_lines_to_cover":26.0,"rloc":56.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":26.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/app.config.ts","children":[]},{"name":"app.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":49.0,"rloc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/app.scss","children":[]},{"name":"codeCharta","type":"Folder","attributes":{},"children":[{"name":"assets","type":"Folder","attributes":{},"children":[{"name":"gameObjectsFile.json","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":76.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/gameObjectsFile.json","children":[]},{"name":"helvetiker_regular.typeface.json","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":1282.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/helvetiker_regular.typeface.json","children":[]},{"name":"sample1.cc.json","type":"File","attributes":{"loc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/sample1.cc.json","children":[]},{"name":"sample2.cc.json","type":"File","attributes":{"loc":47.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/sample2.cc.json","children":[]},{"name":"sample3.cc.json","type":"File","attributes":{"loc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/sample3.cc.json","children":[]},{"name":"sample4.cc.json","type":"File","attributes":{"loc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/sample4.cc.json","children":[]},{"name":"scenarios.json","type":"File","attributes":{"loc":51.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/assets/scenarios.json","children":[]},{"name":"area_icon_for_3D_print.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codecharta_logo.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"color_icon_for_3D_print.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"empty.png","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"favicon.ico","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"flatten.png","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"height_icon_for_3D_print.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"icon.icns","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"icon.ico","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"icon.png","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"logo.png","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mw_logo.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mw_logo_min.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mw_logo_text.svg","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"output.cc.json.gz","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeCharta.api.model.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":62.0,"sonar_lines_to_cover":9.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/codeCharta.api.model.ts","children":[]},{"name":"codeCharta.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":15.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/codeCharta.component.html","children":[]},{"name":"codeCharta.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":41.0,"sonar_lines_to_cover":18.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/codeCharta.component.ts","children":[]},{"name":"codeCharta.model.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":386.0,"sonar_lines_to_cover":40.0,"rloc":338.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":2.0,"sonar_comment_lines_density":0.6,"sonar_complexity":6.0,"sonar_conditions_to_cover":26.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/codeCharta.model.ts","children":[]},{"name":"model","type":"Folder","attributes":{},"children":[{"name":"customConfig","type":"Folder","attributes":{},"children":[{"name":"customConfig.api.model.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":3.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/model/customConfig/customConfig.api.model.ts","children":[]}]},{"name":"files","type":"Folder","attributes":{},"children":[{"name":"files.helper.ts","type":"File","attributes":{"sonar_coverage":97.7,"sonar_file_complexity":26.0,"sonar_files":1.0,"functions":22.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":97.2,"loc":76.0,"sonar_lines_to_cover":36.0,"rloc":58.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":26.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":25.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/model/files/files.helper.ts","children":[]},{"name":"files.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":14.0,"sonar_lines_to_cover":5.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/model/files/files.ts","children":[]},{"name":"files.helper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"resources","type":"Folder","attributes":{},"children":[{"name":"fixed-folders","type":"Folder","attributes":{},"children":[{"name":"example.json","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":387.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/fixed-folders/example.json","children":[]},{"name":"fixed-folders-example.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":355.0,"sonar_lines_to_cover":3.0,"rloc":352.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/fixed-folders/fixed-folders-example.ts","children":[]}]},{"name":"minimalScene.json","type":"File","attributes":{"loc":2661.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/minimalScene.json","children":[]},{"name":"sample1_with_api_warning.cc.json","type":"File","attributes":{"loc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_api_warning.cc.json","children":[]},{"name":"sample1_with_different_edges.cc.json","type":"File","attributes":{"loc":102.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_different_edges.cc.json","children":[]},{"name":"sample1_with_lower_minor_api.cc.json","type":"File","attributes":{"loc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_lower_minor_api.cc.json","children":[]},{"name":"sample1_with_old_mcc_metric.cc.json","type":"File","attributes":{"loc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_old_mcc_metric.cc.json","children":[]},{"name":"sample1_with_rloc_0.cc.json","type":"File","attributes":{"loc":109.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/resources/sample1_with_rloc_0.cc.json","children":[]},{"name":"fileStorage","type":"Folder","attributes":{},"link":"","children":[{"name":".gitkeep","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"usageData","type":"Folder","attributes":{},"link":"","children":[{"name":".gitkeep","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]}]},{"name":"services","type":"Folder","attributes":{},"children":[{"name":"3DExports","type":"Folder","attributes":{},"children":[{"name":"3DPreview","type":"Folder","attributes":{},"children":[{"name":"ColorChangeStrategies","type":"Folder","attributes":{},"children":[{"name":"backPrintColorChangeStrategy.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":10.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/backPrintColorChangeStrategy.ts","children":[]},{"name":"baseplateColorChangeStrategy.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":4.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/baseplateColorChangeStrategy.ts","children":[]},{"name":"colorChangeStrategy.ts","type":"File","attributes":{"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":6.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/colorChangeStrategy.ts","children":[]},{"name":"frontPrintColorChangeStrategy.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":8.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/frontPrintColorChangeStrategy.ts","children":[]},{"name":"negativePrintColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":6.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/negativePrintColorChangeStrategy.ts","children":[]},{"name":"neutralPrintColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":6.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/neutralPrintColorChangeStrategy.ts","children":[]},{"name":"positivePrintColorChangeStrategy.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":6.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/ColorChangeStrategies/positivePrintColorChangeStrategy.ts","children":[]},{"name":"backPrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"baseplateColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontPrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"negativePrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"neutralPrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"positivePrintColorChangeStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"CreateGeometryStrategies","type":"Folder","attributes":{},"children":[{"name":"createBaseplateGeometryStrategy.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":17.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":3.0,"sonar_comment_lines_density":11.5,"sonar_complexity":3.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":15.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/CreateGeometryStrategies/createBaseplateGeometryStrategy.ts","children":[]},{"name":"createGeometryStrategy.ts","type":"File","attributes":{"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/CreateGeometryStrategies/createGeometryStrategy.ts","children":[]},{"name":"createSvgGeometryStrategy.ts","type":"File","attributes":{"sonar_coverage":93.5,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":93.1,"loc":65.0,"sonar_lines_to_cover":29.0,"sonar_major_violations":1.0,"rloc":57.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":27.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/CreateGeometryStrategies/createSvgGeometryStrategy.ts","children":[]},{"name":"createTextGeometryStrategy.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":76.0,"sonar_lines_to_cover":29.0,"rloc":67.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":9.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":13.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":25.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/CreateGeometryStrategies/createTextGeometryStrategy.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"createBaseplateGeometryStrategy.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createSvgGeometryStrategy.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createTextGeometryStrategy.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"createBaseplateGeometryStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createSvgGeometryStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createTextGeometryStrategy.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"MeshModels","type":"Folder","attributes":{},"children":[{"name":"BackMeshModels","type":"Folder","attributes":{},"children":[{"name":"backBelowLogoTextMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":5.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/backBelowLogoTextMesh.ts","children":[]},{"name":"backMWLogoMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":15.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":11.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/backMWLogoMesh.ts","children":[]},{"name":"backPrintContainerMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":72.0,"sonar_lines_to_cover":38.0,"rloc":62.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":26.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/backPrintContainerMesh.ts","children":[]},{"name":"codeChartaLogoMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":32.0,"sonar_lines_to_cover":15.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/codeChartaLogoMesh.ts","children":[]},{"name":"codeChartaTextMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":5.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/codeChartaTextMesh.ts","children":[]},{"name":"colorMetricDescriptionBlockMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":91.0,"sonar_lines_to_cover":29.0,"rloc":80.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":24.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/colorMetricDescriptionBlockMesh.ts","children":[]},{"name":"metricDescriptionBlockMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":83.0,"sonar_lines_to_cover":23.0,"rloc":70.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":14.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/metricDescriptionBlockMesh.ts","children":[]},{"name":"metricDescriptionsContainerMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":98.0,"sonar_lines_to_cover":36.0,"rloc":86.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":29.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/metricDescriptionsContainerMesh.ts","children":[]},{"name":"qrCodeMesh.ts","type":"File","attributes":{"line_coverage":91.2,"loc":65.0,"sonar_lines_to_cover":34.0,"rloc":50.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":89.5,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":3.0,"sonar_comment_lines_density":5.7,"sonar_complexity":10.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":30.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/BackMeshModels/qrCodeMesh.ts","children":[]},{"name":"backBelowLogoTextMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"backMWLogoMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"backPrintContainerMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeChartaLogoMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeChartaTextMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"colorMetricDescriptionBlockMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricDescriptionBlockMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricDescriptionsContainerMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"qrCodeMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"FrontMeshModels","type":"Folder","attributes":{},"children":[{"name":"customLogoMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":55.0,"sonar_lines_to_cover":21.0,"rloc":44.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":17.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/customLogoMesh.ts","children":[]},{"name":"frontLogo.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":29.0,"sonar_lines_to_cover":16.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":12.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/frontLogo.ts","children":[]},{"name":"frontMWLogoMesh.ts","type":"File","attributes":{"sonar_coverage":88.9,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":93.8,"loc":37.0,"sonar_lines_to_cover":16.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":12.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/frontMWLogoMesh.ts","children":[]},{"name":"frontPrintContainerMesh.ts","type":"File","attributes":{"sonar_coverage":84.7,"sonar_file_complexity":17.0,"sonar_files":1.0,"functions":13.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":86.3,"loc":102.0,"sonar_lines_to_cover":51.0,"rloc":83.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":17.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":42.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":7.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/frontPrintContainerMesh.ts","children":[]},{"name":"frontTextMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":9.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/frontTextMesh.ts","children":[]},{"name":"secondRowTextMesh.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":5.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/FrontMeshModels/secondRowTextMesh.ts","children":[]},{"name":"customLogoMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontLogo.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontMWLogoMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontPrintContainerMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"frontTextMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"secondRowTextMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"baseplateMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":40.0,"sonar_lines_to_cover":21.0,"sonar_major_violations":1.0,"rloc":31.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":3.0,"sonar_comment_lines_density":8.8,"sonar_complexity":6.0,"sonar_conditions_to_cover":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":15.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/baseplateMesh.ts","children":[]},{"name":"customVisibilityMesh.ts","type":"File","attributes":{"sonar_coverage":91.7,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":42.0,"sonar_lines_to_cover":16.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":13.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/customVisibilityMesh.ts","children":[]},{"name":"generalMesh.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":55.0,"sonar_lines_to_cover":21.0,"rloc":48.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/generalMesh.ts","children":[]},{"name":"mapMesh.ts","type":"File","attributes":{"sonar_coverage":92.5,"sonar_critical_violations":1.0,"sonar_file_complexity":20.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":97.6,"loc":83.0,"sonar_lines_to_cover":42.0,"rloc":65.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":84.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":23.0,"comment_lines":5.0,"sonar_comment_lines_density":7.1,"sonar_complexity":20.0,"sonar_conditions_to_cover":25.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.7,"statements":40.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/mapMesh.ts","children":[]},{"name":"textMesh.ts","type":"File","attributes":{"line_coverage":92.9,"loc":35.0,"sonar_lines_to_cover":14.0,"sonar_major_violations":1.0,"rloc":28.0,"sonar_minor_violations":0.0,"sonar_coverage":87.5,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":2.4,"statements":7.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/MeshModels/textMesh.ts","children":[]},{"name":"baseplateMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customVisibilityMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"generalMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"textMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"preview3DPrintMesh.ts","type":"File","attributes":{"line_coverage":92.8,"loc":179.0,"sonar_lines_to_cover":69.0,"rloc":148.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":93.7,"sonar_file_complexity":26.0,"sonar_files":1.0,"functions":20.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":1.0,"sonar_comment_lines_density":0.7,"sonar_complexity":26.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":54.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":5.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/3DPreview/preview3DPrintMesh.ts","children":[]},{"name":"preview3DPrintMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"generateXML","type":"Folder","attributes":{},"children":[{"name":"build3mfModel.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":46.0,"sonar_lines_to_cover":18.0,"rloc":40.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":19.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/generateXML/build3mfModel.ts","children":[]},{"name":"build3mfModelConfig.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":9.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":9.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/generateXML/build3mfModelConfig.ts","children":[]},{"name":"build3mfStatics.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":4.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/generateXML/build3mfStatics.ts","children":[]},{"name":"build3mfModel.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"build3mfModelConfig.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"build3mfStatics.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"serialize3mf.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":254.0,"sonar_lines_to_cover":91.0,"sonar_major_violations":1.0,"rloc":225.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":33.0,"sonar_files":1.0,"functions":10.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":36.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":33.0,"sonar_conditions_to_cover":25.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":91.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/3DExports/serialize3mf.service.ts","children":[]},{"name":"serialize3mf.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"idToBuilding","type":"Folder","attributes":{},"children":[{"name":"idToBuilding.service.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":20.0,"sonar_lines_to_cover":7.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":1.0,"sonar_comment_lines_density":6.3,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/idToBuilding/idToBuilding.service.ts","children":[]}]},{"name":"isAttributeSideBarVisible.service.ts","type":"File","attributes":{"sonar_coverage":77.8,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":77.8,"loc":17.0,"sonar_lines_to_cover":9.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_lines":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/isAttributeSideBarVisible.service.ts","children":[]},{"name":"loadFile","type":"Folder","attributes":{},"children":[{"name":"fileParser.ts","type":"File","attributes":{"sonar_coverage":89.1,"sonar_file_complexity":23.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":95.0,"loc":143.0,"sonar_lines_to_cover":60.0,"rloc":128.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":78.1,"sonar_classes":0.0,"sonar_cognitive_complexity":18.0,"comment_lines":2.0,"sonar_comment_lines_density":1.5,"sonar_complexity":23.0,"sonar_conditions_to_cover":32.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":52.0,"sonar_uncovered_conditions":7.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadFile/fileParser.ts","children":[]},{"name":"fileRoot.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":3.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadFile/fileRoot.ts","children":[]},{"name":"loadFile.service.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":81.0,"sonar_lines_to_cover":40.0,"rloc":68.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":20.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadFile/loadFile.service.ts","children":[]},{"name":"loadFile.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"loadInitialFile","type":"Folder","attributes":{},"children":[{"name":"loadInitialFile.service.ts","type":"File","attributes":{"sonar_coverage":87.2,"sonar_file_complexity":114.0,"sonar_files":1.0,"functions":30.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":89.8,"loc":490.0,"sonar_lines_to_cover":304.0,"rloc":451.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":78.7,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":57.0,"comment_lines":3.0,"sonar_comment_lines_density":0.7,"sonar_complexity":114.0,"sonar_conditions_to_cover":94.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":242.0,"sonar_uncovered_conditions":20.0,"sonar_uncovered_lines":31.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadInitialFile/loadInitialFile.service.ts","children":[]},{"name":"urlExtractor.ts","type":"File","attributes":{"line_coverage":97.6,"loc":82.0,"sonar_lines_to_cover":41.0,"rloc":68.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":98.3,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":9.0,"comment_lines":2.0,"sonar_comment_lines_density":2.9,"sonar_complexity":18.0,"sonar_conditions_to_cover":17.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":34.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/loadInitialFile/urlExtractor.ts","children":[]},{"name":"loadInitialFile.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"urlExtractor.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"version","type":"Folder","attributes":{},"children":[{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"compareVersion.ts","type":"File","attributes":{"sonar_coverage":94.7,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":22.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":87.5,"sonar_classes":0.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":14.0,"sonar_conditions_to_cover":16.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":18.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/version/utils/compareVersion.ts","children":[]},{"name":"compareVersion.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"version.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":29.0,"sonar_lines_to_cover":15.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/services/version/version.service.ts","children":[]},{"name":"version.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"state","type":"Folder","attributes":{},"children":[{"name":"effects","type":"Folder","attributes":{},"children":[{"name":"addBlacklistItemsIfNotResultsInEmptyMap","type":"Folder","attributes":{},"children":[{"name":"addBlacklistItemsIfNotResultsInEmptyMap.effect.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":51.0,"sonar_lines_to_cover":24.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/addBlacklistItemsIfNotResultsInEmptyMap/addBlacklistItemsIfNotResultsInEmptyMap.effect.ts","children":[]},{"name":"resultsInEmptyMap.ts","type":"File","attributes":{"line_coverage":93.3,"loc":31.0,"sonar_lines_to_cover":15.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":95.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":14.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/addBlacklistItemsIfNotResultsInEmptyMap/resultsInEmptyMap.ts","children":[]},{"name":"addBlacklistItemsIfNotResultsInEmptyMap.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"autoFitCodeMapChange","type":"Folder","attributes":{},"children":[{"name":"autoFitCodeMap.effect.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":47.0,"sonar_lines_to_cover":22.0,"rloc":43.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":1.0,"sonar_comment_lines_density":2.3,"sonar_complexity":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/autoFitCodeMapChange/autoFitCodeMap.effect.ts","children":[]},{"name":"selectorsTriggeringAutoFit.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":9.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/autoFitCodeMapChange/selectorsTriggeringAutoFit.ts","children":[]},{"name":"autoFitCodeMap.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"linkColorMetricToHeightMetric","type":"Folder","attributes":{},"children":[{"name":"linkColorMetricToHeightMetric.effect.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":13.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/linkColorMetricToHeightMetric/linkColorMetricToHeightMetric.effect.ts","children":[]},{"name":"linkColorMetricToHeightMetric.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"nodeContextMenu","type":"Folder","attributes":{},"children":[{"name":"excludeButton","type":"Folder","attributes":{},"children":[{"name":"excludeButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/excludeButton/excludeButton.component.html","children":[]},{"name":"excludeButton.component.ts","type":"File","attributes":{"sonar_coverage":85.7,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":85.7,"loc":33.0,"sonar_lines_to_cover":7.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/excludeButton/excludeButton.component.ts","children":[]}]},{"name":"flattenButtons","type":"Folder","attributes":{},"children":[{"name":"flattenButtons.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":12.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.html","children":[]},{"name":"flattenButtons.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":43.0,"sonar_lines_to_cover":8.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.ts","children":[]},{"name":"flattenButtons.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"focusButtons","type":"Folder","attributes":{},"children":[{"name":"focusButtons.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":21.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/focusButtons/focusButtons.component.html","children":[]},{"name":"focusButtons.component.ts","type":"File","attributes":{"sonar_coverage":81.3,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":81.3,"loc":40.0,"sonar_lines_to_cover":16.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/focusButtons/focusButtons.component.ts","children":[]},{"name":"isNodeFocused.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":7.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/focusButtons/isNodeFocused.pipe.ts","children":[]},{"name":"focusButtons.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"isNodeFocused.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"highlightButtons","type":"Folder","attributes":{},"children":[{"name":"highlightButtons.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":10.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/highlightButtons/highlightButtons.component.html","children":[]},{"name":"highlightButtons.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":51.0,"sonar_lines_to_cover":17.0,"rloc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/highlightButtons/highlightButtons.component.ts","children":[]},{"name":"highlightButtons.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"markFolderRow","type":"Folder","attributes":{},"children":[{"name":"markFolderRow.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":26.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/markFolderRow/markFolderRow.component.html","children":[]},{"name":"markFolderRow.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":36.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/markFolderRow/markFolderRow.component.scss","children":[]},{"name":"markFolderRow.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":13.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/markFolderRow/markFolderRow.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"markFolderItems.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":33.0,"sonar_lines_to_cover":13.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/markFolderRow/selectors/markFolderItems.selector.ts","children":[]},{"name":"markFolderItems.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"markFolderRow.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"nodeContextMenu.service.ts","type":"File","attributes":{"line_coverage":92.3,"loc":88.0,"sonar_lines_to_cover":39.0,"rloc":70.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":88.7,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":78.6,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":1.0,"sonar_comment_lines_density":1.4,"sonar_complexity":14.0,"sonar_conditions_to_cover":14.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":26.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenu.service.ts","children":[]},{"name":"nodeContextMenuButton.component.scss","type":"File","attributes":{"loc":23.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuButton.component.scss","children":[]},{"name":"nodeContextMenuCard","type":"Folder","attributes":{},"children":[{"name":"lastPartOfNodePath.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":3.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/lastPartOfNodePath.pipe.ts","children":[]},{"name":"nodeContextMenuCard.component.html","type":"File","attributes":{"loc":20.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.html","children":[]},{"name":"nodeContextMenuCard.component.scss","type":"File","attributes":{"loc":11.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.scss","children":[]},{"name":"nodeContextMenuCard.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":16.0,"rloc":40.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.ts","children":[]},{"name":"lastPartOfNodePath.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeContextMenuCard.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"openNodeContextMenu.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":12.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/openNodeContextMenu.effect.ts","children":[]},{"name":"rightClickedCodeMapNode.selector.ts","type":"File","attributes":{"line_coverage":80.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":57.1,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/nodeContextMenu/rightClickedCodeMapNode.selector.ts","children":[]},{"name":"nodeContextMenu.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeContextMenu.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeContextMenu.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"openNodeContextMenu.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"renderCodeMapEffect","type":"Folder","attributes":{},"children":[{"name":"actionsRequiringRerender.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":72.0,"sonar_lines_to_cover":29.0,"rloc":70.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/renderCodeMapEffect/actionsRequiringRerender.ts","children":[]},{"name":"renderCodeMap.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":55.0,"sonar_lines_to_cover":30.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/renderCodeMapEffect/renderCodeMap.effect.ts","children":[]},{"name":"renderCodeMap.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetChosenMetrics","type":"Folder","attributes":{},"children":[{"name":"resetChosenMetrics.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":46.0,"sonar_lines_to_cover":27.0,"rloc":40.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/resetChosenMetrics/resetChosenMetrics.effect.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"getDefaultDistributionMetric.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/resetChosenMetrics/utils/getDefaultDistributionMetric.ts","children":[]},{"name":"metricHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":64.0,"sonar_lines_to_cover":33.0,"rloc":55.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":13.0,"comment_lines":1.0,"sonar_comment_lines_density":1.8,"sonar_complexity":16.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":33.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/resetChosenMetrics/utils/metricHelper.ts","children":[]},{"name":"getDefaultDistribution.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetChosenMetrics.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetSelectedEdgeMetricWhenItDoesntExistAnymore","type":"Folder","attributes":{},"children":[{"name":"resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":14.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/resetSelectedEdgeMetricWhenItDoesntExistAnymore/resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.ts","children":[]},{"name":"resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"saveCcState","type":"Folder","attributes":{},"children":[{"name":"actionsRequiringSaveCcState.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":5.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/saveCcState/actionsRequiringSaveCcState.ts","children":[]},{"name":"saveCcState.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":16.0,"rloc":28.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/saveCcState/saveCcState.effect.ts","children":[]},{"name":"saveCcState.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"setLoadingIndicator","type":"Folder","attributes":{},"children":[{"name":"setLoadingIndicator.effect.ts","type":"File","attributes":{"line_coverage":0.0,"loc":27.0,"sonar_lines_to_cover":15.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":15.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/setLoadingIndicator/setLoadingIndicator.effect.ts","children":[]}]},{"name":"unfocusNodes","type":"Folder","attributes":{},"children":[{"name":"unfocusNodes.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":9.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/unfocusNodes/unfocusNodes.effect.ts","children":[]},{"name":"unfocusNodes.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateEdgePreviews","type":"Folder","attributes":{},"children":[{"name":"updateEdgePreviews.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":13.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateEdgePreviews/updateEdgePreviews.effect.ts","children":[]},{"name":"updateEdgePreviews.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateFileSettings","type":"Folder","attributes":{},"children":[{"name":"updateFileSettings.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":48.0,"sonar_lines_to_cover":24.0,"rloc":44.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/updateFileSettings.effect.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"attributeDescriptors.merger.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":16.0,"sonar_lines_to_cover":7.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/attributeDescriptors.merger.ts","children":[]},{"name":"attributeTypes.merger.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":11.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":13.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/attributeTypes.merger.ts","children":[]},{"name":"blacklist.merger.ts","type":"File","attributes":{"sonar_coverage":81.3,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":91.7,"loc":26.0,"sonar_lines_to_cover":12.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":50.0,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/blacklist.merger.ts","children":[]},{"name":"edges.merger.ts","type":"File","attributes":{"sonar_coverage":84.6,"sonar_critical_violations":1.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":94.4,"loc":37.0,"sonar_lines_to_cover":18.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":62.5,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":25.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":8.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":1.6,"statements":16.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/edges.merger.ts","children":[]},{"name":"markedPackages.merger.ts","type":"File","attributes":{"sonar_coverage":81.3,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":91.7,"loc":26.0,"sonar_lines_to_cover":12.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":50.0,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateFileSettings/utils/markedPackages.merger.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"blacklist.merger.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"edges.merger.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"markedPackages.merger.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeDescriptors.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"attributeTypes.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"blacklist.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"edges.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"markedPackages.merger.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateFileSettings.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateMapColors","type":"Folder","attributes":{},"children":[{"name":"updateMapColors.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":37.0,"sonar_lines_to_cover":23.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":96.9,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":88.9,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateMapColors/updateMapColors.effect.ts","children":[]},{"name":"updateMapColors.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateQueryParameters","type":"Folder","attributes":{},"children":[{"name":"actionsRequiringUpdateQueryParameters.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":14.0,"sonar_lines_to_cover":6.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateQueryParameters/actionsRequiringUpdateQueryParameters.ts","children":[]},{"name":"updateQueryParameters.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":110.0,"sonar_lines_to_cover":61.0,"rloc":93.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":98.7,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":94.1,"sonar_classes":1.0,"sonar_cognitive_complexity":16.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":18.0,"sonar_conditions_to_cover":17.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":42.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateQueryParameters/updateQueryParameters.effect.ts","children":[]},{"name":"updateQueryParameters.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"updateVisibleTopLabels","type":"Folder","attributes":{},"children":[{"name":"getNumberOfTopLabels.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":8.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateVisibleTopLabels/getNumberOfTopLabels.ts","children":[]},{"name":"updateVisibleTopLabels.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":35.0,"sonar_lines_to_cover":17.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/effects/updateVisibleTopLabels/updateVisibleTopLabels.effect.ts","children":[]},{"name":"getNumberOfTopLabels.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"updateVisibleTopLabels.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"accumulatedData","type":"Folder","attributes":{},"children":[{"name":"accumulatedData.selector.ts","type":"File","attributes":{"sonar_coverage":93.2,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":96.8,"loc":62.0,"sonar_lines_to_cover":31.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":84.6,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":13.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/accumulatedData.selector.ts","children":[]},{"name":"codeMapNodes.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":5.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/codeMapNodes.selector.ts","children":[]},{"name":"idToNode.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":11.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/idToNode.selector.ts","children":[]},{"name":"metricData","type":"Folder","attributes":{},"children":[{"name":"edgeMetricData.calculator.ts","type":"File","attributes":{"sonar_coverage":97.0,"sonar_file_complexity":23.0,"sonar_files":1.0,"functions":6.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":98.1,"loc":110.0,"sonar_lines_to_cover":52.0,"rloc":95.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":92.9,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":31.0,"comment_lines":1.0,"sonar_comment_lines_density":1.0,"sonar_complexity":23.0,"sonar_conditions_to_cover":14.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":54.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/edgeMetricData.calculator.ts","children":[]},{"name":"metricData.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":7.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/metricData.selector.ts","children":[]},{"name":"metricNames.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/metricNames.selector.ts","children":[]},{"name":"nodeMetricData.calculator.ts","type":"File","attributes":{"line_coverage":100.0,"loc":61.0,"sonar_lines_to_cover":30.0,"rloc":47.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_critical_violations":1.0,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":1.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":28.0,"comment_lines":1.0,"sonar_comment_lines_density":2.1,"sonar_complexity":14.0,"sonar_conditions_to_cover":12.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":1.3,"statements":31.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/nodeMetricData.calculator.ts","children":[]},{"name":"selectedColorMetricData.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":9.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":24.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/selectedColorMetricData.selector.ts","children":[]},{"name":"sortByMetricName.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"sonar_major_violations":1.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_coverage":88.9,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":2.4,"statements":5.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/sortByMetricName.ts","children":[]},{"name":"sortedNodeEdgeMetricsMap.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":28.0,"sonar_lines_to_cover":14.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":11.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/metricData/sortedNodeEdgeMetricsMap.selector.ts","children":[]},{"name":"edgeMetricData.calculator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricNames.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeMetricData.calculator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"sortedNodeEdgeMetricsMap.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"rootUnary.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/rootUnary.selector.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"addEdgeMetricsForLeaves.ts","type":"File","attributes":{"sonar_coverage":53.8,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":54.5,"loc":21.0,"sonar_lines_to_cover":11.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":50.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/utils/addEdgeMetricsForLeaves.ts","children":[]},{"name":"getDeltaFile.ts","type":"File","attributes":{"sonar_coverage":38.5,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":45.5,"loc":17.0,"sonar_lines_to_cover":11.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":6.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/utils/getDeltaFile.ts","children":[]},{"name":"getMetricValuesForNode.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":7.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/accumulatedData/utils/getMetricValuesForNode.ts","children":[]},{"name":"getMetricValuesForNode.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"accumulatedData.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"idToNode.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"allNecessaryRenderDataAvailable","type":"Folder","attributes":{},"children":[{"name":"areAllNecessaryRenderDataAvailable.selector.ts","type":"File","attributes":{"sonar_coverage":58.3,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":73.7,"loc":40.0,"sonar_lines_to_cover":19.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/allNecessaryRenderDataAvailable/areAllNecessaryRenderDataAvailable.selector.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"areDynamicSettingsAvailable.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":10.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/allNecessaryRenderDataAvailable/utils/areDynamicSettingsAvailable.ts","children":[]},{"name":"areMetricsAvailable.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":3.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/allNecessaryRenderDataAvailable/utils/areMetricsAvailable.ts","children":[]},{"name":"areDynamicSettingsAvailable.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"areMetricsAvailable.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"hoveredNode.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/hoveredNode.selector.ts","children":[]},{"name":"isDeltaState.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":4.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/isDeltaState.selector.ts","children":[]},{"name":"primaryMetrics","type":"Folder","attributes":{},"children":[{"name":"primaryMetricNames.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":20.0,"sonar_lines_to_cover":7.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/primaryMetrics/primaryMetricNames.selector.ts","children":[]},{"name":"primaryMetrics.selector.ts","type":"File","attributes":{"line_coverage":69.2,"loc":51.0,"sonar_lines_to_cover":13.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":79.3,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":16.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/primaryMetrics/primaryMetrics.selector.ts","children":[]},{"name":"primaryMetrics.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"referenceFile","type":"Folder","attributes":{},"children":[{"name":"referenceFile.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":6.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/referenceFile/referenceFile.selector.ts","children":[]},{"name":"referenceFile.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchedNodes","type":"Folder","attributes":{},"children":[{"name":"getNodesByGitignorePath.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":20.0,"sonar_lines_to_cover":12.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/searchedNodes/getNodesByGitignorePath.ts","children":[]},{"name":"searchedNodePaths.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/searchedNodes/searchedNodePaths.selector.ts","children":[]},{"name":"searchedNodes.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":6.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/searchedNodes/searchedNodes.selector.ts","children":[]},{"name":"getNodesByGitignorePath.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"selectedNode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":88.9,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/selectedNode.selector.ts","children":[]},{"name":"visibleFileStates","type":"Folder","attributes":{},"children":[{"name":"visibleFileStates.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":60.0,"sonar_lines_to_cover":35.0,"rloc":48.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":21.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":21.0,"sonar_conditions_to_cover":21.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":23.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/selectors/visibleFileStates/visibleFileStates.selector.ts","children":[]},{"name":"visibleFileStates.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"store","type":"Folder","attributes":{},"children":[{"name":"appSettings","type":"Folder","attributes":{},"children":[{"name":"amountOfEdgePreviews","type":"Folder","attributes":{},"children":[{"name":"amountOfEdgePreviews.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfEdgePreviews/amountOfEdgePreviews.actions.ts","children":[]},{"name":"amountOfEdgePreviews.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfEdgePreviews/amountOfEdgePreviews.reducer.ts","children":[]},{"name":"amountOfEdgePreviews.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfEdgePreviews/amountOfEdgePreviews.selector.ts","children":[]},{"name":"amountOfEdgePreviews.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"amountOfTopLabels","type":"Folder","attributes":{},"children":[{"name":"amountOfTopLabels.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfTopLabels/amountOfTopLabels.actions.ts","children":[]},{"name":"amountOfTopLabels.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfTopLabels/amountOfTopLabels.reducer.ts","children":[]},{"name":"amountOfTopLabels.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/amountOfTopLabels/amountOfTopLabels.selector.ts","children":[]},{"name":"amountOfTopLabels.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"appSettings.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":63.0,"sonar_lines_to_cover":26.0,"rloc":61.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/appSettings.actions.ts","children":[]},{"name":"appSettings.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":101.0,"sonar_lines_to_cover":30.0,"rloc":98.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/appSettings.reducer.ts","children":[]},{"name":"appSettings.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/appSettings.selector.ts","children":[]},{"name":"colorLabels","type":"Folder","attributes":{},"children":[{"name":"colorLabels.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/colorLabels/colorLabels.actions.ts","children":[]},{"name":"colorLabels.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/colorLabels/colorLabels.reducer.ts","children":[]},{"name":"colorLabels.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/colorLabels/colorLabels.selector.ts","children":[]},{"name":"colorLabels.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edgeHeight","type":"Folder","attributes":{},"children":[{"name":"edgeHeight.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/edgeHeight/edgeHeight.actions.ts","children":[]},{"name":"edgeHeight.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/edgeHeight/edgeHeight.reducer.ts","children":[]},{"name":"edgeHeight.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/edgeHeight/edgeHeight.selector.ts","children":[]},{"name":"edgeHeight.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"enableClipboard","type":"Folder","attributes":{},"children":[{"name":"screenshotToClipboardEnabled.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableClipboard/screenshotToClipboardEnabled.actions.ts","children":[]},{"name":"screenshotToClipboardEnabled.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableClipboard/screenshotToClipboardEnabled.reducer.ts","children":[]},{"name":"screenshotToClipboardEnabled.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableClipboard/screenshotToClipboardEnabled.selector.ts","children":[]},{"name":"screenshotToClipboardEnabled.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"enableExperimentalFeatures","type":"Folder","attributes":{},"children":[{"name":"experimentalFeaturesEnabled.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableExperimentalFeatures/experimentalFeaturesEnabled.actions.ts","children":[]},{"name":"experimentalFeaturesEnabled.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableExperimentalFeatures/experimentalFeaturesEnabled.reducer.ts","children":[]},{"name":"experimentalFeaturesEnabled.selector.ts","type":"File","attributes":{"sonar_coverage":75.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":75.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableExperimentalFeatures/experimentalFeaturesEnabled.selector.ts","children":[]},{"name":"experimentalFeaturesEnabled.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"enableFloorLabels","type":"Folder","attributes":{},"children":[{"name":"enableFloorLabels.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.actions.ts","children":[]},{"name":"enableFloorLabels.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.reducer.ts","children":[]},{"name":"enableFloorLabels.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.selector.ts","children":[]},{"name":"enableFloorLabels.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"hideFlatBuildings","type":"Folder","attributes":{},"children":[{"name":"hideFlatBuildings.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/hideFlatBuildings/hideFlatBuildings.actions.ts","children":[]},{"name":"hideFlatBuildings.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/hideFlatBuildings/hideFlatBuildings.reducer.ts","children":[]},{"name":"hideFlatBuildings.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/hideFlatBuildings/hideFlatBuildings.selector.ts","children":[]},{"name":"hideFlatBuildings.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"invertArea","type":"Folder","attributes":{},"children":[{"name":"invertArea.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertArea/invertArea.actions.ts","children":[]},{"name":"invertArea.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertArea/invertArea.reducer.ts","children":[]},{"name":"invertArea.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertArea/invertArea.selector.ts","children":[]},{"name":"invertArea.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"invertHeight","type":"Folder","attributes":{},"children":[{"name":"invertHeight.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertHeight/invertHeight.actions.ts","children":[]},{"name":"invertHeight.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertHeight/invertHeight.reducer.ts","children":[]},{"name":"invertHeight.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/invertHeight/invertHeight.selector.ts","children":[]},{"name":"invertHeight.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isEdgeMetricVisible","type":"Folder","attributes":{},"children":[{"name":"isEdgeMetricVisible.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isEdgeMetricVisible/isEdgeMetricVisible.actions.ts","children":[]},{"name":"isEdgeMetricVisible.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":6.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isEdgeMetricVisible/isEdgeMetricVisible.reducer.ts","children":[]},{"name":"isEdgeMetricVisible.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isEdgeMetricVisible/isEdgeMetricVisible.selector.ts","children":[]},{"name":"isEdgeMetricVisible.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isHeightAndColorMetricLinked","type":"Folder","attributes":{},"children":[{"name":"isColorMetricLinkedToHeightMetric.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":3.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isHeightAndColorMetricLinked/isColorMetricLinkedToHeightMetric.actions.ts","children":[]},{"name":"isColorMetricLinkedToHeightMetric.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":6.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isHeightAndColorMetricLinked/isColorMetricLinkedToHeightMetric.reducer.ts","children":[]},{"name":"isColorMetricLinkedToHeightMetric.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isHeightAndColorMetricLinked/isColorMetricLinkedToHeightMetric.selector.ts","children":[]},{"name":"isColorMetricLinkedToHeightMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isLoadingFile","type":"Folder","attributes":{},"children":[{"name":"isLoadingFile.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingFile/isLoadingFile.actions.ts","children":[]},{"name":"isLoadingFile.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingFile/isLoadingFile.reducer.ts","children":[]},{"name":"isLoadingFile.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingFile/isLoadingFile.selector.ts","children":[]},{"name":"isLoadingFile.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isLoadingMap","type":"Folder","attributes":{},"children":[{"name":"isLoadingMap.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingMap/isLoadingMap.actions.ts","children":[]},{"name":"isLoadingMap.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingMap/isLoadingMap.reducer.ts","children":[]},{"name":"isLoadingMap.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isLoadingMap/isLoadingMap.selector.ts","children":[]},{"name":"isLoadingMap.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isPresentationMode","type":"Folder","attributes":{},"children":[{"name":"isPresentationMode.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isPresentationMode/isPresentationMode.actions.ts","children":[]},{"name":"isPresentationMode.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isPresentationMode/isPresentationMode.reducer.ts","children":[]},{"name":"isPresentationMode.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isPresentationMode/isPresentationMode.selector.ts","children":[]},{"name":"isPresentationMode.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isSearchPanelPinned","type":"Folder","attributes":{},"children":[{"name":"isSearchPanelPinned.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isSearchPanelPinned/isSearchPanelPinned.actions.ts","children":[]},{"name":"isSearchPanelPinned.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":6.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isSearchPanelPinned/isSearchPanelPinned.reducer.ts","children":[]},{"name":"isSearchPanelPinned.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isSearchPanelPinned/isSearchPanelPinned.selector.ts","children":[]},{"name":"isSearchPanelPinned.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"isWhiteBackground","type":"Folder","attributes":{},"children":[{"name":"isWhiteBackground.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isWhiteBackground/isWhiteBackground.actions.ts","children":[]},{"name":"isWhiteBackground.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isWhiteBackground/isWhiteBackground.reducer.ts","children":[]},{"name":"isWhiteBackground.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/isWhiteBackground/isWhiteBackground.selector.ts","children":[]},{"name":"isWhiteBackground.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"layoutAlgorithm","type":"Folder","attributes":{},"children":[{"name":"layoutAlgorithm.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/layoutAlgorithm/layoutAlgorithm.actions.ts","children":[]},{"name":"layoutAlgorithm.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":6.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/layoutAlgorithm/layoutAlgorithm.reducer.ts","children":[]},{"name":"layoutAlgorithm.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/layoutAlgorithm/layoutAlgorithm.selector.ts","children":[]},{"name":"layoutAlgorithm.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapColors","type":"Folder","attributes":{},"children":[{"name":"mapColors.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":4.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/mapColors/mapColors.actions.ts","children":[]},{"name":"mapColors.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":7.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/mapColors/mapColors.reducer.ts","children":[]},{"name":"mapColors.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/mapColors/mapColors.selector.ts","children":[]},{"name":"mapColors.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"maxTreeMapFiles","type":"Folder","attributes":{},"children":[{"name":"maxTreeMapFiles.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/maxTreeMapFiles/maxTreeMapFiles.actions.ts","children":[]},{"name":"maxTreeMapFiles.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/maxTreeMapFiles/maxTreeMapFiles.reducer.ts","children":[]},{"name":"maxTreeMapFiles.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/maxTreeMapFiles/maxTreeMapFiles.selector.ts","children":[]},{"name":"maxTreeMapFiles.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetCameraIfNewFileIsLoaded","type":"Folder","attributes":{},"children":[{"name":"resetCameraIfNewFileIsLoaded.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/resetCameraIfNewFileIsLoaded/resetCameraIfNewFileIsLoaded.actions.ts","children":[]},{"name":"resetCameraIfNewFileIsLoaded.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/resetCameraIfNewFileIsLoaded/resetCameraIfNewFileIsLoaded.reducer.ts","children":[]},{"name":"resetCameraIfNewFileIsLoaded.selector.ts","type":"File","attributes":{"line_coverage":75.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":75.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/resetCameraIfNewFileIsLoaded/resetCameraIfNewFileIsLoaded.selector.ts","children":[]},{"name":"resetCameraIfNewFileIsLoaded.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"scaling","type":"Folder","attributes":{},"children":[{"name":"scaling.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/scaling/scaling.actions.ts","children":[]},{"name":"scaling.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/scaling/scaling.reducer.ts","children":[]},{"name":"scaling.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/scaling/scaling.selector.ts","children":[]},{"name":"scaling.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sharpnessMode","type":"Folder","attributes":{},"children":[{"name":"sharpnessMode.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sharpnessMode/sharpnessMode.actions.ts","children":[]},{"name":"sharpnessMode.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":6.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sharpnessMode/sharpnessMode.reducer.ts","children":[]},{"name":"sharpnessMode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sharpnessMode/sharpnessMode.selector.ts","children":[]},{"name":"sharpnessMode.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showMetricLabelNameValue","type":"Folder","attributes":{},"children":[{"name":"showMetricLabelNameValue.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNameValue/showMetricLabelNameValue.actions.ts","children":[]},{"name":"showMetricLabelNameValue.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNameValue/showMetricLabelNameValue.reducer.ts","children":[]},{"name":"showMetricLabelNameValue.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNameValue/showMetricLabelNameValue.selector.ts","children":[]},{"name":"showMetricLabelNameValue.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showMetricLabelNodeName","type":"Folder","attributes":{},"children":[{"name":"showMetricLabelNodeName.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNodeName/showMetricLabelNodeName.actions.ts","children":[]},{"name":"showMetricLabelNodeName.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNodeName/showMetricLabelNodeName.reducer.ts","children":[]},{"name":"showMetricLabelNodeName.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showMetricLabelNodeName/showMetricLabelNodeName.selector.ts","children":[]},{"name":"showMetricLabelNodeName.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showOnlyBuildingsWithEdges","type":"Folder","attributes":{},"children":[{"name":"showOnlyBuildingsWithEdges.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showOnlyBuildingsWithEdges/showOnlyBuildingsWithEdges.actions.ts","children":[]},{"name":"showOnlyBuildingsWithEdges.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showOnlyBuildingsWithEdges/showOnlyBuildingsWithEdges.reducer.ts","children":[]},{"name":"showOnlyBuildingsWithEdges.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/showOnlyBuildingsWithEdges/showOnlyBuildingsWithEdges.selector.ts","children":[]},{"name":"showOnlyBuildingsWithEdges.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sortingOrderAscending","type":"Folder","attributes":{},"children":[{"name":"sortingOrderAscending.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sortingOrderAscending/sortingOrderAscending.actions.ts","children":[]},{"name":"sortingOrderAscending.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":6.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sortingOrderAscending/sortingOrderAscending.reducer.ts","children":[]},{"name":"sortingOrderAscending.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appSettings/sortingOrderAscending/sortingOrderAscending.selector.ts","children":[]},{"name":"sortingOrderAscending.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"appStatus","type":"Folder","attributes":{},"children":[{"name":"appStatus.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":7.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/appStatus.reducer.ts","children":[]},{"name":"appStatus.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/appStatus.selector.ts","children":[]},{"name":"currentFilesAreSampleFiles","type":"Folder","attributes":{},"children":[{"name":"currentFilesAreSampleFiles.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/currentFilesAreSampleFiles/currentFilesAreSampleFiles.actions.ts","children":[]},{"name":"currentFilesAreSampleFiles.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/currentFilesAreSampleFiles/currentFilesAreSampleFiles.reducer.ts","children":[]},{"name":"currentFilesAreSampleFiles.selector.ts","type":"File","attributes":{"sonar_coverage":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":0.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/currentFilesAreSampleFiles/currentFilesAreSampleFiles.selector.ts","children":[]}]},{"name":"hoveredNodeId","type":"Folder","attributes":{},"children":[{"name":"hoveredNodeId.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/hoveredNodeId/hoveredNodeId.actions.ts","children":[]},{"name":"hoveredNodeId.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/hoveredNodeId/hoveredNodeId.reducer.ts","children":[]},{"name":"hoveredNodeId.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/hoveredNodeId/hoveredNodeId.selector.ts","children":[]},{"name":"hoveredNodeId.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"rightClickedNodeData","type":"Folder","attributes":{},"children":[{"name":"rightClickedNodeData.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":2.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/rightClickedNodeData/rightClickedNodeData.actions.ts","children":[]},{"name":"rightClickedNodeData.reducer.ts","type":"File","attributes":{"line_coverage":80.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":80.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/rightClickedNodeData/rightClickedNodeData.reducer.ts","children":[]},{"name":"rightClickedNodeData.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/rightClickedNodeData/rightClickedNodeData.selector.ts","children":[]}]},{"name":"selectedBuildingId","type":"Folder","attributes":{},"children":[{"name":"selectedBuildingId.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/selectedBuildingId/selectedBuildingId.actions.ts","children":[]},{"name":"selectedBuildingId.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/selectedBuildingId/selectedBuildingId.reducer.ts","children":[]},{"name":"selectedBuildingId.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":3.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/appStatus/selectedBuildingId/selectedBuildingId.selector.ts","children":[]},{"name":"selectedBuildingId.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"dynamicSettings","type":"Folder","attributes":{},"children":[{"name":"areaMetric","type":"Folder","attributes":{},"children":[{"name":"areaMetric.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/areaMetric/areaMetric.actions.ts","children":[]},{"name":"areaMetric.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/areaMetric/areaMetric.reducer.ts","children":[]},{"name":"areaMetric.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/areaMetric/areaMetric.selector.ts","children":[]},{"name":"areaMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorMetric","type":"Folder","attributes":{},"children":[{"name":"colorMetric.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMetric/colorMetric.actions.ts","children":[]},{"name":"colorMetric.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMetric/colorMetric.reducer.ts","children":[]},{"name":"colorMetric.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMetric/colorMetric.selector.ts","children":[]},{"name":"colorMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorMode","type":"Folder","attributes":{},"children":[{"name":"colorMode.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMode/colorMode.actions.ts","children":[]},{"name":"colorMode.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":6.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMode/colorMode.reducer.ts","children":[]},{"name":"colorMode.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorMode/colorMode.selector.ts","children":[]},{"name":"colorMode.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorRange","type":"Folder","attributes":{},"children":[{"name":"calculateInitialColorRange.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":6.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/calculateInitialColorRange.ts","children":[]},{"name":"colorRange.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/colorRange.actions.ts","children":[]},{"name":"colorRange.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/colorRange.reducer.ts","children":[]},{"name":"colorRange.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/colorRange.selector.ts","children":[]},{"name":"resetColorRange.effect.ts","type":"File","attributes":{"line_coverage":100.0,"loc":28.0,"sonar_lines_to_cover":16.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/colorRange/resetColorRange.effect.ts","children":[]},{"name":"calculateInitialColorRange.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"colorRange.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"resetColorRange.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"distributionMetric","type":"Folder","attributes":{},"children":[{"name":"distributionMetric.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/distributionMetric/distributionMetric.actions.ts","children":[]},{"name":"distributionMetric.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/distributionMetric/distributionMetric.reducer.ts","children":[]},{"name":"distributionMetric.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/distributionMetric/distributionMetric.selector.ts","children":[]},{"name":"distributionMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"dynamicSettings.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":13.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/dynamicSettings.actions.ts","children":[]},{"name":"dynamicSettings.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":41.0,"sonar_lines_to_cover":14.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/dynamicSettings.reducer.ts","children":[]},{"name":"dynamicSettings.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/dynamicSettings.selector.ts","children":[]},{"name":"edgeMetric","type":"Folder","attributes":{},"children":[{"name":"edgeMetric.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/edgeMetric/edgeMetric.actions.ts","children":[]},{"name":"edgeMetric.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/edgeMetric/edgeMetric.reducer.ts","children":[]},{"name":"edgeMetric.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/edgeMetric/edgeMetric.selector.ts","children":[]},{"name":"edgeMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"focusedNodePath","type":"Folder","attributes":{},"children":[{"name":"currentFocused.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/focusedNodePath/currentFocused.selector.ts","children":[]},{"name":"focusedNodePath.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/focusedNodePath/focusedNodePath.actions.ts","children":[]},{"name":"focusedNodePath.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":9.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/focusedNodePath/focusedNodePath.reducer.ts","children":[]},{"name":"focusedNodePath.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/focusedNodePath/focusedNodePath.selector.ts","children":[]},{"name":"focusedNodePath.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"heightMetric","type":"Folder","attributes":{},"children":[{"name":"heightMetric.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/heightMetric/heightMetric.actions.ts","children":[]},{"name":"heightMetric.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/heightMetric/heightMetric.reducer.ts","children":[]},{"name":"heightMetric.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/heightMetric/heightMetric.selector.ts","children":[]},{"name":"heightMetric.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"margin","type":"Folder","attributes":{},"children":[{"name":"margin.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/margin/margin.actions.ts","children":[]},{"name":"margin.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/margin/margin.reducer.ts","children":[]},{"name":"margin.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/margin/margin.selector.ts","children":[]},{"name":"margin.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchPattern","type":"Folder","attributes":{},"children":[{"name":"searchPattern.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":2.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/searchPattern/searchPattern.actions.ts","children":[]},{"name":"searchPattern.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":7.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/searchPattern/searchPattern.reducer.ts","children":[]},{"name":"searchPattern.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/searchPattern/searchPattern.selector.ts","children":[]},{"name":"searchPattern.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sortingOption","type":"Folder","attributes":{},"children":[{"name":"sortingOption.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/sortingOption/sortingOption.actions.ts","children":[]},{"name":"sortingOption.reducer.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":6.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/sortingOption/sortingOption.reducer.ts","children":[]},{"name":"sortingOrder.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/dynamicSettings/sortingOption/sortingOrder.selector.ts","children":[]},{"name":"sortingOption.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"fileSettings","type":"Folder","attributes":{},"children":[{"name":"attributeDescriptors","type":"Folder","attributes":{},"children":[{"name":"attributeDescriptors.action.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":2.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeDescriptors/attributeDescriptors.action.ts","children":[]},{"name":"attributeDescriptors.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":5.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeDescriptors/attributeDescriptors.reducer.ts","children":[]},{"name":"attributeDescriptors.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeDescriptors/attributeDescriptors.selector.ts","children":[]},{"name":"attributeDescriptors.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeTypes","type":"Folder","attributes":{},"children":[{"name":"attributeTypes.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":3.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeTypes/attributeTypes.actions.ts","children":[]},{"name":"attributeTypes.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":6.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeTypes/attributeTypes.reducer.ts","children":[]},{"name":"attributeTypes.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/attributeTypes/attributeTypes.selector.ts","children":[]},{"name":"attributeTypes.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"blacklist","type":"Folder","attributes":{},"children":[{"name":"blacklist.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":6.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/blacklist/blacklist.actions.ts","children":[]},{"name":"blacklist.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":9.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/blacklist/blacklist.reducer.ts","children":[]},{"name":"blacklist.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/blacklist/blacklist.selector.ts","children":[]},{"name":"blacklist.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edges","type":"Folder","attributes":{},"children":[{"name":"edges.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":4.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/edges/edges.actions.ts","children":[]},{"name":"edges.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":14.0,"sonar_lines_to_cover":8.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/edges/edges.reducer.ts","children":[]},{"name":"edges.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/edges/edges.selector.ts","children":[]},{"name":"edges.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"fileSettings.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":6.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/fileSettings.actions.ts","children":[]},{"name":"fileSettings.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":8.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/fileSettings.reducer.ts","children":[]},{"name":"fileSettings.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/fileSettings.selector.ts","children":[]},{"name":"markedPackages","type":"Folder","attributes":{},"children":[{"name":"markedPackages.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":4.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/markedPackages.actions.ts","children":[]},{"name":"markedPackages.reducer.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":16.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/markedPackages.reducer.ts","children":[]},{"name":"markedPackages.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/markedPackages.selector.ts","children":[]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"addMarkedPackage.ts","type":"File","attributes":{"sonar_coverage":87.0,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":92.3,"loc":28.0,"sonar_lines_to_cover":13.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":80.0,"sonar_classes":0.0,"sonar_cognitive_complexity":12.0,"comment_lines":1.0,"sonar_comment_lines_density":4.2,"sonar_complexity":9.0,"sonar_conditions_to_cover":10.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":13.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/util/addMarkedPackage.ts","children":[]},{"name":"findIndexOfMarkedPackageOrParent.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":11.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":5.0,"comment_lines":1.0,"sonar_comment_lines_density":5.3,"sonar_complexity":7.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/fileSettings/markedPackages/util/findIndexOfMarkedPackageOrParent.ts","children":[]},{"name":"addMarkedPackage.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"findIndexOfMarkedPackageOrParent.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"markedPackages.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"files","type":"Folder","attributes":{},"children":[{"name":"files.actions.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":11.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/files/files.actions.ts","children":[]},{"name":"files.reducer.ts","type":"File","attributes":{"sonar_coverage":96.3,"sonar_file_complexity":45.0,"sonar_files":1.0,"functions":28.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":96.8,"loc":131.0,"sonar_lines_to_cover":62.0,"rloc":120.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":95.0,"sonar_classes":0.0,"sonar_cognitive_complexity":18.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":45.0,"sonar_conditions_to_cover":20.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":47.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/files/files.reducer.ts","children":[]},{"name":"files.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":4.0,"sonar_lines_to_cover":1.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/files/files.selector.ts","children":[]},{"name":"files.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"state.actions.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/state.actions.ts","children":[]},{"name":"state.manager.ts","type":"File","attributes":{"line_coverage":100.0,"loc":67.0,"sonar_lines_to_cover":26.0,"rloc":57.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":4.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":8.0,"comment_lines":1.0,"sonar_comment_lines_density":1.7,"sonar_complexity":11.0,"sonar_conditions_to_cover":11.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":17.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/state.manager.ts","children":[]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"setState.reducer.factory.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":8.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/state/store/util/setState.reducer.factory.ts","children":[]},{"name":"setState.reducer.factory.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"state.reducer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"ui","type":"Folder","attributes":{},"children":[{"name":"actionIcon","type":"Folder","attributes":{},"children":[{"name":"actionIcon.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":2.0,"sonar_major_violations":1.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":16.7,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/actionIcon/actionIcon.component.html","children":[]},{"name":"actionIcon.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":32.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/actionIcon/actionIcon.component.scss","children":[]},{"name":"actionIcon.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":2.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/actionIcon/actionIcon.component.ts","children":[]}]},{"name":"attributeSideBar","type":"Folder","attributes":{},"children":[{"name":"attributeSideBar.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":9.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBar.component.html","children":[]},{"name":"attributeSideBar.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":28.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":1.0,"sonar_comment_lines_density":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBar.component.scss","children":[]},{"name":"attributeSideBar.component.ts","type":"File","attributes":{"sonar_coverage":91.3,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":35.0,"sonar_lines_to_cover":15.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBar.component.ts","children":[]},{"name":"attributeSideBarHeaderSection","type":"Folder","attributes":{},"children":[{"name":"attributeSideBarHeaderSection.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":14.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.html","children":[]},{"name":"attributeSideBarHeaderSection.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":66.0,"rloc":53.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.scss","children":[]},{"name":"attributeSideBarHeaderSection.component.ts","type":"File","attributes":{"sonar_coverage":87.5,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":87.5,"loc":26.0,"sonar_lines_to_cover":8.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.ts","children":[]},{"name":"nodePath","type":"Folder","attributes":{},"children":[{"name":"fileCountSelector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":11.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":33.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/fileCountSelector.ts","children":[]},{"name":"nodePath.component.html","type":"File","attributes":{"loc":27.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.html","children":[]},{"name":"nodePath.component.scss","type":"File","attributes":{"loc":28.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.scss","children":[]},{"name":"nodePath.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":8.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.ts","children":[]},{"name":"fileCount.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodePath.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeSideBarHeaderSection.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeSideBarMetrics.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":120.0,"rloc":99.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarMetrics.scss","children":[]},{"name":"attributeSideBarPrimaryMetrics","type":"Folder","attributes":{},"children":[{"name":"attributeSideBarPrimaryMetric","type":"Folder","attributes":{},"children":[{"name":"attributeSideBarPrimaryMetric.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":23.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.html","children":[]},{"name":"attributeSideBarPrimaryMetric.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":31.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.scss","children":[]},{"name":"attributeSideBarPrimaryMetric.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":29.0,"sonar_lines_to_cover":8.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.ts","children":[]}]},{"name":"attributeSideBarPrimaryMetrics.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":68.0,"rloc":67.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.html","children":[]},{"name":"attributeSideBarPrimaryMetrics.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":14.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.ts","children":[]}]},{"name":"attributeSideBarSecondaryMetrics","type":"Folder","attributes":{},"children":[{"name":"attributeSideBarSecondaryMetrics.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":44.0,"rloc":43.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.html","children":[]},{"name":"attributeSideBarSecondaryMetrics.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":17.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.scss","children":[]},{"name":"attributeSideBarSecondaryMetrics.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":16.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.ts","children":[]},{"name":"secondaryMetrics.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":12.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/secondaryMetrics.selector.ts","children":[]},{"name":"secondaryMetrics.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeTypeSelector","type":"Folder","attributes":{},"children":[{"name":"attributeTypeSelector.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.html","children":[]},{"name":"attributeTypeSelector.component.ts","type":"File","attributes":{"sonar_coverage":92.3,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":92.3,"loc":41.0,"sonar_lines_to_cover":13.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.ts","children":[]},{"name":"attributeTypeSelector.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricDeltaSelected","type":"Folder","attributes":{},"children":[{"name":"metricDeltaSelected.component.html","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.html","children":[]},{"name":"metricDeltaSelected.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.scss","children":[]},{"name":"metricDeltaSelected.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":9.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.ts","children":[]},{"name":"metricDeltaSelected.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"edge.ts","type":"File","attributes":{"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/util/edge.ts","children":[]},{"name":"metric.ts","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/util/metric.ts","children":[]},{"name":"showAttributeTypeSelector.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/util/showAttributeTypeSelector.selector.ts","children":[]},{"name":"showDeltaValueSelector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/attributeSideBar/util/showDeltaValueSelector.ts","children":[]},{"name":"showAttributeTypeSelector.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"showDeltaValueSelector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"attributeSideBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMap","type":"Folder","attributes":{},"children":[{"name":"arrow","type":"Folder","attributes":{},"children":[{"name":"codeMap.arrow.service.ts","type":"File","attributes":{"sonar_coverage":76.1,"sonar_file_complexity":58.0,"sonar_files":1.0,"functions":26.0,"sonar_info_violations":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":81.8,"loc":266.0,"sonar_lines_to_cover":143.0,"sonar_major_violations":2.0,"rloc":220.0,"sonar_minor_violations":0.0,"branch_coverage":61.1,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":35.0,"comment_lines":10.0,"sonar_comment_lines_density":4.3,"sonar_complexity":58.0,"sonar_conditions_to_cover":54.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":118.0,"sonar_uncovered_conditions":21.0,"sonar_uncovered_lines":26.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/arrow/codeMap.arrow.service.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"edgePreviewNodes.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":40.0,"sonar_lines_to_cover":18.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":14.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/arrow/utils/edgePreviewNodes.selector.ts","children":[]},{"name":"edgeVisibility.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":10.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/arrow/utils/edgeVisibility.selector.ts","children":[]},{"name":"setEdgeVisibility.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":13.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":9.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":13.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/arrow/utils/setEdgeVisibility.ts","children":[]},{"name":"edgePreviewNodes.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"setEdgeVisibility.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"codeMap.arrow.service.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMap.arrow.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMap.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":6.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.component.html","children":[]},{"name":"codeMap.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":15.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.component.scss","children":[]},{"name":"codeMap.component.ts","type":"File","attributes":{"sonar_coverage":95.8,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":95.8,"loc":51.0,"sonar_lines_to_cover":24.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.component.ts","children":[]},{"name":"codeMap.label.service.ts","type":"File","attributes":{"sonar_coverage":90.3,"sonar_file_complexity":43.0,"sonar_files":1.0,"functions":15.0,"sonar_info_violations":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":93.6,"loc":313.0,"sonar_lines_to_cover":171.0,"sonar_major_violations":1.0,"rloc":243.0,"sonar_minor_violations":0.0,"branch_coverage":74.3,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":33.0,"comment_lines":20.0,"sonar_comment_lines_density":7.6,"sonar_complexity":43.0,"sonar_conditions_to_cover":35.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":146.0,"sonar_uncovered_conditions":9.0,"sonar_uncovered_lines":11.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.label.service.ts","children":[]},{"name":"codeMap.mouseEvent.service.ts","type":"File","attributes":{"sonar_coverage":88.6,"sonar_critical_violations":1.0,"sonar_file_complexity":92.0,"sonar_files":1.0,"functions":40.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":91.3,"loc":457.0,"sonar_lines_to_cover":240.0,"sonar_major_violations":4.0,"rloc":390.0,"sonar_minor_violations":0.0,"branch_coverage":83.0,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":75.0,"comment_lines":4.0,"sonar_comment_lines_density":1.0,"sonar_complexity":92.0,"sonar_conditions_to_cover":112.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":185.0,"sonar_uncovered_conditions":19.0,"sonar_uncovered_lines":21.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.mouseEvent.service.ts","children":[]},{"name":"codeMap.render.service.ts","type":"File","attributes":{"sonar_coverage":94.7,"sonar_file_complexity":46.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":97.8,"loc":184.0,"sonar_lines_to_cover":93.0,"sonar_major_violations":7.0,"rloc":160.0,"sonar_minor_violations":0.0,"branch_coverage":87.5,"sonar_classes":1.0,"sonar_code_smells":7.0,"sonar_cognitive_complexity":32.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":46.0,"sonar_conditions_to_cover":40.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":7.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.6,"statements":72.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":2.0,"sonar_violations":7.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/codeMap.render.service.ts","children":[]},{"name":"rendering","type":"Folder","attributes":{},"children":[{"name":"codeMapBuilding.ts","type":"File","attributes":{"sonar_coverage":97.6,"sonar_file_complexity":22.0,"sonar_files":1.0,"functions":20.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":97.4,"loc":118.0,"sonar_lines_to_cover":38.0,"sonar_major_violations":2.0,"rloc":95.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":22.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":35.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/codeMapBuilding.ts","children":[]},{"name":"codeMapGeometricDescription.ts","type":"File","attributes":{"sonar_coverage":25.0,"sonar_file_complexity":12.0,"sonar_files":1.0,"functions":8.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":27.3,"loc":80.0,"sonar_lines_to_cover":33.0,"sonar_major_violations":2.0,"rloc":61.0,"sonar_minor_violations":0.0,"branch_coverage":0.0,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":10.0,"comment_lines":1.0,"sonar_comment_lines_density":1.6,"sonar_complexity":12.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":33.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":24.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/codeMapGeometricDescription.ts","children":[]},{"name":"codeMapMesh.ts","type":"File","attributes":{"sonar_coverage":61.2,"sonar_file_complexity":43.0,"sonar_files":1.0,"functions":23.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":71.0,"loc":234.0,"sonar_lines_to_cover":93.0,"sonar_major_violations":4.0,"rloc":184.0,"sonar_minor_violations":0.0,"branch_coverage":39.0,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":28.0,"comment_lines":11.0,"sonar_comment_lines_density":5.6,"sonar_complexity":43.0,"sonar_conditions_to_cover":41.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":88.0,"sonar_uncovered_conditions":25.0,"sonar_uncovered_lines":27.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/codeMapMesh.ts","children":[]},{"name":"geometryGenerationHelper.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":292.0,"sonar_lines_to_cover":131.0,"rloc":217.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":9.0,"comment_lines":37.0,"sonar_comment_lines_density":14.6,"sonar_complexity":11.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":122.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/geometryGenerationHelper.ts","children":[]},{"name":"geometryGenerator.ts","type":"File","attributes":{"sonar_coverage":81.7,"sonar_file_complexity":20.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":83.9,"loc":143.0,"sonar_lines_to_cover":56.0,"sonar_major_violations":1.0,"sonar_minor_violations":1.0,"rloc":112.0,"branch_coverage":73.3,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":13.0,"comment_lines":1.0,"sonar_comment_lines_density":0.9,"sonar_complexity":20.0,"sonar_conditions_to_cover":15.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":50.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":9.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/geometryGenerator.ts","children":[]},{"name":"postprocessor","type":"Folder","attributes":{},"children":[{"name":"customComposer.ts","type":"File","attributes":{"sonar_coverage":82.1,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":5.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":82.6,"loc":87.0,"sonar_lines_to_cover":46.0,"sonar_minor_violations":1.0,"rloc":69.0,"sonar_major_violations":0.0,"branch_coverage":81.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":16.0,"comment_lines":2.0,"sonar_comment_lines_density":2.8,"sonar_complexity":16.0,"sonar_conditions_to_cover":21.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":46.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":8.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/postprocessor/customComposer.ts","children":[]},{"name":"customComposer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"shaders","type":"Folder","attributes":{},"children":[{"name":"loaders","type":"Folder","attributes":{},"children":[{"name":"codeMapShaderStrings.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":3.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/shaders/loaders/codeMapShaderStrings.ts","children":[]},{"name":"fxaaShaderStrings.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":5.0,"sonar_minor_violations":2.0,"rloc":22.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":1.5,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/rendering/shaders/loaders/fxaaShaderStrings.ts","children":[]}]},{"name":"glsl","type":"Folder","attributes":{},"link":"","children":[{"name":"codeMapFragmentShader.glsl","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMapVertexShader.glsl","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fxaaFragmentShader.glsl","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fxaaVertexShader.glsl","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"rendering.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMapBuilding.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMapMesh.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"geometryGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"rendering.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"threeViewer","type":"Folder","attributes":{},"children":[{"name":"floorLabels","type":"Folder","attributes":{},"children":[{"name":"floorLabelDrawer.ts","type":"File","attributes":{"sonar_coverage":96.1,"sonar_file_complexity":23.0,"sonar_files":1.0,"functions":10.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":97.8,"loc":195.0,"sonar_lines_to_cover":90.0,"sonar_major_violations":3.0,"rloc":148.0,"sonar_minor_violations":0.0,"branch_coverage":83.3,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":17.0,"comment_lines":9.0,"sonar_comment_lines_density":5.7,"sonar_complexity":23.0,"sonar_conditions_to_cover":12.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":87.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":2.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/floorLabels/floorLabelDrawer.ts","children":[]},{"name":"floorLabelHelper.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":8.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/floorLabels/floorLabelHelper.ts","children":[]},{"name":"floorLabelDrawer.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"floorLabelHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"threeCamera.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":11.0,"sonar_minor_violations":3.0,"rloc":18.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"comment_lines":1.0,"sonar_comment_lines_density":5.3,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":11.1,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeCamera.service.ts","children":[]},{"name":"threeMapControls.service.ts","type":"File","attributes":{"line_coverage":95.0,"loc":202.0,"sonar_lines_to_cover":101.0,"rloc":154.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":95.2,"sonar_file_complexity":25.0,"sonar_files":1.0,"functions":22.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":3.0,"sonar_comment_lines_density":1.9,"sonar_complexity":25.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":84.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":5.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeMapControls.service.ts","children":[]},{"name":"threeRenderer.service.ts","type":"File","attributes":{"line_coverage":96.1,"loc":139.0,"sonar_lines_to_cover":77.0,"sonar_major_violations":6.0,"sonar_minor_violations":7.0,"rloc":119.0,"sonar_coverage":90.6,"sonar_file_complexity":21.0,"sonar_files":1.0,"functions":9.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.9,"sonar_classes":1.0,"sonar_code_smells":13.0,"sonar_cognitive_complexity":12.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":21.0,"sonar_conditions_to_cover":29.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":13.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":4.3,"statements":52.0,"sonar_uncovered_conditions":7.0,"sonar_uncovered_lines":3.0,"sonar_violations":13.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeRenderer.service.ts","children":[]},{"name":"threeSceneService.ts","type":"File","attributes":{"line_coverage":85.7,"loc":443.0,"sonar_lines_to_cover":217.0,"sonar_major_violations":9.0,"rloc":357.0,"sonar_minor_violations":0.0,"sonar_coverage":77.7,"sonar_file_complexity":82.0,"sonar_files":1.0,"functions":42.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":52.9,"sonar_classes":1.0,"sonar_code_smells":10.0,"sonar_cognitive_complexity":47.0,"comment_lines":6.0,"sonar_comment_lines_density":1.7,"sonar_complexity":82.0,"sonar_conditions_to_cover":70.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":10.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":192.0,"sonar_uncovered_conditions":33.0,"sonar_uncovered_lines":31.0,"sonar_violations":10.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeSceneService.ts","children":[]},{"name":"threeStats.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":89.0,"sonar_lines_to_cover":47.0,"sonar_major_violations":4.0,"rloc":73.0,"sonar_minor_violations":0.0,"sonar_coverage":98.2,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":12.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":16.0,"sonar_conditions_to_cover":8.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":35.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeStats.service.ts","children":[]},{"name":"threeViewer.service.ts","type":"File","attributes":{"line_coverage":69.8,"loc":116.0,"sonar_lines_to_cover":63.0,"sonar_major_violations":5.0,"rloc":95.0,"sonar_minor_violations":0.0,"sonar_coverage":56.8,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":16.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":11.1,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":18.0,"sonar_conditions_to_cover":18.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":48.0,"sonar_uncovered_conditions":16.0,"sonar_uncovered_lines":19.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/codeMap/threeViewer/threeViewer.service.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"threeMapControls.service.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"threeCamera.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeMapControls.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeRenderer.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeSceneService.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeStats.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"threeViewer.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"codeMap.render.service.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"codeMap.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMap.label.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMap.mouseEvent.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMap.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMap.render.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorPicker","type":"Folder","attributes":{},"children":[{"name":"colorPicker.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":17.0,"sonar_major_violations":1.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":1.1,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPicker/colorPicker.component.html","children":[]},{"name":"colorPicker.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPicker/colorPicker.component.scss","children":[]},{"name":"colorPicker.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":51.0,"sonar_lines_to_cover":17.0,"rloc":39.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPicker/colorPicker.component.ts","children":[]},{"name":"colorPicker.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorPickerForMapColor","type":"Folder","attributes":{},"children":[{"name":"colorPickerForMapColor.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPickerForMapColor/colorPickerForMapColor.component.html","children":[]},{"name":"colorPickerForMapColor.component.ts","type":"File","attributes":{"sonar_coverage":94.1,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":94.1,"loc":38.0,"sonar_lines_to_cover":17.0,"sonar_major_violations":1.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPickerForMapColor/colorPickerForMapColor.component.ts","children":[]},{"name":"mapColorLabel.pipe.ts","type":"File","attributes":{"sonar_coverage":87.0,"sonar_file_complexity":17.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":90.0,"loc":63.0,"sonar_lines_to_cover":30.0,"rloc":59.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":81.3,"sonar_classes":1.0,"sonar_cognitive_complexity":13.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":17.0,"sonar_conditions_to_cover":16.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":28.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/colorPickerForMapColor/mapColorLabel.pipe.ts","children":[]},{"name":"colorPickerForMapColor.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapColorLabel.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"copyToClipboardButton","type":"Folder","attributes":{},"children":[{"name":"copyToClipboard.service.ts","type":"File","attributes":{"sonar_coverage":84.6,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":84.6,"loc":25.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":6.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/copyToClipboard.service.ts","children":[]},{"name":"copyToClipboardButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":3.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/copyToClipboardButton.component.html","children":[]},{"name":"copyToClipboardButton.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":6.0,"sonar_major_violations":1.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/copyToClipboardButton.component.ts","children":[]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"clipboardString.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":9.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":1.0,"sonar_comment_lines_density":5.6,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/util/clipboardString.ts","children":[]},{"name":"getFilenamesWithHighestMetrics.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":15.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":62.0,"sonar_lines_to_cover":24.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":15.0,"sonar_conditions_to_cover":17.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":23.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/copyToClipboardButton/util/getFilenamesWithHighestMetrics.ts","children":[]},{"name":"clipboardString.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getFilenamesWithHighestMetric.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"copyToClipboard.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"copyToClipboardButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigs","type":"Folder","attributes":{},"children":[{"name":"addCustomConfigButton","type":"Folder","attributes":{},"children":[{"name":"addCustomConfigButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.html","children":[]},{"name":"addCustomConfigButton.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":6.0,"sonar_major_violations":1.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.ts","children":[]},{"name":"addCustomConfigDialog","type":"Folder","attributes":{},"children":[{"name":"addCustomConfigDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":38.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.html","children":[]},{"name":"addCustomConfigDialog.component.ts","type":"File","attributes":{"sonar_coverage":97.3,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":96.0,"sonar_lines_to_cover":33.0,"sonar_major_violations":3.0,"rloc":89.0,"sonar_minor_violations":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":13.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.ts","children":[]},{"name":"downloadAndPurgeConfigs","type":"Folder","attributes":{},"children":[{"name":"downloadAndCollectPurgeableConfigs.ts","type":"File","attributes":{"sonar_coverage":95.8,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":34.0,"sonar_lines_to_cover":17.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":85.7,"sonar_classes":0.0,"sonar_cognitive_complexity":6.0,"comment_lines":2.0,"sonar_comment_lines_density":8.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":16.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndCollectPurgeableConfigs.ts","children":[]},{"name":"downloadAndPurgeConfigs.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":12.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.html","children":[]},{"name":"downloadAndPurgeConfigs.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":23.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.scss","children":[]},{"name":"downloadAndPurgeConfigs.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":53.0,"sonar_lines_to_cover":20.0,"sonar_major_violations":1.0,"rloc":46.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.ts","children":[]},{"name":"validateLocalStorageSize.ts","type":"File","attributes":{"line_coverage":85.7,"loc":17.0,"sonar_lines_to_cover":7.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":85.7,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":5.0,"sonar_comment_lines_density":35.7,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/validateLocalStorageSize.ts","children":[]},{"name":"downloadAndCollectPurgeableConfigs.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"downloadAndPurgeConfigs.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"addCustomConfigDialog.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"addCustomConfigButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigButtons.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":24.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigButtons.scss","children":[]},{"name":"customConfigHelper.service.ts","type":"File","attributes":{"sonar_coverage":61.5,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":61.5,"loc":24.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":0.0,"sonar_uncovered_lines":5.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigHelper.service.ts","children":[]},{"name":"customConfigList","type":"Folder","attributes":{},"children":[{"name":"customConfigItemGroup","type":"Folder","attributes":{},"children":[{"name":"customConfig2ApplicableColor.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":7.0,"sonar_major_violations":1.0,"rloc":16.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableColor.pipe.ts","children":[]},{"name":"customConfig2ApplicableMessage.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":27.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableMessage.pipe.ts","children":[]},{"name":"customConfigDescription","type":"Folder","attributes":{},"children":[{"name":"applyCustomConfigButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":27.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.html","children":[]},{"name":"applyCustomConfigButton.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":54.0,"rloc":45.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.scss","children":[]},{"name":"applyCustomConfigButton.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":39.0,"sonar_lines_to_cover":15.0,"sonar_major_violations":4.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.8,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.ts","children":[]},{"name":"customConfigColorSchemaBySelectionMode.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":5.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/customConfigColorSchemaBySelectionMode.pipe.ts","children":[]},{"name":"filterCustomConfigDataBySearchTerm.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":9.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/filterCustomConfigDataBySearchTerm.pipe.ts","children":[]},{"name":"applyCustomConfigButton.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfigColorSchemaBySelectionMode.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"filterCustomConfigDataBySearchTerm.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigItemGroup.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":61.0,"rloc":60.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.html","children":[]},{"name":"customConfigItemGroup.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":51.0,"rloc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.scss","children":[]},{"name":"customConfigItemGroup.component.ts","type":"File","attributes":{"sonar_coverage":93.8,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":94.7,"loc":94.0,"sonar_lines_to_cover":38.0,"sonar_major_violations":4.0,"rloc":87.0,"sonar_minor_violations":0.0,"branch_coverage":90.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":15.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":14.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":15.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":2.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.ts","children":[]},{"name":"getMissingCustomConfigModeAndMaps.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":9.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/getMissingCustomConfigModeAndMaps.ts","children":[]},{"name":"customConfig2ApplicableColor.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfig2ApplicableMessage.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfigItemGroup.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getMissingCustomConfigModeAndMaps.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigList.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":51.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.html","children":[]},{"name":"customConfigList.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":27.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.scss","children":[]},{"name":"customConfigList.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":50.0,"sonar_lines_to_cover":21.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.ts","children":[]},{"name":"getCustomConfigItemGroups.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":54.0,"sonar_lines_to_cover":18.0,"rloc":45.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":16.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigList/getCustomConfigItemGroups.ts","children":[]},{"name":"customConfigList.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getCustomConfigItemGroups.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigNoteDialogButton","type":"Folder","attributes":{},"children":[{"name":"customConfigNoteDialog","type":"Folder","attributes":{},"children":[{"name":"customConfigNoteDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":13.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.html","children":[]},{"name":"customConfigNoteDialog.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":32.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.scss","children":[]},{"name":"customConfigNoteDialog.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":10.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.ts","children":[]}]},{"name":"customConfigNoteDialogButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.html","children":[]},{"name":"customConfigNoteDialogButton.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":15.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.scss","children":[]},{"name":"customConfigNoteDialogButton.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":12.0,"sonar_major_violations":1.0,"rloc":29.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.ts","children":[]},{"name":"customConfigNoteDialogButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigs.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigs.component.html","children":[]},{"name":"customConfigs.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigs.component.scss","children":[]},{"name":"customConfigs.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":51.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":44.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/customConfigs.component.ts","children":[]},{"name":"downloadCustomConfigsButton","type":"Folder","attributes":{},"children":[{"name":"downloadCustomConfigHelper.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":9.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigHelper.ts","children":[]},{"name":"downloadCustomConfigsButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigsButton.component.html","children":[]},{"name":"downloadCustomConfigsButton.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":34.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigsButton.component.ts","children":[]},{"name":"getDownloadableCustomConfigs.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":10.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":1.0,"sonar_comment_lines_density":4.5,"sonar_complexity":5.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/getDownloadableCustomConfigs.ts","children":[]},{"name":"downloadCustomConfigButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getDownloadableCustomConfigs.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"uploadCustomConfigButton","type":"Folder","attributes":{},"children":[{"name":"uploadCustomConfigButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.component.html","children":[]},{"name":"uploadCustomConfigButton.component.ts","type":"File","attributes":{"line_coverage":38.5,"loc":32.0,"sonar_lines_to_cover":13.0,"rloc":28.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":38.5,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":1.0,"sonar_comment_lines_density":3.4,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":9.0,"sonar_uncovered_lines":8.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.component.ts","children":[]},{"name":"uploadCustomConfigButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"visibleFilesBySelectionMode.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":12.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/customConfigs/visibleFilesBySelectionMode.selector.ts","children":[]},{"name":"customConfigs.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"visibleFilesBySelectionMode.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"dialogs","type":"Folder","attributes":{},"children":[{"name":"changelogDialog","type":"Folder","attributes":{},"children":[{"name":"changelogDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":21.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.html","children":[]},{"name":"changelogDialog.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":74.0,"sonar_lines_to_cover":37.0,"rloc":60.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":9.0,"comment_lines":2.0,"sonar_comment_lines_density":3.2,"sonar_complexity":14.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":30.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.ts","children":[]},{"name":"changelogDialog.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"changelogDialog.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"confirmationDialog","type":"Folder","attributes":{},"children":[{"name":"confirmationDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.html","children":[]},{"name":"confirmationDialog.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":6.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.ts","children":[]}]},{"name":"dialogs.ts","type":"File","attributes":{"sonar_coverage":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":0.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/dialogs.ts","children":[]},{"name":"errorDialog","type":"Folder","attributes":{},"children":[{"name":"errorDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":11.0,"sonar_major_violations":1.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":2.1,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.html","children":[]},{"name":"errorDialog.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":7.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.ts","children":[]},{"name":"errorDialog.component.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"export3DMapButton","type":"Folder","attributes":{},"children":[{"name":"export3DMapButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":2.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapButton.component.html","children":[]},{"name":"export3DMapButton.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":6.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":65.0,"sonar_lines_to_cover":28.0,"sonar_major_violations":3.0,"rloc":59.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":4.0,"comment_lines":1.0,"sonar_comment_lines_density":1.7,"sonar_complexity":8.0,"sonar_conditions_to_cover":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":14.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapButton.component.ts","children":[]},{"name":"export3DMapDialog","type":"Folder","attributes":{},"children":[{"name":"export3DMapDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":110.0,"rloc":96.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapDialog/export3DMapDialog.component.html","children":[]},{"name":"export3DMapDialog.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapDialog/export3DMapDialog.component.scss","children":[]},{"name":"export3DMapDialog.component.ts","type":"File","attributes":{"sonar_coverage":77.0,"sonar_file_complexity":43.0,"sonar_files":1.0,"functions":32.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":79.2,"loc":378.0,"sonar_lines_to_cover":159.0,"sonar_major_violations":3.0,"rloc":327.0,"sonar_minor_violations":0.0,"branch_coverage":65.6,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":7.0,"comment_lines":10.0,"sonar_comment_lines_density":3.0,"sonar_complexity":43.0,"sonar_conditions_to_cover":32.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":110.0,"sonar_uncovered_conditions":11.0,"sonar_uncovered_lines":33.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/export3DMapButton/export3DMapDialog/export3DMapDialog.component.ts","children":[]},{"name":"export3DMapDialog.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"export3DMapButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"fileExtensionBar","type":"Folder","attributes":{},"children":[{"name":"distributionMetricChooser","type":"Folder","attributes":{},"children":[{"name":"distributionMetricChooser.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.html","children":[]},{"name":"distributionMetricChooser.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":10.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.scss","children":[]},{"name":"distributionMetricChooser.component.ts","type":"File","attributes":{"sonar_coverage":90.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":90.0,"loc":25.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.ts","children":[]}]},{"name":"fileExtensionBar.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":44.0,"rloc":40.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.html","children":[]},{"name":"fileExtensionBar.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":81.0,"rloc":69.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.scss","children":[]},{"name":"fileExtensionBar.component.ts","type":"File","attributes":{"sonar_coverage":90.9,"sonar_file_complexity":13.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":96.3,"loc":65.0,"sonar_lines_to_cover":27.0,"sonar_major_violations":2.0,"rloc":56.0,"sonar_minor_violations":0.0,"branch_coverage":66.7,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":10.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":13.0,"sonar_conditions_to_cover":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":17.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"fileExtensionCalculator.ts","type":"File","attributes":{"sonar_coverage":95.9,"sonar_file_complexity":25.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":98.1,"loc":124.0,"sonar_lines_to_cover":54.0,"sonar_major_violations":1.0,"rloc":106.0,"sonar_minor_violations":0.0,"branch_coverage":89.5,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":23.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":25.0,"sonar_conditions_to_cover":19.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":51.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/selectors/fileExtensionCalculator.ts","children":[]},{"name":"metricDistribution.selector.ts","type":"File","attributes":{"line_coverage":83.3,"loc":12.0,"sonar_lines_to_cover":6.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":83.3,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/fileExtensionBar/selectors/metricDistribution.selector.ts","children":[]},{"name":"fileExtensionCalculator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"fileExtensionBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"filePanel","type":"Folder","attributes":{},"children":[{"name":"filePanel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":7.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanel.component.html","children":[]},{"name":"filePanel.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":11.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanel.component.scss","children":[]},{"name":"filePanel.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanel.component.ts","children":[]},{"name":"filePanelDeltaSelector","type":"Folder","attributes":{},"children":[{"name":"filePanelDeltaSelector.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":38.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.html","children":[]},{"name":"filePanelDeltaSelector.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":48.0,"rloc":39.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.scss","children":[]},{"name":"filePanelDeltaSelector.component.ts","type":"File","attributes":{"sonar_coverage":68.5,"sonar_file_complexity":30.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":79.2,"loc":117.0,"sonar_lines_to_cover":48.0,"sonar_major_violations":2.0,"rloc":101.0,"sonar_minor_violations":0.0,"branch_coverage":48.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":14.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":30.0,"sonar_conditions_to_cover":25.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":27.0,"sonar_uncovered_conditions":13.0,"sonar_uncovered_lines":10.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.ts","children":[]},{"name":"incompatibleMapsDialog","type":"Folder","attributes":{},"children":[{"name":"incompatibleMapsDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":16.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/incompatibleMapsDialog/incompatibleMapsDialog.component.html","children":[]},{"name":"incompatibleMapsDialog.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/incompatibleMapsDialog/incompatibleMapsDialog.component.scss","children":[]},{"name":"incompatibleMapsDialog.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":10.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/incompatibleMapsDialog/incompatibleMapsDialog.component.ts","children":[]},{"name":"incompatibleMapsDialog.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"pictogramBackground.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelDeltaSelector/pictogramBackground.selector.ts","children":[]},{"name":"filePanelDeltaSelector.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"pictogramBackground.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"filePanelFileSelector","type":"Folder","attributes":{},"children":[{"name":"filePanelFileSelector.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":36.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.html","children":[]},{"name":"filePanelFileSelector.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":23.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.scss","children":[]},{"name":"filePanelFileSelector.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":49.0,"sonar_files":1.0,"functions":36.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":165.0,"sonar_lines_to_cover":80.0,"rloc":139.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":17.0,"comment_lines":1.0,"sonar_comment_lines_density":0.7,"sonar_complexity":49.0,"sonar_conditions_to_cover":18.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":57.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.ts","children":[]},{"name":"removeOrAddFileButton","type":"Folder","attributes":{},"children":[{"name":"removeOrAddFileButton.component.html","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/removeOrAddFileButton/removeOrAddFileButton.component.html","children":[]},{"name":"removeOrAddFileButton.component.scss","type":"File","attributes":{"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/removeOrAddFileButton/removeOrAddFileButton.component.scss","children":[]},{"name":"removeOrAddFileButton.component.ts","type":"File","attributes":{"line_coverage":50.0,"loc":21.0,"sonar_lines_to_cover":6.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":50.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelFileSelector/removeOrAddFileButton/removeOrAddFileButton.component.ts","children":[]}]},{"name":"filePanelFileSelector.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"filePanelStateButtons","type":"Folder","attributes":{},"children":[{"name":"filePanelStateButtons.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":19.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.html","children":[]},{"name":"filePanelStateButtons.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":32.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.scss","children":[]},{"name":"filePanelStateButtons.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.ts","children":[]}]},{"name":"fileSelectionMode.service.ts","type":"File","attributes":{"sonar_coverage":95.1,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":59.0,"sonar_lines_to_cover":25.0,"sonar_major_violations":3.0,"rloc":46.0,"sonar_minor_violations":0.0,"branch_coverage":87.5,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":3.0,"comment_lines":6.0,"sonar_comment_lines_density":11.5,"sonar_complexity":16.0,"sonar_conditions_to_cover":16.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":11.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/filePanel/fileSelectionMode.service.ts","children":[]},{"name":"filePanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"filePanel.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileSelectionMode.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"labelledColorPicker","type":"Folder","attributes":{},"children":[{"name":"labelledColorPicker.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":31.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.html","children":[]},{"name":"labelledColorPicker.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":47.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":5.0,"sonar_comment_lines_density":12.2,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.scss","children":[]},{"name":"labelledColorPicker.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":6.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.ts","children":[]},{"name":"readableColorForBackground.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":4.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/labelledColorPicker/readableColorForBackground.pipe.ts","children":[]},{"name":"labelledColorPicker.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"legendPanel","type":"Folder","attributes":{},"children":[{"name":"legendBlock","type":"Folder","attributes":{},"children":[{"name":"legendBlock.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":26.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.html","children":[]},{"name":"legendBlock.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":32.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.scss","children":[]},{"name":"legendBlock.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.ts","children":[]}]},{"name":"legendMarkedPackages","type":"Folder","attributes":{},"children":[{"name":"legendMarkedPackages.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":11.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.html","children":[]},{"name":"legendMarkedPackages.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.scss","children":[]},{"name":"legendMarkedPackages.component.ts","type":"File","attributes":{"sonar_coverage":86.7,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":86.7,"loc":44.0,"sonar_lines_to_cover":15.0,"sonar_major_violations":1.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":5.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.ts","children":[]},{"name":"legendMarkedPackages.selector.ts","type":"File","attributes":{"sonar_coverage":33.3,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":37.5,"loc":18.0,"sonar_lines_to_cover":8.0,"sonar_major_violations":1.0,"rloc":15.0,"sonar_minor_violations":0.0,"branch_coverage":0.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":1.1,"statements":5.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":5.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.selector.ts","children":[]},{"name":"legendMarkedPackages.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"legendPanel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":49.0,"rloc":44.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendPanel.component.html","children":[]},{"name":"legendPanel.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":62.0,"rloc":53.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendPanel.component.scss","children":[]},{"name":"legendPanel.component.ts","type":"File","attributes":{"sonar_coverage":97.6,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":67.0,"sonar_lines_to_cover":35.0,"sonar_major_violations":1.0,"rloc":58.0,"sonar_minor_violations":0.0,"branch_coverage":85.7,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":7.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":12.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/legendPanel/legendPanel.component.ts","children":[]},{"name":"legendPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"legendPanel.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"legendPanel.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"loadingFileProgressSpinner","type":"Folder","attributes":{},"children":[{"name":"loadingFileProgressSpinner.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.html","children":[]},{"name":"loadingFileProgressSpinner.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":17.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.scss","children":[]},{"name":"loadingFileProgressSpinner.component.ts","type":"File","attributes":{"sonar_coverage":85.7,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":85.7,"loc":23.0,"sonar_lines_to_cover":7.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.ts","children":[]}]},{"name":"logo","type":"Folder","attributes":{},"children":[{"name":"logo.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/logo/logo.component.html","children":[]},{"name":"logo.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":25.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/logo/logo.component.scss","children":[]},{"name":"logo.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":4.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/logo/logo.component.ts","children":[]},{"name":"logo.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricChooser","type":"Folder","attributes":{},"children":[{"name":"filterMetricDataBySearchTerm.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":8.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":2.0,"sonar_comment_lines_density":10.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/filterMetricDataBySearchTerm.pipe.ts","children":[]},{"name":"metricChooser.component.html","type":"File","attributes":{"loc":51.0,"rloc":46.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooser.component.html","children":[]},{"name":"metricChooser.component.scss","type":"File","attributes":{"loc":27.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooser.component.scss","children":[]},{"name":"metricChooser.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":110.0,"sonar_lines_to_cover":45.0,"sonar_major_violations":2.0,"rloc":97.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":24.0,"sonar_files":1.0,"functions":12.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":10.0,"comment_lines":1.0,"sonar_comment_lines_density":1.0,"sonar_complexity":24.0,"sonar_conditions_to_cover":18.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.6,"statements":21.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooser.component.ts","children":[]},{"name":"metricChooserType","type":"Folder","attributes":{},"children":[{"name":"createAttributeTypeSelector.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":7.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserType/createAttributeTypeSelector.selector.ts","children":[]},{"name":"metricChooserType.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserType/metricChooserType.component.html","children":[]},{"name":"metricChooserType.component.ts","type":"File","attributes":{"line_coverage":95.0,"loc":47.0,"sonar_lines_to_cover":20.0,"sonar_major_violations":3.0,"sonar_minor_violations":2.0,"rloc":40.0,"sonar_coverage":90.9,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.7,"statements":8.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserType/metricChooserType.component.ts","children":[]},{"name":"createAttributeType.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"metricChooserType.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricChooserValue","type":"Folder","attributes":{},"children":[{"name":"metricChooserValue.component.html","type":"File","attributes":{"loc":13.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserValue/metricChooserValue.component.html","children":[]},{"name":"metricChooserValue.component.scss","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserValue/metricChooserValue.component.scss","children":[]},{"name":"metricChooserValue.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":17.0,"sonar_major_violations":2.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/metricChooserValue/metricChooserValue.component.ts","children":[]},{"name":"metricChooserValue.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"nodeSelection.service.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":23.0,"sonar_major_violations":2.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_coverage":97.0,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":90.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":8.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/metricChooser/nodeSelection.service.ts","children":[]},{"name":"metricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeselection.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetMapButton","type":"Folder","attributes":{},"children":[{"name":"confirmResetMapDialog","type":"Folder","attributes":{},"children":[{"name":"confirmResetMapDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":15.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetMapButton/confirmResetMapDialog/confirmResetMapDialog.component.html","children":[]},{"name":"confirmResetMapDialog.component.ts","type":"File","attributes":{"sonar_coverage":97.4,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":97.2,"loc":68.0,"sonar_lines_to_cover":36.0,"sonar_major_violations":5.0,"rloc":61.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":14.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetMapButton/confirmResetMapDialog/confirmResetMapDialog.component.ts","children":[]},{"name":"confirmResetMapDialog.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetMapButton.component.html","type":"File","attributes":{"loc":2.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetMapButton/resetMapButton.component.html","children":[]},{"name":"resetMapButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":7.0,"sonar_major_violations":1.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetMapButton/resetMapButton.component.ts","children":[]},{"name":"resetMapButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"resetSettingsButton","type":"Folder","attributes":{},"children":[{"name":"getPartialDefaultState.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_critical_violations":1.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":26.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":17.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.6,"statements":24.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetSettingsButton/getPartialDefaultState.ts","children":[]},{"name":"resetSettingsButton.component.html","type":"File","attributes":{"loc":7.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.html","children":[]},{"name":"resetSettingsButton.component.scss","type":"File","attributes":{"loc":28.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.scss","children":[]},{"name":"resetSettingsButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":33.0,"sonar_lines_to_cover":11.0,"sonar_major_violations":2.0,"rloc":28.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.ts","children":[]},{"name":"getPartialDefaultState.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"resetSettingsButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"ribbonBar","type":"Folder","attributes":{},"children":[{"name":"areaMetricChooser","type":"Folder","attributes":{},"children":[{"name":"areaMetricChooser.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":9.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.html","children":[]},{"name":"areaMetricChooser.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.ts","children":[]},{"name":"areaMetricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"areaSettingsPanel","type":"Folder","attributes":{},"children":[{"name":"areaSettingsPanel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":19.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.html","children":[]},{"name":"areaSettingsPanel.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.scss","children":[]},{"name":"areaSettingsPanel.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":23.0,"sonar_major_violations":1.0,"sonar_minor_violations":1.0,"rloc":37.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":2.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.ts","children":[]},{"name":"areaSettingsPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"artificialIntelligence","type":"Folder","attributes":{},"children":[{"name":"artificialIntelligence.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.html","children":[]},{"name":"artificialIntelligence.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.scss","children":[]},{"name":"artificialIntelligence.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.ts","children":[]},{"name":"highRiskProfile","type":"Folder","attributes":{},"children":[{"name":"highRiskProfile.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":69.0,"rloc":67.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.html","children":[]},{"name":"highRiskProfile.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":37.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.scss","children":[]},{"name":"highRiskProfile.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":5.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.ts","children":[]},{"name":"riskProfileBar.directive.ts","type":"File","attributes":{"line_coverage":100.0,"loc":20.0,"sonar_lines_to_cover":8.0,"sonar_major_violations":1.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/riskProfileBar.directive.ts","children":[]},{"name":"highRiskProfile.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"artificialIntelligence.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":100.0,"sonar_lines_to_cover":43.0,"rloc":86.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":13.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":18.0,"sonar_conditions_to_cover":19.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":34.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/artificialIntelligence.selector.ts","children":[]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"artificialIntelligence.metricThresholds.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":161.0,"sonar_lines_to_cover":1.0,"rloc":151.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":6.0,"sonar_comment_lines_density":3.8,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/artificialIntelligence.metricThresholds.ts","children":[]},{"name":"getMetricThresholds.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":3.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/getMetricThresholds.ts","children":[]},{"name":"mainProgrammingLanguageHelper.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":7.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/mainProgrammingLanguageHelper.ts","children":[]},{"name":"riskProfileHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":21.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_conditions_to_cover":6.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":17.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/riskProfileHelper.ts","children":[]},{"name":"suspiciousMetricsHelper.ts","type":"File","attributes":{"line_coverage":97.8,"loc":121.0,"sonar_lines_to_cover":46.0,"rloc":100.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":97.3,"sonar_file_complexity":22.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":96.6,"sonar_classes":0.0,"sonar_cognitive_complexity":24.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":22.0,"sonar_conditions_to_cover":29.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":45.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/util/suspiciousMetricsHelper.ts","children":[]},{"name":"mainProgrammingLanguageHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"riskProfileHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"suspiciousMetricsHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"artificialIntelligence.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"suspiciousMetrics","type":"Folder","attributes":{},"children":[{"name":"suspiciousMetrics.component.html","type":"File","attributes":{"loc":20.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.html","children":[]},{"name":"suspiciousMetrics.component.scss","type":"File","attributes":{"loc":11.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.scss","children":[]},{"name":"suspiciousMetrics.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":11.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.ts","children":[]},{"name":"suspiciousMetricsMenu","type":"Folder","attributes":{},"children":[{"name":"suspiciousMetricsDialog","type":"Folder","attributes":{},"children":[{"name":"suspiciousMetricDialog.component.html","type":"File","attributes":{"loc":16.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsDialog/suspiciousMetricDialog.component.html","children":[]},{"name":"suspiciousMetricsDialog.component.scss","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsDialog/suspiciousMetricsDialog.component.scss","children":[]},{"name":"suspiciousMetricsDialog.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":5.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsDialog/suspiciousMetricsDialog.component.ts","children":[]}]},{"name":"suspiciousMetricsList","type":"Folder","attributes":{},"children":[{"name":"suspiciousMetricsList.component.html","type":"File","attributes":{"loc":58.0,"rloc":56.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsList/suspiciousMetricsList.component.html","children":[]},{"name":"suspiciousMetricsList.component.scss","type":"File","attributes":{"loc":32.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsList/suspiciousMetricsList.component.scss","children":[]},{"name":"suspiciousMetricsList.component.ts","type":"File","attributes":{"line_coverage":97.3,"loc":83.0,"sonar_lines_to_cover":37.0,"sonar_major_violations":1.0,"rloc":76.0,"sonar_minor_violations":0.0,"sonar_coverage":97.9,"sonar_file_complexity":11.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":11.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":15.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsList/suspiciousMetricsList.component.ts","children":[]}]},{"name":"suspiciousMetricsMenu.component.html","type":"File","attributes":{"loc":17.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsMenu.component.html","children":[]},{"name":"suspiciousMetricsMenu.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsMenu.component.scss","children":[]},{"name":"suspiciousMetricsMenu.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":35.0,"sonar_lines_to_cover":11.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/suspiciousMetricsMenu.component.ts","children":[]},{"name":"unsuspiciousMetricsList","type":"Folder","attributes":{},"children":[{"name":"unsuspiciousMetricsList.component.html","type":"File","attributes":{"loc":28.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/unsuspiciousMetricsList/unsuspiciousMetricsList.component.html","children":[]},{"name":"unsuspiciousMetricsList.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":5.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/unsuspiciousMetricsList/unsuspiciousMetricsList.component.ts","children":[]}]},{"name":"untrackedMetricsList","type":"Folder","attributes":{},"children":[{"name":"untrackedMetricsList.component.html","type":"File","attributes":{"loc":31.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/untrackedMetricsList/untrackedMetricsList.component.html","children":[]},{"name":"untrackedMetricsList.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":5.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetricsMenu/untrackedMetricsList/untrackedMetricsList.component.ts","children":[]}]}]},{"name":"suspiciousMetrics.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"colorMetricChooser","type":"Folder","attributes":{},"children":[{"name":"colorMetricChooser.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":10.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.html","children":[]},{"name":"colorMetricChooser.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":26.0,"sonar_lines_to_cover":12.0,"sonar_major_violations":1.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.ts","children":[]},{"name":"colorMetricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"colorSettingsPanel","type":"Folder","attributes":{},"children":[{"name":"colorSettingsPanel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":93.0,"rloc":90.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.html","children":[]},{"name":"colorSettingsPanel.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":21.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.scss","children":[]},{"name":"colorSettingsPanel.component.ts","type":"File","attributes":{"sonar_coverage":95.1,"sonar_file_complexity":15.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":95.5,"loc":123.0,"sonar_lines_to_cover":67.0,"sonar_major_violations":3.0,"rloc":109.0,"sonar_minor_violations":0.0,"branch_coverage":92.9,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":15.0,"sonar_conditions_to_cover":14.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":24.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":3.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.ts","children":[]},{"name":"metricColorRangeDiagram","type":"Folder","attributes":{},"children":[{"name":"metricColorRangeDiagram.component.html","type":"File","attributes":{"loc":2.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeDiagram/metricColorRangeDiagram.component.html","children":[]},{"name":"metricColorRangeDiagram.component.scss","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeDiagram/metricColorRangeDiagram.component.scss","children":[]},{"name":"metricColorRangeDiagram.component.ts","type":"File","attributes":{"line_coverage":98.4,"loc":418.0,"sonar_lines_to_cover":123.0,"sonar_major_violations":1.0,"rloc":363.0,"sonar_minor_violations":0.0,"sonar_coverage":96.1,"sonar_file_complexity":58.0,"sonar_files":1.0,"functions":34.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.1,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":31.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":58.0,"sonar_conditions_to_cover":31.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":115.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeDiagram/metricColorRangeDiagram.component.ts","children":[]},{"name":"metricColorRangeDiagram.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricColorRangeSlider","type":"Folder","attributes":{},"children":[{"name":"metricColorRangeSlider.component.html","type":"File","attributes":{"loc":59.0,"rloc":55.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.html","children":[]},{"name":"metricColorRangeSlider.component.scss","type":"File","attributes":{"loc":26.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.scss","children":[]},{"name":"metricColorRangeSlider.component.ts","type":"File","attributes":{"line_coverage":84.3,"loc":139.0,"sonar_lines_to_cover":51.0,"rloc":125.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":86.2,"sonar_file_complexity":15.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":15.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":37.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":8.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.ts","children":[]},{"name":"rangeSliderLabels","type":"Folder","attributes":{},"children":[{"name":"rangeSliderLabels.component.html","type":"File","attributes":{"loc":31.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSliderLabels/rangeSliderLabels.component.html","children":[]},{"name":"rangeSliderLabels.component.scss","type":"File","attributes":{"loc":10.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSliderLabels/rangeSliderLabels.component.scss","children":[]},{"name":"rangeSliderLabels.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":64.0,"sonar_lines_to_cover":22.0,"sonar_major_violations":1.0,"rloc":51.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":16.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSliderLabels/rangeSliderLabels.component.ts","children":[]},{"name":"rangeSliderLabels.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"SliderRangePosition.ts","type":"File","attributes":{"line_coverage":100.0,"loc":143.0,"sonar_lines_to_cover":30.0,"rloc":128.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":5.0,"comment_lines":1.0,"sonar_comment_lines_density":0.8,"sonar_complexity":10.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":30.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/utils/SliderRangePosition.ts","children":[]},{"name":"SliderRangePosition.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"metricColorRangeSlider.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"metricColorRangeColors.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":4.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/selectors/metricColorRangeColors.selector.ts","children":[]},{"name":"metricColorRangeValues.selector.ts","type":"File","attributes":{"line_coverage":100.0,"loc":16.0,"sonar_lines_to_cover":5.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/colorSettingsPanel/selectors/metricColorRangeValues.selector.ts","children":[]}]},{"name":"colorSettingsPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edgeMetricChooser","type":"Folder","attributes":{},"children":[{"name":"edgeMetricChooser.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":21.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.html","children":[]},{"name":"edgeMetricChooser.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.scss","children":[]},{"name":"edgeMetricChooser.component.ts","type":"File","attributes":{"sonar_coverage":93.8,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":96.4,"loc":58.0,"sonar_lines_to_cover":28.0,"sonar_major_violations":4.0,"rloc":49.0,"sonar_minor_violations":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":9.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.ts","children":[]},{"name":"edgeChooser.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"edgeChooser.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"edgeMetricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edgeSettingsPanel","type":"Folder","attributes":{},"children":[{"name":"edgeMetricToggle","type":"Folder","attributes":{},"children":[{"name":"edgeMetricToggle.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.html","children":[]},{"name":"edgeMetricToggle.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":29.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.ts","children":[]},{"name":"edgeMetricToggle.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"edgeSettingsPanel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":40.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.html","children":[]},{"name":"edgeSettingsPanel.component.ts","type":"File","attributes":{"sonar_coverage":89.7,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":89.7,"loc":58.0,"sonar_lines_to_cover":29.0,"sonar_major_violations":1.0,"rloc":52.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":3.0,"sonar_uncovered_lines":3.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"amountOfBuildingsWithSelectedEdgeMetric.selector.ts","type":"File","attributes":{"sonar_coverage":84.6,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":5.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":75.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/edgeSettingsPanel/selectors/amountOfBuildingsWithSelectedEdgeMetric.selector.ts","children":[]}]},{"name":"edgeSettingsPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"heightMetricChooser","type":"Folder","attributes":{},"children":[{"name":"heightMetricChooser.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":9.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightMetricChooser/heightMetricChooser.component.html","children":[]},{"name":"heightMetricChooser.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightMetricChooser/heightMetricChooser.component.ts","children":[]},{"name":"heightMetricChooser.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"heightSettingsPanel","type":"Folder","attributes":{},"children":[{"name":"heightSettingsPanel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":44.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.html","children":[]},{"name":"heightSettingsPanel.component.ts","type":"File","attributes":{"sonar_coverage":86.1,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":86.1,"loc":61.0,"sonar_lines_to_cover":36.0,"sonar_major_violations":1.0,"sonar_minor_violations":1.0,"rloc":52.0,"sonar_classes":1.0,"sonar_code_smells":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":1.4,"statements":5.0,"sonar_uncovered_lines":5.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"isLabelsSliderDisabled.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":4.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/heightSettingsPanel/selectors/isLabelsSliderDisabled.selector.ts","children":[]}]},{"name":"heightSettingsPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"linkColorMetricToHeightMetricButton","type":"Folder","attributes":{},"children":[{"name":"linkColorMetricToHeightMetricButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.html","children":[]},{"name":"linkColorMetricToHeightMetricButton.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":22.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.scss","children":[]},{"name":"linkColorMetricToHeightMetricButton.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.ts","children":[]},{"name":"linkColorMetricToHeightMetricButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"ribbonBar.component.html","type":"File","attributes":{"loc":66.0,"rloc":52.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBar.component.html","children":[]},{"name":"ribbonBar.component.scss","type":"File","attributes":{"loc":46.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBar.component.scss","children":[]},{"name":"ribbonBar.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":56.0,"sonar_lines_to_cover":26.0,"rloc":53.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBar.component.ts","children":[]},{"name":"ribbonBarMenuButton","type":"Folder","attributes":{},"children":[{"name":"ribbonBarMenuButton.component.html","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarMenuButton/ribbonBarMenuButton.component.html","children":[]},{"name":"ribbonBarMenuButton.component.scss","type":"File","attributes":{"loc":15.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarMenuButton/ribbonBarMenuButton.component.scss","children":[]},{"name":"ribbonBarMenuButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":2.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarMenuButton/ribbonBarMenuButton.component.ts","children":[]}]},{"name":"ribbonBarPanel","type":"Folder","attributes":{},"children":[{"name":"ribbonBarPanel.component.html","type":"File","attributes":{"loc":26.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanel.component.html","children":[]},{"name":"ribbonBarPanel.component.scss","type":"File","attributes":{"loc":41.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanel.component.scss","children":[]},{"name":"ribbonBarPanel.component.ts","type":"File","attributes":{"line_coverage":96.7,"loc":107.0,"sonar_lines_to_cover":30.0,"sonar_major_violations":3.0,"rloc":85.0,"sonar_minor_violations":0.0,"sonar_coverage":90.2,"sonar_file_complexity":18.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":83.9,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":5.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":18.0,"sonar_conditions_to_cover":31.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":19.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":1.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanel.component.ts","children":[]},{"name":"ribbonBarPanelSettings.component.scss","type":"File","attributes":{"loc":15.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanelSettings.component.scss","children":[]},{"name":"ribbonBarPanelSettings.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":10.0,"sonar_lines_to_cover":2.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/ribbonBarPanel/ribbonBarPanelSettings.component.ts","children":[]},{"name":"ribbonBarPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"roundedBox","type":"Folder","attributes":{},"children":[{"name":"roundedBox.component.html","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/roundedBox/roundedBox.component.html","children":[]},{"name":"roundedBox.component.scss","type":"File","attributes":{"loc":11.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/roundedBox/roundedBox.component.scss","children":[]},{"name":"roundedBox.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":2.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/roundedBox/roundedBox.component.ts","children":[]}]},{"name":"searchPanel","type":"Folder","attributes":{},"children":[{"name":"blacklistPanel","type":"Folder","attributes":{},"children":[{"name":"blacklistPanel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":49.0,"rloc":45.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/blacklistPanel/blacklistPanel.component.html","children":[]},{"name":"blacklistPanel.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":7.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/blacklistPanel/blacklistPanel.component.scss","children":[]},{"name":"blacklistPanel.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":28.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/blacklistPanel/blacklistPanel.component.ts","children":[]},{"name":"createBlacklistItemSelector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":8.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/blacklistPanel/createBlacklistItemSelector.ts","children":[]},{"name":"blacklistPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"createBlacklistItemSelector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapTreeView","type":"Folder","attributes":{},"children":[{"name":"areaMetricValidPipe.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":5.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":10.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/areaMetricValidPipe.pipe.ts","children":[]},{"name":"isNodeLeaf.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":4.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/isNodeLeaf.pipe.ts","children":[]},{"name":"mapTreeView.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeView.component.html","children":[]},{"name":"mapTreeView.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":7.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeView.component.ts","children":[]},{"name":"mapTreeViewItemIcon","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewItemIcon.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":7.0,"sonar_major_violations":1.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":2.8,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIcon.component.html","children":[]},{"name":"mapTreeViewItemIcon.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":16.0,"sonar_lines_to_cover":4.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIcon.component.ts","children":[]},{"name":"mapTreeViewItemIconClass.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":21.0,"sonar_lines_to_cover":8.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIconClass.pipe.ts","children":[]},{"name":"mapTreeViewItemIconColor.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":33.0,"sonar_lines_to_cover":15.0,"sonar_major_violations":1.0,"rloc":26.0,"sonar_minor_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIconColor.pipe.ts","children":[]},{"name":"mapTreeViewItemIconClass.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapTreeViewItemIconColor.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapTreeViewItemName","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewItemName.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":23.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.html","children":[]},{"name":"mapTreeViewItemName.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":20.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.scss","children":[]},{"name":"mapTreeViewItemName.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":12.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.ts","children":[]},{"name":"mapTreeViewItemName.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapTreeViewItemOptionButtons","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewItemOptionButtons.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":12.0,"sonar_major_violations":1.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":1.7,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.html","children":[]},{"name":"mapTreeViewItemOptionButtons.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":33.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.scss","children":[]},{"name":"mapTreeViewItemOptionButtons.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":13.0,"sonar_lines_to_cover":2.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.ts","children":[]}]},{"name":"mapTreeViewLevel","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewLevel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":39.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.html","children":[]},{"name":"mapTreeViewLevel.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":41.0,"rloc":34.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.scss","children":[]},{"name":"mapTreeViewLevel.component.ts","type":"File","attributes":{"sonar_coverage":83.1,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":85.2,"loc":110.0,"sonar_lines_to_cover":54.0,"sonar_major_violations":6.0,"rloc":93.0,"sonar_minor_violations":0.0,"branch_coverage":60.0,"sonar_classes":1.0,"sonar_code_smells":6.0,"sonar_cognitive_complexity":1.0,"comment_lines":1.0,"sonar_comment_lines_density":1.1,"sonar_complexity":9.0,"sonar_conditions_to_cover":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":6.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":24.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":8.0,"sonar_violations":6.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.ts","children":[]},{"name":"mocks.ts","type":"File","attributes":{"line_coverage":100.0,"loc":43.0,"sonar_lines_to_cover":2.0,"rloc":41.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewLevel/mocks.ts","children":[]},{"name":"mapTreeViewLevel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"mapTreeViewNodeSelector","type":"Folder","attributes":{},"children":[{"name":"mapTreeViewNode.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":8.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":1.0,"sonar_comment_lines_density":6.7,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewNodeSelector/mapTreeViewNode.selector.ts","children":[]},{"name":"sortNode.ts","type":"File","attributes":{"line_coverage":96.2,"loc":49.0,"sonar_lines_to_cover":26.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":94.1,"sonar_file_complexity":13.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":87.5,"sonar_classes":0.0,"sonar_cognitive_complexity":10.0,"comment_lines":1.0,"sonar_comment_lines_density":2.7,"sonar_complexity":13.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":27.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/mapTreeView/mapTreeViewNodeSelector/sortNode.ts","children":[]},{"name":"sortNode.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"areaMetricValidPipe.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"isNodeLeaf.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapTreeView.level.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mapTreeView.level.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"matchingFilesCounter","type":"Folder","attributes":{},"children":[{"name":"matchingFilesCounter.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":18.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/matchingFilesCounter/matchingFilesCounter.component.html","children":[]},{"name":"matchingFilesCounter.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":36.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/matchingFilesCounter/matchingFilesCounter.component.scss","children":[]},{"name":"matchingFilesCounter.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":25.0,"sonar_lines_to_cover":9.0,"rloc":22.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/matchingFilesCounter/matchingFilesCounter.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"matchingFilesCounter.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":40.0,"sonar_lines_to_cover":11.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/matchingFilesCounter/selectors/matchingFilesCounter.selector.ts","children":[]},{"name":"matchingFilesCounter.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"matchingFilesCounter.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchBar","type":"Folder","attributes":{},"children":[{"name":"blacklistSearchPattern.effect.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":12.0,"sonar_files":1.0,"functions":12.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":75.0,"sonar_lines_to_cover":28.0,"sonar_major_violations":4.0,"rloc":68.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":4.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":12.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.4,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/blacklistSearchPattern.effect.ts","children":[]},{"name":"searchBar.component.html","type":"File","attributes":{"loc":35.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/searchBar.component.html","children":[]},{"name":"searchBar.component.scss","type":"File","attributes":{"loc":70.0,"rloc":59.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/searchBar.component.scss","children":[]},{"name":"searchBar.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":44.0,"sonar_lines_to_cover":23.0,"sonar_major_violations":1.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/searchBar.component.ts","children":[]},{"name":"selectors","type":"Folder","attributes":{},"children":[{"name":"isExcludePatternDisabled.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":9.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/selectors/isExcludePatternDisabled.selector.ts","children":[]},{"name":"isFlattenPatternDisabled.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":9.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/selectors/isFlattenPatternDisabled.selector.ts","children":[]},{"name":"isSearchPatternEmpty.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":7.0,"sonar_lines_to_cover":4.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/selectors/isSearchPatternEmpty.selector.ts","children":[]},{"name":"isSearchPatternEmpty.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"isPatternBlacklisted.ts","type":"File","attributes":{"sonar_coverage":52.4,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":57.1,"loc":23.0,"sonar_lines_to_cover":14.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":42.9,"sonar_classes":0.0,"sonar_cognitive_complexity":11.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":15.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":6.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/utils/isPatternBlacklisted.ts","children":[]},{"name":"parseBlacklistItems.ts","type":"File","attributes":{"line_coverage":93.8,"loc":27.0,"sonar_lines_to_cover":16.0,"sonar_major_violations":1.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_coverage":90.5,"sonar_critical_violations":1.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":80.0,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":16.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":5.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":1.5,"statements":17.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/utils/parseBlacklistItems.ts","children":[]},{"name":"unifyWildCard.ts","type":"File","attributes":{"line_coverage":88.9,"loc":14.0,"sonar_lines_to_cover":9.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":90.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":90.9,"sonar_classes":0.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":11.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":9.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchBar/utils/unifyWildCard.ts","children":[]},{"name":"isPatternBlacklisted.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"parseBlacklistItems.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"blacklistSearchPattern.effect.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"searchBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchPanel.component.html","type":"File","attributes":{"loc":19.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanel.component.html","children":[]},{"name":"searchPanel.component.scss","type":"File","attributes":{"loc":25.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanel.component.scss","children":[]},{"name":"searchPanel.component.ts","type":"File","attributes":{"line_coverage":90.9,"loc":65.0,"sonar_lines_to_cover":22.0,"sonar_major_violations":1.0,"rloc":55.0,"sonar_minor_violations":0.0,"sonar_coverage":84.6,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":8.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanel.component.ts","children":[]},{"name":"searchPanelModeSelector","type":"Folder","attributes":{},"children":[{"name":"hideBlacklistItemsIndicator.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":5.0,"sonar_lines_to_cover":3.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanelModeSelector/hideBlacklistItemsIndicator.selector.ts","children":[]},{"name":"searchPanelModeSelector.component.html","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.html","children":[]},{"name":"searchPanelModeSelector.component.scss","type":"File","attributes":{"loc":23.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.scss","children":[]},{"name":"searchPanelModeSelector.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":7.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.ts","children":[]},{"name":"searchPanelModeSelector.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sortingButton","type":"Folder","attributes":{},"children":[{"name":"sortingButton.component.html","type":"File","attributes":{"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingButton/sortingButton.component.html","children":[]},{"name":"sortingButton.component.scss","type":"File","attributes":{"loc":17.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingButton/sortingButton.component.scss","children":[]},{"name":"sortingButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingButton/sortingButton.component.ts","children":[]},{"name":"sortingButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sortingOption","type":"Folder","attributes":{},"children":[{"name":"sortingOption.component.html","type":"File","attributes":{"loc":14.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingOption/sortingOption.component.html","children":[]},{"name":"sortingOption.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingOption/sortingOption.component.scss","children":[]},{"name":"sortingOption.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":31.0,"sonar_lines_to_cover":13.0,"sonar_major_violations":1.0,"rloc":26.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/sortingOption/sortingOption.component.ts","children":[]},{"name":"sortingOption.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"thumbTackButton","type":"Folder","attributes":{},"children":[{"name":"thumbTackButton.component.html","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/thumbTackButton/thumbTackButton.component.html","children":[]},{"name":"thumbTackButton.component.scss","type":"File","attributes":{"loc":21.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/thumbTackButton/thumbTackButton.component.scss","children":[]},{"name":"thumbTackButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":9.0,"sonar_major_violations":1.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/searchPanel/thumbTackButton/thumbTackButton.component.ts","children":[]},{"name":"thumbTackButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"searchPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"searchPanel.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showScenariosButton","type":"Folder","attributes":{},"children":[{"name":"addCustomScenarioDialog","type":"Folder","attributes":{},"children":[{"name":"addCustomScenarioDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":38.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/addCustomScenarioDialog.component.html","children":[]},{"name":"addCustomScenarioDialog.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/addCustomScenarioDialog.component.scss","children":[]},{"name":"addCustomScenarioDialog.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":62.0,"sonar_lines_to_cover":22.0,"sonar_major_violations":1.0,"rloc":57.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":4.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/addCustomScenarioDialog.component.ts","children":[]},{"name":"utils","type":"Folder","attributes":{},"children":[{"name":"customScenarioName.validator.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":15.0,"sonar_lines_to_cover":8.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/utils/customScenarioName.validator.ts","children":[]},{"name":"getInitialScenarioMetricProperties.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":56.0,"sonar_lines_to_cover":6.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenarioDialog/utils/getInitialScenarioMetricProperties.ts","children":[]},{"name":"getInitialScenarioMetricProperties.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"addCustomScenarioDialog.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"scenario.service.ts","type":"File","attributes":{"line_coverage":95.4,"loc":118.0,"sonar_lines_to_cover":65.0,"rloc":109.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":92.5,"sonar_file_complexity":17.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":80.0,"sonar_classes":1.0,"sonar_cognitive_complexity":11.0,"comment_lines":2.0,"sonar_comment_lines_density":1.8,"sonar_complexity":17.0,"sonar_conditions_to_cover":15.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":32.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenario.service.ts","children":[]},{"name":"scenarioHelper.ts","type":"File","attributes":{"line_coverage":96.6,"loc":262.0,"sonar_lines_to_cover":88.0,"sonar_minor_violations":1.0,"rloc":230.0,"sonar_major_violations":0.0,"sonar_coverage":94.9,"sonar_file_complexity":46.0,"sonar_files":1.0,"functions":15.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":90.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":29.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":46.0,"sonar_conditions_to_cover":30.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":85.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":3.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenarioHelper.ts","children":[]},{"name":"scenarios","type":"Folder","attributes":{},"children":[{"name":"scenarios.component.html","type":"File","attributes":{"loc":32.0,"rloc":29.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.html","children":[]},{"name":"scenarios.component.scss","type":"File","attributes":{"loc":58.0,"rloc":48.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.scss","children":[]},{"name":"scenarios.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":10.0,"sonar_major_violations":1.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.ts","children":[]},{"name":"scenarios.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"showScenariosButton.component.html","type":"File","attributes":{"loc":7.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.html","children":[]},{"name":"showScenariosButton.component.scss","type":"File","attributes":{"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.scss","children":[]},{"name":"showScenariosButton.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":9.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.ts","children":[]},{"name":"scenario.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"scenarioHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"showScenariosButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"ribbonBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"ribbonBar.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"ribbonBar.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"screenshotButton","type":"Folder","attributes":{},"children":[{"name":"screenshotButton.component.html","type":"File","attributes":{"loc":13.0,"rloc":12.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/screenshotButton/screenshotButton.component.html","children":[]},{"name":"screenshotButton.component.ts","type":"File","attributes":{"line_coverage":95.9,"loc":195.0,"sonar_lines_to_cover":97.0,"sonar_major_violations":5.0,"sonar_minor_violations":3.0,"rloc":167.0,"sonar_coverage":88.3,"sonar_file_complexity":22.0,"sonar_files":1.0,"functions":15.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":56.5,"sonar_classes":1.0,"sonar_code_smells":8.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":22.0,"sonar_conditions_to_cover":23.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":8.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":73.0,"sonar_uncovered_conditions":10.0,"sonar_uncovered_lines":4.0,"sonar_violations":8.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/screenshotButton/screenshotButton.component.ts","children":[]},{"name":"screenshotButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"slider","type":"Folder","attributes":{},"children":[{"name":"slider.component.html","type":"File","attributes":{"loc":20.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/slider/slider.component.html","children":[]},{"name":"slider.component.scss","type":"File","attributes":{"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/slider/slider.component.scss","children":[]},{"name":"slider.component.ts","type":"File","attributes":{"line_coverage":84.6,"loc":35.0,"sonar_lines_to_cover":13.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":82.4,"sonar_file_complexity":5.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_cognitive_complexity":3.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":5.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/slider/slider.component.ts","children":[]},{"name":"slider.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"toolBar","type":"Folder","attributes":{},"children":[{"name":"globalConfigurationButton","type":"Folder","attributes":{},"children":[{"name":"globalConfigurationButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.html","children":[]},{"name":"globalConfigurationButton.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":18.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.scss","children":[]},{"name":"globalConfigurationButton.component.ts","type":"File","attributes":{"sonar_coverage":87.5,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":87.5,"loc":23.0,"sonar_lines_to_cover":8.0,"sonar_major_violations":1.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.ts","children":[]},{"name":"globalConfigurationDialog","type":"Folder","attributes":{},"children":[{"name":"displayQualitySelection","type":"Folder","attributes":{},"children":[{"name":"displayQualitySelection.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":11.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.html","children":[]},{"name":"displayQualitySelection.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":14.0,"sonar_major_violations":1.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.ts","children":[]},{"name":"displayQualitySelection.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"globalConfigurationDialog.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":61.0,"rloc":56.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.html","children":[]},{"name":"globalConfigurationDialog.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":21.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.scss","children":[]},{"name":"globalConfigurationDialog.component.ts","type":"File","attributes":{"sonar_coverage":66.7,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":66.7,"loc":72.0,"sonar_lines_to_cover":33.0,"rloc":64.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_lines":11.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.ts","children":[]},{"name":"mapLayoutSelection","type":"Folder","attributes":{},"children":[{"name":"mapLayoutSelection.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":22.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.html","children":[]},{"name":"mapLayoutSelection.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":36.0,"sonar_lines_to_cover":21.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.ts","children":[]},{"name":"mapLayoutSelection.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]}]},{"name":"hoveredNodePathPanel","type":"Folder","attributes":{},"children":[{"name":"hoveredNodePathPanel.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":14.0,"rloc":13.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.html","children":[]},{"name":"hoveredNodePathPanel.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":19.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.scss","children":[]},{"name":"hoveredNodePathPanel.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":19.0,"sonar_lines_to_cover":7.0,"rloc":16.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.ts","children":[]},{"name":"hoveredNodePathPanelData.selector.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":5.0,"rloc":9.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanelData.selector.ts","children":[]},{"name":"hoveredNodePathPanel.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"hoveredNodePathPanelData.selector.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"loadingMapProgressSpinner","type":"Folder","attributes":{},"children":[{"name":"loadingMapProgressSpinner.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.html","children":[]},{"name":"loadingMapProgressSpinner.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":5.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.scss","children":[]},{"name":"loadingMapProgressSpinner.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":7.0,"rloc":20.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.ts","children":[]}]},{"name":"presentationModeButton","type":"Folder","attributes":{},"children":[{"name":"presentationModeButton.component.html","type":"File","attributes":{"loc":11.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.html","children":[]},{"name":"presentationModeButton.component.scss","type":"File","attributes":{"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.scss","children":[]},{"name":"presentationModeButton.component.ts","type":"File","attributes":{"line_coverage":71.4,"loc":31.0,"sonar_lines_to_cover":14.0,"rloc":27.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":71.4,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":4.0,"sonar_uncovered_lines":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.ts","children":[]},{"name":"presentationModeButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"toolBar.component.html","type":"File","attributes":{"loc":18.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/toolBar.component.html","children":[]},{"name":"toolBar.component.scss","type":"File","attributes":{"loc":19.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/toolBar.component.scss","children":[]},{"name":"toolBar.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":41.0,"sonar_lines_to_cover":17.0,"rloc":38.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/toolBar.component.ts","children":[]},{"name":"uploadFilesButton","type":"Folder","attributes":{},"children":[{"name":"uploadFiles.service.ts","type":"File","attributes":{"line_coverage":92.1,"loc":73.0,"sonar_lines_to_cover":38.0,"rloc":61.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":90.2,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":66.7,"sonar_classes":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":27.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/uploadFilesButton/uploadFiles.service.ts","children":[]},{"name":"uploadFilesButton.component.html","type":"File","attributes":{"loc":2.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/uploadFilesButton/uploadFilesButton.component.html","children":[]},{"name":"uploadFilesButton.component.ts","type":"File","attributes":{"line_coverage":83.3,"loc":18.0,"sonar_lines_to_cover":6.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":83.3,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/toolBar/uploadFilesButton/uploadFilesButton.component.ts","children":[]},{"name":"uploadFiles.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"uploadFilesButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"uploadFilesButton.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"uploadFilesButton.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"toolBar.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"viewCube","type":"Folder","attributes":{},"children":[{"name":"centerMapButton","type":"Folder","attributes":{},"children":[{"name":"centerMapButton.component.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":4.0,"rloc":3.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.html","children":[]},{"name":"centerMapButton.component.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":26.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.scss","children":[]},{"name":"centerMapButton.component.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":17.0,"sonar_lines_to_cover":5.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.ts","children":[]},{"name":"centerMapButton.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"viewCube.component.html","type":"File","attributes":{"loc":3.0,"rloc":2.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.component.html","children":[]},{"name":"viewCube.component.scss","type":"File","attributes":{"loc":12.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.component.scss","children":[]},{"name":"viewCube.component.ts","type":"File","attributes":{"line_coverage":60.4,"loc":218.0,"sonar_lines_to_cover":111.0,"sonar_major_violations":1.0,"rloc":187.0,"sonar_minor_violations":0.0,"sonar_coverage":65.6,"sonar_file_complexity":31.0,"sonar_files":1.0,"functions":14.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":3.0,"sonar_comment_lines_density":1.6,"sonar_complexity":31.0,"sonar_conditions_to_cover":17.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":91.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":44.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.component.ts","children":[]},{"name":"viewCube.materials.ts","type":"File","attributes":{"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":4.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.materials.ts","children":[]},{"name":"viewCube.meshGenerator.ts","type":"File","attributes":{"line_coverage":100.0,"loc":218.0,"sonar_lines_to_cover":89.0,"rloc":187.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":4.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":86.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.meshGenerator.ts","children":[]},{"name":"viewCube.mouseEvents.service.ts","type":"File","attributes":{"line_coverage":91.4,"loc":163.0,"sonar_lines_to_cover":81.0,"rloc":140.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":89.0,"sonar_file_complexity":39.0,"sonar_files":1.0,"functions":25.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":78.9,"sonar_classes":1.0,"sonar_cognitive_complexity":18.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":39.0,"sonar_conditions_to_cover":19.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":69.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":7.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/viewCube.mouseEvents.service.ts","children":[]},{"name":"zoomSlider","type":"Folder","attributes":{},"children":[{"name":"zoomSlider.component.html","type":"File","attributes":{"loc":15.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/zoomSlider/zoomSlider.component.html","children":[]},{"name":"zoomSlider.component.scss","type":"File","attributes":{"loc":56.0,"rloc":49.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/zoomSlider/zoomSlider.component.scss","children":[]},{"name":"zoomSlider.component.ts","type":"File","attributes":{"line_coverage":100.0,"loc":50.0,"sonar_lines_to_cover":15.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":3.0,"sonar_comment_lines_density":7.5,"sonar_complexity":6.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":10.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/ui/viewCube/zoomSlider/zoomSlider.component.ts","children":[]},{"name":"zoomSlider.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"viewCube.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"viewCube.meshGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"viewCube.mouseEvents.service.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"util","type":"Folder","attributes":{},"children":[{"name":"EventEmitter.ts","type":"File","attributes":{"sonar_coverage":94.4,"sonar_file_complexity":4.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":24.0,"sonar_lines_to_cover":9.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":88.9,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":1.0,"sonar_comment_lines_density":5.3,"sonar_complexity":4.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/EventEmitter.ts","children":[]},{"name":"aggregationGenerator.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":21.0,"sonar_files":1.0,"functions":7.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":117.0,"sonar_lines_to_cover":48.0,"rloc":102.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":19.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":21.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":43.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/aggregationGenerator.ts","children":[]},{"name":"algorithm","type":"Folder","attributes":{},"children":[{"name":"streetLayout","type":"Folder","attributes":{},"children":[{"name":"boundingBox.ts","type":"File","attributes":{"sonar_coverage":91.7,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":91.7,"loc":30.0,"sonar_lines_to_cover":12.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/boundingBox.ts","children":[]},{"name":"horizontalStreet.ts","type":"File","attributes":{"sonar_coverage":72.3,"sonar_file_complexity":42.0,"sonar_files":1.0,"functions":17.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":87.1,"loc":251.0,"sonar_lines_to_cover":93.0,"rloc":162.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":35.1,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":30.0,"comment_lines":57.0,"sonar_comment_lines_density":26.0,"sonar_complexity":42.0,"sonar_conditions_to_cover":37.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":86.0,"sonar_uncovered_conditions":24.0,"sonar_uncovered_lines":12.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/horizontalStreet.ts","children":[]},{"name":"house.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":27.0,"sonar_lines_to_cover":9.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/house.ts","children":[]},{"name":"rectangle.ts","type":"File","attributes":{"line_coverage":100.0,"loc":33.0,"sonar_lines_to_cover":10.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":5.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":1.0,"sonar_comment_lines_density":3.8,"sonar_complexity":6.0,"sonar_conditions_to_cover":2.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/rectangle.ts","children":[]},{"name":"squarifiedTreeMap.ts","type":"File","attributes":{"line_coverage":90.9,"loc":113.0,"sonar_lines_to_cover":55.0,"rloc":95.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":86.4,"sonar_file_complexity":20.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":63.6,"sonar_classes":1.0,"sonar_cognitive_complexity":14.0,"comment_lines":1.0,"sonar_comment_lines_density":1.0,"sonar_complexity":20.0,"sonar_conditions_to_cover":11.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":49.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/squarifiedTreeMap.ts","children":[]},{"name":"street.ts","type":"File","attributes":{"line_coverage":100.0,"loc":43.0,"sonar_lines_to_cover":17.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/street.ts","children":[]},{"name":"streetLayoutGenerator.ts","type":"File","attributes":{"line_coverage":98.1,"loc":112.0,"sonar_lines_to_cover":53.0,"sonar_major_violations":1.0,"rloc":97.0,"sonar_minor_violations":0.0,"sonar_coverage":93.7,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":8.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":70.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":13.0,"comment_lines":3.0,"sonar_comment_lines_density":3.0,"sonar_complexity":16.0,"sonar_conditions_to_cover":10.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":44.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/streetLayoutGenerator.ts","children":[]},{"name":"streetViewHelper.ts","type":"File","attributes":{"line_coverage":87.5,"loc":86.0,"sonar_lines_to_cover":32.0,"rloc":74.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":86.0,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":3.0,"sonar_info_violations":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":83.3,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":13.0,"comment_lines":4.0,"sonar_comment_lines_density":5.1,"sonar_complexity":14.0,"sonar_conditions_to_cover":18.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":28.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":4.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/streetViewHelper.ts","children":[]},{"name":"strip","type":"Folder","attributes":{},"children":[{"name":"horizontalStrip.ts","type":"File","attributes":{"sonar_coverage":70.7,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":72.7,"loc":63.0,"sonar_lines_to_cover":33.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":62.5,"sonar_classes":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":25.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":9.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/strip/horizontalStrip.ts","children":[]},{"name":"strip.ts","type":"File","attributes":{"line_coverage":95.7,"loc":67.0,"sonar_lines_to_cover":23.0,"rloc":53.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":92.0,"sonar_file_complexity":14.0,"sonar_files":1.0,"functions":12.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":50.0,"sonar_classes":1.0,"sonar_cognitive_complexity":4.0,"comment_lines":1.0,"sonar_comment_lines_density":1.9,"sonar_complexity":14.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/strip/strip.ts","children":[]},{"name":"verticalStrip.ts","type":"File","attributes":{"line_coverage":97.0,"loc":63.0,"sonar_lines_to_cover":33.0,"rloc":54.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":90.2,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":62.5,"sonar_classes":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":8.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":25.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/strip/verticalStrip.ts","children":[]}]},{"name":"treeMap.ts","type":"File","attributes":{"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":9.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/treeMap.ts","children":[]},{"name":"verticalStreet.ts","type":"File","attributes":{"line_coverage":87.3,"loc":207.0,"sonar_lines_to_cover":102.0,"rloc":173.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":73.0,"sonar_file_complexity":46.0,"sonar_files":1.0,"functions":19.0,"sonar_info_violations":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":35.9,"sonar_classes":1.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":32.0,"comment_lines":3.0,"sonar_comment_lines_density":1.7,"sonar_complexity":46.0,"sonar_conditions_to_cover":39.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":94.0,"sonar_uncovered_conditions":25.0,"sonar_uncovered_lines":13.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/streetLayout/verticalStreet.ts","children":[]},{"name":"horizontalStreet.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"house.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"rectangle.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"streetLayoutGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"streetViewHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"treeMapLayout","type":"Folder","attributes":{},"children":[{"name":"treeMapGenerator.ts","type":"File","attributes":{"line_coverage":98.1,"loc":289.0,"sonar_lines_to_cover":106.0,"sonar_major_violations":1.0,"rloc":209.0,"sonar_minor_violations":0.0,"sonar_coverage":95.8,"sonar_file_complexity":44.0,"sonar_files":1.0,"functions":14.0,"sonar_info_violations":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":91.7,"sonar_classes":0.0,"sonar_code_smells":4.0,"sonar_cognitive_complexity":48.0,"comment_lines":41.0,"sonar_comment_lines_density":16.4,"sonar_complexity":44.0,"sonar_conditions_to_cover":60.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":4.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":106.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":2.0,"sonar_violations":4.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/treeMapLayout/treeMapGenerator.ts","children":[]},{"name":"treeMapHelper.ts","type":"File","attributes":{"line_coverage":98.2,"loc":278.0,"sonar_lines_to_cover":114.0,"rloc":236.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":96.4,"sonar_file_complexity":60.0,"sonar_files":1.0,"functions":16.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":93.8,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":37.0,"comment_lines":1.0,"sonar_comment_lines_density":0.4,"sonar_complexity":60.0,"sonar_conditions_to_cover":81.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":101.0,"sonar_uncovered_conditions":5.0,"sonar_uncovered_lines":2.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/algorithm/treeMapLayout/treeMapHelper.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"treeMapGenerator.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"treeMapHelper.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"treeMapGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"treeMapHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"arrayHelper.ts","type":"File","attributes":{"sonar_coverage":96.9,"sonar_file_complexity":16.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":96.4,"loc":55.0,"sonar_lines_to_cover":28.0,"rloc":43.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":16.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":22.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/arrayHelper.ts","children":[]},{"name":"clipboard","type":"Folder","attributes":{},"children":[{"name":"clipboardWriter.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":5.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/clipboard/clipboardWriter.ts","children":[]},{"name":"clipBoardWriter.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"clone.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":6.0,"sonar_lines_to_cover":3.0,"rloc":4.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/clone.ts","children":[]},{"name":"codeMapHelper.ts","type":"File","attributes":{"sonar_coverage":82.9,"sonar_file_complexity":42.0,"sonar_files":1.0,"functions":14.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":91.9,"loc":132.0,"sonar_lines_to_cover":74.0,"sonar_major_violations":2.0,"rloc":112.0,"sonar_minor_violations":0.0,"branch_coverage":67.4,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":34.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":42.0,"sonar_conditions_to_cover":43.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.3,"statements":59.0,"sonar_uncovered_conditions":14.0,"sonar_uncovered_lines":6.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/codeMapHelper.ts","children":[]},{"name":"color","type":"Folder","attributes":{},"children":[{"name":"colorConverter.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":24.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":142.0,"sonar_lines_to_cover":68.0,"rloc":114.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":5.0,"comment_lines":3.0,"sonar_comment_lines_density":2.6,"sonar_complexity":24.0,"sonar_conditions_to_cover":5.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":61.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/color/colorConverter.ts","children":[]},{"name":"getReadableColorForBackground.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":6.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":1.0,"sonar_comment_lines_density":12.5,"sonar_complexity":2.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/color/getReadableColorForBackground.ts","children":[]},{"name":"gradientCalculator.ts","type":"File","attributes":{"sonar_coverage":87.5,"sonar_file_complexity":20.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":94.0,"loc":87.0,"sonar_lines_to_cover":50.0,"rloc":70.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":72.7,"sonar_classes":0.0,"sonar_cognitive_complexity":14.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":20.0,"sonar_conditions_to_cover":22.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":48.0,"sonar_uncovered_conditions":6.0,"sonar_uncovered_lines":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/color/gradientCalculator.ts","children":[]},{"name":"hsl.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":6.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":30.0,"sonar_lines_to_cover":10.0,"rloc":23.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":6.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":5.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/color/hsl.ts","children":[]},{"name":"colorConverter.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"getReadableColorForBackground.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"hsl.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"customConfigBuilder.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":12.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":142.0,"sonar_lines_to_cover":23.0,"rloc":120.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":7.0,"comment_lines":9.0,"sonar_comment_lines_density":7.0,"sonar_complexity":12.0,"sonar_conditions_to_cover":9.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/customConfigBuilder.ts","children":[]},{"name":"customConfigHelper.ts","type":"File","attributes":{"sonar_coverage":90.9,"sonar_file_complexity":38.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":92.0,"loc":210.0,"sonar_lines_to_cover":75.0,"rloc":172.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":87.5,"sonar_classes":1.0,"sonar_cognitive_complexity":23.0,"comment_lines":2.0,"sonar_comment_lines_density":1.1,"sonar_complexity":38.0,"sonar_conditions_to_cover":24.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":69.0,"sonar_uncovered_conditions":3.0,"sonar_uncovered_lines":6.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/customConfigHelper.ts","children":[]},{"name":"dataMocks.ts","type":"File","attributes":{"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":2919.0,"rloc":2822.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"sonar_cognitive_complexity":6.0,"comment_lines":1.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":97.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/dataMocks.ts","children":[]},{"name":"debounce.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":6.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":6.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/debounce.ts","children":[]},{"name":"deltaGenerator.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_critical_violations":1.0,"sonar_file_complexity":29.0,"sonar_files":1.0,"functions":9.0,"sonar_info_violations":2.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":163.0,"sonar_lines_to_cover":69.0,"rloc":134.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_code_smells":3.0,"sonar_cognitive_complexity":32.0,"comment_lines":7.0,"sonar_comment_lines_density":5.0,"sonar_complexity":29.0,"sonar_conditions_to_cover":28.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":3.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.1,"statements":68.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_violations":3.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/deltaGenerator.ts","children":[]},{"name":"fileDownloader.ts","type":"File","attributes":{"sonar_coverage":78.8,"sonar_file_complexity":23.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":80.0,"loc":125.0,"sonar_lines_to_cover":50.0,"sonar_minor_violations":1.0,"rloc":111.0,"sonar_major_violations":0.0,"branch_coverage":75.0,"sonar_classes":1.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":14.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":23.0,"sonar_conditions_to_cover":16.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":42.0,"sonar_uncovered_conditions":4.0,"sonar_uncovered_lines":10.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/fileDownloader.ts","children":[]},{"name":"fileHelper.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":26.0,"sonar_files":1.0,"functions":6.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":94.0,"sonar_lines_to_cover":40.0,"rloc":79.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":14.0,"comment_lines":1.0,"sonar_comment_lines_density":1.3,"sonar_complexity":26.0,"sonar_conditions_to_cover":34.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":29.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/fileHelper.ts","children":[]},{"name":"fileNameHelper.ts","type":"File","attributes":{"sonar_coverage":95.5,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":94.4,"loc":41.0,"sonar_lines_to_cover":18.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":7.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":15.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/fileNameHelper.ts","children":[]},{"name":"fileValidator.ts","type":"File","attributes":{"sonar_coverage":98.2,"sonar_critical_violations":1.0,"sonar_file_complexity":65.0,"sonar_files":1.0,"functions":19.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":99.1,"loc":247.0,"sonar_lines_to_cover":109.0,"sonar_minor_violations":1.0,"rloc":214.0,"sonar_major_violations":0.0,"branch_coverage":96.6,"sonar_classes":0.0,"sonar_code_smells":2.0,"sonar_cognitive_complexity":48.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":65.0,"sonar_conditions_to_cover":58.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":2.0,"sonar_security_hotspots":1.0,"sonar_security_hotspots_reviewed":0.0,"sonar_security_hotspots_to_review_status":1.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":103.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_violations":2.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/fileValidator.ts","children":[]},{"name":"gameObjectsParser","type":"Folder","attributes":{},"children":[{"name":"gameObjectsImporter.ts","type":"File","attributes":{"sonar_coverage":98.8,"sonar_file_complexity":30.0,"sonar_files":1.0,"functions":18.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":202.0,"sonar_lines_to_cover":70.0,"rloc":167.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":93.8,"sonar_classes":0.0,"sonar_cognitive_complexity":18.0,"comment_lines":3.0,"sonar_comment_lines_density":1.8,"sonar_complexity":30.0,"sonar_conditions_to_cover":16.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":69.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/gameObjectsParser/gameObjectsImporter.ts","children":[]},{"name":"gameObjectsMocks.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":76.0,"sonar_lines_to_cover":1.0,"rloc":75.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/gameObjectsParser/gameObjectsMocks.ts","children":[]},{"name":"gameObjectsSchema.json","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":272.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/gameObjectsParser/gameObjectsSchema.json","children":[]},{"name":"gameObjectsValidator.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":8.0,"sonar_lines_to_cover":5.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":2.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/gameObjectsParser/gameObjectsValidator.ts","children":[]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"gameObjectsImporter.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"gameObjectsImporter.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"gameObjectsValidator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"generatedSchema.json","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":266.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/generatedSchema.json","children":[]},{"name":"indexedDB","type":"Folder","attributes":{},"children":[{"name":"indexedDBWriter.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":7.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":42.0,"sonar_lines_to_cover":23.0,"rloc":36.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":7.0,"sonar_conditions_to_cover":7.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":19.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/indexedDB/indexedDBWriter.ts","children":[]},{"name":"indexedDBWriter.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"loadFilesValidationToErrorDialog.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":13.0,"sonar_files":1.0,"functions":11.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":38.0,"sonar_lines_to_cover":15.0,"rloc":31.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":13.0,"sonar_conditions_to_cover":4.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":11.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/loadFilesValidationToErrorDialog.ts","children":[]},{"name":"metric","type":"Folder","attributes":{},"children":[{"name":"metricTitles.ts","type":"File","attributes":{"line_coverage":100.0,"loc":22.0,"sonar_lines_to_cover":1.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/metric/metricTitles.ts","children":[]}]},{"name":"mockHelper.ts","type":"File","attributes":{"line_coverage":0.0,"loc":9.0,"sonar_lines_to_cover":5.0,"rloc":7.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":3.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/mockHelper.ts","children":[]},{"name":"nodeDecorator.ts","type":"File","attributes":{"line_coverage":93.6,"loc":359.0,"sonar_lines_to_cover":156.0,"rloc":302.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":92.9,"sonar_critical_violations":2.0,"sonar_file_complexity":85.0,"sonar_files":1.0,"functions":15.0,"sonar_info_violations":3.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":91.9,"sonar_classes":0.0,"sonar_code_smells":5.0,"sonar_cognitive_complexity":110.0,"comment_lines":13.0,"sonar_comment_lines_density":4.1,"sonar_complexity":85.0,"sonar_conditions_to_cover":99.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":5.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.2,"statements":161.0,"sonar_uncovered_conditions":8.0,"sonar_uncovered_lines":10.0,"sonar_violations":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/nodeDecorator.ts","children":[]},{"name":"nodePathHelper.ts","type":"File","attributes":{"line_coverage":76.5,"loc":31.0,"sonar_lines_to_cover":17.0,"rloc":24.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":78.3,"sonar_file_complexity":9.0,"sonar_files":1.0,"functions":4.0,"sonar_info_violations":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":83.3,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":1.0,"sonar_comment_lines_density":4.0,"sonar_complexity":9.0,"sonar_conditions_to_cover":6.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":12.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":4.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/nodePathHelper.ts","children":[]},{"name":"parseNumberInput.ts","type":"File","attributes":{"line_coverage":100.0,"loc":11.0,"sonar_lines_to_cover":7.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":3.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":0.0,"sonar_cognitive_complexity":2.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":3.0,"sonar_conditions_to_cover":2.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/parseNumberInput.ts","children":[]},{"name":"pipes","type":"Folder","attributes":{},"children":[{"name":"attributeDescriptorTooltip.pipe.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":8.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":23.0,"sonar_lines_to_cover":10.0,"rloc":19.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":6.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":8.0,"sonar_conditions_to_cover":15.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/pipes/attributeDescriptorTooltip.pipe.ts","children":[]},{"name":"removeExtension.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":14.0,"sonar_lines_to_cover":4.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/pipes/removeExtension.pipe.ts","children":[]},{"name":"truncateText.pipe.ts","type":"File","attributes":{"line_coverage":100.0,"loc":12.0,"sonar_lines_to_cover":4.0,"rloc":10.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":100.0,"sonar_file_complexity":2.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":100.0,"sonar_classes":1.0,"sonar_cognitive_complexity":1.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":2.0,"sonar_conditions_to_cover":3.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_conditions":0.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/pipes/truncateText.pipe.ts","children":[]},{"name":"attributeDescriptorTooltip.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"removeExtension.pipe.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"truncateText.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"settingsHelper.ts","type":"File","attributes":{"line_coverage":100.0,"loc":18.0,"sonar_lines_to_cover":9.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":96.6,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":95.0,"sonar_classes":0.0,"sonar_cognitive_complexity":8.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":10.0,"sonar_conditions_to_cover":20.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":8.0,"sonar_uncovered_conditions":1.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/settingsHelper.ts","children":[]},{"name":"uploadFiles","type":"Folder","attributes":{},"children":[{"name":"createCCFileInput.ts","type":"File","attributes":{"sonar_coverage":100.0,"sonar_file_complexity":1.0,"sonar_files":1.0,"functions":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":100.0,"loc":9.0,"sonar_lines_to_cover":7.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":7.0,"sonar_uncovered_lines":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/uploadFiles/createCCFileInput.ts","children":[]},{"name":"readFiles.ts","type":"File","attributes":{"line_coverage":95.5,"loc":38.0,"sonar_lines_to_cover":22.0,"sonar_minor_violations":1.0,"rloc":31.0,"sonar_major_violations":0.0,"sonar_coverage":89.7,"sonar_file_complexity":10.0,"sonar_files":1.0,"functions":5.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"branch_coverage":71.4,"sonar_classes":0.0,"sonar_code_smells":1.0,"sonar_cognitive_complexity":8.0,"comment_lines":1.0,"sonar_comment_lines_density":3.1,"sonar_complexity":10.0,"sonar_conditions_to_cover":7.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_confirmed_issues":0.0,"sonar_open_issues":1.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_sqale_debt_ratio":0.5,"statements":20.0,"sonar_uncovered_conditions":2.0,"sonar_uncovered_lines":1.0,"sonar_violations":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/codeCharta/util/uploadFiles/readFiles.ts","children":[]},{"name":"createCCFileInput.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"loadFilesValidationToErrorDialog.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"readFiles.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"aggregationGenerator.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"deltaGenerator.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileHelper.spec.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"aggregationGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"arrayHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"clone.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeMapHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfigBuilder.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"customConfigHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"debounce.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"deltaGenerator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileDownloader.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileNameHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileValidator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"nodeDecorator.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"parseNumberInput.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"settingsHelper.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"testUtils","type":"Folder","attributes":{},"link":"","children":[{"name":"markdown-transformer.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"store.utils.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"wait.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}]},{"name":"codeCharta.component.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"codeCharta.model.spec.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"e2e","type":"Folder","attributes":{},"link":"","children":[{"name":"__snapshots__","type":"Folder","attributes":{},"link":"","children":[{"name":"logo.e2e.ts.snap","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"logo.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"logo.po.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"url.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"index.d.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"streetLayoutTodo.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"index.html","type":"File","attributes":{"sonar_file_complexity":1.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":19.0,"rloc":17.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":1.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/index.html","children":[]},{"name":"main.ts","type":"File","attributes":{"sonar_coverage":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"line_coverage":0.0,"loc":7.0,"sonar_lines_to_cover":5.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_classes":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":1.0,"sonar_uncovered_lines":5.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/main.ts","children":[]},{"name":"material","type":"Folder","attributes":{},"children":[{"name":"_theme.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":25.0,"rloc":18.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":1.0,"sonar_comment_lines_density":5.3,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/_theme.scss","children":[]},{"name":"_variables.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":54.0,"rloc":50.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/_variables.scss","children":[]},{"name":"matAttributeTypeSelector.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":26.0,"rloc":21.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matAttributeTypeSelector.scss","children":[]},{"name":"matBlacklistPanel.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":14.0,"rloc":11.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matBlacklistPanel.scss","children":[]},{"name":"matChangeLogDialog.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":37.0,"rloc":32.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matChangeLogDialog.scss","children":[]},{"name":"matColorPicker.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":8.0,"rloc":6.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matColorPicker.scss","children":[]},{"name":"matConfirmResetMapDialog.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":29.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matConfirmResetMapDialog.scss","children":[]},{"name":"matConfirmationDialog.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":20.0,"rloc":15.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matConfirmationDialog.scss","children":[]},{"name":"matCustomConfigItemGroup.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":45.0,"rloc":37.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matCustomConfigItemGroup.scss","children":[]},{"name":"matCustomConfigList.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":53.0,"rloc":43.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matCustomConfigList.scss","children":[]},{"name":"matDialog.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":39.0,"rloc":33.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matDialog.scss","children":[]},{"name":"matExport3DMapDialog.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":36.0,"rloc":30.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matExport3DMapDialog.scss","children":[]},{"name":"matIncompatibleMapsDialog.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":6.0,"rloc":5.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matIncompatibleMapsDialog.scss","children":[]},{"name":"matMenu.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":49.0,"rloc":39.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matMenu.scss","children":[]},{"name":"matSelect.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":17.0,"rloc":14.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSelect.scss","children":[]},{"name":"matSelectFileSelect.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":31.0,"rloc":25.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSelectFileSelect.scss","children":[]},{"name":"matSelectMetricChooser.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":63.0,"rloc":51.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":1.0,"sonar_comment_lines_density":1.9,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSelectMetricChooser.scss","children":[]},{"name":"matSlideTogglePresentationMode.scss","type":"File","attributes":{"loc":10.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSlideTogglePresentationMode.scss","children":[]},{"name":"matSlider.scss","type":"File","attributes":{"loc":79.0,"rloc":61.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSlider.scss","children":[]},{"name":"matSuspiciousMetricPanel.scss","type":"File","attributes":{"loc":85.0,"rloc":69.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/matSuspiciousMetricPanel.scss","children":[]},{"name":"material.scss","type":"File","attributes":{"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"loc":38.0,"rloc":35.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/material/material.scss","children":[]}]},{"name":"mixins.scss","type":"File","attributes":{"loc":9.0,"rloc":8.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_files":1.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"comment_lines":0.0,"sonar_comment_lines_density":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/mixins.scss","children":[]},{"name":"polyfills.ts","type":"File","attributes":{"line_coverage":0.0,"loc":29.0,"sonar_lines_to_cover":1.0,"rloc":1.0,"sonar_minor_violations":0.0,"sonar_major_violations":0.0,"sonar_coverage":0.0,"sonar_file_complexity":0.0,"sonar_files":1.0,"functions":0.0,"sonar_duplicated_lines_density":0.0,"sonar_duplicated_lines":0.0,"sonar_generated_ncloc":0.0,"sonar_critical_violations":0.0,"sonar_generated_lines":0.0,"sonar_info_violations":0.0,"sonar_high_impact_accepted_issues":0.0,"sonar_duplicated_blocks":0.0,"sonar_duplicated_files":0.0,"sonar_false_positive_issues":0.0,"sonar_classes":0.0,"comment_lines":1.0,"sonar_comment_lines_density":50.0,"sonar_complexity":0.0,"sonar_code_smells":0.0,"sonar_accepted_issues":0.0,"sonar_blocker_violations":0.0,"sonar_bugs":0.0,"sonar_cognitive_complexity":0.0,"sonar_confirmed_issues":0.0,"sonar_security_hotspots_reviewed":100.0,"sonar_public_documented_api_density":100.0,"sonar_security_hotspots":0.0,"sonar_security_hotspots_to_review_status":0.0,"sonar_security_hotspots_reviewed_status":0.0,"sonar_open_issues":0.0,"sonar_public_undocumented_api":0.0,"sonar_skipped_tests":0.0,"sonar_reopened_issues":0.0,"statements":0.0,"sonar_uncovered_lines":1.0,"sonar_test_failures":0.0,"sonar_test_success_density":100.0,"sonar_violations":0.0,"sonar_sqale_debt_ratio":0.0,"sonar_vulnerabilities":0.0,"sonar_test_errors":0.0,"sonar_wont_fix_issues":0.0,"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"https://sonarcloud.io/code?id\u003dmaibornwolff-gmbh_codecharta_visualization:app/polyfills.ts","children":[]},{"name":"app.e2e.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"puppeteer.helper.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":".gitignore","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":".npmrc","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"CHANGELOG.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"Dockerfile","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"LICENSE.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"MANUAL_TESTING.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"NEW_TO_VISUALIZATION.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"README.md","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"angular.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"cli.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"conf","type":"Folder","attributes":{},"link":"","children":[{"name":"jestE2E-preset.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"jestE2E.config.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"jestUnit.config.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"setupJestUnit.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"webpack.config.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"electron","type":"Folder","attributes":{},"link":"","children":[{"name":"main.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"jest-puppeteer.config.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"mocks","type":"Folder","attributes":{},"link":"","children":[{"name":"changelogMock.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"dateMock.helper.ts","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"fileTransformer.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"localStorageMock.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"package-lock.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"package.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"script","type":"Folder","attributes":{},"link":"","children":[{"name":"appBuild.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appConfig.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appDownload.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appMain.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appUtils.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"appZip.js","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"docker-publish.sh","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]},{"name":"sonar-project.properties","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"tsconfig.app.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"tsconfig.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]},{"name":"tsconfig.spec.json","type":"File","attributes":{"number_of_authors":1.0,"number_of_commits":1.0,"range_of_weeks_with_commits":1.0,"weeks_with_commits":1.0,"highly_coupled_files":0.0,"median_coupled_files":2262.0,"number_of_renames":0.0,"age_in_weeks":0.0},"link":"","children":[]}]}],"apiVersion":"1.3","edges":[],"attributeTypes":{"nodes":{"number_of_authors":"relative","number_of_commits":"absolute","range_of_weeks_with_commits":"relative","weeks_with_commits":"relative","highly_coupled_files":"absolute","median_coupled_files":"relative","number_of_renames":"absolute","age_in_weeks":"relative"},"edges":{"temporal_coupling":"absolute"}},"attributeDescriptors":{"sonar_accepted_issues":{"title":"Accepted Issues","description":"Accepted issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_blocker_violations":{"title":"Blocker Violations","description":"Total count of issues of the severity blocker","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_bugs":{"title":"Number of Bugs","description":"Number of bugs","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_class_complexity":{"title":"Complexity per class","description":"Average cyclomatic complexity of classes","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_classes":{"title":"Number of Classes","description":"Number of classes (including nested classes, interfaces, enums and annotations","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_code_smells":{"title":"Code Smells","description":"Total count of code smell issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_cognitive_complexity":{"title":"Cognitive Complexity","description":"A sonar excluside metric to measure how hard is it to understand the control flow of code","hintLowValue":"","hintHighValue":"","link":"https://www.sonarsource.com/resources/cognitive-complexity/","direction":-1},"comment_lines":{"title":"Comment Lines","description":"Number of lines containing either a comment or commented-out code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_comment_lines_density":{"title":"Comment line Density","description":"Density of comment lines in relation to total lines of code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_complexity":{"title":"Cyclomatic Complexity","description":"Cyclomatic complexity based on the number of paths through the code (similar but not equal to McCabe complexity)","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_complexity_in_classes":{"title":"Class Complexity","description":"Cyclomatic complexity of classes","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_complexity_in_functions":{"title":"Function Complexity","description":"Cyclomatic complexity of functions","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_conditions_to_cover":{"title":"Conditions to Cover","description":"Number of conditions which could be covered by unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_confirmed_issues":{"title":"Confirmed Issues","description":"Total count of issues in the confirmed state","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_critical_violations":{"title":"Critical Violations","description":"Total count of issues of the severity critical","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_duplicated_blocks":{"title":"Duplicated Blocks","description":"Number of duplicated blocks of lines","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_duplicated_files":{"title":"Duplicated Files","description":"Number of files involved in duplications","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_duplicated_lines":{"title":"Duplicated Lines","description":"Number of lines involved in duplications","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_duplicated_lines_density":{"title":"Duplicated Line Density","description":"Density of duplicated lines","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_false_positive_issues":{"title":"False Positive Issues","description":"Total count of issues marked false positive","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_file_complexity":{"title":"Complexity per file","description":"Average cyclomatic complexity of files","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_files":{"title":"Number of Files","description":"Number of files","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"average_function_mcc":{"title":"Complexity per function","description":"Average cyclomatic complexity of functions","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"functions":{"title":"Number of Functions","description":"Number of functions","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_generated_lines":{"title":"Generated Lines","description":"Number of generated lines of code (includes comments and empty lines)","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_generated_ncloc":{"title":"Generated Real Lines of Code","description":"Number of generated non-empty lines of code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_high_impact_accepted_issues":{"title":"High Impact Accepted Issues","description":"Accepted issues with high impact","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_info_violations":{"title":"Info Violations","description":"Total count of issues of the severity info","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"loc":{"title":"Number of Lines","description":"Number of code lines (number of carriage returns)","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_lines_to_cover":{"title":"Lines to Cover","description":"Number of lines of code which could be covered by unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_major_violations":{"title":"Major Violations","description":"Total count of issues of the severity major","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_minor_violations":{"title":"Minor Violations","description":"Total count of issues of the severity minor","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"rloc":{"title":"Real Lines of Code","description":"Number of code lines that contain at least one character which is neither a whitespace nor a tabulation nor part of a comment","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_accepted_issues":{"title":"New Accepted Issues","description":"New accepted issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_blocker_violations":{"title":"Blocker Violations on new code","description":"Number of issues of the severity blocker raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_bugs":{"title":"Number of New Bugs","description":"Number of new bug issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_code_smells":{"title":"Code Smells on new code","description":"Total count of code smell issues raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_conditions_to_cover":{"title":"Conditions to Cover on new code","description":"Number of new/updated conditions which could be covered by unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_critical_violations":{"title":"Critical Violations on new code","description":"Number of issues of the severity critical raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_development_cost":{"title":"Development Cost on new code","description":"Development cost of new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_duplicated_blocks":{"title":"Duplicated Blocks on new code","description":"Number of duplicated blocks of lines in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_duplicated_lines":{"title":"Duplicated Lines on new code","description":"Number of lines involved in duplications in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_duplicated_lines_density":{"title":"Duplicated Lines Density on new code","description":"Density of duplicated lines in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_info_violations":{"title":"Info Violations on new code","description":"Number of issues of the severity info raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_lines":{"title":"Number of New Lines","description":"Number of new/updated lines of code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_lines_to_cover":{"title":"Lines to Cover on new code","description":"Number of new/updated lines of code which could be covered by unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_major_violations":{"title":"Major Violations on new code","description":"Number of issues of the severity major raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_minor_violations":{"title":"Minor Violations on new code","description":"Number of issues of the severity minor raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_security_hotspots":{"title":"Security Hotspots on new code","description":"Number of new security hotspots in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_security_hotspots_reviewed_status":{"title":"Security Hotspots Reviewed Status on new code","description":"Total number of reviewed security hotspots in new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_security_hotspots_to_review_status":{"title":"Security Hotspots to Review Status on new code","description":"Number of security hotspots to review in new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_sqale_debt_ratio":{"title":"Technical Debt Ratio on New Code","description":"Technical Debt Ratio of new/changed code.","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_uncovered_conditions":{"title":"Uncovered Conditions on new code","description":"Total number of uncovered conditions in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_uncovered_lines":{"title":"Uncovered Lines on new code","description":"Total number of uncovered lines in new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_violations":{"title":"Issues on new code","description":"Number of issues raised for the first time in the new code period","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_new_vulnerabilities":{"title":"Vulnerabilities on new code","description":"Number of new vulnerability issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_open_issues":{"title":"Number of Open Issues","description":"Total count of issues in the open state","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_projects":{"title":"Number of Projects","description":"Total number of projects","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"public_api":{"title":"Public API","description":"Public api available","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_public_undocumented_api":{"title":"Public Undocumented API","description":"Public undocumented classes, functions and variables available","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_reopened_issues":{"title":"Number of Reopened Issues","description":"Total count of issues in the reopened state","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_security_hotspots":{"title":"Security Hotspots","description":"Number of security hotspots","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_security_hotspots_reviewed_status":{"title":"Security Hotspots Reviewed Status","description":"Total number of reviewed security hotspots","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_security_hotspots_to_review_status":{"title":"Security Hotspots to Review Status","description":"Number of security hotspots to review","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_skipped_tests":{"title":"Number of skipped Tests","description":"Number of skipped unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_sqale_debt_ratio":{"title":"Technical Debt Ratio","description":"Ratio of the actual technical debt compared to the estimated cost to develop the whole source code from scratch","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"statements":{"title":"Number of Statements","description":"Number of statements","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_test_errors":{"title":"Number of Test Errors","description":"Number of unit tests that have thrown errors","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_test_failures":{"title":"Number of Test Failures","description":"Number of unit test failures","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_uncovered_conditions":{"title":"Uncovered Conditions","description":"Total number of uncovered conditions","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_uncovered_lines":{"title":"Uncovered Lines","description":"Total number of uncovered lines","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_violations":{"title":"Number of Violations","description":"Total count of issues in all states","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_vulnerabilities":{"title":"Number of Vulnerabilities","description":"Number of vulnerability issues","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"sonar_wont_fix_issues":{"title":"Number of Won\u0027t Fix Issues","description":"Total count of issues in the wont fix state","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":-1},"branch_coverage":{"title":"Branch Coverage","description":"Density of fully covered boolean conditions in flow control structures","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_coverage":{"title":"Test Coverage","description":"Mix of branch and line coverage","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"line_coverage":{"title":"Line Coverage","description":"Density of fully covered lines of code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_new_branch_coverage":{"title":"Branch Coverage on new code (%)","description":"Density of fully covered boolean conditions in flow control structures in new or updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_new_coverage":{"title":"Coverage on new code","description":"Coverage of new/changed code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_new_line_coverage":{"title":"Line Coverage on new code","description":"Density of fully covered lines of new/updated code","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_public_documented_api_density":{"title":"Public Documented API Density (%)","description":"Public documented classes and functions balanced by rloc","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_pull_request_fixed_issues":{"title":"Pull request fixed issues","description":"Count of issues that would be fixed by the pull request","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_security_hotspots_reviewed":{"title":"Security Hotspots Reviewed","description":"Percentage of reviewed (fixed or safe) security hotspots","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_test_success_density":{"title":"Test Success Density","description":"Ratio between successful tests and all tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"sonar_tests":{"title":"Number of Tests","description":"Number of unit tests","hintLowValue":"","hintHighValue":"","link":"https://docs.sonarcloud.io/digging-deeper/metric-definitions/","direction":1},"age_in_weeks":{"title":"Age in Weeks","description":"File age in weeks","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"number_of_authors":{"title":"Number of Authors","description":"Number of authors","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"number_of_commits":{"title":"Number of Commits","description":"Number of commits","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"number_of_renames":{"title":"Number of Renames","description":"Number of file renames","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"range_of_weeks_with_commits":{"title":"Week Range of Commits","description":"Average number of weeks between commits","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"weeks_with_commits":{"title":"Weeks with Commits","description":"Number of weeks in which commits occurred","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"highly_coupled_files":{"title":"Highly Coupled Files","description":"Number of highly coupled files (\u003e\u003d35% of times modified the same time) with this file","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1},"median_coupled_files":{"title":"Median Coupled Files","description":"Median of number of other files that where committed with this file","hintLowValue":"","hintHighValue":"","link":"https://maibornwolff.github.io/codecharta/docs/git-log-parser","direction":-1}},"blacklist":[]},"checksum":"bd03e3344548fe5ed7ddcb6bfc0c22e1"} \ No newline at end of file diff --git a/stg/visualization/codecharta.cc.json.gz b/stg/visualization/codecharta.cc.json.gz index b532d3bbfad996613135a13026408a520b6b1c69..e71cf5f0b8161b20b4b05e331feb5a8e3c8c7933 100644 GIT binary patch literal 46368 zcmYg%WmFwa6Xpdj?(T4LcXxM}1a~L6yIw58-GW1?YsOh;GDZwA{S03atV#q^QIMzjdD8Z*JO$@IGFUe!Q)3w#l zv;MFcnwxZ*#K96_@c6*}e!ni_cduW!p%CXMe7Shdy^@>Gz7(2la>^v|YwJ)%@4 z%PDZw!Ih>flJ5!YA_+AmXSLdMCX=sO*kRXv`(kdXLasazXkSbD{jQzvPIeU3d7|#2l*LD|=nw z^V*oB)AA&5n|`|8v!IaYcvaTKzf;4emm}Keh%Vp7Td{_Z}do4=b0h^U7{d+qNHQ45D|EQ#&V5%yiU;-;M5n&(~AF_oO}V#Vo7+WPCXt>XI>ZNdgo&tG?+V>4T&anwiWWV}s z6jw(MoilsOdIhozk`z+-zE;zEFNrvQSbns={2Md7(U;B@fj)fX)7z~bn%f+?x95rN zeWz1I{lE@4QqFx}8Jr4Z0MpDa&RyuauzL4m88VN!b|ByX(dZI+Se{C(AOf`5r4+aoSynhw2>EfyE1dn#Mq>4Gy9e#J5#2Py`?misvO4kM+tr?BXBcvB=C<~M zeJ&jM-dvhCba)og8GsV&9PdY0>RPkfe?Ky8; zBAMgUSJ#@s)6SH|_CuDai%?ua!z-`eU1$}fD}rjf-m!PAqHcA^2E)^i)%wL5+v6Pz zpeQc{aO2FYes@B6jmP)tjnO~h<%{9o9JJw{SHiATEH0nn9&+cf|2pnd(d>^k_UXv~ zTK;cW>-`VEf*11KuRaL^@O#_;_vZh)s;mcMS-)x0{=L-3~BT$OeqRWM{C7R8X5!| z`hFo^`|W_VA<*I9t5Dj&l7S!TPj@~xW>gcuua|UUv_x`!Kd`+i%3~E+;OfUaRK0U{ zblhDdb_{dPAR^OiBH$zU?yA+PhfEQY@;nc>XFXdjT_7ltvk+g3_-0#WG*oPcO!q?P zQAy?xV>$QAo@Cu`cB7{)@`EJGhhVv;;L$S6pX6pLYxbY&1#IP7k~GiWPRESWyB8cY zt;qLCC^uxY#zBYyBF!d6yke0D>s-Nr!ox?4QiGMz4rDcrKO?_bNv*+yyE_ni`Yvx0uOlHeY? zk;#PKW*}w)Xj-%bIqV~&L8Zie^N?m9VJ0&3cTZR{ESL2pnJ?l^LMlA7{W8j}ez5)46cidesT;A&$y>2XcpUSjPl&0N1&ncvL%rAN!?-s|U2^&6p z9echOv-sJccKn+YOi}TicOxF#sPJ0ewTMd-GQ9U%ChRy1h}50x=infD_n!Q>S1J6$kGwNjWlH$+FP}iFaB9`xJAQ# zLX!xiE+vvM4tX1Cyj+sY>pU_6FSHgGeBNVuzC_sz^B8695Hmh+To%;zaz!V*>30A~ z?YtV%tA6aGxrnvz-?60z6z#Mr1sNhV#!QvK27QCAnQwsx-~kq3YDlERkc4T{&V!6W zcyKTw!T(jRx~6a)PI#eey__bl!X)%+XvIWMbjROC8csW#{{=s>)$LltYM|gZWp0gn( zQa(mKo})Q+SfpQmBtRf74#d26GJuC{w=@?qT{R!U%@p}!r~k)@j=S;%6-(gjtNlhq z>EX)&Xepyayc2Q3sM0Z!ny(wtbH=D!Qbp|&~H02FnmHB(+c2XFdoba#ok&&D4Ub{In#fo<_J|xf?Eut zlC=?+$3Ax>^Da-XqI8Xo3{@SCC6jPXb$C9pNp$&>vm2innE@(>pgTQ7wu@fE7K&cz z;Stkb=|GyKM_c0z@n*z!dK8JfOv=I|^W2Z|i%||pvQb{kFxzx%O>FS^E2|dnc#__N zc%o(t<=G2S)rS9J*RTbll|dp{d?>aihUVD^O;1%-NfaUY4a6K-LG6%`nW&!aLdDQ# zcZ79qnpUpqY0~WGdQ+>>_LRItSI9|dr#D|l>oG1%KGgIJ3;8TQFLznx7*Fps!2I+d zU990rxrc_z0ce}BjK|?0qE+1tQJRsM$9i%kT__!^R?L=Y!1fi8a?17@Mx2`%#)Jk~ z1nE2^=rL+JS*q1WeU>dWM8O^KK=~mRzLeCaYi3H_0IXeB`0uZqjeCblf??e-V$x z*OyH8WUP2jZlz)+*)|`00O&gO2#M3?adOc;aX8DD3|~I~0#2+d$m-0LI;@Q}lsw(` zEc&Z;e~|G>JljcJ38Qq%It-UDS5QH-{ERjYdKz*Id6Iy&4cMe|v$ zNC#o_?jOC~iIkP#Qli+8PxbqY@i6#aYP2w4$QQ=eN_~wyRr^%uqS!joP zhDJTHwqx@Q}e;50|h8Q^FY%)Zv$VUN=D*7_QdcnVwTHZ05|1_9S4xqh z%0&Uo1<6MeSfUqhL?MEeR>A9xEha7;}CS(!b{Z&3Jmn7Lq1e!0V_zo(`qJEt5K(!c)|h zs&n=j)zoa?bxW15YCV{uZx71UXL7OI3Q)T>ey3we#$BEC-WW-(3JM;5xA)@L^8gGg zFwSlfXwRv>ZziOIRPftM88(Od(rr>bfI6}Vxa{yAxlw$-;_+dgP9f%)@AyZP6O?=p z1+HHKb7c1Ea?<0rE+6UO#Ni@g7mM}%!25;CQ?C|BJak>4YTmyZ9l^dNmJI9fzx<-wMRZ55cfw%ZY=~98_p6P6wBsd3u3+T=(>&2G}lLtR=&efd-B z8UGeh@;QNuL%*8U^H|Mf$@|1iT*5IlX3bjj{4q?FHhPYVP(ZQBkVIs*5Sl$zzB+Su zKZn=#L_w|RaEOITX=weeK5C{6*jWW$Gsq7~(S9Ecq)K}uk*fWdvncO!Utr!TviDa> zH5<*zgI7#VGYpl+wdZzs5*##%(B!<7Dxt8gxqvNq`!}**Ghzj;nX=tzw3lXb+b>>& zI9+7u8aYEb%Ly44LWV$aNE3EzjwsiU{lpXtUp0i)p-n@iwEErHip&!C!qlOY5tqWq zw4+SGajwsvGrOM0D7B)Q_R3AlLG5PxQWkyNO*-kEIBL~fJmGnDHDy{dT6G-0Fb6PSrS*v%5XiOpsP z?7hl+2FjBv>rH9OASJeKGGZ`Hf?y4gplq|Cd?}|@6PxGgymgTqlUzI2eht2J-(HpqH#H>%X-dr0;O?%0_n|H!HOE!Skg*kj& z)ys96w7}5QS0nK9Ns}WbHOs_zIyrt$|L`(GgVVyEfm78T7s3*ZW(zXL{0oXELj_uY z@jfcID}$Fwjx5Vndx(nf zQYGw=t`(VoAse4QA^B=+2_$M(QQ3BG4}9Ks!E9dxM&XFQtS2t&z5Rj@b0xx4;6=py){}nt zuifQ1qaUk~fG$hr@lBlpD(|+VdN-a?PPVsD&?pODCV^s2! z)%>AyL`jQ=DUrb#pO*xclCJdLdQ+Zf|8FDkj_|Srdbh}b7p#x8TcjfUZJIY>Rx#k~ zkpE&E#5iv7Q=Lk8<6bZ7hq8xVAooPdt8b@(W1r_CFE_J^#RZ$Z(aDUk_egZkZrab( z;=M1U1SSLx)CfHU97}i%AaYhR$%=B%oNPH= zGBi?Di{O}spW|II>YWjaTEtagwF>_+b|sJ={TJcZa=1j+*Vzyga{iPCiX%^I^I zb6y3(b_?Z3xd@6q$wAO68^!B=Z0II_j3|+8qA21tWP=+vQ;O6mJr{4?lQX3{%W1C4%UQcDL+v~-8^Z>Q zl^|6uPCnWmA?p*TOe0iMPZ6Qw=$>c-IFj)TrYCmRpvt+@W@tB#ODgkJa|*HaX`s9Z z9=?j>YDQTmaf$M!6kpR%;)M~}YWB`%8z|I!Jpr!2k+mP`a*^x6oDNoFghH~u#* zf$%(+N&64IWSt6O2**1;Jwy$hT%~X;I+Hr;_Pdbv^?!!zRRusB0ws)bweoTh%bLb^ zoy(ea($wZ`c!+~tY+q4ReaL%gZ@F$#V4sOkE@#R5sOfl)8{-k>F+AHTOV~UV^E#=9 zxVNvL6JOX?8T)l(woG+CNZt>15jBWJPaz;c!$`|slEy*`XbL67W`tS{6o<7 zk_sP9x;?67j6#v>(;om?)O68bA;uHb-&dP$OI{nZF)T&$oKFRF z6z&-xO4JB8$azTpJI*aDs}~{O-hCDXOt2U<%pb{$5K*sfah6xC!OPr2jh1fIq)zQD zZc*mV;jkw*s_K};MVZ6cw(Doki8yTEShIlmIOKn3v>BWXKIxeI61g4Q8BBWuGSm}! zWlLoS8s-#-@v-)&Kk2K_36L3_l&KnZ z!=C**L`x{rL+cX8)mB=9hppvb-$@f3@F`~#bqa|XT7qxJ6$Bv;^9S2yq(GM4*dRF@ z^#glJY+yyvIA)jYA{Z%z)?Qn@5m*Qxst=t$Twlo$R9+s3x|2wcP+uHbX4o3wX^%g! zY1~)q-udR%7Ve{-G`oNQ=59o{w;lNFQU1k!GFCcK@gg}2AEt7bDSa8o%GDC6m47)#rx`-m=ToE$|E{YysTevJS*hC}C zM1oekJeKZS(KsXCw?!3+dapIbeeI68Ij{EoR=NrhEbx^CYU%^#iRK#))O&EC)O!?f zNt_VxD!G+FbYN77lBwov$7YdRWNf%H&!KXOw2Xs`Y}ObC?o{*m6=Nn5d#Kr9&MqF& z9s(W_F$b^ZEh|#&Dl6~spZyEBy{Mo+Gh7~AHqOZqg96k|qUk#+d*^M!xwFDLC0vZR zILvFFD(VbkJ_u@RjRBVi27;l&=j&l~8ljNskR?|ey|c;1$p&U*!;)dS*{9n*KagVj zsh1x)&$o8>Ellhjk{$La$5b&2?qsFnvYz%M@z+A;gVP}@QM8HugSC>r%D|gsOX%W6 zI$@uo{UT1h7?i*pT766UNi6QTSJaF%B1g;h9W;+JCtdoNEP2{W0GJOZY>=2!-+a)S*hhA9aBJI<-aS<69;o+5lCbaRui|$b z|E2-SdT~b$P(<=hMh=<2fcx2asH(0ZdeZD3NU8bzNBzl;ms1n>Y72;tFRVO@XWm&!R!hb>}0VC|)B+t>|^jA50fOD^Zr2TlDeQ zxn5(pIvL>7NHUsKoYaJ5+t;QDJV-h^t4ND6Gh^3*VXeNCHi#SZb|JlR3AKWX?_M#B|ztD-l-5Z@9Ry- zFyxb$FqcR$kO@dt7RfNBJw5a;EXm!`rnz8gfQJ$a)4fpl%1nmU_H4U|{>)dzr!V;v zaWl(wI@dmKKKnz;D;Q79B4>WMqr`0r!wl_d6A@%_{mF;>$ntcIemTyHA**mpR;;Al zr6J;~8E7F*XNVog#-n(X)Y%=B4K^(96~P#kV@lpZz+DIbLO1jwO!8?-`G#zqabN=X zc$RQ01d$iz1|iyx2Jv++!3qS)YY!Cd_6(p2g6;(H_keo%_bq>l!UBBGXDVQzd>8HzA&rCDRTZh3R0-4=`M^idaW57V{xj|wXpIHJY`{&;Ou~d>62l# zw2!-<1SJ;l0>)#uJ$Iq#ye8W3*zh48H-1Q~)168fZs?wU30}ivj{Fg=a>T9`7R{GPa7tkhuc?oRTUzo~K9_BbiJH~g<;1tLg z+RhJurxv7n&e95fHafTGoh|HI^inSiQwof(Ntce5L1`}{_te1|PUr-ZWnpRyG;jkX z+zlD+c1BRp>IA8pkGK78R?VSkxAd`0wEeOdOdL3KMG^VRz$NLLB!R#Qb4imw&9eis z=Zn*q(Jv5GQbMeKz_f3O>pb?HE*~CAY9W>G&nD4eqeMoH$rX+M3{GxFvKrj23!H4N zu?9v_0|s^qWDc#W?T#BhWCT3*FUOKX+xz&e6)n@2)my@eezuroM4e?X(?2q|GNjqc z7pdc2-5auCa(%}Rvs=ud1yY8qw%`a$%;%o!_m+Q)xTA`@tv4L9VY6QWdf@Q!c+aR% z!iCev$+jiE z^47dGs4nmko_wgKl1=U?1Ec@ogxqIvbvAO8*G!0)D8=Qs21Vlt`3zj}D!!Wd&lXEx zh5h@YeG|N*W-U%!`YNUZ;mXpC!lSdhSM;&w{H2Dr6vq9uxQawX>MADoy4~@? zF`y3Hj;gZQkBKaKujs_5=e3s*#$Q2Hcc{of6=mfRzm>9Kv|B21hILIZkkf)pkwmWI zpe)@pa4dVjK)r9?DajJ`<1sbUtqm2$p+nb5eC5Y?&!24@*5EHcwUCxpdcR7~uVe-1 zv-DqeXuNa!dgbPsV$<6ODYNURRpS*Zr394V+?SiOk`h{4H<<1MJ740|us$yLlwK!d zf>~-Wqr6o{Z&hWc15dkR@~|m-MyS{ZDjfzHw)mhUb&vrjzkQI&rN6H%4eIS4^YmIu zD5mEY?6R0#adF}Waby)K2|&wg9y$Y}JY*TuW$TZv@9Bf(U2HR`c?ObQ)MZ3C)OWI* zRKHkeaw6NawgynUW>gUNldB-*A<<&eS|t-Jc+)wIe2}gE5gVO3G5*Oor_~Cmv?g6- z)h?~)shPd5QLkycP;wafQu;(z&dj-Wa@ArxpPmip)I(pR+h>cPV47;U^kP+`(3KAC z(b?s5vpDDZnjwz`uVv#38cQbDQqm!WX2`5VL9LYZ430#q;fJk=Pn$>k5!nPPU?Tb* zLOgf&D=r2@NVk2x+T?iwC3Z6a^&#sjUD!m#Ps#A6*Q`lOnl0DtG4yp1XBWkCtkOKk zQ48}g{F!Y*N>5c&a|LeF%#Q6>l@Vfj7wlhGId0-rE}8M2MG<^oxiG0iz6ilpWb!8X zRb=X&fN519f|o15Fv0G(uq&JnZ}Wzec2Rx!wgh1%nqbai*%KDSBbP&P7mD=oY|Ac>WTrQY3y9{k(1fZVM;hlQm9rdF48!J*`C!zH1)bXo;Dt8MS_JIMjI z(&RDpFft)fB;{$n4vtq%9iR>P3eZ+)ArD}%g&+!04v2nn_gY88e8_2yD1=Yni&1N^ zK4=v)Tc)ngG`p-nG@eE(NMoHNf$s#HOv7>9$DauUaJX%!S&fOtSm{`;fC|PFaFrPv z>3+Ya(!9ECYIf+N>-R6a-h6KeedH^@Uzwqaw8vf-BD=0HfK9fJOnus-h+4}xT%n^szVGbD5>Kw9GR;fLAzsiu^9jY zK4Oe9(11V&aaCweWE6hWydwTg>jT+vD5wM^*#Bb7#>7Z}_i~3l!A(qmo8}CD>szlU z^lb>r*z@W3>K`db`it!wE1rg>%oL>L3*ezy%0}QX)ZmkY3wkbO9lHJ3EFkVGktR76 z_1oeIsi#KFG%)JmQ%WaFx@>~*%{>$?`?arUsoMRqJKhGlAbVQhZ+S3iBpUGCxQkt* z680&=r=^**rLCGY>O=-zZBQZ>!-Gpay`m;x9-F6*BM;)znzP6BVnTlGZ}YQMJH?tE z%i7`L@e_o{4m?w-i_Sb!>3CCeZZ>WRjGI{FH=8hvl^@XwXR(H>!^FWW4GE?@qt<~j zxhnRV6mz=&@w;uLqFCFZ$8d&fVf=QcKn#vCE~KD?umci)Go}b_p|_KqT7c-Q9XSg$ zUkQ%6BJ3T!s8dr=PgBP(XtRcUbzgjsMCk^`gMeqz40>w7e?;Edn&@=AutPA8f=EZXeNs0 zbn&P8l&Gk_8$ZpD*7ukXHxTG%whYr+V7c(uICgVVZ568`3Xar9$~7+qld!*c*K}|aRDqxe5dOJt&`^C8As?@+P!i~PYhS`j2Os;%R)TyJ;3oAC6ydB;*_>VXJkqu$qgqP=3jK9bLIrTeE z1A_@SG`t$kLXvd`1xiX4To>jkKZz|q6xB-N?$4(wtSQ7NSF1y$QjRNp@Cb6-6qRO-`<23 zy-nK1t&H0fLz)>{3#@gO>;XTfYjMBp&y0RnEr)*nVA4&El1B5YNE5!QNTGc6!Zt+B ztL@%73Wp9!=!Zzpc`iS37+B$8m92VVzms3P6_1{AXd_ zrSj{)D9jQ~bu%pXY&eBxtB+Ub4?5SBHlCJ+t`i41HLHKuyw zGXOk!2O)u9kznrQf}K9Io^X*Wsf9Ic#eH#Xr%01X^=>#Ox(Z(QR@uJh{on~f5fX(0 z@^d1g;el91!|j8x)CT#Ae#xb!ie-?HVC5@9eSZrjPqq=A;ljGpJeg&;o`)(TZ?ILZ z4b%izz|psr6qGnH7190umhbb1Ms0NeZ^)SRLfGNK_lNXSv4B{2xZ12xA+YKhnSjb^ z-WQ=dH98Sv%xj1f`|PGIlhTg&l*uKbsUp>_(a;??`fA~S3g8Bi7Q$}tKw-ZJj4b)a zp&NI6PXFNlre9+i2lIc^|GxN-8)XyvltpET)|(0MbSdmb^bbj%QV65n5@n5?aT3xh zHC=qApQJ`FbCo#4{Z(WnmK|Dcpd{E2nY@jvAji!>A9~v-NEYmb{QucF)^Dl*YvZ21 z%|}EZHNM{yn@9is$Tv1%nH*cITfO8W0_YYTm87!QH?B5`h4`a9?G*&lQ2_|n{N!7?X zNatrN-i|nrW085q)BrtHF`poh2ueM>%vIuHoY3_ds`k*O-Wq{tVENaxSe}p=XhzI* zf~R?|k*Ux1wuGGfY5 zXVwT4=boKUj?Bcm(cGDph~d4tHVCN)Q376bBA$lgA(I{;eoIW$uOo)hxaBNx697p z?`yt=8Ki$Sy&qJRyQEUTKQ4Jt-@ZhQgh%d}8UVutgbpNoXY3J0!kg-%YbX#enlcx; z1ZxJ!JEi$4gqJ_MH)29`jG&A-9XR%I26Ld!0Vn;8K=a>iT=o~!$Jl~9uYGArNcrHj&oS$#4^75Fx}KZbY6&|65Jw-qsEftS)m9qS+vT^Mh=ss z^DVzh+>8mV(`}AR&&=|9mQ}$ZhhbaD{gf zpcMO#e>QpWo%6%P`T@eX$oC#@&1H$AM&>!BHuVf$cp6N@N%gJQwBZpz(<|px2bKM4 z3(5;4azbi)HF(e5yvst$;+tJ!%6+*&n$x|al9S(gj6f$P2*D?Wxpmi~K%+~TC&B~y zhjHwdJ60{@s#|E&pR8I{f|$fS7~MvT;x91&1&->V;=%XGvJ0?snENm8OkhXRI^THk zm49eFmAv;JcG<#7oSdY?+PD6NlOL)LzJkt|=JAwHHE8 z?X8UmEaP)LM#0SMxD&apwG`#Qj;2uxZJyOzQ&4eNhru#i=w5bMak`m2o>Y4dpBF$9 zfgqXT^&T@JufLeB#pYpM6Gy9VyR(k_H#lq>jhhRnFDI&r?G}i#b`rVi{!+V634{^C zT!4w+64uK#(p#1N1U91tBRPw;LB^006y3U;PvQSo3Af};e|Y{*g@wTK0rU7-{)T_R1^OTm?D(GPHTk)uLgr~`j|ih`on$r(B^dJ_~9{Bl9(;o zX9z{zC~?7(wkdFRuAh0fXJ}Al!y&=Ucx4prbqw(s0-|u@_Rzo=STWv^pgcr4TdI+p z)~IrgV1U1(u*|FQ(^FvU+43i6hvaU(@jLrgGr1)|^4)FsSq$MQ5*w&R^cAiWO`Ghu zHkn|uGpcRW+*(-4IaV4U?rH{A1DKyxletfzTa0;>()LC)=*N~RH1i4E!dlo-Asl;1 zG{_8g7%mRo+)YJ#Vti}NV*9{dGv3+9=}9{M8D+o&wRYSDgcAvE8m#?&iG7$i;udBt zIjuF_Vb1(JeLURfT0=sTTs{1M&L4rThT(x^6jehKZS6n?7z2@7JPI0fn>r+li(Snz zF($oOmKGf`Qf3F$>B3~VCq9^L4os$z zcgQ=mq%FxgCu|Bw9m_fS~{oJqr+U?u39(g7){5)6@P@IGZSB0U-?B zk_coUG!Vi7O;w@y01b1r5wz<=d|ptPvZr_fnD7pQf#tNqBVy$>c0yX;0ud1+W>6En zOH@Ui2@1l9d%!@w42cd;8s`zh*dq5(EJ}EjfPndeP$6%jAR;l*X=GqygB1xEnXtm2 z!#%y)#GIr%v>eB=4N#wJ#5pqWdJT`U<1Mr%(<* z;fH89^9*Vt$B~tah<__zCxPidz%^_w{^Kd>`_?N&;QeC-h*LvX+%k1!yu0)RMdK&m z((kE}IObPA{~?(62S*<81RE$zf?N0dICvUleT`8lq9WW~3f-P?8l{Bv2VgM+xPIDmFsKRJAM15GoUtQ+LP< zqSgWo-1mnHrh&3&`vKebLGk)XXprD}QCg_1VPdQy^n|pc3XoZ8`I62OlUUcPrElAr z=nYJb?YT}Ddcm82BkRmICeB43qrR+=kd)Rp90z=>&w$TN;3T^_1QKer^$R@fJ!(3arqpb{{6chw1Tfk*w1h)16mI>-1lmr!7f~HY| zbqicfkg@j3*i}PBcYq$aL8{4)XhByH5TXKr&(+@c0bRrB-h?9n`L1az3dyhs^9m>k z3o%7xW`;hK3=9k57X^@O-~!G_0c5$5LCkw6z5TXk0JYxs9j0PW} z|5yV@#*JLMzcKnyYO9a->^9upN0V$gHZ8+4Q(JLG>Bcww%yW1@=kSEG4c3J%n~(ay zSrq*oDH1ccK$CU!kbLA7jdX1gIZY;oq0FFQVT$p_nF zsPY_niy}v2HZZq#d8LKSMl4}ff}$s4S}=FdGD0mrc{#{;4GnvcWclQXntPwTSjwkY z?++JOV#@A{>aWyFK|sCs5{t+0RBdA2GaZyaQ;^>qZ^yWu*>hs7WsNvd*M$yrk-}nj z!SccKY^+C94$ReoD}8~{f%}Ee=r$xyyq#f?UoGM(c?m=a7SD5vqy_82VYNx*rxHw* z(n#7Q&=M2R#eAH{2dI@4aCSyus_B~gqp7v2ofdx5P5!b-h}xuR#U}ne&p~%H&ZnV? z|BXHTX#BMWtvJmTW6~94QcOG^jS>h?CKn2BOj1=y?5g5*P`@Pn&MCXZhasNOC5F*Q z1B5q-kMD1k7bXMRNXJ{QnA1E2uKPavVIg(4vNXA=W@%!MB2ru~EUhzl>j*BGa#^SJ-;J7^^W6(N#2X&Xq3Iknn z3pj=W$B~nuAhVAxxFK|>O6XYK%oePQ_(AB_6-UA=nL3sQ9}f@AhGLRDsU37P3DZQ? z=B{tt@I?274RTvG4_LZPtCaX7gX}fG#^c8lGaJ5n9opBa?&Kr^eNf-|wBc|{wuA{QZdY3uh`gtoJer(`my(E7A}-Kdi`nlT z1}Skn7hSseO1KnKj@KZGI5iT{!JFQ!AW1%GjF zt)pgIwwiKwlBoh*5Pcg-)R`E|_T=1H;o5q-WexHq>a+ zf7k*(8dD{Nr`f}yQb~kCJ@jDpQw%6SwVL7R6;~f5+N6@Qy1fdhpAdGMNpVQ53$lI_ zrd@=e=ngpW_}usOEkcL5wW$Ueat`48fn?~FEd-`g{j?nM{L~QN&wP-%D2J>Gp|>CN zPpy<~#_+ie_e57ZJi=P<);F0)^~qkpz`0#iq6&s5v%_+CUWW8gs?6S{6uB}R*apM@ z)H9}_c--;!_P=-jRZ5{kPq0F^gURBvQ|1#mz|=_BY}owFfdB`7+-Kl3$o zXdyBlT;VX`*t%+2WHgeDu-?F>uO^3CN%#CLhLOf^L2QeM(wF9jag6BI8}8e(U+L0_Qt;;PrEaSRbR5j%o>`E#blHnYJw!K(M;tdERfD$y8~E60AGJ|`g>D1p~| zAkAvGmSbA3M);7JQEe1zpTO6WdC2So@1o&;0751LxT2V{|C_mKL_7qyj2Aai1jO=9 zHNCe{V*Dx=@?D?j(nXmSW$xlq+X!iK0O zJNGM{@cuHQFGzDWw{VG5B`;noA&xhG%DXjQD7L|BQSA7FG+IFFP)<`B8)>K<`Wtd}PXtKfW zZimr;D(aCsXF?DaEvZdwRmbDOenI)@^&X@;bXc3$%(Ndxz)Ju_QOHjrQyK}$ zhcB+BtO3LClNJBo_+&fp9KQnZDerWP*f^ZUPY*A%g=mHxJ<(T99_o^W3=eKuBkDAK zNYqxg+lq(xVSVqGv-VHNmT7Oyq<-YtDtxhz{1|on_iv$rOWbnjHM;}ywYW4Px0pi*U9 z3EzzuK%+)(R!;)T^a1$mNAL8Q?ddPz4vVo=r&Z`C%5#j^PAh`lRwc$q$6nz3|MDWUq@J_}k zfifMS3~&OR04KnS04MUO9cO_}t83kmkegZW7^Tz^fE9$ox|$<`b%SOdMkxV|4T4cM zfiY7B^MQ@%#H{U)VyE;v*$5M@uz`9TcpoPJy*?p_xs_5H|1P)aSC-RjAc4Rvgap#3 z_jK!)Ug71hnU?(VxP1wZ->!=tm47lft>d03DeW!?FJhLPunI&I&=GV59qsAJa!!6) ze%83+RCE`3Yb{V}Lh^+%(E>OEj)0@SfshFYp2bKjh*X>2T z8?3ZorDjPgzzVQ74AyD`IoOW?sj{2U%-RkS2F@34I)UKb?ePu>1Hx<(#=(nG;1B*^ zk5MM+u11pZpbUy&fn3yd8|$&HZF(nkFOX{hA6o$FYUM*t7N1MmPmRe50# z9%z?+BbP+Gl=RN<$h?q=lh#epE`dcy+9k2Qpk0EY4KY;KzTs3{cG7N-E=w*X4|?eZ z?GtCjvKG1;v(+8i$;Sq>4Vdk!J-Y9bw95AAO_La)tsS%^V+-BULE>6TtUzdG@S>-U zD$@E#vM;Yq=xxKR^j?UmcG9Z2%>K-+##R+K5N2|w91*KB5xT(S)d?543EBGcZCtQLfKd`fNN1cbXWUNdVK8sN%+t)cCC@Yf2|yYFQsySB z*1}m9ILj}YtneY+#ldCUlDD3jtIWBR!B966mUYrn0DgDvrVJcq7!7cg2f&HO?Enrk zc*nGzWcga%scy8Y(G`M#nU*mFo`5Id33$S1f)P(_GM^^onJ9{UtDHZ+8;wsh@yTb; zaa3P&1sK+`v2H#+4BQPEcNpsiHa5UUnck|PD%4iK+Io(+J41Oj+&qQ4QQi{S1>Ptj zy9C-Gy9U{75wF=yXjg^;{Nful6krT=7#WQl11X2bIZ>pL*YI=QCSHPJ-SAEU9Y6=r z0d$-~hcZP}^70)0^#eDb$4Swtq@gKcm>c`uned9>p&i;>Rh-tR*m5dP8&`CJ#C8N* zRGfmRhCJ1UrG&Maiu-4xzEs{>GY&D1>)o7 zr}Jy_hpV(Tt)@V!dx|2p-YJ!-A~_|uC{dXV@SRwe`?(4-@z`sulA*2X?TKI>w}CiR zFwnRnjWf266_gZkIbHSV_O#8u%Wt)j6|tQb$?D0b1K;Ij^$3N!mJW}$BR5D$OxOVb zD)CQ9GGX8D_(yh`)u0T`o{%1CXkUL?#ezKt^maCFape-23woI2Q8HRDJjy}v(&IMw zghvUY8WB}MM~NrN_dgNk)-*n_QG#@UPoGZv;BZP`zMnp6L=m{RRD}4in?Fkb621XJ zLI!`&uwA0(>DiskDyy5xcwu8HB1%45$m z3juv{0SCYVaL|E+y!~zY`pU8U)htbp7PudnGFCfW3RA{rZ>j1tNkqvfb-Gixk$X%T z1GwxW5hU*$Q^r6!9m>gK3$Iu2g2!-YUX-=ElTFhk7QHA?P9EzLPkKSYj*)IMn!mQ% zrw&yqd167{8D)fdISBo!+Ak}G>ld^h%DyOT!l9?n0EmmvMYZW>A2{YY-bs+Aemk+6)ku0#X|0wkf>3p>ny;2jZOUf;4s4jTbR*YxKWh(Rc_)i^| zsh&r!095+`RUxnZ0&$mI-;@&9lOfly8M&Zp$EYe|qynwUnN4`K@KvXyh1geBS1Qwo zxV!#nkFdIUQ)Rs+Ax~*8oV0()BB!c1H=*icG}ERklLF3lRecUs&4pf75i>P7+JP$B z5kS=js&f{q3uQw;nIKFSmwqcC>hOrlL!*GEmrJ+%C%bN5@6O4oQE}4D9fq27rc74L?jY4?*&l@NmMZ<<#fFdPtVn9n!Ij(Ax$-sntXBzaB7d!ORmx- z8);%J6qE2PBRA^;bwcES`|zv3wcw;K)qSR=QZW&Q5q-TS zsOE4KK=kQC-EaSXAw_cge}=n5=)RSux|d}yQi1!U`7%A$XzotA$r?=swr#UkXIrlc z6Px9`qf>!D%3zlRPfC7t_8LY#jpr*PtTJ)8NHLV$+%!_ zlZl(V^d%z-J#~h$tQZ!$adjH|Z^f`nN!gCP)dS(}oVZ1v4Odwcz2)|t-muD8Ni$iT{~C2Wyq&Kx#M-sc4yBzh~w&&M$QGj;Av z6GlGoqUiWb+9cLA_LAS>!!h{FBP{~-scz{`w5=U&g;T0lltxtO zaQmq`FvDvWtDghPw0-5~oh&$#6;l-lGj{!;n~xGj-(C1lAyDh zf<=a_+-iRgK8+(jOm6{RslR~o&s2?y#S(y_E$G=E z*e96=^FI0C$3VZczsxX@H8YSFR#J~!+Uk~JpPsF#(bZUDkwJt}+lp0`j>@&HGoq#N zztxVW-ay81lX~M7bqrZYC4t2Rm14jal@MbB10lOUxyk$Fi#bNSlQH`)3iAbhcQW?f z(Z&HYb^p6c^h-X4xMO0mIWdoZz@HudEF0=81q@yf2u8&h^#A4efKVwIt@r;W`vGoN zQ!19+!ckqRf;<_5R{*B3-X2(mpp?<|_bdUT%D}iHTC>3V1(>w?YZ0vrDl(UNDQzx5 zhnIOwJe3SsmrTo17nPvFlVh+hW&~#kPp-nSGA}GuBy0N z9&f%~ru!)`0_F1u20uH)0My}@3=+ZI=rbv~RUZd0njrNHjf~Qs5 z)N8a$%K`Dz*4wO?=zI!){F*&h*fE_QJ4DzV;pXt)?AWdHOMMp|KW8J@AKlgEMZsKh6llON}l_O)ah39ZdVj1wAZpo`Cj`ea0Vc zs*qod_K$$6Q<%zQUP&c4gQ(g~VrCkG>nrf;3CCd9SiyV4?1ks#rO zj>eV-3AGv#I_rkiMam&?XiGVro(&RrSk#We6-I%?ej-uk2fth|&szGA4%>r9J!uhv z%YtOg8tQ6284PsGK;pMa+E7jIh*RfUPF{MdA${C747_H%<}RX2PiFfxKv3?lk4OON zD-~sFOCz|P;A?@eB1D?Hm=KwDEfMULP>w%*`y+b4+a4aH;JA5rj^k)=tj06<(r+tL zG6ScQhR*6~&6p|a)C#S`~q4xL>O`*ruyaUAACrz-9Nb| zr+UOIgv;8<=}Y3*WKNQ&J0?j!^!JsVN)YkF)C_I~v)1S23f=>TAatL-LkdT7HL8|? zP8B*+{EfLF6Y%mWj8nE{|EPZ@JND0Hi;}PJK1`ObPp%p0sUe5~H?=`7jI~J07wxZqGe{J>N;* z)NapHW{tVT;2+h_#ZawAE=J!_g_#e!xtsJug_-??rcqA^!j^e`vSg5bZgbP5JHWIKk2 z)plFTDRV6h{7YwzbU@>w(pctoZlb^TyC~TFu-|+`)Icd*Ku~!;BohQ zV*|L)MoS^w)%lWePiuoabyQ_DRD8<_X1VFzY_urBUFk~BIS}{hA}++2%oY4%0uIEH zD>)F~nDU$33B`claJ2zkny`lB!n zn`P;&Q=0dx8OPKZ7hOzql`+a`Ad{Ku!O=i#%acVKY{P*}j}=0Rd1qBKjyzeQ+6k&< zO6S+)!)}si_m?Ok)PRJ0Fh*vp{U1#YgL zc~D@m(jVm2oG@WSE^8+=w#ol~5m4;22TM50ouE~2a|d@947FvboPuf}R}^DJ2Z&1Q z0JcleFoU1NhV9bZE;ME_Y0PrjwG-k+t;CB+hZF6QXNVWU+D5!+0I%p~4QR#Tuf2+r7&Ok-T9EcQa=N5o!k z3VS?=X|V5??I|`L7ej9IbMkcl`!U%@2lw)SIAkQqM5uJ&dp;=MU9!cLJ;%W^T8BBs zGSfPY#Lc+TH4Q9#?dMuJ<@uBz?qbn6a9&T#G4h^4t_66n%lj1EV=jWnnlRO{4#?{J zQr(pZ)GNc=3&xYsl;v~b~OY=Fj~v1=Na zd8)zV58){R)FJ(Nrj0|B5AY3>BKm^uoUK>Rs=Zzjt?yj&5oO_suWDlp@zond9YNJt z8#h&0H)Hj4lBvDCxk{MZ4Vi}$4 z=WMo-Q)RRJvyDikb7gt(UNb+I*9KHnazCDC#0b240 z?vsyROPmoU)Gb0)R#HF9v8g>0P`8(~Mwqeoj8J)723G$Pd zPy0cBrPt>)8D53l2|bUzy#Bhe1h&L%M35gKt{cRfFs;^%i?s4WIMuj|8Me+$?#H&7 zS6Z05A6rS>AkpXm-L!QbUJY-4R_INe!R~ zC<2PKMG^hXg~CF|ff5W8s~tn)K*@~Uq8KRgsaIs#qqPtbaa#7+ct8V;Yl(5y8~*@^ z0HQ7s73l--c@nbov;m9_X_JPs*_um2!)E&VD50}(iO~wS;#r39m#iszzDFx z*8{7%$*PJIu{Cc3Rk4i-7oBE?A{LMaqycF!6J*%VFho5m z0wOG60aySQPGO-hte(&^sK>OCG)a&oWm0`qCZtYDqXj9w^aRryItg`$We`MdS*9U~ zk_Z6wPJmB@Fah>9(O>&r6l`cE{>iGKoOj26hPy*}M1jMASlZB>q5?}HA`XR_ZPhn$ zXZxYP0W4)%D&Zpc93@ty`tPV<^n(i8=%@bSdXsGSDh|%jM{FG*fVtTVK(*4+R?!t6CPVc@wgu5`K?0xbzj!xNsMH(sL zGJ#&!W1Y+r@!U)RcUIvASK7|Vs54+ty$|upOjTQ zUBEWsZI{-5WA6lZ-6m^ub~22DBtMX32a+4u4Vq=|g8GS08fwH!zgps`pg<4>K@`|m zb=y~0MvV)cDE_y8D>30Z*EQ|x7zL3%K_#~-p9@K0#AK0kY)(;CU&^O4e6r#|kr5gM z;S-+=MJ9g2kuVTn83+`KgfZbt6wolh*cuosl`w>>;D~E&Sm=k?C0>{D3r4c1*iLgO z-3YQnHx0Z@YPieIHOm|$s17i&pgIfy6OCC!B~ow>>1z+NrD&MCSq1cN6?zP&1g>57U08{dV|sH!u(pM2w}lP(upBV~;r`5gth)OVI@*Sx>gvyAU1+N-YSF z@WFbDK27h8tT;qSvw2fxneF=f5FO*mhx_1Q)hDfVA2_z%G$^v_9%3HYSqHELUOT5!iL9{DTkEmereul!6W68F67kv)HYLESLh|%F*Hy%J1S+u`pq79R*FH< z5BkGPgDn=s2H^=I%7d1qYKJ10X?{A+9GjRW(Yc&m?5WUdxVN zL3UIRn522q<+2L$=sP`$0^H&H*L87v>w}4;W!}8(~F!jfLP4pV1c9b?yLxz2)|K z>a-^)>_7|<1H`n07`foCbBD^p`-;9xi@uQ0o_qZUiSACW0HW+=_f^gNm;N)S)0|jS ziZ-Z&aNXd#fkutcNKFiZUnW@y#jlM}6LEm%ko>?6a0A?Eg&T4`PqNTN##;$xJWriJ zOJec>j{_ZVo(do8f_<72TLKX2NHbICOq6qH=cHI(CGRn_HhD<#+ zY{<|k*{lHQ7X(1^$n!I2eclCfiI6OTM0hK3mF38u!d|C(l}R zG~n_~!etub!HDcexV%hL`7e1PzGOu9jGU7O*t|OfGA~!7nKqf3<2*9^6PIMB&m@=3 zw8d^aXhv+Vo~o7^H#ldBW<>9Xism=Qj-|8|5c(yH>U|(_zR~Lq)s!u~)t8euZ_6W( zsBH2eRsPHyfEPZ2$o*DQ9#7R43_-U69(HjimNTM3{T&nql|<8#feAfP zmRLQt2YV*jvyZ_(+*t@B*?QzrbI$D|Ipn@J%Izs?P#+1VfGJ=~hnS+N35u3i76|9dJRQH}?o0~eAx|JA z?@&<5>Fg1YmWve?!l`uJF{z&P?$mA2N<|vnCY#Z8>>WfLByd0>2s}<#wN5m;CL=U3ecHPFBN^`8R_|*-b`gAf+WVigtOXC;$q8(ixy=*7pcjJC24=SM15xFN}!96AVYQWRf^);K|0L zE$;}%Y%5hu1wPDk!LRV)R`M)3RAg2OsJI|ka34SZxD{H4)Cf*N%i2}$nX-uIj&}ic zaKP6VzA`2J7``M=+Hc1nHk)+yyK@{zdqZuKd#`HRWHI5_NlFx?&f0MgWfEwFBMFvS zvy96S{!wkcQngw`uXJ390`_!I-y1->wb*z*_f@D&~#yzAz?aQv8Y?Ddp zy^u`WNppbAJ?TP{4{V9svn602bdnY=m{G-*ANd>EsOxi}#0_mjdw_3CSpa3WU z3V^~vf+0{aOtNo8k_?la=C?2&CQ0RW43m`O4#OmEamPc`&i+rq( zl9m&CoCl=|2d8toh>O$Y!J3gvxX&cN?1Eg-&Hxp%BLJ!mPz%$U>AQwsd!gBbsPt0- za)*Xo2_97rC&HJi{z3Ux9U^QGcYFBHAD$tt zyJ`96UA3?2|LZA>R1Pa?hp%&20 zbVURc1;NBHA=M@eP@4u3vpc*?-_G`TK=`qfX2Hc9CoXrp6;iM%ZqKHGnb1kL)NUr^ zd>Ru@jHS#FnF!o92syT0ZRc==9aPkI25G3MwM7~# zYQaBe{FB$uUe??P$1h=W$Mu)wpJm#6k9R8we%-`n9^AbKdMOAY_`!FB?*?`?!!8yW z+=CS*K;dF&fh}N$gq6^D4>SQyK$FhUL`NGGF0L#RF6a69+>(={?k|J^&Q3ML%eQf< zkdsM-((XdUg_`INt7%putgQtQB*Lyqggz?~k_WdW5t7OqNQ3|*pKVpJczPXpQkjaA zNv3V{sYuEc1XLtXGN@=z#Yxuhu2gqdq#`ZJlR?o_yL_dVdpuN%JUIrTJR&(|DbwGN z*Ke;b)&ixCqSVV8fvQkSyY0#9Ajo2{7Odq0(@@Vu*@Lp|0TIY*jGS;DnUPrS`Z8Ew&I^BxMFO;+!G42v7hN07c!P&V=HhLGsHY4~Qcd~T?=DzHGH?}UK~-369n?Utet6p~Z=^1aS2pyszx zk4om0XylDS%?DLL6;P!iswlL6om*5d7@A26hR{@~b}AJLhGuUCL%yVaKB1UTL50aB z0A4G=(`?u7Olb!lZ;y_OCPUFvWULxKMbHPkiO0Ng&;@svbGkq_kPWUJV5I@8r)bOv zgU~%=E{43<0x2#tC61-ZkC6Ak1TX^Y8Ufu2aUnHI8XB1>XgSZblAiXY~Y;FtX9wmd zJZ@!ur#WA3He@=u&P^1GC0WN?G;Nli>A&(x4Rw=bU zS=fr|E~U7Yw4V%VgtpS2L!qfR`f9<^gW_lhDHFYqpox+6xH=#Yh0NXfLLlFv@>N10 zl|S2Q@*O5$#>saDIrdgbEA#L;E@JK)qS&OeZGtV+sn7W{*qu$o0p%MR zh!U5wQkS)(kR>2XK$d_k0b{At#!?0h&LJ~lqPSEy!(hdis@`NCPh2`-jHu3$xydt(wBugO+*4NO zChrww9fP+nd8?huR01_rTfS<$PrjW?%2@J!jgp=Fx?O8@K{7N>=qwJoaiZIkhnc-D zwoNofKk5(r>rUptW2f|3G&R|#HeZ2@;J z{C6$?-5{x*1W1t5-VaL#Uh)7K4=)+8ZWz`oRtShJTxQkllr-Yvw(An1h75A>bO$+T zcRE!%;m9_$Lzkwj>ohQ5o2P1nGv@VAwqa5nLGLr z#_@Llbh3&mKZWtfgh9&D*#z>h- z!`{X~G$swTF-)-^9ENB-06sx9258yEB33G6=RH4$I6ObPg`{9aH*y{kxz-L;$G{4g+$ysG;vctzfV*jB&(dMRJ7+^5>6R5_DTk<#TvM!jq!kx|Kmi;OMsP>Y8u8CA$p z$fzP2HQs*SuD8MN=j7MF+ieqiu0vxjm3K1;s@=3V+>X(PoH_t|0Io35-z55ZxDXt! zAgn5uLtSkFG^AqLvPlNSRS*S40a08MMJ2N;mOIv31-?!jefEZmBuUCD+1sMlO4>Bb zdogQQK{uMQT3c}}GFH1KwU&DSlBC4As^!Y+Q6XCFM7bu3^ zq-N&5krd21QZV7+!NUW?T4z`RAjSXI77xYipc=LSn+fTy>r?Lwx*@0ns(>n8p^98U z6t8ov92U-TltT$|fF(QSkQSsBl|zze;gRvb<_&vU<=oFkhv}s83WlWMY89mHt zW=qavxYdxtahPod>bj$@oS)T&PLxXUOC?U>F4@@hpX#(a;`O%9vxwB=ItgH4Z8#PK z=yy{zK&O-3$XvEC&y(Axf8x@#@l=C5>B#$Lqy{JnwJQk|SB4F=hOU9Jb*tx%zM_03 zmZJi*=Nxa%8^v+|>`T_T?~mu?L48hccY>rpB#O@^*}zmOnn@cis432)b%DjiP7tto zGFtLj%uo=b{%xRGvqvpJ3(yKdo5E5=TR!&06Ls!u#-zH~+pwAvXn_O+MWI<1uus%J((56t@ca;Gkl%V^IWq2P$etP=aHr(A%m=P4sOv2M8^9etaHR+}5|@!RuBi!NqbeD7*se;08}ckj zY@Dc!qxhs5=7W~*Q>|+qsZu?X*|xTx1=`@%?lPcj9gKYR7a9O1+PBJ!2q_=Y?p!BZ zsnNTRqzk+%U9NBhqyW zOHb`-g{p2mQ+ggDm;Ms7hDJQ#FZgT4-%9xo_u>BRO0@iteD3JU(cLaLGtfajnquLk zKPq(4jyt8$L2r+|U?o^-$jX#?<)atil#Yuyqzl;6dR+mPOu2QEmJd>OfK)&dkOU+F zNmfV_GR2rlR^8Dh>F#t?g_D#NbUNz_2YLD`Muz~I7##w>4vw#7Nma_%U$&>%m8hED z%RmL45%+Os*%lfqXfJ$AsGzsUPaqLUbc)0jH~gdK5@=zyt^hjmbANz2#h( zqPA%}n-2x`cCh1Vn9iCJgNrx9MU0OHL^}gf=@j?9%k)jb-Avkfk_1lQSpgt)%MLq= z&@FF|lRzKPXM;Wga74$o6;1VetC~THZ%Jwf{YG6&b=nN@*j?8W$h;L~!nFind%#zD zddqnqAA{tLvvJ{bmTzU?a89VEOW6vCv%5qEJwZ=6oB(2zKrGXSd$5A5DP0Ud6I6ts z2~xt(1Xh7nm4~T4#t9=GMccNHcG2;&WAC4%=#)9)CXRXeM%CPMc+m~n3uH*y#UQlo zRR~)Hwg$ZN0f3@8^P$WN&LM4=TDnw8{c7$kGIDFjlSJSky(3CV+GO9Q4Jdqip|k;o zR%3%2l7+iNIkYXXr5uk)6C-yUO$mTR%`9K(LioahAa%BD4`Cc{_fMyf!9LvCc*4w$ z;0brr)X2Qw3Gsxfw+mMot}t9-aK8cWGqB(ss^$udmTL560A5_<#V4+(XW7>mof*Ip za0DE2!4Y|@1?ketlIm)fwQ3Z&H6&|ElpzEXIn`8??_>5F2lORPedp4qzQk|x?$j~F zQWx2kpSSf@YOND`oJSeossA;j$9YX;r*#ojSB)hbGBj{DtH%1Q8tap9mfu8Hrq_~h zrSwyQUVF>DmFcxF7pXQ~{(HL5AGX2MF?cbQ9|dB>Of@OGXHBu$jaz;lG>2$J=J zWCDbUj%&-4>h-$4V@W*=G1$;Mw%7OpXTTY72At90j9k7{udh4?YdM-;C9|ow%%7EV z8X|3FF3Url%ypZdlTR_12&psju>?Zugs>8Pb1@2QxyZi}`$cCDiT7I$_Uo)J<{)2l(LOHRj&HSTgIlh||nw|1;PnUz;O5O2(~` z{#%}t23+7H_y|6NkKiNtsNf@)aTUh8!EIN&?cwGrbTJjabRUeu>m>9`vx26SRly30KEBIH}9FGnKzRnSb`CW5Kj%p-z{k7mnySBgCIdSt?0LLYu7eOZ3;OE5p=>{g}wvJvsufN zO%o`hqjbO^WKddIS?)o@f==l@G^^2h<=Zc`IjZ;VV@@=RS7id0$v=^i9c(i8ySn||#2XOFX>+oX>z5j@UQSxKSIry=l zp_boj+kPZ?iO&1@x6kj+$+`58|10?p9lxL~O)JH+ z_AsRW-LgH5USgnAztX3NIr)7{dLDk~fc;KYl{U@&)0CLu#e&Oxf9gwZW=gme8 zI9E$DZ%98^i(c3rjhj3+-2ojmZd=f4e|Je=^DHlePbAWd2Hk2JN&3pZjY}6b!idsz zJF@KphgifoK}ML;A@*J3k9_>@V2;58*_xr@uStj4OPeoIhnOThlpJDmj(+3htAIm% zt4ypj@oRg!41m2%`ueav1&_&wTI6}zmITA?t4(H>WKt71k>b@wo|j}iX$|$j+(a+t zJUq?;dz@7gz3zAyAkhn~ma{rf_0nQz6-^dWwpz+gFUe-4yq0PIlY|7`o#Qy#8=68I zcZSs6O`GS7Yj4?oa~n3_5Q^wh4sU0ni@aF~Hs&*d>e*z?ru~LqNThTM(*DETd2$M`y?Z zL;w*$#4RC0E`jn^C>=D3ur?z(m!%%J)KRgVLi;>a_ z+Ue3xrd7UOe;@A8R{52jI~fRfq$92Fa5BhteRjSe+ua`0Kq*kF$O_)E>Y^TZt**T1 z5%_pcd@&HF1B3xefD)htD5)s^ao5_&fD|bu8IX`i+T+Bv3MhaTQ2`}f0=!yQ0l~Rj z;T%*zK(S6J%8S|G*4p$IWp84j4boVdkEFhS;1B8`PzRR|^fIB>r6Y@q8!AVx)O$rY z+mF;WO-KVj$br2^3fKX5fE~Ba4owlTau4c){#-CelN>}#T@aDa za5wVB4i9NvArJt`#|Ewpa8+uVxtxqvd|i;kD5kk3k1I2$UKTSnnb&KRd``E_)UA{z z8!|LhHd`s}v$CQ`YW(>fHDwL1$zxG^bGe{02-`QpYGoZ}i(Z>#+NNwcOBjTY1|JPR z8hkVmqpSO=vH>X82St7N3caQ@dQC;i zZ$I3;i~crEZh5%`(UwU` zDhqAp3zf9b6ag-P3*h2baiLH}c}q~e20}p!16eb_<*``qKaTlz= z?6#-a-AyoAw3BqZ)OoCO^JQwOzd{xS8sX=Gb`@wxcr|9BF;+1|;QI-eVNhrbcv<9h zA$_1RCKMC_ML>}@DI!-8h08GWvu_xZ%={#ot3_3pX@Myn`l(xZfuWxm`e{u$4E+QW zYeS+et8#q|lSk~`>(ZZ-$L%59h3hyvx@O{xJ;z}pxdKdd%S2hEbD2|*mWEhFI$x3K zR6d;1!*Kit?D!Gt$;z|gB?5_ZBr54vS!_hDK~*aPTPBF?HevT^*p5v|I6IaTQ()a}ProLA=9e(|Tnk+V8Bm0-2wB%hSK?q6 z={hBJb<&x=9*QEZ>INaH84Umf!N4K|xi}M`kE}zsZ#UWYHdXlA)ZGqLfD)jDEG=-x z0cWJ_sKgsMTz!L*BsohGh$dOZo|BFaaJaxWI9vc>7eT1$cBQe@pOas>VTh1(CpdE5 zWae94jR889Xor4a~x++ z!X$vp&e`(_r)1GJCqquq&u4I)Lq8uldxM8%MMv;``kHGg%@aOeeYz;wTUmjQ0o1}@N z^2QNrZPoI5TCp95@r-y`9;~(0S`=I6-0&R)mIX3dM8BRyJ;2XxoO9e9)m<`h$9WzWsozvMvBf^QYl4v$4ukzg|+CX z+y;5>a`Jesw(AFCfEXYKh*2R%-e+097WF)RW0XWQm!x=kWQN|v(x2jKwVk+V=~wN%>Q4(ZqV?i|PIug!^E%iI#WZ8t5GQgJ28;Dk#;&UknI>6MVsx!FlE(CpFHsVRt(&knb+ryyroLN z6Bob+e1`;IX{KuW>Q_@%5v;dwlqIS{ed3HZy zs5fqm$eeE&BOT^fr;HIw$>Q+>?*wMbDLTg4)m1(8)%;C(of46;u(;Q@S6g_t7~qV$7Av@~u#L(McbNh>TYyvDLDCsD`)a=fE)m zQZud0=_D)Ka!ktT;2x|{bs=4h%8NEi{itf%>QD)g1!MtPKo%(+%*cW?jJ}~sGKreh z5fnp!q-@=%O*cE%;{^`YtzZv1p+~%LL1~VeR)WkanpNYZeR>`#9fKe<`Od8-Ndw(Lw-DWL{N+PjD}z$L64Chz z;Z)SfsQ2yiOeasbp~?8T3)WwD+f)2-{c*&}#_vbr=g-Ll>s*uZ*^@j`hFk)p(XG+A zkf<^~?I2jP1*f@1IoEA9sO)?(bt>18=cYTl3}Y=3cW7us zvX!-^O=*O{05dC?8McQbdC8t-XQEDKO)*(foUEzFbxU}cwP#H!o4()iEu+wcJ^!*7aWz0&E})Sk{cL zBb{&d*emgY$MKFQ39t_~435OnFyV+=B;~R9M*jQhCMmH<_Kg>bl=OaBD`W8@b+Oq` zRdrp?)Oap{l|7FNrfZ}8%(PzWCMZxbVLlTlWx^ zWUE45cm!fI&x41kRF&VN1+YSingLbwYxb~`DD)^%)2)&MC{c5HN;lNxPOj^1s>u>! zD3P4M#lVOt<)tr7T*v26HZS8~spq5QTwQL62 ztqih%CEm&qCL$!$jT}REz7}3Jep8*?MQUfS4t~C6RL0@u}spEA(%-n%#Y$_bDU1tj*0*C-2fQX@!RdQ7w z*XoE&17U3^8A@o;MAP_`<~l#1GIH~-RRNS5b-9vf)*Zqj?V&E=L^K-xQ{P^pIGvEy z02~&5=8o9kIm&H%Sg z#CuAfS$7Zz?`d7c!FviG9*Bnq-qRvO;XM_5Ps1m6zk6%(SFPaF++8YoP!D0r!hhOf zD;NILPG|ryegXS-V4q_~{@=zvRQYwr+5g099gtFn@S~nIVSo~#1SkPY%zdfy>kx_x zc%6VV6``nbrox#DD3*hw%Au-2DO{>$S`tEB+BPX04+0X+rzh{_^Mc*Ucf6pMo8DS3 zZ?{3{J@0P!*0Ee~)$HBMIsf6UKUQV@$P^(}K1Maut>OMZ1DzE<8>pv8R8NZ}yOK~u z_PO!4fc|=e?Ew&|X#x$dQv%i8YQgRRNCVP0dRde=aIeZy_U#@S=LCrNzw=-8=8Epmz80N;I{!d;HH1eHzS84V!tj+HzURxJh>F=%{-G&Y55btWSaO%i8i zunz#yNkY^TiS+~9|LQF4()kkeNq@Yv`e_PYLD3-H;|JF?d!m89i1T58BGo+y#APp0 zKFJwSJ}W4n1=VjR()=>ImQeE(seTy^PN@0~`ZJO0N1wY`_nXiYp!}VM@;4IZQ&8=1 zBsw9PY~&cUzpintUF}ayN?CAxa`Ml%%e1%hP@VRtyH3NZZR?pb5Q}CZ(o{xMsE+${ zDOAVA$dY+<$npxRHbK?7ma6&q0u^nC^ClfFbV3MeOK0HGsEQDT8dQ}cE0@7IBQJU_ z=!5h){AQ<4rWA5gJ5vg;`~sh6jkf z>JHxE5v+?h1CJn)E0U7HLSq&hx&IK>Q>pS)1+V8#iu{@-hv4%(3ELDt&rYx#CMz)A zGNw)VAp^DYT4V2L%AT5eDd01J3eDtl;< zTYSOtK?@a0e!6cnwTNkfwfd*zZ&P72EG|};B(T$RvDgmluEmG#Fj#l+Vx9pb4sEdI z0a5s%M99DN!V0xj=DXS|b45wjIW0y$Tz65yg`T!0JU0=RG)T+oDi=1(u{DxHn@6*ET)PbuBR z8#S_tM}ESPSHhN9D&#jIxbrw}(i>Xd*|-Mvs7Wg*Q(#))4bAilLjmg3g&pyOYKvj2 zf=0vj@|Bg_$a#x=C}znu^CNS z3NPjP!V{(>IN3=~#+1zVp6Sil|wx@)d zusy-l8cbE$s`{%Dd?X1zl0GV!(%sZFqMRe58caxgdzjKNrC~|~`<=sn3CfgpMm}VbS`Z0ib#z531cJ2a!8gsh>pTMUOeiC>-TbmEocW)ckjrA$s z2)@Z~qBXJyhbbxRwkd;e5>$kl2+kdpb49!eJ~H-GDlcs~u4j}zCNLJs86aA-aXlkq zYUQm(>JuFi_;k%$9MO-##WUt2u@;G!1Faze(RLtO&TvE^k1UWU8_e?*zs(=nWBp`> zPoJ!{?N&6pMYn?4-AyGW+Il4=fZDCd0JHn@)C*_~o#e%_GzJkYgdZB4(VB}9>C*;c z<^(aVMxBBsU*s(h@XOW#_d)ej<{tLGoT1_7{mI4mk6TPGsd=@y}GkDpL}n{RO*E zLd`5$><|Mi01Lp6H}*GlK9^gf`FNpF$11}C*TQqV%}X^d%4z!nDbfP4Ep0;;TZx0aYHG;(0Hnb z&nov5B$g3cj2#+bhjbwxJqQ-GYl(Kmg-G^i3ob-*3}^%z%b`&f1*_*O!a2oG*W{^G zag356zyYZh4aaDQaSz8R&<;cP4A%5x(OSv}35kp6oBB92bzmAXGQo@vFavM^8~}$) zfrHwASvhjdxOuDKL+p-c`qSDkYzXCxb)XDvC+ zf?6SrrFEm?uSp zyg|*H_Sh5x+E4}<9PA_qRXaiodcxJJcC}UrTpSS#sR`h~TY7Na0`5&v90uwcEa^uB zvz!kS1`94QuGm3C;VCsxvE!7n0X~2a;KSwcLG7s&Tu?S@eR{pGGCWj;tq%rtz3d zl*?gDOF27u`YB#zJ--&|ls4mxRt+|`3LC-QID1ThJ6Md3;;zxamNESpxVsG8&4|_v z-hp>Y-W36+WuCVU>~~-JT&rHOF>T2BFWNXn)y8_{ zEBH!pX8pMsh$_Csnp0yIqONY^Aaeo=H=YGEr{tlEeWj|FZ$u*pQ~^~fAth-2AJ2RK z>^gB4c$KX1^afR0oHZV#kC@4WqZ2WcfE{9DKqqrLrHr^z;X;e33L%selD0f1iWWjB zPnsgY1#kgeTqrKo@sz?#>THiq$OA7#R1yPbbkxnUY4(`FM@Y^9p$@Y-rjLHS=}$zq z&y-#Wn4K}qXx2A58=GT5Uj_7;x$=maPv#Lv^QmTDB@Kkw`ypcx9pz>)Bm}P=HybP=KMpKFC}o zv=1g}w-;&foFEVYaRBFM9*}8VzJDXkhYpkPu;v2;=T#Ab67|Gdt$ceG-Ka$HcsbV; zEe|W9CUKR4nhn=PR24-WlRngg>zY-ns^l9BgXrc0bY|#Ns-U7Su^8+;KX#6Vc~++R z#(?KV!&A;g8ARQc$KHvj=ZXev5c;+qez3lK+pyv-9z6CgIqTIM?^^|vcaV0dN0M>d z@Q$BGyoE^aP}piD#lVIgE@+H2=L_VoD($POsvV%~Y0`BE%PWe#s{+6ztYxBh{)asg z%l#Z(UY>S0Lq$jBvA%vkwWkVHIf*d9Zt-q*(;w_Syb~h7f{T~bQyxs4wpB+H{wq|b zYMIhlF}QOGo!rpNgbW>K0zt&nQfS1EP#x=Zt7D0?q^Y$!RHb|k$mBqIED$vzs+g2g ztZoB?-03_^QJ<<)D9!AaD%`$gw{%#uAt+48GlgCkO-DFp0Xh-r_Uw|-&9@gJ6QWzb zItX1+M~dnoaV&4Lq>^GBT?qUqKL_^eiPTZnM+%MlGZ8a02Bg4HB(?(V#8a~qb!OtV z=!D|?1S1jbOxT$tqlBNqzqgj}JUaIBo?UxqZOT{Ky5=#INkEE%qZ5)qH*c7uv#BDo zcbH?W$nkp;uwTOQ13`?!+<-9j&zq;!W&)g*6TzDM4Cq=>v7=v}+SBLtE*Queu7&+bS- zSbdS0>>0xOAhuN7U@4rtHCQSI)i7tS3awEJT2*5q@>CAt`UOk7%~ByKm1zB)y#+tp z?#85kLNS_il2CP~Xqh)6*$X!fH_e;nxG8WRnwqBtbe%+bhps_&HX>CGGQIQ!P|ZZT z8bdWxAVE@DVL;9h&Id76iH_9{REb0Y)p7>vP`hQS;-;kSEO{Q-GQCu&<`F69sk5n= z)0qk2bqw}g^B`o#jNH0}oA%Hg%xOk9!+l<-s?XGjq`6FLYDUEk*CDAtYV0ST3V?es zKk#&H?9Dm-Nci0*;b@f4C%7nOio4m6LLwZ zWewWFNm#8NCV7FQv*NiIK z0Y;mlkqJBz#<|P{M%CCL(uEXgl1&MrSv75AKQ3cdkzWY2%D}9WS}dci&6Qb*#739O z=8{xKCr=BRkLO}lWdM66Mx{iHNlvbq^2ne%+!x&@du;`%#@yP~-KK$|BHAyDA=8{1WCfuTHgO$9!0)=x4kPRc21Fi%61`&KI-3X2@|P92!}izz!Ct5; z$gSJH@FW8GPKUTOw?VNvNm_)MR$M(WZyOE4&qN<0ulpi!E6g}U9c|FofVO)IUI}@q zVDB4pF06WqlZZXDb>p3p2iapHYaXh_p;QZ1Sz2Pt*HbM-Dnw%z`LQ(sB=7lSJ-ebrfJ+``v!TK@J=SM@(|}FTtO3{bAnm3(QnW6~R8}u=isnty z5^)mT73;U$kl2#iWxYqD>S&b_InI2a$Z1VXE@a}JLVSx9MY)jCiM~dfs<$K24iAx~ z2VAy~%OVV=*mOO=s&krOd+V)veqZyx>7hZE1bGht-DXY5!B|1vDcKPo44N+CU9s2W zL_k-4p8JsWXO_%9Azdf*IDFJ+VSrAxF{N-)gSk@XG8$fqm?%N-$_{_Et)=zg+PD0w ze|i2JYw_30_t*q)oThr1f~ALIsbZ&hnu4^$JG};pjkMCKtlAp3dM^W`peQI>i=qZ- zltI@+WOR|_K-8c%x106 z5xGUN3Q`KqVKaqg4^p%{lc0lmpvyoXigp8RO0exorP|y~ov{c2uHc7;(4(@&=Zrn zGaNBzp^fSrlU|EXfWF#&mK{M~l@U>Q`CqmNoI$4|PsWgc4>Gd;)83PkvHfB@)a z1Jod_eQAZ(9bd^!u~`5lx@8|6j}Zyy1JcKJI2+dFU0J(O)N9+M%+% zP97@2b9vy&kwnHD`@v&mXuOJszCaf!)Toh`@p2LnDB`xMEq7=a=dmhqq5j4Nq7HG} zz+`1iW&kLqq#If#TDvJ(DdbVE>QvT;HP0Rtz_b&stUKHQMg_|$VM>9P#Ks$pTF4hB z2+N?)xM6m7Cs0J%OhT}D)`@+c#2MO7nGPb6b3^HI%XAEKJk^G78v<3*{1H_;PMw)W z97@Q^hx68ZS-YN9DVXMFrszjH)LWV8ywEH;X9S!>MeBu$(zYBBs?sN9oYh2`rQ@b{ zkFeovC#{J}%oVh6J85oCvfQM>Wnylss#{Ta%prQa0i3OaQ$#}rII9NGXew$Tsi{SC zb553kJT%AGDHm@{d$%9Ds)h)T24yv((tkxb>KYb}5I}Q&{@EcSP{GVP%rpp`;ir9M ze^w4UohWK&=pC@g*=UrQjFP(se`CdF=75xQ937{@pVpdew85Xw2Mb!BA1w#M^kMY( z11$|{na7}ln7^~TEvxNm&S(9h5=yEq&FLh2P~^EiS{BEdAal;QapGvyv7+46;96-} z64&f-pzKi~rsjM~>Jr!PJP;QVYOEMXW~)DS*1QZa{HP|3dU$yCkz`fuLASTHrl>?3D(vo;BUZ} zF9w@z!t&nA?Y5*0dY^v}YN6+Ap(`W?VHxOWkd*Whb1>J2X~UIKO&%Sxi+p9b zNT&FbAO;F`ch3ZrXtx6HHo@IJ39p1q)bTet7pAAg^yGCnxGZ*NI(rQF-a9_4-#V7- zts37{L4m3^b&ru^Uu8fxRz|c0Rg1cZsD5K*-D9AuLxtSoGgLl=!DdiC&VXx&S3b<> zDA7TlZHCE3MF&89@x2qWFV{0zm2{)9Hfhnpni)6cw1C_(ffAs=J9Gd89Y6$H#B773 zh}i}uo2F#Us;eThq*muMTLDbVQsvl|l8tzk6d_^_b4_X6>P=fvt+P}^z}^K?P1UB9 zY=MDl7f7`nqa;?|nqBtRUU-ImaPlRJM!Ysq>~fnZfHs(rE@h+ZhO%o&JL`RWaUnU# z_Z6r&Gbmg|PASmkXkG6*+>EDKuVO%+h^}T-riPPn2X`PM@nc)sO5sF3`}Q-NQSZKmd|G&GL!hcGT2&)avVPahZ77Fy1O*)$=^}0-C9^2fj}Yii_Z5tT4;t-(Jji@5iayAk044S;lvrVuI@&Ux0l^Nh#ELj5Q7qV?b~QvQ zh9E3_o6XwWTYeA2sK0Wa8|+XVntBR7NRjhLf-uQqg+3?PA!!|+!oUHr5o~m?2=J~X z=#u&?lIzN6QBTrLFoj(?RHjXnVpy5#hh~Q5Y~H`AV_2fzcEg6{&7eP48vPM_8qoMd@LF4!sLf=S6V$#Ro=62w-gs)HDLDu+lE13Wtg&m0aV&@3Vr-fN+t zw52>DH;q;X0ZFz+n(fPHtyaFhiYDk!u`cGJF`sINE^RloASx44@p~suONdGJN~>N% zNGlhf;rrJ2?5u)_a$1_}tr2@66An{?@2m}GkWxt7AoQMZxdp#^vvs&;0a58ig-NB> zoF2UGdV!Uxlx7Jj6_v`j-piU>*m&2>Rc}bBD4~z+Pe@58CA3u62q{~G5<)VoCI&eP z<&=x|f|SG&^mY*b7CNp;n48)G`fT}sEtx*?Dr7I;5>DcE{3EtXXW9?V?rV?2_vp-$PNh~LOXxCo%o83lpy_MHz zKMQ*t^48CL2|+mdU;!qYjR(mT^BH^>b4Kz)MNQ}XOUOo`tNOMbez3lK+wk67dj01m zL?oU*PvNs`l-^^S$Ah5a>Ule9xzA?0BqQnO3?hh+nskFanoh3c&4&VKR)1MXdCOUs z&;F!~U7i`aV>?lz5&NNXKU1y{l;jhYNc-Yu>R+G@JRnp9LWZ?5(J=R-h?UYvimTA} z9m_TFpfBe;dLaInl=mLLqmlsxlto~U2&u8^7EbMaA;q`8jzh`UzXWO+G zQ7k8T(1JBEO?faR5(N*y1MmPmsLTW1GB2mY8`oO=paEz&D>SH3we1xZwnt5{(5$Lf#OAFF@;)jzwg>(+n1;DZD$ZWjzv5+EfFBmfCO zf@VojT;X+0xU<=szqoz!ya2T;TG}cgp{0{%OWW!D9}N0)U;$VF7S0(9!bM&|2G?2I z_ugvd+Mn1oVe>D#`5pUG6GFtEj_Y($tJ%{9#A%Q?up0mf00My6146&nYd~RSHN;&g z$v)_`rlJcd01AKtpa3Ww3JNBM!Zz4A3&-0Av4vsWA0ajiNUeow&9E5Y05|{+fCJ#* z5I9gR^O}Cl*ivX^rmo zOb@Xko9y)IuQ$*B0#eCJ<@V>-AAfrH;g_HK&r8TAE1S2G!u1%-0+Jz;`SAYs-N(=G zFlP#qxqJQbx7Q!O+`s#L|NbLhs-l2CzWd|L{V!jBfB%`u>HUAbzJLGAM~JB)reEK^ zetU-(OrRgHS6kQe`+qXU9J0yEX5l(aE|5x2D&G2$$i#D(wx5@Z>^}RO{K;(Mcf)tD zHasdhgp>Dxa&0&NcPA)V_<8xf*bf_P@mD&9AfUVp zB+4=LGp|;)HUHUi){wA3!h9inmAd0F7iCe0(au!eX}Eaea&W!X9lIT*T#)k83hhWV za0^Q$#P5C2MiD%E{=(YX32Vd9+HBrz*~fT6MLWm0Ff0|)dF#EbUC+YY5lZI{){aCnzlDw)Kr|xJ{Fk$V zV2Tz=v~m0@iY*JC`oR+fl-DJru&P%Z-}{qS2W0YGxcU&w$`c+~%iht`~mh=W$k){{^y%*L0{t(*F8_&1g z_-mZ?ir(VyzlkK@+OZKBN$h`RA@A&tPU!L(`Z_t(dmkVA=MT%|4)HVFA9r@gpPY60 z!F&1La<_K;*!d?vGeMD$asj>!)jfCyb4?!C}*drX$=u;)D{L*sviPj)Y`zuG+Jy_bAV zH-;Q#9;Ac(7|kjEli%Ls`CdH(KCd-=-ShIIzr^t=$Js}+U7Pw2f(j^|~Od>%i}^n5l0 z*1cFi@YZ}Pgwd-KAFB808<&FUok$mM#Y=H3T;3n7fGvJ})NIPH_futKg--$d%=fmd zr{r~DuhEZz^X$0n&0-o+k1dEj``=q8C?>JH#jW*VlRN*TV*=xVWqLAckIS!*UR`ElGRLCg56<0F>j;83XLE=`{l`5JaIs}%U(2>qlCxa z!*_-Tj)*9OvLgb>CBJ4yA0Lw$9%3EcS?{2iTpi_sc4M@nbZs)=`VYq=4dsBB~=cW3@eDl!o8@)LTWk`v0U%FmYn7aMK#9lhOmbYs~0 z`W{lJLz046(&zA)yzku@sl?x4v?#Sa2rHKKUMc+YyjZB7R&rW}C)N=iQK9Bs<9nw-`f0L|LyK{s^eu2m!j@@1M^M*au=+tf)a)o+6A|d>0vo-X? zZhW_~)vlMw+FQRO1MZZ?udFGQ%7Fi*-uvjZUdf$@9^a(t@$c!y-_wb47wRmfV|~vK z)mQfU7qmRm+&oUFrtW2q-rRVu{+Rk~7MAZje2Mn$aO{UsMAVJ-cF^ zjFnz2nwF0JjvuQ(iKDOR#$XHO~EmT%=Ynv>vvJ+nRr{vHVDadyjr6=EmB7 zQL*cz{i0xNp6#70 zZ}$~kt#`a-cf=*#apwJKgEDWJ7ViO|%od@PaVoP)v`pnH14fE-QNSB04!gr8;8&MWZgY z6<|0=01ccD6_kw=bw+ThlyOMZdp)9WI^Fl9j5DLAprX5-te^xn(Njr% zP7d~dP7a#CZN1%%d%GK-oFs|`-BptLH95KWIXc&UKq%Z~Sc<;S@+ILd_{N$~|S=Hhxiu~ygb z%<$9h1F5Y~Mey71c#n7#%DhASFQCqZE-Si)eheaE=&c~R9J;UTOVs=Xv}LG#vivPH z!bs)td-hNX_R^bv?~)Qlb+b-n366v zQDd5PJfEUZd#^veFN`BO#4hMrUoFSA9^8&R7g@iZ!mxfLr>MqAZ9yQ_Lx*0?au!b+MYNm4t7XR2FkLz-je0gpHM^u6qR6%p z6TRxmDZTr|=_MU%a$d(gWMxgP!U*?v6kocmMHpqq?Jwjvjv{6)u3hsSLv|J$yz`uB z)qOtn<=zGsS_MKL^cxqc{q)(h^HhfNxE2aWHsr@OC=^ZB; z6rb9?ckv1GQKb_*j`Ml4zS>bP<;%Kf?=J4hXw$ZR(((RlcZ$J?dynbK?T@gE+n|!G zpkt%exdh6(0Xi`}vALhl!P4=CJo3(U<29%wLzJ8IWSqH^%!6SQL~WiO{$#Df3m(9?8UNot=t}ffBv%wYfzfi8Is+dpm%VOrcuACq&nzo?Cspy%!P7cbSinTwZ8^hUGQWX|IOb)8@ z&vs{YV>tV&t>TTN_@I0^yt+cq-=Egzn3QF4)6wzQr}ryASM|Vll@?NWOmx@%LfDPR zs2^#PS+1X#@$mTKkwnu*7xcUZ1DkJGjkaiNpyEo!+0=Wc#NNiowKYNF+x3#$C3TB_ zmt_2~0|#G(zKoM2a9rA-luOEr_2+32`N zM9E29{of1Ai}GG$8O5p~`?sCU5Uwb9NDSP?<64WqT!-f+@k-`DES~JeU%~d7eb>X1 pJ>Su2Jf4hakM_h~-Yl1khv~!P;(9S0+Jhhd{{K4yEa9m{7XWL~->U!s literal 45618 zcmYJZV|1iV8@3zUnb^)uY_sD`II(TpHYT=h+qP}nnb_I=yx;!z?ql75s#f>vy3eYs zE)hk-fc)?Cec7e$cp%nX{I2V@1%TUi-O035Uh5#(b69b5-=x~lM8}|oE!t+@Sr!5!xI!PB@Z{Pa`pavcIBA(yzA)ses)FPnDV7udDl&L z9dq^lzV7JpcI|1CblLg*{C>T;xsDlW&Y0ro>;8U<{alI3c$BG^`Sxtvu~p3>dR`m) z{`CEN+In1BdNaw`oG6+Ig?>&7yqNk-S-R5eL4Q`OO4ujp)~vZskXy+Rh`+jH?>e=x zdu+K`&bYYw;*YNXZrj*oXvwLMbjf+jI0)YP@7gDd=PB6Kohot7`jX|px{iP3_602Tyxh+GZrsV8iD?-M?dTHtfP+^9Vf@OkIfz3i6=6nnSVR6HIu-!6u-bc{UgG@Yo{m$L`)+yHg&N#gPT43kN;&~l8;C}b<)~Q84-7~kt@4a>DihTC{-YD~>M&V1z5gh96_L1q+z`tcxP1L|A)nfQsJO42t#ZmQ= za0Y+;qAFmV(^qhXUS7S;Oa5H$d$MpKuzm6k`r7mGe!fS-mwjdE^T6@I0@slE3wWwzE!P&_xejxA1&$H+E=O0+Q&+nmIJD~#u0({=z zeA@^r8TwBXpFJuZ-!}(KOQ**+ZEu}x+uv>KzOQ!zHaGmfd>^$nJ@hT_#&1pAeDo_7 z-`rkJ-`ULOYKQT9E8ow)U&#Y2*B+{p)tAw{I++rzm^~`4Xp*%cXr{5OfnvQ*yWTVJ z+0R{%?_X!4)$U8C6FY>-9qrs@S?Txo=d|52-#xxQ)4Z+PVyS(;#otbNr<0wnyne$a zBVf#eP@|`O%(8;mgt}LNDQOMx#G0|U7^9wXpXH6iC;P5Vr23WDl%uB43%-aG;qqO` z8Tf20UIsUvTe_}YI-Rxjluw(qPpN{w$EL>)Z>E!}>5ME69$S~~%c`EWi5t^{NZ#su zQlc5RxO>tQ(do!cEO&8+yVWOA{_;msDvJr=02hOU&Y^bKsCYBOoqZJ+mx6-MVdtnj z@C!HRqWsNnak?cjUE0V&eL)C#OYXE4 zxaJTxSG<4fJ&#xq(R>OE;5ka2EkM_9Z`!PqE@4(JFre;GMpj8(6F%)gAwOIF);H{? z{T}TW41D;mWecv7j85}*m}wD9%1+}S&Q^_?(&78;yskLk)wvkH-B!4QXULlG#-9{? zDr#hK^)(>LXrWx_Sta~@x=iR1Y%%a#MwxmQYPMI7BI8tT8^c-6zEtVYAwp&Ff#Rs{mI_3xIX0Hr2aF^EF@CDp(+I~_dQB1j@ zg*OZL@P&v4IJ!LJ)yB%05*23 zuxW6er|xt2`L4cm6*>#Yak(SWW8E&k^exX7@0un-cOEB?(-&DQo^Ca+k*>{C8($`m zN7Cm;B|Eo=$LwoM?g!$kI*rsiubp@9NB83=NxBzFHNN&6oln3^F5x7_B^fm)Z$>kx zh2PeD`%S;+@$tqwqvgxQ`~K|u?QKCjzI&<0{p^1Jq-aJuC&g!%!TZW`<2Wnl2+_N} zyyU{o(qUpEJB5$IQ|GDkvP$=<=(#Bm=J3GBadf|uUPgXdx^vUgu4DZ>n;iK^+~MdbGtoRpOw-_a1BWZSnYg%Ecu3l{Iz%QDvX1^&!~kG2zr5(&l;A1f09jbyQtWBkT# zDRPbraRnZ}xRbzBa$!8#OQXv}$JMc!;l5kQ`vELH=Eno{McZ)1OvbmL4~wU-?;C_y=k)Gl!;o*e70V0fw2<4T{{u3aqK6ya(kFRhzHG zyazBV*g!ZrSJVKzc^J~pkG$m>>&XvcS|?@5iHh?8Njda-g?aE!KUJc=qu$CG-%a)> zT&x12heK9b!~$=_HH!v_+EbCf@GG^KO|s5bM2fHQ4f7YOah_dWasC29^&$qYXV}Fw zUaM=^x!{RX(RFI%B{g1GZ(qfa0;wKuqQa-&TlhtT03F=uJe%*b3ei&3&K^qNtFH4V zmOb9`x%WfE_4%bp9h!w=)?17k%3V*fK9@b))(%*SZs_ZU{PfHHgaaZMs(#XGq1 zNJP)n^Vs#p`y#PgN3n31y3Y6Z3#EGeeTGrj>;1{p73Dif0}p!zJzBo&98FGU=3S{~ zN#{HjRd{)tT=iX7SKG2S&-4^{zwmya?J$t*ep~)IyVTHwSwAko?4^cLi5RyU=rG26RyYc{#D=(*#adXg?4{I4{;!O>*VUEkM>YDmn>={&}=#t zX5l>o#cLp?+3>q9q5B*M$o&jc2FL3fthfk6dI;+)t!YKdaaOGdMxNRCaC9 zV&!g%mDHSGDC_5>&*bnb`?a{sXX}RTb*EB?%`0 zZs$eL>3wb1iDK`G^^Z#?@W&G$2L@x-_UkT#s077;RwDO~lc%t_*S7tDzDF6`zFkTL zBbn|~eSy>M*sm~_n;&Q*Opl)~S=(GQq)Da$1U81pMj3BqVr~AFb2mN89IzPU1Z&Oq zzeslC{0F;PD#d~{Q$V1Kwz7yM_TdTKM!~Jxs4XU{^8>gHbn^xS5TNnX@DqS|;GL zB=SgDgF+C^O7%0VMM!ftMQ~k2b+GV^FfvRtEFe`^>ET7AWa=NxSE*&_rcRFN-6aqu zTPT0cKjOhBh-*U>IG%~L{y}17=MMQ&bov=^relC%lR2(hd7aHXbGJO+ZJ=yY?G{Gt zB~~@TKE{(67lz7#rY9}HLzG==TEl!293I-qYKvY|ud7o8mL!IJ*Ro{e{G#AxIjyq5 zDH@l_bH^)dkD68=47aIVn}lSXy@o4XFQ0AcErA&?Y5ABCEN?YnOdWA$T&pbi8_^(! z;lbIp3U5%eDlp8LO~brpt7~K3!`Pfc6P(sNZ-?C~xC*qPDM(6tr1~gO6ZOoBu_^V= z=|R7x=W=$EPIh+8VK< z5c{-uuu?2W%XL7phSJnsX%Z?Xn}y6m(I9;RSSUc zDe2E))ZXIivL%M?b(%i4sIvf+J*15}$0zo$fU@anvuJh%66ik%eVj3K<2HfGUAVc_ zKZ5gZer#=!?;nF#7uv0jq_0(s=Ynb){qSEUY%rerGDDLh`pfVR3>(^Ap8~Qw=0#Zm z2PLz6~@Z(8uXvloz~T zg2jI{kCJQ~bRVqAZli+$Hm9vrC7~@dU6Nm!0iF&oq_AMZ{t8W4#l|ZW2L~BQ_>qTquku}K(V8Am9u~Lo# z^8!;DlRBDPJKV<-qna;u27|U0W`mQmCQ^rOZk_!>WsQ0$)17dpNl@Xx43x53-BY{D zYQNdzrsuzPe0S#%? zZj79F0sh%1KL~Srar_Y=pJD`U30+r$ED3p-o0w3SF<~J5iDzN`U0@d6)-R^+j$tk7 zeGHo=iIO)S7?x@fGCMgV=T>Jetvo2?&9@+i;*;)&%4(FjX7X{9_wD_PQi@j{=T0a1 z|JhaNTG7u5ORh;cr7w70OKE%l(7BinXBG!Yt&gkxJR%|R!$tu&z(Nrya8e7(xA{=@ zSnFZW@V11FAOoG2MgIX$z>TqaDLUuXyQu^^uX%9(#g#UmhH_e2i`d-M+l=1$D^rRg zZm`XbC`s`)*p~Ckr5wO^kb1tm#(`i^4!EBA={2BLGDWNfz=<#|2Y-RcITiKXkTr=&=FpKq5aruEVI(F$sugMMmq?poxyk@<*sRc#CsF5`kQ;_aj?BF z0(Le6)r|==&*Dmq*>QtFG2G^$%dL@~Bnt8h zZ=SW^teqES37;z-r|qpn=8xE4uUMU9qG#)5W6L=%uR{g7h<%3})~3MKy;LZqZ>~Nv(3FhN9Vg+=jutIh+%U}PSRvDlak|oL8vKfPxD$jl zpHfI8bG;J1l17^nY6(tOMj4(fy)2`)vJTyrij57Uj`p6;^JWz+&T7K9Xul9$wflp$Rb}sUuAX5^3j1?!JcC_5qgZ6E#GYVUdi>W8?`0K&P znham^vxKXd@1u3t0Vg>k8xJe$ooJ(-aoG$H_BVHb+@izVko00qeZUI-AD=7i+fzlROuHs95h>1 zzUA%^-$X*~%t`IBY5-z;ss1Uz?+>Nde^x?Y=lbP*auj$K@m+W!BogMvPnxWKzG+wZ zz|kak9aEuYxqHW9Z+Au-$3)5VeXs~QDVWKP0@W|5h8}b@##9LwZquJ*qh5eu8feHN zuxGJoewbKy=lyi)!KsoBVOk4=2^h-%sa38m5~g$lUm_5$4UkjY?C(SVJ0t?hWdWPG+jXm?z-eB)aj@Z+v>jM(x;8G&Z^_qTfS$HOSY~;b&(?LC(0(PxUirc#Iikz zPjqpvzw9)!Ef{LCsmmKO#L~yo1|gj`!@`(T;MS`e!^3Q5D>~p%d*88Gt#)Ha{e$T%|T72o?AjStQ20B@oq*^m%b>YKtL|{a*L?-__>;inHAA! zs)^t)QX)z1wmzwaKhQLP8aiwDtlOaWEN0D!N-50M;)VOCvzT|hmh$A_X;_FaExAM` zKUu9#9S4?a0GQUC4TH5)Gz%Lq^83_`S45SUTog_gYRi=|^`pvVcr4bLt{AV{*{`BX z7uD>7*@}+0oA<8N;7D~^CEYgQA7E?&C@^3`S}^$q{shw7^er6KhLI^9pP>)#->(!E zmS44-zSi3Y6wJSWB?m_E@pzlC^?1aheO!o4)jYhdXY>}@y>aKv9>VBbZP&=hj+jjAL>4c3C&vIcNU#OFdb`X$TH zDQXrzu+7McoXZ>_9IghU{16js;uuJilC%<~Mo9HaE?Dm)PlZU(*PADYJ|`EcSJK{8 zW|zrY&*;MO`FTi7(6bYL$*3NqTtBd%KyX|Fnb@O`yC}@jFc1*+pi=zoV!hk8B#(YJ z)H~42Q{t}*DIINIKlP^6EhDhAlaSGJcK19HdP#qcF@KM4W?Zg>+L(ZDD%uo{40Kci zOa0gV-EPwAe+{ch!5RHY!?Cn5BE=j~!-hBPVp>K@b|LL04yU_IVt8O_+$jo0%us5R zoC(&VmK?ugP945X74wvi*&^R4N!dgWopPvLQX{0h@TK^Ew{Ozk+WDg4+U|%8;b8e; zIY^g$n!(oD&lT*dZ-;+NPumHfM6@>{GfF_29D(PDhr-y&?F9aV7C*hL7=7a~+AFA@ z(jZ^G%;evBP+wijgNi1?^xer1>>sLreZ7hiCUjyWd?t|0g+3&@+_x;`7Lvm-20$_JUc0BaOL4w0>k zY>rJH?(qtoy_^t?Jl=-nk_(nck$AaS^Fu3mwbTMZ-c9yaVhx^f6il5M55j1oa#2uO z#&FOZ9zBS!9?1`drGBkGCN%2d@HjMMxlpFfz$W4yT#>V+HWgtQ1v4Rds1S{$EWWSy zKg_3UQGd`Xk0iPk*Zm&k^P+|#`!~Viycx~cl54(xCZh%V4Mr1lmUm)nfeHS-OZ0I+ zB|tE8Sr^(+<=C9?Ig@cDW1;ln{s^pj4oE|pVXU6m(QlLcfFRS z+991+>rGsqi|B(}JgFNUwc_BXeE&TEYEB~{wLL6qNgkD?X1hjNLOPHwSwxjOZ6KH*kO!;cs{_;m+Uo%1 z{Xat2ZTue{raFvLx;KfQ&ZxLrrJGw2J)J~C=#%m#ja&4CEJAe->A~h%TuxJ)iyl^*-oR(sc|x&7H2-@F9zpv($nX4(n{nnY8*hl;&i$fruvtitH2@Nt=q#&(h7BvS3_iI!Xz; zy7$q_PPssFVCnF9dCOEg3i{v#%>GZ)^2gv}oNe)6=s#pFgYYBz-3q3YT|bJ8dosh* z%D@bg45RnM<(5^Z*wDbNv3@Us&~SU@QP?HLX~Jq1b!b9WADhla4P>XK8^*egN*mJs zzQXu3k-Er6reotPXTx6zp~DVJGyUuT<6JawsaG0N|No{GQw|rXA|ZYngEi==`i$QZ z8u(Vg&)h7dYu5-O#gkCEY6LExp*&6|JN^z(j%RGt1{7aD^vaFocZ+hb47vxXWKvEV| zJ~+PfOpir)?8tBH9qQahh{$2HxsRCET*o-OTW1nz=Jzb&3-C%7%&|mBiqELjlD+5IW2Sb-RKf7I1Z@@k{F@hQZOR z{LK@`4RQ+EmHW(lS_NfFw@(U-P2s-PO|=TKpy z@|RI3LhNs;*_q3sZKgm;t^H`{qt!txyZ){D!J!B3L;glwZ5xb}-mczm=0fjJQkT-u zqPhB?+auD#{`%|+g2W{47-d%* zGe6>qK)YmJNBMeKjkgZA4!8@xJC1zLPUr(qO3HQF`3NR+D#y$8Ult`qN-48L`Dw)h z)hv}%p7BuSq7}{tN+%yf>y~Xy_^rpwo5>VT3Ro-d`F|}a{md9HA1t?;DEHdCtL+`$ z_r+2xtBa|B@6qMQFR|cWV8g;=+I4oww`{446Ru!@)CrGf9jJ&X*q-NXFV?$%kU)os zQ}H84v4ReO$~K2-ZGUx6(7q1$>E~siG7S?kEAak^zB}pFtt|tsle0PQ9MLI+k_U%X z-Lvr1T9Q{>fgqE#ci$3xp5l(~^lcj>J{odK|#XL*y)5tl{l>H zuw{zs2BU#_f?m(=c7{R2vt(Q}<`b6PAvjbd&Q9y*eejo-(e0xV9H@tgoUc%ZIa)tt zTqn-37KF@@{CgGI)Q9AuiMtv@WiK3^@bBGk2}IcR6;K;eGSb^z%GO7AeKfEuh0H(= z>M{D35FlqIuZxi-e$YbNX;g}`DzM{PbuZ@HGT0@??}R}rZ!HGh^Tw2V%&u6In@FKO&5mAeTDf81r@)#dI)9PEbz+lJJwqPY{)dc4bG-dK-r)5f0lI1x9=b7AUI#Wlm*_Hbokz1eMaVN z!ZbrIOLZrs{Bj7g=F?M{=M*?<;(Va^A`5 zv56b+dUJjRH+&vcq9s99Q*x+3-6AuTNp?I>Knv(tTM=I=4DrmfUbFUVWG%v5W%MnJ zEG=jFL$0RyqgV=@g+9A0C^dp)>9<#FFcr%rc^6}PDzl`{gmB?jS!EWxe!DcReb+q5 zd`!jo+t%I$yE9lEmXe+JIQ#z1RhIQ*kv8xSSAUg)>a*;%Y-J6~TC$vFQd}8!>2b*R zY3OW2rJRh(xSAQeiz)m9$sBWIbYI>?kj!kO=Lp#1FXhEC*4AQ^ubw6c9na3=wO8El zY?iN@WIe-OU;3@Wyuuzr@zo`WLk(^mBhN4IVs=>6P4V4f)TL{JUxm2*?+~)mfv^m< zGTSpD=6H?FtXJx}b-M3-P`T!nL|NOc|G=VP_)wT1tU?c?(qqH|C(a|8aP57=AIf!IZFcm(-rMjP%C3=W8KPyn|QQ|;p^bnCMHFTB%w5ZlHBAPrJ z!2}JLWiw)D-5M8<43fiLM^76)@$VT%8Qufk-(*9FclY{{nFjnDho1M*TaGLy1$~!e z)r65NK9bdF6hmY)4ogNpW}dmt6~S%!brnMkda5}x)pzN!d?}$AD$ex3e*`JhX(=`- zSJ66?!UZWuD_^aYvj;k;WfWN-+F2#I?#zF8wST2v0_(XOTW2vXOK6AKCH&%YvHh(O zFkjq>b!ohndTwr_s!=ondyJjX2)^T&rTL{Hn`iAMRwx3CY?ClQ2=aJDZJZrZVmA=l zel<4FPZkg*!TuKWi;86;W-f;8Jko_T%#r%I&FWj zS9%ERJMBNU*g2gakWOK&<2fAmnY=!Lb_FvEsfNuyxZ6eA^yjgIzShCGMtGRNz1Ht& z*R;vO4Qq!Qa^(2OS<8f}i~FZZA_KkLkLng8yBFO}hnx4F8ec_tDx&n7IFlag-~Fz^ zpA;h0QbJEm8B=(GOG{YRf?7w$X6@_cB7Q$Vo7H7P4!paXGAmaS7DODLO4^Qfgde;% zR4-qK7d{%Xu2^A7bI0 zmzID44K5iH=+B4()!Zj2{dMLg-e_IboONY!17CG=-v{PMf-mYpd8AkT$X?5A1r2Tx zq6g%K8PF)dxJqz#rJA!6>i3q1FwOQ`t39T~!tP(wPuR79@dKMbJG8wBX?zK5Oe(y< zI%F%{w*3jNkn>wc*c}R8$n@;1mJ>Zwz1JY>`eDDilgUQW`vGst@!npWe(nXqHG9nS zyRXlf7^^SmSGo7LMJ=xeVRR+ko(E<$U0f2CaNkviMzABC^n@Nj-%K4_!`gzNZGdl? znK9%)ys!Z{fuRA#0F22*==-1rwhCps-@bh@E0P0nyn!erPGPdfFsm?lGrE${c=}{k zyexQ*VHE?z(o^hIPTQvJ@#g;Zj&3I=i-qB07j9FKN^vsu&`AWRMKt((&e}sxr*6p zApIlYjJa6O~NnOih02)VnREqF@~>8w%?I zaWWG=Wh`#^G5F|nmxl;g7E`6VrjrN{@l2WETQq8gex4rSqghhZx)EhyC&v(_I(JT2 z3ewp$J{N-TJgV?Z7^MsSZ_khtyxeAf7 zrT>S~s`N;mO{nX%$kd!3@q1TS@B=^-?0b9j@zF3RbM$z)2G)BE5@rJj0!j?x1fr*n zm{hr5Ubzlz@^}@G=bzkGu;t(KTSivH+f&Emb84w$uLaWHz%C1ecWze9#5Q>3ik5uiy^7m`*o$r|_S`RJ70u2x0P;h4CJ zE?DgB*rq%~7WfqUYIkp2K@Qd2A?7#q4>I+CnEf6G>jQE&3pQ3@Z-&ejt!>Z=ivHM3 zo+?rdm7sU$z+_&agJ-)dI>WAn6fKu}+2{bn*D;eSG6S4N`~B8mm^5h(sS#vbaQiu+ zi#+C%^r@A6L6qh)vIH`LQza^pxa-O|w6SsVO7e@lU*wiyFsN~rB%~sptfcD_%SXx*%fw8) zBC#-Nc%*Yu^~(uA#x%&(YpxeoHoo4i>zx+My+>e>&IwPv?ShFZ|Fo2~(f+((w7HHq^|vIe;mi zBRG%(OUDEA{KjlEvB&~OCEP9?hycL{6JQ$ZJzCIn>eU>yoCN_P#=mqLXv6visi2nS zv*8y-JeSR9I*4p+5}qa75m$PuTqtTAo?KA;5(-c z0}|DXxlKx>X_lM#`0PEv3`-W!4?egcv4=4Hm>3y{?-=zUqWn-9+x_RHs#GcgjZjg0 z{-|@fj9_BDr=U?TXwCkm)N2|P@1?K4zP|S^4ck^R8_$mIjNVwSQtL%LpY2>;^xJ=5f|MCOiIks~H#QTYa zp`dd{cX!df0%q=a7i0-)+9R>5Hg~=L&K!E>Cq1WSn;p%fdkD`wotpp5+YrVU(xxf> z?o>C4?$2Q#lo7&u&Sipyl6HfVzGj4i2O{0u%bn0iO3e;Tz*|O*Vmwg#2gsw$;lT;_ zN$2He<%Pc+T2e;r4LJLqbJ@ zEP-cC$N)gD5wXl2PpWQ7e(`v>acuwn`R0=FHQl|<1-BgB(U|2#cW4n`T_-}n!Zm`{ z2jpxT?WbMk%Z`eovwbvjo=3H5-e^O1zp$EH9j!=dNN_D9KIVGZ;t-p}VlN{vHmL$Q zKo151uXk1|dl~hIy#|@=4js|9&GMSSl1#FX`i*ETyHRAcoD1}t!74$@MG$-iZU;D! z0^^Q@U_Aih1Z(l|nFZ0Eqm|&!Wl*=85_Z!}H>a;`AHO~1C47{39q%Uc6N%se|EjCb z(^}YcNkv?SkgnS)zy``Y7x`gHBqwQ5i;`l$UPbHcV#PYXQz|$K+nmVatXpVnxEJKS7lonK+{>^)Bwd%o zVJ(IeRDg~WlnxYi1Vg0IHs+Op9_3^wqY0_)!0*&GXp?oAonbuAid~>JXF=?$6~U=K z(NSX|=_>Ho{lUcW8yxF|m~t>E)s&(*iQ8sKtI#1@sax7U#YgII`OAU@w~AqUkZJnE zY??U82x}kf*)*&B{)+qo7O`?2oMrSScjdJav%j* z8lO((+$1=mSNrPt$S(I3iu-C-6K!FbKVF$V`}3h?^UVWV@I4`b6iR!FAhKS;N{?wY zq+$};p~;f!4oGsk?`1ZkH?c*|wd@(WWs2;CBmieTjtYy;wT09n?4&_?KVcfS?hAbd zwh&+O94UAmi$ZPqfW{B*c>HxTi7NZ-FHiW+jOARnKY6UkJ5;>jT|UWKzL!9a=nGW* zo)Fp|o&=aA@fm8oY`tq-ZRs}D(tFPHg{>{&0(||<$lU$Gqj&OD+l5jySZf&))26b~j9FjB0OS zwfESxztYQM)+KkxlXMns_a?C0T^Vjq`VNNP?srjn14bDCnH9OysFJz{ir882Q3!cezQNRa&Rz3NvzAymIrm_%|PlZL5HrO>%`uUnH%d zNV_@!{W{F@c<||REGqLpld#yRTbxnjBm%!q@+NN#oP#Vf{Z1IZJ_;V8fn%r;Z5U)7 zu?lH30`m|_2PnspaUlZGC6X9tlz<3N2@$EtV?Q$1NmLW!2}GmGluT4h4MT%R*C+jL z6&LQ3VD&&tk*CHpe0;3=CZMu110JFkx@MJd^iJM&-Tn`8wu8y2pT)@IbklHD4@jfs z=#Nt_UVW=lvUD5X=`#nS^QYg)f_XNPlQbYOAPfk8r5hk9AR!=v6|Z(B6Jx(Z{Ps{$ z=c)Fw1fGJ*z|h= z@f&r8j0bojhg~9o>+cpZ&RT$Ew-O%Vz=S{xC7J?5MgLqfh^j_Y3^vr9=zYhxGS>L) zg-4wr)4(p0pcC0E#LR2{4WNJDUdK@jWLn?0a0Q8tmn9u{ZHeyrUuyQLI1%!xYuf|B zA;f3)=HsCuC8MDNHKR}0?FC>3<-3dg!L?fxGD~Y7K4}%7_MP;}qvd>j^!CQ&ZA~Fy ze6xD=b~S;Bw}xM=Al85K#5)dC0A4^wTmYb!!Y23+Z5#q}K{6d@wq3@u=_H4uu zL4LKGDCxb$j?jc%F$0lryl6Lb`E;nThNL>XriL#yc-7X5w>zFBJz1)Qj~X2e!I1KnJp?JK2B+u;L@c z1j5YQp&<1OnIdUO&Ph4s11z0RJC2@QoNr16iLeUz46TAptsZ92hF5!moG!0&l3JCL zrVV$ywf`u>IR)iQGy#U{Z-{(&&aY>RPR6BJgpadHd4!9B9!;gDMHE;t;SrSzajueY z3O=8)*MNFwj0DGL!9T;ZFf+5Kd7jaE{y^rc^5V$WW_#J9m*RByief_jv`~W^(Ba6! zc`|L(+|*?`6j^A4g7<1?#oVTA1bv}`b5UAQegyPK3g;!^Ruxm_H_9e%TQx*~p8%eO z+9Kxf2z5lv10P95&Sa}%fEDLQeMZ_^ew3m*{#qblE&SwTAyCz4Q8AlvMEMU|a{XuF zL4PD*U>TBwB<5pL&_V#hG?H)TLr;|V-3o;y`gY_ZaUns#3GO)gz9tQRk^m>!*y*M* z*_-dq_rDPj6KufFZK>f%2ijywx#ad{F+t~8opgMg<$wJMTfxj{V|2;Aeu(R9^G7iLRvk=X{SPokU zBVDZRW<>j4f_#zS8CC>BgKJSRp$7Uj0v_#Q71^jEf+d!6QGV#4!Cj0kxOl-0w(dB9Gyot@vkniRoi{(8 z1pDch$Uam1%7O~mL*Bw8_>ck1w6_3XU_5;@dE20nC8tWpInaH(8oG<{u19oPF~Luh z))po80~q#YZf;Um>w0`7myvuKx7i^ThMMt{~0mZX}Vid7(CM4I1t^GO#sR@%QH&Q9^q!7=kjKQ zV$gpLItdxb6Bj!v*Y5SN8L^D;`~w4~$XjA)CVf;dmnb>ze-UNW8v4tyV4cak!71bv zp^!_o`|W^bZa1yxB7DxAw%C0-fEhYM+yB;hLV%-{lcfr-HJfZA?By!yMCHZmn~fbI~tBy z+^)krp(W@r-0r+#AB!D<@m@H(9aUPFD%ACFdLO(T6bcw4|p6@jqxfLlau z@$S-;to{ybaDVzN|C z?r6`+$(EWvml=Gm-_Z9bl$m6E2g&V!2dTzIyC-TELfztEr4sQ}OOVFZ&@%5y(C7-m z42hD`-XRWKf4MVG(;)~`;=&tC)1jv+QU)!<3JX!gJo?FRSlEoW_L+v+kgEF=BMtg< zg6~((f8DW)*e_E*gz`P*<3tuR14KPaMBUWD)WBGo2he)aT8X6vg=nK;?K!?`2v~C?XyLyz^j(FxP^>l(~Y+Zu8M%D;f|A`hLSsZb~WZ z^t9$)c=b!=y+}C=y~5|cLU9ONlw3~MiG9G+N0-&ID7hSmo%UGRq+ALReoZ&re;TK` zU+kpI{ANv@2^U-Ihqcb>S@_^$@fi@c>b*9O<{`D%5rj<#d8_mLu*e}M`_sLpt=jNSiV!yp;vJ*-r6 zChc`2E3`EkbgF|486<^sVX&DHiUMe~J-UqCx(uEolm(=PXbxTR$kMGyNFFR&d%oCG z{MKW&q9>Vh| zh9^BnkXa3(j4ldgkcpF#8}!X|e@DGv=D`-r2!FLrJjX;;g_&w=bf8lUXWy*!30q-D zZ&uA0#X~orx=UI3YE)qa?5%JDeRnE@imUEK-{%&@3_*Azp|XI{xTZ zpZ|guaDHu2At`HI17aHn1~45)>GbEgh1y{!#W%sZ)`s1R3{3w*!;y4TqvSF3mC! zLWi7V7e1lz4N{QG1F0nb(Y%DuWVXyC1iY_(oJHjp9$`OCJ;{7+e64gGD!Zm%MyC@QXF{i=4^jN@ z-XybI#1}{870~@>0~m^ma&^^U1ax*-gYbVIg#AA>ePeKCZPRsZ+qP}nwr$(CZD(TJ z$;7s8XJSq!neWW~ykGT?Q?=_<9qy~USFg3&Q#11ih{jJCEnkQ=A5iYc!~-IA1#p@Q zR>K4W74x48Mt{8^0i7NcFXs@NmovdJjSXJ-O&0w~j ziSBQqXP}s@YcFa(5WXPDd!T~uUMqwGiLJ6?O;NH4|F~W>#3KEOA)eOhJP+y_rdC-j z7*XFLCDqReedoYM7EKF()Y&EOu}9Mi)1vfT zBp^f+J1>yc3t8FUFD;kTEd93aW}KJ5$c@lE?ZY#vPEBP#mM^0y!D$TH6+|RZ1yVgA z(RLP46%rBkZw;irDXJ@+fyQE)O+rI$anGe1B0I**&l+w%eUdrhy=AL zFdwUX4+fF~f+m^=kxI?gYs0YAKBn8pHw*Wi^cmoD(EUx|S`HTLNAv(vN|*Dfrc->6jDv95^5rbfr!f2UzB;n4=r9%yCZ z*Jty0=^uOsF$(bT7U07?`HU*`y(oNk5gdl-6~Cz4V`7%)(DgY7Gh$S| zU=-&^RCTp*w0xDE{{c~owz@|(6Sc+x>oupgv>zofey@#C;Qd3I?>IPy?m=#EhR{iC zO%faQ)7clKAf4t?FxB$ zcuCh%Tp5kli+Vuuvd4jaTv3rF51G8SQvii2lqp43&}+691Btkfg*baqAW@-6R%leo z6ioTpIc0}0kCx%1W?!ACNdDFB7`CKQ2xZy_D=%xiDB&H-7c-JtBmc;yqW{op{^-k4 zsO<+dYv(@i;W?*(j_7Uu%H`q7|I{?B98nz7%?fSC+_}$GM zH+n*@?Qa5QJW|5scEjx!=m!=*K9ttfZmkxj*856rN>Y|XZK{MY0(W*aww^6wW<$`-qr`@-PH}bAi)p#1dbMoo zQ5~(GcZ;@q4g%G-`b_0#dc93;QFYIPuKEaFd}WJ>drst4ZF6yXw|AenoMM@$^WgnE_HcRgSu&TU-Emu^eO0b+1m=GGPTHOc zo|R?)wQX@@cfV}pVO~qsNTVXmxO#sb6PD=JA$zr(U4t5CT4{3`p}_?b1|oD=u+ubB z0P&U5q(qD6C*kCocliZ_|E8c>U=4@r@n)HP!@GkOdOu_Z>|^ z)kyEqtHh<`IxR>~$|EM*NR;6l;`@j(jxoM)c6CXL*DIJgS9Sl9h|~r?p<>*L_B+jl z%W+|A3(^Bum$rVCQ^y9iB9M(&8(guGe6eX%YT__#FO@;N?R=MjtqpnSReoI2_=A2P zRUR>{leI-yuEAEIupj>!36Op#+qKts$^U18VXq<7~bE+2yw z!%7!1+PD!i%H55ip0@&S@|3x>r?I@}@#dcG(00u?{!%`9Rgw64e26S?+k)t~Zl{<2 zZk&;_pzs<$b8n%ge&-IAp8T|h^8rIDPQ6e%0O=T6H1M_{;5~GH4;?1Tzr^M-l{t_h z8wiwkJTI%$8|^~^tt;_PWaJ24>H4HgWQqi~0(5~znlicK;WZ+P7#WAuC<(YEe;u?} z?`aGBchLr6A(1+v`ELB-4iTm!V3Z(`TKKEOtVi+Nq%h6{+mN!x{;21N^5#~q@9X1l z^R?{R`})iwEwh8EYV!687R!WqmN#$XP&dc2FTnijPevDSJv6D|TJG%Yd98GN|FbPuA33(C2yZnS;#am_UgsY0^85( z8QyGavKl@0uyQSDih890;uY?q;^!E84B8lgcSTc)@aj@)8)`0LeKk1&iaM-%jk&sP zkT(?)uiCK6Im&?EO{vY|0;Cbc#-{bCN%3hyNX?NrE&~rJ!bRtEm8!-k?foU*!{iHw zQu=RODn^HO=Qa~^4!~WRM2pPFJDJ`|1d!d*WdOys8(I1`DpJ6o+5aBskUgLK<`$h@ z(I3*fpdm*xy)%ZCoh>P20+Aw>txH%^?#XZ`X+?Xfz;U~hS6gA0!%t_!K&1hv5m$6_ zMTnJ&WsVPa>J;dk+{cH7OO$;6r#1VhpaPK z!fDD0n79>bgbSI2-@Dp~QfF?npcvoQDi5BAXK56F6Grxc$ISD0(XfT*Y?uRi+wLr? z{w#Xu$V0C>9$3Yz!Kq>(>V=UnwkFNV_^=wfbgp7mtcX?BS2wddXJuCi&du|>Vyf_C z;b(WCe^ToubT?N&>H@CLY_xHsaeHC{o1;}cf9$NTrco+Npq2b7J{2%9f2ljPVGf2T z1zz8UEor*L5eGOC9hCv=$$dd~D4sFleas9_(!pH`6UW*n}L|hKZ z9_}kn-X8UUss_$UG8*8=h<7s%j
dAhaack)K}bX^XPI%BB@yp+u(%Bz1ElZ zRRt5djs84%ZrQ)6Sr#N75MTHw7Wy)a4L6wBTtsADS91VeGfS)Q1c$)lFh|Rz))x$a z??NdyIS2vx*`L4ZuAU;yUIdav

lnK22*YHZ(bLk-Cqjj0z?_&#JDFJCjHcge$Sv;}T z%SoXob$MERL$cMN{G;#qS%|xXFB0oT;yrLOwn+UjjhDx*y0kIIx-^L)T&2$?99 zeW|&z_F8%TTnRMw?xiD`s5OH?gNESYg6DI3PJ5=#;qCyqekPf;Md);*rZ*|Jk3mnx zOhTRChy)sl2)kg4E{`h+8S4fvvCL}D|IwUt~8VP~#uh(b4d|vLoTXyz( zy?5?7-{x%mZVl$_#m|mw3!j_~LXCA?&2DH&(vq}tf<0s=9+25Aj9zLjEM#64p{?zU zLLA9|EMRP{yos_ZV3UK9|De3F*;i4$Z}3{F{)l{3Kq$6iHl5cPq(qaa>UL!-h6R&A zcMF~_ici2x*s)Go!N&$!bg@dzWLeRG7#(UU=rrtu7Q^IW%>h}&IXDbB3;-U15Mt{x zPW)WmQXla94kcW+y>rZ+)#4m!7}YD7@Ssb~w5hxzZh^`)nACJHjDukFWjGxljzOriB z7S@S^y{cb-s9gKZb#bnx`lCwQ+GN{pzh!(k!1axz#mK=k!DsvN?5wU+zH~)wb#y4HoIUNbowB9We6!F0d zr60z2zb@l?wvN#A&WkbA?6d3sZRExSuRka`YB+M(Gr;BWUY}$!flQgu-5pf6Cbu&f z_V79#=NOB&MBI3DhvQh}`7AsCcVikBr9*`?=&0&2A0ah5Yxb02y1HCmh3lG{Ysm3j^W1tV4pw{&(gPF=PDF!aMrH#)C38d0L46>AJ=5mYFqb(}`~vs(Va7x| z*te9PM?*v~EiMx^@2XiD3yp?^$f(Jp;vwREz*+BMgfza|Z`5fE#NR4z&wtwkr)pZ|7cMFw8knGNLIv#lE)>n*7Xz;-tcB;p`0VV)BE=`NsRFgjEH{qeiH!f%yv=~q(#dAQeY-U$U_jPgsD&s`Y9Q7d<%JBv z2J!p>XEiKqxc)9z`!3lWAk{v1%u}&w^vDT~)MmGG);V`fY86I0=I%j<=e|_>qv4oG zz6q1K0NEEBGSa94azj;kCd6N`!NYgmnfZuAux#M&??(Cd#i7B&8)D?!y>QqRM1LW~ zXiqx=sxyu`+jz)S@||9+^LHM|bSr{w#A&-Leea_m9U`P2n}HQKMStmu&QD*jee^q4 zC&Y9p0-d3iAs(cf{fdDWH`1J8FR}pcTY=_ZJ6wU;i3?nIIEnsCoitC%Ue&~HPRbT` zLZ()5@uH>9*%cUk0hu={JbY$}=UZHC{y~lg6yhVzgt2w5a@t;npjBz%xW+p;R}Aph zBbtna?jY)-wig$_qc!R~X795nnrhmIi6-u$@#T>IF%6(rf`rc8imzVc$&^L?SU8(2 z!AQ946E`LNLkr5DFV#11X6;Hp_H*VqP>7eE(q$i#G9k2$e(M<9)L0UTq!2a?PT+^a~uCB7V28sg_RUiKj?GKcq6EkBatFs+u&YI->-(6jI8N|qsN+wXt$ zx%UGNWhuD34so~Nv1!bA*cRA4lkv*@9JXKLfB$XU+-I9$r}{B-6lNz_mi;VtP1@We zbARdA8(R8Fm!!}A4Qv)_mxM3SY+Kx3ZX~}SHC6(qyD=eT_DRQ++1pEohw@ZTq8M;B zsz$-w;EtO$!bc}hHw)`E4C!c%vtVM3SEZp#xj(t~awIPPsNZl1YF-4F7R-{K)^s;f zrlZf<*oZaY=4yy_1VgIKYCY4CyUxgM5C>;kR(b_NB(fN8D*yru`{CFw)58jUk;QW~ z>soUKgwiIlZh_xt1|k2|wM?=YwA1H=1s}_pJ6gUmXx|)I7~lkOimN)a0C|6Vp9=JaPacsRQX?Oj`PHo0PFB5%~MlAe=d>AkV1rItjm1%Raywf403Fz;OuCmuDP zhMQ6QMO8%W;R}#jq-`$P^@^a-f=QHqIGl+X8>b3QiuobN1gB_q^BUwdY)QyuQLJ%v z!XP6zm?!2#vgKs5>u`JnM*$%dd4P|^JO_8sKzC_x{TyM_ab>XDuofg7i)fV>HS`8$ zEySv0CLl}d4UW16a>AH{nB0Uh;<3sE!@0($u*(uRd(E5`@b1v5=Tz(?r(SP^uYf03=IHyrA3Tk%9(Db8KN#sTGU~%t-VNwk*7!T0v@9P2!ftAfw|E z*PEm0sYU?{b)mGkEWHGy;u4ixZYracGPo z6pxjl5DXI|Mi%{{MYf3sAwR4|3&9OS9-*;*-U%>!d`SJYW0o@TPq;uqOXBCu|e=f7gG$0Zk( zu=8cVzu5rpTeTv`S`2U^sYru$DMv*8?*Jxz$fT?B5*d#c-MIf+=lmsQ=kH#H z=3g6qAFs^Xl#o;Xih^TD@5vLQ0U|!K*SHbVg>_4xfm4`tnV*oNy8M&VN=pbg+74bL=N&$KDkS#`=282|o zUpNWwD>k~}N#P(d+{MDE0@3M8Goy-VC=y-|>B%Z3Lc>8#OdLXEIOK4@Xz-kC;AM}( z^i|xk1x-%w=^e_s(;QBScqc>%7^@g75&ngin3fo@wivkz6~d-1VtJYTN#w+Wilfhv z+DX|+P=-(OfgCwYFUJTpJa9M=!0e*POKS}p?csduf;V{nC%vsQ zLJcB+Lx4Vj0#roFr5{r8zW1LXW2Y!{IBl$r*Dn`0I^_s~!RCh@x!F~}C9Qgigok+Z z8qY=aJSCKkbrCWm3A&Y4jHiJRaLIuX84@$wQ3;Mpf0(4QkBZw*v8~j?R=u$CpA+Ht zQTH2`BZr~-NWba&SeuTFMRR6jX>zyg2M9Q}zb$1;IwKpi*p-ALl!|iVO z`z<=)1B4yM6cqd6zLCgBWZ(U@#^&fqUiL67SNeIG1!Ulf=)CwN)00WQK!wAj7zJu_ zwPz3~e!3gvxGD9G%1#!Iq~>lz9k#40Deg>I^cR7;*|d6Y8uPTbT+-88w8#>|kDo^c zhgW0&>cXD;whBLXo`nkc*^s=^Pp)vD1_d*HuS=*1)u{ghsud)1tp!9c9$7bO@^R%_ zzpPXXYvU$f0O@Qd44AwKEG-BH90^ZJMbkNtzFC1`+$20($yH`HiE@m3y7_F-c;-=# zjyh4V(jk&gQk;nAHxhnD>flP@8JDUN%alJVn|?%E!A57ba`PXaJavyam}b+LAn9xc zeTEvOzfNi6PEl~)j1j$Utx`O2>Th$*&;xck7R${&0OukB-+BAneY%c>lDAnK&t9r) zx%?l0pML*ZpS8&J8Ym3S+Kb2tP9bQV3rqbWcT%Y;`A>ByOY=5eyw8ddAtF&85q!cpWqmw3 zkTT@(DE1Xm{q{#y==GW)jykI7aV9o~PQ?lgrcKO=CpA~_zsYT{fkV~{-|)~D%N|=Q zO*QPRxq@9ZLCNaO2nRL^2KRzyK7hP0`h&rR34MzxSMD$%eV${O$4(7tO>f(fSHNgh?%ERBNO?v9cT3H<77pa z>ATRBndVbxDRp{ObEkUZoant^i-lT=Cs@-+2^||Kf6u6^K2+!a!6$fIRSyB5hXB$C zQcn4hG?wbfh?{ZB1@3|LF!3^bi472$ukLCbhDeHwHAPk7FZei*$^rj!Bl1N%Gb3Te zDU|Dq*G9_-{?Eo<#Wi@a_A)|LR zO|48R82KHKACw;|#i5`g05aS|4wP~}vAW)(S(db&Qe>Sh9_jwD+(P7bxr#91?T<0# zKgmu&Zf;SgnMwKA*@MPdIAm* zUJ&+g{-_OcUX#|j{9M4RZ@9nA*q-t?jV8V#WdvsjAQ3;&vP!~2XjO4$2%^pWHI<3* za4Ya*k0vjw15jHp|EQrTJtj%uI7o*p2_YwaP%R}9c0@i(ulAZ+j@za2)&nl6;}N4< zkEFk(HnX(m^;QqkqNhP69jv1U$djC23G^_0Z5OUjex453FEW|E%<55)Oiv*^d<*@6 z!|IGm<4QZH#6&Rv8(n@Db=KJCq1~0|JlT*X7zD8Zgd=1Mj?+@4-PJ2Sb}VHilK=3| z)-mXz(`+u>%YB?&ge18d+tT~}<&B&qDyqk!KCh8BdK)u5~~Hai#)&K|6#ICgW=)f*_) z{;UpMz8b4hl-o##>H?1j4B`SL0Rkx5q9gO59DN44+2N;Qr*6ruT%o6A-o*ks10#|x zTO2Y0Hzwa{!{U;KvWIX&z*IosMO-UyRvMg(m88o~tsm(`Nrfb;y2U=d6NP@?YfxoA zBYv$Gc(my6Cjuz$;fc*DmgPkz4(Smwtj^(&shWwp$>vh|2dyfn1!@=%0Qg7<60-m2 z+s-{Z_2Kpj!&lw6>*v?3eEV;J&(uJd=L$voo67=)_-kt>8hhI0PkxCsX)TCpBkd^` za?usZx|gZyRkfF1lUE>YB2cp+Id-!d9E;VfZk)3dGUKs`5Q0sJL0A6yk->11`F6}x zK7Z$yFc9l2WU{$nStn=)(Vynp?zQQnA}rRUWBxM+3FG?v?DGF!(|W8GNh7L5jDT!A zX!q=U6D12W3ldX0mNg491@o%(B~_Ze#(s1&`C<&$m)0tXb)p6E%>bnZ1({^aRcr5B zWu3e~r#lf)P@n2WNWX>{)6i=OSGKclIXP8`EMGXnrQUF|8Xu1~HtD$Y$JAXK1{QuF z4l)27n7b8ll$}j3K+{}DWz^8Xg8;>1&N3?Ky$DTg=ddgqi0aBxB6e@+YU-mXXdEDLufum{gOGYy!M1 zpJ+X3oF+2$-dz1}(Xs}=-3GzwYvn+oUm+XDFP{(YHj0$oj@%cEPvi99O=hh6&Qw`L za_VQVTpd{|z5^uiVy9B}?VKtvYYO7z*aLZSa8kAL+R**8wzbqHOUkpjN;#MeS`nCK zYfNX3Oso*0e{H5+$?jQOyveSJI-5Ga_v9P-3O-DW+R>NoQ{s>JfbN`j2>@@f05$wf zLSj1i^xWM=>*LshmS;ta zjseO`{DwfqzuNVEZ)zPb)_s&rS;yodhMo7K_rspNf~EJnJ`?qPOlgp|GC^CT?K(wJ z+>4%fDny|2MbK=)6tDhoG#KmX(C5o`KDSN%vpW3k``T*o)*BQ^C&VzDxoL$HnXkoE3P^=(66nDSi4;i zYlo|B+Rv*&5@QVOXu;a@H*p}!N%E&QM@}_EMnauv!Tn7s;6a`UnuQ`svKl)dXUTC! zbgnxLOP(xy?QAa=SGHh6{stQyHFyG50)i2G*b*{E6`-rPR?%TXM;<5<;%SD*Rj}L6 zjcy`q8C1KQQp?0Z;(Vq{o};Ybs@LaQ1WV4={7e0Ijz&`Tj!@`MAuUW6pGGQar>+7| zuPm)BU0g*jUlXomk)j2^o0OYAf)RgY@PfeHAx>WmK-2&leLG$OJI)U3Ru4i#jkmYk zWvNz9x8w`O*IG_w@L&O>VDMmqUGQCUD4SLXY8zo=E_25H?VTZw*~F1Nlx5OXrDaPL z$my0>B?NI8fXL8@%fQo%%*a~7V(aqd9s#8+0rI%9?J?d1Yb>EK zt~Cv3fnSbYfE5QRg6agqJUC)M8p7jWsk1?oNb8oRPO!SUBki7|ze)sWuJLzn+rcb; zb8mQqW;-S0FGHvlF}`)MAy)dOG^#FAlvX;wbz+&530h_hkm%BVz4|S5&Qb{etC>5K z+APi5Fn$Nja$RAh|I8iIlLtF>FZEr! z(MiwoK#|Z<7GyQyyTp_8>{DK|=iuJCh^e z=n1l1HMR5>RGJuh@vV<_ee@n3i=-Wo0ay`(h;GFa)lCkoc1BUICz+&fwL|M#s1`nL zyLx_2ZL>@mvr)b9We`l35O8F{ zWJzEtT&MV$nH-arIJh|QVk~7FX})}q`M!LUg}&eINsBAFGk{`|l8&;P*397nU!Z1& ze{Oo`NK<(2A>0XT&j8A?PBmMmNTN->rv2@*!c`7iRJ=DFH|eZQlW#V_GTeRGg^OX!IFaugJ9nqV0gv1flsx) z-)VgJgcj0)ko{e2nD&tJ32{xMVHH)YzgFp=V-;6!S6D6@k9C5yiQv+B z>!x!Fl4`#Jr=L+@zy8zDw!j88PkZDPf9Mua<0n-A^P3{MxyJvL>#y`czO9_Z|N5VK zh<<6-BfuLeDIlZj^Do0kv!C9bphd&jYco^@Wsk{;xlo$InR;;F0qJ=Z%Y30K7J2^1 zGCw62XnG<*r5E9Vi7O;tfw~4{F z7!qFe(xJ*cYBszn4Q;}8COYeA6=sMLmiwssa{h>FL|W8#1Rh|}=|Ys`9#$)jz5*2; z#;wn%12|i74g9}*y8>HwcqGCy0V`h&For+76GMUexi$ma&j>-h3d3Q*oStEyV~Mbq zyRBbls*I!2PD$5TI<3u7;Ym4O?Aebb%~a0Ivy!EEA@j6t&>L7&eV#d4sy=6>y*7La za=;*$dGM^_LG$gmT5j%*y$fq`xqfzicDAmg5IC7_zu;qH{a3B$vhHA&-JnlNWDJTbckk5m{*Xv3Zk~O$%>T zZB?uPOjSy@X--rgSqhD52y#Iq`pys2V5?6no2li;bsPF?>o;Uv7cT7&`}D~yy61D* zR#oS6Lsi?$c}gh2Z=8!OjG~XBBZOe+ml%e_&K}|n*^IjAx~rpY`dnWFSs`f>!-xe_ z2_u)uSk!6lQJJgX7ge^!wEsNY8|bfbV831D-n!AJ8l@}KXuz(iLmzM7`P9^tAF~mx zgvMu#N}yO|->wR*^B4%+aOlUIJSV}!xIHSuQV@qZOGBFp5JH+oLcIG^J2ZSPI1B?s z{oT>#RcUBhgOeb}yP?J7bP?en0T0M+O5oL5mrA)b@#PWFoE4RLF<>!LGea)|KTA)@ ztUJlmL_tdqvPxYprjxH=AFpCV?~w(D##nW6NaKxi2Ahmow*f6`E`@+KZ*nC1tlj8G3r7om*m0Jo@yXRiM0Mhi$||6)~Dfm7XW1gzg4v-aW+}!3h>p-Ujuorcl~v7HK|slzZ($Z%!w?Bsc+GX0YtR6}-H9Xk(Z%m)SJ&k` zGzW)UKO}>Clsc}iM$A`;aRYiz_B?sQ+wWly*BK^_uowV{jWnS+pZgS+K6g4nJqwjI7)Vav_g!eD7^|F544# ztO4VsuA^UYF7r`4O^PRHt(M>}uIHgb^>hhAT}=P&D}m=`&)em{C0NpRAn=qt_d1u_ z9;J)T_lrVdl}nn8mOsU_p2r zAi74dc2yK%pt?CHTybJ1YE@hEXIvB6!*%Ce3uP7dd0lRo*8Fvi)wuIo1&E|4F5Nk3 zknga8pVRv~9|(7;pOS_pr#;VIoE-(X9=+M22so2yu#8_ei^8CuGK<2-*h1_l2|MyCAXMinXuvYI*;%2kaZ2JFr_}JKRt1v;K7hLY ziQft8nb)bRxIbNbBbh?#Euy!MAtUG5s9xdOUniw?8#_h$k(t*^C~^s#ns_;R7NT z1cfvYJHlcQ=#@Hi#zx<>m5>Ed1yO55)Ejk9jdc>8O@5R*Y}fxYweB=^9B|<12_?Nf z%F1*+Q5kS?Z&uB^+Ccm~ZrjAkLd-(MgpRqLiDaP#$V&BXj+Z15+Ah?UWMD8h^T#3} zn|c@O4}qlz54~4lnA+0m@DNVb#BjK~w%N#`Ak&E+K$5Jc9@!a2FxSAU5PM#kH}3$v z&mP3-PqW<-)VbY>K~#gdFiN^UeZ4~`ct|~Cy~C#`e9cbBo%ul#=gI=wT3ws%Ok#{Z zTQS-#*+JNUVgay(jaD5dhPqu550)%G>S|@X3u0dO*Ch0BB{y?i+!=ncA8%n|XK4(w z&|d7JnpLqkBm!+Obt^iOkDW0rO`3mg0rh3hM8YyD#MsWaS!^!^PdGNVcm%`{CW^Kmksl2_2Gq9^p?mJA~4 z02}v!tK)#v+8u(o-}lA=Tt$|y`x7G3V-XOdq=!P1O;8x_Oc3(N9iB~MT{piD_+Rd6$Z7VADx)*v&J=$48 zi`8l-AIRCM$&B$#{%V#lu<2y2D#;v6?pMbt&({Xu;Ud$w!t;JiFWW&#;=c+)@*Rqh z_Px?fFTTm4^Vh0_FF-!=o&{srohXZIlgx)A>l-rj$EhxA-GbQ&%m_@6jJ%r_M5dOC zuxYM?v#xcv1Jhot_oX9*&XNKa3YeG(EKH4ZF;`>Ffso(dnvkE_EphJjN4gS;NQ!AB zuve*Sgv#V!L!XpETCjwCxF5i4%A}Xtu z9prG6jkJBXvB*k{)~!v$+t6Y;MAfhpwMN`3cLB)(Fu^!%lBryz8=h=;Z`R-0qCH$^ zF|Q%K7;hSF;ukD-w)0iIh4I1Cs?*i>?VL1WYLV7U`hXfc3v7Stj7cmC)_gHT-MV_7 zPed=&<_c=L_@exCmqJK8cQ_s)Ds8pli<9$bt^Ai{27qb!`6W2e>n%5L9{6Yf((?Yn zX&K=Bj9Jn76+l*Uu;nV4^5Mm_`lx=8<8sYP0pasPYwE3)yw90=4*JSlQ{8HQTUa&{ zhlz_-_+a8Y`%4wQ16MkKL>lb(!bo}c$aly2yS zJW?w!b)L5W@sMZaAKZ}6^gxoeVR5u>7h(+^(J!4Q0o zbuHM#ms@jQXtD&w#+cr4bK<4!XfPik#0y}4cIQKIe)}@&ZH^-%*)GpUTB=bq>eMnn zX(#ZK29T2SB71o}Qt+CxgUrNv;f(yLs?7G;ZX}D(8wk>wBm850$Onx(gc}G6tAkn{ zW7?twaCM2jA^#*$VDx|4c@djr2Bp$Q9JSb$#KlOKKC-Oz$ovFX#*#`+g*v~EO%M*t zNMr_0Gj$2(SCPJEE30)n*fD1&ubFM~KCx$xM@8^cTH10dhJyEzJWzc_n9nZ7>rJGx z=$zGfT`G6z+jfG=mK-SbNXekS@n{>syhh`;mXT#p8?BHpCOlbvapD-*$7K{N5@B%) zL^<0bQhdX!L~Fc!C5TZHKxm2Z^?t20d5I9PZ48x0YV}=ZF|?=+1{w}l&DHDWUJ3&< zwc6D9=jNkQZg5JTD{SnY7=J65?&cuVw`;LFaz&;TEo4;1a!F0GHe z_H)kGkAaAjv)MDo^^=TD+)lR|9&MDpqqrY!U^n|IYaoZjen@H;N%xFVSUFb3rrkEt zZE`d!+Ge)qYD)sDV0uBYP7gZH%Ed9&8A^Q+#YrN`BE*Cz*UTR?Z8kk*{=E(IFslL$ zfc1_Inmv63xm-~p$D`5Jre=cy2PoP|Tf)3nnxP&cn!|i-5$bS@?*Uup?JkEmVg!rb zSZ$5#PJs6c79)hL3$EN#yEvnmOs%bk>`IRrFDht{`ehwX2-B^`QUW3e_ch~)AS(D7 zER*C#EX8K7Zs3^uEcyG)`%>`|@zu0hq5dt`-Zr`IBig4Kt@vwVi!4wfSj-t*$}T~y z;qg$60Ab?+b%izE@|Zj#R-kueTF8Wa*CsZ81!tv=WP?Rs?#PVbThJdD)2OFw zFT*FO`=ajC1+=T+8)5(A*G5=Kizq8I``WC{o9u7P0EG-gz6JHpF!AmLaQ!|vkdCq% z3Uir-bgB+b{SjL6&lC-HK^!1ZV=?R@Ek0)%p4Uf&~|ygmY9WXn7Cq2_YZcMjiKc15x1aCd8(g-bUW zDfb*o2V+*XHR&fdWa`(+jcUFHt%AFdL5FaDGw&fItQ|rKOlh6aLBPCdJ8zIw)J}yW zCI?q?Bc}el+N`SWf?!A-zk`+Qe98gc2}5T}+maF!M$S)X)p=f0i zxqNJ8(8YMU8rHSN{*#>diu`xM?j-T=06F9B3^QDmD$w=^1Knn97l|kgRF|<+Z53>B zwQ;@UyYRO5ue9SD)N~TZx*ZxP6^)rXdqV2OB zu56L_HT}j#`<`Z21K(XW0MBCvh~(g$osbFjw=KnqlL_Bt^~sfk3GHQqS&{PEACk*| zar8r^a9zAmhos?_!ag1u#l&%?YNO^57rd_z$@eov0>-5#UNTVOTWW1~ zb$Zwy4{dt!2;hgGIc118{WE{~TU^)}zc$p}zU4M3X$ct9yt#8hBOWgnYI8z%oFWJn z$cYHnESN5-3!5#N=hz?dznbuPt9ra>7e zJQZTvuhk^W23!jKXZd3%3=hpIizh2NW9hP{$dkR2hY6B6m*uY!rn#ETruUahU1lmv z3xQu5?;)81ZURBO79=tM*bOZAeM;{*tm-Xq4y9gu8w>@U6a}8jY4isxHFkhSohjCI zeUStO7ve+rV(gI2sgH3}MHUQ>T|GjzLeLc*3s=vL~MY}b#Z zFYd&`HM_6$VF>cVE4mPcES!fxWv7+Dh~BZnv9;1+$1(!!A!f!Rs=wj2bNTK|*BsIX z7)Jc^&Xu%8H+25ZuJG3-mu{c(l0xrq1|Z)PHggO=y2oEFi6w;v%3-H~#qHnN)t4JMFMQjaZJcgusGVyXR z{rCgRmmS-SW`F+wJ_o|W0K8AP<2y)zg6|TuJ$aIg)rzIb4o<5XY@E{9#b#T0K_@Nx ziBi2ft`n?uF_o^AX?)D!6z8EBym;EmzDC3rw#-^?K>QUgrbG3j%clLU5Hyw-GO8YPjE$&B?cuv&9j&<9``8%+k~YuGvz(*@`)e2xUhP zIqEg4uoJh%xanOzVSU6JynSJAoK34*y^S2GUr*$mOl5ojudwTA{(5yHVdQ??fgX=j zjfKMEvJYD(YAJWoR*tEynsc9?s;!zTzXNoM6FD#ixOfldax>5ZM{ExrWxaD+<+v4 z*)5sL$%JvXVT5!f5(cC#n3QtCh7RvxLyJp*F3*`yi%SYNAUFMFHntg_E%iJU3A1D> z$4a$mcl$=e4$m&{p2*7q_Z(=em>?Uc<;=Kimz)vvZ`$|Tb)t`c9K@652o70To|)s6 zM65k;N|agpDtG$xJ;3aE)5YSBznpg+DYCQ={-EHQ2a^){QiZM z{(g&@2}lfGLWi7O!07Cu1V3S7myki)4!CdSA1wSvq(3mvy85Y(L1D+N&n8}#Q7w}#` zrLpq+HFc7f?KMq# z0F(N80Q2!+s`YM!3aklN2(Jo8`3P4`ZTy$|CIjV(>L_S z)37iDu16;zd(JIj7H3c`a9()~QZbA(8Qua>7t#zus zHi7{qpahiu|Mt$c$8BRt!+%8xus{wFYesizzr|yp#0!t(jVB4Pi-p0FI2tA#QHP{F z_Ac_@w|S9RB>TpTq^9Qma8AbJMe1U+pQ`G*934v9OsUNz?HxK|kqs$$utV2n@&GYF z3=jjvXdt3CVw$)JWvRV0LL@i|FA8b}Ct-c$0-%t0Kyr=GZfxazV|eI zWcRzXmVY%0J}um(h6nW+mMr|I23xuCpThWs@oNMh&I9`bGm8J#_MwWe)6V`UR_lNi zgM=To(}V#^fD)htDAD(&imyW`D&W-tXDUKb;Y>XdECI!ffuhWzDnTh+s#RJNLR`u= zDO(Q$;?1W=@A=b`-N|>nppl#2TCHw&LFhg0Z}-NrTyNd(-D)`hN2K_~sI@F$xc?1y z&cOW-pACFAMzH6E>S>u|R|1NNKG)tBP+zZIqvATF6LtqK1wbGTNCVPTjPu9#-$u3%$QhtpN45`+)}OQO?Sn!CPx8C5eb5b>f|?gk zP1&}>E_B?Wrr&Xy``Qoe!~PdGzLnLqW9LB9vXgiy+bQtS9%+&F)Qq&H4%@j0lJDgy z16r%Cw8!*gPAlypJ$?#XR$0cMr2Fx^XkYVAK%IZ%Q4PcQLJ=NA_)3ja0mIjJ_%2!o zEq8zMt<6Zg{OGeM>qoCrv;Ns+K`GLBN=(~UnuxZSgAA{(88kjtk}{XZC*Q*ajX`73 z_yTFH3)T8eMj)CX&Prn+0HPCwsHGC?2e$vkS=yBqzs00K-g{wa3SLR^Bi-W%*ED;g z1=Vjc>`#Q6-+*kP2vk3E22{T`RKGb-^ULX4T+NTC`sFk@uIe}F&v~jJeeQhSZ$eKn zLirnU^C_tIH{zX;ii#YA_6P0n(l~Zr?T=4NQE+^E^3S%*w72R|o%W~uPQ$V=g1I!R zjbj{6HCRL8_j75P)h@(QZ9LDhwls>S#M8EuD)HXSW=LU3tIXW%KQDnwQx zgK@&*|v=M4l52zw@IAhTnxC zD!7smM8&Kc*-H}=xi&`n(xq?(00BS%5CBB8Nd)JLCb3yVvMEw(5FzDA&YP%7BQ%IG zg;`achDV6KG6!!O9zh};Bqeo&kznCPuu#kWhp?Vnm8WWWJ!cv6QQN5-oQKa7ChPfe z43o9%nAYKk2-MPRwY{Gids@j80$&W^3qS&p03-m3rtedFZ6hxzK?=9AL+aSm%ocV4j8!(t*FrS~> zFqqBfd5ncC5gkPIE}pI%4od6Bw}lem;>@@J7r+H@;bm|^5$ahyy{fBpK0Z{;97#N- zbQ5pX$|fH93B#xow!l&$zX`#er*V_cXnAMt8q}jUt)N_iX^uBE*DK730@TW4n6jWz zGKGOopcCk92c1%PXo<6Mg7Tf9q35};t-4;&wd>tm?oG6Su6Ob3vuPBNB)ne@N9&mA zG;P_&aI+e0H^a>eod7z45yUyRPLNXTO2`ZG5pAce&K-39w1d{$ZG$)l5C>=hT7VXy zMF@rlXsPV#okih~r9z~o-bgaO&|;<(M0&+clV2b(mXOAOY?R4dx~OIPgLaNTIfh!M z=AaXZyf8${{I{Izljg-W{fa9m*t*uY|BQwee*0v*c1)di?^Y*!k`OmnXB=Kib3qF) zB}~cl^AM)wWpXm%+?9YaqR+Lxn(FJ1)<=UDEJYuUi$Wr7&vtB20W)EH!uAAH&&X7n zt*X8n!AFANBjKZ}VM{e^zwWjz~V}w3R+n#h)Osu!!9z z@YIqsKsm#jeN5@c1_M!**trh`YR&Bmd;*`qXWRIcIc1-$?R)E+w+oxb`jl@}r{>!* z<7qqHv*4RF+#ZB)5}X6)z&Qoy%6Q>?r0u7aUfLwCXGB!{qOnLFnj^B<9ltf?D1VG& zEs`_9K*OxX5&hU;E)r{zxJ=L*5)cJMy9v>1h9d%bM1ef{V4lZhJ^a8P>qjem{Ag`# zx2Dm}yH%a+8d3tNy{Zc^yJ2?2?1shwjlm3!fd>ojhuUVe;$rQhKMR7N)*@1Ym@^{= zECEZv60k%sibrvA6Q?Zg9#wS8&e}$gu1{8A5Yf(;pqH^e*{&E(#3xJ6hEEn$1QpGo zqRhw2yY!6}TKypQxq5yxEJ^}fCm9x7X}#E91p-j985K)?PI3?AKuaZjj#Z+7-}d>` zxUILtNgJI2x4Xg5Vms2Cg;W8Xp&ekG1`Y%FA_~i6q?-J*F=O zGvEn$0-k^;`rW0Kmsj;6&IbMQz7P}wbt%jM8~_Kv;ibSq?!PRb-z4a9Eb~~BsK?Q~4VWP6(G(sX z(`DHey9Q-)z&UX4e4LXxBiZOYYZcKfXcWRo?$Zx!|BJJ<{*BAtgBiBjU@O zw%qAsaoryZX-R7J2xv(>i=bs2<#TA8&OAhAOq#Vx*#-TWQ$6S84Mfz{bBIHNUp_~c zd_cwn3vePnzBKC)qycF_nq!fsViJJt%Btqv zeAFNPK*KNi=G>GZs+Gu$;x7=83*nl_CfPB4pB)U>lo?&*7*Gfl0)?kQp{DV5FxC*4 zSy^X*$TUS}4>kPdkW+u_K}=ea(RlL&qKZI&v%9xzZgedp(EGR6w$XN3;Vv~id&kJK zhG!3+J$UwD&cK{GuQ{_v)Kvi!#eZwN^~Bfd2D}f6n{L?JRuZ6cW~hK3pat8?;i8zP%24*c8I1(1|vMz(H^j96TilWjjI=dcxHzceU1VZ;pt$ z*_O2l_ol&?DBPO>Gr(-bl72EUi}@g6Fy{j8iXAi*o>Bu2%r0XCd;lN7hnK?#xu=qI zK~)#!^!iX`cqj{79}MU&Scwy~5zAb+Kot2Elm1j_x{L(23oYA0yr!U18=1(t^^2d1 zOjx8$QRewQbD6|k^bN9EA({}}9A)ZjKXEehg6rX=$;j8d6ZU0{$viH-UM&#zq$tgy zhm7FT5DS!c0;Mu%=i&4x_9pudTPPdt^-aYbC2@==-RT?Uk8v1E&HzH2@AS3mBRqN0 zjpjRjkW{%x0X^s=?Y;VJo;B=Z|r42aB;) z+_f6mGNvDQ19x+x^MQBZ9e8(C-jxBSWS+MR?6+T{x3zx7#;hgVU@9ruIH&H=F=bmD zRXz%J8S{pMx@hANRU4a;ujDJ8&HD>J5M_KxG^f@qL{;6!LGA=23O7#4PvZMZWi8)` zJ_)D-s(@-^sEP^5Xw$d1h@b$fQuK33wb;x_mU>tV-xbgOA(dCfEk^1b8MPF z#_ug;A7}ju&-R(p3k`-D&H5&%V{;7X1NzQ@K0Q|+^1N&1c|%rJB90)f z>U-6YS?+Djl}!#Ex8@c^EabOrRH5B45RPm?6gB-^7+kxG{$d4k_?-7|*rM)dueQMZpo^$dO1n5SZ^RdazBlHVSbC#ujwNm@qEr@D9QTe14Vs#f(&z;U~mP-7-WV3YGN~cd$$T9__Fdel`M>uB91sY7pE`#pC zE&<(qdl@nzy3GhTl2ivtqM=j7kzyPs1pbqs16#2pb(GbSLZkki$IP4o$uSg(wPjjF z&^7Ob@@#;S*b%0Jo#wN%Kt=&SgMaNT-+6HC)g8O`*4kFzW4w-HDANcb2}dU+fo{<< zN9R*XTdK=nLOEh19P zQ)gQr~%!oed9powCM8Ba-McX&J@LoD$o&a1@`M#O!U$>W^ysiKiUk9?efY zr^k)(6VrIU>KG<|Z}^D~!!7*8oyM@Uz2Y)b#^UO3;z>qPNs7ymQnck9mqj5Vw5mZn z=!DhUC63Y>@cJCB8@IF|XXqQQIYZhAkPeh#OR}PXsJsA>0;Idl}=ky`C|e zY>uAQ7+oYAQ!qvifhdg8lN+O8C>RQc9*dzILJIp$gf$asawQieAU$GzdPSjKB}ie7 zHUlY-n5|XIJvH!}mt5ci5kb1(9e8&%-h~-3HGoV%7dUeh}ADe7h|yIyC7 z3PO2*o;pC6y1Wof)KZ~7MK_iz!9*io4vacNmy|0OO$dIOJ~ACnY&b5ILAZR=a&I{j zp&*>7BZvh`%||H@le)EU(LYX7%n-s+)WU**DrA>ISbF&akdxfu*Qm=!dXH9e9*1+H zip)~5~=y;c_HsXP>wN{pd^JXppHgkd%f?22Q>@a|%LArcRJ)8{+(sj1?p5?DTtZ$^O3@S0^PpMiA z^2d0#JXDKDss&GlXw4!&wFb~UNl#YT1sVV}0B8V>G=Kx5M6_pDGzf4RWX&5#l1>@9 zLf$1z(KJ0;kxVmabUu_gr^o87a~d=XqP0@LWkzC48khAR@v5WMM&vm6eLSZ%F-lw^)6umz-X_ZLYv`LEj3v;Wk`3X( z;G|aMP$N}?EN7tZ8GAiWICNF#xerNyX2FB!(se?Q8{wm#Dq~9Fr0ynLVWM_|xr~Na zJSGazySBq$ZEI!SyY@|V)jvJ|wYB_f?R)Hj9&4v}nxXWhJG~m#D=>Nrj4HjJyq#W+ z#70`_R8(!P6I;E?d`3_d6a__(N>L3oilFLSD~CP98_Qkp+!j zDK6XS?>Ng=(=tj6oaL~z6BPow#L}eESY?#9>hK-rKIgI2JeZD^{T;cuEnDxPDQF6s z)}*O`iK5zKf!oOX9FgZ)uDX*!bJ%ijkK6!N=k|~@08PV+cIOgwx)BeAqTK)+z;;xy z9Y`hH+{~P@2mr3(hlbFEN)kjP3Mk(Nq4#tXF>?KS=R_d|$BPc2ZAk~zMm|A|xq4TF zXaP_v4a*l_(2Ka*Xs&r0|G9HLF}XV%;fPT;CcWmJ0DTquD)iMB^i>fNMVc!)zivqT z@W9XEK;n{_k>u~eOgCy>zagnOq-Rrq8iwY3Aq@McA~@iuoVuLh=&&3 z$L3vCyO7swTc_kO*DlPNi$+juL4Fdz1MmPmRl!priHJA$y~h^uW>qw3aY;$sHZ|r< zDA5IEwQQnET%4z>z}3O}8;IKmCV|PbVKN6mAtl|=s^8iz$I2;L!b-3tw%lNJ%!FYs zk_x4#@{Y7c{vd~^M)cF}QWqMHd|`sH9Qw2yX6JVTd8ExH1oIy_-`7c;p=T}AF(~j< z8M>_rR6*-PbE|ZaA9-mk1v8CeW*LV9az?{><2`R&&#DtlGbi92N?I>Wq^9M7P?g%M zn&6zxB|TAxYC99X7up8rj515bP30b8%h^s!6O|ZzXXWN3&rKSu#^*_Ht+vV)I?JamTz@j$$85>K7HNlyN>e6*je{-5l(YLyLWr(O<45RlUp zIVKYUi#!&2Eb{Fy^7(aJz0TL)u%o68@wk;TDKg83*gq#INvbq#KpArln+~Sk%Qnow zJTMQ;I~McwHrhUa4mQ>{h~~uS&l;O--16Si?Y6WGdO!Le)Iu-TLYGJk!qU*sAS=kSCjAa#_;>kX(G{gzU?kWkE@-e_92y zM$9&1wn0fy@~D(dSanrKmeA^aVkl)%c{u*=@qORruZoW&@r4U{-RCla6yCZucJ=(?3urCfjULu+p? zImq{ws5jTB8AVPh(dA@4=epDfXE7j8L{&2?SHp?BgFE1na-gncG3Gb@o~x=xEyz?h zs%q3!=}+ah%28DGZ;iFbEE`3B2`Oyj=Yg&S{X;dA!w1HSc=PV=V zu;m7Fvw2q3y+(mz@@q<1?1ZUk8aC%6QeNlbe&;ndpE6UY>=QMG6Xlxs4LXKE#7~x7qH(qqQg}$TY1*c_+ANunX15$Q)H* zPOd7l5rH{mTLE!7m&8W+W;?)4J_tqBbhdU-GYsc&&Ko;mK-e;q_RjO%(AoB*+ct~L zk+eNesGAb_q>bq2`C}lkv2AsD=4ovL&*{g!+Qd1RFAxj_1HmsF!4XxjwD>6CvTr}J zck=DmFq(hfra4dtvd*rAr>D&}0Z)(2Qyw>8a8M9JT|qri@2J!hlS_cQ&}XkAdqwZ; zuVD+ElcaP|&QX*dzkxY8*Act1RY2xEv%K!*#+i-Cs02U((DMRRz(WB&RYoR?JLucj zkd<0NgNy`eTY(*h&So9d4A{%*u#(as3!=le+)9e};w`&s3i>T{*b@Z0(|rZ);Dc6s zAP;h%^P&%OCm5l`a--DImJv!Ul-Ls}u{;h66bm+}eGQSCAqY#~X7ByYO>~duQGb#g zGZOSimKW@hbf3CByuRQa5^mrC*a$X)jm_CefOjQ8m(X94UROPfdXi;=N$kp@G;Nv` z!^+j8)I;2S(VsOjEK%&bWy5kd=#S-wWtCJgp24Y31sn0xr%35pf+OQ4G0Y^`HuP8Vb(>4h7IGBNpCkuAr2qJRvuQRt5nHwnf_Q%V(|EzP*ko z=ue3*=Akj4Y=*9EH?$xs9Z^O1PMwwzlkAn2y@ZffAw0wPt#A2R1rZgrG}qf8_Ch2a zrUc(wTg)J-kaj`nJ>5hW{QC9Ii8Kp{N-Zi(D!Jx#@9j2AtW1?OOGv4#RKD?^H<5*n zcTHdQhJ?xz`oR8#lvGkeOLc{i@--+SB)w{4kP}xQ1c0bxS(g>J%angCV9F0K97b2FtZ!_C;>_<@v z-p1Zw?U(qbQdvE*KV8U)FDH9wH(vMK-9~f0wby4q3ws>m*3SnCK{&-=0VbNQ2g#K4 z8GILWM({$#P3QY7$cCe<`nDaux4wD1@XlL#{ihW~#GgKo;ghS1e$J|bw%NQ_H!%lM z%C)1EUs}=)@@Py9`9&U$fuX>;)nC+6-f}h#8s-v86jNhJ!`zlDF312=IJSR~XanDg z%+K7%217`*HYOV8f>PY=px`RMs0+aH`HRI)zK@g6G*|x#DSSMk3p`eT zqgMZl)&^F8to~U2FK6{HE$m{`;m7?Vf5+DTPqu3><5*5zYhar3U`W<*@Blmj55NQP zzyuzsmU%H9Uc1)vFV_jekJcs%%hSZdp!Ggrzyh!UEC36@LaSKdukT_W+&o57d+)9H z)toeeFd|itN7DL`00MvjAOHve!dZYISl}f@@LbRT=tM8IHVx((45nZKSO6A)1z>@B zEGRGSG7iM=-mi9Ghqu(Sx86NLI{3Zo1R;}O6BFaQhy1HfQ380ZQwW%>M>e?2A~0G02+V>#?gST>f*IOsdb@Wxq>7rCsi!4 z`eXIS>W|eQtG`jJe|}w8t^d)2Uy%f(K}G_kq=5t=0Z0H67)yfk3a?_qt$%_9k9UK9s9f*aiow3|3wsgP zb~+%^{vdf~$+E(xR(#_A5hOdyZSbM+{TVbw3ke0v!)~)I-x7eS0hn}ft`!9JW0)p+ zF7Y{FFpStjXh-A9-;PbPXp&}6ln4Uk0=Ymg6}bvf5}=En*|&$b8eA7DcL~&YY+i=8 z?e`yTcgy|*5tR+y{+g|bYo>?TkWGI2^f%ile+jANrE>H0j~{+|`~H`o`cEs!CNG;e zvBLF`$O4ifl6n8`=Iw`1Z!u>|lDYly!*4&n|9toM)7`rdc&W+)`tbIT&v(Ck{{7u2 zCZ~7*_2b>UUp_!gB{BW__QyB3c)>XO@n*eqEx-RKQ_LZoylj@P!{h>~6r|#99*9gl zcV+uUsfg}#xXGW)8h$%``)V6SC5Mo5Ny@2!`mtAOjn`8kqTe=72pNfG#9pr5_CNN5 zf`wm{&$E5MwU&QnQwRboxM-7!YB~*< zkC7Z)Z+**d2Pv1Nys|<&77g6O0trR;zGI^Z9z6fa_A!S_5^}wz<$emiXcHco4kl-JS@RU#nBhNsvsePOU7YUueQGTXH*@K{g+v8 zaVQ@om77Xoka}05xG->CA|MDyBAj4rFCiha68#T5f9w2i`+>uR^6%db`XhFdy;?`N z`|tlDa=ByTN@U}$ghKkxx1%8DFOft!vii=t4?LIM>^p_X=zUbj`2wV0#g`-hw;p6k zZ;%&hcH!R#QT^X{q5ZV=e9KL~#@VdtE&l$SNb-%H7=f|G{!bM0&hF@hZZt!GOb_+m zC5L|aZk664d1i;>&i?qLvkBjO&%ayl&Q2bC^vTamP~@XRfG>k}(9cKtuAKFn4dm6z zwi%YLp5iof_OAygim3NC!BzBI9N%6hzvR{6Z&{RnHlo+b(cbUb(c+-)ywGxcOqQFl z=RKrDi~b59?OtGiv7;#PUivj=3^~p`$Oic#o>S3JejObt4lp}>pBz5_2;zi~&ooUU z8_mt((;mBRFFv(A6O;6v-trs!IZy1#E_>PCqM`0nN{kt;EqG)%haW0>YU$;@@14!k z-L2S<=xyvEdJWSfKlIpuZ2!SpMt|FEi3xhvX2t%u@xsHbH$V&z~dmkSVPyYDAcw82H5Nzt(4A1P4)k|;P^Zfmv_Ue_l3!4nO?RmjX zS1Su4I-&O_JzkVW`g!s=v-8;u*z^+pz}rMqA&g&@gv;VbYf?^W8UEWyt zHo5aZ3=>$S3Uc5PBcr<5Orv6Mm?Wn*8|XjN4{MDzyQ3MS-K>&xNLDjl3HFDhiFp$r zmS_ao+0T#8@-YIWyXwVrIZhev-G5_fh!7Fy6dEFcLh@^F^vN-i;lbC@oy{J4>D6&2 ztr?@`rE8M`r-z%{CHpTjV$_@@@oda*4hMU$-84=|G{LhQC5BgUPz6jIXKLbehxyO= zn0S=&wQLrD@!T(wQN1~g+n8mmT(5vTQavrMQzPZ+YlRW(sBB~=n=^j}6&VP4qZ4`` z(-W$#%1@U67aMK-9liZ`m@({PeGj42Ax%N7=yP~T-*+=cD)2XGElOt|gq2A8pcH<7 zS}tWzD?P2o6Ej3d# zMVmCe=zDs}_ZTtmQk|u2tnb*N=E{Eb1!o>di zaOZCfd2x%?$FlJzFRF%#o?o##W2Kjire$NljgB>+#PL^{G1yZ1I5ODiSPO%VZgb|r z`h|D45^>0D8$Md$-V@(rf4a66u(2~cD5}837GZWpGSQu&w>kLf*+*=CvqjqOMIyC& zp>@AY-PX|uTg#6nc<|^OF*i2$vy5FI>}MsjqH`<*cg&-qRoyj@yzT6|y^bN8E%MFt zo^Lsk=l+2`_2~G6xh z)y`~pA9i(Dz2@7&PPy7`SF!%yMHhZ7oXU>vW=qHZ`?@=wR%|G)w~cp#mtGL&9E#a7 zHj`qSie*JlUdAUEr<5V~Up(qcTLGGLM7%8!O@c1SLg_@;l!V-&-YIElINF2W!J{sH zKZIU)qXnYxHfXk#M&HxjWwi9>2bD3m*O;7H9ici+C z7Bj!^{)_lR>yE(6CFEriV@r4K?0E0j z=y)WJ2<2RlB>#d0b4k6PM62r?GyJT7LuTt!5&X74-Xk7`D(}$Y3#c=}WJR~s(Sj!o zwG||mgZa9?K+R7gcMK(ryt1JcW5PuZM;(W1uClWzmm^4Zqb$FBY*Yu=XujT$540<)ISv*w~Q8S0v z$c$-Vx)>^rW;RMayTlApJRTHZ;!h;+U{cUs}{@!Ucq zo%VRM;Zt^8G8O1a=br+(?t8pJMN_-?HaS5&s%&B>aXydM7dy_SeBSiz{l$iiHfww+ z9PdB(r)Z40_mG`@{t?!38`N?Y7&cm!OQ5P7z=+}T&HZc+R*o->BJW%`S%VB2qS%}# z<1Cycek+YNy}Jn1mi== zmSl8DvK#-fbKP&*KBLDp1Zz`pTE-PC_T?*r(BCm#zK8B2N?6>UkMdfx9 z5k>ZJT;XAvoqxtbx%vLv`EBMJ&(o0I^g_U<_Qa)5#@_e;_Kzb?0(y`t<1jF-F2 z8F+8G>~%}ROX5TXBgEpmpMCpZyV#g;zH;4xAK6L0^rT*VQl^a*Ux7TxWBciOA6}DO z%0?f-eM@d?f+S>Z*mZnnZ+cU}8Y{^J%>$ohN>z><%lpnOjkk)eWQl7r&mMAa2~{^7K9j!9Y; zHyd5_`t*K{&Xql|eWiuW9TVU6un?N@7}X<9Gt1TUG8ta9c%;#^@dZ6^$-w5@b)zlX z8YsU~aX$5)DX}-nab-=A8Gv2EM7t&MHlwry);+qO2&#{Yc2zq{(5*Mq4#XQt-K)amZ4 zuO^Iw0{Y+eecfXnw<*#1@~R30L12I|r-okf-mU3Aabt(*t({ipg*n?qSx=TKWt&ni ztkgR-;Qca9M#Y#oC8J~_C8PRjIMqI#HDsjyP(@)Q4aPOBNhTkp0 zC#Ij@-9Z}WrNNE(udlDZ@6$hA+ZYgnQ>~-?>>v7l5LF$7jecH^c=Uf;8TtSDeLYM@ ztq(b|B7U;+KFw?IfbYL~)pz#!b+~tXwdXWc%@TAoJlplOw7p@|74_}fu4nX!o=vO! z{o}{j49CmGW(j{Y{Hk->V-Qcdy@N&OY19@tXST)}%GV zGKp4{Yx>p`t@baIwX|93|(qRJ^REhb{y z%uoAm_mlHIg2rjj%xm=K*^OYTHSQ~Ox4BL8q)wWn)nz_1FFNQ--M(lo zs?GJUf}2bI-D;zH!uFRN9iRU{Y5lY;_|2K#%0ap?zP{QIz(djcrB-cgfsK5#DJWSa zTB1@<%J;JxANMhRFZ`>W;c44-B;sb*abyhqy8N3VR`9{|-+|2SqkBjnpwfc1`tOP4 z31K|@!ajXH^3ldR3+}&kLDIGIUvNVK87?r3U2k^$Ya1&(zr*xA=A%?D^aKo?7pOonlGt%n4r)nRaXud!7bQ zv-;k@R?nW_nS3en3bqFN(wF616JlNm-OW3V&TFE&bbcR2z6`36DaUp-@wib;x_VNK z4vNAANEgohx-eq0tfCnn-;-$AjR1+ zjp;|&{^+kf#mJ%zMZ!fwUdxh1jZilwM20cy;RIOV?`1Fdb*M3+<BPig{bQsfrQIscH2+K@2=$ZOIm zZHk-h@RO`_&Cow_5YX6s*?A6@323_1sr&JNN|QL|^WG8jVZIYig1|e60a)V}Z(0^w`m@keveU zYL>0{`?NOQX`7rq+vVpUFjc`63NEFky%HfOVzQ2Sq3<1YZF66~%-|L`C`s~SZxule z)xl1A6+ALkx{7~Z@m~Z(m`CL1R`fly_If?O-=!}cVeW1R;~_(}yIZ=iX1%w5w$8xA z;zJ;{;c;$;aN5RjLys+z4Y&RcpI0~P5qcSC$7 zro>+Z<_0kw(w2rmO-wT|=2RTqiH<8Z(e-?py!yYCI(Km?B`;T?Qph(zt66bqu4Tpm zQuRHBNXzpp*efw55O#3^+Tz34>E6mtThFGDCdQc-TzeSp=ngc8lqg9yx3Q#*}_Rp5Zv`BJ83~^y%dfox-QWC#y=IPF5ZZCTqgI zQ;+*OzuiIJuOv4LiI(L2-xQQk;w$sS*gRLS`i=WT8eI|V!oo^pzEw22IxG=vB40T7 zt8=@D9#grD>aCKjS-CW*uCZXP6dmE8W4jJjG~Ewt=!pSF=J~t85f;z#q!JeERLcGc!ufD8}z0IOssiW-vm62sCW`MX?WEIBay9ZLFHpBdweFnOjJY;PbfI zghp}7e)V{$da}zois6a6dF`^!fO3Er< zaH28oW2meEY7^aBDc4^a{tNqn>SopktfkI5S3hA{whgt3R9^{O1-e~A7v^pB*`hhM&AI6KcLWTo}h$@CPFAB$iLLWW=$aXtSBg_-z37Biv)_a&1pkowwwG3 zxf9st>Y=R&B9ox#+v%TQptzz24i*8qHnhR0enY*YCVmvZ23fyy6k!KVXFe-L!@|_t#x{dZ+Hs-YI=(*!Jg_hM5E)dla921TN$h4$b$2C ziNTH!>mGf(7sqcJ%gX%Q!+S=H^vbu~oQ+|r+~=(!$?J&)vrO%A)da~;M&5n`HAI%{ zyzGl`z)=NGOJZ4)&%%_-VLU-%b_O(wADz%sJ<9Teh}yrRfQyszld+zu{fcw(fLJth zy(wXdSfQ8=bACUd7w)64+?a&;es~vtb{9gmVzr!WEzQF04~As^ANueo`VfcUH~Mr_ zq2EvhUxZ)s3U0(RaLd0^8H>+kz>X1*{bDElNbCac!|wSxN*k2krAZk3ff#_`>Vtq8 zfck-$?_BX+D<-=l?{FRFG-U=26vgOG$P(tQ^yzy(R8e{9sdh?OoQR4p8jfn%5V2$?29jlkDGP;9@Hi|O-LyY?iu$Q z+watU6U~+~Bhq90AvjXAzw&mt!gp)UX~v{p1pQ$)|XRLtaXp|Jl zhVQ7PbdiSgRGqFPvR~~{6H@wwuYgxLKR$oM%ikLG+w<1T?wq~6gq1*5HJh*aJ#SxX zN%e{0y|`5lvZa}PQ7>cX>>dgrs$Q32W- zKpy-8hrunUJEfrL+=aiBt7WysGHpxW;e+K+4(AKYdEKHTJUFC<8znR~V=qzfY&Ez^doLOS_D}9sE zd0Xn_f(s|H4tWaPIg6pqjb?vgmYw)-enQVCdxW0)8ol6Og|lK4cu$H&lTS%eOb-Q3 z*I~_t+Iom&d|h^9>P0K(O*1<}2>suXyT}1n(7p5x?(b*T7RWwTSpZp6NdMmaI_x*< zd@am@I+SazE`;6KcCpXVL9I+~v4ftmG@mAVsm@nt(%?0L5m=rTtnHa5H2qa5!bSs`yIF z*Qn4wdFnFQl<&OHZVE^5QgHbcJRCp>Yoh@P?ci8I5F2C=D$WMu zp%-~s~(l>X2LLfYhKEZt0a928)o!4YQpCr2c$N)5S~L4nZa@>9Jg?C6z#({U;k_pHJ+ubOj1eS#OT2nH$_FXQ z;^&3Ezbf38fNIG=ksMezMC=MHu4&xCTx{?YUO-!Ovuk`3YV1r;)$p~)xgoU&R`9h& ztt!tmYcjurx>z%xtV*Vht<>k)ttw*A&7h^|uJxF2;FH4vabUx_8@?s(v`nr1V~kv6 zsKoAjCC;J7%&A7n-K?BqB>-qebgXFGF%4|)<>F5~Z+rjMb7G8Yg@Bi{HFU1UF}z{? z2h~;R9)lgJe^TV|dsP7^4nw?pki+0QOolB>WIfhzF_oW*h({HMFU{mvDkgP{kv%5* z=e9$^KCSNCpbs1|>RH&eVz_l`tlVwQFPj{%AIAnYcCN7@>P-f&F9s#>!%_zLCs)On zP4(Jct=bV)r?*0{BUsQ)PaX~}Zeh#njqYz!6MXaRn!h3}daIWe1@ib^)M>os{bD|j z`(zd~2|(FWpa+!{-kE(v$P}C@3Lg(Iwmpy(*(RKcUmbHS)IRICVBg%HIpRDSvsi`Z z8mI7@$vG#143^N`pGUBxD-mKUdybKzYZ?u))<^n`am84xpvMjsX{yHK^@B#jerOXu zEV_hZ@m-`G=i<_je)c~J`=L$vp~x4D#jk6vhwJUz`4(S_@c-kRC#5%ka9#xFjo|Ie z=Fvxg3&aP}N1uP8qDZU%ip{NU33W9s&#`{!7t`I=Oxnwf@0f5IyPi{5)%D?9Dq%QD z?R9aOV;S7P14c(Aqzh0&Jow+!=?^;(Mk=qODZ8ZVuOaA0G3X#!L*$<}TPKufF3E2` zl?lC9FNC~xqK@AqPrl+sJMQu|D^E~K;c3d~icS(tR*;fqhk{jBlIc;+*->aPC|vK* zk!nDZ=ABDXK+g`v;7*n zLiel#;J`}+;Ty^-lssdl=+p$`|2FvnemSvGSKN|WF{Sx{MlcKbwdSN92lGXg`BWP% zt;e=ud7*t^#qB3st@}xN`2MnH%bZ;0dP|x~TFI*0%cv{dC`k~DS-fV|7MLjha5J{D zYA~LQ4myq~sdqE@4dm77@g{Dc7*X!(OCGmcoMn*Em$mqpHFU|%y5`??CXmUnID=kr z3mB3#f6g2)K;@|&y&m8Cmx6Rv4R=W(@0XTUb|_|x_vjRX_iB)LV%=hF$IzwRu30E9 z;=4gO;!B#sP`TpqEBxB+LJW+Lf<1ZC4mS6vE-kJ4$}xYUQI=E&)6JHVIJ8XuKQ5*TEZ zr=6%@;j+_D&A(YlDh3XfvlogTO9BecOA^6y(|$DNl2~wmMnyXAp&@~moIy0Bfgphn z<{qqZtwbV}|rE13~hm|{OP-fd3 zWikH?$LMW3kz?FK#`tO6J>j&{{QS&;%jMc7pYij^V)!v=D95SYE!(dEUf9{X)77yp z!Fr*T&vHSpjr=KC<)CNs4$k z4PPOY=gQKd8)B3*_g9r*l@6r*AVu`;=QLui=DL3kJ|Y#v7FuM;bZcEb4fSU-k?tBr zKyzrH|KooAjGj1*25T{NXab*oLIqt*^W-6NC=1XQMnAN`uNF!bjgI!cYDh$mXZI$_?-VZV`pQv{Dm zl{qPFY>8IOEtE-^Y-3gO#>A}i3HM@Kp~emq%sQ|EM_gb`w&sdpO#6(sn2-d&rw^s@ zE+g|mNBi%f9q?4$%M?uzL{H*F{GEi;3+LBSOVxB`YMvhuYu^>E2aObR9eiCZ{zL>7 z9wUbBkdy{)Po*^M^M8 zT?1m1M_{W=>6hvfYjlT_0YdE$#!nZZATT%pOAk+O9c#FBj(WLYf1fc7(nv-r`-A!B z#O~q=-bZHg$MmV`ss53W-SNFD_>0`aCt=43+wbWUe#fc9;*(3GFS<2Lq-$Egc8%25 zBe@3suWhf7_eX|BQ`kSpkTwe6q7IkBzms0&UgLW+kk5y1=)Y?4cl2b(dZn5uNx}?sVhfrPV*_7#+0Q5WYU>D=%plLksh&)uj3-hQ_MB< z8D^4k7tekDJSQ3t=|PpLXA8v*7f&{2qOy%eN!%6sp4_j3J7>@OdAmKvvnpj)t#Fm4 z=^po7dS#R~=aKJZVDij;UDBy4~}7#C0a zM(gTzf17P}Bc=&h!Id_##avnN=7nwtRrL`XJ4T5;uEMfhdF*M+0;aV40yG!bvDf}8 z;3$_wb{jkknT36_(JEnl$UW;-?~=M2RYYhcEHJ+Cew^Y9jqWbsW`6$TI2!b5mSG9-i;KBC-uGpQlXDjZ(_DguX9pvcW;xXY%d*Xpu*F`x zhUU&64Fy%EX{xoFg%TyJHm?7b6gFCq zd|+QU9afPTOx`3;9kBYjOY8z6o0tWkKIE~)rLlDQ81pd^w!oLP`9 zvx-Uufi|v{bh1%Pc)}zWULp&4z$sXzmr3F8+t_P_eLJ19*d}nEu*dFVE+lU0X=X66ZWEmG#fBvh+?ViBv z%rn_k$H*(*jH4Qnxx`T7X!c~BJf?oX)b6!`RniN!TfhQVVHcekSU)l$;NNd9zeioK zR+rs6a%ZxIyE5WvI_#hyczD6G3Y>u)9|bL%LdJ5#q36EkoWelfhQR%@L`#sQaFvLe zuGQA*u&<~~$XFO6FJRQxc&`MCLaK#DMjx*cqJkg(eLEBmU*1ZzB7&4f(txer96Sv6 z8$Z7NI*|4tH#YQuIO8KlLB>`WKN8Y)C@SE+NCQsg#0rQE z$22Tn-~Qo2(`;{#>(O_n&N&Ahzh}b%b(JP1zNxG!CGSwxv?arb1>9;4E_X453Smnm zofb#xC_O1G6dXU!kTQ@ywPGdN?}h#*;`SHUas{yo4ma3$vbAL-^flWs-OgP7Vfq64 zd~0Nv02QKTN~Oh>74Q+N?D_Yi9j~m#_1ap=NG$JXXN(ad1xFyUYt~-vY`E$Z7;5_ zMGJ3bRqh<*eH69R^#K%0Fqk-hAz%kjD6xDZN+_7Xz@OVcGAb-pgLv~Q-|oY0^_cwnPK6-u z8L#4i5QF_Yjq<7^>CEy%wE|IwYRy1k1~53pAj1S_Euu_D*eXp4*kS+wdyL8)tZPmV zZIJ%w6QM#qn*YYNX;-7#WEKbbH~fR_3KrQJ)&LNTZHg>Uk!WP_OGpaN2Lwssp5NtRg8cJEk;tHyR7Qy}gBT!Z!2%c{1NuXu$Q+dSe$kM7bsmXebAor` z9Z2B+M8{GS3W_S=_l7;wlzdcprC2lm1v{J)bkWY@a8}W%TPj=d$SaZCr!jBzvx@5d zH!H}6Ro`Kj3vx62GMsk#$B z#iWAm+pYhC)%f}NzQppT5ej_^|FBu`9n*ps^ySC*reC)3gf=!Y>boLdcAVhv3~Y0?gVNVT#?q6?f!Qdn$!c) z0>NGx3`lH&{FJ+_iutNnFeFE|*SNJDeMWU@KHxg1^$pKmZMk**sJCD|4Ivaiy$l{; z`AUyOXkY-OKz0Q(#~me~5fTb{2>O3<1zN4m_NeryeHK7O3Ad%Trq6>vA zPARnx2GGO6|MhbF5rBx?VSp^4fI{R})qz58!hUEIejydd?d;PPl`2`4(6dR1sWCw> zlA{i7jy?R6`a+DezTAl$RRx#IJ-by1Vndz2eqqq~Wp^qgxC^;ogek1Xq-pzsy;#+= zUj2fJyBi;;!`C+6_Px8w{r$`c>mNLJMB+7t6D-7rvi@OH^DpRM!AfN77j;1&w3dEx zo5qN~k6%z*x3TY6DXNd*sI`>c@i93a`J%C({Rcya(?QGU-+MIK!n1<$iOg!+(oOiT zxsR2Ab_C=!SVw%4TE5|uC7rz8ZqLsz*}skmcW9*Sb|_WvKJ|Jd13Qp&42g%aX~vgy zLiW7}ba|Bwp7gmo8z9iV+b48!iKU`sAJ}#~cH7+!7aPUJ)7-9r$WNuhLRHilhm~%4 z*~Jz1v#iB-dj!ADxbsc6IsP(1_7O(g5REQuVF$bkY+5-6_C`W&}E;`izT_Jj^r)Yg~G;xHL%;{(M-%Ed5?Cy7tQ7W{l+Id|f^v z)76CRUk`1NN=6r5N5CPA5P35f`m5Bf*mqTSaibsdN)#W_4aq6IKNG>`r{pLzD37>5f=L@Dm6JgKg0M zxlH*Gs=Erp6b?8gfE}0&2wETzUqaxIBvAn?3U#wLd|E;Woc#WbXVV$3jI{_a;nBe> ziuY4mxSLq>LqbswGM34-2-G6MPri6=8J9nYeEcDTzsl%0Nmn<|G~vN=KunF@X(i4{ zfyaQZD0*0JimVzdjaW}U<-v3ge?}(!Bm?ElCt1E64w*wS%SSe^@<*bI54sd5{?=p4 zj4NY0-hg_eNr6BH03SRvLL2$cw>hqu1Vsbf{dAZWLTCq~O%XR!gQ#t8lGrMzs-&nN z?$8R^rrwi)(kADsg{=6zR|CBB{GtbJE)wd1+)fp(yvOBZBCRd5We9M@$9HOg13h9B zs|_xOIk~wxI>i5FwLB-`3(zSB?x6V8>l3jn@(>+l5ePg^QtpUZ%#rbcsdZmw9+Kh% zZwYhK_oc#ij~Cu7(ST^`YE7g`s3B&1;|^MjiJ)`(rzEDL%9ZGFmiG7SBFi3TK$xf< zWxypD5$t!&o-b2$74j8IS4Jr$=)h^T!9fT}V1PjoRH=^YNQ5Y(dVUmF%ebl8A*b4Ne05f?eGK6w~M-0Dv)_r zh}z{rdt8oN#9R+I74@pXgHnPoqx{_>HjB^;6!l<{)PyzusN#nz8+U;+w{!30#sJ_D zHmCRDT8=o@26Z3#VJC!=fx^YOK2 zDhL_v zE*vrAv9P>{Xr!reEFEw*OVVOH;gn|KsKnaD*`9-_PsGaJm{by4tE$LXGiexBygZ-GPKI3Ls@-Ia<5+D825kX=B-MGsp5;UcmzR}SxUa5UeY3CF zv5w@2Zio#L^}2AfRZuv#1n9$fV4E-w^Q(e1_SFMkz2Q( z;`a#ut>*eAV0e9Ncr?{jnWFWX4k0XoKINi4u_WXc1IS5u=>l_?sKFkAdZ^DNCDi`# z1TPRJpHwg+7OcXju2nQJ2BI%5!-@PE|H0XiXyeJDmrsf-@f|ddi|#P2IcMq78PGCo*NE8 z!pCmW1TRt%Qe2(k8$Oh@FK3e)7p9_=V&SFS$Sq9zA}Car{dW=H?mFsUE{ar=*MV1v z`lIco1L{zaz(qvEQ?V)xEQP}>KRda?aa=!O!jl=7q=K1pw$(|Jc@hKjhhLxqafr^! z*~g%`h#+LgYotFqeYB(zz^>EtmH3qWFA7cP{~!UWf;3}r?$(m#u_LmaOrfU><^%d= zLRSjFY69!jBGttGEqq%Tw`mP&I-DTkaxPZH#%qEK$_&n2#&SR`=V%!vkKj}b6me}u zV4D-Gpr(j7^Ki7~HG`ij*{RaYQ)tS#_XhW^VnTo$1#qQgz+L*y`aBUuE7 z0_S%&>cd<+sKW(@9Lj=4|5Eu}|B=KRXBiJN8czL$MU}RaU3L*H;Mj&~!)0fR#M~eO z*c0TDx(d$w{vZrOZhD*}uB-a*QZgNMCu?_R>{g9t#;c+E)P+g8CT+Fc2hlwUAw1X? zoM#bS9ICFQ)4>uRk;yU%A6JT;tS&jgJCmq9F`pBU_3-(w@N07ih52dJZQNj|7s%3UvyN(fx2QUV9U@3rY42P;%0 z+Va2{rJ3cKyr@{XD*!6=fDc+!F>ucUtz=yWpqxxkXO%{DsWt^FHf{V^8LoJt3MoD? z56UU^T5f*E-)duDq@bD!qamp@U{6D8Sy?7i(5#;V%yfoPx=0hF-lm@edN4@NDz#YA z^>W#%EK6R(Ou{|M0Z4(_65JM%4k$ai-?PNc#W3>BuA0ySH(m$s5Y#;=?9_ zZczbwnO86x>NNVaDz7KfA3f^EG`{LES%J6g0){6$$moMhwaoIzxQz27d$HDIWe+Li zmuu)`?Fvr>q(It!IJ&HWJPdDu3Cx)fw2w2uP<6@bDAu)V5~_WX%(h)*c0y!K&Q_vF zxRq-cxj;~iit4#!$%N0LN~&f#n5}|` z646p~S+c=LuwTEsX$@{0!B|>0Svmhod+LE2yIdSaIYFX@xB`~YW)jnCN&8#{j=7}Y zlVo5|N-r{y480PUr|x=buOyn%*D1CoLyrK!S-QrH37s~VDOpoFdvwoud;Y=JBNRFJbSHzFYeOaZAv;Am{j6qH`@T$iL~!WgG3KTgM` zBc>Yo)Dvo`c>wzw{0pGF1HHshm)r+m(yb3qasUeotf8bN&MYO^z9cn^ zgz3o2c|j;zH#W!05Qzoio^Et5ZenVwC>+YJZjr`;ZYItfQ!cu&q@j;SWEHd?Ye#C!@ofvw;mYL8X1x~|)JO`J zC52RasfMUWfL3Q1q6pzy-8M>2$=6V$Efe|H6Qp|rH)Q#k=3{8j8laytyoCCEovHZR^p}-3fF%K~ zwGOPBG)fp{FyaV#NZrG4^8T15+V#5HhX0yEboMCTwbE8YVWk?Ldqa4oV*#tdvSA>( z5fw&Bq1AX|fhpc;LMrNk1OqymH@*>IbwTWPzpPOd(5t%q_x$MjgCs-Yt5?|CEuX5a zSU&~;zxEcRW<36JQE~T@T-ETISfPC`m8zuGha;_rp=O+iY>ucEKRwf78Kh~J#5z`$ zkaBaaUe^C?3A``NWKG**KAKq=vYf#R2Hs!2@4ru@%SqlyDP2@#FzaSJ+nMrA+dZ;Z z4LyUAp;^^f2VAArDNw~^6*7Uy1cytvONMsUR{Olav|OLM#U-<$+@z*XtYLw!M?wi7 zYqb;=>P;jMKTrnGKoEgP?!2moMc-qi(L5X5tmQ@>B|j{)hK$QCxL6tf*T-$@3iN$6 z?Xx8ICZrbZS;CB69mI?Bm)aFnel;cja*Ri{<_%qYxglYmK}TEPB=myDD18lViLhH! zHWAULLc@WOT>N4sJPkIY!E=+58^VS(D^p7P&d8*yut47i{)2XP&}?%60z9}NXilvrH(9NP><1IosDwK5et4=JzT8-F5YC zWak%)0<3j4-{MFG6!p|5Qhpb@R&7l*BWq&b97d3XkJUUACJEsAFZXj@2dh&^2b^0) zuMt0Cr}<01ZOL9@NMJ~a@FkUrZ7o8eb&#?ak>)TkA;3`>H`?}A5( z;wNLodzdav@N}SClJEV#u%gCLA3|zDn;x9ordYLj2aXT?!(xx2X11zUn*3wP1UaXc z5Qi@H-!kWiY2BadyIY6nV`(KQlOrhc^cP;Sh=FSO(=jE|yht&*)I^S+!h`m#<1YOke;9oh@PisHj7>V=X{s2^;`W2YM6 zjYqJW8@2StcjsP)Z34k%;U6{&F5V9?%00_HBPxHD+lHk2G3)=EyZ#TiGdG#Tg3Xjp zU6mD>n6Ci*H#d9$aO~XGf4EsZ|JW-s@iTc>ubfJ1=5POgIsktn{9qU5J358`rdzce zMXg=5U9kEe*K?QUz;Hda%a zTm0WLw?m6?lQpYXi*j(<^EognxBDlc+VH@EocFnE) zh5AXaVzn>0*AM^g>8)S5?mq}s>x83(qfWKDi*s1D@RXg)9m*YGRXEgD<}T(gv}$V8 z)0ImIUiTNY>ArKize7_jYBMfOhv=m;OaJ{}fC@|_s0O03F$51J4}gKD2D|pttQciQ zzW+91|K8ZuMf~yg5>D)59P@|%n9=H#zB~c7b036lcV@WG%dwpNOMFYcs#b(w#AlyY zJ#~uvZZZctnt6hLD_l01!^H zqp_#261^ar@d0j0wm4FsN4t-hG|E=_t2%N1=OOtYISP~yA^?d945|T~SOOkGNTnti zQRx_F7FGS)-gnr03heUI;1ixs<)KmaQ+|HbB_p4 zQ27_Cm3oy;=x?7*gy5SFC%gZyUU@Wd;?8xDDg?Vpk^c^`Sf9Eg~yl}c~+eDHzB_<;X;Dcss3fg zZH%Cd5+gua5kjR`$?5X(jYyl+Q7|ZttX0RnWozUB`zhsYrM<+92k8hiHJPv?hZTkQrY>u(P`)QK_Wv~IzWp8!Ts@LB zzaiLWp=TrPy1)>|3-w=TKl1{XBjWf?`|Aq6cfZ*-!n|y1x+$ssmHfNvbs>(5*IB+n zGD?%`W!FeW>3gtjb*FFn^vPkOtgnxr|A0=(v9UNu=(r>a+Dn;ZO=OiV#=T#Arfvt4 znlqh{ww#h)nT@}vpCqA~%M2bW2b>ISIxeKrrkCS+vyJn>;8oDj*Uxn9IKCDZ}s6Jh} zNbOAim|LBzuKJtHM+0>b{H>WmT#-gDCR6ta?Up; zuD#$n%Q$iOAf#lHa=>o{9^`Brwuqvvt$ z75<|s$+xa=wO#4^YW}lcxKr~a)Ky+~LyIVftK&!t4=@V``#?6c4*dJH1PgFjGB*E3 z1bH5h2bt(5t8{=7&#kZfQ`p7>-u<=mTluUeA5{$8TBW0`+N0mBeotY#IX%)SXA1sn z0sj=*FBD9~8(j|2wK;7@7#|IJ(n=XaZvuA;p02jH z_}6KokVdP|PQjKv$cCIXf;pCOJ%-@#3TM(L_?$bOhEsZhyL087jSHlK<(+~o3nF7m zl+;lS9;6X@<7mG$oJjtAF<_wjg-2a`%H%-N2;GCptH!d6)(mEkF+z_jV+yRFloSZV zUvy_n8T6q6_$slD9MVDdrTIYG>W?YVzjIKHSY^{fgT#i7LcifgUr{PuS{38Te=@=a zk6WU&Dq&l$uF}21T}z`tLv7YWX)+>)D}j|}<(d6=iAHjUL%oP6lU}vqYkL+3eR4TG z3~q6fObN-#qm<$lE)Upr|4^zn%OTg7`(Q83A#$G zKOp8A!w5*8vf2}Xu#}hDU=l;`{v@pt`xCvz0jE|~y(AHoqTP0y+P}GG&yxV8sgaQa z;z9I++ofvVi?A<^nNgoarY;}L*XH?@jKLQMZB4XRIm?`+Jh?y#|8WbES=hAhR@H0W5sSc%BWPg57>K#lG_z4LG{RH#^5u_lF>h3xTY^eN~OEq zz^lWi{e`}!OvJ{|m5>acjaHa36P|=ByIy)hN#O*>Vd+o4$pCi*pI9p4QeU+La;yIcEx^wUdg2Cz?$&@BsHxMx@Y!mbaq4Yddlx_YKOs4Cm65woJ}R>x?8Y2YY9Y@$KkKn!@cQipp_LyUUfgk*1v z|DsofJ`Dhy8I)Aw=<=wq*$cp!sg~GmsO<*p@dAg2rr9H6%R1#+T1v}bm)~&X1Z7ec zY|A!w)PU{~`k6nAK0rN71x3K*&>^n`>8blnAvD&-xNMxo?b1l&wLiqXY&5W2ouVsJ z8Q9uIy)z9^&TgV0`@2Nufj`jVt;R~VBubopQH}Q)&MK|{%;#ncMV{G=w-IUpw%a87 z?|SG3?#pdjA6-oqy#PhhRoJll`+kM_eOROEvaiJ{Abp@Lw$3y4vTxke`+{j@Se5R04w2mf-NF@vy6&U zJyHX`I*#xW_)SABZ@Oj%E;7>2w)of0%tnIrmW7($n3uS+u=uKFIs$9B!At8xd-tQ% zvp`7$fN1((InkjL4ddY+bcmyaWcybq}Q3znqnV)alfq0im4P&0kpeuuX0xtx_jg3&0t%62$ z7uOQFas!O_{snW?3RMM;g*j`CXb{n6cMQW|M;e>zwkC@thK7k8pCi6x_v5Hva5RGN09TY{^>86ktr!uW=J0v zT$h;>miaT!hizU=l_^i!-&|uAdPHKO>P+iEow0&hagkX`5w6DCUklgelzB0)y{bX$ z_*-U`PTRvAoT3V?Zpgdh4(V@oNq~fUrdY-848it2t?K!bq*!bTFOg|3k_mx&d~g{v&DyTw3F>Q>^s zgr*q#5#1P~rVj09RI#Xr7kdq9kYNik=Xs0?L-pe#*EW~cs2sOEm5o>t+o47Cuhaaf zGvrE`i>>CCA)mccTS0liS}2KD&cup!=f?9eDNG8z%>n%h!V#^G_DyIOt*9jPLNZL@@ ziS=fYOwf6@>x#ND21x(h!PG$4reC8vzuERN9l&+sz|>o>8>hH!4Z~J#Oh97&4^e}Q z?2y^Rih`za=a5~z$z76#g!$Wc zNEYt8&@ihRi9-TT} zZe3ABW9ro0bIA0(@=#vTG41 z2+wY#J4_1bKwnq(fo`exErjn#Lv8jb8>;JKIjaV0xV_7qq8b`(lRLi>@&ot0p~shzCO6XRDO8yyx+n&(fxVD(>Qaj^_pQx7S#+d%OMTu>o9%jtBn#XX z0lU~$V`6vQlI-MFLne=@GP^WJZ;5AM>AkvHy(v*+T)lNRZ8HkuDoQa8w6v6fmRHkNyUUDxOnQPv<@ ztqrrBUm7J8044g@25%d2=|g7faQtdd_~x_W0F*HdbeK zW;(n(LM=HQW%|-XDP})IDHiIQ_5t_yo%`Smaee#aDt^rq6*8=An0<2mDatc`n_w;m zOq&KwQJfZG&U2qUbSM-01~`_uka2u5M@n`aG08M8e>`DbVFllXf7mSe6hFYQ@U!^# z+|aL`W8LuU(Caom{GAZ}|N1x!n6~1+-xqgxcX!=zA1=dPHr(B%I1G1&+i;g5#cjxt z;qLD4a=Sh6le{;%xuFS3+mq8Y|DONve7+LQ1J1nwA>7#k`4h&XUtvpU+Jc}JV*IcB zTI%qu&STzsm16yGJ)6dI!J!t&^aY5d{1zB?2!*2_Q{}KxM3S0%j;XV=dC({T5eS(F zpa&o-Ln2z=R!8gWRDW15c7mKT-xWoShb&qMOzv!fk%3S>qM*s|H4F9ETELGJR=a5^ zHajz1mFoFM;yh-5@nk~u1p^xF76N;Rc3!*^6E;-~w{aAPCuE9Xz+pW=u#~arG!n3f z9^cg3a3Jh)CAVwa8c7m>Aqp)J0h~of?}5gk9x)gQ41IThr3=t?1c1#l_jHB`1Pi54hJx_V06`Lr8k^OHML) z!QidYO+n&y!#G0d1MqUF@m%E$heLPNv2`G^x}hu5fi&jqJ@8mNh=x7EXpzjqYh7~d zxIh3ny5tUk$S(y1L6Fn)_`+Zak1uHTx;G@;x@Ui4fI#bpx-do{o!lhwWRHOBXsaTA*(p!0g54*;@xD=N4drm?i2!k2|aB54zG7ASI!w#vG9pZ$v z$im@FqXD7GA!GoU!2YCANfNV~4d?>^KM)n{wZ1StR7pbk0+)9qhqBC5B;q;-lDK%F zXNOUMP&+aH7MwZ@l%py&4PbBs^>!O~O}JD-K!Nj=waBpS?A<}U%qqw3Lda8@U{?!d zd^aj)HzNQ6IXb@xOM{>eIlLFy30$~J!cj0#;GS6CvE-dpE#pvH1Bj3t;lJBT+Qs5C>r*xOgb<#!P-tr4f0mKqZA))? zIN!kbxkY7@i?lc?8vs;yEet;WAhdBK%pe7!5k$=2D|!|`9Uw|%6|9R1wHm7ueS1af zhj0=l7Kqr+^Zpn=jmyWt#)|gm#m!f*mj-|WcBR!q5wfdwM;CGx(lT+T;e(BBK&(_J z$e%DDO_H&!&5RhKrDQSe&ReoNZUwCmX1;X!aa||+DInwcXC2%H~AI;oq7 zJ&c(0dRg>7c#O+zdDRf-Mc}%^@%@kaT}-@V3ENYaq@DUHBXP7{zuJhCp=0OjY(S*k zHpGIl{C`yle1ko*IDf`_mwqWzR7(c2EYInMtoiOX@F}WO?7DEMbM;_NU?|MP7Ta8< zvnEhhF4$LTFI4g}SWNR))lWW?Hh8QY5fYD`PYYW&`HeEMeY=y{$wgLE#KcGNDT*%o=zeIvybs;5K{RcS z)RjljN~j`)o&9OWVZPynbQmLDll!}7Z6-@s?9L{M>H-%I{a1HqOU-L81+>1bqGLXU zXRll%Cd@D5i_*PDsjiY=Ag|kL*;kIo>F{qm&LD}|g=Y_Wmah{_LBq=mIs$ zB}^$ezE8ifjAuxr`Bh{05XI1RC1oKRQN;9MOTRT*)g`Q}`VoYnSTaR7J++)>_MetQ zHuw75SXMOaN`qByd)WshN1Hk8)1-1RacR@yb9go-gIf zdg<_MdjuChJZ}ldUnlRl@}wTo!_m1RL1h^PC$%FRV`y_n59qQQZBF`C+{4}-m@XZY z*~jvKsym8iLRR$amn&qtKqfC?D@kwx5 zOd(O(a|W})Zk|b>@q-j&^_0QyQ>`YG7t1_E!cLqIs=q&o-5mf-kvQa4O_gbeaK{rV zmuWV2!}0&PUREKQDqlU@e_>7pHC3a#kqkb8xD=0zkt9Ltr*%N>7oOCv z4ymUS$P;A8F;Zos@6+~g>mUEy81|`d%t9o%NB>7(>xe(E@nrm<=`J%J6HkR5BbGnY@$GaL&4J(FKY^P!umcy2 z!i~!AciY;{Q5pZ6geOb#r+*Jl=~B%lOMQm;d(i-r5T}3B>xOX5V}+Zs?!ZMAg-`)t z*9Jq@!iomEW0$JG_11`kL-P{%%lXe%J-GA%^zXVOM)_mPNvJU1K+?Q$k{kReJpfvF zAtvcaB{7Ul>}sV4FKD%BP~q9e46n`2yFurijn=dOOO#7sHc%g4hAmGRx(II)06B$Z z2@g?*X+asMJi{f{r1^xA2}`u0;!SY3$+jryFL3`yrg=e#1Lr?)ZNXC^hK^5A|0H5R zFXjtMQk!@W#Guhisq?_w3{E1XKJYXA`m*wJxoJ=oIPPTHt O6I3m6C_n3-)`XW^RhhTZJT@WmmksL6zBI8>|wsK#RweB zOj~vByu7WtQu@H`pjd_5h6KD1hEl8Z_wWCi|GuZ>Dk|u5&M&Loj})0Pat9~j7YA)W z_~r?oUVmDZyBNyXBbmPyKX@tMyG>{2O5KC5Zc*l>BbQ!KxCxW5tuDsP+Qwv0!h>M< zKrs&|UM=$TAQaaw&vY~6b(HnqFNg5epw!+Zz5Ki{# z1mApnkm5X!V_(oV@k;HGSC|^Nl?{T`fFKphV}@uHc&yIyn8@T|5`lU}f9CvA<93OG zqtGOhuvQW)T<+>bO_BOa6iGg4g+mBEaHs@Tl2yCF?@DNx}f%N;}jJSD6({psSVj}4CuNkrqAP{s&9vH$i$LKbZC&9LX)m-k?n z_Bc^G$jZlhTC>4aUQti?5_0D>z1_4L@hYf&HNF|3isOLywtSoWA`5auKw1!_N@L$F zUbHOHl_81aiRztQpp{-gUNtvkeabM?(cOdmfzLuom(>f{uItez&q0hXlUoGEiaeTZ zpJax)m;K=;%1^vpG#yoveTw4=2Q*E40tv+B(pkJqqpdV6;bY!_pBdAS%( zqBVjE^V?733t_UMlP!lTbqe$IvfzrG-7SZJiH$(omJx!z^dDl{wLs8MV1>{qdtlE7 z71w{kb5IgYlG-RqIi>aVKi5SwtRp+S7T5>{%@I6ANxS^s|r7*+t4IP%Foy+WqiD(Pf|BabH`BW)`dk*44ZwP!m^?^A@3ALYm5}{`y;z-z1)ENJyr}w|M znWc$tV@>{lQ8S$`i74K+qBM>6gMz6nH>{?q)da>H#}JU zEdpdem$Ta~I$T>vO7F2!WY<10ZeMm&$B~$T*6vqAOKFYyWtOd0 zqHdMilk{V%Fr*&;w8fK=>P#s4v@<;?MvPNyTP~`0XqTDCGvsr(lQOLyw{`k+LdW#TtF1mlj^&zD0IV(Y)p?uHIdq(kh(_Vpz7oA#hS?%JT*$O6YMT`UrMBp%g`tND) zdTcW0Ze2;Ck5>PKmU~#;L&J{CZ|07JYfNpGN=+6O@$2+b=DBLQ>-Oca9(FWK=00j0 z^4K^k-R1YkvNl*O(4D~e+6A50P9-oYzKQu_Puc-iZI^!#R+Lxf>>P9aY-faqm`Aa} z1Tad~NYsnUlh5bf6K`h>f~R$_NH+Wp9-{e~`D99Wc+b@~q|%KugqG#!b-MC`A8mslnTzvD zlqBw5n&8EtG+izZ)MQzA!_;J3#kE>(htU24qkqVV?tdYp+a(d?w=0WFw*wz1^tZv7 za2_xQ0m8V~0&H51#fWe%XF);83fcd-k(SkYHkcc&-L62X18_tKP)m^qSb&Ims%VTp zocfvvo-jJ@AD0YZ!80hhF9kxy6H`T{;$D11R4Js0+DJlR8%-p7;p0~kyzq9)o~&so zFf;;U3&eBcHUk($M<_ydnQlP6gF_=A-dltJiyU$MB}dGgvf!qQ93Y({Vt|cndl17T zL1g1!#${X!j|}C61f~>?P{9gg6$|XS&n|`qOpsuBgx-TnY0Lv9$u0&R>8#~syxC(Ce;3OJ}6|Wf9KYm5TH%-#*z>aA6~aW5IN2+2MF zN)8DwlL5k$_fAs;DGf8VTnH!Nwg6axNE?tX7u2nJYFBcs)FlN&nCSpo?Ez?Jj$njO z>Ev1$h@`$Urk8)^xSxQ(k&ap@cz7uobYy^7*(OuOh0|as=FiNS%I0HkIRtR*4+tlJ z0n8EU4i*zUnDv8U5-xFu_{(8>PzAfQp#|~#C1m@+hkfq?#@)*vE$1o>u@j5J#`iFC z8ebBavWtevDb^fOrJ*twll|j60BS%a9a1F!h+z-HB!nw~L=fk1|s^u*U6>Zgd$L9fEfb+CWG&2CQI?oI&GQmts! z@-4fJ1LWUW6r_O62AETc`Cww>fFPj`O+IkUYe(hEQhhE4{^MS?K)A`b$u~HwcSgVJ zZU9KV?-u3>8I%hn3`E=LgYD^sk<{Cz6;fw#8a}tB%QPy?-32oWlgI$U{r#bhrN-bZnQ~;uV#wr3g#t}KQ3q! z{@ne>HWynOy%|`i(-5TlVcBw~B1Dw!^N*R>I`=#6Q||N68-LLACOU);(Wgkk+xB!e z#Wf+I4gZ|$dF}PB+wE#Fcj;x<^E&w|t6=@OA^U{X_f4Xp&4dg-AnDPP<{6vJ2o#A< z%R{1U{QwD@>q=Y;{0!JLqj|z^D2iM5Y={X!>6NY-RJ|kd`Pu+ikTfXSck)N}rY%cy zJOO{Cme+{Z2<}gK@0*(TVbdf(>1{E~Bm&nOz3#8=HPdiS$|XwO66mV0EdYLZ2y|~u zmgH%!d06lEf)&<<EkVb;O%Mr<7#wU&V8Lyd9d)@;Vm(-heye#)bf7B>TLAWwTX zYHOI*MXE41&V$LWE`de#|PRm#yd`O1-?n|t9im#ioTm1_90$0Wp>;L^-3urs5UQrF+1-YzBpFki2_M{!A`3? z+HrIbbDQ^vF;2+!w>B0w+nLeeY^8A}RcCzz*JPf|#DjDEf-~e7k679$8XCG*y09H4 z_*~LA&pU|c9f}RzW@@|_!+0)Z(5%OP6SK7Je30V+(49^8lT2@NTK2oO*rzG9=>v}XGtU}hGTZ%9RV=_T*q9B~o2_b!G_JrU*H9TzOx!~-v*E-}Q13QH zQP3n;E!`U?V{GjU_;AnvKK;D6dV$n2!aCEvLt?PI*#TEc97ip9Hr-Gp=Ae!u>V)&C zHs(9>D4vW6@ge1RHk@dUVy33T%kD83gX3vW+o_N4(9xr*fh9Kp8)L!AVgx)!0eRzS z8P-B(QvMFH!L7PM>$4>M!-RyZaX=jbI%rmkzDX))xIh@3v~GrV!Utb0HMI>CF z1!tMa7U*@V@y=fy-j3pKtSt!B42E3<3fn#f3zAkNjFVK-6YW0IV|Wodono#Uj(AZ9 z8enP9;X?RLmapNuSp@EHJZ=iEi#@7_Ytc*@oyt6eMYO@y3nmS$$H-25zw0x7%a>)* z{Ti;57pdc(J(T5K@pYx&1BAZ^*h7yT5u0+&Bw>BjO)y=HlgL@EBtkn~1`JCUKKxS# z+>MRt?IB=+fw%)D$Iiw^99aK^1_2dzjArmOA_j6EO5u*zaDe`wsel|BN5(Q7x+6@> zxW^-twXOY;L(gtsSo+hAwUF{eRb2~g7J#mMxXy_ay%|WGH*CUfV%#!Q=4s&K;NP3J zk$ZCakJ=xQ!fAU0P<6LO%a<$oE(Sn)kKm0OfbNP08A1sGO)Dmv3`&KLJOpI^)zECk zAoL|g11YeR8+}M{yIKEA8uG>f5P%)r`9YZ4lZZ0kd_2b687Z;u1O0d7{F}+ofkY}A zF~G^nAie?{--%UTNdAsjf!itoelq@d$800bZJblC%v9acOjGG0696X=87UqkKZc5Y z3X>9~^jr0{TG<8mFE8w7B#!Q90Z%`Z$Z(7}MkWTPD5-=?_@T7D|7M;A2wYPx05fcN zfhC@il@s>!669aS!x)Yb%zwG@C4+TmZM+)^%XSTp$l*qSoO#hC$=|=}i4v&nO|qJW zq7b?TEcu&()pw}h3xNct2M}CU>}r1m<%jXTjOcl<63I%z3dU%e;M#}70k`Y!A*XGp zsK19Pir&cN-xcUlOqijz;29Rr+iN6$p<``K=?v<3yRM;9zkU%6XeNkc05 zZVI;Sz*D@u!1{v3OG_^imKa;~0sPdkpPp%xu#v(~$A&vu5VT z%kd?$BVfzSsXD|cfNHcl;Y!kNk+0n5iAaYb4`qH_rw@McT^ZC@MOU?|6U3VXtqXS? zgH;{z(ws!aJ}4;{bwpw;dwXOM6rU((qcrT%usCmm&In7_6{ADLabU9rHg z+Mu_k2^Py^o?{Hm+hMQk44#ls3@KK(Vi!dO8_#l=Kc4b0Jq&N1(J{!e3262g%fm+h!fZqzz$}n zj)e$&LvZc5;noOWtGs)Z>pMd+Va9i8jFqAfvlp7e^QB-BcTs89$3^GvxkEU6t(00W zzzL58A0frmHfPAvg6ahC@HyQ%kQ%Lf@a7G%Y~iYBhqjPGA(m)*5wV!lK*4Nb;`v3_ zcO|KkjaTLI_)GXcq1c1%6;yp-_!HiQyLtchz{Bq!pE|X@{gqbb2}In4R(j{<9dMWl zftvVclvav?jmjV7MUSRle=eUuS{cwB4RJB4Naql024GcmbuWH)$a4CrY;Goqu=VsRo&Eq$} zWiNkv{*k{eBzpPp`KS4(Hda1AAVqA;kg)>j{ptOYumeK)??lD8u+^>Hcb~>MtmoL~ z*V|{EV-rts+<=Ke*72&@TP~#$d6jXrdMCWv=fHq3p_ZqLXrSn zeT8GlNQ@+{?aExf7VjB)Jl!lPX-jKah159NR#Wl95sNtYr>0@#duq@e(;GXg-u6L} zH|(Y;ZbBmYi>;46@Sg`w!xYR3B^mHUbvi9i*-LhQ`#9_ojiOVgU?{0Pe^K}#&lwT| z;!8r#uWM0;)GAnn&}wib!JLm^rSlMtg)#sY+n60jfwi`7whJ4`F2X!U^!AuEMR|oQ z&ZYU`SN#TXI@|Vzh{G{dUymWkYMA2wMz~}M> z%9kTV`2@c_rUUPf27F9xDKpbWTewq;(niTK1b5OudKb~$q< zH-ceLb#Tuj-6q?$nkMM*A~IFxmps8fcbW5J{s)oy1|u!Qn8X|yZbAdNk7{Hgq%jxb zt`VPldB!LOoCNz&{xlImD*5MK9#~>~X>IxsXvcSt}^`NlZEE*!FFo9?> z$*+mYsTf^DibSN)u9{y3>^%cN*rK*YH{@fIW3INxM9bWu+L@+>XyL}}SlLs9T$cj* zWPfRLBCv&~L?b9{e_7-sX8V!OH3fT=E~s8LraRtu`BCRKVH>@ojBe26iC6Wvm8Kd4 zN{y1V1QvJYYNhPU7%YLdM7h09DDk0+DRwnfo6dS$Suiv+V+*DP9C)~t zNC+@X&hJ|(C}R7xmM1{Un~M(;Zehb#+ux#@x^HS?H+NIM&cPMGuzCc8X4Q(*~d zqasNyV>&5?=P+q7)*qQwEu3kwSbSFFl}Lg#TJaI8I8g?bas`GmwVQ<$i_a2GHs;=R-wDj5mHSyPl9u~>wv}U08K-Lud8+OIgx*D~ysNy=l?A9j z0G}LM6_)I5aK}-#M=-a{uO9cuexc1H+bCQlh@7*$q3{jw_J^SlCg=+57||lr#FUZ} zB&Qw^z!iTKsbx`7MC7A^LZm8_6UP^^ESjxMn6t$dB3IODIzj<;tTNuWoL%uKJQQYL zurJt64Tqt)R}Us+yj9oJvX{tLeECmM?j12lJY~^YZPQGebA1uuv?x5hS@|ft zbT#PWArOww$hUks$IY}5tB$prUmRt~nTttIzmC%duX*M+|B(IauCKdQ!A(H%qkDxS zM!AM0QCi8{diwixShheHJcXB<)h`x8_iCGAsnLVvwdTk&tYWc}Tv!s~Uujt>eX1N5 zoXb^L<{<4_i0&}GRpLX=l4q~5TERqv!R<)sUyviHBUQNmN6nk}4`1 zDiD}O5ATw5Vq0~UgWcse>OyoZQ`_x9rKi^)nr@4G~Q+kX7Mp;Ur0n7otN(bTNY! zXI|c{S@~yYDvi?}_c|s_FHzJqEFCS(P-{ffw!k*fUK->FoDh^($yeyjiQZuG-gK)YtCfsj5X(>?V+*PaJ5Sm1k$n3&=Pc1|c03ZR=`y2;i20tgPhiBpkJuXEbvMY6+ z*zFb*<$uI#0U{b~?`j9INgB?ebeHLDG3Y5kLxMd?-KfyfD%)ttrG0=aZDtIy{BuP3p2%jcOc>D%A&#^~k0;|){7DHN9# zIe}G5VaNYt#QD}H=;4s_@F^9^+-tj!5jl4)XfglqJT%|c^>neE=|L7C!84a=Ye;7_ znRA*D2c!9%4>)rk5ubR&I`7Zg%O}Gu=rY{c*8}vcnifIL^A5r*##6{P z1)V%~`s=@YcWLdr#M`xDJl4u@%^qezANn#GJIf?lGlv58znKp+rkkvotbh;Kt1ev7 ztMU#o;ng3h&-62+>)c65fRFl&1Ye&Jj{NA3iT8$_0-QNL9!o_j zAlRV7o4!hjLik$BOdOEYpY+Q=VzcnVjdfe2Rz?lVaNL~j(V;5!Gjfi`2qGn8lx12^ zPiKoB+PZ#I{24iQO8mn1gduCY<2VIS`bz76{vn@2-X%}k#Qmw!l{+61|2LwV^7zR35p%#Iy;&di^fM{!G0cwIOeokJ zV6r3gnj^c#c7IJCC6xgf7`Vo-^wQ-yanYf@(h3-6#kSLO3Xu)t*CMJHBlQV>5Ef3- zr^ET^4UbN@=z0=8b`{6{> zV5Wc}wBhuv<`=Zik_X`98OYV+UOC?Nag%JZ(^&hBd;Yl!@1!1YIDa=Gomam#{nfPj zdT8zBgtCh;V8(!q!X{@1fOMk_^`Ou|b3p;0@Cyk+EG2!c<*#kVM5 z+cfDLDd#$*cQ~KnKZ!yX-bi>(-EX5&Kl1}F(S5r-FT|?@*it#x8w@50K7W1t+1i!? za|{k|;oUR2o6^>VQ9ixB`Y`6t&XgI2V%+g3!bMqd)lAh(EVPFq82vd&vP(@s>- z-gf$TS_SVY7bfosau!+7DM2?<=x1-!xn0OVoif9Dg;gpsejVsVQq(k>%oX%;*2nDxe?Vk|6 zTST%ru&Nve8yiui@`DDFJ~(pIC^=kmepYm0{Ud%4hFX$y_tnW^JYu3)CBw_kx zJb?=ExqihG>!&&A{7p+0H1()+Y{O7`W|ub0R6Cp-&90Zcd?#DoDd9++GA=y<`;@OF zOgW$#PRf9}W?QZ2Vd3|{*xW|;*z0_qTMjxSdw$LL)Ms0BLwwfOZ>X=HMAa;hj#{Di zr;pdgWY#EH1~b|gUw@=MhwV(f<$%-m5lOkV+a~fP>O*~3ez2seM#bCVC`jukV*M1k zb}t(P0?IEi&l4%yh`z?Y0j7C~{g zz5s3_F*r(M1oN5A>nJ!C(mEF7wjMwRy-yw`N9V05dq8qzK@&q5dw1~V{PVm&nOqHM z7P9P|*Rn+J@jR=Bkj0O0i@0*+Rdl`6kF?1OG(q+F1wG#HOiHZZ*nf(f85T<{Hw*Q=9y-}v_7(}YN!Qywx?-Y<%-EnL-TfDQ#fu!pIxn= z^jkc~tCgN3%AgJnvTItA+EI%o+jGs)#j0kVsr|=f+YZm$L%T!1dV`Y?r1Q*XeJ>9t z`8D|`>SZ3#3GZ0qXTiCyA&NGOqO=jU$-7HwS?2K%Z2Ha^lBu#(H;)!nMpMgiJrj#! zF~Xy(Y}z+gq~@2zoES~lm%86MSQPN&fBYH$WM!VVK=G|+bSx|;Xr_?nb*4drwbN9I zZMV?;m(CuAz)U}*(B@j~R{3b=fUNn-o236H^_RKr2AiC(L$P1bx_p0|&wWk|$*6Lq z@#zwQW_qVo#8NEDy*B}`UjOMR3p4|yn2H^0V|8Id`>WTCd{ML`fB1_Y&*N|t&F%ab z6<5sW^=b5=Xs{Tes51=F#uO%Pe!i6wKZ@P)+%TU29`zATJc$&CU-u+=0TvXM7lsUqy^uBFB(WTqhDD1-Z9GdXNbLE?t;jJppi8Y&^_hz)VL_eHG0yAaff-`4} zjqK(xxq5_#iPV(Z6sfaEyf^PYnfO?vWU3w;bncT<;D@t{FcE`4B;^p+^WigVJFQTP zkWlz@nEni`Y^j08t*`m6$tD*lfW!jPu~3vPRa1D{M=isyv^mPCT>xXf&)Y`)o^C-)%iYNa7l5mKcpb%6XKNg==ZGz~6_v zJt{2Kw>(Z?PV8@SiD=&Ux~Jeednh>1c2G8M^Jt1#rRo?8u}=Tm9-)dVR#a+%H%GS3 zU*}%xoe3Uc!ig%ox5f0yKC7ujNHjd71nFxwA2_T`|G7_k&%FwRrq3_^om0{g1R;R-ccJwea@5enIFgW{jLF{ zmu>_%G7#jcxpu;IE}Vwz9l+spVPRBwO7&dD)D>|4cwggCa6UTGUMUwAt17p1yHJ?lZ`&d^Z$WkO-k{ zR=1ZcL6Y#v4*PqvU`zHXl3aUmuh2W`omgeo4XPjnGf&v471+z#ga+gl^?qC zIAPF8%q++qZ0HPp)HoINiLLZ=YIm_L*6cYNCl{fAp$aW7am~Jiz8{{8&t zD`%(dMeG?w&#S|X`Rw#FmDrK{D(EHTea>yL_hEL<(Gyu-`Nb`$L$BM8iP`FqmWaVi zWmG95@V@p1xCrYd@kiOSZO{eKaw_i_)QLqb{88SxYdPBC#v5Y=%{17+GmsTw3jR#5 zMyF)bwfXh=#>bZt|8J-7@Gn3g{ljSYlLK z-W$O6rx&yTG(qw9F!cL9HE=S*&a$dyVcTte)1ZI1ih37bEm@xTX2EqM-}~}aF(Et_ z2Mi#dZ-h-f$(5y17}iK%@V17WnXXjOixn3UlPNuBbO+`rxIf>qcQIOk2!mdQOS+-_ zKF+ZpO2~2T`8G)LNQ7QAhGC{l$@e(6C$)0+5Q}^TIQjs8kF!#GWOC#i1;5Ie_skux zB>*fL+$QFolfnM|DX2=a66+BO_HkR5RAg8H6H?8Tj*t1E@+?Sl6#7F<0Ojv6X(_K)= z;9(WxmhMZ&WM+>d51HCaXtfUvm&IrUo?{_pYfv6!AE1k|5%UGFjK2!iKBJNw+ey)m z{Et!N4D!m%I>bZMw zzj9k2PhNKB?brXt!cGgPXCz>7dRHg;qNM0chrFM))U$IFDvapz|D-@y<*OlKNNpk_ z$Ap&2ro;?%VhzDSa9m6aIK>O>YxOeCu?N2 zKxFb9_Xf8_SZ_~zNw2iN#Z7H1YkZ3UC0Yf_5fzY2Vi>PH$?8*0Hg5UtPZ9 z)uixu3(CKJ_9nV&X`4KEFVP4Qq&9AhBEDtM$P=Cm0$W-Zh9u1h-2(3DbDA|o?IB~hu7szehF$b+**I9iCypHcJ;AkdEN)TO;jv;!rUFj}uw9zsY zGN{oqm?|;9%D9p;wi;AdFtTMbmDFF~^yGBSsRe)R{V-h-@&8o;z7_oJQ*6M(VQ?BR zsfhL{^gq7b7T+Q7lcP=&KP&(27>CgQP#KOviL z<(up$(^>SLGMvBydUTHjhz?CA)5cf)29Izrq+U@D zUPBCMJUMs6^>r8nGb$Ytse!+s+!D2CyEAk@F*y z3L4f4m)I@Di59_gR@5#l*q4+gZm?PS5jP&NrkyT5O6?hWZ>!}oe^LKfHaEl$cih|1 zs5P#^D}p}*>!A*7h^T-Ak%}DnJFEfqz9<{Ujl1q5nw!&0A<{?Xo@g^`m^P|!a&o#~ ze%p-hX@j7mT}wG!-70ZV1dSCk#%`=K&O?YqkHwg)h)i?!1bcEnralRwVgoLE*wUcIA3YIcC}9k~zEX&9(> zx2_B(pR8hNXV3y9uOXYzy>PtF0g9)YJG4g?6>DtdkcIvN&jAOr7BW^F+aXPnk}?E4 zC~P22W-%h`;dBNw8v7w_oZ!|JU0VrRcgRC;z>E_T%x=>z;difMn;s|3DUeTxc-1`K zTny3cU2;hMeqNc>@NK3QREgM0eUFTNPUW#9xltDjAX9A(-!V7G=5n3lb-j@t?#txq zg1-svtvqc=u7HDU>`OOd)p!!*Z;ui4E#zWfdo7Kmu(LE3w6WYePp9@!%HUAj5$6i0 ze42O+K56nTI{#edjHD-3S}TYa;3(0}nS=}CP)1ZQL|!B42G9y{e$p%^{~n3;ftgaN zQh~n#R;%!1b%N{&b1xbY>>S6e*0dVLQ%+AIi~SY*t4F7dG>W)Iy!8)Z%cy34DHEpW zpLq|lg=5iM@!LYt+fp{n^uO)tAhQ3rqDJ2{FXl?)17M(nL0LeCKv?!oaf{Y2sIOHs zJuwft7bUD%VZ$VFpGe4~<1!*$&z~ZX3LKvFSZ+Fs2j8yV4;ooF`C4&z3y!W`6f$Pz z_>mpYgcWP3eDziPb&>%parp>%y}qR)tPGO1M8n*BIaqSonI#m{k-Pn)Fqww-3&L|<@l6;S1rjZ z$eTbDC@cR}wmy$`UT&hbEC(zSn~|-4rEz~R^q*(OJ*xIaXfB|$5)OV*lEwG?&+0N% zF3=(Zcz4E+Srz(zy&zk>oo^B)q`Q5-pI-`AoRQuww>|J-I}F>9H-14kg1+gk^2DC@ zdRC}B50roWdpV`~Y#v6P`aV&q6UXUPqC{vh!$PCb#q-)^M1ToAQ?yTZ(Y~7UOdZ2@ zzV+cXPlU<@CCgL5Pd~%8FfadGKgV;eYG2+R?7WI&*W)=t^`^wZ^)h=-S{(JZoON$= zIv#_HzlF!5s}(U>0rx{zRTZ4so^S3oC4D}8i6X=2D=%O8vh+4fs(R>~pwTRoQ`Vn= zymRyl8N?i_^v3FRv0D$Mis>GLxSH05rP0iZ8w$F?)HbKZwWigPG-EGWI3a9@?wKk- z8eRRu9!>t6oMJx?EfLnU=Sz`JdTQhn zv<}sv|FmA?PjgfE`2n!IvuG$g+Y%2SGs0dbO;#o+2rn3|2!aM5R5nHklgSHN#uS)K zY%?2P4~}?&$#kF2!K~$qBGhO z*dWae01?hLF}H^x|0Mwq0RpN!6b!yEOwUuaczx1`?F>TDWR7C)!7L1d0s=t|6{6l= zN-eMnAl~P z>TgnoDJ}dTRXN12elHWivyas0yvyvF?amQ%kp*4``yum?DOdkg%7`IOmD4jW!0N1c zBayQe&}q%&U+?8CeHuyGF@gK%vGoFm126Q}Yq>Qqw8)>e##0nb?Iw){k*Zc^`cq*f z9x-0%fVr~dE+=MzturWg9C&t|P5UsdO_F1Ro@LYbw!G2!E08od>w9rn^b$$=C|L~G z4f3~~;b*=ug)xel57m4jS9FCCqhb5?B@b~n@C9+e4ehzC>~>yh4>PT&dPx0|K}fyk z<`(wm7Q3h8T64O;pE3OgT*sDat+WECL8`_|kaMS`0(!C&!d%vqw% zL)M7IW4&&TS&z=ha)f6i?)L_5JVgr3EOD?U376ezAwxTnBM3kL0CkUvY+^pEAqe9g5E z8Z{L*swa0H8J|-Ex*HqLsTjJaI!v&=``!D9f_>7)Yx}`bH{aMUI8qvh-iP1Uv!Yqj&uTii!)U>KX$MfoR&uL$lsmO( zqb+UIuc`@(HTglNB%9VZc&?2aPc4_h@!zgu1?x+ zlIExl)Fy%m_@Ot~nV&SbNn)*IiKLsVZw|s@3pZ5NqNZj{=NMuFFA;clnlOTL3c4$;FzHoV0lAN;mvG`F%4D~&kgR*ms%IDhe{FLARADPvU zkeCTns*5kwD=z^q@Q;Gue7ZaZgk-2pG(gTengz)bx&-{ih35YtLtpsZ_VafKC+g~R zDFGVXXkPjSlEiearxK0lv+c)D{1OqaLe}TQyUAcZ?LYi^T6Hfs7lQ>PsJge?gbSGi z%`H`U+w7T3UOK0F0JjQ3aDcTfNH;^0*31Chh=Oswy-+}tH zU!qE?$W_)9uToA`SxNH|BHLohjfjtri%W8y?>mKSx+PiWEvKy}Uj>Wfl$}Arp>bIa z{Pa0*S>hUMyc%|UsQxVb0q7@)u!Tb6o$~7M9 z@L=GI;~@VvL&5B@_E{KJgwfz$vIME@_L5~JnLC=axb02`7*z0)z2Ng!j%-)kxK+}jhPyJ+2OdnDgYR7xa4E!Q4~_ac@-vCuv954#12Z>1#_{UWKy5!?Ua?I+Y8{j zeX4lf82tG3q%?G?(nSZD`ALv{Hdf{i_<43s6Wj!haz$$Op%X`_>ux{ikQ)FS)JAyM zQ;}$9I`N)he{ytQ*g}C||NSY)KE%-d;1#!emO-g6W=1hsUd_s6j0;&wTc1QAT$C(IK-A_ob$*vpz$haCxqU&v``F!)zOvT3m6$ z>qC__HsR%j?vnY31dJ|hy2y33IuEUbB?(@=Z3!j&S!EI}8zlR=s|Cz_%esyyseWCU z`5?g&C2@j$&XrwuGCyTPlHf9?5PV{Y)!84EXBV$;g@!GX%xzLsxSN!Lc{N{`@Pt_3 zt#}>cL@JATGmALAo=1g_jwn4UIFfxI)E$ISI1*~9SlFYabixjtc?kX%tPg~_el(W# zr?w929~_fk+l&YsAY8$S#^4)mNL)4P!lee}Isy<>!LaVXL8*eHt-_+~m$7&~103%R zh4}Y)?NMS=4%=Qujcy_psSh)M)^*hdt`lY4*rKlw%I-UUY+;`>^xf88I^JeHNL&KG z-i|#xquYQV$0>r#2~q^yzx(IBYS$K|a|Od|DR&EA<13ao17C=WZz#j~2{&qY*dFot z`~JBO@OlT;9DHV0I}EcY$NQ5-YvRf7{Uhw8n_m(MD+_Mh><>f2%ODhT{xj6SLUn8p z>?fyj=a{#)nU>|yr7O^DqK$8ocjWf`>A8C zN57`eJLjVH8mHJ)Lg)6kV<}@S=91Q7vtfxG!S03a4$iJ~XG0@YUCF2b^ecQSXhw+V z$7^~u$&Xi`Hci<(I%~9Eb1uhri20=F@tX22$rR7A0JIb`rztX-r6-v0y>l*%EaHQD zH9+x^>78jdsTqUp()%1 z%@aR5uK;BqIuDK6>ME5-?})>sXSwIDqQM&hK>@A_JSW?V5 z4K0jaJ;EuUpCR1sMC_u7iLaVl)zaYGb$$sF!jFNYjv25` z)nghWV1SPa-z_QEMbxykgP`P82> zN}})Qf9EXrP}Nx|OXAWZy0gDiEUw*REHc6xkYGwfs^W*QcC~v%xWHLG9#p-|R}djg z)l@)5?Bp;$*=IKh=HfW$hr@RjGRKuHXMi^8hv*nTtFrikRE4%Bhre4AwiK%^$kd%M z=uDN5;hDIPoY`YDiHI$taM+U|x+Sd)JO8<<*Xoo(e-Xc)&l&r0*v!`)&6S^Xr*i)n zzL9@o$afSDUgnW0UrrHz0J{p-o*Ar*S`4>A)h*h@XW{{t(Zm-bTGV7fg8@<*xsQbb z0VyJ)jPl*+$qd(nh6(6B9fJQE@NE+vD2u$fqsPpd;dmUk3F8<-VQGUI4W+~Z5&P~6 zFe0?(t$;Nb=u}mQxU04<#)<0Mz|ug#nP7v33m>=%7wO!O#-7IW z(?Lo>vgIUqfpb>=ssFxH+Ap8#q}-H@L9xRAzdKNp8D==ZAo&>dnqT&Nyzt~*fhb2( zL)-F5n69}S;)TQFN(pa*85V82m1me0R@A8U95>XqK|q7Cojy#$6zx6PFG7QO|I`#g zf$4*Q7$JZF3mIZ3O&U@N87#}P?>`b(eP`@slg@;)Ye3wZR!mz`Baz3ox=3=&Xs6)k zHDJ_E!d0q;D6~#8MJ`;{ESgk=Fd7C#JZKbEwnSXk3Q8OG>Q&5hk^1pl?sq(fpFm3d zD-%6D95CGhzFKGs_}pj;BqQa0`zMilWAIndHe)NL#RhlVN{US$VSs|xM{J{wUUuZ$ zt=**YcRCjKn(aoa;a%nJ&`m^3Zimo=J1cJep<^pTbi*o)YUQQOUe&4cI|)+PYA-V{S-ENR_EK!57CYz4KHm;gz{$||+HvV2xqQ20}Qs=+DUg(#=bO>Ql zbJyhh6sY2)cyX>DcJzTi{OQ_C>i_?J$jhwKo_iT{&RtH4o=N7W*`&~gG!xf=}!gI09rNDJ(b#tqCp z244V%XT<&>nB=@f-nmYyZ2K+m%7N&qiGyl)iSwQLvsP4x!8&ZJRZQZvTJ@1 z%9u~xk`fK{cw^0eM1{3=?z3FAZYQK5VC}1e-dUkq5B?zq-rk92+>(h5yX11#nk@S` z>-A6VE^M>M;jN1?nl|B#N7KAK-+9$4%tP<(?8WGqi)4&^9MQ)7@nXl45Cw z^vhA%hIed=1xj)$m8tk%5N`7m_zWohr|RkV#tOjit95;Thsa^aw$?%-Hh@P zP4y}oh3Q>W9ZK2GfP8PZMKwb#J>=L|3G%Yke&N34mzjISaNWL-0O^TQITM^;Vc?A{ zy}nsdG+#`7$VlR8dT4H=WCcoU<}zew@0+#**FWtgp+#mgEX6o<2EDCV(Y%a|xSKP#7&mq7z`!t@ z_^MM?rUK?KEdak%o7-GcrCjzi$=2q*ILr!>yx&$?o`aGfM0f(tX$D_|*jI*~VX0=? zgZnRV3-UJv84eAu^{>%>v>VI>*90n}4zL>Qymp478el0j2i2_4 z_ks2dLE=ds#!bjKi~U-M2Du^yN|bsb_V+**fr+cSi>o^2h%AWH-K*t6$>8gd&~t$xOwCNNYh-!7R}2A-_D(vhTU%9ZH|)97v9eK zMTi#-TqDJvVG(9Z^5Z&^m988gxpVM>ra>|Q3>Gw7`Vtbp(NguCg~D^snFLL zk9H7i7{HRSO`VxN`)u8&%%oMgJ2H!YbSz}3v1C;g*!O_9)vUfEeF_F1^-cW~EPBU3 z{KBHpDsI5?IoS7BNI=KPWZq4dpyokJ2s@-cd@UFOxE9!A7Xs|$UJ31Pft9R=J=416 zZXYkr^mb#K1DxRcQI9F%p{VG6E-)2diTAqHOpR;UpgZKdmAXGAedFtMu&XWeGm9l;5-B*+NSIG>Zup9%F~QYmUM z@CmGv{F#kjgKBagHnp%x{llUbrJ8*qF8ur_F*H~(2tUkOu{13X2vlA?C|rBsGMsy2 z$Y2k)aX!@M&FoIs43rc_>E8Ai za5Pm}YxJ(y4LDiYJv~<5JEa?;+fS4fHtCDriHd{0&ZJav#gFk1gGmI&IPx?uCem*| znch-#$x&^B$#%Ojo7@Qo}iDh6wq%JfZj5bgU7>5tBYv}SvW~+auvi59FbSwwgzaAIn{pERPyx%q?vPW4{va*u zH8O9CXvm5KVh??;Im&7_SZ2K7Dttd#kQ55g|FmY11&ASm^_ZdCn^&5$aDYQ*P4UyH zlJF!IhI#wy`_D&BNa0)q?|y22ke`qyA{(h_Tr<;T{*20=l93t;uwAIbbd=N#^4eL~ zU=**=Um-!Kr+b>Q{Xq=*n}G68#Jv{e7whDLvSiCJazRi*;XgQ<-jA-l_{CN=%>WfTp3{(tO2py-)k}#?`q{@QgYFYxE|G-}O{OI!MPy&;} zlFUDlrD`fT59z*EGaw3~La8Y!B`#l!Z7ZB)HAG3jWd|vd5}#PRiY$>Vs0y1CnE2&* zV+tu*2}YrMquUfUcx0{O=Pv^ zP)oQht~g$tCKvQ69fmTojD*JJFsz6ZmhPAwvWiI;%K!mX8RXF#gi(CH^Rj*>7dnIL z%zg4Yi{~|c_UAE#Mu-YNr#OAha~VYXyDOw6iZv`tYOx26NbP=2dPzIIFh~DZmSaX! zy8d4Tg#3$j$*KCVVrs?_-<520dG*8T>iGpZ#R^vvBT+ZGu9RGRe0|WR*wCs;X+-%w z{vSv_+20WW70BBDdG|j%Yvy`LGRYw>OTLHUh-xJ}vG^5gu!8T86tsfxA1)8KSJ@0J zAu;z>&o>GD29%n9mcX>xvZ1w}T>~5WWaGSx?cSr>P>(H^;1NCtNNtV2RZ=d#E2g6! zn>+M){tFbucz&i>2RO$fmkA4Dc;_Al9vSIUP_=7O@SYUc!!(r)xoL$2@fx{lbdlrpX*|Zf*1W;DYAqA!=%WI${U*vpBSA1^1`PXf-!uesd2t#Y3i8eohOy z(0(w(xrXg}8~G1w%h?O_Djf!n(*P8okVKCMp*Tea11d`Y916 z=HPfbbX|@X4DsDg@D%}SXp{SWJo&rU1ib-nc+$w0=grmG!O)7BE5U{-M^D=|_{4j`Cdh&kL@0PJ=SXj9L(OR;4lcbZ73 z!9sfcrH$D|_t(ttL=>#wCha31yowd`zK*JFm)vgNTikiEnPD<;Jd^`3>2{I}B&Ug3 zFJ?I{5lom?lsjb5n0SE;fuNxVRyM%V&C=wJ_&}9nl4isAa%>PMJ7Mi_O4^v%sT?qa zdRZmM%oj`i_XDdS^UqioLFTMXTm-|@;0n)P$#5Da5YXyYgW)XJ+OkmaXJhK0|cnP zbZwa85Z26cv2M~FGm>?0`M4uiU4)uKSC6urI<|tze0tWj?841OY?JWH6lEBjo^|CE z!dYi&-%g|^rOF2zx|wRB7^*jnxglgUy+IRgt2IB)Y;Y4CwBz=9$0d~yhB1{j$js7Y{$Y~bkN&K{N48Q5vhpT zS)#YifnD$eh6F}ytLnzjhfLd7qVvnsj@#0>zixC8O?xSJtE_UN1-$w5FZqn4oL=kCw`xFklQwF@#Ts){+y$;6}Xj1 z2bdxSa^g1^)d@~7`{ub$%f>#CVZo+BS}4hH5^z2xwfErhFJee6H;$(W*?yKbj_bxh za;6VfVoe{9u@!%PF7eg|YyYsiz%!UqmA%w5n-Zw$u5JEKa*Z1~KdbWU*@|%Sp3Wm# z_Hy_5%A3n%NJ?$$q+DxF)g^1(T<4}5zqbWCXK&|3;I)}4?1;KKB4+D`w0gMN#XU3h zjb~1&ZL~TZ+Gk{k)4l7q+j^7-hF9$IMlGLJ!R=U=!MD+sYSMg?ls2uwDT;P~ji-Oh zfgDwook*$Azd*;ylSj?h)!;|Fof^)u7{C2LRGhMY^<~@5Y6c-xHWQ~!z^PV!%(LkUy_}&9tvmP$60wYl2@JT^bT#LJ5}b-j|{^C%%tpS`O1oBI-g;Du04!z3$mk zV6`bhNxP0G6@9gSEh60?!I&!x(K6H66K>0nlPx`KH+;8+tjOp(@h{`LL*VVEfj6*8 zwDytI#nf)3K!#AN=fa}ccPw6k{8beHY|)yCW0BX%I6WfWe1CLqo5gr!&VQKXn5K_Q zMB%`4p#MG0?PkpswJY|lmd>dL2^nGanRk$Mz3SRy8?54D)6EXQCx$-;FL?UECP7wG zjnMD*O7>i57z5HUL~DPI&QK#y-6VZ#s@siQu`ETXc~H~w45|>!3;p%uuy!8}E5lg^ zrNJMTTc^AnafxxQscJ~4wthaGKv#^jiYkOFRl3%fs_uY@xJ@;IOdqZY(s}`DtK^75 ze3yTG<>`0qzXY9;&aa$+36mXd3x&Y~5jaEAgo`+=n>)NZBY6+_0MVq)9|-qbH886cEeXQ55&o}{!*SatpW>suEiNb8~P#`PNO7uwZBcIr@v z->!YNs(|f?9PL=$mCY4^^a<-!TZV62VXi#cP7)p81ejX>&mEF(dPer?sNUL-s*~;d z!VBr;PCONCmHjxWig>XB#zcA+ARL&+QzecdENT;#jzSnPiQSAO$e*Dd|d$`K3KbFCHoAH*89 z^i(J6)lNG@ZW+6SrOZ{PlsS48!kdx3@i`S;^B4aqTO)GFnk3d}RUmYDad0Bz^PCbBr5}gr_u6D_MZO|7Ldpc=6-M%o7Dh@cZ9bBI z`f4`}qn{e)m(fflH{kWU8IN9Fp?(HTBkt_0?K^@M28{{BpoFd(lR&`Ou!xpuj+Co+ zk39U+c+Vv!CC>YLTQ>?4gU3Vxk%WK&0n-NomEY1Uek?7I?s^j75aj4D*H%43`ETA3 z%dN?IbchZHd3Js=Wp#To^{!CU_|o{+#t>zXC_gGcPN+Wm9@j6vddWvOVjF#U?Q$Ur zgwjL%?zQYrd=S|Z+y2wG9gKonsDu9VuM7tU&C?#90f{>CQ*=Q7>dUz+;d<6Gf3QPz zi40drmycq#Z!W5`^_81~B3)VcrVRZHhLk!zZ?}#sjyfq`o{Jc8^CK{Vsf;{*esG=r z06#3N%rxf20invj{Ad7p9%i5Z3lgy)HLFw6_5E_8=cM;L1vsdVZRBdW2z~xYLa3vD zc42i5`kMJLR~?W%wDbBb6s~wuQ1CQU(FjB?+$PH=r}ozAee&$we4W+JmukG4P*Nr{ zD~tW(cnAR$WmclP-s`)~AAD6mMMLh>QU6ZXxjlCbMCgqIW481AnOvYcH`Mat!0y{_ z2}?6!1jcSLfX^5c7+n=_AG#&km@5YkEVWgin>!keV#I!}^aTQ5wR^WBd6>+}(}TYu zZAtwO!sUWY;@?gn4HDqEPO=~upzdP_l}cF&lPmeDST|YcvwWkG0`6X#u@3K~@Qf^^ zUHvdxL!h4p7YZf~nwTBEi*}bc9oh3RPoPFTaTiK64)oz!EGR`vo1|pzeOb4H^X8CF z3?E6v*&ac9-7x3WDKK};7qgdPWA0DRul|eTUmFo-j5x?!nX4r-0jGE_@0Z3Ch?0=Q zrV0l|p3Tm)WT70NzvCI^$$~G(n^`J41%$Azu-^(?E~km-YTPEOk;Z9jCRpvo)OlJT zz$b$4L~|;{MI~{>fRlZZ@H?*z(IbfHR!OVDn7sj}%l?yMOGadpshp#HmJ;`Fv$Ke- z5;t$(QqU2NLv|{QIP(^lBQEe3R{)w$*0^$p_+t%OQ*lx*(_Su>6?Y>Uj-vH|0XMo| z#ubSnxY=sOy^rS9^M;USsOmNnon@q`4O-Gw7AelT0z3}nP-lqdG_NMY$$j2#!Q?da zWdW%RpZ3H=3Gvq#3FYr30xigB-al7md*?F>(uCf1z9y0Gt+TM-8e3jyd$=;+bw$cd za+(0T{A_7z+N;jdJfPqz_{e2Ss0gbH(pD*QOF$4aEB|_>gpR3nV2k)6JiqTVy_(_2 ztIkaDH7a6ZtFa$#(>6X*6=>b`@k^E-Jx0?r!sGI zbk(F{B5Le$jjUPH3VNd=_$a-m2%s#lA(zlC9crubhVODr6-`D5UQTz(0bo}THQ1o# zE+j9~?zf8_pWnY?aWk|$nw_vBVJ*S8-hkcqTdvNrmguMes-T+Xox2*GU&@6{6>@Bf z-jOXVHZ)Bh{X5uVBeE4s=0H>mxBG>vRcb2fi1RvQp=w*^UZzn*N zn5tcko&%%je%t{#pSo6qJ&y}KjE0yTnXbc_1n=JKveJFHMjOZ@NA*Ob)Sq4gus0Sg zUp%px)KiThi8H*E`!uA@h;4%Y^)E7eO+Vmkh%hhelsH>M(HP#>SZ(Z*E*7)7S{q$A zY7ukXoZAt)4!yU0Fwd%3we6cc#8^=9Br~#pRsTT4fT3D2H|&KBwtGt|m+O2t=Fskl zAERLaS_K0jG5~N_v?#emgfcZ`)YQ=QosCn}CFRt!PkHm>GNc*jp**}xtM+UYJjvuk zQ)Xq5A*uTmJe%T*mQ$6Y$No3-dv}dp8Kl)Zf#netOQe-CL_%-(cF{BkQ1t`r5cCMj ze#V?{-cIJw!F?pmlR%PtOW~T|*CPSFU#UNA7{k(&B2@^{xMd6>F zQ;XpNj6*Oi9guOjzpICE>^8!}UQ+SZXH&Cx%koxN5pGhJqxy5`^EwdJY9%lgT!yKQ z_!xDye=EaG(;2^qr|43Lan#j`YO^#SZ-Hpz?LY%DV4y;o(T9CI=%V~*gc_f=VR?G( zC{GbM$0)5^B0BWugR9m{=3J*SGg+2>NQzsXQ_|-9IW{zJMc}RQmOb&b48Kbyz``Li zoKcC{rMvv%exsjdxETtCjWQlN7gWJL4tQodMtSJe&6pZsUA8m@n7oH}Yh>q2Rfl#D zO8u4ttK_koN%i6rY9qiBV22yHMfL6^Y9q&*7=QVJT->=&&&hj=uG{<-@2)h`)r| zP}$$rXhn*7g+pqA8K+5#K@ouiEMC}*d@-vW#^xF|_S26%kjBu`N>#Kv1PrOarrdBHb{X8-*uh99S0;FQh4> z6BAl@xpWJYE>>O0I%M!AI+BV}=iU(FLNBZ9XOuKJ;kt5_9E9b?QY?hSQn$^#{%N8M zAd`vgTzT7^?+kklhZuQqP4b_0ZPvl#3$pAGIZ!iljQh0@ttG*KXici=Ly)z>GJ-9_ zjH@AvK=TUClJ$k#{U}CBa4Q0mB-jvW5a2q)N5B*?k3MI^|J||HY(G+?J8QUk;6*bd z!7pdky4?KC?<$gvID`Y0zz#Fs+FN(*A8qz!hMmu`9dVgEkY}v*qG23Hh5;W5zJ(Og zhS!9Q`}12V#U}DifQTSP9h#2_JvGbqJx_oLcy#wI9^7h67up~tvM;I$qG8!2I-+@% zCs^&{@IWOn!%R@M(M9R!j#8XdD@jH(okV9vDd>$$%%VHTWKj>HHQ94Az>}o>lVQa* zDmQI?c$ISWG4db^)8Ada#=L|OzF>W_W9vw6up*^Ab=6;ZaV99 zL-gg&*_|>{O{$sxlA0L*VHDh@GP$Y%w|JQ8UKJ-|;5tjk_jML@smPx>$rZ*z@!CrrHMl9U990?$7LK0b*Kg&^59-%~ z>dt&(V?)LB^5rFJ%DHhhRP3F)wK)UQYX$Ybq1GBJ|7BksMjG-ed>^s6u-w9ZUv4&& zsnDwTsIA+t3kX-jXLNUUhNtMpE?Erh7!LCttVx#RD^%$ES}WT$=G52L^vK?g&$$rl zo7@XgUBAEGor)JJKqr=L4Q9nwMkbJ6W&U<&BK!yKi{UL3{ zvQ9?nyS|1@*XH}wCsJMOphU3cyuuYZW$cu@QCn0^7r^1}y?5us_(28EtD2!^;HMV4 z(R@8_%V9D)X++wfF};Tm8zd1Y3%Y$>zV`3uW&C+{i?m(|&%%nnLjH}Y)9yAA)kJq} z(L*<^e1FII(TWHV&68Ww0z<-ytE845CAWT6cE9MI{yWM3!TR ztOS*FA7P1u-h5W4l>6Hv*C%IHSN{@v>i?$ zq&W_wn{@8y(r;8#_z<<?-gc6c4#eg9L94Pw`0t-L)Y?`=g<$lw!YPlZJc&|Pl z0`^#TBbAG_EjKP7Po^bLt2jV+>FYR@lqQjqjB(J-Wf%`#wJU#IJ828*997f^6y;8i5cNstY#QNwwrU} zPWyx{qeZc8#K8F_uW79>UQViBq}9i-auRkzzn<|&ApRz3C2d^D7WNtqa!zOH3B)jf zEvqIM=2q;`&-r2&iYm<_v&OE3Da{WHS5v z?4Sxvb98^ko3)(*JER=koP-HG zTFW3hLL7|WDK<{F`{&WrWzMzyvIaam8pA%*m9nS62Cq^vDf1m7jNYB}xb0TBA ztbgg&1$@pP=S^o`X2hURyvA00-*4A@lYR2h8NC`z0w!RKS|Z+O>2h*xWqoH zRSWG29k;bBl0cmlr2`yN{*H-nhuTn7Bs=`xU#d*jAHb|kb`5XPb}Dux{lC@1K@^T5 z&ynB!h=2aB7LI>@S&!|!vS2P@wn6+Za`VIqUbOnIcj3VYSGP3~0joe5>=x19jCH@2 z3^Jj13i9x7pDPT8H8zE&5_5q!2Fn7WstlP5K>$DzHny<-zPagqpZU)GfE9s!M}O*r z|4(yg71U<*uWOv*6n7|I+})jG#R?R6clY2@+}$a~-JRg>?poa4cIbcavoFq^`!nl~ z$>f`aFIm6!yb}MP?X+ZSZMPU@c4#% zEaHNtKlji6X97lA7dVBW^9N9E!nr|YX$dHxv1nO3wfTQN#Eq>3g8_7t;!NH^=z-zj zLBph`sa5L>xE`E0U4efVf+{lsd?FF?3?)%Kqd}%yZ9EoyobiX;1fzol#eB?AV9AHI z`}~>^$Ge+vhLE=Vue%_s0Etj~;Ob^5SfedE!eN?sVdV$%U8xYD_hGOe1_vy79w1z? zj!EZs%CLrN`AN@D6-y5Zbf7`N>w;+ZP^;R!mkJz$U|V?o7y0?m)pL}u;2GMY3!oVQ z2%8X1U<`F}2s{*(yCP0B;dFj*KT-h{CQRV6W>Dz6@H*WAD6w<`0v+KSSO72*5)4d` zfBq*VRADeD>efyK($|J`?{wP*`vf$QB}=^rl7|lxrAsv6B1i2W=7(3*9t6mQWk&@L z`rGkE%*+Kmsn)(;XE$3nFYxHw|vp10o9m5s4%~afbGjJ+^Ps2`wzhS|S7y z14jN6A&hibryFkapPL$XGPmA|dJw7_^1D}I_$l5tam(J?7dJ1A6o}vIN9vJDa{%}p z2dqEjzF$H9&Mv*q3CA*U$SyD#7Eo*h}x5H5e7~PxGy2qubQ}-VZjA!gn$Zhp2y<88j7|7iWd~RmO ziV?Fn(hmA9GyqHvI4krh7;6?BD|`*9eHh597HBNr)c{7-6((UXQhwqXltcZsp%s?F z)RceYhm%G1Mn^igVkd$NCKF7A@Fy%B$bKy*!%r9$sz=&$Z9QubUErV_77Vsa_}MOJ z_8ga%jG~9(CTVVAM0bqvxASHTgk)7OcocvvdGxcqzh$a?vfH1lESkH>r&fS>EVN$S zr=1`IT0$4Kb${U=_KSi-Low_2OKdm%_AX>k>zF9&%(;nW(Ftwqo+mZ9Me@;MwTn4t zPPdUq7`Q$QR0rVZ`>j-!lECIQI)XA-_m@D z9=@t6b%0wElIIvRu;!7pO2!T07)RrX)-RfjQd^FSJ`6Rg8+&8U=H@jkE=&X z6FPfvaP#D(FE}!`=w7|7#RoK?N*1+`3xz3O$-+nU)HQ}oRV3se>P-h=DJp>gyC>!3 zK6nYKwU*Uxqq^p!F#U0@Lim)i{YtB}{R-9JYJbhGR+{mZ4!QLx#5T-3PMAiIT4(aJ z_=}`oCcj3>gHuod52s<1-p$iw{Tp+MX$6w6t%BiZl+vbBqutC)yLU@7{o8s+6UrtZ z4cE|L7%V?=y=r}Ry4@>GWd1r2#`9M~XUgZk@AQPvUx|u(ZR!o8<$q`TxI5NaCYG*M zcaxmT{RNM#mMRJu|30Mp^c}t`&K0g|UR#P{J4v(PUv@Pw5_b~eh6AD-q(a*~%? zVf|8nt)6$T_e*5G&?#D}vk|iLaIWj}vFz<%iUL+LcLU5J<(4(Tu49gC$}mH;j>9$l z4Vo+Sq$YR8&;I&~!M)G1br~c4OW^Jd2OWI)O$`w`;Hn=A3kaD|{7uwTN$kg+X*QU= z011vj{hP=Bl*+wtS!OZ(Bpti3QrtS zJ>%A0F%478xb~aeK7SrMpyXgriu`^yj65h94?w^gmusuyWNTLU zz3M`cACKP>7Ro&rl~BTcZPI<-dexC9yoZ%Y&{7Q^2VxOt%#sM7UqkF1oJFI66tqLl zY-K^+Uzq?iZ<{6hPgEos0PE?ohD?A;cK)@y^7XAH#gT1idGcG{JjHqisNh6RP@Q`V zRzTh|k%_$7X9+&Ipp2>5-8AH|l=G{SiU5HHB8z+aNg@y0>_`7D)J@@O>Rm!Qe#Ip@&9l1}%1Oa$t$I4ij>=uF9 z5+lk@4*krji4l62c5ZcPV3$gF7I=NUtRVj07_GXDfk^kVAxA4NjxZfR$!D0MXQA5k zeI}eTYiP^sPjj^#$OSD(T1DS%7lr~|!^4uT!=A=SUDHJ7rjIHrW;+1fUrEH#OitF6 z({fze+AlS~`^^l>l?koXD(d^`P`>K<3H(FdIb<_!Co4#_m3c%*&;LEtr6y+ACnx*o%K_+%+ttuA;y2wdI-s=xKVMN?6V~YBWf&G;h2GK*? zo;E)w(eI^Apg};HwY};(B}2Isn_v>j339DS^xm&`0q^(GanjluqatIHbgjz@*{M3L z7_TNch$qi!wy~%80~0j3C7t3?t-m1B043odhm^ZnD$H^3BjgRg=7NJ}JTMy=z#f=fqI#S zuZUns|Fv(9O!0l!el70@0%bBx4^Gj$tJIPnV*mt#HRz;6@k2~7 z^H=2%^00VBj);-oQ?wN#03Ft&cnooETYqEfI_x>(+n#Ru+b@&`VHdB z)G4e7t)e9o0fcrbuW?qbKfAJX@qZh7R72799YSt4=5&3oLl|CZi2q{x!>Yz&SS>=C z%k}hU!+=anJHZHt4;(y1x^}mEV>z5&k9rM+f9O6!5B2CW2p)S2`#|4egvv!nk*h|= zD{n(kK5;b8dc^z31v7Edvy`yt%f%}C7q6rY{xMgBRCm0_vMIS(!-Ll8TDxNG2 zQJX6WTmn!{uQ!US0Nt++B+?qlUd=JM8@r+0BWLDvWYGVm*!{ti%{fFUc791GWyam$ zmjX_)heuNp*@BY7#4rIA4O;kMmgCia*6>h}-ExvuS>^Dg8#NP_{H_q=XFr>{Mb~<) zrdS3c9X+!Mf{NN_)k}#z`4YM`xTN6^bcW-Vss~If{P_qE!?{Tx)LnLp-~@y_Lb1l>8f|=*{JUCD}pS}=dllQRbR)K zu6B(nXF85%)YT$IG)KeK+eFLF%c|TWcgxeQHB$#oe%+5o9e~@es;q6F4#Pn`&2zdx zgQ5gVH(2cMLjoynW8EwlD`CXN1tRe1RP>a71p0fe$)u+)bTB!elj5y4c*Ua5`>TTQv_8ZeE$0eE!}4vit9}1EU}%7LKNgfM-(y%>K40Wi8#o~H zBji+kG@~9BSwQahK3+SVei5XevOmeXk_H-7J7^>?&tJKRO1-PCtPzwaRLIhlrQ9?3f?seUut+*`lsn54({& z6-z7kChUa)+Riw^)~r_Q@k&d|vdrpc;Vq9Wzrnl0xqI$Y%sOl)R#w96cZmbjpnSd! ztx%Zfa7S4VdWPA{8QNz7b$CiJYQ~6II%qJHl>iaBUGJdDc2OPzO zCx_lHfOKc4a2{h)_s+AZwq|Z83SWZC`PLR&J>l$8JdO zYwqi**?U+MG^h*-RENa2tXna8yDWI|?qIrQy~&eH{L&v8!VWsoFY1HOJ9I--ZD!C- zmbgOWrYODa!{{4VPIvRZf^_KfW>}EJ#U+OYqY;ee0}SB(As7TPolE$d6Z^VO#D5$J zG>1;YQ~#Osq_iWU5K)P%%*(tC!M9pU9`<2CbQAaIE`p7LC|DF8R$qlE0Q)L5Y#xJ# zZNdK6H7GJR!L|IT)noBV#$}McwR@#V8_OCQ-ho;TSzQ%Sisa?Ei@b;s>h`6lyNNSPZo*CM?$3iu0`U zC(z)mhx<_nw?9n~SDa3fWc^q9Uu2na|N z+xoJ60osA#mc@bpnjnE3oCIURVQ(*q)_T#XsU!e_p?~zojGjE4+7p^e2=+gGC}e&* zmjt~RS?Ds6rol4Q_ivJG$mXS@9(;}gAtpj!k{ePjM z5Gd_`7Z_LYFEdcnBM|`k&^=5qSuMziXFs`t5vgy2*9n5wyL5f0bT%zh7lW$3x1Rv; z&D0NN6Bx%0K7kerk(Uuq4f;sx3>_p@9A+mlpOoIZf-{8_&wbT?Wx~W|~;anW9P# z)(R}q*W6{L_uBi*Dx|DBY}5 zo1TRph}724^0+utwsq?H@!_@TjlF;M;JMDgl zk}sm)Ntw%bEBLRZvyKdQK#geuRM5AFWp1sU)~}j0C*o>{J`ZFLXx;Ep2p0WyeX^p0 z{4)}g#`PoB>G4>GIPpZet=R+p%Sb$)KAMnCjdeVstVJ4Y@fHG(*R-MmI2q)qCD{{3 zZNWcBo9}HvqO#ssUf|$m6YCOdoYy``FNPxK+`SBXEvmXe$aUsBlC{i1X8@#`QQVM=auu5LB;2@(H?QrpU?B&YcCYh^)(a0- z@|zwqegnGjaN`u9=P}n*5uz?fg%LH1tQ^Y0BQ@vJ6rM)Pt-6TM@42rWPeI~At{%oH zBw=(FqCjsGWi~nC(MZ}TxCpK1K|AW44t#bJ=2z0PH#w!w<55B1&t>JJp zJ3WgztNT@4m?!2iSZN76U`A+dzd<@2lO~61My-PMkjI1nJO$#%Q%tNf`T;w(S{4aE zXP8v4oEI$;qLD0DI~!*ivpSa>G}5NjuxP4rRWom9%JXQ~m&<^%EIOnffJRC;Pl=18 z)e*3dLJJP?Hr$L74<;j{vhFnHYzzT9%n_+%Pu@;Jpu~C7GlP3od-xyEea zUHxn*Kf4Egj5GCFe9WzpwBQ7wY`3&4jR8cFbf`Uyg;eL4LKU9IVL&Dkc6;0Nw@}}c ziN7p+0lBT2_97R4!JEu$@lA9q#gg${NHyf$Aslc5pj;=^IS2Yyd>G|@C?C4j&Q6GN zEJemu?4*^Jnd7qE3x3LKT~}^teCZBem=f|)V-C#gS&(zBoK?) zN(&~K0tpcki0!Y>{S%X*p2A6K+ejg>6K@N>G@xmIi{Bi2--e06zm`%=&G6WO^ zm_}re8EX7bm)e!{pEYc7Wwx{RA2|@$s=TtHr^Q)xX>m$r)k;Kn^cz{F%=qSUI=#`3 z_)0VixI?yu8ReYmqqeK%uA69?v>Fik3SrrTdm*ip?0(nP2KI*T*1&FOHGe8>7-WU3 z01E{-06d(Ka0sUuJfsgul<6*2_?*8yboGZc>a;m_HjfBymnQZd{sCur@X zg&n0Wa+If|rdUIHumW2o0@z3@;3rzu6&ql0gv&iNXHg)s0uDAG58XRLuIiC1zZG;Y z$KTbr8XwsJD~%`}WON%l++Atd-c)n07oc6<@^1BJf=^pwb-ah&hTYXN!JuVxE$a7I zf1W4?NuyE?ssO*-CTNfj0PsUM6slN4z{-IENm0Di zDWRJG6e%tQc=F+PF=-=IaIq>;sK6WuIH4Z**qnt6c)F(cl3xtAKBGyk%_FhZ-t}1n z2UzM_kn#X@ba|LPn0xcjd>Z4gsPZ(dFMD?s>bM|ixD6;xn>XjGNA~&f7#zPER?>9Vx zmHkMktffgmWzvmoV}W2si_8R*{hvXvZX7<=o64lvXQ7DuBdV`T@X=%UAtz+O!qQ;c zRx!lE$Y5GW$fE0iT!sS@q=D7J(1p8PO8g>QS->&_!>e*ZVgo}e7Y+D1XX#P*vv@D_ zm;`nhz~Vy9irENY$w8!c{5ibKVK)0}{+#$BqO;rpaP@ver!cckD6vSaV~2aUPN86c zN7e1A;GN^&ZntIj zkzuGnW>(15OJ)`4_Pq1C+X1=#kDI2Y?`ut}?a5ay`pbT?Ndz(vgu{Xk`kJ4_&Dm(2 zGTw6UuS0ODpH+;ebbSlUI~{;jCMv?%(x#uh+RJzWcI4Tw0m{A){7(W#rAoyy5n?RG zJ(e=-u;^#CO;qb}(WYzq%jfzHm&Yv%@ zJrzoqq$s=%Cd;}Y!<;g6di&*UBQ`6B%7*rN;qrq!soVToNga+)mftFA$WLjR#D{!D~<@?WVt zMcKRwCLSBvFdguFloQJ={wYr!*I?Lv`pi=fQ4Q|;{AeevR#S2?j611jSw@b$|B+wf zl_!+hW>86+q)kiw>b>#|vig{o8TxXj{G<(#6Y842UBOf#E3i+xoGFTW5DE2xK_7FeSLH;+EEZRuu=X($pSbT@%M z8dL@vfA2FE;*z1nau{77L|#;|0%+)ArSS8cT%XKhvv+PLP?>v-=-VRmfg>9WE65rO1p>> z=KRUQD^MwTAfO?ow%lmj)8)w*6umCuvA!uWx{B-C<(NQ>9Yml4HwjL`&9X5`Q9K;n zvo?Jg-(p{|0HotH)ca?fe|Kak=X|2v0a{SvQxx!iQ<@5*L^?D~@!alcA4LUvCE%El z$^=pyvIGo8^bN@dQSTvAUt`k~>|tnOj zh{q!vkYK{eZ0o!$-)&ulTs7W;d1Y1jPe*TbX5;fD@waglW2SVh|PC*cEq4O?v-1bFP)oGR&c*YY_i`^nj>IJ2Xq&+isK z@T&Sml#EFtl#)NNaR#H=?0*-!Iy?1w$2DU?5L%4aV<>0pm@0XZ{!Wq6NYB>DvV?O) z|1ib}=vO#bG$(!feT7aR8@0ePZmzU9Eqd-#VcN-%c}2nh6%THK?bk`Kf<-rizVqiz zkxWz%wjLz=Z=6sWFUes-O<%Gw@x<40S5dyQy>D`pj0?2yC7c#o{Mc*5`16HkEw378 z5R3&7fyI(1A}Qs8&p)_a0K43eGbnms?oF>OyJ90&v2p|DKxqks<-)MlZ3 zv&z#kvT##naBNUW=|aGsv9#U|IwYXJ1wQf+bxfm~l5i9h_U+iMj02qdO~@~3!b5eV z#0tn3jg96*#78w1JMK{AUT?He($^A7u|!1t(7?j5*S%-7_$C-JdUn{(E-M5k+WaD- zx*&q8B@rDSgSbQ2fF65%a{80(UGy@e!AXC)rmGl#fKDD`6y}|dZ`Cllq z_C9)=IcXRU;V>8yand3y|AT@U533he5bJH)o~|16@Fv{afX=vy#n>!kv-?9sg#?WCO-|kZ1@8urm{Tl$cFxR?4qz8r7@R zCIlA4xu<8C)hMeKf?_cgmh@i7;K57c1rj%Q_jr>Tb}_?G zI!SF{e@>PD*a3!8TY&CtE|O|(o=#d>qjJB+S<(VwM(g6&10>i)+65baY)hYN4)$MY zkBI;sLOFy+1Ci6{8Oii7y7(sz36*QupkVeUw|P5GX;Zy z*hlr@$yJ^in0z;y!jJ(es9<7Ixa$-98wiVSVjzAuyT}g;9OU;0u^fF^LjF2MNFG3x zat^R3|0D3FYPsLuHTQ4d{hs+1p!`BMxRTxrbl;Baj&s7E(?74j4HZli3US3TzI7K1z7Tm6*CYBdT<9AIE0}iExl2iqrmk%0dOw_w zwMKX5;#tabROT}tF(*Nji;`b&jb-2K3aocNT^y~wd*0t68&XkyNdTbwa*?E?mDQ9i$(w*f4oI|}csPQ4rh=yhEV1K%v*gn#+J z5pktQLSyT_^yp9~8zvcoNsk2I2#Y-2IiI>4>U)Qn85#cdJm_W);^5<*Dtmq0+9@d? zTW@dozTQHPH&I9LD~Gf7=0s?dQ}+#WtG*%5Fg_i*D0Vds=1lZfj@9B=Vc3mhmq~g< z+(F(sL%imFl5)I9=;<9zB@nVo+F1@-7m6i1=j9WtsuN`b6cYLIYLbU(ORl{!M z5jFmySES3Pc2$gL>)o8DSksV!1!!oVFH0jq=%emFJ0qNed36!X%6Iou&b~4X&wg@> zW4L7#Vh`?@=Y`RqX+}z1I(+SYXE`kz@dqTXw7gQEeGUdDe0NlhSw0&qA(G%1TBR8A zY(V<91H5Wln4E|jaJZE^O%onQUik(MVkw2}FUwxo6-tA>8Ain3jyz68R@PWn4dQag z=Yp+b26Vo3L{E?}D4s?lL-a~>5b_%CyndFXt2J!N6yS~EMQD7%Ax&kJ)vI>G*-pWfuzVASdv(<;bYx+)B;aIs;4?57V{+x!2YwWKZbQA6FtvYks*kwL^*+0u~ zjC%f|b?tcx;fl2}G;-$aq*^ph^(5JLe-!OxdzahskXzekP@@&1_GWlx_R`ryb#F0J zDh2u}q|#l}w97$7it?K;f?|f@8&`r4StpRcTZy;V4t)Lp^dY|wA{%#37d7)+wHqY2 zha-15r+t|WA7HOux{Rc72~yxNZS-}%gP3L)41A@JUEygy=Cw|d}u#H`4p zWs`;;LRgxDmA%s~G~^Y`tIYeQ-7L5$v+i-iy`$L#?|r8`?t6H9*TF>I5syosvF|h+2)~DLx%3IiZOM6zF`R02csIozkHi}G<&-htNS~e4juJ? z`Y@8hYtL(7uGK8W<3f^3Vq&ifyF0jJV zgy80pbB!SFFC)(vo|&DcPwKjT*O0zrAtE^5G?x_~mFq1SMjK)!P3**d_<2kCu6WSe4t3CRkhK`VUk<;X6QX0pFFr4oUvI|I zzN-PD`iuP0+{6Z{85@2pD!R!|qcC_+>c&SVX0f*$ux9<3o{YBef3*={vVCoGNp+Bj zA$olsO6Rv1VmMHnQjfxG(dK_KGTRId{U*dA29|12(K9pftP&jJ6?ImAKPfXF#k0k} zV{UwFI0Q-6db~pMOl;AsEK@T7d*bD(>iUTIQvMc9fe`~=X9cK|V?L3Z@-RK{GN);A zz%kWqh2eXhywRlCF2Lt%IQydmP;(>wYiyh0NZRO8A+RBVgTF>RboE3MSQxOAqNfzjGc07Fj)W#P)ZqqeRdfSnKV@tG7Tq|_KIdpy9z)Z3K2F~C!#BRPOeZK{*=%&W1vS=` z><$AlbqkueI~_6K<;k*m7aqQN&o^4By$%Vy`>_g|n-CO<&fG9d>e}%Acu#t=GLc7h z(-McZX+oGsdbHbt%NdoA7Mz8kZ242o(En|MGe|o7m48Fc7gbVlDk5a8e&7qr$i0S} zx=$*rpjFJHiOlB^uZFF7^fUfTwG+YQidy4|@e`7)rJ)2SUNWM;>vtC37c;eTR$kYD z0a^y70~#kHm#~#I+eI#6^6mi1&d-L1r#=hS#{ti4gLFO-GhLXDZ)V17W6h13nT^?o zeopW59z4?SOyhw2s60Y2;47}YlxN?mx<7s`<@~k{JQ1t0*_8oD+sFZe0-aA@K2$2+k6A z#R>LOv(J2ax-F~c`4O!7zjN|RwaaqI<+PQh*C==^eH2`<-j^%xusfD@AGXP3&!tM^ zM-O&4OI!bLLd+W+-LJjJXqhFGRe25QX7;AQM+f~7GdkQH9tqW^ep`}|pqmI=t$I*LumMm4m#>t*%Y*3d3uj_%Z?GNM3+rt$YZz1RI5Es|>c z_X2V@b#gb%h9-8^hygQr30`R=_tDY2k4+HV8ka_w&et(>Lz(;K%Nb3#j>lBC+*KXC z_o{LKh@^{9VU?QC9*lS!WqUfN!XwCZbi-^r4LR{Bo4y8|PG952j~19HGCQ6tRj_rO zh&?f&(&FAAus!6X!@ttmrdldrGIq63irB7x6GxunCu>(p^LGgq3^%av;Px93ud+^I zgGlz}xT0tW;=E)Ks2tX=zKaA1j5%N_q=uQX5?3bSDg&L&|F9h`QO}*knS^eaHZD~u zqI%X9WP3Oa&L#IA7JAL@HU+y64yUO%Q}Hb-YB_V)G7U%YW(+bCh>!Akxr{j?E-9XD zwX3q!u1iS&8G=`E%HcbXY!r2%}mGtXf zZdTah&f$K%tBqIo8NPLt^1X|q&Nso<^z`)}d4Cj7xT-CD0G@sc?6eTTP0vO#Ll zr`^-LZB?F*)CNTolgQ-o($tIEhj!XDTnTTab0WCxw8F+JeYc| zq--8%Y1nh&OmEgS|8CIx((2a9ax3Wahp%bNHJNduSCTa`c5z-&qharAm4W;+mp#~t zIl0@NSgb5nx&^k$F#^%6v&VCJ#fq|a-T|$Wn^rJ z#fPtgFV1ZFZy>F2e-~DhYCgRc|DQIc>J*O&%Id~TA49pA2M4vGy|@-}-<_2lG-JTY+M}yavE~dOelOk~>yqX^H5E1OZ0B`GsL;wH) diff --git a/stg/visualization/index.html b/stg/visualization/index.html index 7b5e52e12a..1cdfab2a2d 100644 --- a/stg/visualization/index.html +++ b/stg/visualization/index.html @@ -10,5 +10,5 @@ - + diff --git a/stg/visualization/main.37706c64fa05ffa6.js b/stg/visualization/main.a780f3d1b87e953f.js similarity index 75% rename from stg/visualization/main.37706c64fa05ffa6.js rename to stg/visualization/main.a780f3d1b87e953f.js index 5fc7572683..5232f90fb2 100644 --- a/stg/visualization/main.37706c64fa05ffa6.js +++ b/stg/visualization/main.a780f3d1b87e953f.js @@ -1 +1 @@ -(self.webpackChunkvisualization=self.webpackChunkvisualization||[]).push([[792],{5102:(nt,Ee,v)=>{"use strict";v(6935);var o=v(4438);let y=null;function Z(){return y}class L{}const V=new o.nKC("");let X=(()=>{class n{historyGo(e){throw new Error("")}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:()=>(0,o.WQX)(G),providedIn:"platform"})}}return n})(),G=(()=>{class n extends X{constructor(){super(),this._doc=(0,o.WQX)(V),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Z().getBaseHref(this._doc)}onPopState(e){const i=Z().getGlobalEventTarget(this._doc,"window");return i.addEventListener("popstate",e,!1),()=>i.removeEventListener("popstate",e)}onHashChange(e){const i=Z().getGlobalEventTarget(this._doc,"window");return i.addEventListener("hashchange",e,!1),()=>i.removeEventListener("hashchange",e)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(e){this._location.pathname=e}pushState(e,i,r){this._history.pushState(e,i,r)}replaceState(e,i,r){this._history.replaceState(e,i,r)}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:()=>new n,providedIn:"platform"})}}return n})();function Q(n,t){if(0==n.length)return t;if(0==t.length)return n;let e=0;return n.endsWith("/")&&e++,t.startsWith("/")&&e++,2==e?n+t.substring(1):1==e?n+t:n+"/"+t}function ne(n){const t=n.match(/#|\?|$/),e=t&&t.index||n.length;return n.slice(0,e-("/"===n[e-1]?1:0))+n.slice(e)}function re(n){return n&&"?"!==n[0]?"?"+n:n}let me=(()=>{class n{historyGo(e){throw new Error("")}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:()=>(0,o.WQX)(Be),providedIn:"root"})}}return n})();const we=new o.nKC("");let Be=(()=>{class n extends me{constructor(e,i){super(),this._platformLocation=e,this._removeListenerFns=[],this._baseHref=i??this._platformLocation.getBaseHrefFromDOM()??(0,o.WQX)(V).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return Q(this._baseHref,e)}path(e=!1){const i=this._platformLocation.pathname+re(this._platformLocation.search),r=this._platformLocation.hash;return r&&e?`${i}${r}`:i}pushState(e,i,r,s){const l=this.prepareExternalUrl(r+re(s));this._platformLocation.pushState(e,i,l)}replaceState(e,i,r,s){const l=this.prepareExternalUrl(r+re(s));this._platformLocation.replaceState(e,i,l)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(e=0){this._platformLocation.historyGo?.(e)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(X),o.KVO(we,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),Ne=(()=>{class n{constructor(e){this._subject=new o.bkB,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=e;const i=this._locationStrategy.getBaseHref();this._basePath=function $e(n){if(new RegExp("^(https?:)?//").test(n)){const[,e]=n.split(/\/\/[^\/]+/);return e}return n}(ne(qe(i))),this._locationStrategy.onPopState(r=>{this._subject.emit({url:this.path(!0),pop:!0,state:r.state,type:r.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,i=""){return this.path()==this.normalize(e+re(i))}normalize(e){return n.stripTrailingSlash(function He(n,t){if(!n||!t.startsWith(n))return t;const e=t.substring(n.length);return""===e||["/",";","?","#"].includes(e[0])?e:t}(this._basePath,qe(e)))}prepareExternalUrl(e){return e&&"/"!==e[0]&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,i="",r=null){this._locationStrategy.pushState(r,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+re(i)),r)}replaceState(e,i="",r=null){this._locationStrategy.replaceState(r,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+re(i)),r)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){this._locationStrategy.historyGo?.(e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??=this.subscribe(i=>{this._notifyUrlChangeListeners(i.url,i.state)}),()=>{const i=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(i,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",i){this._urlChangeListeners.forEach(r=>r(e,i))}subscribe(e,i,r){return this._subject.subscribe({next:e,error:i,complete:r})}static{this.normalizeQueryParams=re}static{this.joinWithSlash=Q}static{this.stripTrailingSlash=ne}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(me))}}static{this.\u0275prov=o.jDH({token:n,factory:()=>function Je(){return new Ne((0,o.KVO)(me))}(),providedIn:"root"})}}return n})();function qe(n){return n.replace(/\/index.html$/,"")}var st=function(n){return n[n.Decimal=0]="Decimal",n[n.Percent=1]="Percent",n[n.Currency=2]="Currency",n[n.Scientific=3]="Scientific",n}(st||{}),We=function(n){return n[n.Zero=0]="Zero",n[n.One=1]="One",n[n.Two=2]="Two",n[n.Few=3]="Few",n[n.Many=4]="Many",n[n.Other=5]="Other",n}(We||{});const Te={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};function ci(n,t){const e=(0,o.H5H)(n),i=e[o.KH2.NumberSymbols][t];if(typeof i>"u"){if(t===Te.CurrencyDecimal)return e[o.KH2.NumberSymbols][Te.Decimal];if(t===Te.CurrencyGroup)return e[o.KH2.NumberSymbols][Te.Group]}return i}const _n=o.mq5,De=/^(\d+)?\.((\d+)(-(\d+))?)?$/;function gt(n){const t=parseInt(n);if(isNaN(t))throw new Error("Invalid integer literal when parsing "+n);return t}let Bn=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:function(i){let r=null;return i?r=new i:(s=o.KVO(o.xe9),r=new bi(s)),r;var s},providedIn:"root"})}}return n})();let bi=(()=>{class n extends Bn{constructor(e){super(),this.locale=e}getPluralCategory(e,i){switch(_n(i||this.locale)(e)){case We.Zero:return"zero";case We.One:return"one";case We.Two:return"two";case We.Few:return"few";case We.Many:return"many";default:return"other"}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(o.xe9))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function eo(n,t){t=encodeURIComponent(t);for(const e of n.split(";")){const i=e.indexOf("="),[r,s]=-1==i?[e,""]:[e.slice(0,i),e.slice(i+1)];if(r.trim()===t)return decodeURIComponent(s)}return null}const Ao=/\s+/,To=[];let Sn=(()=>{class n{constructor(e,i){this._ngEl=e,this._renderer=i,this.initialClasses=To,this.stateMap=new Map}set klass(e){this.initialClasses=null!=e?e.trim().split(Ao):To}set ngClass(e){this.rawClass="string"==typeof e?e.trim().split(Ao):e}ngDoCheck(){for(const i of this.initialClasses)this._updateState(i,!0);const e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(const i of e)this._updateState(i,!0);else if(null!=e)for(const i of Object.keys(e))this._updateState(i,!!e[i]);this._applyStateDiff()}_updateState(e,i){const r=this.stateMap.get(e);void 0!==r?(r.enabled!==i&&(r.changed=!0,r.enabled=i),r.touched=!0):this.stateMap.set(e,{enabled:i,changed:!0,touched:!0})}_applyStateDiff(){for(const e of this.stateMap){const i=e[0],r=e[1];r.changed?(this._toggleClass(i,r.enabled),r.changed=!1):r.touched||(r.enabled&&this._toggleClass(i,!1),this.stateMap.delete(i)),r.touched=!1}}_toggleClass(e,i){(e=e.trim()).length>0&&e.split(Ao).forEach(r=>{i?this._renderer.addClass(this._ngEl.nativeElement,r):this._renderer.removeClass(this._ngEl.nativeElement,r)})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.sFG))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"},standalone:!0})}}return n})(),Gn=(()=>{class n{constructor(e,i){this._viewContainer=e,this._context=new pi,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=i}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){Ui("ngIfThen",e),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){Ui("ngIfElse",e),this._elseTemplateRef=e,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.c1b),o.rXU(o.C4Q))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}}return n})();class pi{constructor(){this.$implicit=null,this.ngIf=null}}function Ui(n,t){if(t&&!t.createEmbeddedView)throw new Error(`${n} must be a TemplateRef, but received '${(0,o.Tbb)(t)}'.`)}class Ki{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}let No=(()=>{class n{constructor(e){this._localization=e,this._caseViews={}}set ngPlural(e){this._updateView(e)}addCase(e,i){this._caseViews[e]=i}_updateView(e){this._clearViews();const r=function ti(n,t,e,i){let r=`=${n}`;if(t.indexOf(r)>-1||(r=e.getPluralCategory(n,i),t.indexOf(r)>-1))return r;if(t.indexOf("other")>-1)return"other";throw new Error(`No plural message found for value "${n}"`)}(e,Object.keys(this._caseViews),this._localization);this._activateView(this._caseViews[r])}_clearViews(){this._activeView&&this._activeView.destroy()}_activateView(e){e&&(this._activeView=e,this._activeView.create())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Bn))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngPlural",""]],inputs:{ngPlural:"ngPlural"},standalone:!0})}}return n})(),ia=(()=>{class n{constructor(e,i,r,s){this.value=e;const l=!isNaN(Number(e));s.addCase(l?`=${e}`:e,new Ki(r,i))}static{this.\u0275fac=function(i){return new(i||n)(o.kS0("ngPluralCase"),o.rXU(o.C4Q),o.rXU(o.c1b),o.rXU(No,1))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngPluralCase",""]],standalone:!0})}}return n})(),ma=(()=>{class n{constructor(e,i,r){this._ngEl=e,this._differs=i,this._renderer=r,this._ngStyle=null,this._differ=null}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){const e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,i){const[r,s]=e.split("."),l=-1===r.indexOf("-")?void 0:o.czy.DashCase;null!=i?this._renderer.setStyle(this._ngEl.nativeElement,r,s?`${i}${s}`:i,l):this._renderer.removeStyle(this._ngEl.nativeElement,r,l)}_applyChanges(e){e.forEachRemovedItem(i=>this._setStyle(i.key,null)),e.forEachAddedItem(i=>this._setStyle(i.key,i.currentValue)),e.forEachChangedItem(i=>this._setStyle(i.key,i.currentValue))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.MKu),o.rXU(o.sFG))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"},standalone:!0})}}return n})(),yi=(()=>{class n{constructor(e){this._viewContainerRef=e,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null,this.ngTemplateOutletInjector=null}ngOnChanges(e){if(this._shouldRecreateView(e)){const i=this._viewContainerRef;if(this._viewRef&&i.remove(i.indexOf(this._viewRef)),!this.ngTemplateOutlet)return void(this._viewRef=null);const r=this._createContextForwardProxy();this._viewRef=i.createEmbeddedView(this.ngTemplateOutlet,r,{injector:this.ngTemplateOutletInjector??void 0})}}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,i,r)=>!!this.ngTemplateOutletContext&&Reflect.set(this.ngTemplateOutletContext,i,r),get:(e,i,r)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,i,r)}})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.c1b))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},standalone:!0,features:[o.OA$]})}}return n})();function yo(n,t){return new o.wOt(2100,!1)}class mc{createSubscription(t,e){return(0,o.O8t)(()=>t.subscribe({next:e,error:i=>{throw i}}))}dispose(t){(0,o.O8t)(()=>t.unsubscribe())}}class ga{createSubscription(t,e){return t.then(e,i=>{throw i})}dispose(t){}}const Ds=new ga,sf=new mc;let zn=(()=>{class n{constructor(e){this._latestValue=null,this.markForCheckOnValueUpdate=!0,this._subscription=null,this._obj=null,this._strategy=null,this._ref=e}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(e){if(!this._obj){if(e)try{this.markForCheckOnValueUpdate=!1,this._subscribe(e)}finally{this.markForCheckOnValueUpdate=!0}return this._latestValue}return e!==this._obj?(this._dispose(),this.transform(e)):this._latestValue}_subscribe(e){this._obj=e,this._strategy=this._selectStrategy(e),this._subscription=this._strategy.createSubscription(e,i=>this._updateLatestValue(e,i))}_selectStrategy(e){if((0,o.jNT)(e))return Ds;if((0,o.zjR)(e))return sf;throw yo()}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(e,i){e===this._obj&&(this._latestValue=i,this.markForCheckOnValueUpdate&&this._ref?.markForCheck())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc,16))}}static{this.\u0275pipe=o.EJ8({name:"async",type:n,pure:!1,standalone:!0})}}return n})();const Lo=/(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])\S*/g;let af=(()=>{class n{transform(e){if(null==e)return null;if("string"!=typeof e)throw yo();return e.replace(Lo,i=>i[0].toUpperCase()+i.slice(1).toLowerCase())}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"titlecase",type:n,pure:!0,standalone:!0})}}return n})(),lf=(()=>{class n{constructor(e){this.differs=e,this.keyValues=[],this.compareFn=Od}transform(e,i=Od){if(!e||!(e instanceof Map)&&"object"!=typeof e)return null;this.differ??=this.differs.find(e).create();const r=this.differ.diff(e),s=i!==this.compareFn;return r&&(this.keyValues=[],r.forEachItem(l=>{this.keyValues.push(function Fx(n,t){return{key:n,value:t}}(l.key,l.currentValue))})),(r||s)&&(this.keyValues.sort(i),this.compareFn=i),this.keyValues}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.MKu,16))}}static{this.\u0275pipe=o.EJ8({name:"keyvalue",type:n,pure:!1,standalone:!0})}}return n})();function Od(n,t){const e=n.key,i=t.key;if(e===i)return 0;if(void 0===e)return 1;if(void 0===i)return-1;if(null===e)return 1;if(null===i)return-1;if("string"==typeof e&&"string"==typeof i)return e{class n{constructor(e){this._locale=e}transform(e,i,r){if(!function cs(n){return!(null==n||""===n||n!=n)}(e))return null;r||=this._locale;try{return function Ar(n,t,e){return function Un(n,t,e,i,r,s,l=!1){let u="",f=!1;if(isFinite(n)){let p=function pn(n){let i,r,s,l,u,t=Math.abs(n)+"",e=0;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(s=t.search(/e/i))>0?(r<0&&(r=s),r+=+t.slice(s+1),t=t.substring(0,s)):r<0&&(r=t.length),s=0;"0"===t.charAt(s);s++);if(s===(u=t.length))i=[0],r=1;else{for(u--;"0"===t.charAt(u);)u--;for(r-=s,i=[],l=0;s<=u;s++,l++)i[l]=Number(t.charAt(s))}return r>22&&(i=i.splice(0,21),e=r-1,r=1),{digits:i,exponent:e,integerLen:r}}(n);l&&(p=function Fn(n){if(0===n.digits[0])return n;const t=n.digits.length-n.integerLen;return n.exponent?n.exponent+=2:(0===t?n.digits.push(0,0):1===t&&n.digits.push(0),n.integerLen+=2),n}(p));let m=t.minInt,_=t.minFrac,b=t.maxFrac;if(s){const O=s.match(De);if(null===O)throw new Error(`${s} is not a valid digit info`);const R=O[1],P=O[3],ee=O[5];null!=R&&(m=gt(R)),null!=P&&(_=gt(P)),null!=ee?b=gt(ee):null!=P&&_>b&&(b=_)}!function Ke(n,t,e){if(t>e)throw new Error(`The minimum number of digits after fraction (${t}) is higher than the maximum (${e}).`);let i=n.digits,r=i.length-n.integerLen;const s=Math.min(Math.max(t,r),e);let l=s+n.integerLen,u=i[l];if(l>0){i.splice(Math.max(n.integerLen,l));for(let _=l;_=5)if(l-1<0){for(let _=0;_>l;_--)i.unshift(0),n.integerLen++;i.unshift(1),n.integerLen++}else i[l-1]++;for(;r=p?F.pop():f=!1),b>=10?1:0},0);m&&(i.unshift(m),n.integerLen++)}(p,_,b);let w=p.digits,F=p.integerLen;const D=p.exponent;let T=[];for(f=w.every(O=>!O);F0?T=w.splice(F,w.length):(T=w,w=[0]);const I=[];for(w.length>=t.lgSize&&I.unshift(w.splice(-t.lgSize,w.length).join(""));w.length>t.gSize;)I.unshift(w.splice(-t.gSize,w.length).join(""));w.length&&I.unshift(w.join("")),u=I.join(ci(e,i)),T.length&&(u+=ci(e,r)+T.join("")),D&&(u+=ci(e,Te.Exponential)+"+"+D)}else u=ci(e,Te.Infinity);return u=n<0&&!f?t.negPre+u+t.negSuf:t.posPre+u+t.posSuf,u}(n,function En(n,t="-"){const e={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},i=n.split(";"),r=i[0],s=i[1],l=-1!==r.indexOf(".")?r.split("."):[r.substring(0,r.lastIndexOf("0")+1),r.substring(r.lastIndexOf("0")+1)],u=l[0],f=l[1]||"";e.posPre=u.substring(0,u.indexOf("#"));for(let m=0;m{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275mod=o.$C({type:n})}static{this.\u0275inj=o.G2t({})}}return n})();const Wu="browser";function Mv(n){return"server"===n}class rl{}class es extends L{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class AA extends es{static makeCurrent(){!function U(n){y??=n}(new AA)}onAndCancel(t,e,i){return t.addEventListener(e,i),()=>{t.removeEventListener(e,i)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){t.remove()}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getBaseHref(t){const e=function rd(){return gf=gf||document.querySelector("base"),gf?gf.getAttribute("href"):null}();return null==e?null:function jx(n){return new URL(n,document.baseURI).pathname}(e)}resetBaseElement(){gf=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return eo(document.cookie,t)}}let gf=null,qx=(()=>{class n{build(){return new XMLHttpRequest}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const D0=new o.nKC("");let _f=(()=>{class n{constructor(e,i){this._zone=i,this._eventNameToPlugin=new Map,e.forEach(r=>{r.manager=this}),this._plugins=e.slice().reverse()}addEventListener(e,i,r){return this._findPluginFor(i).addEventListener(e,i,r)}getZone(){return this._zone}_findPluginFor(e){let i=this._eventNameToPlugin.get(e);if(i)return i;if(i=this._plugins.find(s=>s.supports(e)),!i)throw new o.wOt(5101,!1);return this._eventNameToPlugin.set(e,i),i}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(D0),o.KVO(o.SKi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();class Hv{constructor(t){this._doc=t}}const bf="ng-app-id";let vf=(()=>{class n{constructor(e,i,r,s={}){this.doc=e,this.appId=i,this.nonce=r,this.platformId=s,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Mv(s),this.resetHostNodes()}addStyles(e){for(const i of e)1===this.changeUsageCount(i,1)&&this.onStyleAdded(i)}removeStyles(e){for(const i of e)this.changeUsageCount(i,-1)<=0&&this.onStyleRemoved(i)}ngOnDestroy(){const e=this.styleNodesInDOM;e&&(e.forEach(i=>i.remove()),e.clear());for(const i of this.getAllStyles())this.onStyleRemoved(i);this.resetHostNodes()}addHost(e){this.hostNodes.add(e);for(const i of this.getAllStyles())this.addStyleToHost(e,i)}removeHost(e){this.hostNodes.delete(e)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(e){for(const i of this.hostNodes)this.addStyleToHost(i,e)}onStyleRemoved(e){const i=this.styleRef;i.get(e)?.elements?.forEach(r=>r.remove()),i.delete(e)}collectServerRenderedStyles(){const e=this.doc.head?.querySelectorAll(`style[${bf}="${this.appId}"]`);if(e?.length){const i=new Map;return e.forEach(r=>{null!=r.textContent&&i.set(r.textContent,r)}),i}return null}changeUsageCount(e,i){const r=this.styleRef;if(r.has(e)){const s=r.get(e);return s.usage+=i,s.usage}return r.set(e,{usage:i,elements:[]}),i}getStyleElement(e,i){const r=this.styleNodesInDOM,s=r?.get(i);if(s?.parentNode===e)return r.delete(i),s.removeAttribute(bf),s;{const l=this.doc.createElement("style");return this.nonce&&l.setAttribute("nonce",this.nonce),l.textContent=i,this.platformIsServer&&l.setAttribute(bf,this.appId),e.appendChild(l),l}}addStyleToHost(e,i){const r=this.getStyleElement(e,i),s=this.styleRef,l=s.get(i)?.elements;l?l.push(r):s.set(i,{elements:[r],usage:1})}resetHostNodes(){const e=this.hostNodes;e.clear(),e.add(this.doc.head)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(o.sZ2),o.KVO(o.BIS,8),o.KVO(o.Agw))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const to={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},en=/%COMP%/g,Gs=new o.nKC("",{providedIn:"root",factory:()=>!0});function Vo(n,t){return t.map(e=>e.replace(en,n))}let La=(()=>{class n{constructor(e,i,r,s,l,u,f,p=null){this.eventManager=e,this.sharedStylesHost=i,this.appId=r,this.removeStylesOnCompDestroy=s,this.doc=l,this.platformId=u,this.ngZone=f,this.nonce=p,this.rendererByCompId=new Map,this.platformIsServer=Mv(u),this.defaultRenderer=new Oi(e,l,f,this.platformIsServer)}createRenderer(e,i){if(!e||!i)return this.defaultRenderer;this.platformIsServer&&i.encapsulation===o.gXe.ShadowDom&&(i={...i,encapsulation:o.gXe.Emulated});const r=this.getOrCreateRenderer(e,i);return r instanceof Gd?r.applyToHost(e):r instanceof xc&&r.applyStyles(),r}getOrCreateRenderer(e,i){const r=this.rendererByCompId;let s=r.get(i.id);if(!s){const l=this.doc,u=this.ngZone,f=this.eventManager,p=this.sharedStylesHost,m=this.removeStylesOnCompDestroy,_=this.platformIsServer;switch(i.encapsulation){case o.gXe.Emulated:s=new Gd(f,p,i,this.appId,m,l,u,_);break;case o.gXe.ShadowDom:return new go(f,p,e,i,l,u,this.nonce,_);default:s=new xc(f,p,i,m,l,u,_)}r.set(i.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(_f),o.KVO(vf),o.KVO(o.sZ2),o.KVO(Gs),o.KVO(V),o.KVO(o.Agw),o.KVO(o.SKi),o.KVO(o.BIS))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();class Oi{constructor(t,e,i,r){this.eventManager=t,this.doc=e,this.ngZone=i,this.platformIsServer=r,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(t,e){return e?this.doc.createElementNS(to[e]||e,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,e){(zd(t)?t.content:t).appendChild(e)}insertBefore(t,e,i){t&&(zd(t)?t.content:t).insertBefore(e,i)}removeChild(t,e){e.remove()}selectRootElement(t,e){let i="string"==typeof t?this.doc.querySelector(t):t;if(!i)throw new o.wOt(-5104,!1);return e||(i.textContent=""),i}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,i,r){if(r){e=r+":"+e;const s=to[r];s?t.setAttributeNS(s,e,i):t.setAttribute(e,i)}else t.setAttribute(e,i)}removeAttribute(t,e,i){if(i){const r=to[i];r?t.removeAttributeNS(r,e):t.removeAttribute(`${i}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,i,r){r&(o.czy.DashCase|o.czy.Important)?t.style.setProperty(e,i,r&o.czy.Important?"important":""):t.style[e]=i}removeStyle(t,e,i){i&o.czy.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,i){null!=t&&(t[e]=i)}setValue(t,e){t.nodeValue=e}listen(t,e,i){if("string"==typeof t&&!(t=Z().getGlobalEventTarget(this.doc,t)))throw new Error(`Unsupported event target ${t} for event ${e}`);return this.eventManager.addEventListener(t,e,this.decoratePreventDefault(i))}decoratePreventDefault(t){return e=>{if("__ngUnwrap__"===e)return t;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>t(e)):t(e))&&e.preventDefault()}}}function zd(n){return"TEMPLATE"===n.tagName&&void 0!==n.content}class go extends Oi{constructor(t,e,i,r,s,l,u,f){super(t,s,l,f),this.sharedStylesHost=e,this.hostEl=i,this.shadowRoot=i.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const p=Vo(r.id,r.styles);for(const m of p){const _=document.createElement("style");u&&_.setAttribute("nonce",u),_.textContent=m,this.shadowRoot.appendChild(_)}}nodeOrShadowRoot(t){return t===this.hostEl?this.shadowRoot:t}appendChild(t,e){return super.appendChild(this.nodeOrShadowRoot(t),e)}insertBefore(t,e,i){return super.insertBefore(this.nodeOrShadowRoot(t),e,i)}removeChild(t,e){return super.removeChild(null,e)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class xc extends Oi{constructor(t,e,i,r,s,l,u,f){super(t,s,l,u),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=r,this.styles=f?Vo(f,i.styles):i.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class Gd extends xc{constructor(t,e,i,r,s,l,u,f){const p=r+"-"+i.id;super(t,e,i,s,l,u,f,p),this.contentAttr=function Zu(n){return"_ngcontent-%COMP%".replace(en,n)}(p),this.hostAttr=function no(n){return"_nghost-%COMP%".replace(en,n)}(p)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,e){const i=super.createElement(t,e);return super.setAttribute(i,this.contentAttr,""),i}}let cl=(()=>{class n extends Hv{constructor(e){super(e)}supports(e){return!0}addEventListener(e,i,r){return e.addEventListener(i,r,!1),()=>this.removeEventListener(e,i,r)}removeEventListener(e,i,r){return e.removeEventListener(i,r)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const Dl=["alt","control","meta","shift"],Qv={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},od={alt:n=>n.altKey,control:n=>n.ctrlKey,meta:n=>n.metaKey,shift:n=>n.shiftKey};let mA=(()=>{class n extends Hv{constructor(e){super(e)}supports(e){return null!=n.parseEventName(e)}addEventListener(e,i,r){const s=n.parseEventName(i),l=n.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Z().onAndCancel(e,s.domEventName,l))}static parseEventName(e){const i=e.toLowerCase().split("."),r=i.shift();if(0===i.length||"keydown"!==r&&"keyup"!==r)return null;const s=n._normalizeKey(i.pop());let l="",u=i.indexOf("code");if(u>-1&&(i.splice(u,1),l="code."),Dl.forEach(p=>{const m=i.indexOf(p);m>-1&&(i.splice(m,1),l+=p+".")}),l+=s,0!=i.length||0===s.length)return null;const f={};return f.domEventName=r,f.fullKey=l,f}static matchEventFullKeyCode(e,i){let r=Qv[e.key]||e.key,s="";return i.indexOf("code.")>-1&&(r=e.code,s="code."),!(null==r||!r)&&(r=r.toLowerCase()," "===r?r="space":"."===r&&(r="dot"),Dl.forEach(l=>{l!==r&&(0,od[l])(e)&&(s+=l+".")}),s+=r,s===i)}static eventCallback(e,i,r){return s=>{n.matchEventFullKeyCode(s,e)&&r.runGuarded(()=>i(s))}}static _normalizeKey(e){return"esc"===e?"escape":e}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function gA(n){return{appProviders:[...k0,...n?.providers??[]],platformProviders:Ho}}const Ho=[{provide:o.Agw,useValue:Wu},{provide:o.PLl,useValue:function Bl(){AA.makeCurrent()},multi:!0},{provide:V,useFactory:function Ju(){return(0,o.TL$)(document),document},deps:[]}],k0=[{provide:o.H8p,useValue:"root"},{provide:o.zcH,useFactory:function _A(){return new o.zcH},deps:[]},{provide:D0,useClass:cl,multi:!0,deps:[V,o.SKi,o.Agw]},{provide:D0,useClass:mA,multi:!0,deps:[V]},La,vf,_f,{provide:o._9s,useExisting:La},{provide:rl,useClass:qx,deps:[]},[]];function U0(n,t,e,i,r,s,l){try{var u=n[s](l),f=u.value}catch(p){return void e(p)}u.done?t(f):Promise.resolve(f).then(i,r)}function Mn(n){return function(){var t=this,e=arguments;return new Promise(function(i,r){var s=n.apply(t,e);function l(f){U0(s,i,r,l,u,"next",f)}function u(f){U0(s,i,r,l,u,"throw",f)}l(void 0)})}}var $d=v(4412),qr=v(4226),mi=v(1413),un=v(8359);class Gv extends un.yU{constructor(t,e){super()}schedule(t,e=0){return this}}const yA={setInterval(n,t,...e){const{delegate:i}=yA;return i?.setInterval?i.setInterval(n,t,...e):setInterval(n,t,...e)},clearInterval(n){const{delegate:t}=yA;return(t?.clearInterval||clearInterval)(n)},delegate:void 0};var yf=v(7908);class Ma extends Gv{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){var i;if(this.closed)return this;this.state=t;const r=this.id,s=this.scheduler;return null!=r&&(this.id=this.recycleAsyncId(s,r,e)),this.pending=!0,this.delay=e,this.id=null!==(i=this.id)&&void 0!==i?i:this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,i=0){return yA.setInterval(t.flush.bind(t,this),i)}recycleAsyncId(t,e,i=0){if(null!=i&&this.delay===i&&!1===this.pending)return e;null!=e&&yA.clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const i=this._execute(t,e);if(i)return i;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let r,i=!1;try{this.work(t)}catch(s){i=!0,r=s||new Error("Scheduled action threw falsy error")}if(i)return this.unsubscribe(),r}unsubscribe(){if(!this.closed){const{id:t,scheduler:e}=this,{actions:i}=e;this.work=this.state=this.scheduler=null,this.pending=!1,(0,yf.o)(i,this),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null,super.unsubscribe()}}}const wf={now:()=>(wf.delegate||Date).now(),delegate:void 0};class Pl{constructor(t,e=Pl.now){this.schedulerActionCtor=t,this.now=e}schedule(t,e=0,i){return new this.schedulerActionCtor(this,t).schedule(i,e)}}Pl.now=wf.now;class cr extends Pl{constructor(t,e=Pl.now){super(t,e),this.actions=[],this._active=!1}flush(t){const{actions:e}=this;if(this._active)return void e.push(t);let i;this._active=!0;do{if(i=t.execute(t.state,t.delay))break}while(t=e.shift());if(this._active=!1,i){for(;t=e.shift();)t.unsubscribe();throw i}}}const xf=new class V0 extends cr{}(class Rl extends Ma{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,i=0){return null!=i&&i>0||null==i&&this.delay>0?super.requestAsyncId(t,e,i):(t.flush(this),0)}});function js(n,t,e,i=0,r=!1){const s=t.schedule(function(){e(),r?n.add(this.schedule(null,i)):this.unsubscribe()},i);if(n.add(s),!r)return s}var Ir=v(9974),lr=v(4360);function $s(n,t=0){return(0,Ir.N)((e,i)=>{e.subscribe((0,lr._)(i,r=>js(i,n,()=>i.next(r),t),()=>js(i,n,()=>i.complete(),t),r=>js(i,n,()=>i.error(r),t)))})}function Ol(n){return this instanceof Ol?(this.v=n,this):new Ol(n)}function Wv(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,t=n[Symbol.asyncIterator];return t?t.call(n):(n=function th(n){var t="function"==typeof Symbol&&Symbol.iterator,e=t&&n[t],i=0;if(e)return e.call(n);if(n&&"number"==typeof n.length)return{next:function(){return n&&i>=n.length&&(n=void 0),{value:n&&n[i++],done:!n}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(n),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(s){e[s]=n[s]&&function(l){return new Promise(function(u,f){!function r(s,l,u,f){Promise.resolve(f).then(function(p){s({value:p,done:u})},l)}(u,f,(l=n[s](l)).done,l.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const xo=n=>n&&"number"==typeof n.length&&"function"!=typeof n;var Yr=v(8071);function TA(n){return(0,Yr.T)(n?.then)}var K0=v(3494);function tC(n){return(0,Yr.T)(n[K0.s])}function nC(n){return Symbol.asyncIterator&&(0,Yr.T)(n?.[Symbol.asyncIterator])}function Y0(n){return new TypeError(`You provided ${null!==n&&"object"==typeof n?"an invalid object":`'${n}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Z0=function Zv(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function Ps(n){return(0,Yr.T)(n?.[Z0])}function Nl(n){return function MA(n,t,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,i=e.apply(n,t||[]),s=[];return r={},u("next"),u("throw"),u("return",function l(w){return function(F){return Promise.resolve(F).then(w,_)}}),r[Symbol.asyncIterator]=function(){return this},r;function u(w,F){i[w]&&(r[w]=function(D){return new Promise(function(T,I){s.push([w,D,T,I])>1||f(w,D)})},F&&(r[w]=F(r[w])))}function f(w,F){try{!function p(w){w.value instanceof Ol?Promise.resolve(w.value.v).then(m,_):b(s[0][2],w)}(i[w](F))}catch(D){b(s[0][3],D)}}function m(w){f("next",w)}function _(w){f("throw",w)}function b(w,F){w(F),s.shift(),s.length&&f(s[0][0],s[0][1])}}(this,arguments,function*(){const e=n.getReader();try{for(;;){const{value:i,done:r}=yield Ol(e.read());if(r)return yield Ol(void 0);yield yield Ol(i)}}finally{e.releaseLock()}})}function IA(n){return(0,Yr.T)(n?.getReader)}var dl=v(5334);function Rr(n){if(n instanceof qr.c)return n;if(null!=n){if(tC(n))return function Jv(n){return new qr.c(t=>{const e=n[K0.s]();if((0,Yr.T)(e.subscribe))return e.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(n);if(xo(n))return function hs(n){return new qr.c(t=>{for(let e=0;e{n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,dl.m)})}(n);if(nC(n))return FA(n);if(Ps(n))return function iC(n){return new qr.c(t=>{for(const e of n)if(t.next(e),t.closed)return;t.complete()})}(n);if(IA(n))return function DA(n){return FA(Nl(n))}(n)}throw Y0(n)}function FA(n){return new qr.c(t=>{(function Sf(n,t){var e,i,r,s;return function Mf(n,t,e,i){return new(e||(e=Promise))(function(s,l){function u(m){try{p(i.next(m))}catch(_){l(_)}}function f(m){try{p(i.throw(m))}catch(_){l(_)}}function p(m){m.done?s(m.value):function r(s){return s instanceof e?s:new e(function(l){l(s)})}(m.value).then(u,f)}p((i=i.apply(n,t||[])).next())})}(this,void 0,void 0,function*(){try{for(e=Wv(n);!(i=yield e.next()).done;)if(t.next(i.value),t.closed)return}catch(l){r={error:l}}finally{try{i&&!i.done&&(s=e.return)&&(yield s.call(e))}finally{if(r)throw r.error}}t.complete()})})(n,t).catch(e=>t.error(e))})}var Ll=v(3669),J0=v(5343);function e_(n){return n&&(0,Yr.T)(n.schedule)}function Tf(n){return n[n.length-1]}function BA(n){return(0,Yr.T)(Tf(n))?n.pop():void 0}function nh(n){return e_(Tf(n))?n.pop():void 0}function ul(...n){const t=BA(n);return(0,Ir.N)((e,i)=>{const r=n.length,s=new Array(r);let l=n.map(()=>!1),u=!1;for(let f=0;f{s[f]=p,!u&&!l[f]&&(l[f]=!0,(u=l.every(Ll.D))&&(l=null))},J0.l));e.subscribe((0,lr._)(i,f=>{if(u){const p=[f,...s];i.next(t?t(...p):p)}}))})}var Xn=v(6354);function kr(n,t=Ll.D){return n=n??ny,(0,Ir.N)((e,i)=>{let r,s=!0;e.subscribe((0,lr._)(i,l=>{const u=t(l);(s||!n(r,u))&&(s=!1,r=u,i.next(l))}))})}function ny(n,t){return n===t}function ih(n,t){const e=!t?.manualCleanup;e&&!t?.injector&&(0,o.Af3)(ih);const i=e?t?.injector?.get(o.abz)??(0,o.WQX)(o.abz):null,r=function hl(n=Object.is){return(t,e)=>1===t.kind&&1===e.kind&&n(t.value,e.value)}(t?.equal);let s;s=(0,o.vPA)(t?.requireSync?{kind:0}:{kind:1,value:t?.initialValue},{equal:r});const l=n.subscribe({next:u=>s.set({kind:1,value:u}),error:u=>{if(t?.rejectErrors)throw u;s.set({kind:2,error:u})}});if(t?.requireSync&&0===s().kind)throw new o.wOt(601,!1);return i?.onDestroy(l.unsubscribe.bind(l)),(0,o.EWP)(()=>{const u=s();switch(u.kind){case 1:return u.value;case 2:throw u.error;case 0:throw new o.wOt(601,!1)}},{equal:t?.equal})}const qd={};function bn(n,t){if(qd[n]=(qd[n]||0)+1,"function"==typeof t)return Wd(n,(...i)=>({...t(...i),type:n}));switch(t?t._as:"empty"){case"empty":return Wd(n,()=>({type:n}));case"props":return Wd(n,i=>({...i,type:n}));default:throw new Error("Unexpected config.")}}function Wd(n,t){return Object.defineProperty(t,"type",{value:n,writable:!1})}const Bf="@ngrx/store/init";let Mc=(()=>{class n extends $d.t{constructor(){super({type:Bf})}next(e){if("function"==typeof e)throw new TypeError("\n Dispatch expected an object, instead it received a function.\n If you're using the createAction function, make sure to invoke the function\n before dispatching the action. For example, someAction should be someAction().");if(typeof e>"u")throw new TypeError("Actions must be objects");if(typeof e.type>"u")throw new TypeError("Actions must have a type property");super.next(e)}complete(){}ngOnDestroy(){super.complete()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const rC=[Mc],ly=new o.nKC("@ngrx/store Internal Root Guard"),oC=new o.nKC("@ngrx/store Internal Initial State"),cy=new o.nKC("@ngrx/store Initial State"),kf=new o.nKC("@ngrx/store Reducer Factory"),Ul=new o.nKC("@ngrx/store Internal Reducer Factory Provider"),Rf=new o.nKC("@ngrx/store Initial Reducers"),cd=new o.nKC("@ngrx/store Internal Initial Reducers"),Xd=(new o.nKC("@ngrx/store Store Features"),new o.nKC("@ngrx/store Internal Store Reducers")),QA=(new o.nKC("@ngrx/store Internal Feature Reducers"),new o.nKC("@ngrx/store Internal Feature Configs"),new o.nKC("@ngrx/store Internal Store Features"),new o.nKC("@ngrx/store Internal Feature Reducers Token"),new o.nKC("@ngrx/store Feature Reducers"),new o.nKC("@ngrx/store User Provided Meta Reducers")),zA=new o.nKC("@ngrx/store Meta Reducers"),Ha=new o.nKC("@ngrx/store Internal Resolved Meta Reducers"),t_=new o.nKC("@ngrx/store User Runtime Checks Config"),Pf=new o.nKC("@ngrx/store Internal User Runtime Checks Config"),Kd=new o.nKC("@ngrx/store Internal Runtime Checks"),Ec=new o.nKC("@ngrx/store Check if Action types are unique"),ud=new o.nKC("@ngrx/store Root Store Provider"),_o=new o.nKC("@ngrx/store Feature State Provider");function Ea(n,t={}){const e=Object.keys(n),i={};for(let s=0;ss(r),e(t))}}function Hl(n,t){return Array.isArray(t)&&t.length>0&&(n=Vl.apply(null,[...t,n])),(e,i)=>{const r=n(e);return(s,l)=>r(s=void 0===s?i:s,l)}}class fl extends qr.c{}class oh extends Mc{}let Of=(()=>{class n extends $d.t{get currentReducers(){return this.reducers}constructor(e,i,r,s){super(s(r,i)),this.dispatcher=e,this.initialState=i,this.reducers=r,this.reducerFactory=s}addFeature(e){this.addFeatures([e])}addFeatures(e){const i=e.reduce((r,{reducers:s,reducerFactory:l,metaReducers:u,initialState:f,key:p})=>{const m="function"==typeof s?function rh(n){const t=Array.isArray(n)&&n.length>0?Vl(...n):e=>e;return(e,i)=>(e=t(e),(r,s)=>e(r=void 0===r?i:r,s))}(u)(s,f):Hl(l,u)(s,f);return r[p]=m,r},{});this.addReducers(i)}removeFeature(e){this.removeFeatures([e])}removeFeatures(e){this.removeReducers(e.map(i=>i.key))}addReducer(e,i){this.addReducers({[e]:i})}addReducers(e){this.reducers={...this.reducers,...e},this.updateReducers(Object.keys(e))}removeReducer(e){this.removeReducers([e])}removeReducers(e){e.forEach(i=>{this.reducers=function Yd(n,t){return Object.keys(n).filter(e=>e!==t).reduce((e,i)=>Object.assign(e,{[i]:n[i]}),{})}(this.reducers,i)}),this.updateReducers(e)}updateReducers(e){this.next(this.reducerFactory(this.reducers,this.initialState)),this.dispatcher.next({type:"@ngrx/store/update-reducers",features:e})}ngOnDestroy(){this.complete()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(oh),o.KVO(cy),o.KVO(Rf),o.KVO(kf))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const GA=[Of,{provide:fl,useExisting:Of},{provide:oh,useExisting:Mc}];let Sc=(()=>{class n extends mi.B{ngOnDestroy(){this.complete()}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const Zd=[Sc];class fd extends qr.c{}let Vi=(()=>{class n extends $d.t{static{this.INIT=Bf}constructor(e,i,r,s){super(s);const p=e.pipe($s(xf)).pipe(ul(i)).pipe(function ty(n,t){return(0,Ir.N)(function kA(n,t,e,i,r){return(s,l)=>{let u=e,f=t,p=0;s.subscribe((0,lr._)(l,m=>{const _=p++;f=u?n(f,m,_):(u=!0,m),i&&l.next(f)},r&&(()=>{u&&l.next(f),l.complete()})))}}(n,t,arguments.length>=2,!0))}(sC,{state:s}));this.stateSubscription=p.subscribe(({state:m,action:_})=>{this.next(m),r.next(_)}),this.state=ih(this,{manualCleanup:!0,requireSync:!0})}ngOnDestroy(){this.stateSubscription.unsubscribe(),this.complete()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Mc),o.KVO(fl),o.KVO(Sc),o.KVO(cy))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function sC(n={state:void 0},[t,e]){const{state:i}=n;return{state:e(i,t),action:t}}const dy=[Vi,{provide:fd,useExisting:Vi}];let Yt=(()=>{class n extends qr.c{constructor(e,i,r){super(),this.actionsObserver=i,this.reducerManager=r,this.source=e,this.state=e.state}select(e,...i){return uy.call(null,e,...i)(this)}selectSignal(e,i){return(0,o.EWP)(()=>e(this.state()),i)}lift(e){const i=new n(this,this.actionsObserver,this.reducerManager);return i.operator=e,i}dispatch(e){this.actionsObserver.next(e)}next(e){this.actionsObserver.next(e)}error(e){this.actionsObserver.error(e)}complete(){this.actionsObserver.complete()}addReducer(e,i){this.reducerManager.addReducer(e,i)}removeReducer(e){this.reducerManager.removeReducer(e)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(fd),o.KVO(Mc),o.KVO(Of))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const aC=[Yt];function uy(n,t,...e){return function(r){let s;if("string"==typeof n){const l=[t,...e].filter(Boolean);s=r.pipe(function ad(...n){const t=n.length;if(0===t)throw new Error("list of properties cannot be empty.");return(0,Xn.T)(e=>{let i=e;for(let r=0;rn(l,t)))}return s.pipe(kr())}}const pd="https://ngrx.io/guide/store/configuration/runtime-checks";function hy(n){return void 0===n}function n_(n){return null===n}function jA(n){return Array.isArray(n)}function qA(n){return"object"==typeof n&&null!==n}function o_(n){return"function"==typeof n}function WA(n,t){return n===t}function sh(n,t=WA,e=WA){let s,i=null,r=null;return{memoized:function p(){if(void 0!==s)return s.result;if(!i)return r=n.apply(null,arguments),i=arguments,r;if(!function fs(n,t,e){for(let i=0;il(n));return i.memoized.apply(null,s)}const r=t.map(s=>s(n,e));return i.memoized.apply(null,[...r,e])}function ah(n,t={stateFn:kn}){return function(...e){let i=e;if(Array.isArray(i[0])){const[m,..._]=i;i=[...m,..._]}else 1===i.length&&function Sa(n){return!!n&&"object"==typeof n&&Object.values(n).every(t=>"function"==typeof t)}(i[0])&&(i=function ch(n){const t=Object.values(n),e=Object.keys(n);return[...t,(...r)=>e.reduce((s,l,u)=>({...s,[l]:r[u]}),{})]}(i[0]));const r=i.slice(0,i.length-1),s=i[i.length-1],l=r.filter(m=>m.release&&"function"==typeof m.release),u=n(function(...m){return s.apply(null,m)}),f=sh(function(m,_){return t.stateFn.apply(null,[m,r,_,u])});return Object.assign(f.memoized,{release:function p(){f.reset(),u.reset(),l.forEach(m=>m.release())},projector:u.memoized,setResult:f.setResult,clearResult:f.clearResult})}}function eT(n){return n instanceof o.nKC?(0,o.WQX)(n):n}function Ad(n){return"function"==typeof n?n():n}function gy(n,t){return n.concat(t)}function _y(){if((0,o.WQX)(Yt,{optional:!0,skipSelf:!0}))throw new TypeError("The root Store has been provided more than once. Feature modules should provide feature states instead.");return"guarded"}function Nf(n){Object.freeze(n);const t=o_(n);return Object.getOwnPropertyNames(n).forEach(e=>{if(!e.startsWith("\u0275")&&function lC(n,t){return Object.prototype.hasOwnProperty.call(n,t)}(n,e)&&(!t||"caller"!==e&&"callee"!==e&&"arguments"!==e)){const i=n[e];(qA(i)||o_(i))&&!Object.isFrozen(i)&&Nf(i)}}),n}function a_(n,t=[]){return(hy(n)||n_(n))&&0===t.length?{path:["root"],value:n}:Object.keys(n).reduce((i,r)=>{if(i)return i;const s=n[r];return function s_(n){return o_(n)&&n.hasOwnProperty("\u0275cmp")}(s)?i:!(hy(s)||n_(s)||function i_(n){return"number"==typeof n}(s)||function fy(n){return"boolean"==typeof n}(s)||function $A(n){return"string"==typeof n}(s)||jA(s))&&(function r_(n){if(!function py(n){return qA(n)&&!jA(n)}(n))return!1;const t=Object.getPrototypeOf(n);return t===Object.prototype||null===t}(s)?a_(s,[...t,r]):{path:[...t,r],value:s})},!1)}function io(n,t){if(!1===n)return;const e=n.path.join("."),i=new Error(`Detected unserializable ${t} at "${e}". ${pd}#strict${t}serializability`);throw i.value=n.value,i.unserializablePath=e,i}function Uf(n){return(0,o.naY)()?{strictStateSerializability:!1,strictActionSerializability:!1,strictStateImmutability:!0,strictActionImmutability:!0,strictActionWithinNgZone:!1,strictActionTypeUniqueness:!1,...n}:{strictStateSerializability:!1,strictActionSerializability:!1,strictStateImmutability:!1,strictActionImmutability:!1,strictActionWithinNgZone:!1,strictActionTypeUniqueness:!1}}function vy({strictActionSerializability:n,strictStateSerializability:t}){return e=>n||t?function Lf(n,t){return function(e,i){t.action(i)&&io(a_(i),"action");const r=n(e,i);return t.state()&&io(a_(r),"state"),r}}(e,{action:i=>n&&!dh(i),state:()=>t}):e}function dC({strictActionImmutability:n,strictStateImmutability:t}){return e=>n||t?function cC(n,t){return function(e,i){const r=t.action(i)?Nf(i):i,s=n(e,r);return t.state()?Nf(s):s}}(e,{action:i=>n&&!dh(i),state:()=>t}):e}function dh(n){return n.type.startsWith("@ngrx")}function yy({strictActionWithinNgZone:n}){return t=>n?function by(n,t){return function(e,i){if(t.action(i)&&!o.SKi.isInAngularZone())throw new Error(`Action '${i.type}' running outside NgZone. ${pd}#strictactionwithinngzone`);return n(e,i)}}(t,{action:e=>n&&!dh(e)}):t}function wy(n){return[{provide:Pf,useValue:n},{provide:t_,useFactory:YA,deps:[Pf]},{provide:Kd,deps:[t_],useFactory:Uf},{provide:zA,multi:!0,deps:[Kd],useFactory:dC},{provide:zA,multi:!0,deps:[Kd],useFactory:vy},{provide:zA,multi:!0,deps:[Kd],useFactory:yy}]}function YA(n){return n}function Qa(n){if(!n.strictActionTypeUniqueness)return;const t=Object.entries(qd).filter(([,e])=>e>1).map(([e])=>e);if(t.length)throw new Error(`Action types are registered more than once, ${t.map(e=>`"${e}"`).join(", ")}. ${pd}#strictactiontypeuniqueness`)}function ZA(n={},t={}){return[{provide:ly,useFactory:_y},{provide:oC,useValue:t.initialState},{provide:cy,useFactory:Ad,deps:[oC]},{provide:cd,useValue:n},{provide:Xd,useExisting:n instanceof o.nKC?n:cd},{provide:Rf,deps:[cd,[new o.y_5(Xd)]],useFactory:eT},{provide:QA,useValue:t.metaReducers?t.metaReducers:[]},{provide:Ha,deps:[zA,QA],useFactory:gy},{provide:Ul,useValue:t.reducerFactory?t.reducerFactory:Ea},{provide:kf,deps:[Ul,Ha],useFactory:Hl},rC,GA,Zd,dy,aC,wy(t.runtimeChecks),[{provide:Ec,multi:!0,deps:[Kd],useFactory:Qa}]]}const uC=[{provide:ud,useFactory:function Tc(){(0,o.WQX)(Mc),(0,o.WQX)(fl),(0,o.WQX)(Sc),(0,o.WQX)(Yt),(0,o.WQX)(ly,{optional:!0}),(0,o.WQX)(Ec,{optional:!0})}},{provide:o.Z63,multi:!0,useFactory:()=>()=>(0,o.WQX)(ud)}];function yn(...n){return{reducer:n.pop(),types:n.map(i=>i.type)}}function Di(n,...t){const e=new Map;for(const i of t)for(const r of i.types){const s=e.get(r);e.set(r,s?(u,f)=>i.reducer(s(u,f),f):i.reducer)}return function(i=n,r){const s=e.get(r.type);return s?s(i,r):i}}const Ic=bn("SET_IS_LOADING_FILE",{_as:"props",_p:void 0}),c_=n=>n.appStatus,md=sn(c_,n=>n.hoveredNodeId);let pl=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-action-icon"]],inputs:{icon:"icon"},standalone:!0,features:[o.aNF],decls:1,vars:2,consts:[["role","button"]],template:function(i,r){1&i&&o.nrm(0,"i",0),2&i&&o.HbH(r.icon)},styles:["[_nghost-%COMP%]{display:inline-flex;align-items:center;cursor:pointer;width:24px;height:24px;border-radius:100%;background-color:#1b9cfc;font-size:14px}[_nghost-%COMP%]:hover{background-color:#0374c9}.disabled[_nghost-%COMP%]{opacity:.5}[_nghost-%COMP%] i[_ngcontent-%COMP%], [_nghost-%COMP%] i.fa[_ngcontent-%COMP%]{margin:auto;line-height:1.5;color:#fff}[_nghost-%COMP%] i.fa-folder-open[_ngcontent-%COMP%], [_nghost-%COMP%] i.fa.fa-folder-open[_ngcontent-%COMP%]{padding-left:1px}"]})}}return n})();const uh=bn("SET_IS_LOADING_MAP",{_as:"props",_p:void 0});var za=function(n){return n.SquarifiedTreeMap="Squarified TreeMap",n.StreetMap="StreetMap",n.TreeMapStreet="TreeMapStreet",n}(za||{}),gd=function(n){return n.Standard="High",n.PixelRatioNoAA="Low",n.PixelRatioFXAA="Medium",n.PixelRatioAA="Best",n}(gd||{}),ts=function(n){return n.FILE="File",n.FOLDER="Folder",n}(ts||{}),_d=function(n){return n.NAME="Name",n.NUMBER_OF_FILES="Number of Files",n}(_d||{}),Fc=function(n){return n.absolute="absolute",n.relative="relative",n}(Fc||{}),Gl=function(n){return n.trueGradient="trueGradient",n.weightedGradient="weightedGradient",n.focusedGradient="focusedGradient",n.absolute="absolute",n}(Gl||{}),jl=function(n){return n.none="none",n.from="from",n.to="to",n.both="both",n}(jl||{});function tm(n,t){return t instanceof Map?{dataType:"Map",value:[...t.entries()]}:t instanceof Set?{dataType:"Set",value:[...t]}:t}function Cy(n,t){return"Map"===t?.dataType?new Map(t.value):"Set"===t?.dataType?new Set(t.value):t}function ro(n,t,e){const i=(0,Yr.T)(n)||t||e?{next:n,error:t,complete:e}:n;return i?(0,Ir.N)((r,s)=>{var l;null===(l=i.subscribe)||void 0===l||l.call(i);let u=!0;r.subscribe((0,lr._)(s,f=>{var p;null===(p=i.next)||void 0===p||p.call(i,f),s.next(f)},()=>{var f;u=!1,null===(f=i.complete)||void 0===f||f.call(i),s.complete()},f=>{var p;u=!1,null===(p=i.error)||void 0===p||p.call(i,f),s.error(f)},()=>{var f,p;u&&(null===(f=i.unsubscribe)||void 0===f||f.call(i)),null===(p=i.finalize)||void 0===p||p.call(i)}))}):Ll.D}function M(n){var t,e,i;if(Array.isArray(n)){for(e=Array(t=n.length);t--;)e[t]=(i=n[t])&&"object"==typeof i?M(i):i;return e}if("[object Object]"===Object.prototype.toString.call(n)){for(t in e={},n)"__proto__"===t?Object.defineProperty(e,t,{value:M(n[t]),configurable:!0,enumerable:!0,writable:!0}):e[t]=(i=n[t])&&"object"==typeof i?M(i):i;return e}return n}function C(n){return M(n)}const S=bn("SET_FILES",{_as:"props",_p:void 0}),E=bn("ADD_FILE",{_as:"props",_p:void 0}),N=bn("REMOVE_FILES",{_as:"props",_p:void 0}),$=bn("SET_STANDARD",{_as:"props",_p:void 0}),se=bn("SET_STANDARD_BY_NAMES",{_as:"props",_p:void 0}),xe=bn("SWITCH_REFERENCE_AND_COMPARISON"),ge=bn("SET_DELTA_COMPARISON",{_as:"props",_p:void 0}),Xe=bn("SET_DELTA_REFERENCE",{_as:"props",_p:void 0}),tt=bn("SET_DELTA",{_as:"props",_p:void 0}),mt=[S,E,N,$,se,xe,ge,Xe,tt];var At=function(n){return n.Reference="Reference",n.Comparison="Comparison",n.Partial="Partial",n.None="None",n}(At||{});const wn=n=>n.files,Tn=sn(wn,n=>n.find(t=>t.selectedAs===At.Reference)?.file);function gi(n){return null!=n&&"false"!=`${n}`}function jn(n,t=0){return function ii(n){return!isNaN(parseFloat(n))&&!isNaN(Number(n))}(n)?Number(n):2===arguments.length?t:0}function Fr(n){return Array.isArray(n)?n:[n]}function fi(n){return null==n?"":"string"==typeof n?n:`${n}px`}function Mi(n){return n instanceof o.aKT?n.nativeElement:n}function gr(n,t=0){return(0,Ir.N)((e,i)=>{i.add(n.schedule(()=>e.subscribe(i),t))})}function Ws(n,t){if(!n)throw new Error("Iterable cannot be null");return new qr.c(e=>{js(e,t,()=>{const i=n[Symbol.asyncIterator]();js(e,t,()=>{i.next().then(r=>{r.done?e.complete():e.next(r.value)})},0,!0)})})}function sa(n,t){return t?function Cs(n,t){if(null!=n){if(tC(n))return function yr(n,t){return Rr(n).pipe(gr(t),$s(t))}(n,t);if(xo(n))return function Qo(n,t){return new qr.c(e=>{let i=0;return t.schedule(function(){i===n.length?e.complete():(e.next(n[i++]),e.closed||this.schedule())})})}(n,t);if(TA(n))return function Hi(n,t){return Rr(n).pipe(gr(t),$s(t))}(n,t);if(nC(n))return Ws(n,t);if(Ps(n))return function qs(n,t){return new qr.c(e=>{let i;return js(e,t,()=>{i=n[Z0](),js(e,t,()=>{let r,s;try{({value:r,done:s}=i.next())}catch(l){return void e.error(l)}s?e.complete():e.next(r)},0,!0)}),()=>(0,Yr.T)(i?.return)&&i.return()})}(n,t);if(IA(n))return function zr(n,t){return Ws(Nl(n),t)}(n,t)}throw Y0(n)}(n,t):Rr(n)}function Mo(...n){return sa(n,nh(n))}function Xs(n,t,e=1/0){return(0,Yr.T)(t)?Xs((i,r)=>(0,Xn.T)((s,l)=>t(i,s,r,l))(Rr(n(i,r))),e):("number"==typeof t&&(e=t),(0,Ir.N)((i,r)=>function aa(n,t,e,i,r,s,l,u){const f=[];let p=0,m=0,_=!1;const b=()=>{_&&!f.length&&!p&&t.complete()},w=D=>p{s&&t.next(D),p++;let T=!1;Rr(e(D,m++)).subscribe((0,lr._)(t,I=>{r?.(I),s?w(I):t.next(I)},()=>{T=!0},void 0,()=>{if(T)try{for(p--;f.length&&pF(I)):F(I)}b()}catch(I){t.error(I)}}))};return n.subscribe((0,lr._)(t,w,()=>{_=!0,b()})),()=>{u?.()}}(i,r,n,e)))}const{isArray:Dc}=Array;function kc(n){return(0,Xn.T)(t=>function Bc(n,t){return Dc(t)?n(...t):n(t)}(n,t))}const Jd=["addListener","removeListener"],bd=["addEventListener","removeEventListener"],eu=["on","off"];function Os(n,t,e,i){if((0,Yr.T)(e)&&(i=e,e=void 0),i)return Os(n,t,e).pipe(kc(i));const[r,s]=function My(n){return(0,Yr.T)(n.addEventListener)&&(0,Yr.T)(n.removeEventListener)}(n)?bd.map(l=>u=>n[l](t,u,e)):function Hf(n){return(0,Yr.T)(n.addListener)&&(0,Yr.T)(n.removeListener)}(n)?Jd.map(Rc(n,t)):function hh(n){return(0,Yr.T)(n.on)&&(0,Yr.T)(n.off)}(n)?eu.map(Rc(n,t)):[];if(!r&&xo(n))return Xs(l=>Os(l,t,e))(Rr(n));if(!r)throw new TypeError("Invalid event target");return new qr.c(l=>{const u=(...f)=>l.next(1s(u)})}function Rc(n,t){return e=>i=>n[e](t,i)}const d_={schedule(n){let t=requestAnimationFrame,e=cancelAnimationFrame;const{delegate:i}=d_;i&&(t=i.requestAnimationFrame,e=i.cancelAnimationFrame);const r=t(s=>{e=void 0,n(s)});return new un.yU(()=>e?.(r))},requestAnimationFrame(...n){const{delegate:t}=d_;return(t?.requestAnimationFrame||requestAnimationFrame)(...n)},cancelAnimationFrame(...n){const{delegate:t}=d_;return(t?.cancelAnimationFrame||cancelAnimationFrame)(...n)},delegate:void 0};new class Ey extends cr{flush(t){this._active=!0;const e=this._scheduled;this._scheduled=void 0;const{actions:i}=this;let r;t=t||i.shift();do{if(r=t.execute(t.state,t.delay))break}while((t=i[0])&&t.id===e&&i.shift());if(this._active=!1,r){for(;(t=i[0])&&t.id===e&&i.shift();)t.unsubscribe();throw r}}}(class iT extends Ma{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,i=0){return null!==i&&i>0?super.requestAsyncId(t,e,i):(t.actions.push(this),t._scheduled||(t._scheduled=d_.requestAnimationFrame(()=>t.flush(void 0))))}recycleAsyncId(t,e,i=0){var r;if(null!=i?i>0:this.delay>0)return super.recycleAsyncId(t,e,i);const{actions:s}=t;null!=e&&(null===(r=s[s.length-1])||void 0===r?void 0:r.id)!==e&&(d_.cancelAnimationFrame(e),t._scheduled=void 0)}});let hC,s4=1;const Sy={};function a4(n){return n in Sy&&(delete Sy[n],!0)}const OV={setImmediate(n){const t=s4++;return Sy[t]=!0,hC||(hC=Promise.resolve()),hC.then(()=>a4(t)&&n()),t},clearImmediate(n){a4(n)}},{setImmediate:l4,clearImmediate:pC}=OV,nm={setImmediate(...n){const{delegate:t}=nm;return(t?.setImmediate||l4)(...n)},clearImmediate(n){const{delegate:t}=nm;return(t?.clearImmediate||pC)(n)},delegate:void 0},u_=new class Ty extends cr{flush(t){this._active=!0;const e=this._scheduled;this._scheduled=void 0;const{actions:i}=this;let r;t=t||i.shift();do{if(r=t.execute(t.state,t.delay))break}while((t=i[0])&&t.id===e&&i.shift());if(this._active=!1,r){for(;(t=i[0])&&t.id===e&&i.shift();)t.unsubscribe();throw r}}}(class im extends Ma{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,i=0){return null!==i&&i>0?super.requestAsyncId(t,e,i):(t.actions.push(this),t._scheduled||(t._scheduled=nm.setImmediate(t.flush.bind(t,void 0))))}recycleAsyncId(t,e,i=0){var r;if(null!=i?i>0:this.delay>0)return super.recycleAsyncId(t,e,i);const{actions:s}=t;null!=e&&(null===(r=s[s.length-1])||void 0===r?void 0:r.id)!==e&&(nm.clearImmediate(e),t._scheduled===e&&(t._scheduled=void 0))}}),tu=new cr(Ma),rm=tu;function Qf(n=0,t,e=rm){let i=-1;return null!=t&&(e_(t)?e=t:i=t),new qr.c(r=>{let s=function Fy(n){return n instanceof Date&&!isNaN(n)}(n)?+n-e.now():n;s<0&&(s=0);let l=0;return e.schedule(function(){r.closed||(r.next(l++),0<=i?this.schedule(void 0,i):r.complete())},s)})}function h_(n,t=tu){return function AC(n){return(0,Ir.N)((t,e)=>{let i=!1,r=null,s=null,l=!1;const u=()=>{if(s?.unsubscribe(),s=null,i){i=!1;const p=r;r=null,e.next(p)}l&&e.complete()},f=()=>{s=null,l&&e.complete()};t.subscribe((0,lr._)(e,p=>{i=!0,r=p,s||Rr(n(p)).subscribe(s=(0,lr._)(e,u,f))},()=>{l=!0,(!i||!s||s.closed)&&e.complete()}))})}(()=>Qf(n,t))}function hr(n,t){return(0,Ir.N)((e,i)=>{let r=0;e.subscribe((0,lr._)(i,s=>n.call(t,s,r++)&&i.next(s)))})}function bo(n){return(0,Ir.N)((t,e)=>{Rr(n).subscribe((0,lr._)(e,()=>e.complete(),J0.l)),!e.closed&&t.subscribe(e)})}let zf;try{zf=typeof Intl<"u"&&Intl.v8BreakIterator}catch{zf=!1}let om,Io=(()=>{class n{constructor(e){this._platformId=e,this.isBrowser=this._platformId?function Bx(n){return n===Wu}(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!zf)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(o.Agw))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const rT=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function Dy(){if(om)return om;if("object"!=typeof document||!document)return om=new Set(rT),om;let n=document.createElement("input");return om=new Set(rT.filter(t=>(n.setAttribute("type",t),n.type===t))),om}let sm;function Gf(n){return function d4(){if(null==sm&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>sm=!0}))}finally{sm=sm||!1}return sm}()?n:!!n.capture}var Ga=function(n){return n[n.NORMAL=0]="NORMAL",n[n.NEGATED=1]="NEGATED",n[n.INVERTED=2]="INVERTED",n}(Ga||{});let f_,nu,sT;function oT(){if(null==nu){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return nu=!1,nu;if("scrollBehavior"in document.documentElement.style)nu=!0;else{const n=Element.prototype.scrollTo;nu=!!n&&!/\{\s*\[native code\]\s*\}/.test(n.toString())}}return nu}function By(){if("object"!=typeof document||!document)return Ga.NORMAL;if(null==f_){const n=document.createElement("div"),t=n.style;n.dir="rtl",t.width="1px",t.overflow="auto",t.visibility="hidden",t.pointerEvents="none",t.position="absolute";const e=document.createElement("div"),i=e.style;i.width="2px",i.height="1px",n.appendChild(e),document.body.appendChild(n),f_=Ga.NORMAL,0===n.scrollLeft&&(n.scrollLeft=1,f_=0===n.scrollLeft?Ga.NEGATED:Ga.INVERTED),n.remove()}return f_}function jf(){let n=typeof document<"u"&&document?document.activeElement:null;for(;n&&n.shadowRoot;){const t=n.shadowRoot.activeElement;if(t===n)break;n=t}return n}function $l(n){return n.composedPath?n.composedPath()[0]:n.target}function mC(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}const h4=new o.nKC("cdk-dir-doc",{providedIn:"root",factory:function aT(){return(0,o.WQX)(V)}}),gC=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;let Ks=(()=>{class n{constructor(e){this.value="ltr",this.change=new o.bkB,e&&(this.value=function lT(n){const t=n?.toLowerCase()||"";return"auto"===t&&typeof navigator<"u"&&navigator?.language?gC.test(navigator.language)?"rtl":"ltr":"rtl"===t?"rtl":"ltr"}((e.body?e.body.dir:null)||(e.documentElement?e.documentElement.dir:null)||"ltr"))}ngOnDestroy(){this.change.complete()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(h4,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),fh=(()=>{class n{constructor(e,i,r){this._ngZone=e,this._platform=i,this._scrolled=new mi.B,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=r}register(e){this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(()=>this._scrolled.next(e)))}deregister(e){const i=this.scrollContainers.get(e);i&&(i.unsubscribe(),this.scrollContainers.delete(e))}scrolled(e=20){return this._platform.isBrowser?new qr.c(i=>{this._globalSubscription||this._addGlobalListener();const r=e>0?this._scrolled.pipe(h_(e)).subscribe(i):this._scrolled.subscribe(i);return this._scrolledCount++,()=>{r.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Mo()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((e,i)=>this.deregister(i)),this._scrolled.complete()}ancestorScrolled(e,i){const r=this.getAncestorScrollContainers(e);return this.scrolled(i).pipe(hr(s=>!s||r.indexOf(s)>-1))}getAncestorScrollContainers(e){const i=[];return this.scrollContainers.forEach((r,s)=>{this._scrollableContainsElement(s,e)&&i.push(s)}),i}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(e,i){let r=Mi(i),s=e.getElementRef().nativeElement;do{if(r==s)return!0}while(r=r.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>Os(this._getWindow().document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(o.SKi),o.KVO(Io),o.KVO(V,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),_4=(()=>{class n{constructor(e,i,r,s){this.elementRef=e,this.scrollDispatcher=i,this.ngZone=r,this.dir=s,this._destroyed=new mi.B,this._elementScrolled=new qr.c(l=>this.ngZone.runOutsideAngular(()=>Os(this.elementRef.nativeElement,"scroll").pipe(bo(this._destroyed)).subscribe(l)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(e){const i=this.elementRef.nativeElement,r=this.dir&&"rtl"==this.dir.value;null==e.left&&(e.left=r?e.end:e.start),null==e.right&&(e.right=r?e.start:e.end),null!=e.bottom&&(e.top=i.scrollHeight-i.clientHeight-e.bottom),r&&By()!=Ga.NORMAL?(null!=e.left&&(e.right=i.scrollWidth-i.clientWidth-e.left),By()==Ga.INVERTED?e.left=e.right:By()==Ga.NEGATED&&(e.left=e.right?-e.right:e.right)):null!=e.right&&(e.left=i.scrollWidth-i.clientWidth-e.right),this._applyScrollToOptions(e)}_applyScrollToOptions(e){const i=this.elementRef.nativeElement;oT()?i.scrollTo(e):(null!=e.top&&(i.scrollTop=e.top),null!=e.left&&(i.scrollLeft=e.left))}measureScrollOffset(e){const i="left",r="right",s=this.elementRef.nativeElement;if("top"==e)return s.scrollTop;if("bottom"==e)return s.scrollHeight-s.clientHeight-s.scrollTop;const l=this.dir&&"rtl"==this.dir.value;return"start"==e?e=l?r:i:"end"==e&&(e=l?i:r),l&&By()==Ga.INVERTED?e==i?s.scrollWidth-s.clientWidth-s.scrollLeft:s.scrollLeft:l&&By()==Ga.NEGATED?e==i?s.scrollLeft+s.scrollWidth-s.clientWidth:-s.scrollLeft:e==i?s.scrollLeft:s.scrollWidth-s.clientWidth-s.scrollLeft}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(fh),o.rXU(o.SKi),o.rXU(Ks,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]],standalone:!0})}}return n})(),dT=(()=>{class n{constructor(e,i,r){this._platform=e,this._change=new mi.B,this._changeListener=s=>{this._change.next(s)},this._document=r,i.runOutsideAngular(()=>{if(e.isBrowser){const s=this._getWindow();s.addEventListener("resize",this._changeListener),s.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const e=this._getWindow();e.removeEventListener("resize",this._changeListener),e.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();const e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}getViewportRect(){const e=this.getViewportScrollPosition(),{width:i,height:r}=this.getViewportSize();return{top:e.top,left:e.left,bottom:e.top+r,right:e.left+i,height:r,width:i}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const e=this._document,i=this._getWindow(),r=e.documentElement,s=r.getBoundingClientRect();return{top:-s.top||e.body.scrollTop||i.scrollY||r.scrollTop||0,left:-s.left||e.body.scrollLeft||i.scrollX||r.scrollLeft||0}}change(e=20){return e>0?this._change.pipe(h_(e)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){const e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Io),o.KVO(o.SKi),o.KVO(V,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();class hT{attach(t){return this._attachedHost=t,t.attach(this)}detach(){let t=this._attachedHost;null!=t&&(this._attachedHost=null,t.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class am extends hT{constructor(t,e,i,r,s){super(),this.component=t,this.viewContainerRef=e,this.injector=i,this.componentFactoryResolver=r,this.projectableNodes=s}}class A_ extends hT{constructor(t,e,i,r){super(),this.templateRef=t,this.viewContainerRef=e,this.context=i,this.injector=r}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class C4 extends hT{constructor(t){super(),this.element=t instanceof o.aKT?t.nativeElement:t}}class wC{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(t){return t instanceof am?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof A_?(this._attachedPortal=t,this.attachTemplatePortal(t)):this.attachDomPortal&&t instanceof C4?(this._attachedPortal=t,this.attachDomPortal(t)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class xC extends wC{constructor(t,e,i,r,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=i,this._defaultInjector=r,this.attachDomPortal=l=>{const u=l.element,f=this._document.createComment("dom-portal");u.parentNode.insertBefore(f,u),this.outletElement.appendChild(u),this._attachedPortal=l,super.setDisposeFn(()=>{f.parentNode&&f.parentNode.replaceChild(u,f)})},this._document=s}attachComponentPortal(t){const i=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let r;return t.viewContainerRef?(r=t.viewContainerRef.createComponent(i,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector,t.projectableNodes||void 0),this.setDisposeFn(()=>r.destroy())):(r=i.create(t.injector||this._defaultInjector||o.zZn.NULL),this._appRef.attachView(r.hostView),this.setDisposeFn(()=>{this._appRef.viewCount>0&&this._appRef.detachView(r.hostView),r.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(r)),this._attachedPortal=t,r}attachTemplatePortal(t){let e=t.viewContainerRef,i=e.createEmbeddedView(t.templateRef,t.context,{injector:t.injector});return i.rootNodes.forEach(r=>this.outletElement.appendChild(r)),i.detectChanges(),this.setDisposeFn(()=>{let r=e.indexOf(i);-1!==r&&e.remove(r)}),this._attachedPortal=t,i}dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}let m_=(()=>{class n extends wC{constructor(e,i,r){super(),this._componentFactoryResolver=e,this._viewContainerRef=i,this._isInitialized=!1,this.attached=new o.bkB,this.attachDomPortal=s=>{const l=s.element,u=this._document.createComment("dom-portal");s.setAttachedHost(this),l.parentNode.insertBefore(u,l),this._getRootNode().appendChild(l),this._attachedPortal=s,super.setDisposeFn(()=>{u.parentNode&&u.parentNode.replaceChild(l,u)})},this._document=r}get portal(){return this._attachedPortal}set portal(e){this.hasAttached()&&!e&&!this._isInitialized||(this.hasAttached()&&super.detach(),e&&super.attach(e),this._attachedPortal=e||null)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(e){e.setAttachedHost(this);const i=null!=e.viewContainerRef?e.viewContainerRef:this._viewContainerRef,s=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component),l=i.createComponent(s,i.length,e.injector||i.injector,e.projectableNodes||void 0);return i!==this._viewContainerRef&&this._getRootNode().appendChild(l.hostView.rootNodes[0]),super.setDisposeFn(()=>l.destroy()),this._attachedPortal=e,this._attachedRef=l,this.attached.emit(l),l}attachTemplatePortal(e){e.setAttachedHost(this);const i=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context,{injector:e.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=e,this._attachedRef=i,this.attached.emit(i),i}_getRootNode(){const e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.OM3),o.rXU(o.c1b),o.rXU(V))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:[0,"cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],standalone:!0,features:[o.Vt3]})}}return n})();function S4(n=1/0){return Xs(Ll.D,n)}const mh=new qr.c(n=>n.complete());function ql(...n){const t=nh(n),e=function ey(n,t){return"number"==typeof Tf(n)?n.pop():t}(n,1/0),i=n;return i.length?1===i.length?Rr(i[0]):S4(e)(sa(i,t)):mh}function Kl(n,...t){return t.length?t.some(e=>n[e]):n.altKey||n.shiftKey||n.ctrlKey||n.metaKey}const BC=oT();class aO{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=fi(-this._previousScrollPosition.left),t.style.top=fi(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,i=t.style,r=this._document.body.style,s=i.scrollBehavior||"",l=r.scrollBehavior||"";this._isEnabled=!1,i.left=this._previousHTMLStyles.left,i.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),BC&&(i.scrollBehavior=r.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),BC&&(i.scrollBehavior=s,r.scrollBehavior=l)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const e=this._document.body,i=this._viewportRuler.getViewportSize();return e.scrollHeight>i.height||e.scrollWidth>i.width}}class Wf{constructor(t,e,i,r){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=i,this._config=r,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(t){this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0).pipe(hr(e=>!e||!this._overlayRef.overlayElement.contains(e.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const e=this._viewportRuler.getViewportScrollPosition().top;Math.abs(e-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class Ly{enable(){}disable(){}attach(){}}function Xf(n,t){return t.some(e=>n.bottome.bottom||n.righte.right)}function RC(n,t){return t.some(e=>n.tope.bottom||n.lefte.right)}class PC{constructor(t,e,i,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=i,this._config=r,this._scrollSubscription=null}attach(t){this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const e=this._overlayRef.overlayElement.getBoundingClientRect(),{width:i,height:r}=this._viewportRuler.getViewportSize();Xf(e,[{width:i,height:r,bottom:r,right:i,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let OC=(()=>{class n{constructor(e,i,r,s){this._scrollDispatcher=e,this._viewportRuler=i,this._ngZone=r,this.noop=()=>new Ly,this.close=l=>new Wf(this._scrollDispatcher,this._ngZone,this._viewportRuler,l),this.block=()=>new aO(this._viewportRuler,this._document),this.reposition=l=>new PC(this._scrollDispatcher,this._viewportRuler,this._ngZone,l),this._document=s}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(fh),o.KVO(dT),o.KVO(o.SKi),o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();class Am{constructor(t){if(this.scrollStrategy=new Ly,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t){const e=Object.keys(t);for(const i of e)void 0!==t[i]&&(this[i]=t[i])}}}class cO{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}let NC=(()=>{class n{constructor(e){this._attachedOverlays=[],this._document=e}ngOnDestroy(){this.detach()}add(e){this.remove(e),this._attachedOverlays.push(e)}remove(e){const i=this._attachedOverlays.indexOf(e);i>-1&&this._attachedOverlays.splice(i,1),0===this._attachedOverlays.length&&this.detach()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),dO=(()=>{class n extends NC{constructor(e,i){super(e),this._ngZone=i,this._keydownListener=r=>{const s=this._attachedOverlays;for(let l=s.length-1;l>-1;l--)if(s[l]._keydownEvents.observers.length>0){const u=s[l]._keydownEvents;this._ngZone?this._ngZone.run(()=>u.next(r)):u.next(r);break}}}add(e){super.add(e),this._isAttached||(this._ngZone?this._ngZone.runOutsideAngular(()=>this._document.body.addEventListener("keydown",this._keydownListener)):this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(o.SKi,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),uO=(()=>{class n extends NC{constructor(e,i,r){super(e),this._platform=i,this._ngZone=r,this._cursorStyleIsSet=!1,this._pointerDownListener=s=>{this._pointerDownEventTarget=$l(s)},this._clickListener=s=>{const l=$l(s),u="click"===s.type&&this._pointerDownEventTarget?this._pointerDownEventTarget:l;this._pointerDownEventTarget=null;const f=this._attachedOverlays.slice();for(let p=f.length-1;p>-1;p--){const m=f[p];if(m._outsidePointerEvents.observers.length<1||!m.hasAttached())continue;if(FT(m.overlayElement,l)||FT(m.overlayElement,u))break;const _=m._outsidePointerEvents;this._ngZone?this._ngZone.run(()=>_.next(s)):_.next(s)}}}add(e){if(super.add(e),!this._isAttached){const i=this._document.body;this._ngZone?this._ngZone.runOutsideAngular(()=>this._addEventListeners(i)):this._addEventListeners(i),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=i.style.cursor,i.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const e=this._document.body;e.removeEventListener("pointerdown",this._pointerDownListener,!0),e.removeEventListener("click",this._clickListener,!0),e.removeEventListener("auxclick",this._clickListener,!0),e.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(e.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}_addEventListeners(e){e.addEventListener("pointerdown",this._pointerDownListener,!0),e.addEventListener("click",this._clickListener,!0),e.addEventListener("auxclick",this._clickListener,!0),e.addEventListener("contextmenu",this._clickListener,!0)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(Io),o.KVO(o.SKi,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function FT(n,t){const e=typeof ShadowRoot<"u"&&ShadowRoot;let i=t;for(;i;){if(i===n)return!0;i=e&&i instanceof ShadowRoot?i.host:i.parentNode}return!1}let Uy=(()=>{class n{constructor(e,i){this._platform=i,this._document=e}ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const e="cdk-overlay-container";if(this._platform.isBrowser||mC()){const r=this._document.querySelectorAll(`.${e}[platform="server"], .${e}[platform="test"]`);for(let s=0;sthis._backdropClick.next(b),this._backdropTransitionendHandler=b=>{this._disposeBackdrop(b.target)},this._keydownEvents=new mi.B,this._outsidePointerEvents=new mi.B,this._renders=new mi.B,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.positionStrategy,this._afterRenderRef=(0,o.O8t)(()=>(0,o.Tzd)(()=>{this._renders.next()},{injector:this._injector}))}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host);const e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._afterNextRenderRef?.destroy(),this._afterNextRenderRef=(0,o.mal)(()=>{this.hasAttached()&&this.updatePosition()},{injector:this._injector}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),"function"==typeof e?.onDestroy&&e.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenEmpty(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),t}dispose(){const t=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._disposeBackdrop(this._backdropElement),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._afterNextRenderRef?.destroy(),this._previousHostParent=this._pane=this._host=null,t&&this._detachments.next(),this._detachments.complete(),this._afterRenderRef.destroy(),this._renders.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config={...this._config,...t},this._updateElementSize()}setDirection(t){this._config={...this._config,direction:t},this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const t=this._pane.style;t.width=fi(this._config.width),t.height=fi(this._config.height),t.minWidth=fi(this._config.minWidth),t.minHeight=fi(this._config.minHeight),t.maxWidth=fi(this._config.maxWidth),t.maxHeight=fi(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"":"none"}_attachBackdrop(){const t="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._animationsDisabled&&this._backdropElement.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(t)})}):this._backdropElement.classList.add(t)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){const t=this._backdropElement;if(t){if(this._animationsDisabled)return void this._disposeBackdrop(t);t.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{t.addEventListener("transitionend",this._backdropTransitionendHandler)}),t.style.pointerEvents="none",this._backdropTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(()=>{this._disposeBackdrop(t)},500))}}_toggleClasses(t,e,i){const r=Fr(e||[]).filter(s=>!!s);r.length&&(i?t.classList.add(...r):t.classList.remove(...r))}_detachContentWhenEmpty(){this._ngZone.runOutsideAngular(()=>{const t=this._renders.pipe(bo(ql(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}_disposeBackdrop(t){t&&(t.removeEventListener("click",this._backdropClickHandler),t.removeEventListener("transitionend",this._backdropTransitionendHandler),t.remove(),this._backdropElement===t&&(this._backdropElement=null)),this._backdropTimeout&&(clearTimeout(this._backdropTimeout),this._backdropTimeout=void 0)}}const LC="cdk-overlay-connected-position-bounding-box",hO=/([A-Za-z%]+)$/;class fO{get positions(){return this._preferredPositions}constructor(t,e,i,r,s){this._viewportRuler=e,this._document=i,this._platform=r,this._overlayContainer=s,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new mi.B,this._resizeSubscription=un.yU.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(t)}attach(t){this._validatePositions(),t.hostElement.classList.add(LC),this._overlayRef=t,this._boundingBox=t.hostElement,this._pane=t.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const t=this._originRect,e=this._overlayRect,i=this._viewportRect,r=this._containerRect,s=[];let l;for(let u of this._preferredPositions){let f=this._getOriginPoint(t,r,u),p=this._getOverlayPoint(f,e,u),m=this._getOverlayFit(p,e,i,u);if(m.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(u,f);this._canFitWithFlexibleDimensions(m,p,i)?s.push({position:u,origin:f,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(f,u)}):(!l||l.overlayFit.visibleAreaf&&(f=m,u=p)}return this._isPushed=!1,void this._applyPosition(u.position,u.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(l.position,l.originPoint);this._applyPosition(l.position,l.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&ps(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(LC),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;const t=this._lastPosition;if(t){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const e=this._getOriginPoint(this._originRect,this._containerRect,t);this._applyPosition(t,e)}else this.apply()}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e,i){let r,s;if("center"==i.originX)r=t.left+t.width/2;else{const l=this._isRtl()?t.right:t.left,u=this._isRtl()?t.left:t.right;r="start"==i.originX?l:u}return e.left<0&&(r-=e.left),s="center"==i.originY?t.top+t.height/2:"top"==i.originY?t.top:t.bottom,e.top<0&&(s-=e.top),{x:r,y:s}}_getOverlayPoint(t,e,i){let r,s;return r="center"==i.overlayX?-e.width/2:"start"===i.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,s="center"==i.overlayY?-e.height/2:"top"==i.overlayY?0:-e.height,{x:t.x+r,y:t.y+s}}_getOverlayFit(t,e,i,r){const s=BT(e);let{x:l,y:u}=t,f=this._getOffset(r,"x"),p=this._getOffset(r,"y");f&&(l+=f),p&&(u+=p);let b=0-u,w=u+s.height-i.height,F=this._subtractOverflows(s.width,0-l,l+s.width-i.width),D=this._subtractOverflows(s.height,b,w),T=F*D;return{visibleArea:T,isCompletelyWithinViewport:s.width*s.height===T,fitsInViewportVertically:D===s.height,fitsInViewportHorizontally:F==s.width}}_canFitWithFlexibleDimensions(t,e,i){if(this._hasFlexibleDimensions){const r=i.bottom-e.y,s=i.right-e.x,l=DT(this._overlayRef.getConfig().minHeight),u=DT(this._overlayRef.getConfig().minWidth);return(t.fitsInViewportVertically||null!=l&&l<=r)&&(t.fitsInViewportHorizontally||null!=u&&u<=s)}return!1}_pushOverlayOnScreen(t,e,i){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const r=BT(e),s=this._viewportRect,l=Math.max(t.x+r.width-s.width,0),u=Math.max(t.y+r.height-s.height,0),f=Math.max(s.top-i.top-t.y,0),p=Math.max(s.left-i.left-t.x,0);let m=0,_=0;return m=r.width<=s.width?p||-l:t.xF&&!this._isInitialRender&&!this._growAfterOpen&&(l=t.y-F/2)}if("end"===e.overlayX&&!r||"start"===e.overlayX&&r)b=i.width-t.x+2*this._viewportMargin,m=t.x-this._viewportMargin;else if("start"===e.overlayX&&!r||"end"===e.overlayX&&r)_=t.x,m=i.right-t.x;else{const w=Math.min(i.right-t.x+i.left,t.x),F=this._lastBoundingBoxSize.width;m=2*w,_=t.x-w,m>F&&!this._isInitialRender&&!this._growAfterOpen&&(_=t.x-F/2)}return{top:l,left:_,bottom:u,right:b,width:m,height:s}}_setBoundingBoxStyles(t,e){const i=this._calculateBoundingBoxRect(t,e);!this._isInitialRender&&!this._growAfterOpen&&(i.height=Math.min(i.height,this._lastBoundingBoxSize.height),i.width=Math.min(i.width,this._lastBoundingBoxSize.width));const r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right=r.maxHeight=r.maxWidth="",r.width=r.height="100%";else{const s=this._overlayRef.getConfig().maxHeight,l=this._overlayRef.getConfig().maxWidth;r.height=fi(i.height),r.top=fi(i.top),r.bottom=fi(i.bottom),r.width=fi(i.width),r.left=fi(i.left),r.right=fi(i.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",s&&(r.maxHeight=fi(s)),l&&(r.maxWidth=fi(l))}this._lastBoundingBoxSize=i,ps(this._boundingBox.style,r)}_resetBoundingBoxStyles(){ps(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){ps(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const i={},r=this._hasExactPosition(),s=this._hasFlexibleDimensions,l=this._overlayRef.getConfig();if(r){const m=this._viewportRuler.getViewportScrollPosition();ps(i,this._getExactOverlayY(e,t,m)),ps(i,this._getExactOverlayX(e,t,m))}else i.position="static";let u="",f=this._getOffset(e,"x"),p=this._getOffset(e,"y");f&&(u+=`translateX(${f}px) `),p&&(u+=`translateY(${p}px)`),i.transform=u.trim(),l.maxHeight&&(r?i.maxHeight=fi(l.maxHeight):s&&(i.maxHeight="")),l.maxWidth&&(r?i.maxWidth=fi(l.maxWidth):s&&(i.maxWidth="")),ps(this._pane.style,i)}_getExactOverlayY(t,e,i){let r={top:"",bottom:""},s=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(s=this._pushOverlayOnScreen(s,this._overlayRect,i)),"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(s.y+this._overlayRect.height)+"px":r.top=fi(s.y),r}_getExactOverlayX(t,e,i){let l,r={left:"",right:""},s=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(s=this._pushOverlayOnScreen(s,this._overlayRect,i)),l=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left","right"===l?r.right=this._document.documentElement.clientWidth-(s.x+this._overlayRect.width)+"px":r.left=fi(s.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),i=this._scrollables.map(r=>r.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:RC(t,i),isOriginOutsideView:Xf(t,i),isOverlayClipped:RC(e,i),isOverlayOutsideView:Xf(e,i)}}_subtractOverflows(t,...e){return e.reduce((i,r)=>i-Math.max(r,0),t)}_getNarrowedViewportRect(){const t=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,i=this._viewportRuler.getViewportScrollPosition();return{top:i.top+this._viewportMargin,left:i.left+this._viewportMargin,right:i.left+t-this._viewportMargin,bottom:i.top+e-this._viewportMargin,width:t-2*this._viewportMargin,height:e-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){}_addPanelClasses(t){this._pane&&Fr(t).forEach(e=>{""!==e&&-1===this._appliedPanelClasses.indexOf(e)&&(this._appliedPanelClasses.push(e),this._pane.classList.add(e))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;if(t instanceof o.aKT)return t.nativeElement.getBoundingClientRect();if(t instanceof Element)return t.getBoundingClientRect();const e=t.width||0,i=t.height||0;return{top:t.y,bottom:t.y+i,left:t.x,right:t.x+e,height:i,width:e}}}function ps(n,t){for(let e in t)t.hasOwnProperty(e)&&(n[e]=t[e]);return n}function DT(n){if("number"!=typeof n&&null!=n){const[t,e]=n.split(hO);return e&&"px"!==e?null:parseFloat(t)}return n||null}function BT(n){return{top:Math.floor(n.top),right:Math.floor(n.right),bottom:Math.floor(n.bottom),left:Math.floor(n.left),width:Math.floor(n.width),height:Math.floor(n.height)}}const RT="cdk-global-overlay-wrapper";class AO{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._alignItems="",this._xPosition="",this._xOffset="",this._width="",this._height="",this._isDisposed=!1}attach(t){const e=t.getConfig();this._overlayRef=t,this._width&&!e.width&&t.updateSize({width:this._width}),this._height&&!e.height&&t.updateSize({height:this._height}),t.hostElement.classList.add(RT),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._xOffset=t,this._xPosition="left",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._xOffset=t,this._xPosition="right",this}start(t=""){return this._xOffset=t,this._xPosition="start",this}end(t=""){return this._xOffset=t,this._xPosition="end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._xPosition="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,i=this._overlayRef.getConfig(),{width:r,height:s,maxWidth:l,maxHeight:u}=i,f=!("100%"!==r&&"100vw"!==r||l&&"100%"!==l&&"100vw"!==l),p=!("100%"!==s&&"100vh"!==s||u&&"100%"!==u&&"100vh"!==u),m=this._xPosition,_=this._xOffset,b="rtl"===this._overlayRef.getConfig().direction;let w="",F="",D="";f?D="flex-start":"center"===m?(D="center",b?F=_:w=_):b?"left"===m||"end"===m?(D="flex-end",w=_):("right"===m||"start"===m)&&(D="flex-start",F=_):"left"===m||"start"===m?(D="flex-start",w=_):("right"===m||"end"===m)&&(D="flex-end",F=_),t.position=this._cssPosition,t.marginLeft=f?"0":w,t.marginTop=p?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=f?"0":F,e.justifyContent=D,e.alignItems=p?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,i=e.style;e.classList.remove(RT),i.justifyContent=i.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}let mO=(()=>{class n{constructor(e,i,r,s){this._viewportRuler=e,this._document=i,this._platform=r,this._overlayContainer=s}global(){return new AO}flexibleConnectedTo(e){return new fO(e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(dT),o.KVO(V),o.KVO(Io),o.KVO(Uy))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),PT=0,Ns=(()=>{class n{constructor(e,i,r,s,l,u,f,p,m,_,b,w){this.scrollStrategies=e,this._overlayContainer=i,this._componentFactoryResolver=r,this._positionBuilder=s,this._keyboardDispatcher=l,this._injector=u,this._ngZone=f,this._document=p,this._directionality=m,this._location=_,this._outsideClickDispatcher=b,this._animationsModuleType=w}create(e){const i=this._createHostElement(),r=this._createPaneElement(i),s=this._createPortalOutlet(r),l=new Am(e);return l.direction=l.direction||this._directionality.value,new y_(s,i,r,l,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher,"NoopAnimations"===this._animationsModuleType,this._injector.get(o.uvJ))}position(){return this._positionBuilder}_createPaneElement(e){const i=this._document.createElement("div");return i.id="cdk-overlay-"+PT++,i.classList.add("cdk-overlay-pane"),e.appendChild(i),i}_createHostElement(){const e=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(e),e}_createPortalOutlet(e){return this._appRef||(this._appRef=this._injector.get(o.o8S)),new xC(e,this._componentFactoryResolver,this._appRef,this._injector,this._document)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(OC),o.KVO(Uy),o.KVO(o.OM3),o.KVO(mO),o.KVO(dO),o.KVO(o.zZn),o.KVO(o.SKi),o.KVO(V),o.KVO(Ks),o.KVO(Ne),o.KVO(uO),o.KVO(o.bc$,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const gO=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Vy=new o.nKC("cdk-connected-overlay-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.reposition()}});let Hy=(()=>{class n{constructor(e){this.elementRef=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"],standalone:!0})}}return n})(),OT=(()=>{class n{get offsetX(){return this._offsetX}set offsetX(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}get disposeOnNavigation(){return this._disposeOnNavigation}set disposeOnNavigation(e){this._disposeOnNavigation=e}constructor(e,i,r,s,l){this._overlay=e,this._dir=l,this._backdropSubscription=un.yU.EMPTY,this._attachSubscription=un.yU.EMPTY,this._detachSubscription=un.yU.EMPTY,this._positionSubscription=un.yU.EMPTY,this._disposeOnNavigation=!1,this._ngZone=(0,o.WQX)(o.SKi),this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.hasBackdrop=!1,this.lockPosition=!1,this.flexibleDimensions=!1,this.growAfterOpen=!1,this.push=!1,this.backdropClick=new o.bkB,this.positionChange=new o.bkB,this.attach=new o.bkB,this.detach=new o.bkB,this.overlayKeydown=new o.bkB,this.overlayOutsideClick=new o.bkB,this._templatePortal=new A_(i,r),this._scrollStrategyFactory=s,this.scrollStrategy=this._scrollStrategyFactory()}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=gO);const e=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=e.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=e.detachments().subscribe(()=>this.detach.emit()),e.keydownEvents().subscribe(i=>{this.overlayKeydown.next(i),27===i.keyCode&&!this.disableClose&&!Kl(i)&&(i.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(i=>{const r=this._getOriginElement(),s=$l(i);(!r||r!==s&&!r.contains(s))&&this.overlayOutsideClick.next(i)})}_buildConfig(){const e=this._position=this.positionStrategy||this._createPositionStrategy(),i=new Am({direction:this._dir,positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop,disposeOnNavigation:this.disposeOnNavigation});return(this.width||0===this.width)&&(i.width=this.width),(this.height||0===this.height)&&(i.height=this.height),(this.minWidth||0===this.minWidth)&&(i.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(i.minHeight=this.minHeight),this.backdropClass&&(i.backdropClass=this.backdropClass),this.panelClass&&(i.panelClass=this.panelClass),i}_updatePositionStrategy(e){const i=this.positions.map(r=>({originX:r.originX,originY:r.originY,overlayX:r.overlayX,overlayY:r.overlayY,offsetX:r.offsetX||this.offsetX,offsetY:r.offsetY||this.offsetY,panelClass:r.panelClass||void 0}));return e.setOrigin(this._getOrigin()).withPositions(i).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const e=this._overlay.position().flexibleConnectedTo(this._getOrigin());return this._updatePositionStrategy(e),e}_getOrigin(){return this.origin instanceof Hy?this.origin.elementRef:this.origin}_getOriginElement(){return this.origin instanceof Hy?this.origin.elementRef.nativeElement:this.origin instanceof o.aKT?this.origin.nativeElement:typeof Element<"u"&&this.origin instanceof Element?this.origin:null}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(e=>{this.backdropClick.emit(e)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(function ph(n,t=!1){return(0,Ir.N)((e,i)=>{let r=0;e.subscribe((0,lr._)(i,s=>{const l=n(s,r++);(l||t)&&i.next(s),!l&&i.complete()}))})}(()=>this.positionChange.observers.length>0)).subscribe(e=>{this._ngZone.run(()=>this.positionChange.emit(e)),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Ns),o.rXU(o.C4Q),o.rXU(o.c1b),o.rXU(Vy),o.rXU(Ks,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:[0,"cdkConnectedOverlayOrigin","origin"],positions:[0,"cdkConnectedOverlayPositions","positions"],positionStrategy:[0,"cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:[0,"cdkConnectedOverlayOffsetX","offsetX"],offsetY:[0,"cdkConnectedOverlayOffsetY","offsetY"],width:[0,"cdkConnectedOverlayWidth","width"],height:[0,"cdkConnectedOverlayHeight","height"],minWidth:[0,"cdkConnectedOverlayMinWidth","minWidth"],minHeight:[0,"cdkConnectedOverlayMinHeight","minHeight"],backdropClass:[0,"cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:[0,"cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:[0,"cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:[0,"cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:[0,"cdkConnectedOverlayOpen","open"],disableClose:[0,"cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:[0,"cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:[2,"cdkConnectedOverlayHasBackdrop","hasBackdrop",o.L39],lockPosition:[2,"cdkConnectedOverlayLockPosition","lockPosition",o.L39],flexibleDimensions:[2,"cdkConnectedOverlayFlexibleDimensions","flexibleDimensions",o.L39],growAfterOpen:[2,"cdkConnectedOverlayGrowAfterOpen","growAfterOpen",o.L39],push:[2,"cdkConnectedOverlayPush","push",o.L39],disposeOnNavigation:[2,"cdkConnectedOverlayDisposeOnNavigation","disposeOnNavigation",o.L39]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],standalone:!0,features:[o.GFd,o.OA$]})}}return n})();function x_(n,t=tu){return(0,Ir.N)((e,i)=>{let r=null,s=null,l=null;const u=()=>{if(r){r.unsubscribe(),r=null;const p=s;s=null,i.next(p)}};function f(){const p=l+n,m=t.now();if(m{s=p,l=t.now(),r||(r=t.schedule(f,n),i.add(r))},()=>{u(),i.complete()},void 0,()=>{s=r=null}))})}function Ms(n){return n<=0?()=>mh:(0,Ir.N)((t,e)=>{let i=0;t.subscribe((0,lr._)(e,r=>{++i<=n&&(e.next(r),n<=i&&e.complete())}))})}function C_(n){return hr((t,e)=>n<=e)}function Qy(n,t,e){const i=E_(n,t);e=e.trim(),!i.some(r=>r.trim()===e)&&(i.push(e),n.setAttribute(t,i.join(" ")))}function NT(n,t,e){const i=E_(n,t);e=e.trim();const r=i.filter(s=>s!==e);r.length?n.setAttribute(t,r.join(" ")):n.removeAttribute(t)}function E_(n,t){return n.getAttribute(t)?.match(/\S+/g)??[]}const VC="cdk-describedby-message",Kf="cdk-describedby-host";let S_=0,ru=(()=>{class n{constructor(e,i){this._platform=i,this._messageRegistry=new Map,this._messagesContainer=null,this._id=""+S_++,this._document=e,this._id=(0,o.WQX)(o.sZ2)+"-"+S_++}describe(e,i,r){if(!this._canBeDescribed(e,i))return;const s=HC(i,r);"string"!=typeof i?(LT(i,this._id),this._messageRegistry.set(s,{messageElement:i,referenceCount:0})):this._messageRegistry.has(s)||this._createMessageElement(i,r),this._isElementDescribedByMessage(e,s)||this._addMessageReference(e,s)}removeDescription(e,i,r){if(!i||!this._isElementNode(e))return;const s=HC(i,r);if(this._isElementDescribedByMessage(e,s)&&this._removeMessageReference(e,s),"string"==typeof i){const l=this._messageRegistry.get(s);l&&0===l.referenceCount&&this._deleteMessageElement(s)}0===this._messagesContainer?.childNodes.length&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){const e=this._document.querySelectorAll(`[${Kf}="${this._id}"]`);for(let i=0;i0!=r.indexOf(VC));e.setAttribute("aria-describedby",i.join(" "))}_addMessageReference(e,i){const r=this._messageRegistry.get(i);Qy(e,"aria-describedby",r.messageElement.id),e.setAttribute(Kf,this._id),r.referenceCount++}_removeMessageReference(e,i){const r=this._messageRegistry.get(i);r.referenceCount--,NT(e,"aria-describedby",r.messageElement.id),e.removeAttribute(Kf)}_isElementDescribedByMessage(e,i){const r=E_(e,"aria-describedby"),s=this._messageRegistry.get(i),l=s&&s.messageElement.id;return!!l&&-1!=r.indexOf(l)}_canBeDescribed(e,i){if(!this._isElementNode(e))return!1;if(i&&"object"==typeof i)return!0;const r=null==i?"":`${i}`.trim(),s=e.getAttribute("aria-label");return!(!r||s&&s.trim()===r)}_isElementNode(e){return e.nodeType===this._document.ELEMENT_NODE}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(Io))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function HC(n,t){return"string"==typeof n?`${t||""}/${n}`:n}function LT(n,t){n.id||(n.id=`${VC}-${t}-${S_++}`)}class UT{constructor(t,e){this._letterKeyStream=new mi.B,this._items=[],this._selectedItemIndex=-1,this._pressedLetters=[],this._selectedItem=new mi.B,this.selectedItem=this._selectedItem;const i="number"==typeof e?.debounceInterval?e.debounceInterval:200;e?.skipPredicate&&(this._skipPredicateFn=e.skipPredicate),this.setItems(t),this._setupKeyHandler(i)}destroy(){this._pressedLetters=[],this._letterKeyStream.complete(),this._selectedItem.complete()}setCurrentSelectedItemIndex(t){this._selectedItemIndex=t}setItems(t){this._items=t}handleKey(t){const e=t.keyCode;t.key&&1===t.key.length?this._letterKeyStream.next(t.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))}isTyping(){return this._pressedLetters.length>0}reset(){this._pressedLetters=[]}_setupKeyHandler(t){this._letterKeyStream.pipe(ro(e=>this._pressedLetters.push(e)),x_(t),hr(()=>this._pressedLetters.length>0),(0,Xn.T)(()=>this._pressedLetters.join("").toLocaleUpperCase())).subscribe(e=>{for(let i=1;ii.disabled,this.tabOut=new mi.B,this.change=new mi.B,t instanceof o.rOR?this._itemChangesSubscription=t.changes.subscribe(i=>this._itemsChanged(i.toArray())):(0,o.Hps)(t)&&(this._effectRef=(0,o.QZP)(()=>this._itemsChanged(t()),{injector:e}))}skipPredicate(t){return this._skipPredicateFn=t,this}withWrap(t=!0){return this._wrap=t,this}withVerticalOrientation(t=!0){return this._vertical=t,this}withHorizontalOrientation(t){return this._horizontal=t,this}withAllowedModifierKeys(t){return this._allowedModifierKeys=t,this}withTypeAhead(t=200){this._typeaheadSubscription.unsubscribe();const e=this._getItemsArray();return this._typeahead=new UT(e,{debounceInterval:"number"==typeof t?t:void 0,skipPredicate:i=>this._skipPredicateFn(i)}),this._typeaheadSubscription=this._typeahead.selectedItem.subscribe(i=>{this.setActiveItem(i)}),this}cancelTypeahead(){return this._typeahead?.reset(),this}withHomeAndEnd(t=!0){return this._homeAndEnd=t,this}withPageUpDown(t=!0,e=10){return this._pageUpAndDown={enabled:t,delta:e},this}setActiveItem(t){const e=this._activeItem;this.updateActiveItem(t),this._activeItem!==e&&this.change.next(this._activeItemIndex)}onKeydown(t){const e=t.keyCode,r=["altKey","ctrlKey","metaKey","shiftKey"].every(s=>!t[s]||this._allowedModifierKeys.indexOf(s)>-1);switch(e){case 9:return void this.tabOut.next();case 40:if(this._vertical&&r){this.setNextItemActive();break}return;case 38:if(this._vertical&&r){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&r){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&r){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&r){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&r){this.setLastItemActive();break}return;case 33:if(this._pageUpAndDown.enabled&&r){const s=this._activeItemIndex-this._pageUpAndDown.delta;this._setActiveItemByIndex(s>0?s:0,1);break}return;case 34:if(this._pageUpAndDown.enabled&&r){const s=this._activeItemIndex+this._pageUpAndDown.delta,l=this._getItemsArray().length;this._setActiveItemByIndex(s-1&&e!==this._activeItemIndex&&(this._activeItemIndex=e,this._typeahead?.setCurrentSelectedItemIndex(e))}}}class VT extends Yf{setActiveItem(t){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(t),this.activeItem&&this.activeItem.setActiveStyles()}}class ou extends Yf{constructor(){super(...arguments),this._origin="program"}setFocusOrigin(t){return this._origin=t,this}setActiveItem(t){super.setActiveItem(t),this.activeItem&&this.activeItem.focus(this._origin)}}let zC=(()=>{class n{constructor(e){this._platform=e}isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return function xO(n){return!!(n.offsetWidth||n.offsetHeight||"function"==typeof n.getClientRects&&n.getClientRects().length)}(e)&&"visible"===getComputedStyle(e).visibility}isTabbable(e){if(!this._platform.isBrowser)return!1;const i=function wO(n){try{return n.frameElement}catch{return null}}(function jT(n){return n.ownerDocument&&n.ownerDocument.defaultView||window}(e));if(i&&(-1===GC(i)||!this.isVisible(i)))return!1;let r=e.nodeName.toLowerCase(),s=GC(e);return e.hasAttribute("contenteditable")?-1!==s:!("iframe"===r||"object"===r||this._platform.WEBKIT&&this._platform.IOS&&!function EO(n){let t=n.nodeName.toLowerCase(),e="input"===t&&n.type;return"text"===e||"password"===e||"select"===t||"textarea"===t}(e))&&("audio"===r?!!e.hasAttribute("controls")&&-1!==s:"video"===r?-1!==s&&(null!==s||this._platform.FIREFOX||e.hasAttribute("controls")):e.tabIndex>=0)}isFocusable(e,i){return function SO(n){return!function CO(n){return function MO(n){return"input"==n.nodeName.toLowerCase()}(n)&&"hidden"==n.type}(n)&&(function QT(n){let t=n.nodeName.toLowerCase();return"input"===t||"select"===t||"button"===t||"textarea"===t}(n)||function Gy(n){return function zT(n){return"a"==n.nodeName.toLowerCase()}(n)&&n.hasAttribute("href")}(n)||n.hasAttribute("contenteditable")||GT(n))}(e)&&!this.isDisabled(e)&&(i?.ignoreVisibility||this.isVisible(e))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Io))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function GT(n){if(!n.hasAttribute("tabindex")||void 0===n.tabIndex)return!1;let t=n.getAttribute("tabindex");return!(!t||isNaN(parseInt(t,10)))}function GC(n){if(!GT(n))return null;const t=parseInt(n.getAttribute("tabindex")||"",10);return isNaN(t)?-1:t}class jy{get enabled(){return this._enabled}set enabled(t){this._enabled=t,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}constructor(t,e,i,r,s=!1,l){this._element=t,this._checker=e,this._ngZone=i,this._document=r,this._injector=l,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,s||this.attachAnchors()}destroy(){const t=this._startAnchor,e=this._endAnchor;t&&(t.removeEventListener("focus",this.startAnchorListener),t.remove()),e&&(e.removeEventListener("focus",this.endAnchorListener),e.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(t)))})}focusFirstTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(t)))})}focusLastTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(t)))})}_getRegionBoundary(t){const e=this._element.querySelectorAll(`[cdk-focus-region-${t}], [cdkFocusRegion${t}], [cdk-focus-${t}]`);return"start"==t?e.length?e[0]:this._getFirstTabbableElement(this._element):e.length?e[e.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(t){const e=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(e){if(!this._checker.isFocusable(e)){const i=this._getFirstTabbableElement(e);return i?.focus(t),!!i}return e.focus(t),!0}return this.focusFirstTabbableElement(t)}focusFirstTabbableElement(t){const e=this._getRegionBoundary("start");return e&&e.focus(t),!!e}focusLastTabbableElement(t){const e=this._getRegionBoundary("end");return e&&e.focus(t),!!e}hasAttached(){return this._hasAttached}_getFirstTabbableElement(t){if(this._checker.isFocusable(t)&&this._checker.isTabbable(t))return t;const e=t.children;for(let i=0;i=0;i--){const r=e[i].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[i]):null;if(r)return r}return null}_createAnchor(){const t=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,t),t.classList.add("cdk-visually-hidden"),t.classList.add("cdk-focus-trap-anchor"),t.setAttribute("aria-hidden","true"),t}_toggleAnchorTabIndex(t,e){t?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(t){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}_executeOnStable(t){this._injector?(0,o.mal)(t,{injector:this._injector}):setTimeout(t)}}let jC=(()=>{class n{constructor(e,i,r){this._checker=e,this._ngZone=i,this._injector=(0,o.WQX)(o.zZn),this._document=r}create(e,i=!1){return new jy(e,this._checker,this._ngZone,this._document,i,this._injector)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(zC),o.KVO(o.SKi),o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function _m(n){return 0===n.buttons||0===n.detail}function T_(n){const t=n.touches&&n.touches[0]||n.changedTouches&&n.changedTouches[0];return!(!t||-1!==t.identifier||null!=t.radiusX&&1!==t.radiusX||null!=t.radiusY&&1!==t.radiusY)}const TO=new o.nKC("cdk-input-modality-detector-options"),BH={ignoreKeys:[18,17,224,91,16]},bm=Gf({passive:!0,capture:!0});let FO=(()=>{class n{get mostRecentModality(){return this._modality.value}constructor(e,i,r,s){this._platform=e,this._mostRecentTarget=null,this._modality=new $d.t(null),this._lastTouchMs=0,this._onKeydown=l=>{this._options?.ignoreKeys?.some(u=>u===l.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=$l(l))},this._onMousedown=l=>{Date.now()-this._lastTouchMs<650||(this._modality.next(_m(l)?"keyboard":"mouse"),this._mostRecentTarget=$l(l))},this._onTouchstart=l=>{T_(l)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=$l(l))},this._options={...BH,...s},this.modalityDetected=this._modality.pipe(C_(1)),this.modalityChanged=this.modalityDetected.pipe(kr()),e.isBrowser&&i.runOutsideAngular(()=>{r.addEventListener("keydown",this._onKeydown,bm),r.addEventListener("mousedown",this._onMousedown,bm),r.addEventListener("touchstart",this._onTouchstart,bm)})}ngOnDestroy(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,bm),document.removeEventListener("mousedown",this._onMousedown,bm),document.removeEventListener("touchstart",this._onTouchstart,bm))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Io),o.KVO(o.SKi),o.KVO(V),o.KVO(TO,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const kH=new o.nKC("liveAnnouncerElement",{providedIn:"root",factory:function DO(){return null}}),RH=new o.nKC("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let BO=0,kO=(()=>{class n{constructor(e,i,r,s){this._ngZone=i,this._defaultOptions=s,this._document=r,this._liveElement=e||this._createLiveElement()}announce(e,...i){const r=this._defaultOptions;let s,l;return 1===i.length&&"number"==typeof i[0]?l=i[0]:[s,l]=i,this.clear(),clearTimeout(this._previousTimeout),s||(s=r&&r.politeness?r.politeness:"polite"),null==l&&r&&(l=r.duration),this._liveElement.setAttribute("aria-live",s),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(u=>this._currentResolve=u)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=e,"number"==typeof l&&(this._previousTimeout=setTimeout(()=>this.clear(),l)),this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){const e="cdk-live-announcer-element",i=this._document.getElementsByClassName(e),r=this._document.createElement("div");for(let s=0;s .cdk-overlay-container [aria-modal="true"]');for(let r=0;r{class n{constructor(e,i,r,s,l){this._ngZone=e,this._platform=i,this._inputModalityDetector=r,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=window.setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new mi.B,this._rootNodeFocusAndBlurListener=u=>{for(let p=$l(u);p;p=p.parentElement)"focus"===u.type?this._onFocus(u,p):this._onBlur(u,p)},this._document=s,this._detectionMode=l?.detectionMode||vm.IMMEDIATE}monitor(e,i=!1){const r=Mi(e);if(!this._platform.isBrowser||1!==r.nodeType)return Mo();const s=function u4(n){if(function p_(){if(null==sT){const n=typeof document<"u"?document.head:null;sT=!(!n||!n.createShadowRoot&&!n.attachShadow)}return sT}()){const t=n.getRootNode?n.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&t instanceof ShadowRoot)return t}return null}(r)||this._getDocument(),l=this._elementInfo.get(r);if(l)return i&&(l.checkChildren=!0),l.subject;const u={checkChildren:i,subject:new mi.B,rootNode:s};return this._elementInfo.set(r,u),this._registerGlobalListeners(u),u.subject}stopMonitoring(e){const i=Mi(e),r=this._elementInfo.get(i);r&&(r.subject.complete(),this._setClasses(i),this._elementInfo.delete(i),this._removeGlobalListeners(r))}focusVia(e,i,r){const s=Mi(e);s===this._getDocument().activeElement?this._getClosestElementsInfo(s).forEach(([u,f])=>this._originChanged(u,i,f)):(this._setOrigin(i),"function"==typeof s.focus&&s.focus(r))}ngOnDestroy(){this._elementInfo.forEach((e,i)=>this.stopMonitoring(i))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_getFocusOrigin(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:e&&this._isLastInteractionFromInputLabel(e)?"mouse":"program"}_shouldBeAttributedToTouch(e){return this._detectionMode===vm.EVENTUAL||!!e?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(e,i){e.classList.toggle("cdk-focused",!!i),e.classList.toggle("cdk-touch-focused","touch"===i),e.classList.toggle("cdk-keyboard-focused","keyboard"===i),e.classList.toggle("cdk-mouse-focused","mouse"===i),e.classList.toggle("cdk-program-focused","program"===i)}_setOrigin(e,i=!1){this._ngZone.runOutsideAngular(()=>{this._origin=e,this._originFromTouchInteraction="touch"===e&&i,this._detectionMode===vm.IMMEDIATE&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(e,i){const r=this._elementInfo.get(i),s=$l(e);!r||!r.checkChildren&&i!==s||this._originChanged(i,this._getFocusOrigin(s),r)}_onBlur(e,i){const r=this._elementInfo.get(i);!r||r.checkChildren&&e.relatedTarget instanceof Node&&i.contains(e.relatedTarget)||(this._setClasses(i),this._emitOrigin(r,null))}_emitOrigin(e,i){e.subject.observers.length&&this._ngZone.run(()=>e.subject.next(i))}_registerGlobalListeners(e){if(!this._platform.isBrowser)return;const i=e.rootNode,r=this._rootNodeFocusListenerCount.get(i)||0;r||this._ngZone.runOutsideAngular(()=>{i.addEventListener("focus",this._rootNodeFocusAndBlurListener,ym),i.addEventListener("blur",this._rootNodeFocusAndBlurListener,ym)}),this._rootNodeFocusListenerCount.set(i,r+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(bo(this._stopInputModalityDetector)).subscribe(s=>{this._setOrigin(s,!0)}))}_removeGlobalListeners(e){const i=e.rootNode;if(this._rootNodeFocusListenerCount.has(i)){const r=this._rootNodeFocusListenerCount.get(i);r>1?this._rootNodeFocusListenerCount.set(i,r-1):(i.removeEventListener("focus",this._rootNodeFocusAndBlurListener,ym),i.removeEventListener("blur",this._rootNodeFocusAndBlurListener,ym),this._rootNodeFocusListenerCount.delete(i))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(e,i,r){this._setClasses(e,i),this._emitOrigin(r,i),this._lastFocusOrigin=i}_getClosestElementsInfo(e){const i=[];return this._elementInfo.forEach((r,s)=>{(s===e||r.checkChildren&&s.contains(e))&&i.push([s,r])}),i}_isLastInteractionFromInputLabel(e){const{_mostRecentTarget:i,mostRecentModality:r}=this._inputModalityDetector;if("mouse"!==r||!i||i===e||"INPUT"!==e.nodeName&&"TEXTAREA"!==e.nodeName||e.disabled)return!1;const s=e.labels;if(s)for(let l=0;l{Rr(n()).subscribe(t)})}function $C(...n){return function $T(){return S4(1)}()(sa(n,nh(n)))}function su(...n){const t=nh(n);return(0,Ir.N)((e,i)=>{(t?$C(n,e,t):$C(n,e)).subscribe(i)})}function LO(n,t){}class gh{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.ariaModal=!0,this.autoFocus="first-tabbable",this.restoreFocus=!0,this.closeOnNavigation=!0,this.closeOnDestroy=!0,this.closeOnOverlayDetachments=!0}}let qT=(()=>{class n extends wC{constructor(e,i,r,s,l,u,f,p){super(),this._elementRef=e,this._focusTrapFactory=i,this._config=s,this._interactivityChecker=l,this._ngZone=u,this._overlayRef=f,this._focusMonitor=p,this._platform=(0,o.WQX)(Io),this._focusTrap=null,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this._ariaLabelledByQueue=[],this._changeDetectorRef=(0,o.WQX)(o.gRc),this._injector=(0,o.WQX)(o.zZn),this._isDestroyed=!1,this.attachDomPortal=m=>{this._portalOutlet.hasAttached();const _=this._portalOutlet.attachDomPortal(m);return this._contentAttached(),_},this._document=r,this._config.ariaLabelledBy&&this._ariaLabelledByQueue.push(this._config.ariaLabelledBy)}_addAriaLabelledBy(e){this._ariaLabelledByQueue.push(e),this._changeDetectorRef.markForCheck()}_removeAriaLabelledBy(e){const i=this._ariaLabelledByQueue.indexOf(e);i>-1&&(this._ariaLabelledByQueue.splice(i,1),this._changeDetectorRef.markForCheck())}_contentAttached(){this._initializeFocusTrap(),this._handleBackdropClicks(),this._captureInitialFocus()}_captureInitialFocus(){this._trapFocus()}ngOnDestroy(){this._isDestroyed=!0,this._restoreFocus()}attachComponentPortal(e){this._portalOutlet.hasAttached();const i=this._portalOutlet.attachComponentPortal(e);return this._contentAttached(),i}attachTemplatePortal(e){this._portalOutlet.hasAttached();const i=this._portalOutlet.attachTemplatePortal(e);return this._contentAttached(),i}_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(e,i){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{const r=()=>{e.removeEventListener("blur",r),e.removeEventListener("mousedown",r),e.removeAttribute("tabindex")};e.addEventListener("blur",r),e.addEventListener("mousedown",r)})),e.focus(i)}_focusByCssSelector(e,i){let r=this._elementRef.nativeElement.querySelector(e);r&&this._forceFocus(r,i)}_trapFocus(){this._isDestroyed||(0,o.mal)(()=>{const e=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||e.focus();break;case!0:case"first-tabbable":this._focusTrap?.focusInitialElement()||this._focusDialogContainer();break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this._config.autoFocus)}},{injector:this._injector})}_restoreFocus(){const e=this._config.restoreFocus;let i=null;if("string"==typeof e?i=this._document.querySelector(e):"boolean"==typeof e?i=e?this._elementFocusedBeforeDialogWasOpened:null:e&&(i=e),this._config.restoreFocus&&i&&"function"==typeof i.focus){const r=jf(),s=this._elementRef.nativeElement;(!r||r===this._document.body||r===s||s.contains(r))&&(this._focusMonitor?(this._focusMonitor.focusVia(i,this._closeInteractionType),this._closeInteractionType=null):i.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const e=this._elementRef.nativeElement,i=jf();return e===i||e.contains(i)}_initializeFocusTrap(){this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=jf()))}_handleBackdropClicks(){this._overlayRef.backdropClick().subscribe(()=>{this._config.disableClose&&this._recaptureFocus()})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(jC),o.rXU(V,8),o.rXU(gh),o.rXU(zC),o.rXU(o.SKi),o.rXU(y_),o.rXU(Yl))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cdk-dialog-container"]],viewQuery:function(i,r){if(1&i&&o.GBs(m_,7),2&i){let s;o.mGM(s=o.lsd())&&(r._portalOutlet=s.first)}},hostAttrs:["tabindex","-1",1,"cdk-dialog-container"],hostVars:6,hostBindings:function(i,r){2&i&&o.BMQ("id",r._config.id||null)("role",r._config.role)("aria-modal",r._config.ariaModal)("aria-labelledby",r._config.ariaLabel?null:r._ariaLabelledByQueue[0])("aria-label",r._config.ariaLabel)("aria-describedby",r._config.ariaDescribedBy||null)},standalone:!0,features:[o.Vt3,o.aNF],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(i,r){1&i&&o.DNE(0,LO,0,0,"ng-template",0)},dependencies:[m_],styles:[".cdk-dialog-container{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}"],encapsulation:2})}}return n})();class qC{constructor(t,e){this.overlayRef=t,this.config=e,this.closed=new mi.B,this.disableClose=e.disableClose,this.backdropClick=t.backdropClick(),this.keydownEvents=t.keydownEvents(),this.outsidePointerEvents=t.outsidePointerEvents(),this.id=e.id,this.keydownEvents.subscribe(i=>{27===i.keyCode&&!this.disableClose&&!Kl(i)&&(i.preventDefault(),this.close(void 0,{focusOrigin:"keyboard"}))}),this.backdropClick.subscribe(()=>{this.disableClose||this.close(void 0,{focusOrigin:"mouse"})}),this._detachSubscription=t.detachments().subscribe(()=>{!1!==e.closeOnOverlayDetachments&&this.close()})}close(t,e){if(this.containerInstance){const i=this.closed;this.containerInstance._closeInteractionType=e?.focusOrigin||"program",this._detachSubscription.unsubscribe(),this.overlayRef.dispose(),i.next(t),i.complete(),this.componentInstance=this.containerInstance=null}}updatePosition(){return this.overlayRef.updatePosition(),this}updateSize(t="",e=""){return this.overlayRef.updateSize({width:t,height:e}),this}addPanelClass(t){return this.overlayRef.addPanelClass(t),this}removePanelClass(t){return this.overlayRef.removePanelClass(t),this}}const D_=new o.nKC("DialogScrollStrategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.block()}}),WT=new o.nKC("DialogData"),XT=new o.nKC("DefaultDialogConfig");let YT=0,WC=(()=>{class n{get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}constructor(e,i,r,s,l,u){this._overlay=e,this._injector=i,this._defaultOptions=r,this._parentDialog=s,this._overlayContainer=l,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new mi.B,this._afterOpenedAtThisLevel=new mi.B,this._ariaHiddenElements=new Map,this.afterAllClosed=Ky(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(su(void 0))),this._scrollStrategy=u}open(e,i){(i={...this._defaultOptions||new gh,...i}).id=i.id||"cdk-dialog-"+YT++,i.id&&this.getDialogById(i.id);const s=this._getOverlayConfig(i),l=this._overlay.create(s),u=new qC(l,i),f=this._attachContainer(l,u,i);return u.containerInstance=f,this._attachDialogContent(e,u,f,i),this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(u),u.closed.subscribe(()=>this._removeOpenDialog(u,!0)),this.afterOpened.next(u),u}closeAll(){wm(this.openDialogs,e=>e.close())}getDialogById(e){return this.openDialogs.find(i=>i.id===e)}ngOnDestroy(){wm(this._openDialogsAtThisLevel,e=>{!1===e.config.closeOnDestroy&&this._removeOpenDialog(e,!1)}),wm(this._openDialogsAtThisLevel,e=>e.close()),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._openDialogsAtThisLevel=[]}_getOverlayConfig(e){const i=new Am({positionStrategy:e.positionStrategy||this._overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,width:e.width,height:e.height,disposeOnNavigation:e.closeOnNavigation});return e.backdropClass&&(i.backdropClass=e.backdropClass),i}_attachContainer(e,i,r){const s=r.injector||r.viewContainerRef?.injector,l=[{provide:gh,useValue:r},{provide:qC,useValue:i},{provide:y_,useValue:e}];let u;r.container?"function"==typeof r.container?u=r.container:(u=r.container.type,l.push(...r.container.providers(r))):u=qT;const f=new am(u,r.viewContainerRef,o.zZn.create({parent:s||this._injector,providers:l}),r.componentFactoryResolver);return e.attach(f).instance}_attachDialogContent(e,i,r,s){if(e instanceof o.C4Q){const l=this._createInjector(s,i,r,void 0);let u={$implicit:s.data,dialogRef:i};s.templateContext&&(u={...u,..."function"==typeof s.templateContext?s.templateContext():s.templateContext}),r.attachTemplatePortal(new A_(e,null,u,l))}else{const l=this._createInjector(s,i,r,this._injector),u=r.attachComponentPortal(new am(e,s.viewContainerRef,l,s.componentFactoryResolver));i.componentRef=u,i.componentInstance=u.instance}}_createInjector(e,i,r,s){const l=e.injector||e.viewContainerRef?.injector,u=[{provide:WT,useValue:e.data},{provide:qC,useValue:i}];return e.providers&&("function"==typeof e.providers?u.push(...e.providers(i,e,r)):u.push(...e.providers)),e.direction&&(!l||!l.get(Ks,null,{optional:!0}))&&u.push({provide:Ks,useValue:{value:e.direction,change:Mo()}}),o.zZn.create({parent:l||s,providers:u})}_removeOpenDialog(e,i){const r=this.openDialogs.indexOf(e);r>-1&&(this.openDialogs.splice(r,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((s,l)=>{s?l.setAttribute("aria-hidden",s):l.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),i&&this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const e=this._overlayContainer.getContainerElement();if(e.parentElement){const i=e.parentElement.children;for(let r=i.length-1;r>-1;r--){const s=i[r];s!==e&&"SCRIPT"!==s.nodeName&&"STYLE"!==s.nodeName&&!s.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(s,s.getAttribute("aria-hidden")),s.setAttribute("aria-hidden","true"))}}}_getAfterAllClosed(){const e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Ns),o.KVO(o.zZn),o.KVO(XT,8),o.KVO(n,12),o.KVO(Uy),o.KVO(D_))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function wm(n,t){let e=n.length;for(;e--;)t(n[e])}var Nn=v(9969);function UO(n,t){}class XC{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.ariaModal=!0,this.autoFocus="first-tabbable",this.restoreFocus=!0,this.delayFocusTrap=!0,this.closeOnNavigation=!0}}const KC="mdc-dialog--open",ZT="mdc-dialog--opening",Yy="mdc-dialog--closing";let YC=(()=>{class n extends qT{constructor(e,i,r,s,l,u,f,p,m){super(e,i,r,s,l,u,f,m),this._animationMode=p,this._animationStateChanged=new o.bkB,this._animationsEnabled="NoopAnimations"!==this._animationMode,this._actionSectionCount=0,this._hostElement=this._elementRef.nativeElement,this._enterAnimationDuration=this._animationsEnabled?xm(this._config.enterAnimationDuration)??150:0,this._exitAnimationDuration=this._animationsEnabled?xm(this._config.exitAnimationDuration)??75:0,this._animationTimer=null,this._finishDialogOpen=()=>{this._clearAnimationClasses(),this._openAnimationDone(this._enterAnimationDuration)},this._finishDialogClose=()=>{this._clearAnimationClasses(),this._animationStateChanged.emit({state:"closed",totalTime:this._exitAnimationDuration})}}_contentAttached(){super._contentAttached(),this._startOpenAnimation()}_startOpenAnimation(){this._animationStateChanged.emit({state:"opening",totalTime:this._enterAnimationDuration}),this._animationsEnabled?(this._hostElement.style.setProperty(eI,`${this._enterAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(ZT,KC)),this._waitForAnimationToComplete(this._enterAnimationDuration,this._finishDialogOpen)):(this._hostElement.classList.add(KC),Promise.resolve().then(()=>this._finishDialogOpen()))}_startExitAnimation(){this._animationStateChanged.emit({state:"closing",totalTime:this._exitAnimationDuration}),this._hostElement.classList.remove(KC),this._animationsEnabled?(this._hostElement.style.setProperty(eI,`${this._exitAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Yy)),this._waitForAnimationToComplete(this._exitAnimationDuration,this._finishDialogClose)):Promise.resolve().then(()=>this._finishDialogClose())}_updateActionSectionCount(e){this._actionSectionCount+=e,this._changeDetectorRef.markForCheck()}_clearAnimationClasses(){this._hostElement.classList.remove(ZT,Yy)}_waitForAnimationToComplete(e,i){null!==this._animationTimer&&clearTimeout(this._animationTimer),this._animationTimer=setTimeout(i,e)}_requestAnimationFrame(e){this._ngZone.runOutsideAngular(()=>{"function"==typeof requestAnimationFrame?requestAnimationFrame(e):e()})}_captureInitialFocus(){this._config.delayFocusTrap||this._trapFocus()}_openAnimationDone(e){this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})}ngOnDestroy(){super.ngOnDestroy(),null!==this._animationTimer&&clearTimeout(this._animationTimer)}attachComponentPortal(e){const i=super.attachComponentPortal(e);return i.location.nativeElement.classList.add("mat-mdc-dialog-component-host"),i}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(jC),o.rXU(V,8),o.rXU(XC),o.rXU(zC),o.rXU(o.SKi),o.rXU(y_),o.rXU(o.bc$,8),o.rXU(Yl))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1",1,"mat-mdc-dialog-container","mdc-dialog"],hostVars:10,hostBindings:function(i,r){2&i&&(o.Mr5("id",r._config.id),o.BMQ("aria-modal",r._config.ariaModal)("role",r._config.role)("aria-labelledby",r._config.ariaLabel?null:r._ariaLabelledByQueue[0])("aria-label",r._config.ariaLabel)("aria-describedby",r._config.ariaDescribedBy||null),o.AVh("_mat-animation-noopable",!r._animationsEnabled)("mat-mdc-dialog-container-with-actions",r._actionSectionCount>0))},standalone:!0,features:[o.Vt3,o.aNF],decls:3,vars:0,consts:[[1,"mat-mdc-dialog-inner-container","mdc-dialog__container"],[1,"mat-mdc-dialog-surface","mdc-dialog__surface"],["cdkPortalOutlet",""]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"div",1),o.DNE(2,UO,0,0,"ng-template",2),o.k0s()())},dependencies:[m_],styles:['.mat-mdc-dialog-container{width:100%;height:100%;display:block;box-sizing:border-box;max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit;outline:0}.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:var(--mat-dialog-container-max-width, 80vw);min-width:var(--mat-dialog-container-min-width, 0)}@media(max-width: 599px){.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:var(--mat-dialog-container-small-max-width, 80vw)}}.mat-mdc-dialog-inner-container{display:flex;flex-direction:row;align-items:center;justify-content:space-around;box-sizing:border-box;height:100%;opacity:0;transition:opacity linear var(--mat-dialog-transition-duration, 0ms);max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit}.mdc-dialog--closing .mat-mdc-dialog-inner-container{transition:opacity 75ms linear;transform:none}.mdc-dialog--open .mat-mdc-dialog-inner-container{opacity:1}._mat-animation-noopable .mat-mdc-dialog-inner-container{transition:none}.mat-mdc-dialog-surface{display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;box-sizing:border-box;width:100%;height:100%;position:relative;overflow-y:auto;outline:0;transform:scale(0.8);transition:transform var(--mat-dialog-transition-duration, 0ms) cubic-bezier(0, 0, 0.2, 1);max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit;box-shadow:var(--mat-dialog-container-elevation-shadow, 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12));border-radius:var(--mdc-dialog-container-shape, var(--mat-app-corner-extra-large, 4px));background-color:var(--mdc-dialog-container-color, var(--mat-app-surface, white))}[dir=rtl] .mat-mdc-dialog-surface{text-align:right}.mdc-dialog--open .mat-mdc-dialog-surface,.mdc-dialog--closing .mat-mdc-dialog-surface{transform:none}._mat-animation-noopable .mat-mdc-dialog-surface{transition:none}.mat-mdc-dialog-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:2px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mat-mdc-dialog-title{display:block;position:relative;flex-shrink:0;box-sizing:border-box;margin:0 0 1px;padding:var(--mat-dialog-headline-padding, 0 24px 9px)}.mat-mdc-dialog-title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}[dir=rtl] .mat-mdc-dialog-title{text-align:right}.mat-mdc-dialog-container .mat-mdc-dialog-title{color:var(--mdc-dialog-subhead-color, var(--mat-app-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mdc-dialog-subhead-font, var(--mat-app-headline-small-font, inherit));line-height:var(--mdc-dialog-subhead-line-height, var(--mat-app-headline-small-line-height, 1.5rem));font-size:var(--mdc-dialog-subhead-size, var(--mat-app-headline-small-size, 1rem));font-weight:var(--mdc-dialog-subhead-weight, var(--mat-app-headline-small-weight, 400));letter-spacing:var(--mdc-dialog-subhead-tracking, var(--mat-app-headline-small-tracking, 0.03125em))}.mat-mdc-dialog-content{display:block;flex-grow:1;box-sizing:border-box;margin:0;overflow:auto;max-height:65vh}.mat-mdc-dialog-content>:first-child{margin-top:0}.mat-mdc-dialog-content>:last-child{margin-bottom:0}.mat-mdc-dialog-container .mat-mdc-dialog-content{color:var(--mdc-dialog-supporting-text-color, var(--mat-app-on-surface-variant, rgba(0, 0, 0, 0.6)));font-family:var(--mdc-dialog-supporting-text-font, var(--mat-app-body-medium-font, inherit));line-height:var(--mdc-dialog-supporting-text-line-height, var(--mat-app-body-medium-line-height, 1.5rem));font-size:var(--mdc-dialog-supporting-text-size, var(--mat-app-body-medium-size, 1rem));font-weight:var(--mdc-dialog-supporting-text-weight, var(--mat-app-body-medium-weight, 400));letter-spacing:var(--mdc-dialog-supporting-text-tracking, var(--mat-app-body-medium-tracking, 0.03125em))}.mat-mdc-dialog-container .mat-mdc-dialog-content{padding:var(--mat-dialog-content-padding, 20px 24px)}.mat-mdc-dialog-container-with-actions .mat-mdc-dialog-content{padding:var(--mat-dialog-with-actions-content-padding, 20px 24px)}.mat-mdc-dialog-container .mat-mdc-dialog-title+.mat-mdc-dialog-content{padding-top:0}.mat-mdc-dialog-actions{display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid rgba(0,0,0,0);padding:var(--mat-dialog-actions-padding, 8px);justify-content:var(--mat-dialog-actions-alignment, start)}.cdk-high-contrast-active .mat-mdc-dialog-actions{border-top-color:CanvasText}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-start,.mat-mdc-dialog-actions[align=start]{justify-content:start}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-center,.mat-mdc-dialog-actions[align=center]{justify-content:center}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-end,.mat-mdc-dialog-actions[align=end]{justify-content:flex-end}.mat-mdc-dialog-actions .mat-button-base+.mat-button-base,.mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-mdc-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}.mat-mdc-dialog-component-host{display:contents}'],encapsulation:2})}}return n})();const eI="--mat-dialog-transition-duration";function xm(n){return null==n?null:"number"==typeof n?n:n.endsWith("ms")?jn(n.substring(0,n.length-2)):n.endsWith("s")?1e3*jn(n.substring(0,n.length-1)):"0"===n?0:null}var Zf=function(n){return n[n.OPEN=0]="OPEN",n[n.CLOSING=1]="CLOSING",n[n.CLOSED=2]="CLOSED",n}(Zf||{});class tI{constructor(t,e,i){this._ref=t,this._containerInstance=i,this._afterOpened=new mi.B,this._beforeClosed=new mi.B,this._state=Zf.OPEN,this.disableClose=e.disableClose,this.id=t.id,t.addPanelClass("mat-mdc-dialog-panel"),i._animationStateChanged.pipe(hr(r=>"opened"===r.state),Ms(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),i._animationStateChanged.pipe(hr(r=>"closed"===r.state),Ms(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),t.overlayRef.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._finishDialogClose()}),ql(this.backdropClick(),this.keydownEvents().pipe(hr(r=>27===r.keyCode&&!this.disableClose&&!Kl(r)))).subscribe(r=>{this.disableClose||(r.preventDefault(),nI(this,"keydown"===r.type?"keyboard":"mouse"))})}close(t){this._result=t,this._containerInstance._animationStateChanged.pipe(hr(e=>"closing"===e.state),Ms(1)).subscribe(e=>{this._beforeClosed.next(t),this._beforeClosed.complete(),this._ref.overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),e.totalTime+100)}),this._state=Zf.CLOSING,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._ref.closed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._ref.backdropClick}keydownEvents(){return this._ref.keydownEvents}updatePosition(t){let e=this._ref.config.positionStrategy;return t&&(t.left||t.right)?t.left?e.left(t.left):e.right(t.right):e.centerHorizontally(),t&&(t.top||t.bottom)?t.top?e.top(t.top):e.bottom(t.bottom):e.centerVertically(),this._ref.updatePosition(),this}updateSize(t="",e=""){return this._ref.updateSize(t,e),this}addPanelClass(t){return this._ref.addPanelClass(t),this}removePanelClass(t){return this._ref.removePanelClass(t),this}getState(){return this._state}_finishDialogClose(){this._state=Zf.CLOSED,this._ref.close(this._result,{focusOrigin:this._closeInteractionType}),this.componentInstance=null}}function nI(n,t,e){return n._closeInteractionType=t,n.close(e)}const Jf=new o.nKC("MatMdcDialogData"),ZC=new o.nKC("mat-mdc-dialog-default-options"),iI=new o.nKC("mat-mdc-dialog-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.block()}});let oI=0,Es=(()=>{class n{get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}constructor(e,i,r,s,l,u,f,p){this._overlay=e,this._defaultOptions=s,this._scrollStrategy=l,this._parentDialog=u,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new mi.B,this._afterOpenedAtThisLevel=new mi.B,this.dialogConfigClass=XC,this.afterAllClosed=Ky(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(su(void 0))),this._dialog=i.get(WC),this._dialogRefConstructor=tI,this._dialogContainerType=YC,this._dialogDataToken=Jf}open(e,i){let r;(i={...this._defaultOptions||new XC,...i}).id=i.id||"mat-mdc-dialog-"+oI++,i.scrollStrategy=i.scrollStrategy||this._scrollStrategy();const s=this._dialog.open(e,{...i,positionStrategy:this._overlay.position().global().centerHorizontally().centerVertically(),disableClose:!0,closeOnDestroy:!1,closeOnOverlayDetachments:!1,container:{type:this._dialogContainerType,providers:()=>[{provide:this.dialogConfigClass,useValue:i},{provide:gh,useValue:i}]},templateContext:()=>({dialogRef:r}),providers:(l,u,f)=>(r=new this._dialogRefConstructor(l,i,f),r.updatePosition(i?.position),[{provide:this._dialogContainerType,useValue:f},{provide:this._dialogDataToken,useValue:u.data},{provide:this._dialogRefConstructor,useValue:r}])});return r.componentRef=s.componentRef,r.componentInstance=s.componentInstance,this.openDialogs.push(r),this.afterOpened.next(r),r.afterClosed().subscribe(()=>{const l=this.openDialogs.indexOf(r);l>-1&&(this.openDialogs.splice(l,1),this.openDialogs.length||this._getAfterAllClosed().next())}),r}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(e){return this.openDialogs.find(i=>i.id===e)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_closeDialogs(e){let i=e.length;for(;i--;)e[i].close()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Ns),o.KVO(o.zZn),o.KVO(Ne,8),o.KVO(ZC,8),o.KVO(iI),o.KVO(n,12),o.KVO(Uy),o.KVO(o.bc$,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),sI=0,Ta=(()=>{class n{constructor(e,i,r){this.dialogRef=e,this._elementRef=i,this._dialog=r,this.type="button"}ngOnInit(){this.dialogRef||(this.dialogRef=lI(this._elementRef,this._dialog.openDialogs))}ngOnChanges(e){const i=e._matDialogClose||e._matDialogCloseResult;i&&(this.dialogResult=i.currentValue)}_onButtonClick(e){nI(this.dialogRef,0===e.screenX&&0===e.screenY?"keyboard":"mouse",this.dialogResult)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tI,8),o.rXU(o.aKT),o.rXU(Es))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(i,r){1&i&&o.bIt("click",function(l){return r._onButtonClick(l)}),2&i&&o.BMQ("aria-label",r.ariaLabel||null)("type",r.type)},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],type:"type",dialogResult:[0,"mat-dialog-close","dialogResult"],_matDialogClose:[0,"matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],standalone:!0,features:[o.OA$]})}}return n})(),aI=(()=>{class n{constructor(e,i,r){this._dialogRef=e,this._elementRef=i,this._dialog=r}ngOnInit(){this._dialogRef||(this._dialogRef=lI(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{this._onAdd()})}ngOnDestroy(){this._dialogRef?._containerInstance&&Promise.resolve().then(()=>{this._onRemove()})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tI,8),o.rXU(o.aKT),o.rXU(Es))}}static{this.\u0275dir=o.FsC({type:n,standalone:!0})}}return n})(),Zy=(()=>{class n extends aI{constructor(){super(...arguments),this.id="mat-mdc-dialog-title-"+sI++}_onAdd(){this._dialogRef._containerInstance?._addAriaLabelledBy?.(this.id)}_onRemove(){this._dialogRef?._containerInstance?._removeAriaLabelledBy?.(this.id)}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-mdc-dialog-title","mdc-dialog__title"],hostVars:1,hostBindings:function(i,r){2&i&&o.Mr5("id",r.id)},inputs:{id:"id"},exportAs:["matDialogTitle"],standalone:!0,features:[o.Vt3]})}}return n})(),Al=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-mdc-dialog-content","mdc-dialog__content"],standalone:!0,features:[o.nM4([_4])]})}}return n})(),Zl=(()=>{class n extends aI{_onAdd(){this._dialogRef._containerInstance?._updateActionSectionCount?.(1)}_onRemove(){this._dialogRef._containerInstance?._updateActionSectionCount?.(-1)}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-mdc-dialog-actions","mdc-dialog__actions"],hostVars:6,hostBindings:function(i,r){2&i&&o.AVh("mat-mdc-dialog-actions-align-start","start"===r.align)("mat-mdc-dialog-actions-align-center","center"===r.align)("mat-mdc-dialog-actions-align-end","end"===r.align)},inputs:{align:"align"},standalone:!0,features:[o.Vt3]})}}return n})();function lI(n,t){let e=n.nativeElement.parentElement;for(;e&&!e.classList.contains("mat-mdc-dialog-container");)e=e.parentElement;return e?t.find(i=>i.id===e.id):null}const k_=["text"],JC=[[["mat-icon"]],"*"],eM=["mat-icon","*"];function VO(n,t){if(1&n&&o.nrm(0,"mat-pseudo-checkbox",1),2&n){const e=o.XpG();o.Y8G("disabled",e.disabled)("state",e.selected?"checked":"unchecked")}}function Mm(n,t){if(1&n&&o.nrm(0,"mat-pseudo-checkbox",3),2&n){const e=o.XpG();o.Y8G("disabled",e.disabled)}}function uI(n,t){if(1&n&&(o.j41(0,"span",4),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.SpI("(",e.group.label,")")}}const HO=["mat-internal-form-field",""],QO=["*"];class au{constructor(t,e,i,r,s){this._defaultMatcher=t,this.ngControl=e,this._parentFormGroup=i,this._parentForm=r,this._stateChanges=s,this.errorState=!1}updateErrorState(){const t=this.errorState,e=this._parentFormGroup||this._parentForm,i=this.matcher||this._defaultMatcher,r=this.ngControl?this.ngControl.control:null,s=i?.isErrorState(r,e)??!1;s!==t&&(this.errorState=s,this._stateChanges.next())}}let mI=(()=>{class n{isErrorState(e,i){return!!(e&&e.invalid&&(e.touched||i&&i.submitted))}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var Ls=function(n){return n[n.FADING_IN=0]="FADING_IN",n[n.VISIBLE=1]="VISIBLE",n[n.FADING_OUT=2]="FADING_OUT",n[n.HIDDEN=3]="HIDDEN",n}(Ls||{});class KO{constructor(t,e,i,r=!1){this._renderer=t,this.element=e,this.config=i,this._animationForciblyDisabledThroughCss=r,this.state=Ls.HIDDEN}fadeOut(){this._renderer.fadeOutRipple(this)}}const _I=Gf({passive:!0,capture:!0});class iM{constructor(){this._events=new Map,this._delegateEventHandler=t=>{const e=$l(t);e&&this._events.get(t.type)?.forEach((i,r)=>{(r===e||r.contains(e))&&i.forEach(s=>s.handleEvent(t))})}}addHandler(t,e,i,r){const s=this._events.get(e);if(s){const l=s.get(i);l?l.add(r):s.set(i,new Set([r]))}else this._events.set(e,new Map([[i,new Set([r])]])),t.runOutsideAngular(()=>{document.addEventListener(e,this._delegateEventHandler,_I)})}removeHandler(t,e,i){const r=this._events.get(t);if(!r)return;const s=r.get(e);s&&(s.delete(i),0===s.size&&r.delete(e),0===r.size&&(this._events.delete(t),document.removeEventListener(t,this._delegateEventHandler,_I)))}}const rM={enterDuration:225,exitDuration:150},Tm=Gf({passive:!0,capture:!0}),YO=["mousedown","touchstart"],R_=["mouseup","mouseleave","touchend","touchcancel"];class Im{static{this._eventManager=new iM}constructor(t,e,i,r){this._target=t,this._ngZone=e,this._platform=r,this._isPointerDown=!1,this._activeRipples=new Map,this._pointerUpEventsRegistered=!1,r.isBrowser&&(this._containerElement=Mi(i))}fadeInRipple(t,e,i={}){const r=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),s={...rM,...i.animation};i.centered&&(t=r.left+r.width/2,e=r.top+r.height/2);const l=i.radius||function bI(n,t,e){const i=Math.max(Math.abs(n-e.left),Math.abs(n-e.right)),r=Math.max(Math.abs(t-e.top),Math.abs(t-e.bottom));return Math.sqrt(i*i+r*r)}(t,e,r),u=t-r.left,f=e-r.top,p=s.enterDuration,m=document.createElement("div");m.classList.add("mat-ripple-element"),m.style.left=u-l+"px",m.style.top=f-l+"px",m.style.height=2*l+"px",m.style.width=2*l+"px",null!=i.color&&(m.style.backgroundColor=i.color),m.style.transitionDuration=`${p}ms`,this._containerElement.appendChild(m);const _=window.getComputedStyle(m),w=_.transitionDuration,F="none"===_.transitionProperty||"0s"===w||"0s, 0s"===w||0===r.width&&0===r.height,D=new KO(this,m,i,F);m.style.transform="scale3d(1, 1, 1)",D.state=Ls.FADING_IN,i.persistent||(this._mostRecentTransientRipple=D);let T=null;return!F&&(p||s.exitDuration)&&this._ngZone.runOutsideAngular(()=>{const I=()=>{T&&(T.fallbackTimer=null),clearTimeout(R),this._finishRippleTransition(D)},O=()=>this._destroyRipple(D),R=setTimeout(O,p+100);m.addEventListener("transitionend",I),m.addEventListener("transitioncancel",O),T={onTransitionEnd:I,onTransitionCancel:O,fallbackTimer:R}}),this._activeRipples.set(D,T),(F||!p)&&this._finishRippleTransition(D),D}fadeOutRipple(t){if(t.state===Ls.FADING_OUT||t.state===Ls.HIDDEN)return;const e=t.element,i={...rM,...t.config.animation};e.style.transitionDuration=`${i.exitDuration}ms`,e.style.opacity="0",t.state=Ls.FADING_OUT,(t._animationForciblyDisabledThroughCss||!i.exitDuration)&&this._finishRippleTransition(t)}fadeOutAll(){this._getActiveRipples().forEach(t=>t.fadeOut())}fadeOutAllNonPersistent(){this._getActiveRipples().forEach(t=>{t.config.persistent||t.fadeOut()})}setupTriggerEvents(t){const e=Mi(t);!this._platform.isBrowser||!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,YO.forEach(i=>{Im._eventManager.addHandler(this._ngZone,i,e,this)}))}handleEvent(t){"mousedown"===t.type?this._onMousedown(t):"touchstart"===t.type?this._onTouchStart(t):this._onPointerUp(),this._pointerUpEventsRegistered||(this._ngZone.runOutsideAngular(()=>{R_.forEach(e=>{this._triggerElement.addEventListener(e,this,Tm)})}),this._pointerUpEventsRegistered=!0)}_finishRippleTransition(t){t.state===Ls.FADING_IN?this._startFadeOutTransition(t):t.state===Ls.FADING_OUT&&this._destroyRipple(t)}_startFadeOutTransition(t){const e=t===this._mostRecentTransientRipple,{persistent:i}=t.config;t.state=Ls.VISIBLE,!i&&(!e||!this._isPointerDown)&&t.fadeOut()}_destroyRipple(t){const e=this._activeRipples.get(t)??null;this._activeRipples.delete(t),this._activeRipples.size||(this._containerRect=null),t===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),t.state=Ls.HIDDEN,null!==e&&(t.element.removeEventListener("transitionend",e.onTransitionEnd),t.element.removeEventListener("transitioncancel",e.onTransitionCancel),null!==e.fallbackTimer&&clearTimeout(e.fallbackTimer)),t.element.remove()}_onMousedown(t){const e=_m(t),i=this._lastTouchStartEvent&&Date.now(){!t.config.persistent&&(t.state===Ls.VISIBLE||t.config.terminateOnPointerUp&&t.state===Ls.FADING_IN)&&t.fadeOut()}))}_getActiveRipples(){return Array.from(this._activeRipples.keys())}_removeTriggerEvents(){const t=this._triggerElement;t&&(YO.forEach(e=>Im._eventManager.removeHandler(e,t,this)),this._pointerUpEventsRegistered&&(R_.forEach(e=>t.removeEventListener(e,this,Tm)),this._pointerUpEventsRegistered=!1))}}const Fm=new o.nKC("mat-ripple-global-options");let ml=(()=>{class n{get disabled(){return this._disabled}set disabled(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}constructor(e,i,r,s,l){this._elementRef=e,this._animationMode=l,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=s||{},this._rippleRenderer=new Im(this,i,e,r)}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:{...this._globalOptions.animation,..."NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{},...this.animation},terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(e,i=0,r){return"number"==typeof e?this._rippleRenderer.fadeInRipple(e,i,{...this.rippleConfig,...r}):this._rippleRenderer.fadeInRipple(0,0,{...this.rippleConfig,...e})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi),o.rXU(Io),o.rXU(Fm,8),o.rXU(o.bc$,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mat-ripple-unbounded",r.unbounded)},inputs:{color:[0,"matRippleColor","color"],unbounded:[0,"matRippleUnbounded","unbounded"],centered:[0,"matRippleCentered","centered"],radius:[0,"matRippleRadius","radius"],animation:[0,"matRippleAnimation","animation"],disabled:[0,"matRippleDisabled","disabled"],trigger:[0,"matRippleTrigger","trigger"]},exportAs:["matRipple"],standalone:!0})}}return n})(),vI=(()=>{class n{constructor(e){this._animationMode=e,this.state="unchecked",this.disabled=!1,this.appearance="full"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(i,r){2&i&&o.AVh("mat-pseudo-checkbox-indeterminate","indeterminate"===r.state)("mat-pseudo-checkbox-checked","checked"===r.state)("mat-pseudo-checkbox-disabled",r.disabled)("mat-pseudo-checkbox-minimal","minimal"===r.appearance)("mat-pseudo-checkbox-full","full"===r.appearance)("_mat-animation-noopable","NoopAnimations"===r._animationMode)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},standalone:!0,features:[o.aNF],decls:0,vars:0,template:function(i,r){},styles:['.mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-minimal-pseudo-checkbox-selected-checkmark-color, var(--mat-app-primary))}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color)}.mat-pseudo-checkbox-full{border-color:var(--mat-full-pseudo-checkbox-unselected-icon-color, var(--mat-app-on-surface-variant));border-width:2px;border-style:solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-disabled{border-color:var(--mat-full-pseudo-checkbox-disabled-unselected-icon-color)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{background-color:var(--mat-full-pseudo-checkbox-selected-icon-color, var(--mat-app-primary));border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-full-pseudo-checkbox-selected-checkmark-color, var(--mat-app-on-primary))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background-color:var(--mat-full-pseudo-checkbox-disabled-selected-icon-color)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-full-pseudo-checkbox-disabled-selected-checkmark-color, var(--mat-app-surface))}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px}'],encapsulation:2,changeDetection:0})}}return n})();const yI=new o.nKC("MAT_OPTION_PARENT_COMPONENT"),wI=new o.nKC("MatOptgroup");let ZO=0;class t1{constructor(t,e=!1){this.source=t,this.isUserInput=e}}let yd=(()=>{class n{get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(e){this._disabled=e}get disableRipple(){return!(!this._parent||!this._parent.disableRipple)}get hideSingleSelectionIndicator(){return!(!this._parent||!this._parent.hideSingleSelectionIndicator)}constructor(e,i,r,s){this._element=e,this._changeDetectorRef=i,this._parent=r,this.group=s,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+ZO++,this.onSelectionChange=new o.bkB,this._stateChanges=new mi.B}get active(){return this._active}get viewValue(){return(this._text?.nativeElement.textContent||"").trim()}select(e=!0){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),e&&this._emitSelectionChangeEvent())}deselect(e=!0){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),e&&this._emitSelectionChangeEvent())}focus(e,i){const r=this._getHostElement();"function"==typeof r.focus&&r.focus(i)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(e){(13===e.keyCode||32===e.keyCode)&&!Kl(e)&&(this._selectViaInteraction(),e.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue&&this._stateChanges.next(),this._mostRecentViewValue=e)}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(e=!1){this.onSelectionChange.emit(new t1(this,e))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.gRc),o.rXU(yI,8),o.rXU(wI,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-option"]],viewQuery:function(i,r){if(1&i&&o.GBs(k_,7),2&i){let s;o.mGM(s=o.lsd())&&(r._text=s.first)}},hostAttrs:["role","option",1,"mat-mdc-option","mdc-list-item"],hostVars:11,hostBindings:function(i,r){1&i&&o.bIt("click",function(){return r._selectViaInteraction()})("keydown",function(l){return r._handleKeydown(l)}),2&i&&(o.Mr5("id",r.id),o.BMQ("aria-selected",r.selected)("aria-disabled",r.disabled.toString()),o.AVh("mdc-list-item--selected",r.selected)("mat-mdc-option-multiple",r.multiple)("mat-mdc-option-active",r.active)("mdc-list-item--disabled",r.disabled))},inputs:{value:"value",id:"id",disabled:[2,"disabled","disabled",o.L39]},outputs:{onSelectionChange:"onSelectionChange"},exportAs:["matOption"],standalone:!0,features:[o.GFd,o.aNF],ngContentSelectors:eM,decls:8,vars:5,consts:[["text",""],["aria-hidden","true",1,"mat-mdc-option-pseudo-checkbox",3,"disabled","state"],[1,"mdc-list-item__primary-text"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"cdk-visually-hidden"],["aria-hidden","true","mat-ripple","",1,"mat-mdc-option-ripple","mat-mdc-focus-indicator",3,"matRippleTrigger","matRippleDisabled"]],template:function(i,r){1&i&&(o.NAR(JC),o.DNE(0,VO,1,2,"mat-pseudo-checkbox",1),o.SdG(1),o.j41(2,"span",2,0),o.SdG(4,1),o.k0s(),o.DNE(5,Mm,1,1,"mat-pseudo-checkbox",3)(6,uI,2,1,"span",4),o.nrm(7,"div",5)),2&i&&(o.vxM(r.multiple?0:-1),o.R7$(5),o.vxM(r.multiple||!r.selected||r.hideSingleSelectionIndicator?-1:5),o.R7$(),o.vxM(r.group&&r.group._inert?6:-1),o.R7$(),o.Y8G("matRippleTrigger",r._getHostElement())("matRippleDisabled",r.disabled||r.disableRipple))},dependencies:[vI,ml],styles:['.mat-mdc-option{-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color, var(--mat-app-on-surface));font-family:var(--mat-option-label-text-font, var(--mat-app-label-large-font));line-height:var(--mat-option-label-text-line-height, var(--mat-app-label-large-line-height));font-size:var(--mat-option-label-text-size, var(--mat-app-body-large-size));letter-spacing:var(--mat-option-label-text-tracking, var(--mat-app-label-large-tracking));font-weight:var(--mat-option-label-text-weight, var(--mat-app-body-large-weight))}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color)}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color);outline:0}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color, var(--mat-app-on-secondary-container))}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-multiple){background-color:var(--mat-option-selected-state-layer-color, var(--mat-app-secondary-container))}.mat-mdc-option .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-option-selected-state-label-text-color, var(--mat-app-on-secondary-container))}.mat-mdc-option.mdc-list-item{align-items:center;background:rgba(0,0,0,0)}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}.cdk-high-contrast-active .mat-mdc-option.mdc-list-item--selected:not(.mat-mdc-option-multiple)::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .cdk-high-contrast-active .mat-mdc-option.mdc-list-item--selected:not(.mat-mdc-option-multiple)::after{right:auto;left:16px}.mat-mdc-option-multiple{--mdc-list-list-item-selected-container-color:var(--mdc-list-list-item-container-color, transparent)}.mat-mdc-option-active .mat-mdc-focus-indicator::before{content:""}'],encapsulation:2,changeDetection:0})}}return n})();const n1={capture:!0},oM=["focus","mousedown","mouseenter","touchstart"],sM="mat-ripple-loader-uninitialized",r1="mat-ripple-loader-class-name",o1="mat-ripple-loader-centered",P_="mat-ripple-loader-disabled";let CI=(()=>{class n{constructor(){this._document=(0,o.WQX)(V,{optional:!0}),this._animationMode=(0,o.WQX)(o.bc$,{optional:!0}),this._globalRippleOptions=(0,o.WQX)(Fm,{optional:!0}),this._platform=(0,o.WQX)(Io),this._ngZone=(0,o.WQX)(o.SKi),this._hosts=new Map,this._onInteraction=e=>{const i=$l(e);if(i instanceof HTMLElement){const r=i.closest(`[${sM}="${this._globalRippleOptions?.namespace??""}"]`);r&&this._createRipple(r)}},this._ngZone.runOutsideAngular(()=>{for(const e of oM)this._document?.addEventListener(e,this._onInteraction,n1)})}ngOnDestroy(){const e=this._hosts.keys();for(const i of e)this.destroyRipple(i);for(const i of oM)this._document?.removeEventListener(i,this._onInteraction,n1)}configureRipple(e,i){e.setAttribute(sM,this._globalRippleOptions?.namespace??""),(i.className||!e.hasAttribute(r1))&&e.setAttribute(r1,i.className||""),i.centered&&e.setAttribute(o1,""),i.disabled&&e.setAttribute(P_,"")}getRipple(e){return this._hosts.get(e)||this._createRipple(e)}setDisabled(e,i){const r=this._hosts.get(e);r?r.disabled=i:i?e.setAttribute(P_,""):e.removeAttribute(P_)}_createRipple(e){if(!this._document)return;const i=this._hosts.get(e);if(i)return i;e.querySelector(".mat-ripple")?.remove();const r=this._document.createElement("span");r.classList.add("mat-ripple",e.getAttribute(r1)),e.append(r);const s=new ml(new o.aKT(r),this._ngZone,this._platform,this._globalRippleOptions?this._globalRippleOptions:void 0,this._animationMode?this._animationMode:void 0);return s._isInitialized=!0,s.trigger=e,s.centered=e.hasAttribute(o1),s.disabled=e.hasAttribute(P_),this.attachRipple(e,s),s}attachRipple(e,i){e.removeAttribute(sM),this._hosts.set(e,i)}destroyRipple(e){const i=this._hosts.get(e);i&&(i.ngOnDestroy(),this._hosts.delete(e))}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),MI=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["div","mat-internal-form-field",""]],hostAttrs:[1,"mdc-form-field","mat-internal-form-field"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mdc-form-field--align-end","before"===r.labelPosition)},inputs:{labelPosition:"labelPosition"},standalone:!0,features:[o.aNF],attrs:HO,ngContentSelectors:QO,decls:1,vars:0,template:function(i,r){1&i&&(o.NAR(),o.SdG(0))},styles:[".mat-internal-form-field{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;vertical-align:middle}.mat-internal-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mat-internal-form-field>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end .mdc-form-field--align-end label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0}"],encapsulation:2,changeDetection:0})}}return n})();const tN=["mat-button",""],nN=[[["",8,"material-icons",3,"iconPositionEnd",""],["mat-icon",3,"iconPositionEnd",""],["","matButtonIcon","",3,"iconPositionEnd",""]],"*",[["","iconPositionEnd","",8,"material-icons"],["mat-icon","iconPositionEnd",""],["","matButtonIcon","","iconPositionEnd",""]]],aM=[".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd]), [matButtonIcon]:not([iconPositionEnd])","*",".material-icons[iconPositionEnd], mat-icon[iconPositionEnd], [matButtonIcon][iconPositionEnd]"],II=new o.nKC("MAT_BUTTON_CONFIG"),lM=[{attribute:"mat-button",mdcClasses:["mdc-button","mat-mdc-button"]},{attribute:"mat-flat-button",mdcClasses:["mdc-button","mdc-button--unelevated","mat-mdc-unelevated-button"]},{attribute:"mat-raised-button",mdcClasses:["mdc-button","mdc-button--raised","mat-mdc-raised-button"]},{attribute:"mat-stroked-button",mdcClasses:["mdc-button","mdc-button--outlined","mat-mdc-outlined-button"]},{attribute:"mat-fab",mdcClasses:["mdc-fab","mat-mdc-fab-base","mat-mdc-fab"]},{attribute:"mat-mini-fab",mdcClasses:["mdc-fab","mat-mdc-fab-base","mdc-fab--mini","mat-mdc-mini-fab"]},{attribute:"mat-icon-button",mdcClasses:["mdc-icon-button","mat-mdc-icon-button"]}];let DI=(()=>{class n{get ripple(){return this._rippleLoader?.getRipple(this._elementRef.nativeElement)}set ripple(e){this._rippleLoader?.attachRipple(this._elementRef.nativeElement,e)}get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=e,this._updateRippleDisabled()}get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._updateRippleDisabled()}constructor(e,i,r,s){this._elementRef=e,this._platform=i,this._ngZone=r,this._animationMode=s,this._focusMonitor=(0,o.WQX)(Yl),this._rippleLoader=(0,o.WQX)(CI),this._isFab=!1,this._disableRipple=!1,this._disabled=!1;const l=(0,o.WQX)(II,{optional:!0}),u=e.nativeElement,f=u.classList;this.disabledInteractive=l?.disabledInteractive??!1,this.color=l?.color??null,this._rippleLoader?.configureRipple(u,{className:"mat-mdc-button-ripple"});for(const{attribute:p,mdcClasses:m}of lM)u.hasAttribute(p)&&f.add(...m)}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement)}focus(e="program",i){e?this._focusMonitor.focusVia(this._elementRef.nativeElement,e,i):this._elementRef.nativeElement.focus(i)}_getAriaDisabled(){return null!=this.ariaDisabled?this.ariaDisabled:!(!this.disabled||!this.disabledInteractive)||null}_getDisabledAttribute(){return!(this.disabledInteractive||!this.disabled)||null}_updateRippleDisabled(){this._rippleLoader?.setDisabled(this._elementRef.nativeElement,this.disableRipple||this.disabled)}static{this.\u0275fac=function(i){o.QTQ()}}static{this.\u0275dir=o.FsC({type:n,inputs:{color:"color",disableRipple:[2,"disableRipple","disableRipple",o.L39],disabled:[2,"disabled","disabled",o.L39],ariaDisabled:[2,"aria-disabled","ariaDisabled",o.L39],disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39]},features:[o.GFd]})}}return n})(),ns=(()=>{class n extends DI{constructor(e,i,r,s){super(e,i,r,s)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Io),o.rXU(o.SKi),o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-flat-button",""],["button","mat-stroked-button",""]],hostVars:14,hostBindings:function(i,r){2&i&&(o.BMQ("disabled",r._getDisabledAttribute())("aria-disabled",r._getAriaDisabled()),o.HbH(r.color?"mat-"+r.color:""),o.AVh("mat-mdc-button-disabled",r.disabled)("mat-mdc-button-disabled-interactive",r.disabledInteractive)("_mat-animation-noopable","NoopAnimations"===r._animationMode)("mat-unthemed",!r.color)("mat-mdc-button-base",!0))},exportAs:["matButton"],standalone:!0,features:[o.Vt3,o.aNF],attrs:tN,ngContentSelectors:aM,decls:7,vars:4,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-mdc-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(i,r){1&i&&(o.NAR(nN),o.nrm(0,"span",0),o.SdG(1),o.j41(2,"span",1),o.SdG(3,1),o.k0s(),o.SdG(4,2),o.nrm(5,"span",2)(6,"span",3)),2&i&&o.AVh("mdc-button__ripple",!r._isFab)("mdc-fab__ripple",r._isFab)},styles:['.mat-mdc-button-base{text-decoration:none}.mdc-button{-webkit-user-select:none;user-select:none;position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:64px;border:none;outline:none;line-height:inherit;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:rgba(0,0,0,0);padding:0 8px}.mdc-button::-moz-focus-inner{padding:0;border:0}.mdc-button:active{outline:none}.mdc-button:hover{cursor:pointer}.mdc-button:disabled{cursor:default;pointer-events:none}.mdc-button[hidden]{display:none}.mdc-button .mdc-button__label{position:relative}.mat-mdc-button{padding:0 var(--mat-text-button-horizontal-padding, 8px);height:var(--mdc-text-button-container-height);font-family:var(--mdc-text-button-label-text-font, var(--mat-app-label-large-font));font-size:var(--mdc-text-button-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mdc-text-button-label-text-tracking, var(--mat-app-label-large-tracking));text-transform:var(--mdc-text-button-label-text-transform);font-weight:var(--mdc-text-button-label-text-weight, var(--mat-app-label-large-weight))}.mat-mdc-button:has(.material-icons,mat-icon,[matButtonIcon]){padding:0 var(--mat-text-button-with-icon-horizontal-padding, 8px)}.mat-mdc-button>.mat-icon{margin-right:var(--mat-text-button-icon-spacing, 8px);margin-left:var(--mat-text-button-icon-offset, 0)}[dir=rtl] .mat-mdc-button>.mat-icon{margin-right:var(--mat-text-button-icon-offset, 0);margin-left:var(--mat-text-button-icon-spacing, 8px)}.mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-text-button-icon-offset, 0);margin-left:var(--mat-text-button-icon-spacing, 8px)}[dir=rtl] .mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-text-button-icon-spacing, 8px);margin-left:var(--mat-text-button-icon-offset, 0)}.mat-mdc-button .mat-ripple-element{background-color:var(--mat-text-button-ripple-color)}.mat-mdc-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-text-button-state-layer-color, var(--mat-app-primary))}.mat-mdc-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-text-button-disabled-state-layer-color, var(--mat-app-on-surface-variant))}.mat-mdc-button:hover .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-text-button-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-button.cdk-program-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-button.cdk-keyboard-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-button.mat-mdc-button-disabled-interactive:focus .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-text-button-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mat-mdc-button:active .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-text-button-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity))}.mat-mdc-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%);display:var(--mat-text-button-touch-target-display)}.mat-mdc-button,.mat-mdc-button .mdc-button__ripple{border-radius:var(--mdc-text-button-container-shape, var(--mat-app-corner-full))}.mat-mdc-button:not(:disabled){color:var(--mdc-text-button-label-text-color, var(--mat-app-primary))}.mat-mdc-button[disabled],.mat-mdc-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-text-button-disabled-label-text-color)}.mat-mdc-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-unelevated-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 var(--mat-filled-button-horizontal-padding, 16px);height:var(--mdc-filled-button-container-height);font-family:var(--mdc-filled-button-label-text-font, var(--mat-app-label-large-font));font-size:var(--mdc-filled-button-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mdc-filled-button-label-text-tracking, var(--mat-app-label-large-tracking));text-transform:var(--mdc-filled-button-label-text-transform);font-weight:var(--mdc-filled-button-label-text-weight, var(--mat-app-label-large-weight))}.mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-filled-button-icon-spacing, 8px);margin-left:var(--mat-filled-button-icon-offset, -4px)}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-filled-button-icon-offset, -4px);margin-left:var(--mat-filled-button-icon-spacing, 8px)}.mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-filled-button-icon-offset, -4px);margin-left:var(--mat-filled-button-icon-spacing, 8px)}[dir=rtl] .mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-filled-button-icon-spacing, 8px);margin-left:var(--mat-filled-button-icon-offset, -4px)}.mat-mdc-unelevated-button .mat-ripple-element{background-color:var(--mat-filled-button-ripple-color)}.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-filled-button-state-layer-color, var(--mat-app-on-primary))}.mat-mdc-unelevated-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-filled-button-disabled-state-layer-color, var(--mat-app-on-surface-variant))}.mat-mdc-unelevated-button:hover .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-filled-button-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-unelevated-button.cdk-program-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.cdk-keyboard-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive:focus .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-filled-button-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mat-mdc-unelevated-button:active .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-filled-button-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity))}.mat-mdc-unelevated-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%);display:var(--mat-filled-button-touch-target-display)}.mat-mdc-unelevated-button:not(:disabled){color:var(--mdc-filled-button-label-text-color, var(--mat-app-on-primary));background-color:var(--mdc-filled-button-container-color, var(--mat-app-primary))}.mat-mdc-unelevated-button,.mat-mdc-unelevated-button .mdc-button__ripple{border-radius:var(--mdc-filled-button-container-shape, var(--mat-app-corner-full))}.mat-mdc-unelevated-button[disabled],.mat-mdc-unelevated-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-filled-button-disabled-label-text-color);background-color:var(--mdc-filled-button-disabled-container-color)}.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-raised-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 var(--mat-protected-button-horizontal-padding, 16px);box-shadow:var(--mdc-protected-button-container-elevation-shadow, var(--mat-app-level1));height:var(--mdc-protected-button-container-height);font-family:var(--mdc-protected-button-label-text-font, var(--mat-app-label-large-font));font-size:var(--mdc-protected-button-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mdc-protected-button-label-text-tracking, var(--mat-app-label-large-tracking));text-transform:var(--mdc-protected-button-label-text-transform);font-weight:var(--mdc-protected-button-label-text-weight, var(--mat-app-label-large-weight))}.mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-protected-button-icon-spacing, 8px);margin-left:var(--mat-protected-button-icon-offset, -4px)}[dir=rtl] .mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-protected-button-icon-offset, -4px);margin-left:var(--mat-protected-button-icon-spacing, 8px)}.mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-protected-button-icon-offset, -4px);margin-left:var(--mat-protected-button-icon-spacing, 8px)}[dir=rtl] .mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-protected-button-icon-spacing, 8px);margin-left:var(--mat-protected-button-icon-offset, -4px)}.mat-mdc-raised-button .mat-ripple-element{background-color:var(--mat-protected-button-ripple-color)}.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-protected-button-state-layer-color, var(--mat-app-primary))}.mat-mdc-raised-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-protected-button-disabled-state-layer-color, var(--mat-app-on-surface-variant))}.mat-mdc-raised-button:hover .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-protected-button-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-raised-button.cdk-program-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.cdk-keyboard-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.mat-mdc-button-disabled-interactive:focus .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-protected-button-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mat-mdc-raised-button:active .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-protected-button-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity))}.mat-mdc-raised-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%);display:var(--mat-protected-button-touch-target-display)}.mat-mdc-raised-button:not(:disabled){color:var(--mdc-protected-button-label-text-color, var(--mat-app-primary));background-color:var(--mdc-protected-button-container-color, var(--mat-app-surface))}.mat-mdc-raised-button,.mat-mdc-raised-button .mdc-button__ripple{border-radius:var(--mdc-protected-button-container-shape, var(--mat-app-corner-full))}.mat-mdc-raised-button:hover{box-shadow:var(--mdc-protected-button-hover-container-elevation-shadow, var(--mat-app-level2))}.mat-mdc-raised-button:focus{box-shadow:var(--mdc-protected-button-focus-container-elevation-shadow, var(--mat-app-level1))}.mat-mdc-raised-button:active,.mat-mdc-raised-button:focus:active{box-shadow:var(--mdc-protected-button-pressed-container-elevation-shadow, var(--mat-app-level1))}.mat-mdc-raised-button[disabled],.mat-mdc-raised-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-protected-button-disabled-label-text-color);background-color:var(--mdc-protected-button-disabled-container-color)}.mat-mdc-raised-button[disabled].mat-mdc-button-disabled,.mat-mdc-raised-button.mat-mdc-button-disabled.mat-mdc-button-disabled{box-shadow:var(--mdc-protected-button-disabled-container-elevation-shadow, var(--mat-app-level0))}.mat-mdc-raised-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-outlined-button{border-style:solid;transition:border 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 var(--mat-outlined-button-horizontal-padding, 15px);height:var(--mdc-outlined-button-container-height);font-family:var(--mdc-outlined-button-label-text-font, var(--mat-app-label-large-font));font-size:var(--mdc-outlined-button-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mdc-outlined-button-label-text-tracking, var(--mat-app-label-large-tracking));text-transform:var(--mdc-outlined-button-label-text-transform);font-weight:var(--mdc-outlined-button-label-text-weight, var(--mat-app-label-large-weight));border-radius:var(--mdc-outlined-button-container-shape, var(--mat-app-corner-full));border-width:var(--mdc-outlined-button-outline-width)}.mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-outlined-button-icon-spacing, 8px);margin-left:var(--mat-outlined-button-icon-offset, -4px)}[dir=rtl] .mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-outlined-button-icon-offset, -4px);margin-left:var(--mat-outlined-button-icon-spacing, 8px)}.mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-outlined-button-icon-offset, -4px);margin-left:var(--mat-outlined-button-icon-spacing, 8px)}[dir=rtl] .mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-outlined-button-icon-spacing, 8px);margin-left:var(--mat-outlined-button-icon-offset, -4px)}.mat-mdc-outlined-button .mat-ripple-element{background-color:var(--mat-outlined-button-ripple-color)}.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-outlined-button-state-layer-color, var(--mat-app-primary))}.mat-mdc-outlined-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-outlined-button-disabled-state-layer-color, var(--mat-app-on-surface-variant))}.mat-mdc-outlined-button:hover .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-outlined-button-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-outlined-button.cdk-program-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.cdk-keyboard-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive:focus .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-outlined-button-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mat-mdc-outlined-button:active .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-outlined-button-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity))}.mat-mdc-outlined-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%);display:var(--mat-outlined-button-touch-target-display)}.mat-mdc-outlined-button:not(:disabled){color:var(--mdc-outlined-button-label-text-color, var(--mat-app-primary));border-color:var(--mdc-outlined-button-outline-color, var(--mat-app-outline))}.mat-mdc-outlined-button[disabled],.mat-mdc-outlined-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-outlined-button-disabled-label-text-color);border-color:var(--mdc-outlined-button-disabled-outline-color)}.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-outlined-button .mdc-button__ripple{border-width:var(--mdc-outlined-button-outline-width);border-style:solid;border-color:rgba(0,0,0,0)}.mat-mdc-button,.mat-mdc-unelevated-button,.mat-mdc-raised-button,.mat-mdc-outlined-button{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-button .mdc-button__label,.mat-mdc-button .mat-icon,.mat-mdc-unelevated-button .mdc-button__label,.mat-mdc-unelevated-button .mat-icon,.mat-mdc-raised-button .mdc-button__label,.mat-mdc-raised-button .mat-icon,.mat-mdc-outlined-button .mdc-button__label,.mat-mdc-outlined-button .mat-icon{z-index:1;position:relative}.mat-mdc-button .mat-mdc-focus-indicator,.mat-mdc-unelevated-button .mat-mdc-focus-indicator,.mat-mdc-raised-button .mat-mdc-focus-indicator,.mat-mdc-outlined-button .mat-mdc-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute}.mat-mdc-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-unelevated-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-raised-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-outlined-button:focus .mat-mdc-focus-indicator::before{content:""}.mat-mdc-button._mat-animation-noopable,.mat-mdc-unelevated-button._mat-animation-noopable,.mat-mdc-raised-button._mat-animation-noopable,.mat-mdc-outlined-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon,.mat-mdc-raised-button>.mat-icon,.mat-mdc-outlined-button>.mat-icon{display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem}.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px}.mat-mdc-unelevated-button .mat-mdc-focus-indicator::before,.mat-mdc-raised-button .mat-mdc-focus-indicator::before{margin:calc(calc(var(--mat-mdc-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-outlined-button .mat-mdc-focus-indicator::before{margin:calc(calc(var(--mat-mdc-focus-indicator-border-width, 3px) + 3px)*-1)}',".cdk-high-contrast-active .mat-mdc-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-unelevated-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-raised-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-outlined-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-icon-button{outline:solid 1px}"],encapsulation:2,changeDetection:0})}}return n})();function kI(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",5),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.data.resolveErrorData.onResolveErrorClick())}),o.EFF(1),o.k0s()}if(2&n){const e=o.XpG();o.R7$(),o.SpI(" ",e.data.resolveErrorData.buttonText," ")}}let lu=(()=>{class n{constructor(e){this.data=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Jf))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-error-dialog"]],standalone:!0,features:[o.aNF],decls:7,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content","",3,"innerHTML"],["mat-dialog-actions","","align","end"],["mat-button","","mat-dialog-close","",3,"click",4,"ngIf"],["mat-button","","mat-dialog-close",""],["mat-button","","mat-dialog-close","",3,"click"]],template:function(i,r){1&i&&(o.j41(0,"h1",0),o.EFF(1),o.k0s(),o.nrm(2,"div",1),o.j41(3,"div",2),o.DNE(4,kI,2,1,"button",3),o.j41(5,"button",4),o.EFF(6,"OK"),o.k0s()()),2&i&&(o.R7$(),o.JRh(r.data.title),o.R7$(),o.Y8G("innerHTML",r.data.message,o.npT),o.R7$(2),o.Y8G("ngIf",r.data.resolveErrorData))},dependencies:[Zy,Al,Zl,Gn,ns,Ta],encapsulation:2})}}return n})();function RI(n){return{title:"Something is wrong with the loaded file(s)",message:[...PI(n),...OI(n)].join("")}}function PI(n){const t=n.filter(e=>e.errors.length>0);return t.length>0?["

Errors

",...t.map(e=>function NI(n){return`

${n.fileName}: ${LI(' ',n.errors)}

`}(e))]:[]}function OI(n){const t=n.filter(e=>e.warnings.length>0);return t.length>0?["

Warnings

",...t.map(e=>function uN(n){return`

${n.fileName}: ${LI(' ',n.warnings)}

`}(e))]:[]}function LI(n,t){return`

${t.map(e=>n+e).join("
")}

`}var hN=function(n){return n.hide="hide",n.exclude="exclude",n}(hN||{}),u9=v(9812),O_=v.n(u9);function pN(n){return!n||Array.isArray(n.nodes)||Array.isArray(n.edges)?{nodes:{},edges:{}}:{nodes:n.nodes??{},edges:n.edges??{}}}function h9(n){return n||{}}function UI(n){for(const t of n)t.type===hN.hide&&(t.type="flatten");return n}function HI(n){let t=null;try{const e="string"==typeof n?JSON.parse(n):n;if("data"in e&&"checksum"in e)return t=e.data,t.fileChecksum=e.checksum||O_()(JSON.stringify(e.data)),t;if(!e.fileChecksum){const i="string"==typeof n?n:JSON.stringify(n);e.fileChecksum=O_()(i)}return e}catch{}return t}var f9=v(7172),AN=v.n(f9);const s1=JSON.parse('{"rE":"1.133.1","f4":{"X":"1.3"}}'),p9=JSON.parse('{"$ref":"#/definitions/ExportCCFile","$schema":"http://json-schema.org/draft-07/schema#","definitions":{"AttributeTypes":{"properties":{"edges":{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"},"nodes":{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}},"type":"object"},"CodeMapNode":{"properties":{"attributes":{"$ref":"#/definitions/KeyValuePair"},"children":{"items":{"$ref":"#/definitions/CodeMapNode"},"type":"array"},"deltas":{"additionalProperties":{"type":"number"},"type":"object"},"edgeAttributes":{"additionalProperties":{"$ref":"#/definitions/EdgeMetricCount"},"type":"object"},"fixedPosition":{"$ref":"#/definitions/FixedPosition"},"id":{"type":"number"},"isExcluded":{"type":"boolean"},"isFlattened":{"type":"boolean"},"link":{"type":"string"},"name":{"type":"string"},"path":{"type":"string"},"type":{"$ref":"#/definitions/NodeType"}},"required":["name","type"],"type":"object"},"Edge":{"properties":{"attributes":{"$ref":"#/definitions/KeyValuePair"},"fromNodeName":{"type":"string"},"toNodeName":{"type":"string"},"visible":{"$ref":"#/definitions/EdgeVisibility"}},"required":["attributes","fromNodeName","toNodeName"],"type":"object"},"EdgeMetricCount":{"properties":{"incoming":{"type":"number"},"outgoing":{"type":"number"}},"required":["incoming","outgoing"],"type":"object"},"EdgeVisibility":{"enum":["both","from","none","to"],"type":"string"},"ExportBlacklistItem":{"properties":{"path":{"type":"string"},"type":{"$ref":"#/definitions/ExportBlacklistType"}},"required":["path","type"],"type":"object"},"ExportBlacklistType":{"enum":["exclude","hide"],"type":"string"},"ExportCCFile":{"properties":{"apiVersion":{"type":"string"},"attributeTypes":{"anyOf":[{"$ref":"#/definitions/OldAttributeTypes"},{"$ref":"#/definitions/AttributeTypes"}]},"blacklist":{"items":{"$ref":"#/definitions/ExportBlacklistItem"},"type":"array"},"edges":{"items":{"$ref":"#/definitions/Edge"},"type":"array"},"markedPackages":{"items":{"$ref":"#/definitions/MarkedPackage"},"type":"array"},"nodes":{"items":{"$ref":"#/definitions/CodeMapNode"},"type":"array"},"projectName":{"type":"string"}},"required":["apiVersion","nodes","projectName"],"type":"object"},"FixedPosition":{"properties":{"height":{"type":"number"},"left":{"type":"number"},"top":{"type":"number"},"width":{"type":"number"}},"required":["height","left","top","width"],"type":"object"},"KeyValuePair":{"additionalProperties":{"type":"number"},"type":"object"},"MarkedPackage":{"properties":{"color":{"type":"string"},"path":{"type":"string"}},"required":["color","path"],"type":"object"},"NodeType":{"enum":["File","Folder"],"type":"string"},"OldAttributeTypes":{"properties":{"edges":{"additionalItems":{"anyOf":[{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}]},"items":[{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}],"minItems":0,"type":"array"},"nodes":{"additionalItems":{"anyOf":[{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}]},"items":[{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}],"minItems":0,"type":"array"}},"type":"object"}}}');function A9(n){var t=0,e=n.children,i=e&&e.length;if(i)for(;--i>=0;)t+=e[i].value;else t=1;n.value=t}function oo(n,t){n instanceof Map?(n=[void 0,n],void 0===t&&(t=GI)):void 0===t&&(t=wN);for(var i,s,l,u,f,e=new dM(n),r=[e];i=r.pop();)if((l=t(i.data))&&(f=(l=Array.from(l)).length))for(i.children=l,u=f-1;u>=0;--u)r.push(s=l[u]=new dM(l[u])),s.parent=i,s.depth=i.depth+1;return e.eachBefore(jI)}function wN(n){return n.children}function GI(n){return Array.isArray(n)?n[1]:null}function y9(n){void 0!==n.data.value&&(n.value=n.data.value),n.data=n.data.data}function jI(n){var t=0;do{n.height=t}while((n=n.parent)&&n.height<++t)}function dM(n){this.data=n,this.depth=this.height=0,this.parent=null}dM.prototype=oo.prototype={constructor:dM,count:function m9(){return this.eachAfter(A9)},each:function g9(n,t){let e=-1;for(const i of this)n.call(t,i,++e,this);return this},eachAfter:function mN(n,t){for(var s,l,u,e=this,i=[e],r=[],f=-1;e=i.pop();)if(r.push(e),s=e.children)for(l=0,u=s.length;l=0;--s)i.push(r[s]);return this},find:function Dm(n,t){let e=-1;for(const i of this)if(n.call(t,i,++e,this))return i},sum:function N_(n){return this.eachAfter(function(t){for(var e=+n(t.data)||0,i=t.children,r=i&&i.length;--r>=0;)e+=i[r].value;t.value=e})},sort:function gN(n){return this.eachBefore(function(t){t.children&&t.children.sort(n)})},path:function b9(n){for(var t=this,e=function QI(n,t){if(n===t)return n;var e=n.ancestors(),i=t.ancestors(),r=null;for(n=e.pop(),t=i.pop();n===t;)r=n,n=e.pop(),t=i.pop();return r}(t,n),i=[t];t!==e;)i.push(t=t.parent);for(var r=i.length;n!==e;)i.splice(r,0,n),n=n.parent;return i},ancestors:function _N(){for(var n=this,t=[n];n=n.parent;)t.push(n);return t},descendants:function v9(){return Array.from(this)},leaves:function bN(){var n=[];return this.eachBefore(function(t){t.children||n.push(t)}),n},links:function vN(){var n=this,t=[];return n.each(function(e){e!==n&&t.push({source:e.parent,target:e})}),t},copy:function zI(){return oo(this).eachBefore(y9)},[Symbol.iterator]:function*yN(){var t,i,r,s,n=this,e=[n];do{for(t=e.reverse(),e=[];n=t.pop();)if(yield n,i=n.children)for(r=0,s=i.length;r=7340032:return L_.BIG_MAP;case e>=2097152:return L_.MEDIUM_MAP;default:return L_.SMALL_MAP}}const XI=s1.f4.X,wd={fileIsInvalid:"File is empty or invalid.",apiVersionIsInvalid:"API Version is empty or invalid.",majorApiVersionIsOutdated:"API Version Outdated: Update CodeCharta API Version to match cc.json.",minorApiVersionOutdated:"Minor API Version Outdated.",nodesNotUnique:"Node names in combination with node types are not unique.",nodesEmpty:"The nodes array is empty. At least one node is required.",notAllFoldersAreFixed:"If at least one direct sub-folder of root is marked as fixed, all direct sub-folders of root must be fixed.",fixedFoldersOutOfBounds:"Coordinates of fixed folders must be within a range of 0 and 100.",fixedFoldersOverlapped:"Folders may not overlap.",fixedFoldersNotAllowed:"Fixated folders may not be defined in API-Version < 1.2.",fileAlreadyExists:"File already exists.",blacklistError:"Excluding all buildings is not possible.",fileContainsAuthorsAttribute:"File contains unsupported 'authors' attribute. This attribute will be ignored. Node containing the attribute: "};function KI(n){return n&&n.nodes?c1(n.nodes):[]}function YI(n){const t=[];return n&&function hM(n){return V_(n.apiVersion).minor>V_(XI).minor}(n)&&t.push(`${wd.minorApiVersionOutdated} Found: ${n.apiVersion}`),t}function ep(n){const t=[];switch(!0){case!n:t.push(wd.fileIsInvalid);break;case!function EN(n){const{apiVersion:t}=n,e=void 0!==t,r=/\d+\.\d+/.test(t);return e&&r}(n):t.push(wd.apiVersionIsInvalid);break;case function C9(n){return V_(n.apiVersion).major>V_(XI).major}(n):t.push(wd.majorApiVersionIsOutdated)}return 0===t.length&&t.push(...function MN(n){const t=[];if(0===t.length){const i=new(AN())({allErrors:!0}).compile(p9);i(n)?0===n.nodes.length?t.push(wd.nodesEmpty):t.push(...function JI(n){const t=[],e=new Set;return e.add(`${n.name}|${n.type}`),eF(n,t,e,`/${n.name}`),t}(n.nodes[0]),...H_(n)):t.push(...i.errors.map(s=>function ZI(n){return`${n.keyword.charAt(0).toUpperCase()+n.keyword.slice(1)} error: ${n.dataPath.slice(1)} ${n.message}`}(s)))}return t}(n)),t}function c1(n){const t=[];for(const e of n)e.attributes?.authors&&(delete e.attributes.authors,t.push(`${wd.fileContainsAuthorsAttribute}"${e.name}"`)),e.children&&t.push(...c1(e.children));return t}function V_(n){return{major:Number(n.split(".")[0]),minor:Number(n.split(".")[1])}}function eF(n,t,e,i){if(!Ro(n))for(const r of n.children){const s=`${i}/${r.name}`;e.has(`${s}|${r.type}`)?t.push(`${wd.nodesNotUnique} Found duplicate of ${r.type} with path: ${s}`):(e.add(`${s}|${r.type}`),eF(r,t,e,s))}}function H_(n,t=n.nodes[0].children){const e=[],i=[],r=[],s=new Set;(function M9(n,t,e,i,r,s){for(const l of n)if(void 0===l.fixedPosition)t.push(`${l.name}`);else{const u=V_(e.apiVersion);if(u.major<1||1===u.major&&u.minor<2)return void i.push(`${wd.fixedFoldersNotAllowed} Found: ${e.apiVersion}`);TN(l)&&r.push(Q_(l));for(const f of n)void 0!==f.fixedPosition&&l!==f&&SN(l.fixedPosition,f.fixedPosition)&&!s.has(`${Q_(f)} and ${Q_(l)}`)&&s.add(`${Q_(l)} and ${Q_(f)}`)}})(t,i,n,e,r,s),i.length>0&&i.length!==t.length&&e.push(`${wd.notAllFoldersAreFixed} Found: ${i.join(", ")}`),r.length>0&&e.push(`${wd.fixedFoldersOutOfBounds} Found: ${r.join(", ")}`),s.size>0&&e.push(`${wd.fixedFoldersOverlapped} Found: ${[...s].join(", ")}`);for(const l of t)l.children&&e.push(...H_(n,l.children));return e}function Q_(n){return`${n.name} ${JSON.stringify(n.fixedPosition)}`}function SN(n,t){return km(n.left,n.top,t)||km(n.left,n.top+n.height,t)||km(n.left+n.width,n.top,t)||km(n.left+n.width,n.top+n.height,t)}function km(n,t,e){return n>=e.left&&n<=e.left+e.width&&t>=e.top&&t<=e.top+e.height}function TN({fixedPosition:{left:n,top:t,width:e,height:i}}){return n<0||t<0||n+e>100||t+i>100||e<0||i<0}const Pc=n=>{n.sort((t,e)=>{const i=t.name.toLowerCase(),r=e.name.toLowerCase();return i>r?1:r>i?-1:0})},vh="unary",qo=(n,t)=>{if(0===n.length)return[];const e=new Map,i=new Map,r=new Map;for(const{file:l}of n)for(const u of oo(l.map))if(Ro(u)&&u.data.path&&!cu(u.data.path,t,"exclude"))for(const f of Object.keys(u.data.attributes)){const p=i.get(f),m=r.get(f);e.get(f)||e.set(f,[]),e.get(f).push(u.data.attributes[f]),(void 0===m||m>=u.data.attributes[f])&&r.set(f,u.data.attributes[f]),(void 0===p||p<=u.data.attributes[f])&&i.set(f,u.data.attributes[f])}const s=[];i.set(vh,1),r.set(vh,1);for(const[l,u]of i)s.push({name:l,values:e.get(l),maxValue:u,minValue:r.get(l)});return Pc(s),s},du={decorateMap(n,t,e){for(const{data:i}of oo(n)){i.isFlattened=!1,i.isExcluded=!1;for(const r of e)"flatten"===r.type?i.isFlattened=i.isFlattened||qI(i,r.path):i.isExcluded=i.isExcluded||qI(i,r.path)&&Ro(i)}n.isExcluded=!1,this.decorateMapWithMetricData(n,t)},decorateMapWithMetricData(n,t){const{nodeMetricData:e,edgeMetricData:i}=t;let r=0;for(const{data:s}of oo(n)){s.id=r,r++,void 0===s.attributes&&(s.attributes={}),Ro(s)&&(s.attributes[vh]=1);for(const l of e)void 0===s.attributes[l.name]&&(s.attributes[l.name]=0),void 0!==s.deltas&&void 0===s.deltas[l.name]&&(s.deltas[l.name]=0);void 0===s.edgeAttributes&&(s.edgeAttributes={});for(const l of i)void 0===s.edgeAttributes[l.name]&&(s.edgeAttributes[l.name]={incoming:0,outgoing:0});d1(s)}},decorateMapWithPathAttribute(n){for(const t of oo(n.map))t.data.path=t.parent?`${t.parent.data.path}/${t.data.name}`:`/${t.data.name}`;return n},decorateParentNodesWithAggregatedAttributes(n,t,e){const i=new Map,r=Object.keys(n.attributes),s=Object.keys(n.edgeAttributes);oo(n).eachAfter(function({data:u,parent:f}){if(!u.isExcluded&&f){for(const p of r){const _=`${p}${f.data.path}`;e.nodes[p]===Fc.relative?(IN(i,`${p}${u.path}`,_,u,p,t),Rm(i,_,u,p,t)):(f.data.attributes[p]+=u.attributes[p],t&&f.data.deltas&&(f.data.deltas[p]=f.data.deltas[p]??0,f.data.deltas[p]+=u.deltas[p]??0))}t&&f.data.fileCount&&(f.data.fileCount.added+=u.fileCount.added,f.data.fileCount.changed+=u.fileCount.changed,f.data.fileCount.removed+=u.fileCount.removed);for(const p of s){const m=u.edgeAttributes[p];if(!m)continue;const _=`${p}${u.path}`,b=`${p}${f.data.path}`;e.edges[p]===Fc.relative?(Pm(i,`INCOMING${_}`,`INCOMING${b}`,u,p,"incoming"),Pm(i,`OUTGOING${_}`,`OUTGOING${b}`,u,p,"outgoing"),gl(i,`INCOMING${b}`,u,p,"incoming"),gl(i,`OUTGOING${b}`,u,p,"outgoing")):(f.data.edgeAttributes[p].incoming+=m.incoming,f.data.edgeAttributes[p].outgoing+=m.outgoing)}}});for(const l of s)e.edges[l]===Fc.relative&&(n.edgeAttributes[l].incoming=yh(i.get(`INCOMING${l}${n.path}`)),n.edgeAttributes[l].outgoing=yh(i.get(`OUTGOING${l}${n.path}`)));for(const l of r)e.nodes[l]===Fc.relative&&(n.attributes[l]=yh(i.get(`MEDIAN${l}${n.path}`)),t&&n.deltas&&(n.deltas[l]=yh(i.get(`DELTA${l}${n.path}`))))}};function d1(n){if((1!==n.children?.length||!n.children[0]?.fixedPosition)&&1===n.children?.length&&n.children[0].children?.length>0){const[t]=n.children;n.children=t.children,n.name+=`/${t.name}`,n.path+=`/${t.name}`,t.link&&(n.link=t.link)}}function gl(n,t,e,i,r){0!==e.edgeAttributes[i][r]&&u1(n,t,e,e.edgeAttributes[i][r])}function Rm(n,t,e,i,r){0!==e.attributes[i]&&u1(n,`MEDIAN${t}`,e,e.attributes[i]),r&&e.deltas&&0!==e.deltas[i]&&u1(n,`DELTA${t}`,e,e.deltas[i])}function IN(n,t,e,i,r,s){if(Ro(i))return;const l=n.get(`MEDIAN${t}`);if(void 0!==l&&(i.attributes[r]=yh(l),z_(n,`MEDIAN${e}`,l)),s&&i.deltas){const u=n.get(`DELTA${t}`);void 0!==u&&(i.deltas[r]=yh(u),z_(n,`DELTA${e}`,u))}}function Pm(n,t,e,i,r,s){if(Ro(i))return;const l=n.get(t);void 0!==l&&(i.edgeAttributes[r][s]=yh(l),z_(n,e,l))}function z_(n,t,e){const i=n.get(t);void 0===i?n.set(t,e):function DN(n,t){let e=0;for(let i=0;it[e]&&(r++,e++,e!==t.length););if(r>0&&(n.splice(i,0,...t.slice(e-r,e)),e===t.length))return}n.push(...t.slice(e))}(i,e)}function u1(n,t,e,i){const r=n.get(t);void 0===r?n.set(t,[i]):Ro(e)&&function FN(n,t){let e=0,i=n.length-1,r=0;if(i<0||n[i]<=t)n.push(t);else if(n[0]>=t)n.unshift(t);else for(;e<=i;)if(r=Math.floor((e+i)/2),n[r]{switch(t.type){case"flatten":return{path:t.path,type:"hide"};case"exclude":return{path:t.path,type:t.type}}})}}function is(n,t,e,i,r){i()&&(n.length=0,r(),localStorage.removeItem("scenarios"));const s=function fN(n){const t=n.content;return{fileMeta:{fileName:n.fileName,fileChecksum:t.fileChecksum,projectName:t.projectName,apiVersion:t.apiVersion,exportedFileSize:n.fileSize,repoCreationDate:t.repoCreationDate||""},settings:{fileSettings:{edges:t.edges||[],attributeTypes:pN(t.attributeTypes),attributeDescriptors:h9(t.attributeDescriptors),blacklist:UI(t.blacklist||[]),markedPackages:t.markedPackages||[]}},map:C(t.nodes[0])}}(e);du.decorateMapWithPathAttribute(s);const l=s.fileMeta.fileChecksum;let u=s.fileMeta.fileName;const f=new Map(n.map(_=>[_.file.fileMeta.fileName,_.file.fileMeta.fileChecksum])),p=new Map(n.map((_,b)=>[_.file.fileMeta.fileChecksum,b])),m=p.has(l);return f.has(u)&&(u=function G_(n,t,e){if(t.get(n)===e)return n;let i=!1,r=1,s=n;for(;!i;){const l=n.indexOf(".");s=l>=0?[n.slice(0,l),"_",r,n.slice(l)].join(""):`${n}_${r}`,(t.get(s)===e||!t.has(s))&&(i=!0),r++}return s}(u,f,l),s.fileMeta.fileName=u),m?(n[p.get(l)].file.fileMeta.fileName=u,t.unshift(u),!1):(n.push({file:s,selectedAs:At.None}),t.push(u),!0)}const Fa={rootName:"root",rootPath:"/root",updateRoot(n){this.rootName=n,this.rootPath=`/${n}`}},wh=bn("CURRENT_FILES_ARE_SAMPLE_FILES",{_as:"props",_p:void 0}),tp="File(s) could not be loaded";let np=(()=>{class n{static{this.CC_FILE_EXTENSION=".cc.json"}constructor(e,i,r){this.store=e,this.state=i,this.dialog=r,this.referenceFileSubscription=this.store.select(Tn).pipe(ro(s=>{s&&Fa.updateRoot(s.map.name)})).subscribe()}ngOnDestroy(){this.referenceFileSubscription.unsubscribe()}loadFiles(e){const i=C(this.state.getValue().files),r=[],s=[],l=function BN(n,t,e,i,r,s){let l=!1;for(const u of e){const f={fileName:u?.fileName,errors:[],warnings:[]};f.warnings.push(...KI(u?.content)),f.errors.push(...ep(u?.content)),0===f.errors.length&&(f.warnings.push(...YI(u?.content)),is(n,t,u,r,s)&&(l=!0)),(f.errors.length>0||f.warnings.length>0)&&i.push(f)}return l}(i,r,e,s,()=>this.state.getValue().appStatus.currentFilesAreSampleFiles,()=>this.store.dispatch(wh({value:!1})));if(s.length>0&&this.dialog.open(lu,{data:RI(s)}),0===r.length)throw new Error(tp);this.store.dispatch(S({value:i}));const u=r[0],f=this.state.getValue().files.find(p=>p.file.fileMeta.fileName===u).file.map.name;if(this.store.dispatch(se({fileNames:r})),Fa.updateRoot(f),!l)throw new Error("File(s) are already loaded")}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(Es))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const nF=/_\d{4}(?:-\d{1,2}){2}_\d{1,2}-\d{1,2}\./;let uu=(()=>{class n{static{this.JSON_EXTENSION=".json"}static getNewFileName(e,i){return`${this.getFileNameWithoutTimestamp(e,i)}_${this.getNewTimestamp()}`}static getNewTimestamp(){return n.getFormattedTimestamp(new Date)}static getFormattedTimestamp(e){return e.toISOString().slice(0,16).replace("T","_").replace(":","-")}static getFileNameWithoutTimestamp(e,i){if(!i){const r=nF.exec(e);if(r)return e.slice(0,r.index);if(e.endsWith(np.CC_FILE_EXTENSION))return e.slice(0,-np.CC_FILE_EXTENSION.length);if(e.endsWith(n.JSON_EXTENSION))return e.slice(0,-n.JSON_EXTENSION.length)}return e}static withoutCCExtension(e){return e.replace(/(\.cc)?(\.json)?(\.gz)?$/,"")}}return n})();class Om{static downloadCurrentMap(t,e,i,r,s){const l=this.getProjectDataAsCCJsonFormat(t,e,i,r),u=s+np.CC_FILE_EXTENSION;this.downloadData(JSON.stringify(l),u)}static getProjectDataAsCCJsonFormat(t,e,i,r){return{projectName:e.projectName,apiVersion:e.apiVersion,fileChecksum:e.fileChecksum,nodes:[this.undecorateMap(t)],attributeTypes:r.includes("AttributeTypes")?this.getAttributeTypesForJSON(i.attributeTypes):{},attributeDescriptors:r.includes("AttributeDescriptors")?this.getAttributeDescriptorsForJSON(i.attributeDescriptors):{},edges:r.includes("Edges")?this.undecorateEdges(i.edges):[],markedPackages:r.includes("MarkedPackages")?i.markedPackages:[],blacklist:this.getBlacklistToDownload(r,i.blacklist)}}static getBlacklistToDownload(t,e){const i=[];return t.includes("Flattens")&&i.push(...this.getFilteredBlacklist(e,"flatten").map(r=>({path:r.path,type:"hide"}))),t.includes("Excludes")&&i.push(...this.getFilteredBlacklist(e,"exclude")),i}static getAttributeTypesForJSON(t){return 0===Object.keys(t.edges).length&&0===Object.keys(t.nodes).length?{}:t}static getAttributeDescriptorsForJSON(t){return 0===Object.keys(t).length?{}:t}static getFilteredBlacklist(t,e){return t.filter(i=>i.type===e)}static undecorateMap(t){const e=C(t);for(const{data:i}of oo(e))delete i.isExcluded,delete i.isFlattened,delete i.edgeAttributes,delete i.path,i.type===ts.FOLDER?i.attributes={}:delete i.attributes[vh];return e}static undecorateEdges(t){const e=C(t);for(const i of e)delete i.visible;return e}static downloadData(t,e){const i=new Blob([t],{type:"text/json"}),r=document.createEvent("MouseEvents"),s=document.createElement("a");s.download=e,s.href=window.URL.createObjectURL(i),s.dataset.downloadurl=["text/json",s.download,s.href].join(":"),r.initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),s.dispatchEvent(r)}}const hu=bn("SET_STATE",{_as:"props",_p:void 0}),rF=".cc.config.json",Lm="CodeCharta::customConfigs";class mr{static{this.customConfigs=mr.loadCustomConfigsFromLocalStorage()}static{this.customConfigChange$=new $d.t(null)}static setCustomConfigsToLocalStorage(){const t={version:"1.0.1",customConfigs:[...mr.customConfigs]};localStorage.setItem(Lm,JSON.stringify(t,tm)),mr.customConfigChange$.next(null)}static loadCustomConfigsFromLocalStorage(){const t=this.getCcLocalStorage();return new Map(t?.customConfigs)}static getCcLocalStorage(){return JSON.parse(localStorage.getItem(Lm),Cy)}static addCustomConfig(t){mr.customConfigs.set(t.id,t),mr.setCustomConfigsToLocalStorage()}static editCustomConfigNote(t,e){const i=mr.customConfigs.get(t);i.note=e,mr.customConfigs.set(t,i),mr.setCustomConfigsToLocalStorage()}static getCustomConfigSettings(t){return mr.customConfigs.get(t)}static hasCustomConfigByName(t,e,i){for(const r of mr.customConfigs.values())if(r.name===i&&r.mapSelectionMode===t&&this.areEqual(e,r.assignedMaps))return!0;return!1}static areEqual(t,e){return t.size===e.size&&[...t.entries()].every(([i,r])=>e.has(i)&&e.get(i)===r)}static getCustomConfigs(){return mr.customConfigs}static importCustomConfigs(t){const e=JSON.parse(t,Cy);for(const i of e.customConfigs.values()){if(mr.getCustomConfigSettings(i.id))continue;mr.hasCustomConfigByName(i.mapSelectionMode,i.assignedMaps,i.name)&&(i.name+=` (${uu.getFormattedTimestamp(new Date(i.creationTime))})`);const s={id:i.id,name:i.name,creationTime:i.creationTime,assignedMaps:i.assignedMaps,customConfigVersion:i.customConfigVersion,mapSelectionMode:i.mapSelectionMode,stateSettings:i.stateSettings,camera:i.camera,...i.note&&{note:i.note}};mr.addCustomConfig(s)}}static downloadCustomConfigs(t){const e={downloadApiVersion:"1.0.1",timestamp:Date.now(),customConfigs:t},i=uu.getNewTimestamp()+rF;Om.downloadData(JSON.stringify(e,tm),i)}static createExportCustomConfigFromConfig(t){return{...t}}static getCustomConfigsAmountByMapAndMode(t,e){let i=0;for(const r of mr.customConfigs.values())[...r.assignedMaps.values()].join(" ")===t&&r.mapSelectionMode===e&&i++;return i}static getConfigNameSuggestionByFileState({mapSelectionMode:t,assignedMaps:e}){const i=[...e.values()].join(" ");return`${i} #${mr.getCustomConfigsAmountByMapAndMode(i,t)+1}`}static deleteCustomConfigs(t){for(const e of t)mr.customConfigs.delete(e.id);mr.setCustomConfigsToLocalStorage()}static deleteCustomConfig(t){mr.customConfigs.delete(t),mr.setCustomConfigsToLocalStorage()}static sortCustomConfigDropDownGroupList(t,e){if(!e.hasApplicableItems){if(t.hasApplicableItems||t.mapSelectionMode{const n=document.createElement("INPUT");return n.setAttribute("type","file"),n.setAttribute("accept",".json,.gz"),n.setAttribute("multiple",""),document.body.appendChild(n),n},fu="base";function pM(n,t,e,i,r,s){if(0===n.length)return;const[l]=n;let u={name:l,type:j_(n)?ts.FILE:ts.FOLDER,attributes:{}};j_(n)?u=function RN(n,t,e){const i={...t};return i.attributes={height:e.scale.y},{name:n,type:ts.FOLDER,attributes:{},children:[i]}}(l,u,i):u.children=[],function ip(n,t){return n.some(e=>e.name===t)}(t,l)?u=t.find(m=>m.name===l):t.push(u);const f=r.find(m=>m.name===e);u.fixedPosition=function _l(n,t,e,i){let r;if(n.type===ts.FOLDER){const l=t.position.z-t.scale.z/2,f=e.position.z-e.scale.z/2,p=f1((e.position.x-e.scale.x/2-(t.position.x-t.scale.x/2))/t.scale.x*100,2);r={left:f1((f-l)/t.scale.z*100,2),top:p,width:f1(e.scale.z/t.scale.z*100,2),height:f1(e.scale.x/t.scale.x*100,2)}}return n.name===i&&(r=function PN(n){const t={...n};return t.top=Math.floor(50-t.height/2),t.left=Math.floor(50-t.width/2),t}(r)),r}(u,f,i,s.name);const p=e===fu?u.name:`${e}.${u.name}`;pM(n.slice(1),u.children,p,i,r,s)}function j_(n){return 1===n.length}function f1(n,t){const e=Math.pow(10,t);return Math.round(n*e)/e}function p1(n){const t=n.replaceAll(".","/"),i=n.split(".").slice(-1);return`/${fu}/${t}/${i}`}const E9=JSON.parse('{"$id":"http://example.com/example.json","$schema":"http://json-schema.org/draft-07/schema","default":{},"description":"This is the JSON Schema for the GameObjectsPositions structure","examples":[{"gameObjectPositions":[{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.HelloWorldTest","position":{"x":69,"y":18.5,"z":228.5},"scale":{"x":9,"y":5,"z":9}},{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.TryCatchFinallyTest","position":{"x":66,"y":22.5,"z":177.5},"scale":{"x":1,"y":13,"z":1}}],"cycles":[{"from":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParser","to":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParserParameter"}]}],"required":["gameObjectPositions"],"title":"The root schema","type":"object","properties":{"gameObjectPositions":{"$id":"#/properties/gameObjectPositions","type":"array","title":"The gameObjectPositions schema","description":"Defines the position and scale of GameObjects","default":[],"examples":[[{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.HelloWorldTest","position":{"x":69,"y":18.5,"z":228.5},"scale":{"x":9,"y":5,"z":9}},{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.SwitchCaseTest","position":{"x":65,"y":22,"z":181},"scale":{"x":2,"y":12,"z":2}}]],"additionalItems":true,"items":{"$id":"#/properties/gameObjectPositions/items","anyOf":[{"$id":"#/properties/gameObjectPositions/items/anyOf/0","type":"object","title":"The first anyOf schema","description":"Defines the properties of a GameObject","default":{},"examples":[{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.HelloWorldTest","position":{"x":69,"y":18.5,"z":228.5},"scale":{"x":9,"y":5,"z":9}}],"required":["name","position","scale"],"properties":{"name":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/name","type":"string","title":"The name schema","description":"An explanation about the purpose of this instance.","default":"","examples":["root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.HelloWorldTest"]},"position":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/position","type":"object","title":"The position schema","description":"The position in absolute values","default":{},"examples":[{"x":69,"y":18.5,"z":228.5}],"required":["x","y","z"],"properties":{"x":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/position/properties/x","type":"number","title":"The x schema","description":"x position","default":0,"examples":[69]},"y":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/position/properties/y","type":"number","title":"The y schema","description":"y position","default":0,"examples":[18.5]},"z":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/position/properties/z","type":"number","title":"The z schema","description":"z position","default":0,"examples":[228.5]}},"additionalProperties":true},"scale":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/scale","type":"object","title":"The scale schema","description":"The scale of GameObjects","default":{},"examples":[{"x":9,"y":5,"z":9}],"required":["x","y","z"],"properties":{"x":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/scale/properties/x","type":"number","title":"The x schema","description":"x scale","default":0,"examples":[9]},"y":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/scale/properties/y","type":"number","title":"The y schema","description":"y scale","default":0,"examples":[5]},"z":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/scale/properties/z","type":"number","title":"The z schema","description":"z scale","default":0,"examples":[9]}},"additionalProperties":true}},"additionalProperties":true}]}},"cycles":{"$id":"#/properties/cycles","type":"array","title":"The cycles schema","description":"Defines the cycles between GameObjects","default":[],"examples":[[{"from":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParser","to":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParserParameter"}]],"additionalItems":true,"items":{"$id":"#/properties/cycles/items","anyOf":[{"$id":"#/properties/cycles/items/anyOf/0","type":"object","title":"The first anyOf schema","description":"A cycle between two GameObjects","default":{},"examples":[{"from":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParser","to":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParserParameter"}],"required":["from","to"],"properties":{"from":{"$id":"#/properties/cycles/items/anyOf/0/properties/from","type":"string","title":"The from schema","description":"from GameObject","default":"","examples":["root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParser"]},"to":{"$id":"#/properties/cycles/items/anyOf/0/properties/to","type":"string","title":"The to schema","description":"to GameObject","default":"","examples":["root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParserParameter"]}},"additionalProperties":true}]}}},"additionalProperties":true}');function rp(n){let t=n.length;for(;--t>=0;)n[t]=0}const vM=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),Qm=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),yM=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),hF=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),pu=new Array(576);rp(pu);const q_=new Array(60);rp(q_);const W_=new Array(512);rp(W_);const X_=new Array(256);rp(X_);const wM=new Array(29);rp(wM);const v1=new Array(30);function xM(n,t,e,i,r){this.static_tree=n,this.extra_bits=t,this.extra_base=e,this.elems=i,this.max_length=r,this.has_stree=n&&n.length}let fF,pF,AF;function CM(n,t){this.dyn_tree=n,this.max_code=0,this.stat_desc=t}rp(v1);const mF=n=>n<256?W_[n]:W_[256+(n>>>7)],K_=(n,t)=>{n.pending_buf[n.pending++]=255&t,n.pending_buf[n.pending++]=t>>>8&255},ja=(n,t,e)=>{n.bi_valid>16-e?(n.bi_buf|=t<>16-n.bi_valid,n.bi_valid+=e-16):(n.bi_buf|=t<{ja(n,e[2*t],e[2*t+1])},MM=(n,t)=>{let e=0;do{e|=1&n,n>>>=1,e<<=1}while(--t>0);return e>>>1},gF=(n,t,e)=>{const i=new Array(16);let s,l,r=0;for(s=1;s<=15;s++)r=r+e[s-1]<<1,i[s]=r;for(l=0;l<=t;l++){let u=n[2*l+1];0!==u&&(n[2*l]=MM(i[u]++,u))}},bF=n=>{let t;for(t=0;t<286;t++)n.dyn_ltree[2*t]=0;for(t=0;t<30;t++)n.dyn_dtree[2*t]=0;for(t=0;t<19;t++)n.bl_tree[2*t]=0;n.dyn_ltree[512]=1,n.opt_len=n.static_len=0,n.sym_next=n.matches=0},SM=n=>{n.bi_valid>8?K_(n,n.bi_buf):n.bi_valid>0&&(n.pending_buf[n.pending++]=n.bi_buf),n.bi_buf=0,n.bi_valid=0},TM=(n,t,e,i)=>{const r=2*t,s=2*e;return n[r]{const i=n.heap[e];let r=e<<1;for(;r<=n.heap_len&&(r{let i,r,l,u,s=0;if(0!==n.sym_next)do{i=255&n.pending_buf[n.sym_buf+s++],i+=(255&n.pending_buf[n.sym_buf+s++])<<8,r=n.pending_buf[n.sym_buf+s++],0===i?Oc(n,r,t):(l=X_[r],Oc(n,l+256+1,t),u=vM[l],0!==u&&(r-=wM[l],ja(n,r,u)),i--,l=mF(i),Oc(n,l,e),u=Qm[l],0!==u&&(i-=v1[l],ja(n,i,u)))}while(s{const e=t.dyn_tree,i=t.stat_desc.static_tree,r=t.stat_desc.has_stree,s=t.stat_desc.elems;let l,u,p,f=-1;for(n.heap_len=0,n.heap_max=573,l=0;l>1;l>=1;l--)ap(n,e,l);p=s;do{l=n.heap[1],n.heap[1]=n.heap[n.heap_len--],ap(n,e,1),u=n.heap[1],n.heap[--n.heap_max]=l,n.heap[--n.heap_max]=u,e[2*p]=e[2*l]+e[2*u],n.depth[p]=(n.depth[l]>=n.depth[u]?n.depth[l]:n.depth[u])+1,e[2*l+1]=e[2*u+1]=p,n.heap[1]=p++,ap(n,e,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],((n,t)=>{const e=t.dyn_tree,i=t.max_code,r=t.stat_desc.static_tree,s=t.stat_desc.has_stree,l=t.stat_desc.extra_bits,u=t.stat_desc.extra_base,f=t.stat_desc.max_length;let p,m,_,b,w,F,D=0;for(b=0;b<=15;b++)n.bl_count[b]=0;for(e[2*n.heap[n.heap_max]+1]=0,p=n.heap_max+1;p<573;p++)m=n.heap[p],b=e[2*e[2*m+1]+1]+1,b>f&&(b=f,D++),e[2*m+1]=b,!(m>i)&&(n.bl_count[b]++,w=0,m>=u&&(w=l[m-u]),F=e[2*m],n.opt_len+=F*(b+w),s&&(n.static_len+=F*(r[2*m+1]+w)));if(0!==D){do{for(b=f-1;0===n.bl_count[b];)b--;n.bl_count[b]--,n.bl_count[b+1]+=2,n.bl_count[f]--,D-=2}while(D>0);for(b=f;0!==b;b--)for(m=n.bl_count[b];0!==m;)_=n.heap[--p],!(_>i)&&(e[2*_+1]!==b&&(n.opt_len+=(b-e[2*_+1])*e[2*_],e[2*_+1]=b),m--)}})(n,t),gF(e,f,n.bl_count)},IM=(n,t,e)=>{let i,s,r=-1,l=t[1],u=0,f=7,p=4;for(0===l&&(f=138,p=3),t[2*(e+1)+1]=65535,i=0;i<=e;i++)s=l,l=t[2*(i+1)+1],!(++u{let i,s,r=-1,l=t[1],u=0,f=7,p=4;for(0===l&&(f=138,p=3),i=0;i<=e;i++)if(s=l,l=t[2*(i+1)+1],!(++u{ja(n,0+(i?1:0),3),SM(n),K_(n,e),K_(n,~e),e&&n.pending_buf.set(n.window.subarray(t,t+e),n.pending),n.pending+=e};var CF={_tr_init:n=>{cp||((()=>{let n,t,e,i,r;const s=new Array(16);for(e=0,i=0;i<28;i++)for(wM[i]=e,n=0;n<1<>=7;i<30;i++)for(v1[i]=r<<7,n=0;n<1<{let r,s,l=0;n.level>0?(2===n.strm.data_type&&(n.strm.data_type=(n=>{let e,t=4093624447;for(e=0;e<=31;e++,t>>>=1)if(1&t&&0!==n.dyn_ltree[2*e])return 0;if(0!==n.dyn_ltree[18]||0!==n.dyn_ltree[20]||0!==n.dyn_ltree[26])return 1;for(e=32;e<256;e++)if(0!==n.dyn_ltree[2*e])return 1;return 0})(n)),Mh(n,n.l_desc),Mh(n,n.d_desc),l=(n=>{let t;for(IM(n,n.dyn_ltree,n.l_desc.max_code),IM(n,n.dyn_dtree,n.d_desc.max_code),Mh(n,n.bl_desc),t=18;t>=3&&0===n.bl_tree[2*hF[t]+1];t--);return n.opt_len+=3*(t+1)+5+5+4,t})(n),r=n.opt_len+3+7>>>3,s=n.static_len+3+7>>>3,s<=r&&(r=s)):r=s=e+5,e+4<=r&&-1!==t?dp(n,t,e,i):4===n.strategy||s===r?(ja(n,2+(i?1:0),3),y1(n,pu,q_)):(ja(n,4+(i?1:0),3),((n,t,e,i)=>{let r;for(ja(n,t-257,5),ja(n,e-1,5),ja(n,i-4,4),r=0;r(n.pending_buf[n.sym_buf+n.sym_next++]=t,n.pending_buf[n.sym_buf+n.sym_next++]=t>>8,n.pending_buf[n.sym_buf+n.sym_next++]=e,0===t?n.dyn_ltree[2*e]++:(n.matches++,t--,n.dyn_ltree[2*(X_[e]+256+1)]++,n.dyn_dtree[2*mF(t)]++),n.sym_next===n.sym_end),_tr_align:n=>{ja(n,2,3),Oc(n,256,pu),(n=>{16===n.bi_valid?(K_(n,n.bi_buf),n.bi_buf=0,n.bi_valid=0):n.bi_valid>=8&&(n.pending_buf[n.pending++]=255&n.bi_buf,n.bi_buf>>=8,n.bi_valid-=8)})(n)}},Km=(n,t,e,i)=>{let r=65535&n,s=n>>>16&65535,l=0;for(;0!==e;){l=e>2e3?2e3:e,e-=l;do{r=r+t[i++]|0,s=s+r|0}while(--l);r%=65521,s%=65521}return r|s<<16};const EF=new Uint32Array((()=>{let n,t=[];for(var e=0;e<256;e++){n=e;for(var i=0;i<8;i++)n=1&n?3988292384^n>>>1:n>>>1;t[e]=n}return t})());var Fo=(n,t,e,i)=>{const r=EF,s=i+e;n^=-1;for(let l=i;l>>8^r[255&(n^t[l])];return~n},up={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},hp={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:BM,_tr_stored_block:Au,_tr_flush_block:kM,_tr_tally:Eh,_tr_align:RM}=CF,{Z_NO_FLUSH:fp,Z_PARTIAL_FLUSH:S9,Z_FULL_FLUSH:QN,Z_FINISH:Jl,Z_BLOCK:PM,Z_OK:Ys,Z_STREAM_END:As,Z_STREAM_ERROR:Nc,Z_DATA_ERROR:zN,Z_BUF_ERROR:OM,Z_DEFAULT_COMPRESSION:SF,Z_FILTERED:GN,Z_HUFFMAN_ONLY:Y_,Z_RLE:TF,Z_FIXED:Ym,Z_DEFAULT_STRATEGY:jN,Z_UNKNOWN:$N,Z_DEFLATED:Z_}=hp,ms=262,xd=(n,t)=>(n.msg=up[t],t),PF=n=>2*n-(n>4?9:0),mu=n=>{let t=n.length;for(;--t>=0;)n[t]=0},OF=n=>{let t,e,i,r=n.w_size;t=n.hash_size,i=t;do{e=n.head[--i],n.head[i]=e>=r?e-r:0}while(--t);t=r,i=t;do{e=n.prev[--i],n.prev[i]=e>=r?e-r:0}while(--t)};let Sh=(n,t,e)=>(t<{const t=n.state;let e=t.pending;e>n.avail_out&&(e=n.avail_out),0!==e&&(n.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+e),n.next_out),n.next_out+=e,t.pending_out+=e,n.total_out+=e,n.avail_out-=e,t.pending-=e,0===t.pending&&(t.pending_out=0))},vl=(n,t)=>{kM(n,n.block_start>=0?n.block_start:-1,n.strstart-n.block_start,t),n.block_start=n.strstart,bl(n.strm)},Gr=(n,t)=>{n.pending_buf[n.pending++]=t},nb=(n,t)=>{n.pending_buf[n.pending++]=t>>>8&255,n.pending_buf[n.pending++]=255&t},QM=(n,t,e,i)=>{let r=n.avail_in;return r>i&&(r=i),0===r?0:(n.avail_in-=r,t.set(n.input.subarray(n.next_in,n.next_in+r),e),1===n.state.wrap?n.adler=Km(n.adler,t,r,e):2===n.state.wrap&&(n.adler=Fo(n.adler,t,r,e)),n.next_in+=r,n.total_in+=r,r)},NF=(n,t)=>{let r,s,e=n.max_chain_length,i=n.strstart,l=n.prev_length,u=n.nice_match;const f=n.strstart>n.w_size-ms?n.strstart-(n.w_size-ms):0,p=n.window,m=n.w_mask,_=n.prev,b=n.strstart+258;let w=p[i+l-1],F=p[i+l];n.prev_length>=n.good_match&&(e>>=2),u>n.lookahead&&(u=n.lookahead);do{if(r=t,p[r+l]===F&&p[r+l-1]===w&&p[r]===p[i]&&p[++r]===p[i+1]){i+=2,r++;do{}while(p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&il){if(n.match_start=t,l=s,s>=u)break;w=p[i+l-1],F=p[i+l]}}}while((t=_[t&m])>f&&0!=--e);return l<=n.lookahead?l:n.lookahead},gp=n=>{const t=n.w_size;let e,i,r;do{if(i=n.window_size-n.lookahead-n.strstart,n.strstart>=t+(t-ms)&&(n.window.set(n.window.subarray(t,t+t-i),0),n.match_start-=t,n.strstart-=t,n.block_start-=t,n.insert>n.strstart&&(n.insert=n.strstart),OF(n),i+=t),0===n.strm.avail_in)break;if(e=QM(n.strm,n.window,n.strstart+n.lookahead,i),n.lookahead+=e,n.lookahead+n.insert>=3)for(r=n.strstart-n.insert,n.ins_h=n.window[r],n.ins_h=Sh(n,n.ins_h,n.window[r+1]);n.insert&&(n.ins_h=Sh(n,n.ins_h,n.window[r+3-1]),n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++,n.insert--,!(n.lookahead+n.insert<3)););}while(n.lookahead{let i,r,s,e=n.pending_buf_size-5>n.w_size?n.w_size:n.pending_buf_size-5,l=0,u=n.strm.avail_in;do{if(i=65535,s=n.bi_valid+42>>3,n.strm.avail_outr+n.strm.avail_in&&(i=r+n.strm.avail_in),i>s&&(i=s),i>8,n.pending_buf[n.pending-2]=~i,n.pending_buf[n.pending-1]=~i>>8,bl(n.strm),r&&(r>i&&(r=i),n.strm.output.set(n.window.subarray(n.block_start,n.block_start+r),n.strm.next_out),n.strm.next_out+=r,n.strm.avail_out-=r,n.strm.total_out+=r,n.block_start+=r,i-=r),i&&(QM(n.strm,n.strm.output,n.strm.next_out,i),n.strm.next_out+=i,n.strm.avail_out-=i,n.strm.total_out+=i)}while(0===l);return u-=n.strm.avail_in,u&&(u>=n.w_size?(n.matches=2,n.window.set(n.strm.input.subarray(n.strm.next_in-n.w_size,n.strm.next_in),0),n.strstart=n.w_size,n.insert=n.strstart):(n.window_size-n.strstart<=u&&(n.strstart-=n.w_size,n.window.set(n.window.subarray(n.w_size,n.w_size+n.strstart),0),n.matches<2&&n.matches++,n.insert>n.strstart&&(n.insert=n.strstart)),n.window.set(n.strm.input.subarray(n.strm.next_in-u,n.strm.next_in),n.strstart),n.strstart+=u,n.insert+=u>n.w_size-n.insert?n.w_size-n.insert:u),n.block_start=n.strstart),n.high_waters&&n.block_start>=n.w_size&&(n.block_start-=n.w_size,n.strstart-=n.w_size,n.window.set(n.window.subarray(n.w_size,n.w_size+n.strstart),0),n.matches<2&&n.matches++,s+=n.w_size,n.insert>n.strstart&&(n.insert=n.strstart)),s>n.strm.avail_in&&(s=n.strm.avail_in),s&&(QM(n.strm,n.window,n.strstart,s),n.strstart+=s,n.insert+=s>n.w_size-n.insert?n.w_size-n.insert:s),n.high_water>3,s=n.pending_buf_size-s>65535?65535:n.pending_buf_size-s,e=s>n.w_size?n.w_size:s,r=n.strstart-n.block_start,(r>=e||(r||t===Jl)&&t!==fp&&0===n.strm.avail_in&&r<=s)&&(i=r>s?s:r,l=t===Jl&&0===n.strm.avail_in&&i===r?1:0,Au(n,n.block_start,i,l),n.block_start+=i,bl(n.strm)),l?3:1)},ib=(n,t)=>{let e,i;for(;;){if(n.lookahead=3&&(n.ins_h=Sh(n,n.ins_h,n.window[n.strstart+3-1]),e=n.prev[n.strstart&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=n.strstart),0!==e&&n.strstart-e<=n.w_size-ms&&(n.match_length=NF(n,e)),n.match_length>=3)if(i=Eh(n,n.strstart-n.match_start,n.match_length-3),n.lookahead-=n.match_length,n.match_length<=n.max_lazy_match&&n.lookahead>=3){n.match_length--;do{n.strstart++,n.ins_h=Sh(n,n.ins_h,n.window[n.strstart+3-1]),e=n.prev[n.strstart&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=n.strstart}while(0!=--n.match_length);n.strstart++}else n.strstart+=n.match_length,n.match_length=0,n.ins_h=n.window[n.strstart],n.ins_h=Sh(n,n.ins_h,n.window[n.strstart+1]);else i=Eh(n,0,n.window[n.strstart]),n.lookahead--,n.strstart++;if(i&&(vl(n,!1),0===n.strm.avail_out))return 1}return n.insert=n.strstart<2?n.strstart:2,t===Jl?(vl(n,!0),0===n.strm.avail_out?3:4):n.sym_next&&(vl(n,!1),0===n.strm.avail_out)?1:2},rb=(n,t)=>{let e,i,r;for(;;){if(n.lookahead=3&&(n.ins_h=Sh(n,n.ins_h,n.window[n.strstart+3-1]),e=n.prev[n.strstart&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=n.strstart),n.prev_length=n.match_length,n.prev_match=n.match_start,n.match_length=2,0!==e&&n.prev_length4096)&&(n.match_length=2)),n.prev_length>=3&&n.match_length<=n.prev_length){r=n.strstart+n.lookahead-3,i=Eh(n,n.strstart-1-n.prev_match,n.prev_length-3),n.lookahead-=n.prev_length-1,n.prev_length-=2;do{++n.strstart<=r&&(n.ins_h=Sh(n,n.ins_h,n.window[n.strstart+3-1]),e=n.prev[n.strstart&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=n.strstart)}while(0!=--n.prev_length);if(n.match_available=0,n.match_length=2,n.strstart++,i&&(vl(n,!1),0===n.strm.avail_out))return 1}else if(n.match_available){if(i=Eh(n,0,n.window[n.strstart-1]),i&&vl(n,!1),n.strstart++,n.lookahead--,0===n.strm.avail_out)return 1}else n.match_available=1,n.strstart++,n.lookahead--}return n.match_available&&(i=Eh(n,0,n.window[n.strstart-1]),n.match_available=0),n.insert=n.strstart<2?n.strstart:2,t===Jl?(vl(n,!0),0===n.strm.avail_out?3:4):n.sym_next&&(vl(n,!1),0===n.strm.avail_out)?1:2};function Vc(n,t,e,i,r){this.good_length=n,this.max_lazy=t,this.nice_length=e,this.max_chain=i,this.func=r}const Jm=[new Vc(0,0,0,0,LF),new Vc(4,4,8,4,ib),new Vc(4,5,16,8,ib),new Vc(4,6,32,32,ib),new Vc(4,4,16,16,rb),new Vc(8,16,32,32,rb),new Vc(8,16,128,128,rb),new Vc(8,32,128,256,rb),new Vc(32,128,258,1024,rb),new Vc(32,258,258,4096,rb)];function VF(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Z_,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),mu(this.dyn_ltree),mu(this.dyn_dtree),mu(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),mu(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),mu(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const ob=n=>{if(!n)return 1;const t=n.state;return!t||t.strm!==n||42!==t.status&&57!==t.status&&69!==t.status&&73!==t.status&&91!==t.status&&103!==t.status&&113!==t.status&&666!==t.status?1:0},GM=n=>{if(ob(n))return xd(n,Nc);n.total_in=n.total_out=0,n.data_type=$N;const t=n.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=2===t.wrap?57:t.wrap?42:113,n.adler=2===t.wrap?0:1,t.last_flush=-2,BM(t),Ys},jM=n=>{const t=GM(n);return t===Ys&&(n=>{n.window_size=2*n.w_size,mu(n.head),n.max_lazy_match=Jm[n.level].max_lazy,n.good_match=Jm[n.level].good_length,n.nice_match=Jm[n.level].nice_length,n.max_chain_length=Jm[n.level].max_chain,n.strstart=0,n.block_start=0,n.lookahead=0,n.insert=0,n.match_length=n.prev_length=2,n.match_available=0,n.ins_h=0})(n.state),t},$M=(n,t,e,i,r,s)=>{if(!n)return Nc;let l=1;if(t===SF&&(t=6),i<0?(l=0,i=-i):i>15&&(l=2,i-=16),r<1||r>9||e!==Z_||i<8||i>15||t<0||t>9||s<0||s>Ym||8===i&&1!==l)return xd(n,Nc);8===i&&(i=9);const u=new VF;return n.state=u,u.strm=n,u.status=42,u.wrap=l,u.gzhead=null,u.w_bits=i,u.w_size=1<$M(n,t,Z_,15,8,jN),deflateInit2:$M,deflateReset:jM,deflateResetKeep:GM,deflateSetHeader:(n,t)=>ob(n)||2!==n.state.wrap?Nc:(n.state.gzhead=t,Ys),deflate:(n,t)=>{if(ob(n)||t>PM||t<0)return n?xd(n,Nc):Nc;const e=n.state;if(!n.output||0!==n.avail_in&&!n.input||666===e.status&&t!==Jl)return xd(n,0===n.avail_out?OM:Nc);const i=e.last_flush;if(e.last_flush=t,0!==e.pending){if(bl(n),0===n.avail_out)return e.last_flush=-1,Ys}else if(0===n.avail_in&&PF(t)<=PF(i)&&t!==Jl)return xd(n,OM);if(666===e.status&&0!==n.avail_in)return xd(n,OM);if(42===e.status&&0===e.wrap&&(e.status=113),42===e.status){let r=Z_+(e.w_bits-8<<4)<<8,s=-1;if(s=e.strategy>=Y_||e.level<2?0:e.level<6?1:6===e.level?2:3,r|=s<<6,0!==e.strstart&&(r|=32),r+=31-r%31,nb(e,r),0!==e.strstart&&(nb(e,n.adler>>>16),nb(e,65535&n.adler)),n.adler=1,e.status=113,bl(n),0!==e.pending)return e.last_flush=-1,Ys}if(57===e.status)if(n.adler=0,Gr(e,31),Gr(e,139),Gr(e,8),e.gzhead)Gr(e,(e.gzhead.text?1:0)+(e.gzhead.hcrc?2:0)+(e.gzhead.extra?4:0)+(e.gzhead.name?8:0)+(e.gzhead.comment?16:0)),Gr(e,255&e.gzhead.time),Gr(e,e.gzhead.time>>8&255),Gr(e,e.gzhead.time>>16&255),Gr(e,e.gzhead.time>>24&255),Gr(e,9===e.level?2:e.strategy>=Y_||e.level<2?4:0),Gr(e,255&e.gzhead.os),e.gzhead.extra&&e.gzhead.extra.length&&(Gr(e,255&e.gzhead.extra.length),Gr(e,e.gzhead.extra.length>>8&255)),e.gzhead.hcrc&&(n.adler=Fo(n.adler,e.pending_buf,e.pending,0)),e.gzindex=0,e.status=69;else if(Gr(e,0),Gr(e,0),Gr(e,0),Gr(e,0),Gr(e,0),Gr(e,9===e.level?2:e.strategy>=Y_||e.level<2?4:0),Gr(e,3),e.status=113,bl(n),0!==e.pending)return e.last_flush=-1,Ys;if(69===e.status){if(e.gzhead.extra){let r=e.pending,s=(65535&e.gzhead.extra.length)-e.gzindex;for(;e.pending+s>e.pending_buf_size;){let u=e.pending_buf_size-e.pending;if(e.pending_buf.set(e.gzhead.extra.subarray(e.gzindex,e.gzindex+u),e.pending),e.pending=e.pending_buf_size,e.gzhead.hcrc&&e.pending>r&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),e.gzindex+=u,bl(n),0!==e.pending)return e.last_flush=-1,Ys;r=0,s-=u}let l=new Uint8Array(e.gzhead.extra);e.pending_buf.set(l.subarray(e.gzindex,e.gzindex+s),e.pending),e.pending+=s,e.gzhead.hcrc&&e.pending>r&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),e.gzindex=0}e.status=73}if(73===e.status){if(e.gzhead.name){let s,r=e.pending;do{if(e.pending===e.pending_buf_size){if(e.gzhead.hcrc&&e.pending>r&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),bl(n),0!==e.pending)return e.last_flush=-1,Ys;r=0}s=e.gzindexr&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),e.gzindex=0}e.status=91}if(91===e.status){if(e.gzhead.comment){let s,r=e.pending;do{if(e.pending===e.pending_buf_size){if(e.gzhead.hcrc&&e.pending>r&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),bl(n),0!==e.pending)return e.last_flush=-1,Ys;r=0}s=e.gzindexr&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r))}e.status=103}if(103===e.status){if(e.gzhead.hcrc){if(e.pending+2>e.pending_buf_size&&(bl(n),0!==e.pending))return e.last_flush=-1,Ys;Gr(e,255&n.adler),Gr(e,n.adler>>8&255),n.adler=0}if(e.status=113,bl(n),0!==e.pending)return e.last_flush=-1,Ys}if(0!==n.avail_in||0!==e.lookahead||t!==fp&&666!==e.status){let r=0===e.level?LF(e,t):e.strategy===Y_?((n,t)=>{let e;for(;;){if(0===n.lookahead&&(gp(n),0===n.lookahead)){if(t===fp)return 1;break}if(n.match_length=0,e=Eh(n,0,n.window[n.strstart]),n.lookahead--,n.strstart++,e&&(vl(n,!1),0===n.strm.avail_out))return 1}return n.insert=0,t===Jl?(vl(n,!0),0===n.strm.avail_out?3:4):n.sym_next&&(vl(n,!1),0===n.strm.avail_out)?1:2})(e,t):e.strategy===TF?((n,t)=>{let e,i,r,s;const l=n.window;for(;;){if(n.lookahead<=258){if(gp(n),n.lookahead<=258&&t===fp)return 1;if(0===n.lookahead)break}if(n.match_length=0,n.lookahead>=3&&n.strstart>0&&(r=n.strstart-1,i=l[r],i===l[++r]&&i===l[++r]&&i===l[++r])){s=n.strstart+258;do{}while(i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&rn.lookahead&&(n.match_length=n.lookahead)}if(n.match_length>=3?(e=Eh(n,1,n.match_length-3),n.lookahead-=n.match_length,n.strstart+=n.match_length,n.match_length=0):(e=Eh(n,0,n.window[n.strstart]),n.lookahead--,n.strstart++),e&&(vl(n,!1),0===n.strm.avail_out))return 1}return n.insert=0,t===Jl?(vl(n,!0),0===n.strm.avail_out?3:4):n.sym_next&&(vl(n,!1),0===n.strm.avail_out)?1:2})(e,t):Jm[e.level].func(e,t);if((3===r||4===r)&&(e.status=666),1===r||3===r)return 0===n.avail_out&&(e.last_flush=-1),Ys;if(2===r&&(t===S9?RM(e):t!==PM&&(Au(e,0,0,!1),t===QN&&(mu(e.head),0===e.lookahead&&(e.strstart=0,e.block_start=0,e.insert=0))),bl(n),0===n.avail_out))return e.last_flush=-1,Ys}return t!==Jl?Ys:e.wrap<=0?As:(2===e.wrap?(Gr(e,255&n.adler),Gr(e,n.adler>>8&255),Gr(e,n.adler>>16&255),Gr(e,n.adler>>24&255),Gr(e,255&n.total_in),Gr(e,n.total_in>>8&255),Gr(e,n.total_in>>16&255),Gr(e,n.total_in>>24&255)):(nb(e,n.adler>>>16),nb(e,65535&n.adler)),bl(n),e.wrap>0&&(e.wrap=-e.wrap),0!==e.pending?Ys:As)},deflateEnd:n=>{if(ob(n))return Nc;const t=n.state.status;return n.state=null,113===t?xd(n,zN):Ys},deflateSetDictionary:(n,t)=>{let e=t.length;if(ob(n))return Nc;const i=n.state,r=i.wrap;if(2===r||1===r&&42!==i.status||i.lookahead)return Nc;if(1===r&&(n.adler=Km(n.adler,t,e,0)),i.wrap=0,e>=i.w_size){0===r&&(mu(i.head),i.strstart=0,i.block_start=0,i.insert=0);let f=new Uint8Array(i.w_size);f.set(t.subarray(e-i.w_size,e),0),t=f,e=i.w_size}const s=n.avail_in,l=n.next_in,u=n.input;for(n.avail_in=e,n.next_in=0,n.input=t,gp(i);i.lookahead>=3;){let f=i.strstart,p=i.lookahead-2;do{i.ins_h=Sh(i,i.ins_h,i.window[f+3-1]),i.prev[f&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=f,f++}while(--p);i.strstart=f,i.lookahead=2,gp(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,n.next_in=l,n.input=u,n.avail_in=s,i.wrap=r,Ys},deflateInfo:"pako deflate (from Nodeca project)"};const nL=(n,t)=>Object.prototype.hasOwnProperty.call(n,t);var _p={assign:function(n){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const e=t.shift();if(e){if("object"!=typeof e)throw new TypeError(e+"must be non-object");for(const i in e)nL(e,i)&&(n[i]=e[i])}}return n},flattenChunks:n=>{let t=0;for(let i=0,r=n.length;i=252?6:n>=248?5:n>=240?4:n>=224?3:n>=192?2:1;eg[254]=eg[254]=1;var tg={string2buf:n=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(n);let t,e,i,r,s,l=n.length,u=0;for(r=0;r>>6,t[s++]=128|63&e):e<65536?(t[s++]=224|e>>>12,t[s++]=128|e>>>6&63,t[s++]=128|63&e):(t[s++]=240|e>>>18,t[s++]=128|e>>>12&63,t[s++]=128|e>>>6&63,t[s++]=128|63&e);return t},buf2string:(n,t)=>{const e=t||n.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(n.subarray(0,t));let i,r;const s=new Array(2*e);for(r=0,i=0;i4)s[r++]=65533,i+=u-1;else{for(l&=2===u?31:3===u?15:7;u>1&&i1?s[r++]=65533:l<65536?s[r++]=l:(l-=65536,s[r++]=55296|l>>10&1023,s[r++]=56320|1023&l)}}return((n,t)=>{if(t<65534&&n.subarray&&E1)return String.fromCharCode.apply(null,n.length===t?n:n.subarray(0,t));let e="";for(let i=0;i{(t=t||n.length)>n.length&&(t=n.length);let e=t-1;for(;e>=0&&128==(192&n[e]);)e--;return e<0||0===e?t:e+eg[n[e]]>t?e:t}},GF=function bp(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const jF=Object.prototype.toString,{Z_NO_FLUSH:ng,Z_SYNC_FLUSH:D9,Z_FULL_FLUSH:KM,Z_FINISH:B9,Z_OK:ab,Z_STREAM_END:$F,Z_DEFAULT_COMPRESSION:k9,Z_DEFAULT_STRATEGY:ig,Z_DEFLATED:sL}=hp;function lb(n){this.options=_p.assign({level:k9,method:sL,chunkSize:16384,windowBits:15,memLevel:8,strategy:ig},n||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new GF,this.strm.avail_out=0;let e=sb.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(e!==ab)throw new Error(up[e]);if(t.header&&sb.deflateSetHeader(this.strm,t.header),t.dictionary){let i;if(i="string"==typeof t.dictionary?tg.string2buf(t.dictionary):"[object ArrayBuffer]"===jF.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,e=sb.deflateSetDictionary(this.strm,i),e!==ab)throw new Error(up[e]);this._dict_set=!0}}function YM(n,t){const e=new lb(t);if(e.push(n,!0),e.err)throw e.msg||up[e.err];return e.result}lb.prototype.push=function(n,t){const e=this.strm,i=this.options.chunkSize;let r,s;if(this.ended)return!1;for(s=t===~~t?t:!0===t?B9:ng,e.input="string"==typeof n?tg.string2buf(n):"[object ArrayBuffer]"===jF.call(n)?new Uint8Array(n):n,e.next_in=0,e.avail_in=e.input.length;;)if(0===e.avail_out&&(e.output=new Uint8Array(i),e.next_out=0,e.avail_out=i),(s===D9||s===KM)&&e.avail_out<=6)this.onData(e.output.subarray(0,e.next_out)),e.avail_out=0;else{if(r=sb.deflate(e,s),r===$F)return e.next_out>0&&this.onData(e.output.subarray(0,e.next_out)),r=sb.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===ab;if(0!==e.avail_out){if(s>0&&e.next_out>0)this.onData(e.output.subarray(0,e.next_out)),e.avail_out=0;else if(0===e.avail_in)break}else this.onData(e.output)}return!0},lb.prototype.onData=function(n){this.chunks.push(n)},lb.prototype.onEnd=function(n){n===ab&&(this.result=_p.flattenChunks(this.chunks)),this.chunks=[],this.err=n,this.msg=this.strm.msg};var cL={Deflate:lb,deflate:YM,deflateRaw:function S1(n,t){return(t=t||{}).raw=!0,YM(n,t)},gzip:function aL(n,t){return(t=t||{}).gzip=!0,YM(n,t)},constants:hp};const Th=16209;var dL=function(t,e){let i,r,s,l,u,f,p,m,_,b,w,F,D,T,I,O,R,P,ee,J,te,ie,W,q;const ce=t.state;i=t.next_in,W=t.input,r=i+(t.avail_in-5),s=t.next_out,q=t.output,l=s-(e-t.avail_out),u=s+(t.avail_out-257),f=ce.dmax,p=ce.wsize,m=ce.whave,_=ce.wnext,b=ce.window,w=ce.hold,F=ce.bits,D=ce.lencode,T=ce.distcode,I=(1<>>24,w>>>=P,F-=P,P=R>>>16&255,0===P)q[s++]=65535&R;else{if(!(16&P)){if(64&P){if(32&P){ce.mode=16191;break e}t.msg="invalid literal/length code",ce.mode=Th;break e}R=D[(65535&R)+(w&(1<>>=P,F-=P),F<15&&(w+=W[i++]<>>24,w>>>=P,F-=P,P=R>>>16&255,16&P){if(J=65535&R,P&=15,Ff){t.msg="invalid distance too far back",ce.mode=Th;break e}if(w>>>=P,F-=P,P=s-l,J>P){if(P=J-P,P>m&&ce.sane){t.msg="invalid distance too far back",ce.mode=Th;break e}if(te=0,ie=b,0===_){if(te+=p-P,P2;)q[s++]=ie[te++],q[s++]=ie[te++],q[s++]=ie[te++],ee-=3;ee&&(q[s++]=ie[te++],ee>1&&(q[s++]=ie[te++]))}else{te=s-J;do{q[s++]=q[te++],q[s++]=q[te++],q[s++]=q[te++],ee-=3}while(ee>2);ee&&(q[s++]=q[te++],ee>1&&(q[s++]=q[te++]))}break}if(64&P){t.msg="invalid distance code",ce.mode=Th;break e}R=T[(65535&R)+(w&(1<>3,i-=ee,F-=ee<<3,w&=(1<{const f=u.bits;let R,P,ee,J,te,W,p=0,m=0,_=0,b=0,w=0,F=0,D=0,T=0,I=0,O=0,ie=null;const q=new Uint16Array(16),ce=new Uint16Array(16);let Ue,de,ze,ke=null;for(p=0;p<=15;p++)q[p]=0;for(m=0;m=1&&0===q[b];b--);if(w>b&&(w=b),0===b)return r[s++]=20971520,r[s++]=20971520,u.bits=1,0;for(_=1;_0&&(0===n||1!==b))return-1;for(ce[1]=0,p=1;p<15;p++)ce[p+1]=ce[p]+q[p];for(m=0;m852||2===n&&I>592)return 1;for(;;){Ue=p-D,l[m]+1=W?(de=ke[l[m]-W],ze=ie[l[m]-W]):(de=96,ze=0),R=1<>D)+P]=Ue<<24|de<<16|ze}while(0!==P);for(R=1<>=1;if(0!==R?(O&=R-1,O+=R):O=0,m++,0==--q[p]){if(p===b)break;p=t[e+l[m]]}if(p>w&&(O&J)!==ee){for(0===D&&(D=w),te+=_,F=p-D,T=1<852||2===n&&I>592)return 1;ee=O&J,r[ee]=w<<24|F<<16|te-s}}return 0!==O&&(r[te+O]=p-D<<24|64<<16),u.bits=w,0};const{Z_FINISH:AL,Z_BLOCK:JF,Z_TREES:vp,Z_OK:yp,Z_STREAM_END:mL,Z_NEED_DICT:eD,Z_STREAM_ERROR:ca,Z_DATA_ERROR:tD,Z_MEM_ERROR:nD,Z_BUF_ERROR:gL,Z_DEFLATED:iD}=hp,eE=16180,ub=16190,gu=16191,ag=16199,D1=16200,Po=16209,bD=n=>(n>>>24&255)+(n>>>8&65280)+((65280&n)<<8)+((255&n)<<24);function vD(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Ih=n=>{if(!n)return 1;const t=n.state;return!t||t.strm!==n||t.mode16211?1:0},B1=n=>{if(Ih(n))return ca;const t=n.state;return n.total_in=n.total_out=t.total=0,n.msg="",t.wrap&&(n.adler=1&t.wrap),t.mode=eE,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(852),t.distcode=t.distdyn=new Int32Array(592),t.sane=1,t.back=-1,yp},cE=n=>{if(Ih(n))return ca;const t=n.state;return t.wsize=0,t.whave=0,t.wnext=0,B1(n)},yD=(n,t)=>{let e;if(Ih(n))return ca;const i=n.state;return t<0?(e=0,t=-t):(e=5+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?ca:(null!==i.window&&i.wbits!==t&&(i.window=null),i.wrap=e,i.wbits=t,cE(n))},k1=(n,t)=>{if(!n)return ca;const e=new vD;n.state=e,e.strm=n,e.window=null,e.mode=eE;const i=yD(n,t);return i!==yp&&(n.state=null),i};let xD,R1,dE=!0;const wL=n=>{if(dE){xD=new Int32Array(512),R1=new Int32Array(32);let t=0;for(;t<144;)n.lens[t++]=8;for(;t<256;)n.lens[t++]=9;for(;t<280;)n.lens[t++]=7;for(;t<288;)n.lens[t++]=8;for(db(1,n.lens,0,288,xD,0,n.work,{bits:9}),t=0;t<32;)n.lens[t++]=5;db(2,n.lens,0,32,R1,0,n.work,{bits:5}),dE=!1}n.lencode=xD,n.lenbits=9,n.distcode=R1,n.distbits=5},uE=(n,t,e,i)=>{let r;const s=n.state;return null===s.window&&(s.wsize=1<=s.wsize?(s.window.set(t.subarray(e-s.wsize,e),0),s.wnext=0,s.whave=s.wsize):(r=s.wsize-s.wnext,r>i&&(r=i),s.window.set(t.subarray(e-i,e-i+r),s.wnext),(i-=r)?(s.window.set(t.subarray(e-i,e),0),s.wnext=i,s.whave=s.wsize):(s.wnext+=r,s.wnext===s.wsize&&(s.wnext=0),s.whavek1(n,15),inflateInit2:k1,inflate:(n,t)=>{let e,i,r,s,l,u,f,p,m,_,b,w,F,D,I,O,R,P,ee,J,te,ie,T=0;const W=new Uint8Array(4);let q,ce;const ke=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Ih(n)||!n.output||!n.input&&0!==n.avail_in)return ca;e=n.state,e.mode===gu&&(e.mode=16192),l=n.next_out,r=n.output,f=n.avail_out,s=n.next_in,i=n.input,u=n.avail_in,p=e.hold,m=e.bits,_=u,b=f,ie=yp;e:for(;;)switch(e.mode){case eE:if(0===e.wrap){e.mode=16192;break}for(;m<16;){if(0===u)break e;u--,p+=i[s++]<>>8&255,e.check=Fo(e.check,W,2,0),p=0,m=0,e.mode=16181;break}if(e.head&&(e.head.done=!1),!(1&e.wrap)||(((255&p)<<8)+(p>>8))%31){n.msg="incorrect header check",e.mode=Po;break}if((15&p)!==iD){n.msg="unknown compression method",e.mode=Po;break}if(p>>>=4,m-=4,te=8+(15&p),0===e.wbits&&(e.wbits=te),te>15||te>e.wbits){n.msg="invalid window size",e.mode=Po;break}e.dmax=1<>8&1),512&e.flags&&4&e.wrap&&(W[0]=255&p,W[1]=p>>>8&255,e.check=Fo(e.check,W,2,0)),p=0,m=0,e.mode=16182;case 16182:for(;m<32;){if(0===u)break e;u--,p+=i[s++]<>>8&255,W[2]=p>>>16&255,W[3]=p>>>24&255,e.check=Fo(e.check,W,4,0)),p=0,m=0,e.mode=16183;case 16183:for(;m<16;){if(0===u)break e;u--,p+=i[s++]<>8),512&e.flags&&4&e.wrap&&(W[0]=255&p,W[1]=p>>>8&255,e.check=Fo(e.check,W,2,0)),p=0,m=0,e.mode=16184;case 16184:if(1024&e.flags){for(;m<16;){if(0===u)break e;u--,p+=i[s++]<>>8&255,e.check=Fo(e.check,W,2,0)),p=0,m=0}else e.head&&(e.head.extra=null);e.mode=16185;case 16185:if(1024&e.flags&&(w=e.length,w>u&&(w=u),w&&(e.head&&(te=e.head.extra_len-e.length,e.head.extra||(e.head.extra=new Uint8Array(e.head.extra_len)),e.head.extra.set(i.subarray(s,s+w),te)),512&e.flags&&4&e.wrap&&(e.check=Fo(e.check,i,w,s)),u-=w,s+=w,e.length-=w),e.length))break e;e.length=0,e.mode=16186;case 16186:if(2048&e.flags){if(0===u)break e;w=0;do{te=i[s+w++],e.head&&te&&e.length<65536&&(e.head.name+=String.fromCharCode(te))}while(te&&w>9&1,e.head.done=!0),n.adler=e.check=0,e.mode=gu;break;case 16189:for(;m<32;){if(0===u)break e;u--,p+=i[s++]<>>=7&m,m-=7&m,e.mode=16206;break}for(;m<3;){if(0===u)break e;u--,p+=i[s++]<>>=1,m-=1,3&p){case 0:e.mode=16193;break;case 1:if(wL(e),e.mode=ag,t===vp){p>>>=2,m-=2;break e}break;case 2:e.mode=16196;break;case 3:n.msg="invalid block type",e.mode=Po}p>>>=2,m-=2;break;case 16193:for(p>>>=7&m,m-=7&m;m<32;){if(0===u)break e;u--,p+=i[s++]<>>16^65535)){n.msg="invalid stored block lengths",e.mode=Po;break}if(e.length=65535&p,p=0,m=0,e.mode=16194,t===vp)break e;case 16194:e.mode=16195;case 16195:if(w=e.length,w){if(w>u&&(w=u),w>f&&(w=f),0===w)break e;r.set(i.subarray(s,s+w),l),u-=w,s+=w,f-=w,l+=w,e.length-=w;break}e.mode=gu;break;case 16196:for(;m<14;){if(0===u)break e;u--,p+=i[s++]<>>=5,m-=5,e.ndist=1+(31&p),p>>>=5,m-=5,e.ncode=4+(15&p),p>>>=4,m-=4,e.nlen>286||e.ndist>30){n.msg="too many length or distance symbols",e.mode=Po;break}e.have=0,e.mode=16197;case 16197:for(;e.have>>=3,m-=3}for(;e.have<19;)e.lens[ke[e.have++]]=0;if(e.lencode=e.lendyn,e.lenbits=7,q={bits:e.lenbits},ie=db(0,e.lens,0,19,e.lencode,0,e.work,q),e.lenbits=q.bits,ie){n.msg="invalid code lengths set",e.mode=Po;break}e.have=0,e.mode=16198;case 16198:for(;e.have>>24,O=T>>>16&255,R=65535&T,!(I<=m);){if(0===u)break e;u--,p+=i[s++]<>>=I,m-=I,e.lens[e.have++]=R;else{if(16===R){for(ce=I+2;m>>=I,m-=I,0===e.have){n.msg="invalid bit length repeat",e.mode=Po;break}te=e.lens[e.have-1],w=3+(3&p),p>>>=2,m-=2}else if(17===R){for(ce=I+3;m>>=I,m-=I,te=0,w=3+(7&p),p>>>=3,m-=3}else{for(ce=I+7;m>>=I,m-=I,te=0,w=11+(127&p),p>>>=7,m-=7}if(e.have+w>e.nlen+e.ndist){n.msg="invalid bit length repeat",e.mode=Po;break}for(;w--;)e.lens[e.have++]=te}}if(e.mode===Po)break;if(0===e.lens[256]){n.msg="invalid code -- missing end-of-block",e.mode=Po;break}if(e.lenbits=9,q={bits:e.lenbits},ie=db(1,e.lens,0,e.nlen,e.lencode,0,e.work,q),e.lenbits=q.bits,ie){n.msg="invalid literal/lengths set",e.mode=Po;break}if(e.distbits=6,e.distcode=e.distdyn,q={bits:e.distbits},ie=db(2,e.lens,e.nlen,e.ndist,e.distcode,0,e.work,q),e.distbits=q.bits,ie){n.msg="invalid distances set",e.mode=Po;break}if(e.mode=ag,t===vp)break e;case ag:e.mode=D1;case D1:if(u>=6&&f>=258){n.next_out=l,n.avail_out=f,n.next_in=s,n.avail_in=u,e.hold=p,e.bits=m,dL(n,b),l=n.next_out,r=n.output,f=n.avail_out,s=n.next_in,i=n.input,u=n.avail_in,p=e.hold,m=e.bits,e.mode===gu&&(e.back=-1);break}for(e.back=0;T=e.lencode[p&(1<>>24,O=T>>>16&255,R=65535&T,!(I<=m);){if(0===u)break e;u--,p+=i[s++]<>P)],I=T>>>24,O=T>>>16&255,R=65535&T,!(P+I<=m);){if(0===u)break e;u--,p+=i[s++]<>>=P,m-=P,e.back+=P}if(p>>>=I,m-=I,e.back+=I,e.length=R,0===O){e.mode=16205;break}if(32&O){e.back=-1,e.mode=gu;break}if(64&O){n.msg="invalid literal/length code",e.mode=Po;break}e.extra=15&O,e.mode=16201;case 16201:if(e.extra){for(ce=e.extra;m>>=e.extra,m-=e.extra,e.back+=e.extra}e.was=e.length,e.mode=16202;case 16202:for(;T=e.distcode[p&(1<>>24,O=T>>>16&255,R=65535&T,!(I<=m);){if(0===u)break e;u--,p+=i[s++]<>P)],I=T>>>24,O=T>>>16&255,R=65535&T,!(P+I<=m);){if(0===u)break e;u--,p+=i[s++]<>>=P,m-=P,e.back+=P}if(p>>>=I,m-=I,e.back+=I,64&O){n.msg="invalid distance code",e.mode=Po;break}e.offset=R,e.extra=15&O,e.mode=16203;case 16203:if(e.extra){for(ce=e.extra;m>>=e.extra,m-=e.extra,e.back+=e.extra}if(e.offset>e.dmax){n.msg="invalid distance too far back",e.mode=Po;break}e.mode=16204;case 16204:if(0===f)break e;if(w=b-f,e.offset>w){if(w=e.offset-w,w>e.whave&&e.sane){n.msg="invalid distance too far back",e.mode=Po;break}w>e.wnext?(w-=e.wnext,F=e.wsize-w):F=e.wnext-w,w>e.length&&(w=e.length),D=e.window}else D=r,F=l-e.offset,w=e.length;w>f&&(w=f),f-=w,e.length-=w;do{r[l++]=D[F++]}while(--w);0===e.length&&(e.mode=D1);break;case 16205:if(0===f)break e;r[l++]=e.length,f--,e.mode=D1;break;case 16206:if(e.wrap){for(;m<32;){if(0===u)break e;u--,p|=i[s++]<{if(Ih(n))return ca;let t=n.state;return t.window&&(t.window=null),n.state=null,yp},inflateGetHeader:(n,t)=>{if(Ih(n))return ca;const e=n.state;return 2&e.wrap?(e.head=t,t.done=!1,yp):ca},inflateSetDictionary:(n,t)=>{const e=t.length;let i,r,s;return Ih(n)||(i=n.state,0!==i.wrap&&i.mode!==ub)?ca:i.mode===ub&&(r=1,r=Km(r,t,e,0),r!==i.check)?tD:(s=uE(n,t,e,e),s?(i.mode=16210,nD):(i.havedict=1,yp))},inflateInfo:"pako inflate (from Nodeca project)"},OD=function PD(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const ND=Object.prototype.toString,{Z_NO_FLUSH:LD,Z_FINISH:fE,Z_OK:lg,Z_STREAM_END:pE,Z_NEED_DICT:AE,Z_STREAM_ERROR:CL,Z_DATA_ERROR:UD,Z_MEM_ERROR:ML}=hp;function fb(n){this.options=_p.assign({chunkSize:65536,windowBits:15,to:""},n||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(n&&n.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(15&t.windowBits||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new GF,this.strm.avail_out=0;let e=Cd.inflateInit2(this.strm,t.windowBits);if(e!==lg)throw new Error(up[e]);if(this.header=new OD,Cd.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=tg.string2buf(t.dictionary):"[object ArrayBuffer]"===ND.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(e=Cd.inflateSetDictionary(this.strm,t.dictionary),e!==lg)))throw new Error(up[e])}function mE(n,t){const e=new fb(t);if(e.push(n),e.err)throw e.msg||up[e.err];return e.result}fb.prototype.push=function(n,t){const e=this.strm,i=this.options.chunkSize,r=this.options.dictionary;let s,l,u;if(this.ended)return!1;for(l=t===~~t?t:!0===t?fE:LD,e.input="[object ArrayBuffer]"===ND.call(n)?new Uint8Array(n):n,e.next_in=0,e.avail_in=e.input.length;;){for(0===e.avail_out&&(e.output=new Uint8Array(i),e.next_out=0,e.avail_out=i),s=Cd.inflate(e,l),s===AE&&r&&(s=Cd.inflateSetDictionary(e,r),s===lg?s=Cd.inflate(e,l):s===UD&&(s=AE));e.avail_in>0&&s===pE&&e.state.wrap>0&&0!==n[e.next_in];)Cd.inflateReset(e),s=Cd.inflate(e,l);switch(s){case CL:case UD:case AE:case ML:return this.onEnd(s),this.ended=!0,!1}if(u=e.avail_out,e.next_out&&(0===e.avail_out||s===pE))if("string"===this.options.to){let f=tg.utf8border(e.output,e.next_out),p=e.next_out-f,m=tg.buf2string(e.output,f);e.next_out=p,e.avail_out=i-p,p&&e.output.set(e.output.subarray(f,f+p),0),this.onData(m)}else this.onData(e.output.length===e.next_out?e.output:e.output.subarray(0,e.next_out));if(s!==lg||0!==u){if(s===pE)return s=Cd.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(0===e.avail_in)break}}return!0},fb.prototype.onData=function(n){this.chunks.push(n)},fb.prototype.onEnd=function(n){n===lg&&(this.result="string"===this.options.to?this.chunks.join(""):_p.flattenChunks(this.chunks)),this.chunks=[],this.err=n,this.msg=this.strm.msg};var GD={Inflate:fb,inflate:mE,inflateRaw:function EL(n,t){return(t=t||{}).raw=!0,mE(n,t)},ungzip:mE,constants:hp};const{ungzip:IL}=GD;var N1=IL;const L1=n=>{const t=[];for(let e=0;e{const i=t.name.endsWith(".gz"),r=new FileReader;let s;i?r.readAsArrayBuffer(t):r.readAsText(t,"utf8"),r.onload=l=>{const u=l.target.result.toString();s=i?N1(l.target.result,{to:"string"}):u,u.includes("gameObjectPositions")&&function NN(n){return new(AN())({allErrors:!0}).validate(E9,JSON.parse(n))}(u)&&(s=JSON.stringify(function kN(n){const{gameObjectPositions:t,cycles:e=[]}=JSON.parse(n),i={checksum:"",data:{projectName:"GameObjects",fileChecksum:"",apiVersion:"1.3",nodes:[]}},r=[{name:fu,type:ts.FOLDER,attributes:{},children:[]}];!function sF(n){for(const t of n)t.name.startsWith("root")||(t.name=t.name.startsWith(".")?`root${t.name}`:`root.${t.name}`)}(t);const s=t.find(u=>"root"===u.name),l=function ON(n){const t=Math.max(n.x,n.z);return{name:fu,position:{x:0,y:0,z:0},scale:{x:t,y:0,z:t}}}(s.scale);t.push(l);for(const u of t){const f=u.name.split(".");f[0]!==fu&&pM(f,r[0].children,fu,u,t,s)}return i.data.nodes=r,i.data.edges=e.map(u=>function aF(n){return{fromNodeName:p1(n.from),toNodeName:p1(n.to),attributes:{coupling:100}}}(u)),i.data.attributeTypes=function lF(){return{edges:{coupling:Fc.relative}}}(),i.checksum=O_()(JSON.stringify(i.data)),i}(u)))},r.onloadend=()=>{e(s)}})});return function(e){return n.apply(this,arguments)}}();let U1=(()=>{class n{constructor(e,i){this.store=e,this.loadFileService=i,this.isUploading=!1}uploadFiles(){const e=fM();e.addEventListener("change",()=>{this.uploadFilesOnEvent(e)}),e.click()}uploadFilesOnEvent(e){var i=this;return Mn(function*(){try{i.isUploading=!0,i.store.dispatch(Ic({value:!0})),i.store.dispatch(uh({value:!0}));const r=yield Promise.all(L1(e.files)),{customConfigs:s,ccFiles:l}=i.splitCustomConfigsAndCCFiles(e.files,r);for(const u of s)mr.importCustomConfigs(u);l.length>0&&i.loadFileService.loadFiles(l)}catch{i.store.dispatch(Ic({value:!1})),i.store.dispatch(uh({value:!1}))}finally{i.isUploading=!1}})()}splitCustomConfigsAndCCFiles(e,i){const r=[],s=[];for(const[l,u]of i.entries()){const f=e[l].name;f.includes(rF)?r.push(u):s.push({fileName:f,fileSize:e[l].size,content:HI(u)})}return{customConfigs:r,ccFiles:s}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(np))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),nB=(()=>{class n{constructor(e){this.uploadFilesService=e}uploadFiles(){this.uploadFilesService.uploadFiles()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(U1))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-upload-files-button"]],standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[["title","Load cc.json files",3,"click","icon"]],template:function(i,r){1&i&&(o.j41(0,"cc-action-icon",0),o.bIt("click",function(){return r.uploadFiles()}),o.k0s()),2&i&&o.Y8G("icon","fa fa-folder-open folder-icon")},dependencies:[pl],encapsulation:2})}}return n})();const V1=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function vE(n,t,e,i){n.addEventListener?n.addEventListener(t,e,i):n.attachEvent&&n.attachEvent("on".concat(t),e)}function pb(n,t,e,i){n.removeEventListener?n.removeEventListener(t,e,i):n.detachEvent&&n.detachEvent("on".concat(t),e)}function iB(n,t){const e=t.slice(0,t.length-1);for(let i=0;i=0;)t[e-1]+=",",t.splice(e,1),e=t.lastIndexOf("");return t}const cg={backspace:8,"\u232b":8,tab:9,clear:12,enter:13,"\u21a9":13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,num_0:96,num_1:97,num_2:98,num_3:99,num_4:100,num_5:101,num_6:102,num_7:103,num_8:104,num_9:105,num_multiply:106,num_add:107,num_enter:108,num_subtract:109,num_decimal:110,num_divide:111,"\u21ea":20,",":188,".":190,"/":191,"`":192,"-":V1?173:189,"=":V1?61:187,";":V1?59:186,"'":222,"[":219,"]":221,"\\":220},ec={"\u21e7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":91,cmd:91,command:91},wE={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},Zs={16:!1,18:!1,17:!1,91:!1},Do={};for(let n=1;n<20;n++)cg["f".concat(n)]=111+n;let Eo=[],dg=null,rB="all";const Md=new Map,Ab=n=>cg[n.toLowerCase()]||ec[n.toLowerCase()]||n.toUpperCase().charCodeAt(0);function xE(n){rB=n||"all"}function Fh(){return rB||"all"}function cB(n){if(typeof n>"u")Object.keys(Do).forEach(r=>{Array.isArray(Do[r])&&Do[r].forEach(s=>z1(s)),delete Do[r]}),wp(null);else if(Array.isArray(n))n.forEach(r=>{r.key&&z1(r)});else if("object"==typeof n)n.key&&z1(n);else if("string"==typeof n){for(var t=arguments.length,e=new Array(t>1?t-1:0),i=1;i{let{key:t,scope:e,method:i,splitKey:r="+"}=n;H1(t).forEach(l=>{const u=l.split(r),f=u.length,p=u[f-1],m="*"===p?"*":Ab(p);if(!Do[m])return;e||(e=Fh());const _=f>1?iB(ec,u):[],b=[];Do[m]=Do[m].filter(w=>{const D=(!i||w.method===i)&&w.scope===e&&function yE(n,t){const e=n.length>=t.length?n:t,i=n.length>=t.length?t:n;let r=!0;for(let s=0;swp(w))})};function dB(n,t,e,i){if(t.element!==i)return;let r;if(t.scope===e||"all"===t.scope){r=t.mods.length>0;for(const s in Zs)Object.prototype.hasOwnProperty.call(Zs,s)&&(!Zs[s]&&t.mods.indexOf(+s)>-1||Zs[s]&&-1===t.mods.indexOf(+s))&&(r=!1);(0===t.mods.length&&!Zs[16]&&!Zs[18]&&!Zs[17]&&!Zs[91]||r||"*"===t.shortcut)&&(t.keys=[],t.keys=t.keys.concat(Eo),!1===t.method(n,t)&&(n.preventDefault?n.preventDefault():n.returnValue=!1,n.stopPropagation&&n.stopPropagation(),n.cancelBubble&&(n.cancelBubble=!0)))}}function uB(n,t){const e=Do["*"];let i=n.keyCode||n.which||n.charCode;if(!Ed.filter.call(this,n))return;if((93===i||224===i)&&(i=91),-1===Eo.indexOf(i)&&229!==i&&Eo.push(i),["ctrlKey","altKey","shiftKey","metaKey"].forEach(u=>{const f=wE[u];n[u]&&-1===Eo.indexOf(f)?Eo.push(f):!n[u]&&Eo.indexOf(f)>-1?Eo.splice(Eo.indexOf(f),1):"metaKey"===u&&n[u]&&3===Eo.length&&(n.ctrlKey||n.shiftKey||n.altKey||(Eo=Eo.slice(Eo.indexOf(f))))}),i in Zs){Zs[i]=!0;for(const u in ec)ec[u]===i&&(Ed[u]=!0);if(!e)return}for(const u in Zs)Object.prototype.hasOwnProperty.call(Zs,u)&&(Zs[u]=n[wE[u]]);n.getModifierState&&(!n.altKey||n.ctrlKey)&&n.getModifierState("AltGraph")&&(-1===Eo.indexOf(17)&&Eo.push(17),-1===Eo.indexOf(18)&&Eo.push(18),Zs[17]=!0,Zs[18]=!0);const r=Fh();if(e)for(let u=0;u1&&(r=iB(ec,n)),(n="*"===(n=n[n.length-1])?"*":Ab(n))in Do||(Do[n]=[]),Do[n].push({keyup:f,keydown:p,scope:s,mods:r,shortcut:i[u],method:e,key:i[u],splitKey:m,element:l});if(typeof l<"u"&&window){if(!Md.has(l)){const w=function(){return uB(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.event,l)},F=function(){let D=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.event;uB(D,l),function kL(n){let t=n.keyCode||n.which||n.charCode;const e=Eo.indexOf(t);if(e>=0&&Eo.splice(e,1),n.key&&"meta"===n.key.toLowerCase()&&Eo.splice(0,Eo.length),(93===t||224===t)&&(t=91),t in Zs){Zs[t]=!1;for(const i in ec)ec[i]===t&&(Ed[i]=!1)}}(D)};Md.set(l,{keydownListener:w,keyupListenr:F,capture:_}),vE(l,"keydown",w,_),vE(l,"keyup",F,_)}if(!dg){const w=()=>{Eo=[]};dg={listener:w,capture:_},vE(window,"focus",w,_)}}}function wp(n){const t=Object.values(Do).flat();if(t.findIndex(i=>{let{element:r}=i;return r===n})<0){const{keydownListener:i,keyupListenr:r,capture:s}=Md.get(n)||{};i&&r&&(pb(n,"keyup",r,s),pb(n,"keydown",i,s),Md.delete(n))}if((t.length<=0||Md.size<=0)&&(Object.keys(Md).forEach(r=>{const{keydownListener:s,keyupListenr:l,capture:u}=Md.get(r)||{};s&&l&&(pb(r,"keyup",l,u),pb(r,"keydown",s,u),Md.delete(r))}),Md.clear(),Object.keys(Do).forEach(r=>delete Do[r]),dg)){const{listener:r,capture:s}=dg;pb(window,"focus",r,s),dg=null}}const G1={getPressedKeyString:function BL(){return Eo.map(n=>(n=>Object.keys(cg).find(t=>cg[t]===n))(n)||(n=>Object.keys(ec).find(t=>ec[t]===n))(n)||String.fromCharCode(n))},setScope:xE,getScope:Fh,deleteScope:function lB(n,t){let e,i;n||(n=Fh());for(const r in Do)if(Object.prototype.hasOwnProperty.call(Do,r))for(e=Do[r],i=0;i{let{element:u}=l;return wp(u)}):i++;Fh()===n&&xE(t||"all")},getPressedKeyCodes:function P9(){return Eo.slice(0)},getAllKeyCodes:function oB(){const n=[];return Object.keys(Do).forEach(t=>{Do[t].forEach(e=>{let{key:i,scope:r,mods:s,shortcut:l}=e;n.push({scope:r,shortcut:l,mods:s,keys:i.split("+").map(u=>Ab(u))})})}),n},isPressed:function aB(n){return"string"==typeof n&&(n=Ab(n)),-1!==Eo.indexOf(n)},filter:function sB(n){const t=n.target||n.srcElement,{tagName:e}=t;let i=!0;const r="INPUT"===e&&!["checkbox","radio","range","button","file","reset","submit","color"].includes(t.type);return(t.isContentEditable||(r||"TEXTAREA"===e||"SELECT"===e)&&!t.readOnly)&&(i=!1),i},trigger:function RL(n){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"all";Object.keys(Do).forEach(e=>{Do[e].filter(r=>r.scope===t&&r.shortcut===n).forEach(r=>{r&&r.method&&r.method()})})},unbind:cB,keyMap:cg,modifier:ec,modifierMap:wE};for(const n in G1)Object.prototype.hasOwnProperty.call(G1,n)&&(Ed[n]=G1[n]);if(typeof window<"u"){const n=window.hotkeys;Ed.noConflict=t=>(t&&window.hotkeys===Ed&&(window.hotkeys=n),Ed),window.hotkeys=Ed}var hB=v(7239),fB=v.n(hB);const pB=1,AB=2,bu=3,tc=0,da=1,vu=2,ug=100,mb=101,UL=102,_B=200,HL=201,QL=202,zL=203,gb=204,$1=205,GL=206,q1=207,ME=208,L9=209,bB=210,jL=211,vB=212,hg=213,$L=214,X1=0,CB=1,MB=2,Dh=0,XL=1,EB=2,KL=3,SB=4,TB=5,IB=6,FB=7,wu=301,fg=302,K1=306,_b=1e3,Sd=1001,IE=1002,ua=1003,FE=1004,Y1=1005,_s=1006,Bh=1007,xu=1008,Cu=1009,kB=1010,RB=1011,bb=1012,BE=1013,Mu=1014,wl=1015,pg=1016,kE=1017,RE=1018,Ag=1020,PB=35902,OB=1021,NB=1022,Da=1023,LB=1024,UB=1025,mg=1026,gg=1027,Z1=1028,_g=1029,VB=1030,PE=1031,OE=1033,vb=33776,NE=33777,J1=33778,yb=33779,ew=35840,LE=35841,tw=35842,UE=35843,wb=36196,xb=37492,nw=37496,iw=37808,rw=37809,Cb=37810,HB=37811,ow=37812,VE=37813,QB=37814,HE=37815,QE=37816,sw=37817,nc=37818,bg=37819,vg=37820,aw=37821,lw=36492,zE=36494,zB=36495,GB=36283,jB=36284,GE=36285,cw=36286,ic="srgb",Rh="srgb-linear",wg="display-p3",Sp="display-p3-linear",Sb="linear",Bo="srgb",Tb="rec709",Hc="p3",xg=7680,KB=512,YB=513,a5=514,ZB=515,q9=516,W9=517,X9=518,K9=519,tk="300 es",Qc=2e3;class rc{addEventListener(t,e){void 0===this._listeners&&(this._listeners={});const i=this._listeners;void 0===i[t]&&(i[t]=[]),-1===i[t].indexOf(e)&&i[t].push(e)}hasEventListener(t,e){if(void 0===this._listeners)return!1;const i=this._listeners;return void 0!==i[t]&&-1!==i[t].indexOf(e)}removeEventListener(t,e){if(void 0===this._listeners)return;const r=this._listeners[t];if(void 0!==r){const s=r.indexOf(e);-1!==s&&r.splice(s,1)}}dispatchEvent(t){if(void 0===this._listeners)return;const i=this._listeners[t.type];if(void 0!==i){t.target=this;const r=i.slice(0);for(let s=0,l=r.length;s>8&255]+Ba[n>>16&255]+Ba[n>>24&255]+"-"+Ba[255&t]+Ba[t>>8&255]+"-"+Ba[t>>16&15|64]+Ba[t>>24&255]+"-"+Ba[63&e|128]+Ba[e>>8&255]+"-"+Ba[e>>16&255]+Ba[e>>24&255]+Ba[255&i]+Ba[i>>8&255]+Ba[i>>16&255]+Ba[i>>24&255]).toLowerCase()}function Xo(n,t,e){return Math.max(t,Math.min(e,n))}function Sg(n,t,e){return(1-e)*n+e*t}function qa(n,t){switch(t.constructor){case Float32Array:return n;case Uint32Array:return n/4294967295;case Uint16Array:return n/65535;case Uint8Array:return n/255;case Int32Array:return Math.max(n/2147483647,-1);case Int16Array:return Math.max(n/32767,-1);case Int8Array:return Math.max(n/127,-1);default:throw new Error("Invalid component type.")}}function Ai(n,t){switch(t.constructor){case Float32Array:return n;case Uint32Array:return Math.round(4294967295*n);case Uint16Array:return Math.round(65535*n);case Uint8Array:return Math.round(255*n);case Int32Array:return Math.round(2147483647*n);case Int16Array:return Math.round(32767*n);case Int8Array:return Math.round(127*n);default:throw new Error("Invalid component type.")}}const Ib_DEG2RAD=Eg;class ft{constructor(t=0,e=0){ft.prototype.isVector2=!0,this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t){return this.x+=t.x,this.y+=t.y,this}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,i=this.y,r=t.elements;return this.x=r[0]*e+r[3]*i+r[6],this.y=r[1]*e+r[4]*i+r[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const i=this.dot(t)/e;return Math.acos(Xo(i,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,i=this.y-t.y;return e*e+i*i}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const i=Math.cos(e),r=Math.sin(e),s=this.x-t.x,l=this.y-t.y;return this.x=s*i-l*r+t.x,this.y=s*r+l*i+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class zi{constructor(t,e,i,r,s,l,u,f,p){zi.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],void 0!==t&&this.set(t,e,i,r,s,l,u,f,p)}set(t,e,i,r,s,l,u,f,p){const m=this.elements;return m[0]=t,m[1]=r,m[2]=u,m[3]=e,m[4]=s,m[5]=f,m[6]=i,m[7]=l,m[8]=p,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,i=t.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],this}extractBasis(t,e,i){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),i.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const i=t.elements,r=e.elements,s=this.elements,l=i[0],u=i[3],f=i[6],p=i[1],m=i[4],_=i[7],b=i[2],w=i[5],F=i[8],D=r[0],T=r[3],I=r[6],O=r[1],R=r[4],P=r[7],ee=r[2],J=r[5],te=r[8];return s[0]=l*D+u*O+f*ee,s[3]=l*T+u*R+f*J,s[6]=l*I+u*P+f*te,s[1]=p*D+m*O+_*ee,s[4]=p*T+m*R+_*J,s[7]=p*I+m*P+_*te,s[2]=b*D+w*O+F*ee,s[5]=b*T+w*R+F*J,s[8]=b*I+w*P+F*te,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],i=t[1],r=t[2],s=t[3],l=t[4],u=t[5],f=t[6],p=t[7],m=t[8];return e*l*m-e*u*p-i*s*m+i*u*f+r*s*p-r*l*f}invert(){const t=this.elements,e=t[0],i=t[1],r=t[2],s=t[3],l=t[4],u=t[5],f=t[6],p=t[7],m=t[8],_=m*l-u*p,b=u*f-m*s,w=p*s-l*f,F=e*_+i*b+r*w;if(0===F)return this.set(0,0,0,0,0,0,0,0,0);const D=1/F;return t[0]=_*D,t[1]=(r*p-m*i)*D,t[2]=(u*i-r*l)*D,t[3]=b*D,t[4]=(m*e-r*f)*D,t[5]=(r*s-u*e)*D,t[6]=w*D,t[7]=(i*f-p*e)*D,t[8]=(l*e-i*s)*D,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,i,r,s,l,u){const f=Math.cos(s),p=Math.sin(s);return this.set(i*f,i*p,-i*(f*l+p*u)+l+t,-r*p,r*f,-r*(-p*l+f*u)+u+e,0,0,1),this}scale(t,e){return this.premultiply(dw.makeScale(t,e)),this}rotate(t){return this.premultiply(dw.makeRotation(-t)),this}translate(t,e){return this.premultiply(dw.makeTranslation(t,e)),this}makeTranslation(t,e){return t.isVector2?this.set(1,0,t.x,0,1,t.y,0,0,1):this.set(1,0,t,0,1,e,0,0,1),this}makeRotation(t){const e=Math.cos(t),i=Math.sin(t);return this.set(e,-i,0,i,e,0,0,0,1),this}makeScale(t,e){return this.set(t,0,0,0,e,0,0,0,1),this}equals(t){const e=this.elements,i=t.elements;for(let r=0;r<9;r++)if(e[r]!==i[r])return!1;return!0}fromArray(t,e=0){for(let i=0;i<9;i++)this.elements[i]=t[i+e];return this}toArray(t=[],e=0){const i=this.elements;return t[e]=i[0],t[e+1]=i[1],t[e+2]=i[2],t[e+3]=i[3],t[e+4]=i[4],t[e+5]=i[5],t[e+6]=i[6],t[e+7]=i[7],t[e+8]=i[8],t}clone(){return(new this.constructor).fromArray(this.elements)}}const dw=new zi;function g5(n){for(let t=n.length-1;t>=0;--t)if(n[t]>=65535)return!0;return!1}function uw(n){return document.createElementNS("http://www.w3.org/1999/xhtml",n)}function JE(){const n=uw("canvas");return n.style.display="block",n}Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array;const sk={};function Ip(n){n in sk||(sk[n]=!0,console.warn(n))}const eS=(new zi).set(.8224621,.177538,0,.0331941,.9668058,0,.0170827,.0723974,.9105199),tS=(new zi).set(1.2249401,-.2249404,0,-.0420569,1.0420571,0,-.0196376,-.0786361,1.0982735),Db={[Rh]:{transfer:Sb,primaries:Tb,luminanceCoefficients:[.2126,.7152,.0722],toReference:n=>n,fromReference:n=>n},[ic]:{transfer:Bo,primaries:Tb,luminanceCoefficients:[.2126,.7152,.0722],toReference:n=>n.convertSRGBToLinear(),fromReference:n=>n.convertLinearToSRGB()},[Sp]:{transfer:Sb,primaries:Hc,luminanceCoefficients:[.2289,.6917,.0793],toReference:n=>n.applyMatrix3(tS),fromReference:n=>n.applyMatrix3(eS)},[wg]:{transfer:Bo,primaries:Hc,luminanceCoefficients:[.2289,.6917,.0793],toReference:n=>n.convertSRGBToLinear().applyMatrix3(tS),fromReference:n=>n.applyMatrix3(eS).convertLinearToSRGB()}},b5=new Set([Rh,Sp]),Pr={enabled:!0,_workingColorSpace:Rh,get workingColorSpace(){return this._workingColorSpace},set workingColorSpace(n){if(!b5.has(n))throw new Error(`Unsupported working color space, "${n}".`);this._workingColorSpace=n},convert:function(n,t,e){return!1!==this.enabled&&t!==e&&t&&e?(0,Db[e].fromReference)((0,Db[t].toReference)(n)):n},fromWorkingColorSpace:function(n,t){return this.convert(n,this._workingColorSpace,t)},toWorkingColorSpace:function(n,t){return this.convert(n,t,this._workingColorSpace)},getPrimaries:function(n){return Db[n].primaries},getTransfer:function(n){return""===n?Sb:Db[n].transfer},getLuminanceCoefficients:function(n,t=this._workingColorSpace){return n.fromArray(Db[t].luminanceCoefficients)}};function Tg(n){return n<.04045?.0773993808*n:Math.pow(.9478672986*n+.0521327014,2.4)}function hw(n){return n<.0031308?12.92*n:1.055*Math.pow(n,.41666)-.055}let Eu;class Bb{static getDataURL(t){if(/^data:/i.test(t.src)||typeof HTMLCanvasElement>"u")return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{void 0===Eu&&(Eu=uw("canvas")),Eu.width=t.width,Eu.height=t.height;const i=Eu.getContext("2d");t instanceof ImageData?i.putImageData(t,0,0):i.drawImage(t,0,0,t.width,t.height),e=Eu}return e.width>2048||e.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",t),e.toDataURL("image/jpeg",.6)):e.toDataURL("image/png")}static sRGBToLinear(t){if(typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap){const e=uw("canvas");e.width=t.width,e.height=t.height;const i=e.getContext("2d");i.drawImage(t,0,0,t.width,t.height);const r=i.getImageData(0,0,t.width,t.height),s=r.data;for(let l=0;l{class n extends rc{constructor(e=n.DEFAULT_IMAGE,i=n.DEFAULT_MAPPING,r=Sd,s=Sd,l=_s,u=xu,f=Da,p=Cu,m=n.DEFAULT_ANISOTROPY,_=""){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:rQ++}),this.uuid=xl(),this.name="",this.source=new Fp(e),this.mipmaps=[],this.mapping=i,this.channel=0,this.wrapS=r,this.wrapT=s,this.magFilter=l,this.minFilter=u,this.anisotropy=m,this.format=f,this.internalFormat=null,this.type=p,this.offset=new ft(0,0),this.repeat=new ft(1,1),this.center=new ft(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new zi,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace=_,this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1,this.pmremVersion=0}get image(){return this.source.data}set image(e=null){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return(new this.constructor).copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}toJSON(e){const i=void 0===e||"string"==typeof e;if(!i&&void 0!==e.textures[this.uuid])return e.textures[this.uuid];const r={metadata:{version:4.6,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(r.userData=this.userData),i||(e.textures[this.uuid]=r),r}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(e){if(300!==this.mapping)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case _b:e.x=e.x-Math.floor(e.x);break;case Sd:e.x=e.x<0?0:1;break;case 1002:e.x=1===Math.abs(Math.floor(e.x)%2)?Math.ceil(e.x)-e.x:e.x-Math.floor(e.x)}if(e.y<0||e.y>1)switch(this.wrapT){case _b:e.y=e.y-Math.floor(e.y);break;case Sd:e.y=e.y<0?0:1;break;case 1002:e.y=1===Math.abs(Math.floor(e.y)%2)?Math.ceil(e.y)-e.y:e.y-Math.floor(e.y)}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){!0===e&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){!0===e&&this.pmremVersion++}}return n.DEFAULT_IMAGE=null,n.DEFAULT_MAPPING=300,n.DEFAULT_ANISOTROPY=1,n})();class so{constructor(t=0,e=0,i=0,r=1){so.prototype.isVector4=!0,this.x=t,this.y=e,this.z=i,this.w=r}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,i,r){return this.x=t,this.y=e,this.z=i,this.w=r,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,i=this.y,r=this.z,s=this.w,l=t.elements;return this.x=l[0]*e+l[4]*i+l[8]*r+l[12]*s,this.y=l[1]*e+l[5]*i+l[9]*r+l[13]*s,this.z=l[2]*e+l[6]*i+l[10]*r+l[14]*s,this.w=l[3]*e+l[7]*i+l[11]*r+l[15]*s,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,i,r,s;const f=t.elements,p=f[0],m=f[4],_=f[8],b=f[1],w=f[5],F=f[9],D=f[2],T=f[6],I=f[10];if(Math.abs(m-b)<.01&&Math.abs(_-D)<.01&&Math.abs(F-T)<.01){if(Math.abs(m+b)<.1&&Math.abs(_+D)<.1&&Math.abs(F+T)<.1&&Math.abs(p+w+I-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;const R=(p+1)/2,P=(w+1)/2,ee=(I+1)/2,J=(m+b)/4,te=(_+D)/4,ie=(F+T)/4;return R>P&&R>ee?R<.01?(i=0,r=.707106781,s=.707106781):(i=Math.sqrt(R),r=J/i,s=te/i):P>ee?P<.01?(i=.707106781,r=0,s=.707106781):(r=Math.sqrt(P),i=J/r,s=ie/r):ee<.01?(i=.707106781,r=.707106781,s=0):(s=Math.sqrt(ee),i=te/s,r=ie/s),this.set(i,r,s,e),this}let O=Math.sqrt((T-F)*(T-F)+(_-D)*(_-D)+(b-m)*(b-m));return Math.abs(O)<.001&&(O=1),this.x=(T-F)/O,this.y=(_-D)/O,this.z=(b-m)/O,this.w=Math.acos((p+w+I-1)/2),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this.w=e[15],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this.w=t.w+(e.w-t.w)*i,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class v5 extends rc{constructor(t=1,e=1,i={}){super(),this.isRenderTarget=!0,this.width=t,this.height=e,this.depth=1,this.scissor=new so(0,0,t,e),this.scissorTest=!1,this.viewport=new so(0,0,t,e);const r={width:t,height:e,depth:1};i=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:_s,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1},i);const s=new Wa(r,i.mapping,i.wrapS,i.wrapT,i.magFilter,i.minFilter,i.format,i.type,i.anisotropy,i.colorSpace);s.flipY=!1,s.generateMipmaps=i.generateMipmaps,s.internalFormat=i.internalFormat,this.textures=[];const l=i.count;for(let u=0;u=0?1:-1,R=1-I*I;if(R>Number.EPSILON){const ee=Math.sqrt(R),J=Math.atan2(ee,I*O);T=Math.sin(T*J)/ee,u=Math.sin(u*J)/ee}const P=u*O;if(f=f*T+b*P,p=p*T+w*P,m=m*T+F*P,_=_*T+D*P,T===1-u){const ee=1/Math.sqrt(f*f+p*p+m*m+_*_);f*=ee,p*=ee,m*=ee,_*=ee}}t[e]=f,t[e+1]=p,t[e+2]=m,t[e+3]=_}static multiplyQuaternionsFlat(t,e,i,r,s,l){const u=i[r],f=i[r+1],p=i[r+2],m=i[r+3],_=s[l],b=s[l+1],w=s[l+2],F=s[l+3];return t[e]=u*F+m*_+f*w-p*b,t[e+1]=f*F+m*b+p*_-u*w,t[e+2]=p*F+m*w+u*b-f*_,t[e+3]=m*F-u*_-f*b-p*w,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,i,r){return this._x=t,this._y=e,this._z=i,this._w=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e=!0){const i=t._x,r=t._y,s=t._z,l=t._order,u=Math.cos,f=Math.sin,p=u(i/2),m=u(r/2),_=u(s/2),b=f(i/2),w=f(r/2),F=f(s/2);switch(l){case"XYZ":this._x=b*m*_+p*w*F,this._y=p*w*_-b*m*F,this._z=p*m*F+b*w*_,this._w=p*m*_-b*w*F;break;case"YXZ":this._x=b*m*_+p*w*F,this._y=p*w*_-b*m*F,this._z=p*m*F-b*w*_,this._w=p*m*_+b*w*F;break;case"ZXY":this._x=b*m*_-p*w*F,this._y=p*w*_+b*m*F,this._z=p*m*F+b*w*_,this._w=p*m*_-b*w*F;break;case"ZYX":this._x=b*m*_-p*w*F,this._y=p*w*_+b*m*F,this._z=p*m*F-b*w*_,this._w=p*m*_+b*w*F;break;case"YZX":this._x=b*m*_+p*w*F,this._y=p*w*_+b*m*F,this._z=p*m*F-b*w*_,this._w=p*m*_-b*w*F;break;case"XZY":this._x=b*m*_-p*w*F,this._y=p*w*_-b*m*F,this._z=p*m*F+b*w*_,this._w=p*m*_+b*w*F;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+l)}return!0===e&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const i=e/2,r=Math.sin(i);return this._x=t.x*r,this._y=t.y*r,this._z=t.z*r,this._w=Math.cos(i),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,i=e[0],r=e[4],s=e[8],l=e[1],u=e[5],f=e[9],p=e[2],m=e[6],_=e[10],b=i+u+_;if(b>0){const w=.5/Math.sqrt(b+1);this._w=.25/w,this._x=(m-f)*w,this._y=(s-p)*w,this._z=(l-r)*w}else if(i>u&&i>_){const w=2*Math.sqrt(1+i-u-_);this._w=(m-f)/w,this._x=.25*w,this._y=(r+l)/w,this._z=(s+p)/w}else if(u>_){const w=2*Math.sqrt(1+u-i-_);this._w=(s-p)/w,this._x=(r+l)/w,this._y=.25*w,this._z=(f+m)/w}else{const w=2*Math.sqrt(1+_-i-u);this._w=(l-r)/w,this._x=(s+p)/w,this._y=(f+m)/w,this._z=.25*w}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let i=t.dot(e)+1;return iMath.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=i):(this._x=0,this._y=-t.z,this._z=t.y,this._w=i)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=i),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(Xo(this.dot(t),-1,1)))}rotateTowards(t,e){const i=this.angleTo(t);if(0===i)return this;const r=Math.min(1,e/i);return this.slerp(t,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t){return this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const i=t._x,r=t._y,s=t._z,l=t._w,u=e._x,f=e._y,p=e._z,m=e._w;return this._x=i*m+l*u+r*p-s*f,this._y=r*m+l*f+s*u-i*p,this._z=s*m+l*p+i*f-r*u,this._w=l*m-i*u-r*f-s*p,this._onChangeCallback(),this}slerp(t,e){if(0===e)return this;if(1===e)return this.copy(t);const i=this._x,r=this._y,s=this._z,l=this._w;let u=l*t._w+i*t._x+r*t._y+s*t._z;if(u<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,u=-u):this.copy(t),u>=1)return this._w=l,this._x=i,this._y=r,this._z=s,this;const f=1-u*u;if(f<=Number.EPSILON){const w=1-e;return this._w=w*l+e*this._w,this._x=w*i+e*this._x,this._y=w*r+e*this._y,this._z=w*s+e*this._z,this.normalize(),this}const p=Math.sqrt(f),m=Math.atan2(p,u),_=Math.sin((1-e)*m)/p,b=Math.sin(e*m)/p;return this._w=l*_+this._w*b,this._x=i*_+this._x*b,this._y=r*_+this._y*b,this._z=s*_+this._z*b,this._onChangeCallback(),this}slerpQuaternions(t,e,i){return this.copy(t).slerp(e,i)}random(){const t=2*Math.PI*Math.random(),e=2*Math.PI*Math.random(),i=Math.random(),r=Math.sqrt(1-i),s=Math.sqrt(i);return this.set(r*Math.sin(t),r*Math.cos(t),s*Math.sin(e),s*Math.cos(e))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class pe{constructor(t=0,e=0,i=0){pe.prototype.isVector3=!0,this.x=t,this.y=e,this.z=i}set(t,e,i){return void 0===i&&(i=this.z),this.x=t,this.y=e,this.z=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return this.applyQuaternion(w5.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(w5.setFromAxisAngle(t,e))}applyMatrix3(t){const e=this.x,i=this.y,r=this.z,s=t.elements;return this.x=s[0]*e+s[3]*i+s[6]*r,this.y=s[1]*e+s[4]*i+s[7]*r,this.z=s[2]*e+s[5]*i+s[8]*r,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,i=this.y,r=this.z,s=t.elements,l=1/(s[3]*e+s[7]*i+s[11]*r+s[15]);return this.x=(s[0]*e+s[4]*i+s[8]*r+s[12])*l,this.y=(s[1]*e+s[5]*i+s[9]*r+s[13])*l,this.z=(s[2]*e+s[6]*i+s[10]*r+s[14])*l,this}applyQuaternion(t){const e=this.x,i=this.y,r=this.z,s=t.x,l=t.y,u=t.z,f=t.w,p=2*(l*r-u*i),m=2*(u*e-s*r),_=2*(s*i-l*e);return this.x=e+f*p+l*_-u*m,this.y=i+f*m+u*p-s*_,this.z=r+f*_+s*m-l*p,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,i=this.y,r=this.z,s=t.elements;return this.x=s[0]*e+s[4]*i+s[8]*r,this.y=s[1]*e+s[5]*i+s[9]*r,this.z=s[2]*e+s[6]*i+s[10]*r,this.normalize()}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this}cross(t){return this.crossVectors(this,t)}crossVectors(t,e){const i=t.x,r=t.y,s=t.z,l=e.x,u=e.y,f=e.z;return this.x=r*f-s*u,this.y=s*l-i*f,this.z=i*u-r*l,this}projectOnVector(t){const e=t.lengthSq();if(0===e)return this.set(0,0,0);const i=t.dot(this)/e;return this.copy(t).multiplyScalar(i)}projectOnPlane(t){return ck.copy(this).projectOnVector(t),this.sub(ck)}reflect(t){return this.sub(ck.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const i=this.dot(t)/e;return Math.acos(Xo(i,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,i=this.y-t.y,r=this.z-t.z;return e*e+i*i+r*r}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,i){const r=Math.sin(e)*t;return this.x=r*Math.sin(i),this.y=Math.cos(e)*t,this.z=r*Math.cos(i),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,i){return this.x=t*Math.sin(e),this.y=i,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),i=this.setFromMatrixColumn(t,1).length(),r=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=i,this.z=r,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}setFromEuler(t){return this.x=t._x,this.y=t._y,this.z=t._z,this}setFromColor(t){return this.x=t.r,this.y=t.g,this.z=t.b,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=Math.random()*Math.PI*2,e=2*Math.random()-1,i=Math.sqrt(1-e*e);return this.x=i*Math.cos(t),this.y=e,this.z=i*Math.sin(t),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const ck=new pe,w5=new Vs;class Ss{constructor(t=new pe(1/0,1/0,1/0),e=new pe(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){this.makeEmpty();for(let e=0,i=t.length;e=this.min.x&&t.x<=this.max.x&&t.y>=this.min.y&&t.y<=this.max.y&&t.z>=this.min.z&&t.z<=this.max.z}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(t){return t.max.x>=this.min.x&&t.min.x<=this.max.x&&t.max.y>=this.min.y&&t.min.y<=this.max.y&&t.max.z>=this.min.z&&t.min.z<=this.max.z}intersectsSphere(t){return this.clampPoint(t.center,Td),Td.distanceToSquared(t.center)<=t.radius*t.radius}intersectsPlane(t){let e,i;return t.normal.x>0?(e=t.normal.x*this.min.x,i=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,i=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,i+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,i+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,i+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,i+=t.normal.z*this.min.z),e<=-t.constant&&i>=-t.constant}intersectsTriangle(t){if(this.isEmpty())return!1;this.getCenter(Fg),mw.subVectors(this.max,Fg),Ig.subVectors(t.a,Fg),kb.subVectors(t.b,Fg),Dp.subVectors(t.c,Fg),Oh.subVectors(kb,Ig),Bp.subVectors(Dp,kb),kp.subVectors(Ig,Dp);let e=[0,-Oh.z,Oh.y,0,-Bp.z,Bp.y,0,-kp.z,kp.y,Oh.z,0,-Oh.x,Bp.z,0,-Bp.x,kp.z,0,-kp.x,-Oh.y,Oh.x,0,-Bp.y,Bp.x,0,-kp.y,kp.x,0];return!(!iS(e,Ig,kb,Dp,mw)||(e=[1,0,0,0,1,0,0,0,1],!iS(e,Ig,kb,Dp,mw)))&&(gw.crossVectors(Oh,Bp),e=[gw.x,gw.y,gw.z],iS(e,Ig,kb,Dp,mw))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,Td).distanceTo(t)}getBoundingSphere(t){return this.isEmpty()?t.makeEmpty():(this.getCenter(t.center),t.radius=.5*this.getSize(Td).length()),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()||(Ph[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),Ph[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),Ph[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),Ph[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),Ph[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),Ph[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),Ph[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),Ph[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(Ph)),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}const Ph=[new pe,new pe,new pe,new pe,new pe,new pe,new pe,new pe],Td=new pe,Aw=new Ss,Ig=new pe,kb=new pe,Dp=new pe,Oh=new pe,Bp=new pe,kp=new pe,Fg=new pe,mw=new pe,gw=new pe,Rp=new pe;function iS(n,t,e,i,r){for(let s=0,l=n.length-3;s<=l;s+=3){Rp.fromArray(n,s);const u=r.x*Math.abs(Rp.x)+r.y*Math.abs(Rp.y)+r.z*Math.abs(Rp.z),f=t.dot(Rp),p=e.dot(Rp),m=i.dot(Rp);if(Math.max(-Math.max(f,p,m),Math.min(f,p,m))>u)return!1}return!0}const x5=new Ss,Dg=new pe,_w=new pe;class ha{constructor(t=new pe,e=-1){this.isSphere=!0,this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const i=this.center;void 0!==e?i.copy(e):x5.setFromPoints(t).getCenter(i);let r=0;for(let s=0,l=t.length;sthis.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){if(this.isEmpty())return this.center.copy(t),this.radius=0,this;Dg.subVectors(t,this.center);const e=Dg.lengthSq();if(e>this.radius*this.radius){const i=Math.sqrt(e),r=.5*(i-this.radius);this.center.addScaledVector(Dg,r/i),this.radius+=r}return this}union(t){return t.isEmpty()?this:this.isEmpty()?(this.copy(t),this):(!0===this.center.equals(t.center)?this.radius=Math.max(this.radius,t.radius):(_w.subVectors(t.center,this.center).setLength(t.radius),this.expandByPoint(Dg.copy(t.center).add(_w)),this.expandByPoint(Dg.copy(t.center).sub(_w))),this)}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return(new this.constructor).copy(this)}}const Su=new pe,rS=new pe,bw=new pe,Nh=new pe,vw=new pe,Rb=new pe,oS=new pe;class Lh{constructor(t=new pe,e=new pe(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return e.copy(this.origin).addScaledVector(this.direction,t)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,Su)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const i=e.dot(this.direction);return i<0?e.copy(this.origin):e.copy(this.origin).addScaledVector(this.direction,i)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=Su.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(Su.copy(this.origin).addScaledVector(this.direction,e),Su.distanceToSquared(t))}distanceSqToSegment(t,e,i,r){rS.copy(t).add(e).multiplyScalar(.5),bw.copy(e).sub(t).normalize(),Nh.copy(this.origin).sub(rS);const s=.5*t.distanceTo(e),l=-this.direction.dot(bw),u=Nh.dot(this.direction),f=-Nh.dot(bw),p=Nh.lengthSq(),m=Math.abs(1-l*l);let _,b,w,F;if(m>0)if(_=l*f-u,b=l*u-f,F=s*m,_>=0)if(b>=-F)if(b<=F){const D=1/m;_*=D,b*=D,w=_*(_+l*b+2*u)+b*(l*_+b+2*f)+p}else b=s,_=Math.max(0,-(l*b+u)),w=-_*_+b*(b+2*f)+p;else b=-s,_=Math.max(0,-(l*b+u)),w=-_*_+b*(b+2*f)+p;else b<=-F?(_=Math.max(0,-(-l*s+u)),b=_>0?-s:Math.min(Math.max(-s,-f),s),w=-_*_+b*(b+2*f)+p):b<=F?(_=0,b=Math.min(Math.max(-s,-f),s),w=b*(b+2*f)+p):(_=Math.max(0,-(l*s+u)),b=_>0?s:Math.min(Math.max(-s,-f),s),w=-_*_+b*(b+2*f)+p);else b=l>0?-s:s,_=Math.max(0,-(l*b+u)),w=-_*_+b*(b+2*f)+p;return i&&i.copy(this.origin).addScaledVector(this.direction,_),r&&r.copy(rS).addScaledVector(bw,b),w}intersectSphere(t,e){Su.subVectors(t.center,this.origin);const i=Su.dot(this.direction),r=Su.dot(Su)-i*i,s=t.radius*t.radius;if(r>s)return null;const l=Math.sqrt(s-r),u=i-l,f=i+l;return f<0?null:this.at(u<0?f:u,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;const i=-(this.origin.dot(t.normal)+t.constant)/e;return i>=0?i:null}intersectPlane(t,e){const i=this.distanceToPlane(t);return null===i?null:this.at(i,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);return 0===e||t.normal.dot(this.direction)*e<0}intersectBox(t,e){let i,r,s,l,u,f;const p=1/this.direction.x,m=1/this.direction.y,_=1/this.direction.z,b=this.origin;return p>=0?(i=(t.min.x-b.x)*p,r=(t.max.x-b.x)*p):(i=(t.max.x-b.x)*p,r=(t.min.x-b.x)*p),m>=0?(s=(t.min.y-b.y)*m,l=(t.max.y-b.y)*m):(s=(t.max.y-b.y)*m,l=(t.min.y-b.y)*m),i>l||s>r||((s>i||isNaN(i))&&(i=s),(l=0?(u=(t.min.z-b.z)*_,f=(t.max.z-b.z)*_):(u=(t.max.z-b.z)*_,f=(t.min.z-b.z)*_),i>f||u>r)||((u>i||i!=i)&&(i=u),(f=0?i:r,e)}intersectsBox(t){return null!==this.intersectBox(t,Su)}intersectTriangle(t,e,i,r,s){vw.subVectors(e,t),Rb.subVectors(i,t),oS.crossVectors(vw,Rb);let u,l=this.direction.dot(oS);if(l>0){if(r)return null;u=1}else{if(!(l<0))return null;u=-1,l=-l}Nh.subVectors(this.origin,t);const f=u*this.direction.dot(Rb.crossVectors(Nh,Rb));if(f<0)return null;const p=u*this.direction.dot(vw.cross(Nh));if(p<0||f+p>l)return null;const m=-u*Nh.dot(oS);return m<0?null:this.at(m/l,s)}applyMatrix4(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}equals(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}clone(){return(new this.constructor).copy(this)}}class Gi{constructor(t,e,i,r,s,l,u,f,p,m,_,b,w,F,D,T){Gi.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],void 0!==t&&this.set(t,e,i,r,s,l,u,f,p,m,_,b,w,F,D,T)}set(t,e,i,r,s,l,u,f,p,m,_,b,w,F,D,T){const I=this.elements;return I[0]=t,I[4]=e,I[8]=i,I[12]=r,I[1]=s,I[5]=l,I[9]=u,I[13]=f,I[2]=p,I[6]=m,I[10]=_,I[14]=b,I[3]=w,I[7]=F,I[11]=D,I[15]=T,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return(new Gi).fromArray(this.elements)}copy(t){const e=this.elements,i=t.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this}copyPosition(t){const e=this.elements,i=t.elements;return e[12]=i[12],e[13]=i[13],e[14]=i[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,i){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),i.setFromMatrixColumn(this,2),this}makeBasis(t,e,i){return this.set(t.x,e.x,i.x,0,t.y,e.y,i.y,0,t.z,e.z,i.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,i=t.elements,r=1/Pb.setFromMatrixColumn(t,0).length(),s=1/Pb.setFromMatrixColumn(t,1).length(),l=1/Pb.setFromMatrixColumn(t,2).length();return e[0]=i[0]*r,e[1]=i[1]*r,e[2]=i[2]*r,e[3]=0,e[4]=i[4]*s,e[5]=i[5]*s,e[6]=i[6]*s,e[7]=0,e[8]=i[8]*l,e[9]=i[9]*l,e[10]=i[10]*l,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){const e=this.elements,i=t.x,r=t.y,s=t.z,l=Math.cos(i),u=Math.sin(i),f=Math.cos(r),p=Math.sin(r),m=Math.cos(s),_=Math.sin(s);if("XYZ"===t.order){const b=l*m,w=l*_,F=u*m,D=u*_;e[0]=f*m,e[4]=-f*_,e[8]=p,e[1]=w+F*p,e[5]=b-D*p,e[9]=-u*f,e[2]=D-b*p,e[6]=F+w*p,e[10]=l*f}else if("YXZ"===t.order){const b=f*m,w=f*_,F=p*m,D=p*_;e[0]=b+D*u,e[4]=F*u-w,e[8]=l*p,e[1]=l*_,e[5]=l*m,e[9]=-u,e[2]=w*u-F,e[6]=D+b*u,e[10]=l*f}else if("ZXY"===t.order){const b=f*m,w=f*_,F=p*m,D=p*_;e[0]=b-D*u,e[4]=-l*_,e[8]=F+w*u,e[1]=w+F*u,e[5]=l*m,e[9]=D-b*u,e[2]=-l*p,e[6]=u,e[10]=l*f}else if("ZYX"===t.order){const b=l*m,w=l*_,F=u*m,D=u*_;e[0]=f*m,e[4]=F*p-w,e[8]=b*p+D,e[1]=f*_,e[5]=D*p+b,e[9]=w*p-F,e[2]=-p,e[6]=u*f,e[10]=l*f}else if("YZX"===t.order){const b=l*f,w=l*p,F=u*f,D=u*p;e[0]=f*m,e[4]=D-b*_,e[8]=F*_+w,e[1]=_,e[5]=l*m,e[9]=-u*m,e[2]=-p*m,e[6]=w*_+F,e[10]=b-D*_}else if("XZY"===t.order){const b=l*f,w=l*p,F=u*f,D=u*p;e[0]=f*m,e[4]=-_,e[8]=p*m,e[1]=b*_+D,e[5]=l*m,e[9]=w*_-F,e[2]=F*_-w,e[6]=u*m,e[10]=D*_+b}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(Ob,t,sS)}lookAt(t,e,i){const r=this.elements;return Cl.subVectors(t,e),0===Cl.lengthSq()&&(Cl.z=1),Cl.normalize(),Tu.crossVectors(i,Cl),0===Tu.lengthSq()&&(1===Math.abs(i.z)?Cl.x+=1e-4:Cl.z+=1e-4,Cl.normalize(),Tu.crossVectors(i,Cl)),Tu.normalize(),yw.crossVectors(Cl,Tu),r[0]=Tu.x,r[4]=yw.x,r[8]=Cl.x,r[1]=Tu.y,r[5]=yw.y,r[9]=Cl.y,r[2]=Tu.z,r[6]=yw.z,r[10]=Cl.z,this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const i=t.elements,r=e.elements,s=this.elements,l=i[0],u=i[4],f=i[8],p=i[12],m=i[1],_=i[5],b=i[9],w=i[13],F=i[2],D=i[6],T=i[10],I=i[14],O=i[3],R=i[7],P=i[11],ee=i[15],J=r[0],te=r[4],ie=r[8],W=r[12],q=r[1],ce=r[5],ke=r[9],Ue=r[13],de=r[2],ze=r[6],Ce=r[10],Oe=r[14],Fe=r[3],ht=r[7],Mt=r[11],Bt=r[15];return s[0]=l*J+u*q+f*de+p*Fe,s[4]=l*te+u*ce+f*ze+p*ht,s[8]=l*ie+u*ke+f*Ce+p*Mt,s[12]=l*W+u*Ue+f*Oe+p*Bt,s[1]=m*J+_*q+b*de+w*Fe,s[5]=m*te+_*ce+b*ze+w*ht,s[9]=m*ie+_*ke+b*Ce+w*Mt,s[13]=m*W+_*Ue+b*Oe+w*Bt,s[2]=F*J+D*q+T*de+I*Fe,s[6]=F*te+D*ce+T*ze+I*ht,s[10]=F*ie+D*ke+T*Ce+I*Mt,s[14]=F*W+D*Ue+T*Oe+I*Bt,s[3]=O*J+R*q+P*de+ee*Fe,s[7]=O*te+R*ce+P*ze+ee*ht,s[11]=O*ie+R*ke+P*Ce+ee*Mt,s[15]=O*W+R*Ue+P*Oe+ee*Bt,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],i=t[4],r=t[8],s=t[12],l=t[1],u=t[5],f=t[9],p=t[13],m=t[2],_=t[6],b=t[10],w=t[14];return t[3]*(+s*f*_-r*p*_-s*u*b+i*p*b+r*u*w-i*f*w)+t[7]*(+e*f*w-e*p*b+s*l*b-r*l*w+r*p*m-s*f*m)+t[11]*(+e*p*_-e*u*w-s*l*_+i*l*w+s*u*m-i*p*m)+t[15]*(-r*u*m-e*f*_+e*u*b+r*l*_-i*l*b+i*f*m)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,i){const r=this.elements;return t.isVector3?(r[12]=t.x,r[13]=t.y,r[14]=t.z):(r[12]=t,r[13]=e,r[14]=i),this}invert(){const t=this.elements,e=t[0],i=t[1],r=t[2],s=t[3],l=t[4],u=t[5],f=t[6],p=t[7],m=t[8],_=t[9],b=t[10],w=t[11],F=t[12],D=t[13],T=t[14],I=t[15],O=_*T*p-D*b*p+D*f*w-u*T*w-_*f*I+u*b*I,R=F*b*p-m*T*p-F*f*w+l*T*w+m*f*I-l*b*I,P=m*D*p-F*_*p+F*u*w-l*D*w-m*u*I+l*_*I,ee=F*_*f-m*D*f-F*u*b+l*D*b+m*u*T-l*_*T,J=e*O+i*R+r*P+s*ee;if(0===J)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const te=1/J;return t[0]=O*te,t[1]=(D*b*s-_*T*s-D*r*w+i*T*w+_*r*I-i*b*I)*te,t[2]=(u*T*s-D*f*s+D*r*p-i*T*p-u*r*I+i*f*I)*te,t[3]=(_*f*s-u*b*s-_*r*p+i*b*p+u*r*w-i*f*w)*te,t[4]=R*te,t[5]=(m*T*s-F*b*s+F*r*w-e*T*w-m*r*I+e*b*I)*te,t[6]=(F*f*s-l*T*s-F*r*p+e*T*p+l*r*I-e*f*I)*te,t[7]=(l*b*s-m*f*s+m*r*p-e*b*p-l*r*w+e*f*w)*te,t[8]=P*te,t[9]=(F*_*s-m*D*s-F*i*w+e*D*w+m*i*I-e*_*I)*te,t[10]=(l*D*s-F*u*s+F*i*p-e*D*p-l*i*I+e*u*I)*te,t[11]=(m*u*s-l*_*s-m*i*p+e*_*p+l*i*w-e*u*w)*te,t[12]=ee*te,t[13]=(m*D*r-F*_*r+F*i*b-e*D*b-m*i*T+e*_*T)*te,t[14]=(F*u*r-l*D*r-F*i*f+e*D*f+l*i*T-e*u*T)*te,t[15]=(l*_*r-m*u*r+m*i*f-e*_*f-l*i*b+e*u*b)*te,this}scale(t){const e=this.elements,i=t.x,r=t.y,s=t.z;return e[0]*=i,e[4]*=r,e[8]*=s,e[1]*=i,e[5]*=r,e[9]*=s,e[2]*=i,e[6]*=r,e[10]*=s,e[3]*=i,e[7]*=r,e[11]*=s,this}getMaxScaleOnAxis(){const t=this.elements;return Math.sqrt(Math.max(t[0]*t[0]+t[1]*t[1]+t[2]*t[2],t[4]*t[4]+t[5]*t[5]+t[6]*t[6],t[8]*t[8]+t[9]*t[9]+t[10]*t[10]))}makeTranslation(t,e,i){return t.isVector3?this.set(1,0,0,t.x,0,1,0,t.y,0,0,1,t.z,0,0,0,1):this.set(1,0,0,t,0,1,0,e,0,0,1,i,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),i=Math.sin(t);return this.set(1,0,0,0,0,e,-i,0,0,i,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),i=Math.sin(t);return this.set(e,0,i,0,0,1,0,0,-i,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),i=Math.sin(t);return this.set(e,-i,0,0,i,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const i=Math.cos(e),r=Math.sin(e),s=1-i,l=t.x,u=t.y,f=t.z,p=s*l,m=s*u;return this.set(p*l+i,p*u-r*f,p*f+r*u,0,p*u+r*f,m*u+i,m*f-r*l,0,p*f-r*u,m*f+r*l,s*f*f+i,0,0,0,0,1),this}makeScale(t,e,i){return this.set(t,0,0,0,0,e,0,0,0,0,i,0,0,0,0,1),this}makeShear(t,e,i,r,s,l){return this.set(1,i,s,0,t,1,l,0,e,r,1,0,0,0,0,1),this}compose(t,e,i){const r=this.elements,s=e._x,l=e._y,u=e._z,f=e._w,p=s+s,m=l+l,_=u+u,b=s*p,w=s*m,F=s*_,D=l*m,T=l*_,I=u*_,O=f*p,R=f*m,P=f*_,ee=i.x,J=i.y,te=i.z;return r[0]=(1-(D+I))*ee,r[1]=(w+P)*ee,r[2]=(F-R)*ee,r[3]=0,r[4]=(w-P)*J,r[5]=(1-(b+I))*J,r[6]=(T+O)*J,r[7]=0,r[8]=(F+R)*te,r[9]=(T-O)*te,r[10]=(1-(b+D))*te,r[11]=0,r[12]=t.x,r[13]=t.y,r[14]=t.z,r[15]=1,this}decompose(t,e,i){const r=this.elements;let s=Pb.set(r[0],r[1],r[2]).length();const l=Pb.set(r[4],r[5],r[6]).length(),u=Pb.set(r[8],r[9],r[10]).length();this.determinant()<0&&(s=-s),t.x=r[12],t.y=r[13],t.z=r[14],zc.copy(this);const p=1/s,m=1/l,_=1/u;return zc.elements[0]*=p,zc.elements[1]*=p,zc.elements[2]*=p,zc.elements[4]*=m,zc.elements[5]*=m,zc.elements[6]*=m,zc.elements[8]*=_,zc.elements[9]*=_,zc.elements[10]*=_,e.setFromRotationMatrix(zc),i.x=s,i.y=l,i.z=u,this}makePerspective(t,e,i,r,s,l,u=Qc){const f=this.elements,p=2*s/(e-t),m=2*s/(i-r),_=(e+t)/(e-t),b=(i+r)/(i-r);let w,F;if(u===Qc)w=-(l+s)/(l-s),F=-2*l*s/(l-s);else{if(2001!==u)throw new Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+u);w=-l/(l-s),F=-l*s/(l-s)}return f[0]=p,f[4]=0,f[8]=_,f[12]=0,f[1]=0,f[5]=m,f[9]=b,f[13]=0,f[2]=0,f[6]=0,f[10]=w,f[14]=F,f[3]=0,f[7]=0,f[11]=-1,f[15]=0,this}makeOrthographic(t,e,i,r,s,l,u=Qc){const f=this.elements,p=1/(e-t),m=1/(i-r),_=1/(l-s),b=(e+t)*p,w=(i+r)*m;let F,D;if(u===Qc)F=(l+s)*_,D=-2*_;else{if(2001!==u)throw new Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+u);F=s*_,D=-1*_}return f[0]=2*p,f[4]=0,f[8]=0,f[12]=-b,f[1]=0,f[5]=2*m,f[9]=0,f[13]=-w,f[2]=0,f[6]=0,f[10]=D,f[14]=-F,f[3]=0,f[7]=0,f[11]=0,f[15]=1,this}equals(t){const e=this.elements,i=t.elements;for(let r=0;r<16;r++)if(e[r]!==i[r])return!1;return!0}fromArray(t,e=0){for(let i=0;i<16;i++)this.elements[i]=t[i+e];return this}toArray(t=[],e=0){const i=this.elements;return t[e]=i[0],t[e+1]=i[1],t[e+2]=i[2],t[e+3]=i[3],t[e+4]=i[4],t[e+5]=i[5],t[e+6]=i[6],t[e+7]=i[7],t[e+8]=i[8],t[e+9]=i[9],t[e+10]=i[10],t[e+11]=i[11],t[e+12]=i[12],t[e+13]=i[13],t[e+14]=i[14],t[e+15]=i[15],t}}const Pb=new pe,zc=new Gi,Ob=new pe(0,0,0),sS=new pe(1,1,1),Tu=new pe,yw=new pe,Cl=new pe,Nb=new Gi,dk=new Vs;let Iu=(()=>{class n{constructor(e=0,i=0,r=0,s=n.DEFAULT_ORDER){this.isEuler=!0,this._x=e,this._y=i,this._z=r,this._order=s}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,i,r,s=this._order){return this._x=e,this._y=i,this._z=r,this._order=s,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,i=this._order,r=!0){const s=e.elements,l=s[0],u=s[4],f=s[8],p=s[1],m=s[5],_=s[9],b=s[2],w=s[6],F=s[10];switch(i){case"XYZ":this._y=Math.asin(Xo(f,-1,1)),Math.abs(f)<.9999999?(this._x=Math.atan2(-_,F),this._z=Math.atan2(-u,l)):(this._x=Math.atan2(w,m),this._z=0);break;case"YXZ":this._x=Math.asin(-Xo(_,-1,1)),Math.abs(_)<.9999999?(this._y=Math.atan2(f,F),this._z=Math.atan2(p,m)):(this._y=Math.atan2(-b,l),this._z=0);break;case"ZXY":this._x=Math.asin(Xo(w,-1,1)),Math.abs(w)<.9999999?(this._y=Math.atan2(-b,F),this._z=Math.atan2(-u,m)):(this._y=0,this._z=Math.atan2(p,l));break;case"ZYX":this._y=Math.asin(-Xo(b,-1,1)),Math.abs(b)<.9999999?(this._x=Math.atan2(w,F),this._z=Math.atan2(p,l)):(this._x=0,this._z=Math.atan2(-u,m));break;case"YZX":this._z=Math.asin(Xo(p,-1,1)),Math.abs(p)<.9999999?(this._x=Math.atan2(-_,m),this._y=Math.atan2(-b,l)):(this._x=0,this._y=Math.atan2(f,F));break;case"XZY":this._z=Math.asin(-Xo(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(w,m),this._y=Math.atan2(f,l)):(this._x=Math.atan2(-_,F),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+i)}return this._order=i,!0===r&&this._onChangeCallback(),this}setFromQuaternion(e,i,r){return Nb.makeRotationFromQuaternion(e),this.setFromRotationMatrix(Nb,i,r)}setFromVector3(e,i=this._order){return this.set(e.x,e.y,e.z,i)}reorder(e){return dk.setFromEuler(this),this.setFromQuaternion(dk,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],void 0!==e[3]&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],i=0){return e[i]=this._x,e[i+1]=this._y,e[i+2]=this._z,e[i+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}return n.DEFAULT_ORDER="XYZ",n})();class ww{constructor(){this.mask=1}set(t){this.mask=1<>>0}enable(t){this.mask|=1<{class n extends rc{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,"id",{value:uk++}),this.uuid=xl(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=n.DEFAULT_UP.clone();const e=new pe,i=new Iu,r=new Vs,s=new pe(1,1,1);i._onChange(function l(){r.setFromEuler(i,!1)}),r._onChange(function u(){i.setFromQuaternion(r,void 0,!1)}),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:e},rotation:{configurable:!0,enumerable:!0,value:i},quaternion:{configurable:!0,enumerable:!0,value:r},scale:{configurable:!0,enumerable:!0,value:s},modelViewMatrix:{value:new Gi},normalMatrix:{value:new zi}}),this.matrix=new Gi,this.matrixWorld=new Gi,this.matrixAutoUpdate=n.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=n.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new ww,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}onBeforeShadow(){}onAfterShadow(){}onBeforeRender(){}onAfterRender(){}applyMatrix4(e){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(e),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(e){return this.quaternion.premultiply(e),this}setRotationFromAxisAngle(e,i){this.quaternion.setFromAxisAngle(e,i)}setRotationFromEuler(e){this.quaternion.setFromEuler(e,!0)}setRotationFromMatrix(e){this.quaternion.setFromRotationMatrix(e)}setRotationFromQuaternion(e){this.quaternion.copy(e)}rotateOnAxis(e,i){return Bg.setFromAxisAngle(e,i),this.quaternion.multiply(Bg),this}rotateOnWorldAxis(e,i){return Bg.setFromAxisAngle(e,i),this.quaternion.premultiply(Bg),this}rotateX(e){return this.rotateOnAxis(M5,e)}rotateY(e){return this.rotateOnAxis(hk,e)}rotateZ(e){return this.rotateOnAxis(fk,e)}translateOnAxis(e,i){return C5.copy(e).applyQuaternion(this.quaternion),this.position.add(C5.multiplyScalar(i)),this}translateX(e){return this.translateOnAxis(M5,e)}translateY(e){return this.translateOnAxis(hk,e)}translateZ(e){return this.translateOnAxis(fk,e)}localToWorld(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(Fu.copy(this.matrixWorld).invert())}lookAt(e,i,r){e.isVector3?aS.copy(e):aS.set(e,i,r);const s=this.parent;this.updateWorldMatrix(!0,!1),Lb.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?Fu.lookAt(Lb,aS,this.up):Fu.lookAt(aS,Lb,this.up),this.quaternion.setFromRotationMatrix(Fu),s&&(Fu.extractRotation(s.matrixWorld),Bg.setFromRotationMatrix(Fu),this.quaternion.premultiply(Bg.invert()))}add(e){if(arguments.length>1){for(let i=0;i1){for(let r=0;r0&&(s.userData=this.userData),s.layers=this.layers.mask,s.matrix=this.matrix.toArray(),s.up=this.up.toArray(),!1===this.matrixAutoUpdate&&(s.matrixAutoUpdate=!1),this.isInstancedMesh&&(s.type="InstancedMesh",s.count=this.count,s.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&&(s.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(s.type="BatchedMesh",s.perObjectFrustumCulled=this.perObjectFrustumCulled,s.sortObjects=this.sortObjects,s.drawRanges=this._drawRanges,s.reservedRanges=this._reservedRanges,s.visibility=this._visibility,s.active=this._active,s.bounds=this._bounds.map(f=>({boxInitialized:f.boxInitialized,boxMin:f.box.min.toArray(),boxMax:f.box.max.toArray(),sphereInitialized:f.sphereInitialized,sphereRadius:f.sphere.radius,sphereCenter:f.sphere.center.toArray()})),s.maxInstanceCount=this._maxInstanceCount,s.maxVertexCount=this._maxVertexCount,s.maxIndexCount=this._maxIndexCount,s.geometryInitialized=this._geometryInitialized,s.geometryCount=this._geometryCount,s.matricesTexture=this._matricesTexture.toJSON(e),null!==this._colorsTexture&&(s.colorsTexture=this._colorsTexture.toJSON(e)),null!==this.boundingSphere&&(s.boundingSphere={center:s.boundingSphere.center.toArray(),radius:s.boundingSphere.radius}),null!==this.boundingBox&&(s.boundingBox={min:s.boundingBox.min.toArray(),max:s.boundingBox.max.toArray()})),this.isScene)this.background&&(this.background.isColor?s.background=this.background.toJSON():this.background.isTexture&&(s.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&!0!==this.environment.isRenderTargetTexture&&(s.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){s.geometry=l(e.geometries,this.geometry);const f=this.geometry.parameters;if(void 0!==f&&void 0!==f.shapes){const p=f.shapes;if(Array.isArray(p))for(let m=0,_=p.length;m<_;m++)l(e.shapes,p[m]);else l(e.shapes,p)}}if(this.isSkinnedMesh&&(s.bindMode=this.bindMode,s.bindMatrix=this.bindMatrix.toArray(),void 0!==this.skeleton&&(l(e.skeletons,this.skeleton),s.skeleton=this.skeleton.uuid)),void 0!==this.material)if(Array.isArray(this.material)){const f=[];for(let p=0,m=this.material.length;p0){s.children=[];for(let f=0;f0){s.animations=[];for(let f=0;f0&&(r.geometries=f),p.length>0&&(r.materials=p),m.length>0&&(r.textures=m),_.length>0&&(r.images=_),b.length>0&&(r.shapes=b),w.length>0&&(r.skeletons=w),F.length>0&&(r.animations=F),D.length>0&&(r.nodes=D)}return r.object=s,r;function u(f){const p=[];for(const m in f){const _=f[m];delete _.metadata,p.push(_)}return p}}clone(e){return(new this.constructor).copy(this,e)}copy(e,i=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),!0===i)for(let r=0;r0?r.multiplyScalar(1/Math.sqrt(s)):r.set(0,0,0)}static getBarycoord(t,e,i,r,s){Id.subVectors(r,e),Du.subVectors(i,e),mk.subVectors(t,e);const l=Id.dot(Id),u=Id.dot(Du),f=Id.dot(mk),p=Du.dot(Du),m=Du.dot(mk),_=l*p-u*u;if(0===_)return s.set(0,0,0),null;const b=1/_,w=(p*f-u*m)*b,F=(l*m-u*f)*b;return s.set(1-w-F,F,w)}static containsPoint(t,e,i,r){return null!==this.getBarycoord(t,e,i,r,Uh)&&Uh.x>=0&&Uh.y>=0&&Uh.x+Uh.y<=1}static getInterpolation(t,e,i,r,s,l,u,f){return null===this.getBarycoord(t,e,i,r,Uh)?(f.x=0,f.y=0,"z"in f&&(f.z=0),"w"in f&&(f.w=0),null):(f.setScalar(0),f.addScaledVector(s,Uh.x),f.addScaledVector(l,Uh.y),f.addScaledVector(u,Uh.z),f)}static isFrontFacing(t,e,i,r){return Id.subVectors(i,e),Du.subVectors(t,e),Id.cross(Du).dot(r)<0}set(t,e,i){return this.a.copy(t),this.b.copy(e),this.c.copy(i),this}setFromPointsAndIndices(t,e,i,r){return this.a.copy(t[e]),this.b.copy(t[i]),this.c.copy(t[r]),this}setFromAttributeAndIndices(t,e,i,r){return this.a.fromBufferAttribute(t,e),this.b.fromBufferAttribute(t,i),this.c.fromBufferAttribute(t,r),this}clone(){return(new this.constructor).copy(this)}copy(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this}getArea(){return Id.subVectors(this.c,this.b),Du.subVectors(this.a,this.b),.5*Id.cross(Du).length()}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return sc.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return sc.getBarycoord(t,this.a,this.b,this.c,e)}getInterpolation(t,e,i,r,s){return sc.getInterpolation(t,this.a,this.b,this.c,e,i,r,s)}containsPoint(t){return sc.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return sc.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const i=this.a,r=this.b,s=this.c;let l,u;Vb.subVectors(r,i),Hb.subVectors(s,i),lS.subVectors(t,i);const f=Vb.dot(lS),p=Hb.dot(lS);if(f<=0&&p<=0)return e.copy(i);cS.subVectors(t,r);const m=Vb.dot(cS),_=Hb.dot(cS);if(m>=0&&_<=m)return e.copy(r);const b=f*_-m*p;if(b<=0&&f>=0&&m<=0)return l=f/(f-m),e.copy(i).addScaledVector(Vb,l);dS.subVectors(t,s);const w=Vb.dot(dS),F=Hb.dot(dS);if(F>=0&&w<=F)return e.copy(s);const D=w*p-f*F;if(D<=0&&p>=0&&F<=0)return u=p/(p-F),e.copy(i).addScaledVector(Hb,u);const T=m*F-w*_;if(T<=0&&_-m>=0&&w-F>=0)return gk.subVectors(s,r),u=(_-m)/(_-m+(w-F)),e.copy(r).addScaledVector(gk,u);const I=1/(T+D+b);return l=D*I,u=b*I,e.copy(i).addScaledVector(Vb,l).addScaledVector(Hb,u)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}const _k={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Bu={h:0,s:0,l:0},uS={h:0,s:0,l:0};function bk(n,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?n+6*(t-n)*e:e<.5?t:e<2/3?n+6*(t-n)*(2/3-e):n}class vn{constructor(t,e,i){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(t,e,i)}set(t,e,i){if(void 0===e&&void 0===i){const r=t;r&&r.isColor?this.copy(r):"number"==typeof r?this.setHex(r):"string"==typeof r&&this.setStyle(r)}else this.setRGB(t,e,i);return this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=ic){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,Pr.toWorkingColorSpace(this,e),this}setRGB(t,e,i,r=Pr.workingColorSpace){return this.r=t,this.g=e,this.b=i,Pr.toWorkingColorSpace(this,r),this}setHSL(t,e,i,r=Pr.workingColorSpace){if(t=function KE(n,t){return(n%t+t)%t}(t,1),e=Xo(e,0,1),i=Xo(i,0,1),0===e)this.r=this.g=this.b=i;else{const s=i<=.5?i*(1+e):i+e-i*e,l=2*i-s;this.r=bk(l,s,t+1/3),this.g=bk(l,s,t),this.b=bk(l,s,t-1/3)}return Pr.toWorkingColorSpace(this,r),this}setStyle(t,e=ic){function i(s){void 0!==s&&parseFloat(s)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(t)){let s;const u=r[2];switch(r[1]){case"rgb":case"rgba":if(s=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(u))return i(s[4]),this.setRGB(Math.min(255,parseInt(s[1],10))/255,Math.min(255,parseInt(s[2],10))/255,Math.min(255,parseInt(s[3],10))/255,e);if(s=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(u))return i(s[4]),this.setRGB(Math.min(100,parseInt(s[1],10))/100,Math.min(100,parseInt(s[2],10))/100,Math.min(100,parseInt(s[3],10))/100,e);break;case"hsl":case"hsla":if(s=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(u))return i(s[4]),this.setHSL(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,e);break;default:console.warn("THREE.Color: Unknown color model "+t)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(t)){const s=r[1],l=s.length;if(3===l)return this.setRGB(parseInt(s.charAt(0),16)/15,parseInt(s.charAt(1),16)/15,parseInt(s.charAt(2),16)/15,e);if(6===l)return this.setHex(parseInt(s,16),e);console.warn("THREE.Color: Invalid hex color "+t)}else if(t&&t.length>0)return this.setColorName(t,e);return this}setColorName(t,e=ic){const i=_k[t.toLowerCase()];return void 0!==i?this.setHex(i,e):console.warn("THREE.Color: Unknown color "+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copySRGBToLinear(t){return this.r=Tg(t.r),this.g=Tg(t.g),this.b=Tg(t.b),this}copyLinearToSRGB(t){return this.r=hw(t.r),this.g=hw(t.g),this.b=hw(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=ic){return Pr.fromWorkingColorSpace(a.copy(this),t),65536*Math.round(Xo(255*a.r,0,255))+256*Math.round(Xo(255*a.g,0,255))+Math.round(Xo(255*a.b,0,255))}getHexString(t=ic){return("000000"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=Pr.workingColorSpace){Pr.fromWorkingColorSpace(a.copy(this),e);const i=a.r,r=a.g,s=a.b,l=Math.max(i,r,s),u=Math.min(i,r,s);let f,p;const m=(u+l)/2;if(u===l)f=0,p=0;else{const _=l-u;switch(p=m<=.5?_/(l+u):_/(2-l-u),l){case i:f=(r-s)/_+(r0!=t>0&&this.version++,this._alphaTest=t}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(void 0!==t)for(const e in t){const i=t[e];if(void 0===i){console.warn(`THREE.Material: parameter '${e}' has value of undefined.`);continue}const r=this[e];void 0!==r?r&&r.isColor?r.set(i):r&&r.isVector3&&i&&i.isVector3?r.copy(i):this[e]=i:console.warn(`THREE.Material: '${e}' is not a property of THREE.${this.type}.`)}}toJSON(t){const e=void 0===t||"string"==typeof t;e&&(t={textures:{},images:{}});const i={metadata:{version:4.6,type:"Material",generator:"Material.toJSON"}};function r(s){const l=[];for(const u in s){const f=s[u];delete f.metadata,l.push(f)}return l}if(i.uuid=this.uuid,i.type=this.type,""!==this.name&&(i.name=this.name),this.color&&this.color.isColor&&(i.color=this.color.getHex()),void 0!==this.roughness&&(i.roughness=this.roughness),void 0!==this.metalness&&(i.metalness=this.metalness),void 0!==this.sheen&&(i.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(i.sheenColor=this.sheenColor.getHex()),void 0!==this.sheenRoughness&&(i.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(i.emissive=this.emissive.getHex()),void 0!==this.emissiveIntensity&&1!==this.emissiveIntensity&&(i.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(i.specular=this.specular.getHex()),void 0!==this.specularIntensity&&(i.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(i.specularColor=this.specularColor.getHex()),void 0!==this.shininess&&(i.shininess=this.shininess),void 0!==this.clearcoat&&(i.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&&(i.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(i.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(i.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(i.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,i.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),void 0!==this.dispersion&&(i.dispersion=this.dispersion),void 0!==this.iridescence&&(i.iridescence=this.iridescence),void 0!==this.iridescenceIOR&&(i.iridescenceIOR=this.iridescenceIOR),void 0!==this.iridescenceThicknessRange&&(i.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(i.iridescenceMap=this.iridescenceMap.toJSON(t).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(i.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(t).uuid),void 0!==this.anisotropy&&(i.anisotropy=this.anisotropy),void 0!==this.anisotropyRotation&&(i.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(i.anisotropyMap=this.anisotropyMap.toJSON(t).uuid),this.map&&this.map.isTexture&&(i.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(i.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(i.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(i.lightMap=this.lightMap.toJSON(t).uuid,i.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(i.aoMap=this.aoMap.toJSON(t).uuid,i.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(i.bumpMap=this.bumpMap.toJSON(t).uuid,i.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(i.normalMap=this.normalMap.toJSON(t).uuid,i.normalMapType=this.normalMapType,i.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(i.displacementMap=this.displacementMap.toJSON(t).uuid,i.displacementScale=this.displacementScale,i.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(i.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(i.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(i.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(i.specularMap=this.specularMap.toJSON(t).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(i.specularIntensityMap=this.specularIntensityMap.toJSON(t).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(i.specularColorMap=this.specularColorMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(i.envMap=this.envMap.toJSON(t).uuid,void 0!==this.combine&&(i.combine=this.combine)),void 0!==this.envMapRotation&&(i.envMapRotation=this.envMapRotation.toArray()),void 0!==this.envMapIntensity&&(i.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&&(i.reflectivity=this.reflectivity),void 0!==this.refractionRatio&&(i.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(i.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.transmission&&(i.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(i.transmissionMap=this.transmissionMap.toJSON(t).uuid),void 0!==this.thickness&&(i.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(i.thicknessMap=this.thicknessMap.toJSON(t).uuid),void 0!==this.attenuationDistance&&this.attenuationDistance!==1/0&&(i.attenuationDistance=this.attenuationDistance),void 0!==this.attenuationColor&&(i.attenuationColor=this.attenuationColor.getHex()),void 0!==this.size&&(i.size=this.size),null!==this.shadowSide&&(i.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&&(i.sizeAttenuation=this.sizeAttenuation),1!==this.blending&&(i.blending=this.blending),0!==this.side&&(i.side=this.side),!0===this.vertexColors&&(i.vertexColors=!0),this.opacity<1&&(i.opacity=this.opacity),!0===this.transparent&&(i.transparent=!0),204!==this.blendSrc&&(i.blendSrc=this.blendSrc),205!==this.blendDst&&(i.blendDst=this.blendDst),100!==this.blendEquation&&(i.blendEquation=this.blendEquation),null!==this.blendSrcAlpha&&(i.blendSrcAlpha=this.blendSrcAlpha),null!==this.blendDstAlpha&&(i.blendDstAlpha=this.blendDstAlpha),null!==this.blendEquationAlpha&&(i.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(i.blendColor=this.blendColor.getHex()),0!==this.blendAlpha&&(i.blendAlpha=this.blendAlpha),3!==this.depthFunc&&(i.depthFunc=this.depthFunc),!1===this.depthTest&&(i.depthTest=this.depthTest),!1===this.depthWrite&&(i.depthWrite=this.depthWrite),!1===this.colorWrite&&(i.colorWrite=this.colorWrite),255!==this.stencilWriteMask&&(i.stencilWriteMask=this.stencilWriteMask),519!==this.stencilFunc&&(i.stencilFunc=this.stencilFunc),0!==this.stencilRef&&(i.stencilRef=this.stencilRef),255!==this.stencilFuncMask&&(i.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==xg&&(i.stencilFail=this.stencilFail),this.stencilZFail!==xg&&(i.stencilZFail=this.stencilZFail),this.stencilZPass!==xg&&(i.stencilZPass=this.stencilZPass),!0===this.stencilWrite&&(i.stencilWrite=this.stencilWrite),void 0!==this.rotation&&0!==this.rotation&&(i.rotation=this.rotation),!0===this.polygonOffset&&(i.polygonOffset=!0),0!==this.polygonOffsetFactor&&(i.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(i.polygonOffsetUnits=this.polygonOffsetUnits),void 0!==this.linewidth&&1!==this.linewidth&&(i.linewidth=this.linewidth),void 0!==this.dashSize&&(i.dashSize=this.dashSize),void 0!==this.gapSize&&(i.gapSize=this.gapSize),void 0!==this.scale&&(i.scale=this.scale),!0===this.dithering&&(i.dithering=!0),this.alphaTest>0&&(i.alphaTest=this.alphaTest),!0===this.alphaHash&&(i.alphaHash=!0),!0===this.alphaToCoverage&&(i.alphaToCoverage=!0),!0===this.premultipliedAlpha&&(i.premultipliedAlpha=!0),!0===this.forceSinglePass&&(i.forceSinglePass=!0),!0===this.wireframe&&(i.wireframe=!0),this.wireframeLinewidth>1&&(i.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(i.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(i.wireframeLinejoin=this.wireframeLinejoin),!0===this.flatShading&&(i.flatShading=!0),!1===this.visible&&(i.visible=!1),!1===this.toneMapped&&(i.toneMapped=!1),!1===this.fog&&(i.fog=!1),Object.keys(this.userData).length>0&&(i.userData=this.userData),e){const s=r(t.textures),l=r(t.images);s.length>0&&(i.textures=s),l.length>0&&(i.images=l)}return i}clone(){return(new this.constructor).copy(this)}copy(t){this.name=t.name,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.blendColor.copy(t.blendColor),this.blendAlpha=t.blendAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let i=null;if(null!==e){const r=e.length;i=new Array(r);for(let s=0;s!==r;++s)i[s]=e[s].clone()}return this.clippingPlanes=i,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaHash=t.alphaHash,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.forceSinglePass=t.forceSinglePass,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(t){!0===t&&this.version++}onBuild(){console.warn("Material: onBuild() has been removed.")}}class h extends d{constructor(t){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new vn(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Iu,this.combine=X1,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapRotation.copy(t.envMapRotation),this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}}const H=new pe,K=new ft;class ae{constructor(t,e,i=!1){if(Array.isArray(t))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=t,this.itemSize=e,this.count=void 0!==t?t.length/e:0,this.normalized=i,this.usage=35044,this._updateRange={offset:0,count:-1},this.updateRanges=[],this.gpuType=wl,this.version=0}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}get updateRange(){return Ip("THREE.BufferAttribute: updateRange() is deprecated and will be removed in r169. Use addUpdateRange() instead."),this._updateRange}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this.gpuType=t.gpuType,this}copyAt(t,e,i){t*=this.itemSize,i*=e.itemSize;for(let r=0,s=this.itemSize;r0&&(t.userData=this.userData),void 0!==this.parameters){const f=this.parameters;for(const p in f)void 0!==f[p]&&(t[p]=f[p]);return t}t.data={attributes:{}};const e=this.index;null!==e&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const i=this.attributes;for(const f in i)t.data.attributes[f]=i[f].toJSON(t.data);const r={};let s=!1;for(const f in this.morphAttributes){const p=this.morphAttributes[f],m=[];for(let _=0,b=p.length;_0&&(r[f]=m,s=!0)}s&&(t.data.morphAttributes=r,t.data.morphTargetsRelative=this.morphTargetsRelative);const l=this.groups;l.length>0&&(t.data.groups=JSON.parse(JSON.stringify(l)));const u=this.boundingSphere;return null!==u&&(t.data.boundingSphere={center:u.center.toArray(),radius:u.radius}),t}clone(){return(new this.constructor).copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const e={};this.name=t.name;const i=t.index;null!==i&&this.setIndex(i.clone(e));const r=t.attributes;for(const p in r)this.setAttribute(p,r[p].clone(e));const s=t.morphAttributes;for(const p in s){const m=[],_=s[p];for(let b=0,w=_.length;b0){const r=e[i[0]];if(void 0!==r){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,l=r.length;s(t.far-t.near)**2))&&(lQ.copy(s).invert(),Qb.copy(t.ray).applyMatrix4(lQ),(null===i.boundingBox||!1!==Qb.intersectsBox(i.boundingBox))&&this._computeIntersections(t,e,Qb)))}_computeIntersections(t,e,i){let r;const s=this.geometry,l=this.material,u=s.index,f=s.attributes.position,p=s.attributes.uv,m=s.attributes.uv1,_=s.attributes.normal,b=s.groups,w=s.drawRange;if(null!==u)if(Array.isArray(l))for(let F=0,D=b.length;Fe.far?null:{distance:p,point:Ek.clone(),object:n}}(n,t,e,i,xw,Cw,Mw,Mk);if(m){r&&(wk.fromBufferAttribute(r,u),xk.fromBufferAttribute(r,f),Ck.fromBufferAttribute(r,p),m.uv=sc.getInterpolation(Mk,xw,Cw,Mw,wk,xk,Ck,new ft)),s&&(wk.fromBufferAttribute(s,u),xk.fromBufferAttribute(s,f),Ck.fromBufferAttribute(s,p),m.uv1=sc.getInterpolation(Mk,xw,Cw,Mw,wk,xk,Ck,new ft)),l&&(dQ.fromBufferAttribute(l,u),uQ.fromBufferAttribute(l,f),hQ.fromBufferAttribute(l,p),m.normal=sc.getInterpolation(Mk,xw,Cw,Mw,dQ,uQ,hQ,new pe),m.normal.dot(i.direction)>0&&m.normal.multiplyScalar(-1));const _={a:u,b:f,c:p,normal:new pe,materialIndex:0};sc.getNormal(xw,Cw,Mw,_.normal),m.face=_}return m}class jc extends Yi{constructor(t=1,e=1,i=1,r=1,s=1,l=1){super(),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:i,widthSegments:r,heightSegments:s,depthSegments:l};const u=this;r=Math.floor(r),s=Math.floor(s),l=Math.floor(l);const f=[],p=[],m=[],_=[];let b=0,w=0;function F(D,T,I,O,R,P,ee,J,te,ie,W){const q=P/te,ce=ee/ie,ke=P/2,Ue=ee/2,de=J/2,ze=te+1,Ce=ie+1;let Oe=0,Fe=0;const ht=new pe;for(let Mt=0;Mt0?1:-1,m.push(ht.x,ht.y,ht.z),_.push(rn/te),_.push(1-Mt/ie),Oe+=1}for(let Mt=0;Mt0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e.lights=this.lights,e.clipping=this.clipping;const i={};for(const r in this.extensions)!0===this.extensions[r]&&(i[r]=!0);return Object.keys(i).length>0&&(e.extensions=i),e}}class T5 extends Oo{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new Gi,this.projectionMatrix=new Gi,this.projectionMatrixInverse=new Gi,this.coordinateSystem=Qc}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this.coordinateSystem=t.coordinateSystem,this}getWorldDirection(t){return super.getWorldDirection(t).negate()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return(new this.constructor).copy(this)}}const kg=new pe,pQ=new ft,AQ=new ft;class Js extends T5{constructor(t=50,e=1,i=.1,r=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=t,this.zoom=1,this.near=i,this.far=r,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=2*Tp*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(.5*Eg*this.fov);return.5*this.getFilmHeight()/t}getEffectiveFOV(){return 2*Tp*Math.atan(Math.tan(.5*Eg*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}getViewBounds(t,e,i){kg.set(-1,-1,.5).applyMatrix4(this.projectionMatrixInverse),e.set(kg.x,kg.y).multiplyScalar(-t/kg.z),kg.set(1,1,.5).applyMatrix4(this.projectionMatrixInverse),i.set(kg.x,kg.y).multiplyScalar(-t/kg.z)}getViewSize(t,e){return this.getViewBounds(t,pQ,AQ),e.subVectors(AQ,pQ)}setViewOffset(t,e,i,r,s,l){this.aspect=t/e,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=i,this.view.offsetY=r,this.view.width=s,this.view.height=l,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(.5*Eg*this.fov)/this.zoom,i=2*e,r=this.aspect*i,s=-.5*r;const l=this.view;if(null!==this.view&&this.view.enabled){const f=l.fullWidth,p=l.fullHeight;s+=l.offsetX*r/f,e-=l.offsetY*i/p,r*=l.width/f,i*=l.height/p}const u=this.filmOffset;0!==u&&(s+=t*u/this.getFilmWidth()),this.projectionMatrix.makePerspective(s,s+r,e,e-i,t,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}class yZ extends Oo{constructor(t,e,i){super(),this.type="CubeCamera",this.renderTarget=i,this.coordinateSystem=null,this.activeMipmapLevel=0;const r=new Js(-90,1,t,e);r.layers=this.layers,this.add(r);const s=new Js(-90,1,t,e);s.layers=this.layers,this.add(s);const l=new Js(-90,1,t,e);l.layers=this.layers,this.add(l);const u=new Js(-90,1,t,e);u.layers=this.layers,this.add(u);const f=new Js(-90,1,t,e);f.layers=this.layers,this.add(f);const p=new Js(-90,1,t,e);p.layers=this.layers,this.add(p)}updateCoordinateSystem(){const t=this.coordinateSystem,e=this.children.concat(),[i,r,s,l,u,f]=e;for(const p of e)this.remove(p);if(t===Qc)i.up.set(0,1,0),i.lookAt(1,0,0),r.up.set(0,1,0),r.lookAt(-1,0,0),s.up.set(0,0,-1),s.lookAt(0,1,0),l.up.set(0,0,1),l.lookAt(0,-1,0),u.up.set(0,1,0),u.lookAt(0,0,1),f.up.set(0,1,0),f.lookAt(0,0,-1);else{if(2001!==t)throw new Error("THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: "+t);i.up.set(0,-1,0),i.lookAt(-1,0,0),r.up.set(0,-1,0),r.lookAt(1,0,0),s.up.set(0,0,1),s.lookAt(0,1,0),l.up.set(0,0,-1),l.lookAt(0,-1,0),u.up.set(0,-1,0),u.lookAt(0,0,1),f.up.set(0,-1,0),f.lookAt(0,0,-1)}for(const p of e)this.add(p),p.updateMatrixWorld()}update(t,e){null===this.parent&&this.updateMatrixWorld();const{renderTarget:i,activeMipmapLevel:r}=this;this.coordinateSystem!==t.coordinateSystem&&(this.coordinateSystem=t.coordinateSystem,this.updateCoordinateSystem());const[s,l,u,f,p,m]=this.children,_=t.getRenderTarget(),b=t.getActiveCubeFace(),w=t.getActiveMipmapLevel(),F=t.xr.enabled;t.xr.enabled=!1;const D=i.texture.generateMipmaps;i.texture.generateMipmaps=!1,t.setRenderTarget(i,0,r),t.render(e,s),t.setRenderTarget(i,1,r),t.render(e,l),t.setRenderTarget(i,2,r),t.render(e,u),t.setRenderTarget(i,3,r),t.render(e,f),t.setRenderTarget(i,4,r),t.render(e,p),i.texture.generateMipmaps=D,t.setRenderTarget(i,5,r),t.render(e,m),t.setRenderTarget(_,b,w),t.xr.enabled=F,i.texture.needsPMREMUpdate=!0}}class Tk extends Wa{constructor(t,e,i,r,s,l,u,f,p,m){super(t=void 0!==t?t:[],e=void 0!==e?e:wu,i,r,s,l,u,f,p,m),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}class wZ extends oc{constructor(t=1,e={}){super(t,t,e),this.isWebGLCubeRenderTarget=!0;const i={width:t,height:t,depth:1};this.texture=new Tk([i,i,i,i,i,i],e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=void 0!==e.generateMipmaps&&e.generateMipmaps,this.texture.minFilter=void 0!==e.minFilter?e.minFilter:_s}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.colorSpace=e.colorSpace,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const i_uniforms={tEquirect:{value:null}},i_vertexShader="\n\n\t\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t\tvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\n\t\t\t\t\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n\n\t\t\t\t}\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvWorldDirection = transformDirection( position, modelMatrix );\n\n\t\t\t\t\t#include \n\t\t\t\t\t#include \n\n\t\t\t\t}\n\t\t\t",i_fragmentShader="\n\n\t\t\t\tuniform sampler2D tEquirect;\n\n\t\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t\t#include \n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvec3 direction = normalize( vWorldDirection );\n\n\t\t\t\t\tvec2 sampleUV = equirectUv( direction );\n\n\t\t\t\t\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\n\t\t\t\t}\n\t\t\t",r=new jc(5,5,5),s=new ac({name:"CubemapFromEquirect",uniforms:Ew(i_uniforms),vertexShader:i_vertexShader,fragmentShader:i_fragmentShader,side:1,blending:0});s.uniforms.tEquirect.value=e;const l=new dr(r,s),u=e.minFilter;return e.minFilter===xu&&(e.minFilter=_s),new yZ(1,10,this).update(t,l),e.minFilter=u,l.geometry.dispose(),l.material.dispose(),this}clear(t,e,i,r){const s=t.getRenderTarget();for(let l=0;l<6;l++)t.setRenderTarget(this,l),t.clear(e,i,r);t.setRenderTarget(s)}}const I5=new pe,xZ=new pe,CZ=new zi;class Rg{constructor(t=new pe(1,0,0),e=0){this.isPlane=!0,this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,i,r){return this.normal.set(t,e,i),this.constant=r,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,i){const r=I5.subVectors(i,e).cross(xZ.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(r,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(t).addScaledVector(this.normal,-this.distanceToPoint(t))}intersectLine(t,e){const i=t.delta(I5),r=this.normal.dot(i);if(0===r)return 0===this.distanceToPoint(t.start)?e.copy(t.start):null;const s=-(t.start.dot(this.normal)+this.constant)/r;return s<0||s>1?null:e.copy(t.start).addScaledVector(i,s)}intersectsLine(t){const e=this.distanceToPoint(t.start),i=this.distanceToPoint(t.end);return e<0&&i>0||i<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const i=e||CZ.getNormalMatrix(t),r=this.coplanarPoint(I5).applyMatrix4(t),s=this.normal.applyMatrix3(i).normalize();return this.constant=-r.dot(s),this}translate(t){return this.constant-=t.dot(this.normal),this}equals(t){return t.normal.equals(this.normal)&&t.constant===this.constant}clone(){return(new this.constructor).copy(this)}}const zb=new ha,Ik=new pe;class Fk{constructor(t=new Rg,e=new Rg,i=new Rg,r=new Rg,s=new Rg,l=new Rg){this.planes=[t,e,i,r,s,l]}set(t,e,i,r,s,l){const u=this.planes;return u[0].copy(t),u[1].copy(e),u[2].copy(i),u[3].copy(r),u[4].copy(s),u[5].copy(l),this}copy(t){const e=this.planes;for(let i=0;i<6;i++)e[i].copy(t.planes[i]);return this}setFromProjectionMatrix(t,e=Qc){const i=this.planes,r=t.elements,s=r[0],l=r[1],u=r[2],f=r[3],p=r[4],m=r[5],_=r[6],b=r[7],w=r[8],F=r[9],D=r[10],T=r[11],I=r[12],O=r[13],R=r[14],P=r[15];if(i[0].setComponents(f-s,b-p,T-w,P-I).normalize(),i[1].setComponents(f+s,b+p,T+w,P+I).normalize(),i[2].setComponents(f+l,b+m,T+F,P+O).normalize(),i[3].setComponents(f-l,b-m,T-F,P-O).normalize(),i[4].setComponents(f-u,b-_,T-D,P-R).normalize(),e===Qc)i[5].setComponents(f+u,b+_,T+D,P+R).normalize();else{if(2001!==e)throw new Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+e);i[5].setComponents(u,_,D,R).normalize()}return this}intersectsObject(t){if(void 0!==t.boundingSphere)null===t.boundingSphere&&t.computeBoundingSphere(),zb.copy(t.boundingSphere).applyMatrix4(t.matrixWorld);else{const e=t.geometry;null===e.boundingSphere&&e.computeBoundingSphere(),zb.copy(e.boundingSphere).applyMatrix4(t.matrixWorld)}return this.intersectsSphere(zb)}intersectsSprite(t){return zb.center.set(0,0,0),zb.radius=.7071067811865476,zb.applyMatrix4(t.matrixWorld),this.intersectsSphere(zb)}intersectsSphere(t){const e=this.planes,i=t.center,r=-t.radius;for(let s=0;s<6;s++)if(e[s].distanceToPoint(i)0?t.max.x:t.min.x,Ik.y=r.normal.y>0?t.max.y:t.min.y,Ik.z=r.normal.z>0?t.max.z:t.min.z,r.distanceToPoint(Ik)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let i=0;i<6;i++)if(e[i].distanceToPoint(t)<0)return!1;return!0}clone(){return(new this.constructor).copy(this)}}function mQ(){let n=null,t=!1,e=null,i=null;function r(s,l){e(s,l),i=n.requestAnimationFrame(r)}return{start:function(){!0!==t&&null!==e&&(i=n.requestAnimationFrame(r),t=!0)},stop:function(){n.cancelAnimationFrame(i),t=!1},setAnimationLoop:function(s){e=s},setContext:function(s){n=s}}}function MZ(n){const t=new WeakMap;return{get:function r(u){return u.isInterleavedBufferAttribute&&(u=u.data),t.get(u)},remove:function s(u){u.isInterleavedBufferAttribute&&(u=u.data);const f=t.get(u);f&&(n.deleteBuffer(f.buffer),t.delete(u))},update:function l(u,f){if(u.isInterleavedBufferAttribute&&(u=u.data),u.isGLBufferAttribute){const m=t.get(u);return void((!m||m.version 0\n\tvec4 plane;\n\t#ifdef ALPHA_TO_COVERAGE\n\t\tfloat distanceToPlane, distanceGradient;\n\t\tfloat clipOpacity = 1.0;\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tdistanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n\t\t\tdistanceGradient = fwidth( distanceToPlane ) / 2.0;\n\t\t\tclipOpacity *= smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n\t\t\tif ( clipOpacity == 0.0 ) discard;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\t\tfloat unionClipOpacity = 1.0;\n\t\t\t#pragma unroll_loop_start\n\t\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\t\tplane = clippingPlanes[ i ];\n\t\t\t\tdistanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n\t\t\t\tdistanceGradient = fwidth( distanceToPlane ) / 2.0;\n\t\t\t\tunionClipOpacity *= 1.0 - smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n\t\t\t}\n\t\t\t#pragma unroll_loop_end\n\t\t\tclipOpacity *= 1.0 - unionClipOpacity;\n\t\t#endif\n\t\tdiffuseColor.a *= clipOpacity;\n\t\tif ( diffuseColor.a == 0.0 ) discard;\n\t#else\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\t\tbool clipped = true;\n\t\t\t#pragma unroll_loop_start\n\t\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\t\tplane = clippingPlanes[ i ];\n\t\t\t\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\n\t\t\t}\n\t\t\t#pragma unroll_loop_end\n\t\t\tif ( clipped ) discard;\n\t\t#endif\n\t#endif\n#endif",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n#endif",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES > 0\n\tvClipPosition = - mvPosition.xyz;\n#endif",color_fragment:"#if defined( USE_COLOR_ALPHA )\n\tdiffuseColor *= vColor;\n#elif defined( USE_COLOR )\n\tdiffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR )\n\tvarying vec3 vColor;\n#endif",color_pars_vertex:"#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n\tvarying vec3 vColor;\n#endif",color_vertex:"#if defined( USE_COLOR_ALPHA )\n\tvColor = vec4( 1.0 );\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n\tvColor = vec3( 1.0 );\n#endif\n#ifdef USE_COLOR\n\tvColor *= color;\n#endif\n#ifdef USE_INSTANCING_COLOR\n\tvColor.xyz *= instanceColor.xyz;\n#endif\n#ifdef USE_BATCHING_COLOR\n\tvec3 batchingColor = getBatchingColor( getIndirectIndex( gl_DrawID ) );\n\tvColor.xyz *= batchingColor.xyz;\n#endif",common:"#define PI 3.141592653589793\n#define PI2 6.283185307179586\n#define PI_HALF 1.5707963267948966\n#define RECIPROCAL_PI 0.3183098861837907\n#define RECIPROCAL_PI2 0.15915494309189535\n#define EPSILON 1e-6\n#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nvec3 pow2( const in vec3 x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }\nfloat average( const in vec3 v ) { return dot( v, vec3( 0.3333333 ) ); }\nhighp float rand( const in vec2 uv ) {\n\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\n\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n\treturn fract( sin( sn ) * c );\n}\n#ifdef HIGH_PRECISION\n\tfloat precisionSafeLength( vec3 v ) { return length( v ); }\n#else\n\tfloat precisionSafeLength( vec3 v ) {\n\t\tfloat maxComponent = max3( abs( v ) );\n\t\treturn length( v / maxComponent ) * maxComponent;\n\t}\n#endif\nstruct IncidentLight {\n\tvec3 color;\n\tvec3 direction;\n\tbool visible;\n};\nstruct ReflectedLight {\n\tvec3 directDiffuse;\n\tvec3 directSpecular;\n\tvec3 indirectDiffuse;\n\tvec3 indirectSpecular;\n};\n#ifdef USE_ALPHAHASH\n\tvarying vec3 vPosition;\n#endif\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nmat3 transposeMat3( const in mat3 m ) {\n\tmat3 tmp;\n\ttmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n\ttmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n\ttmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n\treturn tmp;\n}\nbool isPerspectiveMatrix( mat4 m ) {\n\treturn m[ 2 ][ 3 ] == - 1.0;\n}\nvec2 equirectUv( in vec3 dir ) {\n\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\n\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\treturn vec2( u, v );\n}\nvec3 BRDF_Lambert( const in vec3 diffuseColor ) {\n\treturn RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\n\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n}\nfloat F_Schlick( const in float f0, const in float f90, const in float dotVH ) {\n\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n} // validated",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n\t#define cubeUV_minMipLevel 4.0\n\t#define cubeUV_minTileSize 16.0\n\tfloat getFace( vec3 direction ) {\n\t\tvec3 absDirection = abs( direction );\n\t\tfloat face = - 1.0;\n\t\tif ( absDirection.x > absDirection.z ) {\n\t\t\tif ( absDirection.x > absDirection.y )\n\t\t\t\tface = direction.x > 0.0 ? 0.0 : 3.0;\n\t\t\telse\n\t\t\t\tface = direction.y > 0.0 ? 1.0 : 4.0;\n\t\t} else {\n\t\t\tif ( absDirection.z > absDirection.y )\n\t\t\t\tface = direction.z > 0.0 ? 2.0 : 5.0;\n\t\t\telse\n\t\t\t\tface = direction.y > 0.0 ? 1.0 : 4.0;\n\t\t}\n\t\treturn face;\n\t}\n\tvec2 getUV( vec3 direction, float face ) {\n\t\tvec2 uv;\n\t\tif ( face == 0.0 ) {\n\t\t\tuv = vec2( direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 1.0 ) {\n\t\t\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y );\n\t\t} else if ( face == 2.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.y ) / abs( direction.z );\n\t\t} else if ( face == 3.0 ) {\n\t\t\tuv = vec2( - direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 4.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.z ) / abs( direction.y );\n\t\t} else {\n\t\t\tuv = vec2( direction.x, direction.y ) / abs( direction.z );\n\t\t}\n\t\treturn 0.5 * ( uv + 1.0 );\n\t}\n\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\n\t\tfloat face = getFace( direction );\n\t\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\n\t\tmipInt = max( mipInt, cubeUV_minMipLevel );\n\t\tfloat faceSize = exp2( mipInt );\n\t\thighp vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0;\n\t\tif ( face > 2.0 ) {\n\t\t\tuv.y += faceSize;\n\t\t\tface -= 3.0;\n\t\t}\n\t\tuv.x += face * faceSize;\n\t\tuv.x += filterInt * 3.0 * cubeUV_minTileSize;\n\t\tuv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize );\n\t\tuv.x *= CUBEUV_TEXEL_WIDTH;\n\t\tuv.y *= CUBEUV_TEXEL_HEIGHT;\n\t\t#ifdef texture2DGradEXT\n\t\t\treturn texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb;\n\t\t#else\n\t\t\treturn texture2D( envMap, uv ).rgb;\n\t\t#endif\n\t}\n\t#define cubeUV_r0 1.0\n\t#define cubeUV_m0 - 2.0\n\t#define cubeUV_r1 0.8\n\t#define cubeUV_m1 - 1.0\n\t#define cubeUV_r4 0.4\n\t#define cubeUV_m4 2.0\n\t#define cubeUV_r5 0.305\n\t#define cubeUV_m5 3.0\n\t#define cubeUV_r6 0.21\n\t#define cubeUV_m6 4.0\n\tfloat roughnessToMip( float roughness ) {\n\t\tfloat mip = 0.0;\n\t\tif ( roughness >= cubeUV_r1 ) {\n\t\t\tmip = ( cubeUV_r0 - roughness ) * ( cubeUV_m1 - cubeUV_m0 ) / ( cubeUV_r0 - cubeUV_r1 ) + cubeUV_m0;\n\t\t} else if ( roughness >= cubeUV_r4 ) {\n\t\t\tmip = ( cubeUV_r1 - roughness ) * ( cubeUV_m4 - cubeUV_m1 ) / ( cubeUV_r1 - cubeUV_r4 ) + cubeUV_m1;\n\t\t} else if ( roughness >= cubeUV_r5 ) {\n\t\t\tmip = ( cubeUV_r4 - roughness ) * ( cubeUV_m5 - cubeUV_m4 ) / ( cubeUV_r4 - cubeUV_r5 ) + cubeUV_m4;\n\t\t} else if ( roughness >= cubeUV_r6 ) {\n\t\t\tmip = ( cubeUV_r5 - roughness ) * ( cubeUV_m6 - cubeUV_m5 ) / ( cubeUV_r5 - cubeUV_r6 ) + cubeUV_m5;\n\t\t} else {\n\t\t\tmip = - 2.0 * log2( 1.16 * roughness );\t\t}\n\t\treturn mip;\n\t}\n\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\n\t\tfloat mip = clamp( roughnessToMip( roughness ), cubeUV_m0, CUBEUV_MAX_MIP );\n\t\tfloat mipF = fract( mip );\n\t\tfloat mipInt = floor( mip );\n\t\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\n\t\tif ( mipF == 0.0 ) {\n\t\t\treturn vec4( color0, 1.0 );\n\t\t} else {\n\t\t\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\n\t\t\treturn vec4( mix( color0, color1, mipF ), 1.0 );\n\t\t}\n\t}\n#endif",defaultnormal_vertex:"vec3 transformedNormal = objectNormal;\n#ifdef USE_TANGENT\n\tvec3 transformedTangent = objectTangent;\n#endif\n#ifdef USE_BATCHING\n\tmat3 bm = mat3( batchingMatrix );\n\ttransformedNormal /= vec3( dot( bm[ 0 ], bm[ 0 ] ), dot( bm[ 1 ], bm[ 1 ] ), dot( bm[ 2 ], bm[ 2 ] ) );\n\ttransformedNormal = bm * transformedNormal;\n\t#ifdef USE_TANGENT\n\t\ttransformedTangent = bm * transformedTangent;\n\t#endif\n#endif\n#ifdef USE_INSTANCING\n\tmat3 im = mat3( instanceMatrix );\n\ttransformedNormal /= vec3( dot( im[ 0 ], im[ 0 ] ), dot( im[ 1 ], im[ 1 ] ), dot( im[ 2 ], im[ 2 ] ) );\n\ttransformedNormal = im * transformedNormal;\n\t#ifdef USE_TANGENT\n\t\ttransformedTangent = im * transformedTangent;\n\t#endif\n#endif\ntransformedNormal = normalMatrix * transformedNormal;\n#ifdef FLIP_SIDED\n\ttransformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n\ttransformedTangent = ( modelViewMatrix * vec4( transformedTangent, 0.0 ) ).xyz;\n\t#ifdef FLIP_SIDED\n\t\ttransformedTangent = - transformedTangent;\n\t#endif\n#endif",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n#endif",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + displacementBias );\n#endif",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n\tvec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv );\n\ttotalEmissiveRadiance *= emissiveColor.rgb;\n#endif",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n\tuniform sampler2D emissiveMap;\n#endif",colorspace_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",colorspace_pars_fragment:"\nconst mat3 LINEAR_SRGB_TO_LINEAR_DISPLAY_P3 = mat3(\n\tvec3( 0.8224621, 0.177538, 0.0 ),\n\tvec3( 0.0331941, 0.9668058, 0.0 ),\n\tvec3( 0.0170827, 0.0723974, 0.9105199 )\n);\nconst mat3 LINEAR_DISPLAY_P3_TO_LINEAR_SRGB = mat3(\n\tvec3( 1.2249401, - 0.2249404, 0.0 ),\n\tvec3( - 0.0420569, 1.0420571, 0.0 ),\n\tvec3( - 0.0196376, - 0.0786361, 1.0982735 )\n);\nvec4 LinearSRGBToLinearDisplayP3( in vec4 value ) {\n\treturn vec4( value.rgb * LINEAR_SRGB_TO_LINEAR_DISPLAY_P3, value.a );\n}\nvec4 LinearDisplayP3ToLinearSRGB( in vec4 value ) {\n\treturn vec4( value.rgb * LINEAR_DISPLAY_P3_TO_LINEAR_SRGB, value.a );\n}\nvec4 LinearTransferOETF( in vec4 value ) {\n\treturn value;\n}\nvec4 sRGBTransferOETF( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}",envmap_fragment:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvec3 cameraToFrag;\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\n\t\t#else\n\t\t\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\n\t\t#endif\n\t#else\n\t\tvec3 reflectVec = vReflect;\n\t#endif\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 envColor = textureCube( envMap, envMapRotation * vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n\t#else\n\t\tvec4 envColor = vec4( 0.0 );\n\t#endif\n\t#ifdef ENVMAP_BLENDING_MULTIPLY\n\t\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_MIX )\n\t\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_ADD )\n\t\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\n\t#endif\n#endif",envmap_common_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float envMapIntensity;\n\tuniform float flipEnvMap;\n\tuniform mat3 envMapRotation;\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tuniform samplerCube envMap;\n\t#else\n\t\tuniform sampler2D envMap;\n\t#endif\n\t\n#endif",envmap_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float reflectivity;\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\tvarying vec3 vWorldPosition;\n\t\tuniform float refractionRatio;\n\t#else\n\t\tvarying vec3 vReflect;\n\t#endif\n#endif",envmap_pars_vertex:"#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\t\n\t\tvarying vec3 vWorldPosition;\n\t#else\n\t\tvarying vec3 vReflect;\n\t\tuniform float refractionRatio;\n\t#endif\n#endif",envmap_physical_pars_fragment:"#ifdef USE_ENVMAP\n\tvec3 getIBLIrradiance( const in vec3 normal ) {\n\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, envMapRotation * worldNormal, 1.0 );\n\t\t\treturn PI * envMapColor.rgb * envMapIntensity;\n\t\t#else\n\t\t\treturn vec3( 0.0 );\n\t\t#endif\n\t}\n\tvec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\n\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\tvec3 reflectVec = reflect( - viewDir, normal );\n\t\t\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\n\t\t\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, envMapRotation * reflectVec, roughness );\n\t\t\treturn envMapColor.rgb * envMapIntensity;\n\t\t#else\n\t\t\treturn vec3( 0.0 );\n\t\t#endif\n\t}\n\t#ifdef USE_ANISOTROPY\n\t\tvec3 getIBLAnisotropyRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in vec3 bitangent, const in float anisotropy ) {\n\t\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\t\tvec3 bentNormal = cross( bitangent, viewDir );\n\t\t\t\tbentNormal = normalize( cross( bentNormal, bitangent ) );\n\t\t\t\tbentNormal = normalize( mix( bentNormal, normal, pow2( pow2( 1.0 - anisotropy * ( 1.0 - roughness ) ) ) ) );\n\t\t\t\treturn getIBLRadiance( viewDir, bentNormal, roughness );\n\t\t\t#else\n\t\t\t\treturn vec3( 0.0 );\n\t\t\t#endif\n\t\t}\n\t#endif\n#endif",envmap_vertex:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvWorldPosition = worldPosition.xyz;\n\t#else\n\t\tvec3 cameraToVertex;\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvReflect = reflect( cameraToVertex, worldNormal );\n\t\t#else\n\t\t\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n\t\t#endif\n\t#endif\n#endif",fog_vertex:"#ifdef USE_FOG\n\tvFogDepth = - mvPosition.z;\n#endif",fog_pars_vertex:"#ifdef USE_FOG\n\tvarying float vFogDepth;\n#endif",fog_fragment:"#ifdef USE_FOG\n\t#ifdef FOG_EXP2\n\t\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\n\t#else\n\t\tfloat fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\n\t#endif\n\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif",fog_pars_fragment:"#ifdef USE_FOG\n\tuniform vec3 fogColor;\n\tvarying float vFogDepth;\n\t#ifdef FOG_EXP2\n\t\tuniform float fogDensity;\n\t#else\n\t\tuniform float fogNear;\n\t\tuniform float fogFar;\n\t#endif\n#endif",gradientmap_pars_fragment:"#ifdef USE_GRADIENTMAP\n\tuniform sampler2D gradientMap;\n#endif\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n\tfloat dotNL = dot( normal, lightDirection );\n\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n\t#ifdef USE_GRADIENTMAP\n\t\treturn vec3( texture2D( gradientMap, coord ).r );\n\t#else\n\t\tvec2 fw = fwidth( coord ) * 0.5;\n\t\treturn mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) );\n\t#endif\n}",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n#endif",lights_lambert_fragment:"LambertMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularStrength = specularStrength;",lights_lambert_pars_fragment:"varying vec3 vViewPosition;\nstruct LambertMaterial {\n\tvec3 diffuseColor;\n\tfloat specularStrength;\n};\nvoid RE_Direct_Lambert( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Lambert\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Lambert",lights_pars_begin:"uniform bool receiveShadow;\nuniform vec3 ambientLightColor;\n#if defined( USE_LIGHT_PROBES )\n\tuniform vec3 lightProbe[ 9 ];\n#endif\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n\tfloat x = normal.x, y = normal.y, z = normal.z;\n\tvec3 result = shCoefficients[ 0 ] * 0.886227;\n\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n\treturn result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\n\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n\treturn irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n\tvec3 irradiance = ambientLightColor;\n\treturn irradiance;\n}\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n\tif ( cutoffDistance > 0.0 ) {\n\t\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n\t}\n\treturn distanceFalloff;\n}\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\n\treturn smoothstep( coneCosine, penumbraCosine, angleCosine );\n}\n#if NUM_DIR_LIGHTS > 0\n\tstruct DirectionalLight {\n\t\tvec3 direction;\n\t\tvec3 color;\n\t};\n\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n\tvoid getDirectionalLightInfo( const in DirectionalLight directionalLight, out IncidentLight light ) {\n\t\tlight.color = directionalLight.color;\n\t\tlight.direction = directionalLight.direction;\n\t\tlight.visible = true;\n\t}\n#endif\n#if NUM_POINT_LIGHTS > 0\n\tstruct PointLight {\n\t\tvec3 position;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t};\n\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n\tvoid getPointLightInfo( const in PointLight pointLight, const in vec3 geometryPosition, out IncidentLight light ) {\n\t\tvec3 lVector = pointLight.position - geometryPosition;\n\t\tlight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tlight.color = pointLight.color;\n\t\tlight.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );\n\t\tlight.visible = ( light.color != vec3( 0.0 ) );\n\t}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\tstruct SpotLight {\n\t\tvec3 position;\n\t\tvec3 direction;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t\tfloat coneCos;\n\t\tfloat penumbraCos;\n\t};\n\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n\tvoid getSpotLightInfo( const in SpotLight spotLight, const in vec3 geometryPosition, out IncidentLight light ) {\n\t\tvec3 lVector = spotLight.position - geometryPosition;\n\t\tlight.direction = normalize( lVector );\n\t\tfloat angleCos = dot( light.direction, spotLight.direction );\n\t\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n\t\tif ( spotAttenuation > 0.0 ) {\n\t\t\tfloat lightDistance = length( lVector );\n\t\t\tlight.color = spotLight.color * spotAttenuation;\n\t\t\tlight.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\n\t\t\tlight.visible = ( light.color != vec3( 0.0 ) );\n\t\t} else {\n\t\t\tlight.color = vec3( 0.0 );\n\t\t\tlight.visible = false;\n\t\t}\n\t}\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n\tstruct RectAreaLight {\n\t\tvec3 color;\n\t\tvec3 position;\n\t\tvec3 halfWidth;\n\t\tvec3 halfHeight;\n\t};\n\tuniform sampler2D ltc_1;\tuniform sampler2D ltc_2;\n\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\tstruct HemisphereLight {\n\t\tvec3 direction;\n\t\tvec3 skyColor;\n\t\tvec3 groundColor;\n\t};\n\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\n\t\tfloat dotNL = dot( normal, hemiLight.direction );\n\t\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n\t\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n\t\treturn irradiance;\n\t}\n#endif",lights_toon_fragment:"ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;",lights_toon_pars_fragment:"varying vec3 vViewPosition;\nstruct ToonMaterial {\n\tvec3 diffuseColor;\n};\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\tvec3 irradiance = getGradientIrradiance( geometryNormal, directLight.direction ) * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Toon\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Toon",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_phong_pars_fragment:"varying vec3 vViewPosition;\nstruct BlinnPhongMaterial {\n\tvec3 diffuseColor;\n\tvec3 specularColor;\n\tfloat specularShininess;\n\tfloat specularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometryViewDir, geometryNormal, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_BlinnPhong\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_BlinnPhong",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nvec3 dxy = max( abs( dFdx( nonPerturbedNormal ) ), abs( dFdy( nonPerturbedNormal ) ) );\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\nmaterial.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;\nmaterial.roughness = min( material.roughness, 1.0 );\n#ifdef IOR\n\tmaterial.ior = ior;\n\t#ifdef USE_SPECULAR\n\t\tfloat specularIntensityFactor = specularIntensity;\n\t\tvec3 specularColorFactor = specularColor;\n\t\t#ifdef USE_SPECULAR_COLORMAP\n\t\t\tspecularColorFactor *= texture2D( specularColorMap, vSpecularColorMapUv ).rgb;\n\t\t#endif\n\t\t#ifdef USE_SPECULAR_INTENSITYMAP\n\t\t\tspecularIntensityFactor *= texture2D( specularIntensityMap, vSpecularIntensityMapUv ).a;\n\t\t#endif\n\t\tmaterial.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\n\t#else\n\t\tfloat specularIntensityFactor = 1.0;\n\t\tvec3 specularColorFactor = vec3( 1.0 );\n\t\tmaterial.specularF90 = 1.0;\n\t#endif\n\tmaterial.specularColor = mix( min( pow2( ( material.ior - 1.0 ) / ( material.ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\n#else\n\tmaterial.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\n\tmaterial.specularF90 = 1.0;\n#endif\n#ifdef USE_CLEARCOAT\n\tmaterial.clearcoat = clearcoat;\n\tmaterial.clearcoatRoughness = clearcoatRoughness;\n\tmaterial.clearcoatF0 = vec3( 0.04 );\n\tmaterial.clearcoatF90 = 1.0;\n\t#ifdef USE_CLEARCOATMAP\n\t\tmaterial.clearcoat *= texture2D( clearcoatMap, vClearcoatMapUv ).x;\n\t#endif\n\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\t\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vClearcoatRoughnessMapUv ).y;\n\t#endif\n\tmaterial.clearcoat = saturate( material.clearcoat );\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\n\tmaterial.clearcoatRoughness += geometryRoughness;\n\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\n#endif\n#ifdef USE_DISPERSION\n\tmaterial.dispersion = dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n\tmaterial.iridescence = iridescence;\n\tmaterial.iridescenceIOR = iridescenceIOR;\n\t#ifdef USE_IRIDESCENCEMAP\n\t\tmaterial.iridescence *= texture2D( iridescenceMap, vIridescenceMapUv ).r;\n\t#endif\n\t#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\t\tmaterial.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vIridescenceThicknessMapUv ).g + iridescenceThicknessMinimum;\n\t#else\n\t\tmaterial.iridescenceThickness = iridescenceThicknessMaximum;\n\t#endif\n#endif\n#ifdef USE_SHEEN\n\tmaterial.sheenColor = sheenColor;\n\t#ifdef USE_SHEEN_COLORMAP\n\t\tmaterial.sheenColor *= texture2D( sheenColorMap, vSheenColorMapUv ).rgb;\n\t#endif\n\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\n\t#ifdef USE_SHEEN_ROUGHNESSMAP\n\t\tmaterial.sheenRoughness *= texture2D( sheenRoughnessMap, vSheenRoughnessMapUv ).a;\n\t#endif\n#endif\n#ifdef USE_ANISOTROPY\n\t#ifdef USE_ANISOTROPYMAP\n\t\tmat2 anisotropyMat = mat2( anisotropyVector.x, anisotropyVector.y, - anisotropyVector.y, anisotropyVector.x );\n\t\tvec3 anisotropyPolar = texture2D( anisotropyMap, vAnisotropyMapUv ).rgb;\n\t\tvec2 anisotropyV = anisotropyMat * normalize( 2.0 * anisotropyPolar.rg - vec2( 1.0 ) ) * anisotropyPolar.b;\n\t#else\n\t\tvec2 anisotropyV = anisotropyVector;\n\t#endif\n\tmaterial.anisotropy = length( anisotropyV );\n\tif( material.anisotropy == 0.0 ) {\n\t\tanisotropyV = vec2( 1.0, 0.0 );\n\t} else {\n\t\tanisotropyV /= material.anisotropy;\n\t\tmaterial.anisotropy = saturate( material.anisotropy );\n\t}\n\tmaterial.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );\n\tmaterial.anisotropyT = tbn[ 0 ] * anisotropyV.x + tbn[ 1 ] * anisotropyV.y;\n\tmaterial.anisotropyB = tbn[ 1 ] * anisotropyV.x - tbn[ 0 ] * anisotropyV.y;\n#endif",lights_physical_pars_fragment:"struct PhysicalMaterial {\n\tvec3 diffuseColor;\n\tfloat roughness;\n\tvec3 specularColor;\n\tfloat specularF90;\n\tfloat dispersion;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat clearcoat;\n\t\tfloat clearcoatRoughness;\n\t\tvec3 clearcoatF0;\n\t\tfloat clearcoatF90;\n\t#endif\n\t#ifdef USE_IRIDESCENCE\n\t\tfloat iridescence;\n\t\tfloat iridescenceIOR;\n\t\tfloat iridescenceThickness;\n\t\tvec3 iridescenceFresnel;\n\t\tvec3 iridescenceF0;\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tvec3 sheenColor;\n\t\tfloat sheenRoughness;\n\t#endif\n\t#ifdef IOR\n\t\tfloat ior;\n\t#endif\n\t#ifdef USE_TRANSMISSION\n\t\tfloat transmission;\n\t\tfloat transmissionAlpha;\n\t\tfloat thickness;\n\t\tfloat attenuationDistance;\n\t\tvec3 attenuationColor;\n\t#endif\n\t#ifdef USE_ANISOTROPY\n\t\tfloat anisotropy;\n\t\tfloat alphaT;\n\t\tvec3 anisotropyT;\n\t\tvec3 anisotropyB;\n\t#endif\n};\nvec3 clearcoatSpecularDirect = vec3( 0.0 );\nvec3 clearcoatSpecularIndirect = vec3( 0.0 );\nvec3 sheenSpecularDirect = vec3( 0.0 );\nvec3 sheenSpecularIndirect = vec3(0.0 );\nvec3 Schlick_to_F0( const in vec3 f, const in float f90, const in float dotVH ) {\n float x = clamp( 1.0 - dotVH, 0.0, 1.0 );\n float x2 = x * x;\n float x5 = clamp( x * x2 * x2, 0.0, 0.9999 );\n return ( f - vec3( f90 ) * x5 ) / ( 1.0 - x5 );\n}\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\treturn 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n\tfloat a2 = pow2( alpha );\n\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n\treturn RECIPROCAL_PI * a2 / pow2( denom );\n}\n#ifdef USE_ANISOTROPY\n\tfloat V_GGX_SmithCorrelated_Anisotropic( const in float alphaT, const in float alphaB, const in float dotTV, const in float dotBV, const in float dotTL, const in float dotBL, const in float dotNV, const in float dotNL ) {\n\t\tfloat gv = dotNL * length( vec3( alphaT * dotTV, alphaB * dotBV, dotNV ) );\n\t\tfloat gl = dotNV * length( vec3( alphaT * dotTL, alphaB * dotBL, dotNL ) );\n\t\tfloat v = 0.5 / ( gv + gl );\n\t\treturn saturate(v);\n\t}\n\tfloat D_GGX_Anisotropic( const in float alphaT, const in float alphaB, const in float dotNH, const in float dotTH, const in float dotBH ) {\n\t\tfloat a2 = alphaT * alphaB;\n\t\thighp vec3 v = vec3( alphaB * dotTH, alphaT * dotBH, a2 * dotNH );\n\t\thighp float v2 = dot( v, v );\n\t\tfloat w2 = a2 / v2;\n\t\treturn RECIPROCAL_PI * a2 * pow2 ( w2 );\n\t}\n#endif\n#ifdef USE_CLEARCOAT\n\tvec3 BRDF_GGX_Clearcoat( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material) {\n\t\tvec3 f0 = material.clearcoatF0;\n\t\tfloat f90 = material.clearcoatF90;\n\t\tfloat roughness = material.clearcoatRoughness;\n\t\tfloat alpha = pow2( roughness );\n\t\tvec3 halfDir = normalize( lightDir + viewDir );\n\t\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\t\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\t\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\t\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\t\tvec3 F = F_Schlick( f0, f90, dotVH );\n\t\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\t\tfloat D = D_GGX( alpha, dotNH );\n\t\treturn F * ( V * D );\n\t}\n#endif\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) {\n\tvec3 f0 = material.specularColor;\n\tfloat f90 = material.specularF90;\n\tfloat roughness = material.roughness;\n\tfloat alpha = pow2( roughness );\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\tvec3 F = F_Schlick( f0, f90, dotVH );\n\t#ifdef USE_IRIDESCENCE\n\t\tF = mix( F, material.iridescenceFresnel, material.iridescence );\n\t#endif\n\t#ifdef USE_ANISOTROPY\n\t\tfloat dotTL = dot( material.anisotropyT, lightDir );\n\t\tfloat dotTV = dot( material.anisotropyT, viewDir );\n\t\tfloat dotTH = dot( material.anisotropyT, halfDir );\n\t\tfloat dotBL = dot( material.anisotropyB, lightDir );\n\t\tfloat dotBV = dot( material.anisotropyB, viewDir );\n\t\tfloat dotBH = dot( material.anisotropyB, halfDir );\n\t\tfloat V = V_GGX_SmithCorrelated_Anisotropic( material.alphaT, alpha, dotTV, dotBV, dotTL, dotBL, dotNV, dotNL );\n\t\tfloat D = D_GGX_Anisotropic( material.alphaT, alpha, dotNH, dotTH, dotBH );\n\t#else\n\t\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\t\tfloat D = D_GGX( alpha, dotNH );\n\t#endif\n\treturn F * ( V * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n\tconst float LUT_SIZE = 64.0;\n\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\n\tfloat dotNV = saturate( dot( N, V ) );\n\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n\tuv = uv * LUT_SCALE + LUT_BIAS;\n\treturn uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n\tfloat l = length( f );\n\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n\tfloat x = dot( v1, v2 );\n\tfloat y = abs( x );\n\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\n\tfloat v = a / b;\n\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n\treturn cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n\tvec3 lightNormal = cross( v1, v2 );\n\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n\tvec3 T1, T2;\n\tT1 = normalize( V - N * dot( V, N ) );\n\tT2 = - cross( N, T1 );\n\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n\tvec3 coords[ 4 ];\n\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n\tcoords[ 0 ] = normalize( coords[ 0 ] );\n\tcoords[ 1 ] = normalize( coords[ 1 ] );\n\tcoords[ 2 ] = normalize( coords[ 2 ] );\n\tcoords[ 3 ] = normalize( coords[ 3 ] );\n\tvec3 vectorFormFactor = vec3( 0.0 );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n\treturn vec3( result );\n}\n#if defined( USE_SHEEN )\nfloat D_Charlie( float roughness, float dotNH ) {\n\tfloat alpha = pow2( roughness );\n\tfloat invAlpha = 1.0 / alpha;\n\tfloat cos2h = dotNH * dotNH;\n\tfloat sin2h = max( 1.0 - cos2h, 0.0078125 );\n\treturn ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\n}\nfloat V_Neubelt( float dotNV, float dotNL ) {\n\treturn saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\n}\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) {\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat D = D_Charlie( sheenRoughness, dotNH );\n\tfloat V = V_Neubelt( dotNV, dotNL );\n\treturn sheenColor * ( D * V );\n}\n#endif\nfloat IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat r2 = roughness * roughness;\n\tfloat a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95;\n\tfloat b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72;\n\tfloat DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) );\n\treturn saturate( DG * RECIPROCAL_PI );\n}\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\n\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\n\tvec4 r = roughness * c0 + c1;\n\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\n\tvec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\n\treturn fab;\n}\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\n\tvec2 fab = DFGApprox( normal, viewDir, roughness );\n\treturn specularColor * fab.x + specularF90 * fab.y;\n}\n#ifdef USE_IRIDESCENCE\nvoid computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#else\nvoid computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#endif\n\tvec2 fab = DFGApprox( normal, viewDir, roughness );\n\t#ifdef USE_IRIDESCENCE\n\t\tvec3 Fr = mix( specularColor, iridescenceF0, iridescence );\n\t#else\n\t\tvec3 Fr = specularColor;\n\t#endif\n\tvec3 FssEss = Fr * fab.x + specularF90 * fab.y;\n\tfloat Ess = fab.x + fab.y;\n\tfloat Ems = 1.0 - Ess;\n\tvec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619;\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n\tsingleScatter += FssEss;\n\tmultiScatter += Fms * Ems;\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\t\tvec3 normal = geometryNormal;\n\t\tvec3 viewDir = geometryViewDir;\n\t\tvec3 position = geometryPosition;\n\t\tvec3 lightPos = rectAreaLight.position;\n\t\tvec3 halfWidth = rectAreaLight.halfWidth;\n\t\tvec3 halfHeight = rectAreaLight.halfHeight;\n\t\tvec3 lightColor = rectAreaLight.color;\n\t\tfloat roughness = material.roughness;\n\t\tvec3 rectCoords[ 4 ];\n\t\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\t\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n\t\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n\t\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n\t\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\n\t\tvec4 t1 = texture2D( ltc_1, uv );\n\t\tvec4 t2 = texture2D( ltc_2, uv );\n\t\tmat3 mInv = mat3(\n\t\t\tvec3( t1.x, 0, t1.y ),\n\t\t\tvec3( 0, 1, 0 ),\n\t\t\tvec3( t1.z, 0, t1.w )\n\t\t);\n\t\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n\t\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n\t\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n\t}\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNLcc = saturate( dot( geometryClearcoatNormal, directLight.direction ) );\n\t\tvec3 ccIrradiance = dotNLcc * directLight.color;\n\t\tclearcoatSpecularDirect += ccIrradiance * BRDF_GGX_Clearcoat( directLight.direction, geometryViewDir, geometryClearcoatNormal, material );\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tsheenSpecularDirect += irradiance * BRDF_Sheen( directLight.direction, geometryViewDir, geometryNormal, material.sheenColor, material.sheenRoughness );\n\t#endif\n\treflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometryViewDir, geometryNormal, material );\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n\t#ifdef USE_CLEARCOAT\n\t\tclearcoatSpecularIndirect += clearcoatRadiance * EnvironmentBRDF( geometryClearcoatNormal, geometryViewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tsheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );\n\t#endif\n\tvec3 singleScattering = vec3( 0.0 );\n\tvec3 multiScattering = vec3( 0.0 );\n\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n\t#ifdef USE_IRIDESCENCE\n\t\tcomputeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering );\n\t#else\n\t\tcomputeMultiscattering( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\n\t#endif\n\tvec3 totalScattering = singleScattering + multiScattering;\n\tvec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) );\n\treflectedLight.indirectSpecular += radiance * singleScattering;\n\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\n\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\n}\n#define RE_Direct\t\t\t\tRE_Direct_Physical\n#define RE_Direct_RectArea\t\tRE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular\t\tRE_IndirectSpecular_Physical\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}",lights_fragment_begin:"\nvec3 geometryPosition = - vViewPosition;\nvec3 geometryNormal = normal;\nvec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\nvec3 geometryClearcoatNormal = vec3( 0.0 );\n#ifdef USE_CLEARCOAT\n\tgeometryClearcoatNormal = clearcoatNormal;\n#endif\n#ifdef USE_IRIDESCENCE\n\tfloat dotNVi = saturate( dot( normal, geometryViewDir ) );\n\tif ( material.iridescenceThickness == 0.0 ) {\n\t\tmaterial.iridescence = 0.0;\n\t} else {\n\t\tmaterial.iridescence = saturate( material.iridescence );\n\t}\n\tif ( material.iridescence > 0.0 ) {\n\t\tmaterial.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor );\n\t\tmaterial.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi );\n\t}\n#endif\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n\tPointLight pointLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tpointLight = pointLights[ i ];\n\t\tgetPointLightInfo( pointLight, geometryPosition, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\n\t\tpointLightShadow = pointLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowIntensity, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n\tSpotLight spotLight;\n\tvec4 spotColor;\n\tvec3 spotLightCoord;\n\tbool inSpotLightMap;\n\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tspotLight = spotLights[ i ];\n\t\tgetSpotLightInfo( spotLight, geometryPosition, directLight );\n\t\t#if ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n\t\t#define SPOT_LIGHT_MAP_INDEX UNROLLED_LOOP_INDEX\n\t\t#elif ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\t#define SPOT_LIGHT_MAP_INDEX NUM_SPOT_LIGHT_MAPS\n\t\t#else\n\t\t#define SPOT_LIGHT_MAP_INDEX ( UNROLLED_LOOP_INDEX - NUM_SPOT_LIGHT_SHADOWS + NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n\t\t#endif\n\t\t#if ( SPOT_LIGHT_MAP_INDEX < NUM_SPOT_LIGHT_MAPS )\n\t\t\tspotLightCoord = vSpotLightCoord[ i ].xyz / vSpotLightCoord[ i ].w;\n\t\t\tinSpotLightMap = all( lessThan( abs( spotLightCoord * 2. - 1. ), vec3( 1.0 ) ) );\n\t\t\tspotColor = texture2D( spotLightMap[ SPOT_LIGHT_MAP_INDEX ], spotLightCoord.xy );\n\t\t\tdirectLight.color = inSpotLightMap ? directLight.color * spotColor.rgb : directLight.color;\n\t\t#endif\n\t\t#undef SPOT_LIGHT_MAP_INDEX\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\tspotLightShadow = spotLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowIntensity, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n\tDirectionalLight directionalLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tdirectionalLight = directionalLights[ i ];\n\t\tgetDirectionalLightInfo( directionalLight, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\n\t\tdirectionalLightShadow = directionalLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowIntensity, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n\tRectAreaLight rectAreaLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n\t\trectAreaLight = rectAreaLights[ i ];\n\t\tRE_Direct_RectArea( rectAreaLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if defined( RE_IndirectDiffuse )\n\tvec3 iblIrradiance = vec3( 0.0 );\n\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n\t#if defined( USE_LIGHT_PROBES )\n\t\tirradiance += getLightProbeIrradiance( lightProbe, geometryNormal );\n\t#endif\n\t#if ( NUM_HEMI_LIGHTS > 0 )\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\t\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometryNormal );\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if defined( RE_IndirectSpecular )\n\tvec3 radiance = vec3( 0.0 );\n\tvec3 clearcoatRadiance = vec3( 0.0 );\n#endif",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n\t\tvec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;\n\t\tirradiance += lightMapIrradiance;\n\t#endif\n\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\n\t\tiblIrradiance += getIBLIrradiance( geometryNormal );\n\t#endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n\t#ifdef USE_ANISOTROPY\n\t\tradiance += getIBLAnisotropyRadiance( geometryViewDir, geometryNormal, material.roughness, material.anisotropyB, material.anisotropy );\n\t#else\n\t\tradiance += getIBLRadiance( geometryViewDir, geometryNormal, material.roughness );\n\t#endif\n\t#ifdef USE_CLEARCOAT\n\t\tclearcoatRadiance += getIBLRadiance( geometryViewDir, geometryClearcoatNormal, material.clearcoatRoughness );\n\t#endif\n#endif",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n\tRE_IndirectDiffuse( irradiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF )\n\tgl_FragDepth = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF )\n\tuniform float logDepthBufFC;\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n\tvFragDepth = 1.0 + gl_Position.w;\n\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\n#endif",map_fragment:"#ifdef USE_MAP\n\tvec4 sampledDiffuseColor = texture2D( map, vMapUv );\n\t#ifdef DECODE_VIDEO_TEXTURE\n\t\tsampledDiffuseColor = vec4( mix( pow( sampledDiffuseColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), sampledDiffuseColor.rgb * 0.0773993808, vec3( lessThanEqual( sampledDiffuseColor.rgb, vec3( 0.04045 ) ) ) ), sampledDiffuseColor.w );\n\t\n\t#endif\n\tdiffuseColor *= sampledDiffuseColor;\n#endif",map_pars_fragment:"#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif",map_particle_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\t#if defined( USE_POINTS_UV )\n\t\tvec2 uv = vUv;\n\t#else\n\t\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n\t#endif\n#endif\n#ifdef USE_MAP\n\tdiffuseColor *= texture2D( map, uv );\n#endif\n#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\n#endif",map_particle_pars_fragment:"#if defined( USE_POINTS_UV )\n\tvarying vec2 vUv;\n#else\n\t#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\t\tuniform mat3 uvTransform;\n\t#endif\n#endif\n#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n\tvec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv );\n\tmetalnessFactor *= texelMetalness.b;\n#endif",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n\tuniform sampler2D metalnessMap;\n#endif",morphinstance_vertex:"#ifdef USE_INSTANCING_MORPH\n\tfloat morphTargetInfluences[ MORPHTARGETS_COUNT ];\n\tfloat morphTargetBaseInfluence = texelFetch( morphTexture, ivec2( 0, gl_InstanceID ), 0 ).r;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tmorphTargetInfluences[i] = texelFetch( morphTexture, ivec2( i + 1, gl_InstanceID ), 0 ).r;\n\t}\n#endif",morphcolor_vertex:"#if defined( USE_MORPHCOLORS )\n\tvColor *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\t#if defined( USE_COLOR_ALPHA )\n\t\t\tif ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ];\n\t\t#elif defined( USE_COLOR )\n\t\t\tif ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ];\n\t\t#endif\n\t}\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n\tobjectNormal *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tif ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ];\n\t}\n#endif",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n\t#ifndef USE_INSTANCING_MORPH\n\t\tuniform float morphTargetBaseInfluence;\n\t\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\n\t#endif\n\tuniform sampler2DArray morphTargetsTexture;\n\tuniform ivec2 morphTargetsTextureSize;\n\tvec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) {\n\t\tint texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset;\n\t\tint y = texelIndex / morphTargetsTextureSize.x;\n\t\tint x = texelIndex - y * morphTargetsTextureSize.x;\n\t\tivec3 morphUV = ivec3( x, y, morphTargetIndex );\n\t\treturn texelFetch( morphTargetsTexture, morphUV, 0 );\n\t}\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n\ttransformed *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tif ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ];\n\t}\n#endif",normal_fragment_begin:"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\n#ifdef FLAT_SHADED\n\tvec3 fdx = dFdx( vViewPosition );\n\tvec3 fdy = dFdy( vViewPosition );\n\tvec3 normal = normalize( cross( fdx, fdy ) );\n#else\n\tvec3 normal = normalize( vNormal );\n\t#ifdef DOUBLE_SIDED\n\t\tnormal *= faceDirection;\n\t#endif\n#endif\n#if defined( USE_NORMALMAP_TANGENTSPACE ) || defined( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY )\n\t#ifdef USE_TANGENT\n\t\tmat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n\t#else\n\t\tmat3 tbn = getTangentFrame( - vViewPosition, normal,\n\t\t#if defined( USE_NORMALMAP )\n\t\t\tvNormalMapUv\n\t\t#elif defined( USE_CLEARCOAT_NORMALMAP )\n\t\t\tvClearcoatNormalMapUv\n\t\t#else\n\t\t\tvUv\n\t\t#endif\n\t\t);\n\t#endif\n\t#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n\t\ttbn[0] *= faceDirection;\n\t\ttbn[1] *= faceDirection;\n\t#endif\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\t#ifdef USE_TANGENT\n\t\tmat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n\t#else\n\t\tmat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv );\n\t#endif\n\t#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n\t\ttbn2[0] *= faceDirection;\n\t\ttbn2[1] *= faceDirection;\n\t#endif\n#endif\nvec3 nonPerturbedNormal = normal;",normal_fragment_maps:"#ifdef USE_NORMALMAP_OBJECTSPACE\n\tnormal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n\t#ifdef FLIP_SIDED\n\t\tnormal = - normal;\n\t#endif\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * faceDirection;\n\t#endif\n\tnormal = normalize( normalMatrix * normal );\n#elif defined( USE_NORMALMAP_TANGENTSPACE )\n\tvec3 mapN = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n\tmapN.xy *= normalScale;\n\tnormal = normalize( tbn * mapN );\n#elif defined( USE_BUMPMAP )\n\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\n#endif",normal_pars_fragment:"#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif",normal_pars_vertex:"#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif",normal_vertex:"#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n\tuniform sampler2D normalMap;\n\tuniform vec2 normalScale;\n#endif\n#ifdef USE_NORMALMAP_OBJECTSPACE\n\tuniform mat3 normalMatrix;\n#endif\n#if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) )\n\tmat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) {\n\t\tvec3 q0 = dFdx( eye_pos.xyz );\n\t\tvec3 q1 = dFdy( eye_pos.xyz );\n\t\tvec2 st0 = dFdx( uv.st );\n\t\tvec2 st1 = dFdy( uv.st );\n\t\tvec3 N = surf_norm;\n\t\tvec3 q1perp = cross( q1, N );\n\t\tvec3 q0perp = cross( N, q0 );\n\t\tvec3 T = q1perp * st0.x + q0perp * st1.x;\n\t\tvec3 B = q1perp * st0.y + q0perp * st1.y;\n\t\tfloat det = max( dot( T, T ), dot( B, B ) );\n\t\tfloat scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det );\n\t\treturn mat3( T * scale, B * scale, N );\n\t}\n#endif",clearcoat_normal_fragment_begin:"#ifdef USE_CLEARCOAT\n\tvec3 clearcoatNormal = nonPerturbedNormal;\n#endif",clearcoat_normal_fragment_maps:"#ifdef USE_CLEARCOAT_NORMALMAP\n\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0;\n\tclearcoatMapN.xy *= clearcoatNormalScale;\n\tclearcoatNormal = normalize( tbn2 * clearcoatMapN );\n#endif",clearcoat_pars_fragment:"#ifdef USE_CLEARCOATMAP\n\tuniform sampler2D clearcoatMap;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform sampler2D clearcoatNormalMap;\n\tuniform vec2 clearcoatNormalScale;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform sampler2D clearcoatRoughnessMap;\n#endif",iridescence_pars_fragment:"#ifdef USE_IRIDESCENCEMAP\n\tuniform sampler2D iridescenceMap;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tuniform sampler2D iridescenceThicknessMap;\n#endif",opaque_fragment:"#ifdef OPAQUE\ndiffuseColor.a = 1.0;\n#endif\n#ifdef USE_TRANSMISSION\ndiffuseColor.a *= material.transmissionAlpha;\n#endif\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n\treturn normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n\treturn 2.0 * rgb.xyz - 1.0;\n}\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;const float ShiftRight8 = 1. / 256.;\nconst float Inv255 = 1. / 255.;\nconst vec4 PackFactors = vec4( 1.0, 256.0, 256.0 * 256.0, 256.0 * 256.0 * 256.0 );\nconst vec2 UnpackFactors2 = vec2( UnpackDownscale, 1.0 / PackFactors.g );\nconst vec3 UnpackFactors3 = vec3( UnpackDownscale / PackFactors.rg, 1.0 / PackFactors.b );\nconst vec4 UnpackFactors4 = vec4( UnpackDownscale / PackFactors.rgb, 1.0 / PackFactors.a );\nvec4 packDepthToRGBA( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec4( 0., 0., 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec4( 1., 1., 1., 1. );\n\tfloat vuf;\n\tfloat af = modf( v * PackFactors.a, vuf );\n\tfloat bf = modf( vuf * ShiftRight8, vuf );\n\tfloat gf = modf( vuf * ShiftRight8, vuf );\n\treturn vec4( vuf * Inv255, gf * PackUpscale, bf * PackUpscale, af );\n}\nvec3 packDepthToRGB( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec3( 0., 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec3( 1., 1., 1. );\n\tfloat vuf;\n\tfloat bf = modf( v * PackFactors.b, vuf );\n\tfloat gf = modf( vuf * ShiftRight8, vuf );\n\treturn vec3( vuf * Inv255, gf * PackUpscale, bf );\n}\nvec2 packDepthToRG( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec2( 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec2( 1., 1. );\n\tfloat vuf;\n\tfloat gf = modf( v * 256., vuf );\n\treturn vec2( vuf * Inv255, gf );\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n\treturn dot( v, UnpackFactors4 );\n}\nfloat unpackRGBToDepth( const in vec3 v ) {\n\treturn dot( v, UnpackFactors3 );\n}\nfloat unpackRGToDepth( const in vec2 v ) {\n\treturn v.r * UnpackFactors2.r + v.g * UnpackFactors2.g;\n}\nvec4 pack2HalfToRGBA( const in vec2 v ) {\n\tvec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) );\n\treturn vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w );\n}\nvec2 unpackRGBATo2Half( const in vec4 v ) {\n\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float depth, const in float near, const in float far ) {\n\treturn depth * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) {\n\treturn ( near * far ) / ( ( far - near ) * depth - far );\n}",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n\tgl_FragColor.rgb *= gl_FragColor.a;\n#endif",project_vertex:"vec4 mvPosition = vec4( transformed, 1.0 );\n#ifdef USE_BATCHING\n\tmvPosition = batchingMatrix * mvPosition;\n#endif\n#ifdef USE_INSTANCING\n\tmvPosition = instanceMatrix * mvPosition;\n#endif\nmvPosition = modelViewMatrix * mvPosition;\ngl_Position = projectionMatrix * mvPosition;",dithering_fragment:"#ifdef DITHERING\n\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif",dithering_pars_fragment:"#ifdef DITHERING\n\tvec3 dithering( vec3 color ) {\n\t\tfloat grid_position = rand( gl_FragCoord.xy );\n\t\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n\t\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n\t\treturn color + dither_shift_RGB;\n\t}\n#endif",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n\tvec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv );\n\troughnessFactor *= texelRoughness.g;\n#endif",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n\tuniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#if NUM_SPOT_LIGHT_COORDS > 0\n\tvarying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#if NUM_SPOT_LIGHT_MAPS > 0\n\tuniform sampler2D spotLightMap[ NUM_SPOT_LIGHT_MAPS ];\n#endif\n#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n\t\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n\t}\n\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\n\t\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\n\t}\n\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\n\t\tfloat occlusion = 1.0;\n\t\tvec2 distribution = texture2DDistribution( shadow, uv );\n\t\tfloat hard_shadow = step( compare , distribution.x );\n\t\tif (hard_shadow != 1.0 ) {\n\t\t\tfloat distance = compare - distribution.x ;\n\t\t\tfloat variance = max( 0.00000, distribution.y * distribution.y );\n\t\t\tfloat softness_probability = variance / (variance + distance * distance );\t\t\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 );\t\t\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\n\t\t}\n\t\treturn occlusion;\n\t}\n\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\tfloat shadow = 1.0;\n\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\tshadowCoord.z += shadowBias;\n\t\tbool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;\n\t\tbool frustumTest = inFrustum && shadowCoord.z <= 1.0;\n\t\tif ( frustumTest ) {\n\t\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx0 = - texelSize.x * shadowRadius;\n\t\t\tfloat dy0 = - texelSize.y * shadowRadius;\n\t\t\tfloat dx1 = + texelSize.x * shadowRadius;\n\t\t\tfloat dy1 = + texelSize.y * shadowRadius;\n\t\t\tfloat dx2 = dx0 / 2.0;\n\t\t\tfloat dy2 = dy0 / 2.0;\n\t\t\tfloat dx3 = dx1 / 2.0;\n\t\t\tfloat dy3 = dy1 / 2.0;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n\t\t\t) * ( 1.0 / 17.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx = texelSize.x;\n\t\t\tfloat dy = texelSize.y;\n\t\t\tvec2 uv = shadowCoord.xy;\n\t\t\tvec2 f = fract( uv * shadowMapSize + 0.5 );\n\t\t\tuv -= f * texelSize;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, uv, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ),\n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ),\n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ),\n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t\t f.x ),\n\t\t\t\t\t mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t\t f.x ),\n\t\t\t\t\t f.y )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_VSM )\n\t\t\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#else\n\t\t\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#endif\n\t\t}\n\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t}\n\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\n\t\tvec3 absV = abs( v );\n\t\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n\t\tabsV *= scaleToCube;\n\t\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n\t\tvec2 planar = v.xy;\n\t\tfloat almostATexel = 1.5 * texelSizeY;\n\t\tfloat almostOne = 1.0 - almostATexel;\n\t\tif ( absV.z >= almostOne ) {\n\t\t\tif ( v.z > 0.0 )\n\t\t\t\tplanar.x = 4.0 - v.x;\n\t\t} else if ( absV.x >= almostOne ) {\n\t\t\tfloat signX = sign( v.x );\n\t\t\tplanar.x = v.z * signX + 2.0 * signX;\n\t\t} else if ( absV.y >= almostOne ) {\n\t\t\tfloat signY = sign( v.y );\n\t\t\tplanar.x = v.x + 2.0 * signY + 2.0;\n\t\t\tplanar.y = v.z * signY - 2.0;\n\t\t}\n\t\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n\t}\n\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n\t\tfloat shadow = 1.0;\n\t\tvec3 lightToPosition = shadowCoord.xyz;\n\t\t\n\t\tfloat lightToPositionLength = length( lightToPosition );\n\t\tif ( lightToPositionLength - shadowCameraFar <= 0.0 && lightToPositionLength - shadowCameraNear >= 0.0 ) {\n\t\t\tfloat dp = ( lightToPositionLength - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\t\t\tdp += shadowBias;\n\t\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n\t\t\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\n\t\t\t\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n\t\t\t\tshadow = (\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n\t\t\t\t) * ( 1.0 / 9.0 );\n\t\t\t#else\n\t\t\t\tshadow = texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n\t\t\t#endif\n\t\t}\n\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t}\n#endif",shadowmap_pars_vertex:"#if NUM_SPOT_LIGHT_COORDS > 0\n\tuniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ];\n\tvarying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n#endif",shadowmap_vertex:"#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 )\n\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\tvec4 shadowWorldPosition;\n#endif\n#if defined( USE_SHADOWMAP )\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\n\t\t\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\n\t\t\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if NUM_SPOT_LIGHT_COORDS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_COORDS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition;\n\t\t#if ( defined( USE_SHADOWMAP ) && UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\t\tshadowWorldPosition.xyz += shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias;\n\t\t#endif\n\t\tvSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n#endif",shadowmask_pars_fragment:"float getShadowMask() {\n\tfloat shadow = 1.0;\n\t#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\tdirectionalLight = directionalLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowIntensity, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n\t\tspotLight = spotLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowIntensity, spotLight.shadowBias, spotLight.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\tpointLight = pointLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowIntensity, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#endif\n\treturn shadow;\n}",skinbase_vertex:"#ifdef USE_SKINNING\n\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\n\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\n\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\n\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n\tuniform mat4 bindMatrix;\n\tuniform mat4 bindMatrixInverse;\n\tuniform highp sampler2D boneTexture;\n\tmat4 getBoneMatrix( const in float i ) {\n\t\tint size = textureSize( boneTexture, 0 ).x;\n\t\tint j = int( i ) * 4;\n\t\tint x = j % size;\n\t\tint y = j / size;\n\t\tvec4 v1 = texelFetch( boneTexture, ivec2( x, y ), 0 );\n\t\tvec4 v2 = texelFetch( boneTexture, ivec2( x + 1, y ), 0 );\n\t\tvec4 v3 = texelFetch( boneTexture, ivec2( x + 2, y ), 0 );\n\t\tvec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 );\n\t\treturn mat4( v1, v2, v3, v4 );\n\t}\n#endif",skinning_vertex:"#ifdef USE_SKINNING\n\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n\tvec4 skinned = vec4( 0.0 );\n\tskinned += boneMatX * skinVertex * skinWeight.x;\n\tskinned += boneMatY * skinVertex * skinWeight.y;\n\tskinned += boneMatZ * skinVertex * skinWeight.z;\n\tskinned += boneMatW * skinVertex * skinWeight.w;\n\ttransformed = ( bindMatrixInverse * skinned ).xyz;\n#endif",skinnormal_vertex:"#ifdef USE_SKINNING\n\tmat4 skinMatrix = mat4( 0.0 );\n\tskinMatrix += skinWeight.x * boneMatX;\n\tskinMatrix += skinWeight.y * boneMatY;\n\tskinMatrix += skinWeight.z * boneMatZ;\n\tskinMatrix += skinWeight.w * boneMatW;\n\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\n\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n\t#ifdef USE_TANGENT\n\t\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#endif\n#endif",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n\tvec4 texelSpecular = texture2D( specularMap, vSpecularMapUv );\n\tspecularStrength = texelSpecular.r;\n#else\n\tspecularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n\tuniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif",tonemapping_pars_fragment:"#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nvec3 LinearToneMapping( vec3 color ) {\n\treturn saturate( toneMappingExposure * color );\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( color / ( vec3( 1.0 ) + color ) );\n}\nvec3 CineonToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\tcolor = max( vec3( 0.0 ), color - 0.004 );\n\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 RRTAndODTFit( vec3 v ) {\n\tvec3 a = v * ( v + 0.0245786 ) - 0.000090537;\n\tvec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\n\treturn a / b;\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n\tconst mat3 ACESInputMat = mat3(\n\t\tvec3( 0.59719, 0.07600, 0.02840 ),\t\tvec3( 0.35458, 0.90834, 0.13383 ),\n\t\tvec3( 0.04823, 0.01566, 0.83777 )\n\t);\n\tconst mat3 ACESOutputMat = mat3(\n\t\tvec3( 1.60475, -0.10208, -0.00327 ),\t\tvec3( -0.53108, 1.10813, -0.07276 ),\n\t\tvec3( -0.07367, -0.00605, 1.07602 )\n\t);\n\tcolor *= toneMappingExposure / 0.6;\n\tcolor = ACESInputMat * color;\n\tcolor = RRTAndODTFit( color );\n\tcolor = ACESOutputMat * color;\n\treturn saturate( color );\n}\nconst mat3 LINEAR_REC2020_TO_LINEAR_SRGB = mat3(\n\tvec3( 1.6605, - 0.1246, - 0.0182 ),\n\tvec3( - 0.5876, 1.1329, - 0.1006 ),\n\tvec3( - 0.0728, - 0.0083, 1.1187 )\n);\nconst mat3 LINEAR_SRGB_TO_LINEAR_REC2020 = mat3(\n\tvec3( 0.6274, 0.0691, 0.0164 ),\n\tvec3( 0.3293, 0.9195, 0.0880 ),\n\tvec3( 0.0433, 0.0113, 0.8956 )\n);\nvec3 agxDefaultContrastApprox( vec3 x ) {\n\tvec3 x2 = x * x;\n\tvec3 x4 = x2 * x2;\n\treturn + 15.5 * x4 * x2\n\t\t- 40.14 * x4 * x\n\t\t+ 31.96 * x4\n\t\t- 6.868 * x2 * x\n\t\t+ 0.4298 * x2\n\t\t+ 0.1191 * x\n\t\t- 0.00232;\n}\nvec3 AgXToneMapping( vec3 color ) {\n\tconst mat3 AgXInsetMatrix = mat3(\n\t\tvec3( 0.856627153315983, 0.137318972929847, 0.11189821299995 ),\n\t\tvec3( 0.0951212405381588, 0.761241990602591, 0.0767994186031903 ),\n\t\tvec3( 0.0482516061458583, 0.101439036467562, 0.811302368396859 )\n\t);\n\tconst mat3 AgXOutsetMatrix = mat3(\n\t\tvec3( 1.1271005818144368, - 0.1413297634984383, - 0.14132976349843826 ),\n\t\tvec3( - 0.11060664309660323, 1.157823702216272, - 0.11060664309660294 ),\n\t\tvec3( - 0.016493938717834573, - 0.016493938717834257, 1.2519364065950405 )\n\t);\n\tconst float AgxMinEv = - 12.47393;\tconst float AgxMaxEv = 4.026069;\n\tcolor *= toneMappingExposure;\n\tcolor = LINEAR_SRGB_TO_LINEAR_REC2020 * color;\n\tcolor = AgXInsetMatrix * color;\n\tcolor = max( color, 1e-10 );\tcolor = log2( color );\n\tcolor = ( color - AgxMinEv ) / ( AgxMaxEv - AgxMinEv );\n\tcolor = clamp( color, 0.0, 1.0 );\n\tcolor = agxDefaultContrastApprox( color );\n\tcolor = AgXOutsetMatrix * color;\n\tcolor = pow( max( vec3( 0.0 ), color ), vec3( 2.2 ) );\n\tcolor = LINEAR_REC2020_TO_LINEAR_SRGB * color;\n\tcolor = clamp( color, 0.0, 1.0 );\n\treturn color;\n}\nvec3 NeutralToneMapping( vec3 color ) {\n\tconst float StartCompression = 0.8 - 0.04;\n\tconst float Desaturation = 0.15;\n\tcolor *= toneMappingExposure;\n\tfloat x = min( color.r, min( color.g, color.b ) );\n\tfloat offset = x < 0.08 ? x - 6.25 * x * x : 0.04;\n\tcolor -= offset;\n\tfloat peak = max( color.r, max( color.g, color.b ) );\n\tif ( peak < StartCompression ) return color;\n\tfloat d = 1. - StartCompression;\n\tfloat newPeak = 1. - d * d / ( peak + d - StartCompression );\n\tcolor *= newPeak / peak;\n\tfloat g = 1. - 1. / ( Desaturation * ( peak - newPeak ) + 1. );\n\treturn mix( color, vec3( newPeak ), g );\n}\nvec3 CustomToneMapping( vec3 color ) { return color; }",transmission_fragment:"#ifdef USE_TRANSMISSION\n\tmaterial.transmission = transmission;\n\tmaterial.transmissionAlpha = 1.0;\n\tmaterial.thickness = thickness;\n\tmaterial.attenuationDistance = attenuationDistance;\n\tmaterial.attenuationColor = attenuationColor;\n\t#ifdef USE_TRANSMISSIONMAP\n\t\tmaterial.transmission *= texture2D( transmissionMap, vTransmissionMapUv ).r;\n\t#endif\n\t#ifdef USE_THICKNESSMAP\n\t\tmaterial.thickness *= texture2D( thicknessMap, vThicknessMapUv ).g;\n\t#endif\n\tvec3 pos = vWorldPosition;\n\tvec3 v = normalize( cameraPosition - pos );\n\tvec3 n = inverseTransformDirection( normal, viewMatrix );\n\tvec4 transmitted = getIBLVolumeRefraction(\n\t\tn, v, material.roughness, material.diffuseColor, material.specularColor, material.specularF90,\n\t\tpos, modelMatrix, viewMatrix, projectionMatrix, material.dispersion, material.ior, material.thickness,\n\t\tmaterial.attenuationColor, material.attenuationDistance );\n\tmaterial.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission );\n\ttotalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission );\n#endif",transmission_pars_fragment:"#ifdef USE_TRANSMISSION\n\tuniform float transmission;\n\tuniform float thickness;\n\tuniform float attenuationDistance;\n\tuniform vec3 attenuationColor;\n\t#ifdef USE_TRANSMISSIONMAP\n\t\tuniform sampler2D transmissionMap;\n\t#endif\n\t#ifdef USE_THICKNESSMAP\n\t\tuniform sampler2D thicknessMap;\n\t#endif\n\tuniform vec2 transmissionSamplerSize;\n\tuniform sampler2D transmissionSamplerMap;\n\tuniform mat4 modelMatrix;\n\tuniform mat4 projectionMatrix;\n\tvarying vec3 vWorldPosition;\n\tfloat w0( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a * ( a * ( - a + 3.0 ) - 3.0 ) + 1.0 );\n\t}\n\tfloat w1( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a * a * ( 3.0 * a - 6.0 ) + 4.0 );\n\t}\n\tfloat w2( float a ){\n\t\treturn ( 1.0 / 6.0 ) * ( a * ( a * ( - 3.0 * a + 3.0 ) + 3.0 ) + 1.0 );\n\t}\n\tfloat w3( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a * a * a );\n\t}\n\tfloat g0( float a ) {\n\t\treturn w0( a ) + w1( a );\n\t}\n\tfloat g1( float a ) {\n\t\treturn w2( a ) + w3( a );\n\t}\n\tfloat h0( float a ) {\n\t\treturn - 1.0 + w1( a ) / ( w0( a ) + w1( a ) );\n\t}\n\tfloat h1( float a ) {\n\t\treturn 1.0 + w3( a ) / ( w2( a ) + w3( a ) );\n\t}\n\tvec4 bicubic( sampler2D tex, vec2 uv, vec4 texelSize, float lod ) {\n\t\tuv = uv * texelSize.zw + 0.5;\n\t\tvec2 iuv = floor( uv );\n\t\tvec2 fuv = fract( uv );\n\t\tfloat g0x = g0( fuv.x );\n\t\tfloat g1x = g1( fuv.x );\n\t\tfloat h0x = h0( fuv.x );\n\t\tfloat h1x = h1( fuv.x );\n\t\tfloat h0y = h0( fuv.y );\n\t\tfloat h1y = h1( fuv.y );\n\t\tvec2 p0 = ( vec2( iuv.x + h0x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p1 = ( vec2( iuv.x + h1x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p2 = ( vec2( iuv.x + h0x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p3 = ( vec2( iuv.x + h1x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n\t\treturn g0( fuv.y ) * ( g0x * textureLod( tex, p0, lod ) + g1x * textureLod( tex, p1, lod ) ) +\n\t\t\tg1( fuv.y ) * ( g0x * textureLod( tex, p2, lod ) + g1x * textureLod( tex, p3, lod ) );\n\t}\n\tvec4 textureBicubic( sampler2D sampler, vec2 uv, float lod ) {\n\t\tvec2 fLodSize = vec2( textureSize( sampler, int( lod ) ) );\n\t\tvec2 cLodSize = vec2( textureSize( sampler, int( lod + 1.0 ) ) );\n\t\tvec2 fLodSizeInv = 1.0 / fLodSize;\n\t\tvec2 cLodSizeInv = 1.0 / cLodSize;\n\t\tvec4 fSample = bicubic( sampler, uv, vec4( fLodSizeInv, fLodSize ), floor( lod ) );\n\t\tvec4 cSample = bicubic( sampler, uv, vec4( cLodSizeInv, cLodSize ), ceil( lod ) );\n\t\treturn mix( fSample, cSample, fract( lod ) );\n\t}\n\tvec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) {\n\t\tvec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\n\t\tvec3 modelScale;\n\t\tmodelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );\n\t\tmodelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );\n\t\tmodelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );\n\t\treturn normalize( refractionVector ) * thickness * modelScale;\n\t}\n\tfloat applyIorToRoughness( const in float roughness, const in float ior ) {\n\t\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\n\t}\n\tvec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) {\n\t\tfloat lod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\n\t\treturn textureBicubic( transmissionSamplerMap, fragCoord.xy, lod );\n\t}\n\tvec3 volumeAttenuation( const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) {\n\t\tif ( isinf( attenuationDistance ) ) {\n\t\t\treturn vec3( 1.0 );\n\t\t} else {\n\t\t\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\n\t\t\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance );\t\t\treturn transmittance;\n\t\t}\n\t}\n\tvec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor,\n\t\tconst in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix,\n\t\tconst in mat4 viewMatrix, const in mat4 projMatrix, const in float dispersion, const in float ior, const in float thickness,\n\t\tconst in vec3 attenuationColor, const in float attenuationDistance ) {\n\t\tvec4 transmittedLight;\n\t\tvec3 transmittance;\n\t\t#ifdef USE_DISPERSION\n\t\t\tfloat halfSpread = ( ior - 1.0 ) * 0.025 * dispersion;\n\t\t\tvec3 iors = vec3( ior - halfSpread, ior, ior + halfSpread );\n\t\t\tfor ( int i = 0; i < 3; i ++ ) {\n\t\t\t\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, iors[ i ], modelMatrix );\n\t\t\t\tvec3 refractedRayExit = position + transmissionRay;\n\t\t\n\t\t\t\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n\t\t\t\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\n\t\t\t\trefractionCoords += 1.0;\n\t\t\t\trefractionCoords /= 2.0;\n\t\t\n\t\t\t\tvec4 transmissionSample = getTransmissionSample( refractionCoords, roughness, iors[ i ] );\n\t\t\t\ttransmittedLight[ i ] = transmissionSample[ i ];\n\t\t\t\ttransmittedLight.a += transmissionSample.a;\n\t\t\t\ttransmittance[ i ] = diffuseColor[ i ] * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance )[ i ];\n\t\t\t}\n\t\t\ttransmittedLight.a /= 3.0;\n\t\t\n\t\t#else\n\t\t\n\t\t\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\n\t\t\tvec3 refractedRayExit = position + transmissionRay;\n\t\t\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n\t\t\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\n\t\t\trefractionCoords += 1.0;\n\t\t\trefractionCoords /= 2.0;\n\t\t\ttransmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\n\t\t\ttransmittance = diffuseColor * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance );\n\t\t\n\t\t#endif\n\t\tvec3 attenuatedColor = transmittance * transmittedLight.rgb;\n\t\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\n\t\tfloat transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0;\n\t\treturn vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor );\n\t}\n#endif",uv_pars_fragment:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvarying vec2 vUv;\n#endif\n#ifdef USE_MAP\n\tvarying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n\tvarying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n\tvarying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n\tvarying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n\tvarying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n\tvarying vec2 vNormalMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tvarying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n\tvarying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tvarying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tvarying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tvarying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tvarying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tvarying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tvarying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tvarying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tvarying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tvarying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n\tvarying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tvarying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tvarying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tuniform mat3 transmissionMapTransform;\n\tvarying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n\tuniform mat3 thicknessMapTransform;\n\tvarying vec2 vThicknessMapUv;\n#endif",uv_pars_vertex:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvarying vec2 vUv;\n#endif\n#ifdef USE_MAP\n\tuniform mat3 mapTransform;\n\tvarying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform mat3 alphaMapTransform;\n\tvarying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n\tuniform mat3 lightMapTransform;\n\tvarying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n\tuniform mat3 aoMapTransform;\n\tvarying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n\tuniform mat3 bumpMapTransform;\n\tvarying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n\tuniform mat3 normalMapTransform;\n\tvarying vec2 vNormalMapUv;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n\tuniform mat3 displacementMapTransform;\n\tvarying vec2 vDisplacementMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tuniform mat3 emissiveMapTransform;\n\tvarying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n\tuniform mat3 metalnessMapTransform;\n\tvarying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tuniform mat3 roughnessMapTransform;\n\tvarying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tuniform mat3 anisotropyMapTransform;\n\tvarying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tuniform mat3 clearcoatMapTransform;\n\tvarying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform mat3 clearcoatNormalMapTransform;\n\tvarying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform mat3 clearcoatRoughnessMapTransform;\n\tvarying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tuniform mat3 sheenColorMapTransform;\n\tvarying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tuniform mat3 sheenRoughnessMapTransform;\n\tvarying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tuniform mat3 iridescenceMapTransform;\n\tvarying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tuniform mat3 iridescenceThicknessMapTransform;\n\tvarying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n\tuniform mat3 specularMapTransform;\n\tvarying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tuniform mat3 specularColorMapTransform;\n\tvarying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tuniform mat3 specularIntensityMapTransform;\n\tvarying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tuniform mat3 transmissionMapTransform;\n\tvarying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n\tuniform mat3 thicknessMapTransform;\n\tvarying vec2 vThicknessMapUv;\n#endif",uv_vertex:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvUv = vec3( uv, 1 ).xy;\n#endif\n#ifdef USE_MAP\n\tvMapUv = ( mapTransform * vec3( MAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ALPHAMAP\n\tvAlphaMapUv = ( alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_LIGHTMAP\n\tvLightMapUv = ( lightMapTransform * vec3( LIGHTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_AOMAP\n\tvAoMapUv = ( aoMapTransform * vec3( AOMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_BUMPMAP\n\tvBumpMapUv = ( bumpMapTransform * vec3( BUMPMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_NORMALMAP\n\tvNormalMapUv = ( normalMapTransform * vec3( NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n\tvDisplacementMapUv = ( displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tvEmissiveMapUv = ( emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_METALNESSMAP\n\tvMetalnessMapUv = ( metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tvRoughnessMapUv = ( roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tvAnisotropyMapUv = ( anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tvClearcoatMapUv = ( clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tvClearcoatNormalMapUv = ( clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tvClearcoatRoughnessMapUv = ( clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tvIridescenceMapUv = ( iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tvIridescenceThicknessMapUv = ( iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tvSheenColorMapUv = ( sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tvSheenRoughnessMapUv = ( sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULARMAP\n\tvSpecularMapUv = ( specularMapTransform * vec3( SPECULARMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tvSpecularColorMapUv = ( specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tvSpecularIntensityMapUv = ( specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tvTransmissionMapUv = ( transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_THICKNESSMAP\n\tvThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0\n\tvec4 worldPosition = vec4( transformed, 1.0 );\n\t#ifdef USE_BATCHING\n\t\tworldPosition = batchingMatrix * worldPosition;\n\t#endif\n\t#ifdef USE_INSTANCING\n\t\tworldPosition = instanceMatrix * worldPosition;\n\t#endif\n\tworldPosition = modelMatrix * worldPosition;\n#endif",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\tgl_Position = vec4( position.xy, 1.0, 1.0 );\n}",background_frag:"uniform sampler2D t2D;\nuniform float backgroundIntensity;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texColor = texture2D( t2D, vUv );\n\t#ifdef DECODE_VIDEO_TEXTURE\n\t\ttexColor = vec4( mix( pow( texColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), texColor.rgb * 0.0773993808, vec3( lessThanEqual( texColor.rgb, vec3( 0.04045 ) ) ) ), texColor.w );\n\t#endif\n\ttexColor.rgb *= backgroundIntensity;\n\tgl_FragColor = texColor;\n\t#include \n\t#include \n}",backgroundCube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include \n\t#include \n\tgl_Position.z = gl_Position.w;\n}",backgroundCube_frag:"#ifdef ENVMAP_TYPE_CUBE\n\tuniform samplerCube envMap;\n#elif defined( ENVMAP_TYPE_CUBE_UV )\n\tuniform sampler2D envMap;\n#endif\nuniform float flipEnvMap;\nuniform float backgroundBlurriness;\nuniform float backgroundIntensity;\nuniform mat3 backgroundRotation;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 texColor = textureCube( envMap, backgroundRotation * vec3( flipEnvMap * vWorldDirection.x, vWorldDirection.yz ) );\n\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\tvec4 texColor = textureCubeUV( envMap, backgroundRotation * vWorldDirection, backgroundBlurriness );\n\t#else\n\t\tvec4 texColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t#endif\n\ttexColor.rgb *= backgroundIntensity;\n\tgl_FragColor = texColor;\n\t#include \n\t#include \n}",cube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include \n\t#include \n\tgl_Position.z = gl_Position.w;\n}",cube_frag:"uniform samplerCube tCube;\nuniform float tFlip;\nuniform float opacity;\nvarying vec3 vWorldDirection;\nvoid main() {\n\tvec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );\n\tgl_FragColor = texColor;\n\tgl_FragColor.a *= opacity;\n\t#include \n\t#include \n}",depth_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include \n\t\t#include \n\t\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvHighPrecisionZW = gl_Position.zw;\n}",depth_frag:"#if DEPTH_PACKING == 3200\n\tuniform float opacity;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include \n\t#if DEPTH_PACKING == 3200\n\t\tdiffuseColor.a = opacity;\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\t#if DEPTH_PACKING == 3200\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\n\t#elif DEPTH_PACKING == 3201\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\t#elif DEPTH_PACKING == 3202\n\t\tgl_FragColor = vec4( packDepthToRGB( fragCoordZ ), 1.0 );\n\t#elif DEPTH_PACKING == 3203\n\t\tgl_FragColor = vec4( packDepthToRG( fragCoordZ ), 0.0, 1.0 );\n\t#endif\n}",distanceRGBA_vert:"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include \n\t\t#include \n\t\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvWorldPosition = worldPosition.xyz;\n}",distanceRGBA_frag:"#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main () {\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist );\n\tgl_FragColor = packDepthToRGBA( dist );\n}",equirect_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include \n\t#include \n}",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvec3 direction = normalize( vWorldDirection );\n\tvec2 sampleUV = equirectUv( direction );\n\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\t#include \n\t#include \n}",linedashed_vert:"uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvLineDistance = scale * lineDistance;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",linedashed_frag:"uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\n\t\tdiscard;\n\t}\n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include \n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshbasic_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\n\t\t#include \n\t\t#include \n\t\t#include \n\t\t#include \n\t\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n\t\treflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI;\n\t#else\n\t\treflectedLight.indirectDiffuse += vec3( 1.0 );\n\t#endif\n\t#include \n\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\n\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshlambert_vert:"#define LAMBERT\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n\t#include \n}",meshlambert_frag:"#define LAMBERT\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n}",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 viewDir = normalize( vViewPosition );\n\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n\tvec3 y = cross( viewDir, x );\n\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n\t#ifdef USE_MATCAP\n\t\tvec4 matcapColor = texture2D( matcap, uv );\n\t#else\n\t\tvec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 );\n\t#endif\n\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshnormal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvarying vec3 vViewPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvViewPosition = - mvPosition.xyz;\n#endif\n}",meshnormal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvarying vec3 vViewPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( 0.0, 0.0, 0.0, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\tgl_FragColor = vec4( packNormalToRGB( normal ), diffuseColor.a );\n\t#ifdef OPAQUE\n\t\tgl_FragColor.a = 1.0;\n\t#endif\n}",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n\t#include \n}",meshphong_frag:"#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshphysical_vert:"#define STANDARD\nvarying vec3 vViewPosition;\n#ifdef USE_TRANSMISSION\n\tvarying vec3 vWorldPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n#ifdef USE_TRANSMISSION\n\tvWorldPosition = worldPosition.xyz;\n#endif\n}",meshphysical_frag:"#define STANDARD\n#ifdef PHYSICAL\n\t#define IOR\n\t#define USE_SPECULAR\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef IOR\n\tuniform float ior;\n#endif\n#ifdef USE_SPECULAR\n\tuniform float specularIntensity;\n\tuniform vec3 specularColor;\n\t#ifdef USE_SPECULAR_COLORMAP\n\t\tuniform sampler2D specularColorMap;\n\t#endif\n\t#ifdef USE_SPECULAR_INTENSITYMAP\n\t\tuniform sampler2D specularIntensityMap;\n\t#endif\n#endif\n#ifdef USE_CLEARCOAT\n\tuniform float clearcoat;\n\tuniform float clearcoatRoughness;\n#endif\n#ifdef USE_DISPERSION\n\tuniform float dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n\tuniform float iridescence;\n\tuniform float iridescenceIOR;\n\tuniform float iridescenceThicknessMinimum;\n\tuniform float iridescenceThicknessMaximum;\n#endif\n#ifdef USE_SHEEN\n\tuniform vec3 sheenColor;\n\tuniform float sheenRoughness;\n\t#ifdef USE_SHEEN_COLORMAP\n\t\tuniform sampler2D sheenColorMap;\n\t#endif\n\t#ifdef USE_SHEEN_ROUGHNESSMAP\n\t\tuniform sampler2D sheenRoughnessMap;\n\t#endif\n#endif\n#ifdef USE_ANISOTROPY\n\tuniform vec2 anisotropyVector;\n\t#ifdef USE_ANISOTROPYMAP\n\t\tuniform sampler2D anisotropyMap;\n\t#endif\n#endif\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\n\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\n\t#include \n\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\n\t#ifdef USE_SHEEN\n\t\tfloat sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );\n\t\toutgoingLight = outgoingLight * sheenEnergyComp + sheenSpecularDirect + sheenSpecularIndirect;\n\t#endif\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNVcc = saturate( dot( geometryClearcoatNormal, geometryViewDir ) );\n\t\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\n\t\toutgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + ( clearcoatSpecularDirect + clearcoatSpecularIndirect ) * material.clearcoat;\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshtoon_vert:"#define TOON\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n}",meshtoon_frag:"#define TOON\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",points_vert:"uniform float size;\nuniform float scale;\n#include \n#include \n#include \n#include \n#include \n#include \n#ifdef USE_POINTS_UV\n\tvarying vec2 vUv;\n\tuniform mat3 uvTransform;\n#endif\nvoid main() {\n\t#ifdef USE_POINTS_UV\n\t\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tgl_PointSize = size;\n\t#ifdef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n}",points_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",shadow_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",shadow_frag:"uniform vec3 color;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n\t#include \n\t#include \n\t#include \n}",sprite_vert:"uniform float rotation;\nuniform vec2 center;\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\n\tvec2 scale;\n\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\n\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\n\t#ifndef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) scale *= - mvPosition.z;\n\t#endif\n\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n\tvec2 rotatedPosition;\n\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n\tmvPosition.xy += rotatedPosition;\n\tgl_Position = projectionMatrix * mvPosition;\n\t#include \n\t#include \n\t#include \n}",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\t#include \n\t#include \n\t#include \n\t#include \n}"},Ln={common:{diffuse:{value:new vn(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new zi},alphaMap:{value:null},alphaMapTransform:{value:new zi},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new zi}},envmap:{envMap:{value:null},envMapRotation:{value:new zi},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new zi}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new zi}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new zi},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new zi},normalScale:{value:new ft(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new zi},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new zi}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new zi}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new zi}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new vn(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new vn(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new zi},alphaTest:{value:0},uvTransform:{value:new zi}},sprite:{diffuse:{value:new vn(16777215)},opacity:{value:1},center:{value:new ft(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new zi},alphaMap:{value:null},alphaMapTransform:{value:new zi},alphaTest:{value:0}}},Vh={basic:{uniforms:Ml([Ln.common,Ln.specularmap,Ln.envmap,Ln.aomap,Ln.lightmap,Ln.fog]),vertexShader:_r.meshbasic_vert,fragmentShader:_r.meshbasic_frag},lambert:{uniforms:Ml([Ln.common,Ln.specularmap,Ln.envmap,Ln.aomap,Ln.lightmap,Ln.emissivemap,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.fog,Ln.lights,{emissive:{value:new vn(0)}}]),vertexShader:_r.meshlambert_vert,fragmentShader:_r.meshlambert_frag},phong:{uniforms:Ml([Ln.common,Ln.specularmap,Ln.envmap,Ln.aomap,Ln.lightmap,Ln.emissivemap,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.fog,Ln.lights,{emissive:{value:new vn(0)},specular:{value:new vn(1118481)},shininess:{value:30}}]),vertexShader:_r.meshphong_vert,fragmentShader:_r.meshphong_frag},standard:{uniforms:Ml([Ln.common,Ln.envmap,Ln.aomap,Ln.lightmap,Ln.emissivemap,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.roughnessmap,Ln.metalnessmap,Ln.fog,Ln.lights,{emissive:{value:new vn(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:_r.meshphysical_vert,fragmentShader:_r.meshphysical_frag},toon:{uniforms:Ml([Ln.common,Ln.aomap,Ln.lightmap,Ln.emissivemap,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.gradientmap,Ln.fog,Ln.lights,{emissive:{value:new vn(0)}}]),vertexShader:_r.meshtoon_vert,fragmentShader:_r.meshtoon_frag},matcap:{uniforms:Ml([Ln.common,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.fog,{matcap:{value:null}}]),vertexShader:_r.meshmatcap_vert,fragmentShader:_r.meshmatcap_frag},points:{uniforms:Ml([Ln.points,Ln.fog]),vertexShader:_r.points_vert,fragmentShader:_r.points_frag},dashed:{uniforms:Ml([Ln.common,Ln.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:_r.linedashed_vert,fragmentShader:_r.linedashed_frag},depth:{uniforms:Ml([Ln.common,Ln.displacementmap]),vertexShader:_r.depth_vert,fragmentShader:_r.depth_frag},normal:{uniforms:Ml([Ln.common,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,{opacity:{value:1}}]),vertexShader:_r.meshnormal_vert,fragmentShader:_r.meshnormal_frag},sprite:{uniforms:Ml([Ln.sprite,Ln.fog]),vertexShader:_r.sprite_vert,fragmentShader:_r.sprite_frag},background:{uniforms:{uvTransform:{value:new zi},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:_r.background_vert,fragmentShader:_r.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new zi}},vertexShader:_r.backgroundCube_vert,fragmentShader:_r.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:_r.cube_vert,fragmentShader:_r.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:_r.equirect_vert,fragmentShader:_r.equirect_frag},distanceRGBA:{uniforms:Ml([Ln.common,Ln.displacementmap,{referencePosition:{value:new pe},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:_r.distanceRGBA_vert,fragmentShader:_r.distanceRGBA_frag},shadow:{uniforms:Ml([Ln.lights,Ln.fog,{color:{value:new vn(0)},opacity:{value:1}}]),vertexShader:_r.shadow_vert,fragmentShader:_r.shadow_frag}};Vh.physical={uniforms:Ml([Vh.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new zi},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new zi},clearcoatNormalScale:{value:new ft(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new zi},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new zi},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new zi},sheen:{value:0},sheenColor:{value:new vn(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new zi},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new zi},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new zi},transmissionSamplerSize:{value:new ft},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new zi},attenuationDistance:{value:0},attenuationColor:{value:new vn(0)},specularColor:{value:new vn(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new zi},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new zi},anisotropyVector:{value:new ft},anisotropyMap:{value:null},anisotropyMapTransform:{value:new zi}}]),vertexShader:_r.meshphysical_vert,fragmentShader:_r.meshphysical_frag};const Dk={r:0,b:0,g:0},Gb=new Iu,Mee=new Gi;function Eee(n,t,e,i,r,s,l){const u=new vn(0);let p,m,f=!0===s?0:1,_=null,b=0,w=null;function F(O){let R=!0===O.isScene?O.background:null;return R&&R.isTexture&&(R=(O.backgroundBlurriness>0?e:t).get(R)),R}function I(O,R){O.getRGB(Dk,fQ(n)),i.buffers.color.setClear(Dk.r,Dk.g,Dk.b,R,l)}return{getClearColor:function(){return u},setClearColor:function(O,R=1){u.set(O),f=R,I(u,f)},getClearAlpha:function(){return f},setClearAlpha:function(O){f=O,I(u,f)},render:function D(O){let R=!1;const P=F(O);null===P?I(u,f):P&&P.isColor&&(I(P,1),R=!0);const ee=n.xr.getEnvironmentBlendMode();"additive"===ee?i.buffers.color.setClear(0,0,0,1,l):"alpha-blend"===ee&&i.buffers.color.setClear(0,0,0,0,l),(n.autoClear||R)&&(i.buffers.depth.setTest(!0),i.buffers.depth.setMask(!0),i.buffers.color.setMask(!0),n.clear(n.autoClearColor,n.autoClearDepth,n.autoClearStencil))},addToRenderList:function T(O,R){const P=F(R);P&&(P.isCubeTexture||P.mapping===K1)?(void 0===m&&(m=new dr(new jc(1,1,1),new ac({name:"BackgroundCubeMaterial",uniforms:Ew(Vh.backgroundCube.uniforms),vertexShader:Vh.backgroundCube.vertexShader,fragmentShader:Vh.backgroundCube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1})),m.geometry.deleteAttribute("normal"),m.geometry.deleteAttribute("uv"),m.onBeforeRender=function(ee,J,te){this.matrixWorld.copyPosition(te.matrixWorld)},Object.defineProperty(m.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(m)),Gb.copy(R.backgroundRotation),Gb.x*=-1,Gb.y*=-1,Gb.z*=-1,P.isCubeTexture&&!1===P.isRenderTargetTexture&&(Gb.y*=-1,Gb.z*=-1),m.material.uniforms.envMap.value=P,m.material.uniforms.flipEnvMap.value=P.isCubeTexture&&!1===P.isRenderTargetTexture?-1:1,m.material.uniforms.backgroundBlurriness.value=R.backgroundBlurriness,m.material.uniforms.backgroundIntensity.value=R.backgroundIntensity,m.material.uniforms.backgroundRotation.value.setFromMatrix4(Mee.makeRotationFromEuler(Gb)),m.material.toneMapped=Pr.getTransfer(P.colorSpace)!==Bo,(_!==P||b!==P.version||w!==n.toneMapping)&&(m.material.needsUpdate=!0,_=P,b=P.version,w=n.toneMapping),m.layers.enableAll(),O.unshift(m,m.geometry,m.material,0,0,null)):P&&P.isTexture&&(void 0===p&&(p=new dr(new Iw(2,2),new ac({name:"BackgroundMaterial",uniforms:Ew(Vh.background.uniforms),vertexShader:Vh.background.vertexShader,fragmentShader:Vh.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1})),p.geometry.deleteAttribute("normal"),Object.defineProperty(p.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(p)),p.material.uniforms.t2D.value=P,p.material.uniforms.backgroundIntensity.value=R.backgroundIntensity,p.material.toneMapped=Pr.getTransfer(P.colorSpace)!==Bo,!0===P.matrixAutoUpdate&&P.updateMatrix(),p.material.uniforms.uvTransform.value.copy(P.matrix),(_!==P||b!==P.version||w!==n.toneMapping)&&(p.material.needsUpdate=!0,_=P,b=P.version,w=n.toneMapping),p.layers.enableAll(),O.unshift(p,p.geometry,p.material,0,0,null))}}}function See(n,t){const e=n.getParameter(n.MAX_VERTEX_ATTRIBS),i={},r=b(null);let s=r,l=!1;function p(q){return n.bindVertexArray(q)}function m(q){return n.deleteVertexArray(q)}function b(q){const ce=[],ke=[],Ue=[];for(let de=0;de=0){const Mt=de[Fe];let Bt=ze[Fe];if(void 0===Bt&&("instanceMatrix"===Fe&&q.instanceMatrix&&(Bt=q.instanceMatrix),"instanceColor"===Fe&&q.instanceColor&&(Bt=q.instanceColor)),void 0===Mt||Mt.attribute!==Bt||Bt&&Mt.data!==Bt.data)return!0;Ce++}return s.attributesNum!==Ce||s.index!==Ue}(q,Ue,ke,de),ze&&function F(q,ce,ke,Ue){const de={},ze=ce.attributes;let Ce=0;const Oe=ke.getAttributes();for(const Fe in Oe)if(Oe[Fe].location>=0){let Mt=ze[Fe];void 0===Mt&&("instanceMatrix"===Fe&&q.instanceMatrix&&(Mt=q.instanceMatrix),"instanceColor"===Fe&&q.instanceColor&&(Mt=q.instanceColor));const Bt={};Bt.attribute=Mt,Mt&&Mt.data&&(Bt.data=Mt.data),de[Fe]=Bt,Ce++}s.attributes=de,s.attributesNum=Ce,s.index=Ue}(q,Ue,ke,de),null!==de&&t.update(de,n.ELEMENT_ARRAY_BUFFER),(ze||l)&&(l=!1,function P(q,ce,ke,Ue){D();const de=Ue.attributes,ze=ke.getAttributes(),Ce=ce.defaultAttributeValues;for(const Oe in ze){const Fe=ze[Oe];if(Fe.location>=0){let ht=de[Oe];if(void 0===ht&&("instanceMatrix"===Oe&&q.instanceMatrix&&(ht=q.instanceMatrix),"instanceColor"===Oe&&q.instanceColor&&(ht=q.instanceColor)),void 0!==ht){const Mt=ht.normalized,Bt=ht.itemSize,rn=t.get(ht);if(void 0===rn)continue;const Kn=rn.buffer,Me=rn.type,be=rn.bytesPerElement,Ae=Me===n.INT||Me===n.UNSIGNED_INT||ht.gpuType===BE;if(ht.isInterleavedBufferAttribute){const le=ht.data,dt=le.stride,Ot=ht.offset;if(le.isInstancedInterleavedBuffer){for(let at=0;at0&&n.getShaderPrecisionFormat(n.FRAGMENT_SHADER,n.HIGH_FLOAT).precision>0)return"highp";J="mediump"}return"mediump"===J&&n.getShaderPrecisionFormat(n.VERTEX_SHADER,n.MEDIUM_FLOAT).precision>0&&n.getShaderPrecisionFormat(n.FRAGMENT_SHADER,n.MEDIUM_FLOAT).precision>0?"mediump":"lowp"}let p=void 0!==e.precision?e.precision:"highp";const m=f(p);m!==p&&(console.warn("THREE.WebGLRenderer:",p,"not supported, using",m,"instead."),p=m);const _=!0===e.logarithmicDepthBuffer,b=n.getParameter(n.MAX_TEXTURE_IMAGE_UNITS),w=n.getParameter(n.MAX_VERTEX_TEXTURE_IMAGE_UNITS);return{isWebGL2:!0,getMaxAnisotropy:function s(){if(void 0!==r)return r;if(!0===t.has("EXT_texture_filter_anisotropic")){const J=t.get("EXT_texture_filter_anisotropic");r=n.getParameter(J.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else r=0;return r},getMaxPrecision:f,textureFormatReadable:function l(J){return!(J!==Da&&i.convert(J)!==n.getParameter(n.IMPLEMENTATION_COLOR_READ_FORMAT))},textureTypeReadable:function u(J){const te=J===pg&&(t.has("EXT_color_buffer_half_float")||t.has("EXT_color_buffer_float"));return!(J!==Cu&&i.convert(J)!==n.getParameter(n.IMPLEMENTATION_COLOR_READ_TYPE)&&J!==wl&&!te)},precision:p,logarithmicDepthBuffer:_,maxTextures:b,maxVertexTextures:w,maxTextureSize:n.getParameter(n.MAX_TEXTURE_SIZE),maxCubemapSize:n.getParameter(n.MAX_CUBE_MAP_TEXTURE_SIZE),maxAttributes:n.getParameter(n.MAX_VERTEX_ATTRIBS),maxVertexUniforms:n.getParameter(n.MAX_VERTEX_UNIFORM_VECTORS),maxVaryings:n.getParameter(n.MAX_VARYING_VECTORS),maxFragmentUniforms:n.getParameter(n.MAX_FRAGMENT_UNIFORM_VECTORS),vertexTextures:w>0,maxSamples:n.getParameter(n.MAX_SAMPLES)}}function Fee(n){const t=this;let e=null,i=0,r=!1,s=!1;const l=new Rg,u=new zi,f={value:null,needsUpdate:!1};function m(_,b,w,F){const D=null!==_?_.length:0;let T=null;if(0!==D){if(T=f.value,!0!==F||null===T){const I=w+4*D,O=b.matrixWorldInverse;u.getNormalMatrix(O),(null===T||T.length0),t.numPlanes=i,t.numIntersection=0}();else{const O=s?0:i,R=4*O;let P=I.clippingState||null;f.value=P,P=m(F,b,R,w);for(let ee=0;ee!==R;++ee)P[ee]=e[ee];I.clippingState=P,this.numIntersection=D?this.numPlanes:0,this.numPlanes+=O}}}function Dee(n){let t=new WeakMap;function e(l,u){return 303===u?l.mapping=wu:304===u&&(l.mapping=fg),l}function r(l){const u=l.target;u.removeEventListener("dispose",r);const f=t.get(u);void 0!==f&&(t.delete(u),f.dispose())}return{get:function i(l){if(l&&l.isTexture){const u=l.mapping;if(303===u||304===u){if(t.has(l))return e(t.get(l).texture,l.mapping);{const f=l.image;if(f&&f.height>0){const p=new wZ(f.height);return p.fromEquirectangularTexture(n,l),t.set(l,p),l.addEventListener("dispose",r),e(p.texture,l.mapping)}return null}}}return l},dispose:function s(){t=new WeakMap}}}class Bk extends T5{constructor(t=-1,e=1,i=1,r=-1,s=.1,l=2e3){super(),this.isOrthographicCamera=!0,this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=i,this.bottom=r,this.near=s,this.far=l,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=null===t.view?null:Object.assign({},t.view),this}setViewOffset(t,e,i,r,s,l){null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=i,this.view.offsetY=r,this.view.width=s,this.view.height=l,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),i=(this.right+this.left)/2,r=(this.top+this.bottom)/2;let s=i-t,l=i+t,u=r+e,f=r-e;if(null!==this.view&&this.view.enabled){const p=(this.right-this.left)/this.view.fullWidth/this.zoom,m=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=p*this.view.offsetX,l=s+p*this.view.width,u-=m*this.view.offsetY,f=u-m*this.view.height}this.projectionMatrix.makeOrthographic(s,l,u,f,this.near,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,null!==this.view&&(e.object.view=Object.assign({},this.view)),e}}const gQ=[.125,.215,.35,.446,.526,.582],F5=new Bk,_Q=new vn;let D5=null,B5=0,k5=0,R5=!1;const $b=(1+Math.sqrt(5))/2,Dw=1/$b,bQ=[new pe(-$b,Dw,0),new pe($b,Dw,0),new pe(-Dw,0,$b),new pe(Dw,0,$b),new pe(0,$b,-Dw),new pe(0,$b,Dw),new pe(-1,1,-1),new pe(1,1,-1),new pe(-1,1,1),new pe(1,1,1)];class vQ{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,i=.1,r=100){D5=this._renderer.getRenderTarget(),B5=this._renderer.getActiveCubeFace(),k5=this._renderer.getActiveMipmapLevel(),R5=this._renderer.xr.enabled,this._renderer.xr.enabled=!1,this._setSize(256);const s=this._allocateTargets();return s.depthBuffer=!0,this._sceneToCubeUV(t,i,r,s),e>0&&this._blur(s,0,0,e),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(t,e=null){return this._fromTexture(t,e)}fromCubemap(t,e=null){return this._fromTexture(t,e)}compileCubemapShader(){null===this._cubemapMaterial&&(this._cubemapMaterial=xQ(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){null===this._equirectMaterial&&(this._equirectMaterial=wQ(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),null!==this._cubemapMaterial&&this._cubemapMaterial.dispose(),null!==this._equirectMaterial&&this._equirectMaterial.dispose()}_setSize(t){this._lodMax=Math.floor(Math.log2(t)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){null!==this._blurMaterial&&this._blurMaterial.dispose(),null!==this._pingPongRenderTarget&&this._pingPongRenderTarget.dispose();for(let t=0;tn-4?f=gQ[l-n+4-1]:0===l&&(f=0),i.push(f);const p=1/(u-2),m=-p,_=1+p,b=[m,m,_,m,_,_,m,m,_,_,m,_],w=6,F=6,D=3,T=2,I=1,O=new Float32Array(D*F*w),R=new Float32Array(T*F*w),P=new Float32Array(I*F*w);for(let J=0;J2?0:-1;O.set([te,ie,0,te+2/3,ie,0,te+2/3,ie+1,0,te,ie,0,te+2/3,ie+1,0,te,ie+1,0],D*F*J),R.set(b,T*F*J),P.set([J,J,J,J,J,J],I*F*J)}const ee=new Yi;ee.setAttribute("position",new ae(O,D)),ee.setAttribute("uv",new ae(R,T)),ee.setAttribute("faceIndex",new ae(P,I)),t.push(ee),r>4&&r--}return{lodPlanes:t,sizeLods:e,sigmas:i}}(s)),this._blurMaterial=function kee(n,t,e){const i=new Float32Array(20),r=new pe(0,1,0);return new ac({name:"SphericalGaussianBlur",defines:{n:20,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/e,CUBEUV_MAX_MIP:`${n}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:i},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:r}},vertexShader:"\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t",fragmentShader:"\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\t\t\tuniform int samples;\n\t\t\tuniform float weights[ n ];\n\t\t\tuniform bool latitudinal;\n\t\t\tuniform float dTheta;\n\t\t\tuniform float mipInt;\n\t\t\tuniform vec3 poleAxis;\n\n\t\t\t#define ENVMAP_TYPE_CUBE_UV\n\t\t\t#include \n\n\t\t\tvec3 getSample( float theta, vec3 axis ) {\n\n\t\t\t\tfloat cosTheta = cos( theta );\n\t\t\t\t// Rodrigues' axis-angle rotation\n\t\t\t\tvec3 sampleDirection = vOutputDirection * cosTheta\n\t\t\t\t\t+ cross( axis, vOutputDirection ) * sin( theta )\n\t\t\t\t\t+ axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta );\n\n\t\t\t\treturn bilinearCubeUV( envMap, sampleDirection, mipInt );\n\n\t\t\t}\n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection );\n\n\t\t\t\tif ( all( equal( axis, vec3( 0.0 ) ) ) ) {\n\n\t\t\t\t\taxis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x );\n\n\t\t\t\t}\n\n\t\t\t\taxis = normalize( axis );\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t\t\t\tgl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis );\n\n\t\t\t\tfor ( int i = 1; i < n; i++ ) {\n\n\t\t\t\t\tif ( i >= samples ) {\n\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfloat theta = dTheta * float( i );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( theta, axis );\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t",blending:0,depthTest:!1,depthWrite:!1})}(s,t,e)}return r}_compileMaterial(t){const e=new dr(this._lodPlanes[0],t);this._renderer.compile(e,F5)}_sceneToCubeUV(t,e,i,r){const u=new Js(90,1,e,i),f=[1,-1,1,1,1,1],p=[1,1,1,-1,-1,-1],m=this._renderer,_=m.autoClear,b=m.toneMapping;m.getClearColor(_Q),m.toneMapping=Dh,m.autoClear=!1;const w=new h({name:"PMREM.Background",side:1,depthWrite:!1,depthTest:!1}),F=new dr(new jc,w);let D=!1;const T=t.background;T?T.isColor&&(w.color.copy(T),t.background=null,D=!0):(w.color.copy(_Q),D=!0);for(let I=0;I<6;I++){const O=I%3;0===O?(u.up.set(0,f[I],0),u.lookAt(p[I],0,0)):1===O?(u.up.set(0,0,f[I]),u.lookAt(0,p[I],0)):(u.up.set(0,f[I],0),u.lookAt(0,0,p[I]));const R=this._cubeSize;kk(r,O*R,I>2?R:0,R,R),m.setRenderTarget(r),D&&m.render(F,u),m.render(t,u)}F.geometry.dispose(),F.material.dispose(),m.toneMapping=b,m.autoClear=_,t.background=T}_textureToCubeUV(t,e){const i=this._renderer,r=t.mapping===wu||t.mapping===fg;r?(null===this._cubemapMaterial&&(this._cubemapMaterial=xQ()),this._cubemapMaterial.uniforms.flipEnvMap.value=!1===t.isRenderTargetTexture?-1:1):null===this._equirectMaterial&&(this._equirectMaterial=wQ());const s=r?this._cubemapMaterial:this._equirectMaterial,l=new dr(this._lodPlanes[0],s);s.uniforms.envMap.value=t;const f=this._cubeSize;kk(e,0,0,3*f,2*f),i.setRenderTarget(e),i.render(l,F5)}_applyPMREM(t){const e=this._renderer,i=e.autoClear;e.autoClear=!1;const r=this._lodPlanes.length;for(let s=1;s20&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${T} samples when the maximum is set to 20`);const I=[];let O=0;for(let te=0;te<20;++te){const ie=te/D,W=Math.exp(-ie*ie/2);I.push(W),0===te?O+=W:teR-4?r-R+4:0),4*(this._cubeSize-P),3*P,2*P),f.setRenderTarget(e),f.render(_,F5)}}function yQ(n,t,e){const i=new oc(n,t,e);return i.texture.mapping=K1,i.texture.name="PMREM.cubeUv",i.scissorTest=!0,i}function kk(n,t,e,i,r){n.viewport.set(t,e,i,r),n.scissor.set(t,e,i,r)}function wQ(){return new ac({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:"\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t",fragmentShader:"\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\n\t\t\t#include \n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 outputDirection = normalize( vOutputDirection );\n\t\t\t\tvec2 uv = equirectUv( outputDirection );\n\n\t\t\t\tgl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 );\n\n\t\t\t}\n\t\t",blending:0,depthTest:!1,depthWrite:!1})}function xQ(){return new ac({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:"\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t",fragmentShader:"\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tuniform float flipEnvMap;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform samplerCube envMap;\n\n\t\t\tvoid main() {\n\n\t\t\t\tgl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) );\n\n\t\t\t}\n\t\t",blending:0,depthTest:!1,depthWrite:!1})}function Ree(n){let t=new WeakMap,e=null;function s(u){const f=u.target;f.removeEventListener("dispose",s);const p=t.get(f);void 0!==p&&(t.delete(f),p.dispose())}return{get:function i(u){if(u&&u.isTexture){const f=u.mapping,p=303===f||304===f,m=f===wu||f===fg;if(p||m){let _=t.get(u);if(u.isRenderTargetTexture&&u.pmremVersion!==(void 0!==_?_.texture.pmremVersion:0))return null===e&&(e=new vQ(n)),_=p?e.fromEquirectangular(u,_):e.fromCubemap(u,_),_.texture.pmremVersion=u.pmremVersion,t.set(u,_),_.texture;if(void 0!==_)return _.texture;{const w=u.image;return p&&w&&w.height>0||m&&w&&function r(u){let f=0;for(let m=0;m<6;m++)void 0!==u[m]&&f++;return 6===f}(w)?(null===e&&(e=new vQ(n)),_=p?e.fromEquirectangular(u):e.fromCubemap(u),_.texture.pmremVersion=u.pmremVersion,t.set(u,_),u.addEventListener("dispose",s),_.texture):null}}}return u},dispose:function l(){t=new WeakMap,null!==e&&(e.dispose(),e=null)}}}function Pee(n){const t={};function e(i){if(void 0!==t[i])return t[i];let r;switch(i){case"WEBGL_depth_texture":r=n.getExtension("WEBGL_depth_texture")||n.getExtension("MOZ_WEBGL_depth_texture")||n.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":r=n.getExtension("EXT_texture_filter_anisotropic")||n.getExtension("MOZ_EXT_texture_filter_anisotropic")||n.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":r=n.getExtension("WEBGL_compressed_texture_s3tc")||n.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||n.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":r=n.getExtension("WEBGL_compressed_texture_pvrtc")||n.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:r=n.getExtension(i)}return t[i]=r,r}return{has:function(i){return null!==e(i)},init:function(){e("EXT_color_buffer_float"),e("WEBGL_clip_cull_distance"),e("OES_texture_float_linear"),e("EXT_color_buffer_half_float"),e("WEBGL_multisampled_render_to_texture"),e("WEBGL_render_shared_exponent")},get:function(i){const r=e(i);return null===r&&Ip("THREE.WebGLRenderer: "+i+" extension not supported."),r}}}function Oee(n,t,e,i){const r={},s=new WeakMap;function l(_){const b=_.target;null!==b.index&&t.remove(b.index);for(const F in b.attributes)t.remove(b.attributes[F]);for(const F in b.morphAttributes){const D=b.morphAttributes[F];for(let T=0,I=D.length;Tt.maxTextureSize&&(ee=Math.ceil(P/t.maxTextureSize),P=t.maxTextureSize);const J=new Float32Array(P*ee*4*_),te=new lk(J,P,ee,_);te.type=wl,te.needsUpdate=!0;const ie=4*R;for(let q=0;q<_;q++){const ce=T[q],ke=I[q],Ue=O[q],de=P*ee*4*q;for(let ze=0;ze0)return n;const r=t*e;let s=FQ[r];if(void 0===s&&(s=new Float32Array(r),FQ[r]=s),0!==t){i.toArray(s,0);for(let l=1,u=0;l!==t;++l)u+=e,n[l].toArray(s,u)}return s}function ea(n,t){if(n.length!==t.length)return!1;for(let e=0,i=n.length;e":" "} ${u}: ${e[l]}`)}return i.join("\n")}(n.getShaderSource(t),l)}return r}function Pte(n,t){const e=function Rte(n){const t=Pr.getPrimaries(Pr.workingColorSpace),e=Pr.getPrimaries(n);let i;switch(t===e?i="":t===Hc&&e===Tb?i="LinearDisplayP3ToLinearSRGB":t===Tb&&e===Hc&&(i="LinearSRGBToLinearDisplayP3"),n){case Rh:case Sp:return[i,"LinearTransferOETF"];case ic:case wg:return[i,"sRGBTransferOETF"];default:return console.warn("THREE.WebGLProgram: Unsupported color space:",n),[i,"LinearTransferOETF"]}}(t);return`vec4 ${n}( vec4 value ) { return ${e[0]}( ${e[1]}( value ) ); }`}function Ote(n,t){let e;switch(t){case XL:e="Linear";break;case EB:e="Reinhard";break;case KL:e="Cineon";break;case SB:e="ACESFilmic";break;case IB:e="AgX";break;case FB:e="Neutral";break;case TB:e="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",t),e="Linear"}return"vec3 "+n+"( vec3 color ) { return "+e+"ToneMapping( color ); }"}const Ok=new pe;function fS(n){return""!==n}function LQ(n,t){const e=t.numSpotLightShadows+t.numSpotLightMaps-t.numSpotLightShadowsWithMaps;return n.replace(/NUM_DIR_LIGHTS/g,t.numDirLights).replace(/NUM_SPOT_LIGHTS/g,t.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,t.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,e).replace(/NUM_RECT_AREA_LIGHTS/g,t.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,t.numPointLights).replace(/NUM_HEMI_LIGHTS/g,t.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,t.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,t.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,t.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,t.numPointLightShadows)}function UQ(n,t){return n.replace(/NUM_CLIPPING_PLANES/g,t.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,t.numClippingPlanes-t.numClipIntersection)}const Hte=/^[ \t]*#include +<([\w\d./]+)>/gm;function N5(n){return n.replace(Hte,zte)}const Qte=new Map;function zte(n,t){let e=_r[t];if(void 0===e){const i=Qte.get(t);if(void 0===i)throw new Error("Can not resolve #include <"+t+">");e=_r[i],console.warn('THREE.WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.',t,i)}return N5(e)}const Gte=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function VQ(n){return n.replace(Gte,jte)}function jte(n,t,e,i){let r="";for(let s=parseInt(t);s0&&(T+="\n"),I=["#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,F].filter(fS).join("\n"),I.length>0&&(I+="\n")):(T=[HQ(e),"#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,F,e.extensionClipCullDistance?"#define USE_CLIP_DISTANCE":"",e.batching?"#define USE_BATCHING":"",e.batchingColor?"#define USE_BATCHING_COLOR":"",e.instancing?"#define USE_INSTANCING":"",e.instancingColor?"#define USE_INSTANCING_COLOR":"",e.instancingMorph?"#define USE_INSTANCING_MORPH":"",e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.map?"#define USE_MAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+m:"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",e.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",e.displacementMap?"#define USE_DISPLACEMENTMAP":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.anisotropy?"#define USE_ANISOTROPY":"",e.anisotropyMap?"#define USE_ANISOTROPYMAP":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",e.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaHash?"#define USE_ALPHAHASH":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",e.mapUv?"#define MAP_UV "+e.mapUv:"",e.alphaMapUv?"#define ALPHAMAP_UV "+e.alphaMapUv:"",e.lightMapUv?"#define LIGHTMAP_UV "+e.lightMapUv:"",e.aoMapUv?"#define AOMAP_UV "+e.aoMapUv:"",e.emissiveMapUv?"#define EMISSIVEMAP_UV "+e.emissiveMapUv:"",e.bumpMapUv?"#define BUMPMAP_UV "+e.bumpMapUv:"",e.normalMapUv?"#define NORMALMAP_UV "+e.normalMapUv:"",e.displacementMapUv?"#define DISPLACEMENTMAP_UV "+e.displacementMapUv:"",e.metalnessMapUv?"#define METALNESSMAP_UV "+e.metalnessMapUv:"",e.roughnessMapUv?"#define ROUGHNESSMAP_UV "+e.roughnessMapUv:"",e.anisotropyMapUv?"#define ANISOTROPYMAP_UV "+e.anisotropyMapUv:"",e.clearcoatMapUv?"#define CLEARCOATMAP_UV "+e.clearcoatMapUv:"",e.clearcoatNormalMapUv?"#define CLEARCOAT_NORMALMAP_UV "+e.clearcoatNormalMapUv:"",e.clearcoatRoughnessMapUv?"#define CLEARCOAT_ROUGHNESSMAP_UV "+e.clearcoatRoughnessMapUv:"",e.iridescenceMapUv?"#define IRIDESCENCEMAP_UV "+e.iridescenceMapUv:"",e.iridescenceThicknessMapUv?"#define IRIDESCENCE_THICKNESSMAP_UV "+e.iridescenceThicknessMapUv:"",e.sheenColorMapUv?"#define SHEEN_COLORMAP_UV "+e.sheenColorMapUv:"",e.sheenRoughnessMapUv?"#define SHEEN_ROUGHNESSMAP_UV "+e.sheenRoughnessMapUv:"",e.specularMapUv?"#define SPECULARMAP_UV "+e.specularMapUv:"",e.specularColorMapUv?"#define SPECULAR_COLORMAP_UV "+e.specularColorMapUv:"",e.specularIntensityMapUv?"#define SPECULAR_INTENSITYMAP_UV "+e.specularIntensityMapUv:"",e.transmissionMapUv?"#define TRANSMISSIONMAP_UV "+e.transmissionMapUv:"",e.thicknessMapUv?"#define THICKNESSMAP_UV "+e.thicknessMapUv:"",e.vertexTangents&&!1===e.flatShading?"#define USE_TANGENT":"",e.vertexColors?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUv1s?"#define USE_UV1":"",e.vertexUv2s?"#define USE_UV2":"",e.vertexUv3s?"#define USE_UV3":"",e.pointsUvs?"#define USE_POINTS_UV":"",e.flatShading?"#define FLAT_SHADED":"",e.skinning?"#define USE_SKINNING":"",e.morphTargets?"#define USE_MORPHTARGETS":"",e.morphNormals&&!1===e.flatShading?"#define USE_MORPHNORMALS":"",e.morphColors?"#define USE_MORPHCOLORS":"",e.morphTargetsCount>0?"#define MORPHTARGETS_TEXTURE_STRIDE "+e.morphTextureStride:"",e.morphTargetsCount>0?"#define MORPHTARGETS_COUNT "+e.morphTargetsCount:"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+f:"",e.sizeAttenuation?"#define USE_SIZEATTENUATION":"",e.numLightProbes>0?"#define USE_LIGHT_PROBES":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING","\tattribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR","\tattribute vec3 instanceColor;","#endif","#ifdef USE_INSTANCING_MORPH","\tuniform sampler2D morphTexture;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_UV1","\tattribute vec2 uv1;","#endif","#ifdef USE_UV2","\tattribute vec2 uv2;","#endif","#ifdef USE_UV3","\tattribute vec2 uv3;","#endif","#ifdef USE_TANGENT","\tattribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )","\tattribute vec4 color;","#elif defined( USE_COLOR )","\tattribute vec3 color;","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(fS).join("\n"),I=[HQ(e),"#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,F,e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.alphaToCoverage?"#define ALPHA_TO_COVERAGE":"",e.map?"#define USE_MAP":"",e.matcap?"#define USE_MATCAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+p:"",e.envMap?"#define "+m:"",e.envMap?"#define "+_:"",b?"#define CUBEUV_TEXEL_WIDTH "+b.texelWidth:"",b?"#define CUBEUV_TEXEL_HEIGHT "+b.texelHeight:"",b?"#define CUBEUV_MAX_MIP "+b.maxMip+".0":"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",e.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.anisotropy?"#define USE_ANISOTROPY":"",e.anisotropyMap?"#define USE_ANISOTROPYMAP":"",e.clearcoat?"#define USE_CLEARCOAT":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.dispersion?"#define USE_DISPERSION":"",e.iridescence?"#define USE_IRIDESCENCE":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",e.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaTest?"#define USE_ALPHATEST":"",e.alphaHash?"#define USE_ALPHAHASH":"",e.sheen?"#define USE_SHEEN":"",e.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.vertexTangents&&!1===e.flatShading?"#define USE_TANGENT":"",e.vertexColors||e.instancingColor||e.batchingColor?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUv1s?"#define USE_UV1":"",e.vertexUv2s?"#define USE_UV2":"",e.vertexUv3s?"#define USE_UV3":"",e.pointsUvs?"#define USE_POINTS_UV":"",e.gradientMap?"#define USE_GRADIENTMAP":"",e.flatShading?"#define FLAT_SHADED":"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+f:"",e.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",e.numLightProbes>0?"#define USE_LIGHT_PROBES":"",e.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",e.toneMapping!==Dh?"#define TONE_MAPPING":"",e.toneMapping!==Dh?_r.tonemapping_pars_fragment:"",e.toneMapping!==Dh?Ote("toneMapping",e.toneMapping):"",e.dithering?"#define DITHERING":"",e.opaque?"#define OPAQUE":"",_r.colorspace_pars_fragment,Pte("linearToOutputTexel",e.outputColorSpace),(Pr.getLuminanceCoefficients(Ok),["float luminance( const in vec3 rgb ) {",`\tconst vec3 weights = vec3( ${Ok.x.toFixed(4)}, ${Ok.y.toFixed(4)}, ${Ok.z.toFixed(4)} );`,"\treturn dot( weights, rgb );","}"].join("\n")),e.useDepthPacking?"#define DEPTH_PACKING "+e.depthPacking:"","\n"].filter(fS).join("\n")),l=N5(l),l=LQ(l,e),l=UQ(l,e),u=N5(u),u=LQ(u,e),u=UQ(u,e),l=VQ(l),u=VQ(u),!0!==e.isRawShaderMaterial&&(O="#version 300 es\n",T=[w,"#define attribute in","#define varying out","#define texture2D texture"].join("\n")+"\n"+T,I=["#define varying in",e.glslVersion===tk?"":"layout(location = 0) out highp vec4 pc_fragColor;",e.glslVersion===tk?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+I);const P=O+I+u,ee=OQ(r,r.VERTEX_SHADER,O+T+l),J=OQ(r,r.FRAGMENT_SHADER,P);function te(ce){if(n.debug.checkShaderErrors){const ke=r.getProgramInfoLog(D).trim(),Ue=r.getShaderInfoLog(ee).trim(),de=r.getShaderInfoLog(J).trim();let ze=!0,Ce=!0;if(!1===r.getProgramParameter(D,r.LINK_STATUS))if(ze=!1,"function"==typeof n.debug.onShaderError)n.debug.onShaderError(r,D,ee,J);else{const Oe=NQ(r,ee,"vertex"),Fe=NQ(r,J,"fragment");console.error("THREE.WebGLProgram: Shader Error "+r.getError()+" - VALIDATE_STATUS "+r.getProgramParameter(D,r.VALIDATE_STATUS)+"\n\nMaterial Name: "+ce.name+"\nMaterial Type: "+ce.type+"\n\nProgram Info Log: "+ke+"\n"+Oe+"\n"+Fe)}else""!==ke?console.warn("THREE.WebGLProgram: Program Info Log:",ke):(""===Ue||""===de)&&(Ce=!1);Ce&&(ce.diagnostics={runnable:ze,programLog:ke,vertexShader:{log:Ue,prefix:T},fragmentShader:{log:de,prefix:I}})}r.deleteShader(ee),r.deleteShader(J),ie=new Pk(r,D),W=function Vte(n,t){const e={},i=n.getProgramParameter(t,n.ACTIVE_ATTRIBUTES);for(let r=0;r0,xt=W.clearcoat>0,Ut=W.iridescence>0,jt=W.sheen>0,Ti=W.transmission>0,Dn=oe&&!!W.anisotropyMap,Yn=xt&&!!W.clearcoatMap,or=xt&&!!W.clearcoatNormalMap,hn=xt&&!!W.clearcoatRoughnessMap,Zn=Ut&&!!W.iridescenceMap,Br=Ut&&!!W.iridescenceThicknessMap,tr=jt&&!!W.sheenColorMap,di=jt&&!!W.sheenRoughnessMap,ur=!!W.specularMap,Er=!!W.specularColorMap,os=!!W.specularIntensityMap,ut=Ti&&!!W.transmissionMap,xn=Ti&&!!W.thicknessMap,Kt=!!W.alphaMap,jr=!!W.extensions;let Qs=Dh;W.toneMapped&&(null===le||!0===le.isXRRenderTarget)&&(Qs=n.toneMapping);const Oa={shaderID:ht,shaderType:W.type,shaderName:W.name,vertexShader:Kn,fragmentShader:Me,defines:W.defines,customVertexShaderID:be,customFragmentShaderID:Ae,isRawShaderMaterial:!0===W.isRawShaderMaterial,glslVersion:W.glslVersion,precision:w,batching:Ot,batchingColor:Ot&&null!==Ue._colorsTexture,instancing:dt,instancingColor:dt&&null!==Ue.instanceColor,instancingMorph:dt&&null!==Ue.morphTexture,supportsVertexTextures:b,outputColorSpace:null===le?n.outputColorSpace:!0===le.isXRRenderTarget?le.texture.colorSpace:Rh,alphaToCoverage:!!W.alphaToCoverage,map:at,matcap:!!W.matcap,envMap:ue,envMapMode:ue&&Oe.mapping,envMapCubeUVHeight:Fe,aoMap:yt,lightMap:Ze,bumpMap:Ct,normalMap:_t,displacementMap:b&&It,emissiveMap:Pe,normalMapObjectSpace:_t&&1===W.normalMapType,normalMapTangentSpace:_t&&0===W.normalMapType,metalnessMap:Se,roughnessMap:_e,anisotropy:oe,anisotropyMap:Dn,clearcoat:xt,clearcoatMap:Yn,clearcoatNormalMap:or,clearcoatRoughnessMap:hn,dispersion:W.dispersion>0,iridescence:Ut,iridescenceMap:Zn,iridescenceThicknessMap:Br,sheen:jt,sheenColorMap:tr,sheenRoughnessMap:di,specularMap:ur,specularColorMap:Er,specularIntensityMap:os,transmission:Ti,transmissionMap:ut,thicknessMap:xn,gradientMap:!!W.gradientMap,opaque:!1===W.transparent&&1===W.blending&&!1===W.alphaToCoverage,alphaMap:Kt,alphaTest:W.alphaTest>0,alphaHash:!!W.alphaHash,combine:W.combine,mapUv:at&&D(W.map.channel),aoMapUv:yt&&D(W.aoMap.channel),lightMapUv:Ze&&D(W.lightMap.channel),bumpMapUv:Ct&&D(W.bumpMap.channel),normalMapUv:_t&&D(W.normalMap.channel),displacementMapUv:It&&D(W.displacementMap.channel),emissiveMapUv:Pe&&D(W.emissiveMap.channel),metalnessMapUv:Se&&D(W.metalnessMap.channel),roughnessMapUv:_e&&D(W.roughnessMap.channel),anisotropyMapUv:Dn&&D(W.anisotropyMap.channel),clearcoatMapUv:Yn&&D(W.clearcoatMap.channel),clearcoatNormalMapUv:or&&D(W.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:hn&&D(W.clearcoatRoughnessMap.channel),iridescenceMapUv:Zn&&D(W.iridescenceMap.channel),iridescenceThicknessMapUv:Br&&D(W.iridescenceThicknessMap.channel),sheenColorMapUv:tr&&D(W.sheenColorMap.channel),sheenRoughnessMapUv:di&&D(W.sheenRoughnessMap.channel),specularMapUv:ur&&D(W.specularMap.channel),specularColorMapUv:Er&&D(W.specularColorMap.channel),specularIntensityMapUv:os&&D(W.specularIntensityMap.channel),transmissionMapUv:ut&&D(W.transmissionMap.channel),thicknessMapUv:xn&&D(W.thicknessMap.channel),alphaMapUv:Kt&&D(W.alphaMap.channel),vertexTangents:!!ze.attributes.tangent&&(_t||oe),vertexColors:W.vertexColors,vertexAlphas:!0===W.vertexColors&&!!ze.attributes.color&&4===ze.attributes.color.itemSize,pointsUvs:!0===Ue.isPoints&&!!ze.attributes.uv&&(at||Kt),fog:!!de,useFog:!0===W.fog,fogExp2:!!de&&de.isFogExp2,flatShading:!0===W.flatShading,sizeAttenuation:!0===W.sizeAttenuation,logarithmicDepthBuffer:_,skinning:!0===Ue.isSkinnedMesh,morphTargets:void 0!==ze.morphAttributes.position,morphNormals:void 0!==ze.morphAttributes.normal,morphColors:void 0!==ze.morphAttributes.color,morphTargetsCount:Bt,morphTextureStride:rn,numDirLights:q.directional.length,numPointLights:q.point.length,numSpotLights:q.spot.length,numSpotLightMaps:q.spotLightMap.length,numRectAreaLights:q.rectArea.length,numHemiLights:q.hemi.length,numDirLightShadows:q.directionalShadowMap.length,numPointLightShadows:q.pointShadowMap.length,numSpotLightShadows:q.spotShadowMap.length,numSpotLightShadowsWithMaps:q.numSpotLightShadowsWithMaps,numLightProbes:q.numLightProbes,numClippingPlanes:l.numPlanes,numClipIntersection:l.numIntersection,dithering:W.dithering,shadowMapEnabled:n.shadowMap.enabled&&ce.length>0,shadowMapType:n.shadowMap.type,toneMapping:Qs,decodeVideoTexture:at&&!0===W.map.isVideoTexture&&Pr.getTransfer(W.map.colorSpace)===Bo,premultipliedAlpha:W.premultipliedAlpha,doubleSided:2===W.side,flipSided:1===W.side,useDepthPacking:W.depthPacking>=0,depthPacking:W.depthPacking||0,index0AttributeName:W.index0AttributeName,extensionClipCullDistance:jr&&!0===W.extensions.clipCullDistance&&i.has("WEBGL_clip_cull_distance"),extensionMultiDraw:(jr&&!0===W.extensions.multiDraw||Ot)&&i.has("WEBGL_multi_draw"),rendererExtensionParallelShaderCompile:i.has("KHR_parallel_shader_compile"),customProgramCacheKey:W.customProgramCacheKey()};return Oa.vertexUv1s=p.has(1),Oa.vertexUv2s=p.has(2),Oa.vertexUv3s=p.has(3),p.clear(),Oa},getProgramCacheKey:function I(W){const q=[];if(W.shaderID?q.push(W.shaderID):(q.push(W.customVertexShaderID),q.push(W.customFragmentShaderID)),void 0!==W.defines)for(const ce in W.defines)q.push(ce),q.push(W.defines[ce]);return!1===W.isRawShaderMaterial&&(function O(W,q){W.push(q.precision),W.push(q.outputColorSpace),W.push(q.envMapMode),W.push(q.envMapCubeUVHeight),W.push(q.mapUv),W.push(q.alphaMapUv),W.push(q.lightMapUv),W.push(q.aoMapUv),W.push(q.bumpMapUv),W.push(q.normalMapUv),W.push(q.displacementMapUv),W.push(q.emissiveMapUv),W.push(q.metalnessMapUv),W.push(q.roughnessMapUv),W.push(q.anisotropyMapUv),W.push(q.clearcoatMapUv),W.push(q.clearcoatNormalMapUv),W.push(q.clearcoatRoughnessMapUv),W.push(q.iridescenceMapUv),W.push(q.iridescenceThicknessMapUv),W.push(q.sheenColorMapUv),W.push(q.sheenRoughnessMapUv),W.push(q.specularMapUv),W.push(q.specularColorMapUv),W.push(q.specularIntensityMapUv),W.push(q.transmissionMapUv),W.push(q.thicknessMapUv),W.push(q.combine),W.push(q.fogExp2),W.push(q.sizeAttenuation),W.push(q.morphTargetsCount),W.push(q.morphAttributeCount),W.push(q.numDirLights),W.push(q.numPointLights),W.push(q.numSpotLights),W.push(q.numSpotLightMaps),W.push(q.numHemiLights),W.push(q.numRectAreaLights),W.push(q.numDirLightShadows),W.push(q.numPointLightShadows),W.push(q.numSpotLightShadows),W.push(q.numSpotLightShadowsWithMaps),W.push(q.numLightProbes),W.push(q.shadowMapType),W.push(q.toneMapping),W.push(q.numClippingPlanes),W.push(q.numClipIntersection),W.push(q.depthPacking)}(q,W),function R(W,q){u.disableAll(),q.supportsVertexTextures&&u.enable(0),q.instancing&&u.enable(1),q.instancingColor&&u.enable(2),q.instancingMorph&&u.enable(3),q.matcap&&u.enable(4),q.envMap&&u.enable(5),q.normalMapObjectSpace&&u.enable(6),q.normalMapTangentSpace&&u.enable(7),q.clearcoat&&u.enable(8),q.iridescence&&u.enable(9),q.alphaTest&&u.enable(10),q.vertexColors&&u.enable(11),q.vertexAlphas&&u.enable(12),q.vertexUv1s&&u.enable(13),q.vertexUv2s&&u.enable(14),q.vertexUv3s&&u.enable(15),q.vertexTangents&&u.enable(16),q.anisotropy&&u.enable(17),q.alphaHash&&u.enable(18),q.batching&&u.enable(19),q.dispersion&&u.enable(20),q.batchingColor&&u.enable(21),W.push(u.mask),u.disableAll(),q.fog&&u.enable(0),q.useFog&&u.enable(1),q.flatShading&&u.enable(2),q.logarithmicDepthBuffer&&u.enable(3),q.skinning&&u.enable(4),q.morphTargets&&u.enable(5),q.morphNormals&&u.enable(6),q.morphColors&&u.enable(7),q.premultipliedAlpha&&u.enable(8),q.shadowMapEnabled&&u.enable(9),q.doubleSided&&u.enable(10),q.flipSided&&u.enable(11),q.useDepthPacking&&u.enable(12),q.dithering&&u.enable(13),q.transmission&&u.enable(14),q.sheen&&u.enable(15),q.opaque&&u.enable(16),q.pointsUvs&&u.enable(17),q.decodeVideoTexture&&u.enable(18),q.alphaToCoverage&&u.enable(19),W.push(u.mask)}(q,W),q.push(n.outputColorSpace)),q.push(W.customProgramCacheKey),q.join()},getUniforms:function P(W){const q=F[W.type];let ce;return ce=q?S5.clone(Vh[q].uniforms):W.uniforms,ce},acquireProgram:function ee(W,q){let ce;for(let ke=0,Ue=m.length;ke0?i.push(I):!0===w.transparent?r.push(I):e.push(I)},unshift:function f(_,b,w,F,D,T){const I=l(_,b,w,F,D,T);w.transmission>0?i.unshift(I):!0===w.transparent?r.unshift(I):e.unshift(I)},finish:function m(){for(let _=t,b=n.length;_1&&e.sort(_||ine),i.length>1&&i.sort(b||QQ),r.length>1&&r.sort(b||QQ)}}}function rne(){let n=new WeakMap;return{get:function t(i,r){const s=n.get(i);let l;return void 0===s?(l=new zQ,n.set(i,[l])):r>=s.length?(l=new zQ,s.push(l)):l=s[r],l},dispose:function e(){n=new WeakMap}}}function one(){const n={};return{get:function(t){if(void 0!==n[t.id])return n[t.id];let e;switch(t.type){case"DirectionalLight":e={direction:new pe,color:new vn};break;case"SpotLight":e={position:new pe,direction:new pe,color:new vn,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":e={position:new pe,color:new vn,distance:0,decay:0};break;case"HemisphereLight":e={direction:new pe,skyColor:new vn,groundColor:new vn};break;case"RectAreaLight":e={color:new vn,position:new pe,halfWidth:new pe,halfHeight:new pe}}return n[t.id]=e,e}}}let ane=0;function lne(n,t){return(t.castShadow?2:0)-(n.castShadow?2:0)+(t.map?1:0)-(n.map?1:0)}function cne(n){const t=new one,e=function sne(){const n={};return{get:function(t){if(void 0!==n[t.id])return n[t.id];let e;switch(t.type){case"DirectionalLight":case"SpotLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new ft};break;case"PointLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new ft,shadowCameraNear:1,shadowCameraFar:1e3}}return n[t.id]=e,e}}}(),i={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let p=0;p<9;p++)i.probe.push(new pe);const r=new pe,s=new Gi,l=new Gi;return{setup:function u(p){let m=0,_=0,b=0;for(let W=0;W<9;W++)i.probe[W].set(0,0,0);let w=0,F=0,D=0,T=0,I=0,O=0,R=0,P=0,ee=0,J=0,te=0;p.sort(lne);for(let W=0,q=p.length;W0&&(!0===n.has("OES_texture_float_linear")?(i.rectAreaLTC1=Ln.LTC_FLOAT_1,i.rectAreaLTC2=Ln.LTC_FLOAT_2):(i.rectAreaLTC1=Ln.LTC_HALF_1,i.rectAreaLTC2=Ln.LTC_HALF_2)),i.ambient[0]=m,i.ambient[1]=_,i.ambient[2]=b;const ie=i.hash;(ie.directionalLength!==w||ie.pointLength!==F||ie.spotLength!==D||ie.rectAreaLength!==T||ie.hemiLength!==I||ie.numDirectionalShadows!==O||ie.numPointShadows!==R||ie.numSpotShadows!==P||ie.numSpotMaps!==ee||ie.numLightProbes!==te)&&(i.directional.length=w,i.spot.length=D,i.rectArea.length=T,i.point.length=F,i.hemi.length=I,i.directionalShadow.length=O,i.directionalShadowMap.length=O,i.pointShadow.length=R,i.pointShadowMap.length=R,i.spotShadow.length=P,i.spotShadowMap.length=P,i.directionalShadowMatrix.length=O,i.pointShadowMatrix.length=R,i.spotLightMatrix.length=P+ee-J,i.spotLightMap.length=ee,i.numSpotLightShadowsWithMaps=J,i.numLightProbes=te,ie.directionalLength=w,ie.pointLength=F,ie.spotLength=D,ie.rectAreaLength=T,ie.hemiLength=I,ie.numDirectionalShadows=O,ie.numPointShadows=R,ie.numSpotShadows=P,ie.numSpotMaps=ee,ie.numLightProbes=te,i.version=ane++)},setupView:function f(p,m){let _=0,b=0,w=0,F=0,D=0;const T=m.matrixWorldInverse;for(let I=0,O=p.length;I=l.length?(u=new GQ(n),l.push(u)):u=l[s],u},dispose:function i(){t=new WeakMap}}}class jQ extends d{constructor(t){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=3200,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this}}class $Q extends d{constructor(t){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(t)}copy(t){return super.copy(t),this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}function fne(n,t,e){let i=new Fk;const r=new ft,s=new ft,l=new so,u=new jQ({depthPacking:3201}),f=new $Q,p={},m=e.maxTextureSize,_={[tc]:1,[da]:0,[vu]:2},b=new ac({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new ft},radius:{value:4}},vertexShader:"void main() {\n\tgl_Position = vec4( position, 1.0 );\n}",fragmentShader:"uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\n#include \nvoid main() {\n\tconst float samples = float( VSM_SAMPLES );\n\tfloat mean = 0.0;\n\tfloat squared_mean = 0.0;\n\tfloat uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\n\tfloat uvStart = samples <= 1.0 ? 0.0 : - 1.0;\n\tfor ( float i = 0.0; i < samples; i ++ ) {\n\t\tfloat uvOffset = uvStart + i * uvStride;\n\t\t#ifdef HORIZONTAL_PASS\n\t\t\tvec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) );\n\t\t\tmean += distribution.x;\n\t\t\tsquared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\n\t\t#else\n\t\t\tfloat depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) );\n\t\t\tmean += depth;\n\t\t\tsquared_mean += depth * depth;\n\t\t#endif\n\t}\n\tmean = mean / samples;\n\tsquared_mean = squared_mean / samples;\n\tfloat std_dev = sqrt( squared_mean - mean * mean );\n\tgl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\n}"}),w=b.clone();w.defines.HORIZONTAL_PASS=1;const F=new Yi;F.setAttribute("position",new ae(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const D=new dr(F,b),T=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=pB;let I=this.type;function O(J,te){const ie=t.update(D);b.defines.VSM_SAMPLES!==J.blurSamples&&(b.defines.VSM_SAMPLES=J.blurSamples,w.defines.VSM_SAMPLES=J.blurSamples,b.needsUpdate=!0,w.needsUpdate=!0),null===J.mapPass&&(J.mapPass=new oc(r.x,r.y)),b.uniforms.shadow_pass.value=J.map.texture,b.uniforms.resolution.value=J.mapSize,b.uniforms.radius.value=J.radius,n.setRenderTarget(J.mapPass),n.clear(),n.renderBufferDirect(te,null,ie,b,D,null),w.uniforms.shadow_pass.value=J.mapPass.texture,w.uniforms.resolution.value=J.mapSize,w.uniforms.radius.value=J.radius,n.setRenderTarget(J.map),n.clear(),n.renderBufferDirect(te,null,ie,w,D,null)}function R(J,te,ie,W){let q=null;const ce=!0===ie.isPointLight?J.customDistanceMaterial:J.customDepthMaterial;if(void 0!==ce)q=ce;else if(q=!0===ie.isPointLight?f:u,n.localClippingEnabled&&!0===te.clipShadows&&Array.isArray(te.clippingPlanes)&&0!==te.clippingPlanes.length||te.displacementMap&&0!==te.displacementScale||te.alphaMap&&te.alphaTest>0||te.map&&te.alphaTest>0){const ke=q.uuid,Ue=te.uuid;let de=p[ke];void 0===de&&(de={},p[ke]=de);let ze=de[Ue];void 0===ze&&(ze=q.clone(),de[Ue]=ze,te.addEventListener("dispose",ee)),q=ze}return q.visible=te.visible,q.wireframe=te.wireframe,q.side=W===bu?null!==te.shadowSide?te.shadowSide:te.side:null!==te.shadowSide?te.shadowSide:_[te.side],q.alphaMap=te.alphaMap,q.alphaTest=te.alphaTest,q.map=te.map,q.clipShadows=te.clipShadows,q.clippingPlanes=te.clippingPlanes,q.clipIntersection=te.clipIntersection,q.displacementMap=te.displacementMap,q.displacementScale=te.displacementScale,q.displacementBias=te.displacementBias,q.wireframeLinewidth=te.wireframeLinewidth,q.linewidth=te.linewidth,!0===ie.isPointLight&&!0===q.isMeshDistanceMaterial&&(n.properties.get(q).light=ie),q}function P(J,te,ie,W,q){if(!1===J.visible)return;if(J.layers.test(te.layers)&&(J.isMesh||J.isLine||J.isPoints)&&(J.castShadow||J.receiveShadow&&q===bu)&&(!J.frustumCulled||i.intersectsObject(J))){J.modelViewMatrix.multiplyMatrices(ie.matrixWorldInverse,J.matrixWorld);const Ue=t.update(J),de=J.material;if(Array.isArray(de)){const ze=Ue.groups;for(let Ce=0,Oe=ze.length;Cem||r.y>m)&&(r.x>m&&(s.x=Math.floor(m/ht.x),r.x=s.x*ht.x,Fe.mapSize.x=s.x),r.y>m&&(s.y=Math.floor(m/ht.y),r.y=s.y*ht.y,Fe.mapSize.y=s.y)),null===Fe.map||!0===Ue||!0===de){const Bt=this.type!==bu?{minFilter:ua,magFilter:ua}:{};null!==Fe.map&&Fe.map.dispose(),Fe.map=new oc(r.x,r.y,Bt),Fe.map.texture.name=Oe.name+".shadowMap",Fe.camera.updateProjectionMatrix()}n.setRenderTarget(Fe.map),n.clear();const Mt=Fe.getViewportCount();for(let Bt=0;Bt=1):-1!==Oe.indexOf("OpenGL ES")&&(Ce=parseFloat(/^OpenGL ES (\d)/.exec(Oe)[1]),ze=Ce>=2);let Fe=null,ht={};const Mt=n.getParameter(n.SCISSOR_BOX),Bt=n.getParameter(n.VIEWPORT),rn=(new so).fromArray(Mt),Kn=(new so).fromArray(Bt);function Me(ut,xn,$t,Kt){const In=new Uint8Array(4),nr=n.createTexture();n.bindTexture(ut,nr),n.texParameteri(ut,n.TEXTURE_MIN_FILTER,n.NEAREST),n.texParameteri(ut,n.TEXTURE_MAG_FILTER,n.NEAREST);for(let jr=0;jr<$t;jr++)ut===n.TEXTURE_3D||ut===n.TEXTURE_2D_ARRAY?n.texImage3D(xn,0,n.RGBA,1,1,Kt,0,n.RGBA,n.UNSIGNED_BYTE,In):n.texImage2D(xn+jr,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,In);return nr}const be={};function Ae(ut){!0!==p[ut]&&(n.enable(ut),p[ut]=!0)}function le(ut){!1!==p[ut]&&(n.disable(ut),p[ut]=!1)}be[n.TEXTURE_2D]=Me(n.TEXTURE_2D,n.TEXTURE_2D,1),be[n.TEXTURE_CUBE_MAP]=Me(n.TEXTURE_CUBE_MAP,n.TEXTURE_CUBE_MAP_POSITIVE_X,6),be[n.TEXTURE_2D_ARRAY]=Me(n.TEXTURE_2D_ARRAY,n.TEXTURE_2D_ARRAY,1,1),be[n.TEXTURE_3D]=Me(n.TEXTURE_3D,n.TEXTURE_3D,1,1),r.setClear(0,0,0,1),s.setClear(1),l.setClear(0),Ae(n.DEPTH_TEST),s.setFunc(3),Ct(!1),_t(1),Ae(n.CULL_FACE),yt(0);const zt={[ug]:n.FUNC_ADD,[mb]:n.FUNC_SUBTRACT,[UL]:n.FUNC_REVERSE_SUBTRACT};zt[103]=n.MIN,zt[104]=n.MAX;const ue={[_B]:n.ZERO,[HL]:n.ONE,[QL]:n.SRC_COLOR,[gb]:n.SRC_ALPHA,[bB]:n.SRC_ALPHA_SATURATE,[ME]:n.DST_COLOR,[GL]:n.DST_ALPHA,[zL]:n.ONE_MINUS_SRC_COLOR,[$1]:n.ONE_MINUS_SRC_ALPHA,[L9]:n.ONE_MINUS_DST_COLOR,[q1]:n.ONE_MINUS_DST_ALPHA,[jL]:n.CONSTANT_COLOR,[vB]:n.ONE_MINUS_CONSTANT_COLOR,[hg]:n.CONSTANT_ALPHA,[$L]:n.ONE_MINUS_CONSTANT_ALPHA};function yt(ut,xn,$t,Kt,In,nr,jr,Qs,Oa,uo){if(0!==ut){if(!1===F&&(Ae(n.BLEND),F=!0),5===ut)In=In||xn,nr=nr||$t,jr=jr||Kt,(xn!==T||In!==R)&&(n.blendEquationSeparate(zt[xn],zt[In]),T=xn,R=In),($t!==I||Kt!==O||nr!==P||jr!==ee)&&(n.blendFuncSeparate(ue[$t],ue[Kt],ue[nr],ue[jr]),I=$t,O=Kt,P=nr,ee=jr),(!1===Qs.equals(J)||Oa!==te)&&(n.blendColor(Qs.r,Qs.g,Qs.b,Oa),J.copy(Qs),te=Oa),D=ut,ie=!1;else if(ut!==D||uo!==ie){if((100!==T||100!==R)&&(n.blendEquation(n.FUNC_ADD),T=100,R=100),uo)switch(ut){case 1:n.blendFuncSeparate(n.ONE,n.ONE_MINUS_SRC_ALPHA,n.ONE,n.ONE_MINUS_SRC_ALPHA);break;case 2:n.blendFunc(n.ONE,n.ONE);break;case 3:n.blendFuncSeparate(n.ZERO,n.ONE_MINUS_SRC_COLOR,n.ZERO,n.ONE);break;case 4:n.blendFuncSeparate(n.ZERO,n.SRC_COLOR,n.ZERO,n.SRC_ALPHA);break;default:console.error("THREE.WebGLState: Invalid blending: ",ut)}else switch(ut){case 1:n.blendFuncSeparate(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA,n.ONE,n.ONE_MINUS_SRC_ALPHA);break;case 2:n.blendFunc(n.SRC_ALPHA,n.ONE);break;case 3:n.blendFuncSeparate(n.ZERO,n.ONE_MINUS_SRC_COLOR,n.ZERO,n.ONE);break;case 4:n.blendFunc(n.ZERO,n.SRC_COLOR);break;default:console.error("THREE.WebGLState: Invalid blending: ",ut)}I=null,O=null,P=null,ee=null,J.set(0,0,0),te=0,D=ut,ie=uo}}else!0===F&&(le(n.BLEND),F=!1)}function Ct(ut){W!==ut&&(n.frontFace(ut?n.CW:n.CCW),W=ut)}function _t(ut){0!==ut?(Ae(n.CULL_FACE),ut!==q&&n.cullFace(1===ut?n.BACK:2===ut?n.FRONT:n.FRONT_AND_BACK)):le(n.CULL_FACE),q=ut}function Pe(ut,xn,$t){ut?(Ae(n.POLYGON_OFFSET_FILL),(ke!==xn||Ue!==$t)&&(n.polygonOffset(xn,$t),ke=xn,Ue=$t)):le(n.POLYGON_OFFSET_FILL)}return{buffers:{color:r,depth:s,stencil:l},enable:Ae,disable:le,bindFramebuffer:function dt(ut,xn){return m[ut]!==xn&&(n.bindFramebuffer(ut,xn),m[ut]=xn,ut===n.DRAW_FRAMEBUFFER&&(m[n.FRAMEBUFFER]=xn),ut===n.FRAMEBUFFER&&(m[n.DRAW_FRAMEBUFFER]=xn),!0)},drawBuffers:function Ot(ut,xn){let $t=b,Kt=!1;if(ut){$t=_.get(xn),void 0===$t&&($t=[],_.set(xn,$t));const In=ut.textures;if($t.length!==In.length||$t[0]!==n.COLOR_ATTACHMENT0){for(let nr=0,jr=In.length;nr"u")&&/OculusBrowser/g.test(navigator.userAgent),p=new ft,m=new WeakMap;let _;const b=new WeakMap;let w=!1;try{w=typeof OffscreenCanvas<"u"&&null!==new OffscreenCanvas(1,1).getContext("2d")}catch{}function F(_e,oe){return w?new OffscreenCanvas(_e,oe):uw("canvas")}function D(_e,oe,xt){let Ht=1;const Ut=Se(_e);if((Ut.width>xt||Ut.height>xt)&&(Ht=xt/Math.max(Ut.width,Ut.height)),Ht<1){if(typeof HTMLImageElement<"u"&&_e instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&_e instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&_e instanceof ImageBitmap||typeof VideoFrame<"u"&&_e instanceof VideoFrame){const jt=Math.floor(Ht*Ut.width),Ti=Math.floor(Ht*Ut.height);void 0===_&&(_=F(jt,Ti));const Dn=oe?F(jt,Ti):_;return Dn.width=jt,Dn.height=Ti,Dn.getContext("2d").drawImage(_e,0,0,jt,Ti),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+Ut.width+"x"+Ut.height+") to ("+jt+"x"+Ti+")."),Dn}return"data"in _e&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+Ut.width+"x"+Ut.height+")."),_e}return _e}function T(_e){return _e.generateMipmaps&&_e.minFilter!==ua&&_e.minFilter!==_s}function I(_e){n.generateMipmap(_e)}function O(_e,oe,xt,Ht,Ut=!1){if(null!==_e){if(void 0!==n[_e])return n[_e];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+_e+"'")}let jt=oe;if(oe===n.RED&&(xt===n.FLOAT&&(jt=n.R32F),xt===n.HALF_FLOAT&&(jt=n.R16F),xt===n.UNSIGNED_BYTE&&(jt=n.R8)),oe===n.RED_INTEGER&&(xt===n.UNSIGNED_BYTE&&(jt=n.R8UI),xt===n.UNSIGNED_SHORT&&(jt=n.R16UI),xt===n.UNSIGNED_INT&&(jt=n.R32UI),xt===n.BYTE&&(jt=n.R8I),xt===n.SHORT&&(jt=n.R16I),xt===n.INT&&(jt=n.R32I)),oe===n.RG&&(xt===n.FLOAT&&(jt=n.RG32F),xt===n.HALF_FLOAT&&(jt=n.RG16F),xt===n.UNSIGNED_BYTE&&(jt=n.RG8)),oe===n.RG_INTEGER&&(xt===n.UNSIGNED_BYTE&&(jt=n.RG8UI),xt===n.UNSIGNED_SHORT&&(jt=n.RG16UI),xt===n.UNSIGNED_INT&&(jt=n.RG32UI),xt===n.BYTE&&(jt=n.RG8I),xt===n.SHORT&&(jt=n.RG16I),xt===n.INT&&(jt=n.RG32I)),oe===n.RGB&&xt===n.UNSIGNED_INT_5_9_9_9_REV&&(jt=n.RGB9_E5),oe===n.RGBA){const Ti=Ut?Sb:Pr.getTransfer(Ht);xt===n.FLOAT&&(jt=n.RGBA32F),xt===n.HALF_FLOAT&&(jt=n.RGBA16F),xt===n.UNSIGNED_BYTE&&(jt=Ti===Bo?n.SRGB8_ALPHA8:n.RGBA8),xt===n.UNSIGNED_SHORT_4_4_4_4&&(jt=n.RGBA4),xt===n.UNSIGNED_SHORT_5_5_5_1&&(jt=n.RGB5_A1)}return(jt===n.R16F||jt===n.R32F||jt===n.RG16F||jt===n.RG32F||jt===n.RGBA16F||jt===n.RGBA32F)&&t.get("EXT_color_buffer_float"),jt}function R(_e,oe){let xt;return _e?null===oe||oe===Mu||oe===Ag?xt=n.DEPTH24_STENCIL8:oe===wl?xt=n.DEPTH32F_STENCIL8:oe===bb&&(xt=n.DEPTH24_STENCIL8,console.warn("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")):null===oe||oe===Mu||oe===Ag?xt=n.DEPTH_COMPONENT24:oe===wl?xt=n.DEPTH_COMPONENT32F:oe===bb&&(xt=n.DEPTH_COMPONENT16),xt}function P(_e,oe){return!0===T(_e)||_e.isFramebufferTexture&&_e.minFilter!==ua&&_e.minFilter!==_s?Math.log2(Math.max(oe.width,oe.height))+1:void 0!==_e.mipmaps&&_e.mipmaps.length>0?_e.mipmaps.length:_e.isCompressedTexture&&Array.isArray(_e.image)?oe.mipmaps.length:1}function ee(_e){const oe=_e.target;oe.removeEventListener("dispose",ee),function te(_e){const oe=i.get(_e);if(void 0===oe.__webglInit)return;const xt=_e.source,Ht=b.get(xt);if(Ht){const Ut=Ht[oe.__cacheKey];Ut.usedTimes--,0===Ut.usedTimes&&ie(_e),0===Object.keys(Ht).length&&b.delete(xt)}i.remove(_e)}(oe),oe.isVideoTexture&&m.delete(oe)}function J(_e){const oe=_e.target;oe.removeEventListener("dispose",J),function W(_e){const oe=i.get(_e);if(_e.depthTexture&&_e.depthTexture.dispose(),_e.isWebGLCubeRenderTarget)for(let Ht=0;Ht<6;Ht++){if(Array.isArray(oe.__webglFramebuffer[Ht]))for(let Ut=0;Ut0&&xt.__version!==_e.version){const Ht=_e.image;if(null===Ht)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else{if(!1!==Ht.complete)return void Kn(xt,_e,oe);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}e.bindTexture(n.TEXTURE_2D,xt.__webglTexture,n.TEXTURE0+oe)}const Fe={[_b]:n.REPEAT,[Sd]:n.CLAMP_TO_EDGE,[IE]:n.MIRRORED_REPEAT},ht={[ua]:n.NEAREST,[FE]:n.NEAREST_MIPMAP_NEAREST,[Y1]:n.NEAREST_MIPMAP_LINEAR,[_s]:n.LINEAR,[Bh]:n.LINEAR_MIPMAP_NEAREST,[xu]:n.LINEAR_MIPMAP_LINEAR},Mt={[KB]:n.NEVER,[K9]:n.ALWAYS,[YB]:n.LESS,[ZB]:n.LEQUAL,[a5]:n.EQUAL,[X9]:n.GEQUAL,[q9]:n.GREATER,[W9]:n.NOTEQUAL};function Bt(_e,oe){if(oe.type===wl&&!1===t.has("OES_texture_float_linear")&&(oe.magFilter===_s||1007===oe.magFilter||1005===oe.magFilter||oe.magFilter===xu||oe.minFilter===_s||1007===oe.minFilter||1005===oe.minFilter||oe.minFilter===xu)&&console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."),n.texParameteri(_e,n.TEXTURE_WRAP_S,Fe[oe.wrapS]),n.texParameteri(_e,n.TEXTURE_WRAP_T,Fe[oe.wrapT]),(_e===n.TEXTURE_3D||_e===n.TEXTURE_2D_ARRAY)&&n.texParameteri(_e,n.TEXTURE_WRAP_R,Fe[oe.wrapR]),n.texParameteri(_e,n.TEXTURE_MAG_FILTER,ht[oe.magFilter]),n.texParameteri(_e,n.TEXTURE_MIN_FILTER,ht[oe.minFilter]),oe.compareFunction&&(n.texParameteri(_e,n.TEXTURE_COMPARE_MODE,n.COMPARE_REF_TO_TEXTURE),n.texParameteri(_e,n.TEXTURE_COMPARE_FUNC,Mt[oe.compareFunction])),!0===t.has("EXT_texture_filter_anisotropic")){if(oe.magFilter===ua||1005!==oe.minFilter&&oe.minFilter!==xu||oe.type===wl&&!1===t.has("OES_texture_float_linear"))return;if(oe.anisotropy>1||i.get(oe).__currentAnisotropy){const xt=t.get("EXT_texture_filter_anisotropic");n.texParameterf(_e,xt.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(oe.anisotropy,r.getMaxAnisotropy())),i.get(oe).__currentAnisotropy=oe.anisotropy}}}function rn(_e,oe){let xt=!1;void 0===_e.__webglInit&&(_e.__webglInit=!0,oe.addEventListener("dispose",ee));const Ht=oe.source;let Ut=b.get(Ht);void 0===Ut&&(Ut={},b.set(Ht,Ut));const jt=function Ue(_e){const oe=[];return oe.push(_e.wrapS),oe.push(_e.wrapT),oe.push(_e.wrapR||0),oe.push(_e.magFilter),oe.push(_e.minFilter),oe.push(_e.anisotropy),oe.push(_e.internalFormat),oe.push(_e.format),oe.push(_e.type),oe.push(_e.generateMipmaps),oe.push(_e.premultiplyAlpha),oe.push(_e.flipY),oe.push(_e.unpackAlignment),oe.push(_e.colorSpace),oe.join()}(oe);if(jt!==_e.__cacheKey){void 0===Ut[jt]&&(Ut[jt]={texture:n.createTexture(),usedTimes:0},l.memory.textures++,xt=!0),Ut[jt].usedTimes++;const Ti=Ut[_e.__cacheKey];void 0!==Ti&&(Ut[_e.__cacheKey].usedTimes--,0===Ti.usedTimes&&ie(oe)),_e.__cacheKey=jt,_e.__webglTexture=Ut[jt].texture}return xt}function Kn(_e,oe,xt){let Ht=n.TEXTURE_2D;(oe.isDataArrayTexture||oe.isCompressedArrayTexture)&&(Ht=n.TEXTURE_2D_ARRAY),oe.isData3DTexture&&(Ht=n.TEXTURE_3D);const Ut=rn(_e,oe),jt=oe.source;e.bindTexture(Ht,_e.__webglTexture,n.TEXTURE0+xt);const Ti=i.get(jt);if(jt.version!==Ti.__version||!0===Ut){e.activeTexture(n.TEXTURE0+xt);const Dn=Pr.getPrimaries(Pr.workingColorSpace),Yn=""===oe.colorSpace?null:Pr.getPrimaries(oe.colorSpace),or=""===oe.colorSpace||Dn===Yn?n.NONE:n.BROWSER_DEFAULT_WEBGL;n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,oe.flipY),n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,oe.premultiplyAlpha),n.pixelStorei(n.UNPACK_ALIGNMENT,oe.unpackAlignment),n.pixelStorei(n.UNPACK_COLORSPACE_CONVERSION_WEBGL,or);let hn=D(oe.image,!1,r.maxTextureSize);hn=Pe(oe,hn);const Zn=s.convert(oe.format,oe.colorSpace),Br=s.convert(oe.type);let di,tr=O(oe.internalFormat,Zn,Br,oe.colorSpace,oe.isVideoTexture);Bt(Ht,oe);const ur=oe.mipmaps,Er=!0!==oe.isVideoTexture,os=void 0===Ti.__version||!0===Ut,ut=jt.dataReady,xn=P(oe,hn);if(oe.isDepthTexture)tr=R(oe.format===gg,oe.type),os&&(Er?e.texStorage2D(n.TEXTURE_2D,1,tr,hn.width,hn.height):e.texImage2D(n.TEXTURE_2D,0,tr,hn.width,hn.height,0,Zn,Br,null));else if(oe.isDataTexture)if(ur.length>0){Er&&os&&e.texStorage2D(n.TEXTURE_2D,xn,tr,ur[0].width,ur[0].height);for(let $t=0,Kt=ur.length;$t0){const In=L5(di.width,di.height,oe.format,oe.type);for(const nr of oe.layerUpdates){const jr=di.data.subarray(nr*In/di.data.BYTES_PER_ELEMENT,(nr+1)*In/di.data.BYTES_PER_ELEMENT);e.compressedTexSubImage3D(n.TEXTURE_2D_ARRAY,$t,0,0,nr,di.width,di.height,1,Zn,jr,0,0)}oe.clearLayerUpdates()}else e.compressedTexSubImage3D(n.TEXTURE_2D_ARRAY,$t,0,0,0,di.width,di.height,hn.depth,Zn,di.data,0,0)}else e.compressedTexImage3D(n.TEXTURE_2D_ARRAY,$t,tr,di.width,di.height,hn.depth,0,di.data,0,0);else console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");else Er?ut&&e.texSubImage3D(n.TEXTURE_2D_ARRAY,$t,0,0,0,di.width,di.height,hn.depth,Zn,Br,di.data):e.texImage3D(n.TEXTURE_2D_ARRAY,$t,tr,di.width,di.height,hn.depth,0,Zn,Br,di.data)}else{Er&&os&&e.texStorage2D(n.TEXTURE_2D,xn,tr,ur[0].width,ur[0].height);for(let $t=0,Kt=ur.length;$t0){const $t=L5(hn.width,hn.height,oe.format,oe.type);for(const Kt of oe.layerUpdates){const In=hn.data.subarray(Kt*$t/hn.data.BYTES_PER_ELEMENT,(Kt+1)*$t/hn.data.BYTES_PER_ELEMENT);e.texSubImage3D(n.TEXTURE_2D_ARRAY,0,0,0,Kt,hn.width,hn.height,1,Zn,Br,In)}oe.clearLayerUpdates()}else e.texSubImage3D(n.TEXTURE_2D_ARRAY,0,0,0,0,hn.width,hn.height,hn.depth,Zn,Br,hn.data)}else e.texImage3D(n.TEXTURE_2D_ARRAY,0,tr,hn.width,hn.height,hn.depth,0,Zn,Br,hn.data);else if(oe.isData3DTexture)Er?(os&&e.texStorage3D(n.TEXTURE_3D,xn,tr,hn.width,hn.height,hn.depth),ut&&e.texSubImage3D(n.TEXTURE_3D,0,0,0,0,hn.width,hn.height,hn.depth,Zn,Br,hn.data)):e.texImage3D(n.TEXTURE_3D,0,tr,hn.width,hn.height,hn.depth,0,Zn,Br,hn.data);else if(oe.isFramebufferTexture){if(os)if(Er)e.texStorage2D(n.TEXTURE_2D,xn,tr,hn.width,hn.height);else{let $t=hn.width,Kt=hn.height;for(let In=0;In>=1,Kt>>=1}}else if(ur.length>0){if(Er&&os){const $t=Se(ur[0]);e.texStorage2D(n.TEXTURE_2D,xn,tr,$t.width,$t.height)}for(let $t=0,Kt=ur.length;$t>jt),Zn=Math.max(1,oe.height>>jt);Ut===n.TEXTURE_3D||Ut===n.TEXTURE_2D_ARRAY?e.texImage3D(Ut,jt,Yn,hn,Zn,oe.depth,0,Ti,Dn,null):e.texImage2D(Ut,jt,Yn,hn,Zn,0,Ti,Dn,null)}e.bindFramebuffer(n.FRAMEBUFFER,_e),_t(oe)?u.framebufferTexture2DMultisampleEXT(n.FRAMEBUFFER,Ht,Ut,i.get(xt).__webglTexture,0,Ct(oe)):(Ut===n.TEXTURE_2D||Ut>=n.TEXTURE_CUBE_MAP_POSITIVE_X&&Ut<=n.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&n.framebufferTexture2D(n.FRAMEBUFFER,Ht,Ut,i.get(xt).__webglTexture,jt),e.bindFramebuffer(n.FRAMEBUFFER,null)}function Ae(_e,oe,xt){if(n.bindRenderbuffer(n.RENDERBUFFER,_e),oe.depthBuffer){const Ht=oe.depthTexture,jt=R(oe.stencilBuffer,Ht&&Ht.isDepthTexture?Ht.type:null),Ti=oe.stencilBuffer?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,Dn=Ct(oe);_t(oe)?u.renderbufferStorageMultisampleEXT(n.RENDERBUFFER,Dn,jt,oe.width,oe.height):xt?n.renderbufferStorageMultisample(n.RENDERBUFFER,Dn,jt,oe.width,oe.height):n.renderbufferStorage(n.RENDERBUFFER,jt,oe.width,oe.height),n.framebufferRenderbuffer(n.FRAMEBUFFER,Ti,n.RENDERBUFFER,_e)}else{const Ht=oe.textures;for(let Ut=0;Ut{delete oe.__boundDepthTexture,delete oe.__depthDisposeCallback,Ht.removeEventListener("dispose",Ut)};Ht.addEventListener("dispose",Ut),oe.__depthDisposeCallback=Ut}oe.__boundDepthTexture=Ht}if(_e.depthTexture&&!oe.__autoAllocateDepthBuffer){if(xt)throw new Error("target.depthTexture not supported in Cube render targets");!function le(_e,oe){if(oe&&oe.isWebGLCubeRenderTarget)throw new Error("Depth Texture with cube render targets is not supported");if(e.bindFramebuffer(n.FRAMEBUFFER,_e),!oe.depthTexture||!oe.depthTexture.isDepthTexture)throw new Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");(!i.get(oe.depthTexture).__webglTexture||oe.depthTexture.image.width!==oe.width||oe.depthTexture.image.height!==oe.height)&&(oe.depthTexture.image.width=oe.width,oe.depthTexture.image.height=oe.height,oe.depthTexture.needsUpdate=!0),de(oe.depthTexture,0);const Ht=i.get(oe.depthTexture).__webglTexture,Ut=Ct(oe);if(oe.depthTexture.format===mg)_t(oe)?u.framebufferTexture2DMultisampleEXT(n.FRAMEBUFFER,n.DEPTH_ATTACHMENT,n.TEXTURE_2D,Ht,0,Ut):n.framebufferTexture2D(n.FRAMEBUFFER,n.DEPTH_ATTACHMENT,n.TEXTURE_2D,Ht,0);else{if(oe.depthTexture.format!==gg)throw new Error("Unknown depthTexture format");_t(oe)?u.framebufferTexture2DMultisampleEXT(n.FRAMEBUFFER,n.DEPTH_STENCIL_ATTACHMENT,n.TEXTURE_2D,Ht,0,Ut):n.framebufferTexture2D(n.FRAMEBUFFER,n.DEPTH_STENCIL_ATTACHMENT,n.TEXTURE_2D,Ht,0)}}(oe.__webglFramebuffer,_e)}else if(xt){oe.__webglDepthbuffer=[];for(let Ht=0;Ht<6;Ht++)if(e.bindFramebuffer(n.FRAMEBUFFER,oe.__webglFramebuffer[Ht]),void 0===oe.__webglDepthbuffer[Ht])oe.__webglDepthbuffer[Ht]=n.createRenderbuffer(),Ae(oe.__webglDepthbuffer[Ht],_e,!1);else{const Ut=_e.stencilBuffer?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,jt=oe.__webglDepthbuffer[Ht];n.bindRenderbuffer(n.RENDERBUFFER,jt),n.framebufferRenderbuffer(n.FRAMEBUFFER,Ut,n.RENDERBUFFER,jt)}}else if(e.bindFramebuffer(n.FRAMEBUFFER,oe.__webglFramebuffer),void 0===oe.__webglDepthbuffer)oe.__webglDepthbuffer=n.createRenderbuffer(),Ae(oe.__webglDepthbuffer,_e,!1);else{const Ht=_e.stencilBuffer?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,Ut=oe.__webglDepthbuffer;n.bindRenderbuffer(n.RENDERBUFFER,Ut),n.framebufferRenderbuffer(n.FRAMEBUFFER,Ht,n.RENDERBUFFER,Ut)}e.bindFramebuffer(n.FRAMEBUFFER,null)}const ue=[],yt=[];function Ct(_e){return Math.min(r.maxSamples,_e.samples)}function _t(_e){const oe=i.get(_e);return _e.samples>0&&!0===t.has("WEBGL_multisampled_render_to_texture")&&!1!==oe.__useRenderToTexture}function Pe(_e,oe){const xt=_e.colorSpace,Ht=_e.format,Ut=_e.type;return!0===_e.isCompressedTexture||!0===_e.isVideoTexture||xt!==Rh&&""!==xt&&(Pr.getTransfer(xt)===Bo?(Ht!==Da||Ut!==Cu)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture color space:",xt)),oe}function Se(_e){return typeof HTMLImageElement<"u"&&_e instanceof HTMLImageElement?(p.width=_e.naturalWidth||_e.width,p.height=_e.naturalHeight||_e.height):typeof VideoFrame<"u"&&_e instanceof VideoFrame?(p.width=_e.displayWidth,p.height=_e.displayHeight):(p.width=_e.width,p.height=_e.height),p}this.allocateTextureUnit=function ke(){const _e=q;return _e>=r.maxTextures&&console.warn("THREE.WebGLTextures: Trying to use "+_e+" texture units while this GPU supports only "+r.maxTextures),q+=1,_e},this.resetTextureUnits=function ce(){q=0},this.setTexture2D=de,this.setTexture2DArray=function ze(_e,oe){const xt=i.get(_e);_e.version>0&&xt.__version!==_e.version?Kn(xt,_e,oe):e.bindTexture(n.TEXTURE_2D_ARRAY,xt.__webglTexture,n.TEXTURE0+oe)},this.setTexture3D=function Ce(_e,oe){const xt=i.get(_e);_e.version>0&&xt.__version!==_e.version?Kn(xt,_e,oe):e.bindTexture(n.TEXTURE_3D,xt.__webglTexture,n.TEXTURE0+oe)},this.setTextureCube=function Oe(_e,oe){const xt=i.get(_e);_e.version>0&&xt.__version!==_e.version?function Me(_e,oe,xt){if(6!==oe.image.length)return;const Ht=rn(_e,oe),Ut=oe.source;e.bindTexture(n.TEXTURE_CUBE_MAP,_e.__webglTexture,n.TEXTURE0+xt);const jt=i.get(Ut);if(Ut.version!==jt.__version||!0===Ht){e.activeTexture(n.TEXTURE0+xt);const Ti=Pr.getPrimaries(Pr.workingColorSpace),Dn=""===oe.colorSpace?null:Pr.getPrimaries(oe.colorSpace),Yn=""===oe.colorSpace||Ti===Dn?n.NONE:n.BROWSER_DEFAULT_WEBGL;n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,oe.flipY),n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,oe.premultiplyAlpha),n.pixelStorei(n.UNPACK_ALIGNMENT,oe.unpackAlignment),n.pixelStorei(n.UNPACK_COLORSPACE_CONVERSION_WEBGL,Yn);const or=oe.isCompressedTexture||oe.image[0].isCompressedTexture,hn=oe.image[0]&&oe.image[0].isDataTexture,Zn=[];for(let Kt=0;Kt<6;Kt++)Zn[Kt]=or||hn?hn?oe.image[Kt].image:oe.image[Kt]:D(oe.image[Kt],!0,r.maxCubemapSize),Zn[Kt]=Pe(oe,Zn[Kt]);const Br=Zn[0],tr=s.convert(oe.format,oe.colorSpace),di=s.convert(oe.type),ur=O(oe.internalFormat,tr,di,oe.colorSpace),Er=!0!==oe.isVideoTexture,os=void 0===jt.__version||!0===Ht,ut=Ut.dataReady;let $t,xn=P(oe,Br);if(Bt(n.TEXTURE_CUBE_MAP,oe),or){Er&&os&&e.texStorage2D(n.TEXTURE_CUBE_MAP,xn,ur,Br.width,Br.height);for(let Kt=0;Kt<6;Kt++){$t=Zn[Kt].mipmaps;for(let In=0;In<$t.length;In++){const nr=$t[In];oe.format!==Da?null!==tr?Er?ut&&e.compressedTexSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In,0,0,nr.width,nr.height,tr,nr.data):e.compressedTexImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In,ur,nr.width,nr.height,0,nr.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In,0,0,nr.width,nr.height,tr,di,nr.data):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In,ur,nr.width,nr.height,0,tr,di,nr.data)}}}else{if($t=oe.mipmaps,Er&&os){$t.length>0&&xn++;const Kt=Se(Zn[0]);e.texStorage2D(n.TEXTURE_CUBE_MAP,xn,ur,Kt.width,Kt.height)}for(let Kt=0;Kt<6;Kt++)if(hn){Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,0,0,0,Zn[Kt].width,Zn[Kt].height,tr,di,Zn[Kt].data):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,0,ur,Zn[Kt].width,Zn[Kt].height,0,tr,di,Zn[Kt].data);for(let In=0;In<$t.length;In++){const jr=$t[In].image[Kt].image;Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In+1,0,0,jr.width,jr.height,tr,di,jr.data):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In+1,ur,jr.width,jr.height,0,tr,di,jr.data)}}else{Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,0,0,0,tr,di,Zn[Kt]):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,0,ur,tr,di,Zn[Kt]);for(let In=0;In<$t.length;In++){const nr=$t[In];Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In+1,0,0,tr,di,nr.image[Kt]):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In+1,ur,tr,di,nr.image[Kt])}}}T(oe)&&I(n.TEXTURE_CUBE_MAP),jt.__version=Ut.version,oe.onUpdate&&oe.onUpdate(oe)}_e.__version=oe.version}(xt,_e,oe):e.bindTexture(n.TEXTURE_CUBE_MAP,xt.__webglTexture,n.TEXTURE0+oe)},this.rebindTextures=function Ot(_e,oe,xt){const Ht=i.get(_e);void 0!==oe&&be(Ht.__webglFramebuffer,_e,_e.texture,n.COLOR_ATTACHMENT0,n.TEXTURE_2D,0),void 0!==xt&&dt(_e)},this.setupRenderTarget=function at(_e){const oe=_e.texture,xt=i.get(_e),Ht=i.get(oe);_e.addEventListener("dispose",J);const Ut=_e.textures,jt=!0===_e.isWebGLCubeRenderTarget,Ti=Ut.length>1;if(Ti||(void 0===Ht.__webglTexture&&(Ht.__webglTexture=n.createTexture()),Ht.__version=oe.version,l.memory.textures++),jt){xt.__webglFramebuffer=[];for(let Dn=0;Dn<6;Dn++)if(oe.mipmaps&&oe.mipmaps.length>0){xt.__webglFramebuffer[Dn]=[];for(let Yn=0;Yn0){xt.__webglFramebuffer=[];for(let Dn=0;Dn0&&!1===_t(_e)){xt.__webglMultisampledFramebuffer=n.createFramebuffer(),xt.__webglColorRenderbuffer=[],e.bindFramebuffer(n.FRAMEBUFFER,xt.__webglMultisampledFramebuffer);for(let Dn=0;Dn0)for(let Yn=0;Yn0)for(let Yn=0;Yn0)if(!1===_t(_e)){const oe=_e.textures,xt=_e.width,Ht=_e.height;let Ut=n.COLOR_BUFFER_BIT;const jt=_e.stencilBuffer?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,Ti=i.get(_e),Dn=oe.length>1;if(Dn)for(let Yn=0;Ynw+F?(p.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!p.inputState.pinching&&b<=w-F&&(p.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else null!==f&&t.gripSpace&&(s=e.getPose(t.gripSpace,i),null!==s&&(f.matrix.fromArray(s.transform.matrix),f.matrix.decompose(f.position,f.rotation,f.scale),f.matrixWorldNeedsUpdate=!0,s.linearVelocity?(f.hasLinearVelocity=!0,f.linearVelocity.copy(s.linearVelocity)):f.hasLinearVelocity=!1,s.angularVelocity?(f.hasAngularVelocity=!0,f.angularVelocity.copy(s.angularVelocity)):f.hasAngularVelocity=!1));null!==u&&(r=e.getPose(t.targetRaySpace,i),null===r&&null!==s&&(r=s),null!==r&&(u.matrix.fromArray(r.transform.matrix),u.matrix.decompose(u.position,u.rotation,u.scale),u.matrixWorldNeedsUpdate=!0,r.linearVelocity?(u.hasLinearVelocity=!0,u.linearVelocity.copy(r.linearVelocity)):u.hasLinearVelocity=!1,r.angularVelocity?(u.hasAngularVelocity=!0,u.angularVelocity.copy(r.angularVelocity)):u.hasAngularVelocity=!1,this.dispatchEvent(wne)))}return null!==u&&(u.visible=null!==r),null!==f&&(f.visible=null!==s),null!==p&&(p.visible=null!==l),this}_getHandJoint(t,e){if(void 0===t.joints[e.jointName]){const i=new lc;i.matrixAutoUpdate=!1,i.visible=!1,t.joints[e.jointName]=i,t.add(i)}return t.joints[e.jointName]}}class Mne{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(t,e,i){if(null===this.texture){const r=new Wa;t.properties.get(r).__webglTexture=e.texture,(e.depthNear!=i.depthNear||e.depthFar!=i.depthFar)&&(this.depthNear=e.depthNear,this.depthFar=e.depthFar),this.texture=r}}getMesh(t){if(null!==this.texture&&null===this.mesh){const e=t.cameras[0].viewport,i=new ac({vertexShader:"\nvoid main() {\n\n\tgl_Position = vec4( position, 1.0 );\n\n}",fragmentShader:"\nuniform sampler2DArray depthColor;\nuniform float depthWidth;\nuniform float depthHeight;\n\nvoid main() {\n\n\tvec2 coord = vec2( gl_FragCoord.x / depthWidth, gl_FragCoord.y / depthHeight );\n\n\tif ( coord.x >= 1.0 ) {\n\n\t\tgl_FragDepth = texture( depthColor, vec3( coord.x - 1.0, coord.y, 1 ) ).r;\n\n\t} else {\n\n\t\tgl_FragDepth = texture( depthColor, vec3( coord.x, coord.y, 0 ) ).r;\n\n\t}\n\n}",uniforms:{depthColor:{value:this.texture},depthWidth:{value:e.z},depthHeight:{value:e.w}}});this.mesh=new dr(new Iw(20,20),i)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}}class Ene extends rc{constructor(t,e){super();const i=this;let r=null,s=1,l=null,u="local-floor",f=1,p=null,m=null,_=null,b=null,w=null,F=null;const D=new Mne,T=e.getContextAttributes();let I=null,O=null;const R=[],P=[],ee=new ft;let J=null;const te=new Js;te.layers.enable(1),te.viewport=new so;const ie=new Js;ie.layers.enable(2),ie.viewport=new so;const W=[te,ie],q=new yne;q.layers.enable(1),q.layers.enable(2);let ce=null,ke=null;function Ue(Me){const be=P.indexOf(Me.inputSource);if(-1===be)return;const Ae=R[be];void 0!==Ae&&(Ae.update(Me.inputSource,Me.frame,p||l),Ae.dispatchEvent({type:Me.type,data:Me.inputSource}))}function de(){r.removeEventListener("select",Ue),r.removeEventListener("selectstart",Ue),r.removeEventListener("selectend",Ue),r.removeEventListener("squeeze",Ue),r.removeEventListener("squeezestart",Ue),r.removeEventListener("squeezeend",Ue),r.removeEventListener("end",de),r.removeEventListener("inputsourceschange",ze);for(let Me=0;Me=0&&(P[le]=null,R[le].disconnect(Ae))}for(let be=0;be=P.length){P.push(Ae),le=Ot;break}if(null===P[Ot]){P[Ot]=Ae,le=Ot;break}}if(-1===le)break}const dt=R[le];dt&&dt.connect(Ae)}}this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(Me){let be=R[Me];return void 0===be&&(be=new U5,R[Me]=be),be.getTargetRaySpace()},this.getControllerGrip=function(Me){let be=R[Me];return void 0===be&&(be=new U5,R[Me]=be),be.getGripSpace()},this.getHand=function(Me){let be=R[Me];return void 0===be&&(be=new U5,R[Me]=be),be.getHandSpace()},this.setFramebufferScaleFactor=function(Me){s=Me,!0===i.isPresenting&&console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(Me){u=Me,!0===i.isPresenting&&console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return p||l},this.setReferenceSpace=function(Me){p=Me},this.getBaseLayer=function(){return null!==b?b:w},this.getBinding=function(){return _},this.getFrame=function(){return F},this.getSession=function(){return r},this.setSession=function(){var Me=Mn(function*(be){if(r=be,null!==r){if(I=t.getRenderTarget(),r.addEventListener("select",Ue),r.addEventListener("selectstart",Ue),r.addEventListener("selectend",Ue),r.addEventListener("squeeze",Ue),r.addEventListener("squeezestart",Ue),r.addEventListener("squeezeend",Ue),r.addEventListener("end",de),r.addEventListener("inputsourceschange",ze),!0!==T.xrCompatible&&(yield e.makeXRCompatible()),J=t.getPixelRatio(),t.getSize(ee),void 0===r.renderState.layers)w=new XRWebGLLayer(r,e,{antialias:T.antialias,alpha:!0,depth:T.depth,stencil:T.stencil,framebufferScaleFactor:s}),r.updateRenderState({baseLayer:w}),t.setPixelRatio(1),t.setSize(w.framebufferWidth,w.framebufferHeight,!1),O=new oc(w.framebufferWidth,w.framebufferHeight,{format:Da,type:Cu,colorSpace:t.outputColorSpace,stencilBuffer:T.stencil});else{let Ae=null,le=null,dt=null;T.depth&&(dt=T.stencil?e.DEPTH24_STENCIL8:e.DEPTH_COMPONENT24,Ae=T.stencil?gg:mg,le=T.stencil?Ag:Mu);const Ot={colorFormat:e.RGBA8,depthFormat:dt,scaleFactor:s};_=new XRWebGLBinding(r,e),b=_.createProjectionLayer(Ot),r.updateRenderState({layers:[b]}),t.setPixelRatio(1),t.setSize(b.textureWidth,b.textureHeight,!1),O=new oc(b.textureWidth,b.textureHeight,{format:Da,type:Cu,depthTexture:new CQ(b.textureWidth,b.textureHeight,le,void 0,void 0,void 0,void 0,void 0,void 0,Ae),stencilBuffer:T.stencil,colorSpace:t.outputColorSpace,samples:T.antialias?4:0,resolveDepthBuffer:!1===b.ignoreDepthValues})}O.isXRRenderTarget=!0,this.setFoveation(f),p=null,l=yield r.requestReferenceSpace(u),Kn.setContext(r),Kn.start(),i.isPresenting=!0,i.dispatchEvent({type:"sessionstart"})}});return function(be){return Me.apply(this,arguments)}}(),this.getEnvironmentBlendMode=function(){if(null!==r)return r.environmentBlendMode},this.getDepthTexture=function(){return D.getDepthTexture()};const Ce=new pe,Oe=new pe;function ht(Me,be){null===be?Me.matrixWorld.copy(Me.matrix):Me.matrixWorld.multiplyMatrices(be.matrixWorld,Me.matrix),Me.matrixWorldInverse.copy(Me.matrixWorld).invert()}this.updateCamera=function(Me){if(null===r)return;let be=Me.near,Ae=Me.far;null!==D.texture&&(D.depthNear>0&&(be=D.depthNear),D.depthFar>0&&(Ae=D.depthFar)),q.near=ie.near=te.near=be,q.far=ie.far=te.far=Ae,(ce!==q.near||ke!==q.far)&&(r.updateRenderState({depthNear:q.near,depthFar:q.far}),ce=q.near,ke=q.far);const le=Me.parent,dt=q.cameras;ht(q,le);for(let Ot=0;Ot0&&(T.alphaTest.value=I.alphaTest);const O=t.get(I),R=O.envMap,P=O.envMapRotation;R&&(T.envMap.value=R,qb.copy(P),qb.x*=-1,qb.y*=-1,qb.z*=-1,R.isCubeTexture&&!1===R.isRenderTargetTexture&&(qb.y*=-1,qb.z*=-1),T.envMapRotation.value.setFromMatrix4(Sne.makeRotationFromEuler(qb)),T.flipEnvMap.value=R.isCubeTexture&&!1===R.isRenderTargetTexture?-1:1,T.reflectivity.value=I.reflectivity,T.ior.value=I.ior,T.refractionRatio.value=I.refractionRatio),I.lightMap&&(T.lightMap.value=I.lightMap,T.lightMapIntensity.value=I.lightMapIntensity,e(I.lightMap,T.lightMapTransform)),I.aoMap&&(T.aoMap.value=I.aoMap,T.aoMapIntensity.value=I.aoMapIntensity,e(I.aoMap,T.aoMapTransform))}return{refreshFogUniforms:function i(T,I){I.color.getRGB(T.fogColor.value,fQ(n)),I.isFog?(T.fogNear.value=I.near,T.fogFar.value=I.far):I.isFogExp2&&(T.fogDensity.value=I.density)},refreshMaterialUniforms:function r(T,I,O,R,P){I.isMeshBasicMaterial||I.isMeshLambertMaterial?s(T,I):I.isMeshToonMaterial?(s(T,I),function _(T,I){I.gradientMap&&(T.gradientMap.value=I.gradientMap)}(T,I)):I.isMeshPhongMaterial?(s(T,I),function m(T,I){T.specular.value.copy(I.specular),T.shininess.value=Math.max(I.shininess,1e-4)}(T,I)):I.isMeshStandardMaterial?(s(T,I),function b(T,I){T.metalness.value=I.metalness,I.metalnessMap&&(T.metalnessMap.value=I.metalnessMap,e(I.metalnessMap,T.metalnessMapTransform)),T.roughness.value=I.roughness,I.roughnessMap&&(T.roughnessMap.value=I.roughnessMap,e(I.roughnessMap,T.roughnessMapTransform)),I.envMap&&(T.envMapIntensity.value=I.envMapIntensity)}(T,I),I.isMeshPhysicalMaterial&&function w(T,I,O){T.ior.value=I.ior,I.sheen>0&&(T.sheenColor.value.copy(I.sheenColor).multiplyScalar(I.sheen),T.sheenRoughness.value=I.sheenRoughness,I.sheenColorMap&&(T.sheenColorMap.value=I.sheenColorMap,e(I.sheenColorMap,T.sheenColorMapTransform)),I.sheenRoughnessMap&&(T.sheenRoughnessMap.value=I.sheenRoughnessMap,e(I.sheenRoughnessMap,T.sheenRoughnessMapTransform))),I.clearcoat>0&&(T.clearcoat.value=I.clearcoat,T.clearcoatRoughness.value=I.clearcoatRoughness,I.clearcoatMap&&(T.clearcoatMap.value=I.clearcoatMap,e(I.clearcoatMap,T.clearcoatMapTransform)),I.clearcoatRoughnessMap&&(T.clearcoatRoughnessMap.value=I.clearcoatRoughnessMap,e(I.clearcoatRoughnessMap,T.clearcoatRoughnessMapTransform)),I.clearcoatNormalMap&&(T.clearcoatNormalMap.value=I.clearcoatNormalMap,e(I.clearcoatNormalMap,T.clearcoatNormalMapTransform),T.clearcoatNormalScale.value.copy(I.clearcoatNormalScale),1===I.side&&T.clearcoatNormalScale.value.negate())),I.dispersion>0&&(T.dispersion.value=I.dispersion),I.iridescence>0&&(T.iridescence.value=I.iridescence,T.iridescenceIOR.value=I.iridescenceIOR,T.iridescenceThicknessMinimum.value=I.iridescenceThicknessRange[0],T.iridescenceThicknessMaximum.value=I.iridescenceThicknessRange[1],I.iridescenceMap&&(T.iridescenceMap.value=I.iridescenceMap,e(I.iridescenceMap,T.iridescenceMapTransform)),I.iridescenceThicknessMap&&(T.iridescenceThicknessMap.value=I.iridescenceThicknessMap,e(I.iridescenceThicknessMap,T.iridescenceThicknessMapTransform))),I.transmission>0&&(T.transmission.value=I.transmission,T.transmissionSamplerMap.value=O.texture,T.transmissionSamplerSize.value.set(O.width,O.height),I.transmissionMap&&(T.transmissionMap.value=I.transmissionMap,e(I.transmissionMap,T.transmissionMapTransform)),T.thickness.value=I.thickness,I.thicknessMap&&(T.thicknessMap.value=I.thicknessMap,e(I.thicknessMap,T.thicknessMapTransform)),T.attenuationDistance.value=I.attenuationDistance,T.attenuationColor.value.copy(I.attenuationColor)),I.anisotropy>0&&(T.anisotropyVector.value.set(I.anisotropy*Math.cos(I.anisotropyRotation),I.anisotropy*Math.sin(I.anisotropyRotation)),I.anisotropyMap&&(T.anisotropyMap.value=I.anisotropyMap,e(I.anisotropyMap,T.anisotropyMapTransform))),T.specularIntensity.value=I.specularIntensity,T.specularColor.value.copy(I.specularColor),I.specularColorMap&&(T.specularColorMap.value=I.specularColorMap,e(I.specularColorMap,T.specularColorMapTransform)),I.specularIntensityMap&&(T.specularIntensityMap.value=I.specularIntensityMap,e(I.specularIntensityMap,T.specularIntensityMapTransform))}(T,I,P)):I.isMeshMatcapMaterial?(s(T,I),function F(T,I){I.matcap&&(T.matcap.value=I.matcap)}(T,I)):I.isMeshDepthMaterial?s(T,I):I.isMeshDistanceMaterial?(s(T,I),function D(T,I){const O=t.get(I).light;T.referencePosition.value.setFromMatrixPosition(O.matrixWorld),T.nearDistance.value=O.shadow.camera.near,T.farDistance.value=O.shadow.camera.far}(T,I)):I.isMeshNormalMaterial?s(T,I):I.isLineBasicMaterial?(function l(T,I){T.diffuse.value.copy(I.color),T.opacity.value=I.opacity,I.map&&(T.map.value=I.map,e(I.map,T.mapTransform))}(T,I),I.isLineDashedMaterial&&function u(T,I){T.dashSize.value=I.dashSize,T.totalSize.value=I.dashSize+I.gapSize,T.scale.value=I.scale}(T,I)):I.isPointsMaterial?function f(T,I,O,R){T.diffuse.value.copy(I.color),T.opacity.value=I.opacity,T.size.value=I.size*O,T.scale.value=.5*R,I.map&&(T.map.value=I.map,e(I.map,T.uvTransform)),I.alphaMap&&(T.alphaMap.value=I.alphaMap,e(I.alphaMap,T.alphaMapTransform)),I.alphaTest>0&&(T.alphaTest.value=I.alphaTest)}(T,I,O,R):I.isSpriteMaterial?function p(T,I){T.diffuse.value.copy(I.color),T.opacity.value=I.opacity,T.rotation.value=I.rotation,I.map&&(T.map.value=I.map,e(I.map,T.mapTransform)),I.alphaMap&&(T.alphaMap.value=I.alphaMap,e(I.alphaMap,T.alphaMapTransform)),I.alphaTest>0&&(T.alphaTest.value=I.alphaTest)}(T,I):I.isShadowMaterial?(T.color.value.copy(I.color),T.opacity.value=I.opacity):I.isShaderMaterial&&(I.uniformsNeedUpdate=!1)}}}function Ine(n,t,e,i){let r={},s={},l=[];const u=n.getParameter(n.MAX_UNIFORM_BUFFER_BINDINGS);function w(O,R,P,ee){const J=O.value,te=R+"_"+P;if(void 0===ee[te])return ee[te]="number"==typeof J||"boolean"==typeof J?J:J.clone(),!0;{const ie=ee[te];if("number"==typeof J||"boolean"==typeof J){if(ie!==J)return ee[te]=J,!0}else if(!1===ie.equals(J))return ie.copy(J),!0}return!1}function D(O){const R={boundary:0,storage:0};return"number"==typeof O||"boolean"==typeof O?(R.boundary=4,R.storage=4):O.isVector2?(R.boundary=8,R.storage=8):O.isVector3||O.isColor?(R.boundary=16,R.storage=12):O.isVector4?(R.boundary=16,R.storage=16):O.isMatrix3?(R.boundary=48,R.storage=48):O.isMatrix4?(R.boundary=64,R.storage=64):O.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",O),R}function T(O){const R=O.target;R.removeEventListener("dispose",T);const P=l.indexOf(R.__bindingPointIndex);l.splice(P,1),n.deleteBuffer(r[R.id]),delete r[R.id],delete s[R.id]}return{bind:function f(O,R){i.uniformBlockBinding(O,R.program)},update:function p(O,R){let P=r[O.id];void 0===P&&(function F(O){const R=O.uniforms;let P=0;for(let te=0,ie=R.length;te0&&(P+=16-J),O.__size=P,O.__cache={}}(O),P=function m(O){const R=function _(){for(let O=0;O0),Ri=!!Ft.morphAttributes.position,Zr=!!Ft.morphAttributes.normal,jo=!!Ft.morphAttributes.color;let ys=Dh;Dt.toneMapped&&(null===te||!0===te.isXRRenderTarget)&&(ys=R.toneMapping);const Kc=Ft.morphAttributes.position||Ft.morphAttributes.normal||Ft.morphAttributes.color,ho=void 0!==Kc?Kc.length:0,Pi=Pe.get(Dt),Na=T.state.lights;!0!==Me||!0!==be&&ye===W||or.setState(Dt,ye,ye===W&&Dt.id===ie);let fo=!1;Dt.version===Pi.__version?(Pi.needsLights&&Pi.lightsStateVersion!==Na.state.version||Pi.outputColorSpace!==Ci||bt.isBatchedMesh&&!1===Pi.batching||!bt.isBatchedMesh&&!0===Pi.batching||bt.isBatchedMesh&&!0===Pi.batchingColor&&null===bt.colorTexture||bt.isBatchedMesh&&!1===Pi.batchingColor&&null!==bt.colorTexture||bt.isInstancedMesh&&!1===Pi.instancing||!bt.isInstancedMesh&&!0===Pi.instancing||bt.isSkinnedMesh&&!1===Pi.skinning||!bt.isSkinnedMesh&&!0===Pi.skinning||bt.isInstancedMesh&&!0===Pi.instancingColor&&null===bt.instanceColor||bt.isInstancedMesh&&!1===Pi.instancingColor&&null!==bt.instanceColor||bt.isInstancedMesh&&!0===Pi.instancingMorph&&null===bt.morphTexture||bt.isInstancedMesh&&!1===Pi.instancingMorph&&null!==bt.morphTexture||Pi.envMap!==_i||!0===Dt.fog&&Pi.fog!==Cn||void 0!==Pi.numClippingPlanes&&(Pi.numClippingPlanes!==or.numPlanes||Pi.numIntersection!==or.numIntersection)||Pi.vertexAlphas!==Xi||Pi.vertexTangents!==sr||Pi.morphTargets!==Ri||Pi.morphNormals!==Zr||Pi.morphColors!==jo||Pi.toneMapping!==ys||Pi.morphTargetsCount!==ho)&&(fo=!0):(fo=!0,Pi.__version=Dt.version);let Gu=Pi.currentProgram;!0===fo&&(Gu=zP(Dt,lt,bt));let Sx=!1,Yc=!1,DV=!1;const zs=Gu.getUniforms(),m0=Pi.uniforms;if(_t.useProgram(Gu.program)&&(Sx=!0,Yc=!0,DV=!0),Dt.id!==ie&&(ie=Dt.id,Yc=!0),Sx||W!==ye){zs.setValue(ue,"projectionMatrix",ye.projectionMatrix),zs.setValue(ue,"viewMatrix",ye.matrixWorldInverse);const Pd=zs.map.cameraPosition;void 0!==Pd&&Pd.setValue(ue,le.setFromMatrixPosition(ye.matrixWorld)),Ct.logarithmicDepthBuffer&&zs.setValue(ue,"logDepthBufFC",2/(Math.log(ye.far+1)/Math.LN2)),(Dt.isMeshPhongMaterial||Dt.isMeshToonMaterial||Dt.isMeshLambertMaterial||Dt.isMeshBasicMaterial||Dt.isMeshStandardMaterial||Dt.isShaderMaterial)&&zs.setValue(ue,"isOrthographic",!0===ye.isOrthographicCamera),W!==ye&&(W=ye,Yc=!0,DV=!0)}if(bt.isSkinnedMesh){zs.setOptional(ue,bt,"bindMatrix"),zs.setOptional(ue,bt,"bindMatrixInverse");const Pd=bt.skeleton;Pd&&(null===Pd.boneTexture&&Pd.computeBoneTexture(),zs.setValue(ue,"boneTexture",Pd.boneTexture,Se))}bt.isBatchedMesh&&(zs.setOptional(ue,bt,"batchingTexture"),zs.setValue(ue,"batchingTexture",bt._matricesTexture,Se),zs.setOptional(ue,bt,"batchingIdTexture"),zs.setValue(ue,"batchingIdTexture",bt._indirectTexture,Se),zs.setOptional(ue,bt,"batchingColorTexture"),null!==bt._colorsTexture&&zs.setValue(ue,"batchingColorTexture",bt._colorsTexture,Se));const BV=Ft.morphAttributes;if((void 0!==BV.position||void 0!==BV.normal||void 0!==BV.color)&&Br.update(bt,Ft,Gu),(Yc||Pi.receiveShadow!==bt.receiveShadow)&&(Pi.receiveShadow=bt.receiveShadow,zs.setValue(ue,"receiveShadow",bt.receiveShadow)),Dt.isMeshGouraudMaterial&&null!==Dt.envMap&&(m0.envMap.value=_i,m0.flipEnvMap.value=_i.isCubeTexture&&!1===_i.isRenderTargetTexture?-1:1),Dt.isMeshStandardMaterial&&null===Dt.envMap&&null!==lt.environment&&(m0.envMapIntensity.value=lt.environmentIntensity),Yc&&(zs.setValue(ue,"toneMappingExposure",R.toneMappingExposure),Pi.needsLights&&function gEe(ye,lt){ye.ambientLightColor.needsUpdate=lt,ye.lightProbe.needsUpdate=lt,ye.directionalLights.needsUpdate=lt,ye.directionalLightShadows.needsUpdate=lt,ye.pointLights.needsUpdate=lt,ye.pointLightShadows.needsUpdate=lt,ye.spotLights.needsUpdate=lt,ye.spotLightShadows.needsUpdate=lt,ye.rectAreaLights.needsUpdate=lt,ye.hemisphereLights.needsUpdate=lt}(m0,DV),Cn&&!0===Dt.fog&&Ti.refreshFogUniforms(m0,Cn),Ti.refreshMaterialUniforms(m0,Dt,Oe,Ce,T.state.transmissionRenderTarget[ye.id]),Pk.upload(ue,OY(Pi),m0,Se)),Dt.isShaderMaterial&&!0===Dt.uniformsNeedUpdate&&(Pk.upload(ue,OY(Pi),m0,Se),Dt.uniformsNeedUpdate=!1),Dt.isSpriteMaterial&&zs.setValue(ue,"center",bt.center),zs.setValue(ue,"modelViewMatrix",bt.modelViewMatrix),zs.setValue(ue,"normalMatrix",bt.normalMatrix),zs.setValue(ue,"modelMatrix",bt.matrixWorld),Dt.isShaderMaterial||Dt.isRawShaderMaterial){const Pd=Dt.uniformsGroups;for(let kV=0,bEe=Pd.length;kV{function Cn(){Dt.forEach(function(Jn){Pe.get(Jn).currentProgram.isReady()&&Dt.delete(Jn)}),0!==Dt.size?setTimeout(Cn,10):bt(ye)}null!==Ze.get("KHR_parallel_shader_compile")?Cn():setTimeout(Cn,10)})};let uo=null;function rf(){xv.stop()}function BY(){xv.start()}const xv=new mQ;function FV(ye,lt,Ft,Dt){if(!1===ye.visible)return;if(ye.layers.test(lt.layers))if(ye.isGroup)Ft=ye.renderOrder;else if(ye.isLOD)!0===ye.autoUpdate&&ye.update(lt);else if(ye.isLight)T.pushLight(ye),ye.castShadow&&T.pushShadow(ye);else if(ye.isSprite){if(!ye.frustumCulled||Kn.intersectsSprite(ye)){Dt&&dt.setFromMatrixPosition(ye.matrixWorld).applyMatrix4(Ae);const Jn=Ut.update(ye),Ci=ye.material;Ci.visible&&D.push(ye,Jn,Ci,Ft,dt.z,null)}}else if((ye.isMesh||ye.isLine||ye.isPoints)&&(!ye.frustumCulled||Kn.intersectsObject(ye))){const Jn=Ut.update(ye),Ci=ye.material;if(Dt&&(void 0!==ye.boundingSphere?(null===ye.boundingSphere&&ye.computeBoundingSphere(),dt.copy(ye.boundingSphere.center)):(null===Jn.boundingSphere&&Jn.computeBoundingSphere(),dt.copy(Jn.boundingSphere.center)),dt.applyMatrix4(ye.matrixWorld).applyMatrix4(Ae)),Array.isArray(Ci)){const _i=Jn.groups;for(let Xi=0,sr=_i.length;Xi0&&QP(bt,lt,Ft),Cn.length>0&&QP(Cn,lt,Ft),Jn.length>0&&QP(Jn,lt,Ft),_t.buffers.depth.setTest(!0),_t.buffers.depth.setMask(!0),_t.buffers.color.setMask(!0),_t.setPolygonOffset(!1)}function RY(ye,lt,Ft,Dt){if(null!==(!0===Ft.isScene?Ft.overrideMaterial:null))return;void 0===T.state.transmissionRenderTarget[Dt.id]&&(T.state.transmissionRenderTarget[Dt.id]=new oc(1,1,{generateMipmaps:!0,type:Ze.has("EXT_color_buffer_half_float")||Ze.has("EXT_color_buffer_float")?pg:Cu,minFilter:xu,samples:4,stencilBuffer:s,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:Pr.workingColorSpace}));const Cn=T.state.transmissionRenderTarget[Dt.id],Jn=Dt.viewport||q;Cn.setSize(Jn.z,Jn.w);const Ci=R.getRenderTarget();R.setRenderTarget(Cn),R.getClearColor(Ue),de=R.getClearAlpha(),de<1&&R.setClearColor(16777215,.5),R.clear(),at&&Zn.render(Ft);const _i=R.toneMapping;R.toneMapping=Dh;const Xi=Dt.viewport;if(void 0!==Dt.viewport&&(Dt.viewport=void 0),T.setupLightsView(Dt),!0===Me&&or.setGlobalState(R.clippingPlanes,Dt),QP(ye,Ft,Dt),Se.updateMultisampleRenderTarget(Cn),Se.updateRenderTargetMipmap(Cn),!1===Ze.has("WEBGL_multisampled_render_to_texture")){let sr=!1;for(let Ri=0,Zr=lt.length;Ri0)for(let Jn=0,Ci=Cn.length;Jn0&&RY(Dt,bt,ye,lt),at&&Zn.render(ye),kY(D,ye,lt);null!==te&&(Se.updateMultisampleRenderTarget(te),Se.updateRenderTargetMipmap(te)),!0===ye.isScene&&ye.onAfterRender(R,ye,lt),Er.resetDefaultState(),ie=-1,W=null,O.pop(),O.length>0?(T=O[O.length-1],!0===Me&&or.setGlobalState(R.clippingPlanes,T.state.camera)):T=null,I.pop(),D=I.length>0?I[I.length-1]:null},this.getActiveCubeFace=function(){return ee},this.getActiveMipmapLevel=function(){return J},this.getRenderTarget=function(){return te},this.setRenderTargetTextures=function(ye,lt,Ft){Pe.get(ye.texture).__webglTexture=lt,Pe.get(ye.depthTexture).__webglTexture=Ft;const Dt=Pe.get(ye);Dt.__hasExternalTextures=!0,Dt.__autoAllocateDepthBuffer=void 0===Ft,Dt.__autoAllocateDepthBuffer||!0===Ze.has("WEBGL_multisampled_render_to_texture")&&(console.warn("THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided"),Dt.__useRenderToTexture=!1)},this.setRenderTargetFramebuffer=function(ye,lt){const Ft=Pe.get(ye);Ft.__webglFramebuffer=lt,Ft.__useDefaultFramebuffer=void 0===lt},this.setRenderTarget=function(ye,lt=0,Ft=0){te=ye,ee=lt,J=Ft;let Dt=!0,bt=null,Cn=!1,Jn=!1;if(ye){const _i=Pe.get(ye);if(void 0!==_i.__useDefaultFramebuffer)_t.bindFramebuffer(ue.FRAMEBUFFER,null),Dt=!1;else if(void 0===_i.__webglFramebuffer)Se.setupRenderTarget(ye);else if(_i.__hasExternalTextures)Se.rebindTextures(ye,Pe.get(ye.texture).__webglTexture,Pe.get(ye.depthTexture).__webglTexture);else if(ye.depthBuffer){const Ri=ye.depthTexture;if(_i.__boundDepthTexture!==Ri){if(null!==Ri&&Pe.has(Ri)&&(ye.width!==Ri.image.width||ye.height!==Ri.image.height))throw new Error("WebGLRenderTarget: Attached DepthTexture is initialized to the incorrect size.");Se.setupDepthRenderbuffer(ye)}}const Xi=ye.texture;(Xi.isData3DTexture||Xi.isDataArrayTexture||Xi.isCompressedArrayTexture)&&(Jn=!0);const sr=Pe.get(ye).__webglFramebuffer;ye.isWebGLCubeRenderTarget?(bt=Array.isArray(sr[lt])?sr[lt][Ft]:sr[lt],Cn=!0):bt=ye.samples>0&&!1===Se.useMultisampledRTT(ye)?Pe.get(ye).__webglMultisampledFramebuffer:Array.isArray(sr)?sr[Ft]:sr,q.copy(ye.viewport),ce.copy(ye.scissor),ke=ye.scissorTest}else q.copy(Mt).multiplyScalar(Oe).floor(),ce.copy(Bt).multiplyScalar(Oe).floor(),ke=rn;if(_t.bindFramebuffer(ue.FRAMEBUFFER,bt)&&Dt&&_t.drawBuffers(ye,bt),_t.viewport(q),_t.scissor(ce),_t.setScissorTest(ke),Cn){const _i=Pe.get(ye.texture);ue.framebufferTexture2D(ue.FRAMEBUFFER,ue.COLOR_ATTACHMENT0,ue.TEXTURE_CUBE_MAP_POSITIVE_X+lt,_i.__webglTexture,Ft)}else if(Jn){const _i=Pe.get(ye.texture);ue.framebufferTextureLayer(ue.FRAMEBUFFER,ue.COLOR_ATTACHMENT0,_i.__webglTexture,Ft||0,lt||0)}ie=-1},this.readRenderTargetPixels=function(ye,lt,Ft,Dt,bt,Cn,Jn){if(!ye||!ye.isWebGLRenderTarget)return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let Ci=Pe.get(ye).__webglFramebuffer;if(ye.isWebGLCubeRenderTarget&&void 0!==Jn&&(Ci=Ci[Jn]),Ci){_t.bindFramebuffer(ue.FRAMEBUFFER,Ci);try{const _i=ye.texture,Xi=_i.format,sr=_i.type;if(!Ct.textureFormatReadable(Xi))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");if(!Ct.textureTypeReadable(sr))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");lt>=0&<<=ye.width-Dt&&Ft>=0&&Ft<=ye.height-bt&&ue.readPixels(lt,Ft,Dt,bt,ur.convert(Xi),ur.convert(sr),Cn)}finally{const _i=null!==te?Pe.get(te).__webglFramebuffer:null;_t.bindFramebuffer(ue.FRAMEBUFFER,_i)}}},this.readRenderTargetPixelsAsync=function(){var ye=Mn(function*(lt,Ft,Dt,bt,Cn,Jn,Ci){if(!lt||!lt.isWebGLRenderTarget)throw new Error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let _i=Pe.get(lt).__webglFramebuffer;if(lt.isWebGLCubeRenderTarget&&void 0!==Ci&&(_i=_i[Ci]),_i){_t.bindFramebuffer(ue.FRAMEBUFFER,_i);try{const Xi=lt.texture,sr=Xi.format,Ri=Xi.type;if(!Ct.textureFormatReadable(sr))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");if(!Ct.textureTypeReadable(Ri))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");if(Ft>=0&&Ft<=lt.width-bt&&Dt>=0&&Dt<=lt.height-Cn){const Zr=ue.createBuffer();ue.bindBuffer(ue.PIXEL_PACK_BUFFER,Zr),ue.bufferData(ue.PIXEL_PACK_BUFFER,Jn.byteLength,ue.STREAM_READ),ue.readPixels(Ft,Dt,bt,Cn,ur.convert(sr),ur.convert(Ri),0),ue.flush();const jo=ue.fenceSync(ue.SYNC_GPU_COMMANDS_COMPLETE,0);yield function ak(n,t,e){return new Promise(function(i,r){setTimeout(function s(){switch(n.clientWaitSync(t,n.SYNC_FLUSH_COMMANDS_BIT,0)){case n.WAIT_FAILED:r();break;case n.TIMEOUT_EXPIRED:setTimeout(s,e);break;default:i()}},e)})}(ue,jo,4);try{ue.bindBuffer(ue.PIXEL_PACK_BUFFER,Zr),ue.getBufferSubData(ue.PIXEL_PACK_BUFFER,0,Jn)}finally{ue.deleteBuffer(Zr),ue.deleteSync(jo)}return Jn}}finally{const Xi=null!==te?Pe.get(te).__webglFramebuffer:null;_t.bindFramebuffer(ue.FRAMEBUFFER,Xi)}}});return function(lt,Ft,Dt,bt,Cn,Jn,Ci){return ye.apply(this,arguments)}}(),this.copyFramebufferToTexture=function(ye,lt=null,Ft=0){!0!==ye.isTexture&&(Ip("WebGLRenderer: copyFramebufferToTexture function signature has changed."),lt=arguments[0]||null,ye=arguments[1]);const Dt=Math.pow(2,-Ft),bt=Math.floor(ye.image.width*Dt),Cn=Math.floor(ye.image.height*Dt),Jn=null!==lt?lt.x:0,Ci=null!==lt?lt.y:0;Se.setTexture2D(ye,0),ue.copyTexSubImage2D(ue.TEXTURE_2D,Ft,0,0,Jn,Ci,bt,Cn),_t.unbindTexture()},this.copyTextureToTexture=function(ye,lt,Ft=null,Dt=null,bt=0){let Cn,Jn,Ci,_i,Xi,sr;!0!==ye.isTexture&&(Ip("WebGLRenderer: copyTextureToTexture function signature has changed."),Dt=arguments[0]||null,ye=arguments[1],lt=arguments[2],bt=arguments[3]||0,Ft=null),null!==Ft?(Cn=Ft.max.x-Ft.min.x,Jn=Ft.max.y-Ft.min.y,Ci=Ft.min.x,_i=Ft.min.y):(Cn=ye.image.width,Jn=ye.image.height,Ci=0,_i=0),null!==Dt?(Xi=Dt.x,sr=Dt.y):(Xi=0,sr=0);const Ri=ur.convert(lt.format),Zr=ur.convert(lt.type);Se.setTexture2D(lt,0),ue.pixelStorei(ue.UNPACK_FLIP_Y_WEBGL,lt.flipY),ue.pixelStorei(ue.UNPACK_PREMULTIPLY_ALPHA_WEBGL,lt.premultiplyAlpha),ue.pixelStorei(ue.UNPACK_ALIGNMENT,lt.unpackAlignment);const jo=ue.getParameter(ue.UNPACK_ROW_LENGTH),ys=ue.getParameter(ue.UNPACK_IMAGE_HEIGHT),Kc=ue.getParameter(ue.UNPACK_SKIP_PIXELS),ho=ue.getParameter(ue.UNPACK_SKIP_ROWS),Pi=ue.getParameter(ue.UNPACK_SKIP_IMAGES),Na=ye.isCompressedTexture?ye.mipmaps[bt]:ye.image;ue.pixelStorei(ue.UNPACK_ROW_LENGTH,Na.width),ue.pixelStorei(ue.UNPACK_IMAGE_HEIGHT,Na.height),ue.pixelStorei(ue.UNPACK_SKIP_PIXELS,Ci),ue.pixelStorei(ue.UNPACK_SKIP_ROWS,_i),ye.isDataTexture?ue.texSubImage2D(ue.TEXTURE_2D,bt,Xi,sr,Cn,Jn,Ri,Zr,Na.data):ye.isCompressedTexture?ue.compressedTexSubImage2D(ue.TEXTURE_2D,bt,Xi,sr,Na.width,Na.height,Ri,Na.data):ue.texSubImage2D(ue.TEXTURE_2D,bt,Xi,sr,Cn,Jn,Ri,Zr,Na),ue.pixelStorei(ue.UNPACK_ROW_LENGTH,jo),ue.pixelStorei(ue.UNPACK_IMAGE_HEIGHT,ys),ue.pixelStorei(ue.UNPACK_SKIP_PIXELS,Kc),ue.pixelStorei(ue.UNPACK_SKIP_ROWS,ho),ue.pixelStorei(ue.UNPACK_SKIP_IMAGES,Pi),0===bt&<.generateMipmaps&&ue.generateMipmap(ue.TEXTURE_2D),_t.unbindTexture()},this.copyTextureToTexture3D=function(ye,lt,Ft=null,Dt=null,bt=0){let Cn,Jn,Ci,_i,Xi,sr,Ri,Zr,jo;!0!==ye.isTexture&&(Ip("WebGLRenderer: copyTextureToTexture3D function signature has changed."),Ft=arguments[0]||null,Dt=arguments[1]||null,ye=arguments[2],lt=arguments[3],bt=arguments[4]||0);const ys=ye.isCompressedTexture?ye.mipmaps[bt]:ye.image;null!==Ft?(Cn=Ft.max.x-Ft.min.x,Jn=Ft.max.y-Ft.min.y,Ci=Ft.max.z-Ft.min.z,_i=Ft.min.x,Xi=Ft.min.y,sr=Ft.min.z):(Cn=ys.width,Jn=ys.height,Ci=ys.depth,_i=0,Xi=0,sr=0),null!==Dt?(Ri=Dt.x,Zr=Dt.y,jo=Dt.z):(Ri=0,Zr=0,jo=0);const Kc=ur.convert(lt.format),ho=ur.convert(lt.type);let Pi;if(lt.isData3DTexture)Se.setTexture3D(lt,0),Pi=ue.TEXTURE_3D;else{if(!lt.isDataArrayTexture&&!lt.isCompressedArrayTexture)return void console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");Se.setTexture2DArray(lt,0),Pi=ue.TEXTURE_2D_ARRAY}ue.pixelStorei(ue.UNPACK_FLIP_Y_WEBGL,lt.flipY),ue.pixelStorei(ue.UNPACK_PREMULTIPLY_ALPHA_WEBGL,lt.premultiplyAlpha),ue.pixelStorei(ue.UNPACK_ALIGNMENT,lt.unpackAlignment);const Na=ue.getParameter(ue.UNPACK_ROW_LENGTH),fo=ue.getParameter(ue.UNPACK_IMAGE_HEIGHT),Gu=ue.getParameter(ue.UNPACK_SKIP_PIXELS),Sx=ue.getParameter(ue.UNPACK_SKIP_ROWS),Yc=ue.getParameter(ue.UNPACK_SKIP_IMAGES);ue.pixelStorei(ue.UNPACK_ROW_LENGTH,ys.width),ue.pixelStorei(ue.UNPACK_IMAGE_HEIGHT,ys.height),ue.pixelStorei(ue.UNPACK_SKIP_PIXELS,_i),ue.pixelStorei(ue.UNPACK_SKIP_ROWS,Xi),ue.pixelStorei(ue.UNPACK_SKIP_IMAGES,sr),ye.isDataTexture||ye.isData3DTexture?ue.texSubImage3D(Pi,bt,Ri,Zr,jo,Cn,Jn,Ci,Kc,ho,ys.data):lt.isCompressedArrayTexture?ue.compressedTexSubImage3D(Pi,bt,Ri,Zr,jo,Cn,Jn,Ci,Kc,ys.data):ue.texSubImage3D(Pi,bt,Ri,Zr,jo,Cn,Jn,Ci,Kc,ho,ys),ue.pixelStorei(ue.UNPACK_ROW_LENGTH,Na),ue.pixelStorei(ue.UNPACK_IMAGE_HEIGHT,fo),ue.pixelStorei(ue.UNPACK_SKIP_PIXELS,Gu),ue.pixelStorei(ue.UNPACK_SKIP_ROWS,Sx),ue.pixelStorei(ue.UNPACK_SKIP_IMAGES,Yc),0===bt&<.generateMipmaps&&ue.generateMipmap(Pi),_t.unbindTexture()},this.initRenderTarget=function(ye){void 0===Pe.get(ye).__webglFramebuffer&&Se.setupRenderTarget(ye)},this.initTexture=function(ye){ye.isCubeTexture?Se.setTextureCube(ye,0):ye.isData3DTexture?Se.setTexture3D(ye,0):ye.isDataArrayTexture||ye.isCompressedArrayTexture?Se.setTexture2DArray(ye,0):Se.setTexture2D(ye,0),_t.unbindTexture()},this.resetState=function(){ee=0,J=0,te=null,_t.reset(),Er.reset()},typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return Qc}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(t){this._outputColorSpace=t;const e=this.getContext();e.drawingBufferColorSpace=t===wg?"display-p3":"srgb",e.unpackColorSpace=Pr.workingColorSpace===Sp?"display-p3":"srgb"}}class Nk extends Oo{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new Iu,this.environmentIntensity=1,this.environmentRotation=new Iu,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(t,e){return super.copy(t,e),null!==t.background&&(this.background=t.background.clone()),null!==t.environment&&(this.environment=t.environment.clone()),null!==t.fog&&(this.fog=t.fog.clone()),this.backgroundBlurriness=t.backgroundBlurriness,this.backgroundIntensity=t.backgroundIntensity,this.backgroundRotation.copy(t.backgroundRotation),this.environmentIntensity=t.environmentIntensity,this.environmentRotation.copy(t.environmentRotation),null!==t.overrideMaterial&&(this.overrideMaterial=t.overrideMaterial.clone()),this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return null!==this.fog&&(e.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(e.object.backgroundBlurriness=this.backgroundBlurriness),1!==this.backgroundIntensity&&(e.object.backgroundIntensity=this.backgroundIntensity),e.object.backgroundRotation=this.backgroundRotation.toArray(),1!==this.environmentIntensity&&(e.object.environmentIntensity=this.environmentIntensity),e.object.environmentRotation=this.environmentRotation.toArray(),e}}class z5{constructor(t,e){this.isInterleavedBuffer=!0,this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.usage=35044,this._updateRange={offset:0,count:-1},this.updateRanges=[],this.version=0,this.uuid=xl()}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}get updateRange(){return Ip("THREE.InterleavedBuffer: updateRange() is deprecated and will be removed in r169. Use addUpdateRange() instead."),this._updateRange}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.usage=t.usage,this}copyAt(t,e,i){t*=this.stride,i*=e.stride;for(let r=0,s=this.stride;rt.far||e.push({distance:f,point:pS.clone(),uv:sc.getInterpolation(pS,Lk,mS,Uk,WQ,j5,XQ,new ft),face:null,object:this})}copy(t,e){return super.copy(t,e),void 0!==t.center&&this.center.copy(t.center),this.material=t.material,this}}function Vk(n,t,e,i,r,s){Nw.subVectors(n,e).addScalar(.5).multiply(i),void 0!==r?(AS.x=s*Nw.x-r*Nw.y,AS.y=r*Nw.x+s*Nw.y):AS.copy(Nw),n.copy(t),n.x+=AS.x,n.y+=AS.y,n.applyMatrix4(qQ)}class Ya extends d{constructor(t){super(),this.isLineBasicMaterial=!0,this.type="LineBasicMaterial",this.color=new vn(16777215),this.map=null,this.linewidth=1,this.linecap="round",this.linejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this.fog=t.fog,this}}const $k=new pe,qk=new pe,lz=new Gi,yS=new Lh,Wk=new ha,J5=new pe,cz=new pe;class ku extends Oo{constructor(t=new Yi,e=new Ya){super(),this.isLine=!0,this.type="Line",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}computeLineDistances(){const t=this.geometry;if(null===t.index){const e=t.attributes.position,i=[0];for(let r=1,s=e.count;r0){const r=e[i[0]];if(void 0!==r){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,l=r.length;si)return;J5.applyMatrix4(n.matrixWorld);const f=t.ray.origin.distanceTo(J5);return ft.far?void 0:{distance:f,point:cz.clone().applyMatrix4(n.matrixWorld),index:r,face:null,faceIndex:null,object:n}}const dz=new pe,uz=new pe;class Op extends ku{constructor(t,e){super(t,e),this.isLineSegments=!0,this.type="LineSegments"}computeLineDistances(){const t=this.geometry;if(null===t.index){const e=t.attributes.position,i=[];for(let r=0,s=e.count;r0)){f=r;break}f=r-1}if(r=f,i[r]===l)return r/(s-1);const m=i[r];return(r+(l-m)/(i[r+1]-m))/(s-1)}getTangent(t,e){let r=t-1e-4,s=t+1e-4;r<0&&(r=0),s>1&&(s=1);const l=this.getPoint(r),u=this.getPoint(s),f=e||(l.isVector2?new ft:new pe);return f.copy(u).sub(l).normalize(),f}getTangentAt(t,e){const i=this.getUtoTmapping(t);return this.getTangent(i,e)}computeFrenetFrames(t,e){const i=new pe,r=[],s=[],l=[],u=new pe,f=new Gi;for(let w=0;w<=t;w++)r[w]=this.getTangentAt(w/t,new pe);s[0]=new pe,l[0]=new pe;let p=Number.MAX_VALUE;const m=Math.abs(r[0].x),_=Math.abs(r[0].y),b=Math.abs(r[0].z);m<=p&&(p=m,i.set(1,0,0)),_<=p&&(p=_,i.set(0,1,0)),b<=p&&i.set(0,0,1),u.crossVectors(r[0],i).normalize(),s[0].crossVectors(r[0],u),l[0].crossVectors(r[0],s[0]);for(let w=1;w<=t;w++){if(s[w]=s[w-1].clone(),l[w]=l[w-1].clone(),u.crossVectors(r[w-1],r[w]),u.length()>Number.EPSILON){u.normalize();const F=Math.acos(Xo(r[w-1].dot(r[w]),-1,1));s[w].applyMatrix4(f.makeRotationAxis(u,F))}l[w].crossVectors(r[w],s[w])}if(!0===e){let w=Math.acos(Xo(s[0].dot(s[t]),-1,1));w/=t,r[0].dot(u.crossVectors(s[0],s[t]))>0&&(w=-w);for(let F=1;F<=t;F++)s[F].applyMatrix4(f.makeRotationAxis(r[F],w*F)),l[F].crossVectors(r[F],s[F])}return{tangents:r,normals:s,binormals:l}}clone(){return(new this.constructor).copy(this)}copy(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}toJSON(){const t={metadata:{version:4.6,type:"Curve",generator:"Curve.toJSON"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t}fromJSON(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}class nU extends Hh{constructor(t=0,e=0,i=1,r=1,s=0,l=2*Math.PI,u=!1,f=0){super(),this.isEllipseCurve=!0,this.type="EllipseCurve",this.aX=t,this.aY=e,this.xRadius=i,this.yRadius=r,this.aStartAngle=s,this.aEndAngle=l,this.aClockwise=u,this.aRotation=f}getPoint(t,e=new ft){const i=e,r=2*Math.PI;let s=this.aEndAngle-this.aStartAngle;const l=Math.abs(s)r;)s-=r;sr.length-2?r.length-1:l+1],_=r[l>r.length-3?r.length-1:l+2];return i.set(Az(u,f.x,p.x,m.x,_.x),Az(u,f.y,p.y,m.y,_.y)),i}copy(t){super.copy(t),this.points=[];for(let e=0,i=t.points.length;e0?0:(Math.floor(Math.abs(u)/s)+1)*s:0===f&&u===s-1&&(u=s-2,f=1),this.closed||u>0?p=r[(u-1)%s]:(Zk.subVectors(r[0],r[1]).add(r[0]),p=Zk);const _=r[u%s],b=r[(u+1)%s];if(this.closed||u+2=i){const l=r[s]-i,u=this.curves[s],f=u.getLength();return u.getPointAt(0===f?0:1-l/f,e)}s++}return null}getLength(){const t=this.getCurveLengths();return t[t.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;const t=[];let e=0;for(let i=0,r=this.curves.length;i1&&!e[e.length-1].equals(e[0])&&e.push(e[0]),e}copy(t){super.copy(t),this.curves=[];for(let e=0,i=t.curves.length;e0){const _=p.getPoint(0);_.equals(this.currentPoint)||this.lineTo(_.x,_.y)}this.curves.push(p);const m=p.getPoint(1);return this.currentPoint.copy(m),this}copy(t){return super.copy(t),this.currentPoint.copy(t.currentPoint),this}toJSON(){const t=super.toJSON();return t.currentPoint=this.currentPoint.toArray(),t}fromJSON(t){return super.fromJSON(t),this.currentPoint.fromArray(t.currentPoint),this}}class CS extends Yi{constructor(t=1,e=1,i=1,r=32,s=1,l=!1,u=0,f=2*Math.PI){super(),this.type="CylinderGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:i,radialSegments:r,heightSegments:s,openEnded:l,thetaStart:u,thetaLength:f};const p=this;r=Math.floor(r),s=Math.floor(s);const m=[],_=[],b=[],w=[];let F=0;const D=[],T=i/2;let I=0;function R(P){const ee=F,J=new ft,te=new pe;let ie=0;const W=!0===P?t:e,q=!0===P?1:-1;for(let ke=1;ke<=r;ke++)_.push(0,T*q,0),b.push(0,q,0),w.push(.5,.5),F++;const ce=F;for(let ke=0;ke<=r;ke++){const de=ke/r*f+u,ze=Math.cos(de),Ce=Math.sin(de);te.x=W*Ce,te.y=T*q,te.z=W*ze,_.push(te.x,te.y,te.z),b.push(0,q,0),J.x=.5*ze+.5,J.y=.5*Ce*q+.5,w.push(J.x,J.y),F++}for(let ke=0;ke0&&R(!0),e>0&&R(!1)),this.setIndex(m),this.setAttribute("position",new Zt(_,3)),this.setAttribute("normal",new Zt(b,3)),this.setAttribute("uv",new Zt(w,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new CS(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}}class Og extends Xb{constructor(t){super(t),this.uuid=xl(),this.type="Shape",this.holes=[]}getPointsHoles(t){const e=[];for(let i=0,r=this.holes.length;i0)for(s=t;s=t;s-=i)l=Mz(s,n[s],n[s+1],l);return l&&o3(l,l.next)&&(SS(l),l=l.next),l}function Yb(n,t){if(!n)return n;t||(t=n);let i,e=n;do{if(i=!1,e.steiner||!o3(e,e.next)&&0!==rs(e.prev,e,e.next))e=e.next;else{if(SS(e),e=t=e.prev,e===e.next)break;i=!0}}while(i||e!==t);return t}function MS(n,t,e,i,r,s,l){if(!n)return;!l&&s&&function Aie(n,t,e,i){let r=n;do{0===r.z&&(r.z=hU(r.x,r.y,t,e,i)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next}while(r!==n);r.prevZ.nextZ=null,r.prevZ=null,function mie(n){let t,e,i,r,s,l,u,f,p=1;do{for(e=n,n=null,s=null,l=0;e;){for(l++,i=e,u=0,t=0;t0||f>0&&i;)0!==u&&(0===f||!i||e.z<=i.z)?(r=e,e=e.nextZ,u--):(r=i,i=i.nextZ,f--),s?s.nextZ=r:n=r,r.prevZ=s,s=r;e=i}s.nextZ=null,p*=2}while(l>1)}(r)}(n,i,r,s);let f,p,u=n;for(;n.prev!==n.next;)if(f=n.prev,p=n.next,s?aie(n,i,r,s):sie(n))t.push(f.i/e|0),t.push(n.i/e|0),t.push(p.i/e|0),SS(n),n=p.next,u=p.next;else if((n=p)===u){l?1===l?MS(n=lie(Yb(n),t,e),t,e,i,r,s,2):2===l&&cie(n,t,e,i,r,s):MS(Yb(n),t,e,i,r,s,1);break}}function sie(n){const t=n.prev,e=n,i=n.next;if(rs(t,e,i)>=0)return!1;const r=t.x,s=e.x,l=i.x,u=t.y,f=e.y,p=i.y,m=rs?r>l?r:l:s>l?s:l,w=u>f?u>p?u:p:f>p?f:p;let F=i.next;for(;F!==t;){if(F.x>=m&&F.x<=b&&F.y>=_&&F.y<=w&&Uw(r,u,s,f,l,p,F.x,F.y)&&rs(F.prev,F,F.next)>=0)return!1;F=F.next}return!0}function aie(n,t,e,i){const r=n.prev,s=n,l=n.next;if(rs(r,s,l)>=0)return!1;const u=r.x,f=s.x,p=l.x,m=r.y,_=s.y,b=l.y,w=uf?u>p?u:p:f>p?f:p,T=m>_?m>b?m:b:_>b?_:b,I=hU(w,F,t,e,i),O=hU(D,T,t,e,i);let R=n.prevZ,P=n.nextZ;for(;R&&R.z>=I&&P&&P.z<=O;){if(R.x>=w&&R.x<=D&&R.y>=F&&R.y<=T&&R!==r&&R!==l&&Uw(u,m,f,_,p,b,R.x,R.y)&&rs(R.prev,R,R.next)>=0||(R=R.prevZ,P.x>=w&&P.x<=D&&P.y>=F&&P.y<=T&&P!==r&&P!==l&&Uw(u,m,f,_,p,b,P.x,P.y)&&rs(P.prev,P,P.next)>=0))return!1;P=P.nextZ}for(;R&&R.z>=I;){if(R.x>=w&&R.x<=D&&R.y>=F&&R.y<=T&&R!==r&&R!==l&&Uw(u,m,f,_,p,b,R.x,R.y)&&rs(R.prev,R,R.next)>=0)return!1;R=R.prevZ}for(;P&&P.z<=O;){if(P.x>=w&&P.x<=D&&P.y>=F&&P.y<=T&&P!==r&&P!==l&&Uw(u,m,f,_,p,b,P.x,P.y)&&rs(P.prev,P,P.next)>=0)return!1;P=P.nextZ}return!0}function lie(n,t,e){let i=n;do{const r=i.prev,s=i.next.next;!o3(r,s)&&xz(r,i,i.next,s)&&ES(r,s)&&ES(s,r)&&(t.push(r.i/e|0),t.push(i.i/e|0),t.push(s.i/e|0),SS(i),SS(i.next),i=n=s),i=i.next}while(i!==n);return Yb(i)}function cie(n,t,e,i,r,s){let l=n;do{let u=l.next.next;for(;u!==l.prev;){if(l.i!==u.i&&_ie(l,u)){let f=Cz(l,u);return l=Yb(l,l.next),f=Yb(f,f.next),MS(l,t,e,i,r,s,0),void MS(f,t,e,i,r,s,0)}u=u.next}l=l.next}while(l!==n)}function uie(n,t){return n.x-t.x}function hie(n,t){const e=function fie(n,t){let r,e=t,i=-1/0;const s=n.x,l=n.y;do{if(l<=e.y&&l>=e.next.y&&e.next.y!==e.y){const b=e.x+(l-e.y)*(e.next.x-e.x)/(e.next.y-e.y);if(b<=s&&b>i&&(i=b,r=e.x=e.x&&e.x>=f&&s!==e.x&&Uw(lr.x||e.x===r.x&&pie(r,e)))&&(r=e,m=_)),e=e.next}while(e!==u);return r}(n,t);if(!e)return t;const i=Cz(e,n);return Yb(i,i.next),Yb(e,e.next)}function pie(n,t){return rs(n.prev,n,t.prev)<0&&rs(t.next,n,n.next)<0}function hU(n,t,e,i,r){return(n=1431655765&((n=858993459&((n=252645135&((n=16711935&((n=(n-e)*r|0)|n<<8))|n<<4))|n<<2))|n<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-i)*r|0)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function gie(n){let t=n,e=n;do{(t.x=(n-l)*(s-u)&&(n-l)*(i-u)>=(e-l)*(t-u)&&(e-l)*(s-u)>=(r-l)*(i-u)}function _ie(n,t){return n.next.i!==t.i&&n.prev.i!==t.i&&!function bie(n,t){let e=n;do{if(e.i!==n.i&&e.next.i!==n.i&&e.i!==t.i&&e.next.i!==t.i&&xz(e,e.next,n,t))return!0;e=e.next}while(e!==n);return!1}(n,t)&&(ES(n,t)&&ES(t,n)&&function vie(n,t){let e=n,i=!1;const r=(n.x+t.x)/2,s=(n.y+t.y)/2;do{e.y>s!=e.next.y>s&&e.next.y!==e.y&&r<(e.next.x-e.x)*(s-e.y)/(e.next.y-e.y)+e.x&&(i=!i),e=e.next}while(e!==n);return i}(n,t)&&(rs(n.prev,n,t.prev)||rs(n,t.prev,t))||o3(n,t)&&rs(n.prev,n,n.next)>0&&rs(t.prev,t,t.next)>0)}function rs(n,t,e){return(t.y-n.y)*(e.x-t.x)-(t.x-n.x)*(e.y-t.y)}function o3(n,t){return n.x===t.x&&n.y===t.y}function xz(n,t,e,i){const r=a3(rs(n,t,e)),s=a3(rs(n,t,i)),l=a3(rs(e,i,n)),u=a3(rs(e,i,t));return!!(r!==s&&l!==u||0===r&&s3(n,e,t)||0===s&&s3(n,i,t)||0===l&&s3(e,n,i)||0===u&&s3(e,t,i))}function s3(n,t,e){return t.x<=Math.max(n.x,e.x)&&t.x>=Math.min(n.x,e.x)&&t.y<=Math.max(n.y,e.y)&&t.y>=Math.min(n.y,e.y)}function a3(n){return n>0?1:n<0?-1:0}function ES(n,t){return rs(n.prev,n,n.next)<0?rs(n,t,n.next)>=0&&rs(n,n.prev,t)>=0:rs(n,t,n.prev)<0||rs(n,n.next,t)<0}function Cz(n,t){const e=new fU(n.i,n.x,n.y),i=new fU(t.i,t.x,t.y),r=n.next,s=t.prev;return n.next=t,t.prev=n,e.next=r,r.prev=e,i.next=e,e.prev=i,s.next=i,i.prev=s,i}function Mz(n,t,e,i){const r=new fU(n,t,e);return i?(r.next=i.next,r.prev=i,i.next.prev=r,i.next=r):(r.prev=r,r.next=r),r}function SS(n){n.next.prev=n.prev,n.prev.next=n.next,n.prevZ&&(n.prevZ.nextZ=n.nextZ),n.nextZ&&(n.nextZ.prevZ=n.prevZ)}function fU(n,t,e){this.i=n,this.x=t,this.y=e,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}class Qh{static area(t){const e=t.length;let i=0;for(let r=e-1,s=0;s80*e){u=p=n[0],f=m=n[1];for(let F=e;Fp&&(p=_),b>m&&(m=b);w=Math.max(p-u,m-f),w=0!==w?32767/w:0}return MS(s,l,e,u,f,w,0),l}(i,r);for(let f=0;f2&&n[t-1].equals(n[0])&&n.pop()}function Sz(n,t){for(let e=0;eNumber.EPSILON){const Ut=Math.sqrt(xt),jt=Math.sqrt(_e*_e+oe*oe),Ti=yt.x-Se/Ut,Dn=yt.y+Pe/Ut,hn=((Ze.x-oe/jt-Ti)*oe-(Ze.y+_e/jt-Dn)*_e)/(Pe*oe-Se*_e);Ct=Ti+Pe*hn-ue.x,_t=Dn+Se*hn-ue.y;const Zn=Ct*Ct+_t*_t;if(Zn<=2)return new ft(Ct,_t);It=Math.sqrt(Zn/2)}else{let Ut=!1;Pe>Number.EPSILON?_e>Number.EPSILON&&(Ut=!0):Pe<-Number.EPSILON?_e<-Number.EPSILON&&(Ut=!0):Math.sign(Se)===Math.sign(oe)&&(Ut=!0),Ut?(Ct=-Se,_t=Pe,It=Math.sqrt(xt)):(Ct=Pe,_t=Se,It=Math.sqrt(xt/2))}return new ft(Ct/It,_t/It)}const ht=[];for(let ue=0,yt=de.length,Ze=yt-1,Ct=ue+1;ue=0;ue--){const yt=ue/T,Ze=w*Math.cos(yt*Math.PI/2),Ct=F*Math.sin(yt*Math.PI/2)+D;for(let _t=0,It=de.length;_t=0;){const Ct=Ze;let _t=Ze-1;_t<0&&(_t=ue.length-1);for(let It=0,Pe=m+2*T;It=s)break e;{const u=e[1];t=s)break t}l=i,i=0}}for(;i>>1;te;)--l;if(++l,0!==s||l!==r){s>=l&&(l=Math.max(l,1),s=l-1);const u=this.getValueSize();this.times=i.slice(s,l),this.values=this.values.slice(s*u,l*u)}return this}validate(){let t=!0;const e=this.getValueSize();e-Math.floor(e)!=0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),t=!1);const i=this.times,r=this.values,s=i.length;0===s&&(console.error("THREE.KeyframeTrack: Track is empty.",this),t=!1);let l=null;for(let u=0;u!==s;u++){const f=i[u];if("number"==typeof f&&isNaN(f)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,u,f),t=!1;break}if(null!==l&&l>f){console.error("THREE.KeyframeTrack: Out of order keys.",this,u,f,l),t=!1;break}l=f}if(void 0!==r&&function Bz(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}(r))for(let u=0,f=r.length;u!==f;++u){const p=r[u];if(isNaN(p)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,u,p),t=!1;break}}return t}optimize(){const t=this.times.slice(),e=this.values.slice(),i=this.getValueSize(),r=2302===this.getInterpolation(),s=t.length-1;let l=1;for(let u=1;u0){t[l]=t[s];for(let u=s*i,f=l*i,p=0;p!==i;++p)e[f+p]=e[u+p];++l}return l!==t.length?(this.times=t.slice(0,l),this.values=e.slice(0,l*i)):(this.times=t,this.values=e),this}clone(){const t=this.times.slice(),e=this.values.slice(),r=new(0,this.constructor)(this.name,t,e);return r.createInterpolant=this.createInterpolant,r}}zh.prototype.TimeBufferType=Float32Array,zh.prototype.ValueBufferType=Float32Array,zh.prototype.DefaultInterpolation=2301;class Hw extends zh{constructor(t,e,i){super(t,e,i)}}Hw.prototype.ValueTypeName="bool",Hw.prototype.ValueBufferType=Array,Hw.prototype.DefaultInterpolation=2300,Hw.prototype.InterpolantFactoryMethodLinear=void 0,Hw.prototype.InterpolantFactoryMethodSmooth=void 0;(class Pz extends zh{}).prototype.ValueTypeName="color";(class h3 extends zh{}).prototype.ValueTypeName="number";class Nie extends u3{constructor(t,e,i,r){super(t,e,i,r)}interpolate_(t,e,i,r){const s=this.resultBuffer,l=this.sampleValues,u=this.valueSize,f=(i-e)/(r-e);let p=t*u;for(let m=p+u;p!==m;p+=4)Vs.slerpFlat(s,0,l,p-u,l,p,f);return s}}class f3 extends zh{InterpolantFactoryMethodLinear(t){return new Nie(this.times,this.values,this.getValueSize(),t)}}f3.prototype.ValueTypeName="quaternion",f3.prototype.InterpolantFactoryMethodSmooth=void 0;class Qw extends zh{constructor(t,e,i){super(t,e,i)}}Qw.prototype.ValueTypeName="string",Qw.prototype.ValueBufferType=Array,Qw.prototype.DefaultInterpolation=2300,Qw.prototype.InterpolantFactoryMethodLinear=void 0,Qw.prototype.InterpolantFactoryMethodSmooth=void 0;(class p3 extends zh{}).prototype.ValueTypeName="vector";const Ng={enabled:!1,files:{},add:function(n,t){!1!==this.enabled&&(this.files[n]=t)},get:function(n){if(!1!==this.enabled)return this.files[n]},remove:function(n){delete this.files[n]},clear:function(){this.files={}}};class Oz{constructor(t,e,i){const r=this;let f,s=!1,l=0,u=0;const p=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=i,this.itemStart=function(m){u++,!1===s&&void 0!==r.onStart&&r.onStart(m,l,u),s=!0},this.itemEnd=function(m){l++,void 0!==r.onProgress&&r.onProgress(m,l,u),l===u&&(s=!1,void 0!==r.onLoad&&r.onLoad())},this.itemError=function(m){void 0!==r.onError&&r.onError(m)},this.resolveURL=function(m){return f?f(m):m},this.setURLModifier=function(m){return f=m,this},this.addHandler=function(m,_){return p.push(m,_),this},this.removeHandler=function(m){const _=p.indexOf(m);return-1!==_&&p.splice(_,2),this},this.getHandler=function(m){for(let _=0,b=p.length;_{class n{constructor(e){this.manager=void 0!==e?e:Vie,this.crossOrigin="anonymous",this.withCredentials=!1,this.path="",this.resourcePath="",this.requestHeader={}}load(){}loadAsync(e,i){const r=this;return new Promise(function(s,l){r.load(e,s,i,l)})}parse(){}setCrossOrigin(e){return this.crossOrigin=e,this}setWithCredentials(e){return this.withCredentials=e,this}setPath(e){return this.path=e,this}setResourcePath(e){return this.resourcePath=e,this}setRequestHeader(e){return this.requestHeader=e,this}}return n.DEFAULT_MATERIAL_NAME="__DEFAULT",n})();const Np={};class Hie extends Error{constructor(t,e){super(t),this.response=e}}class Gh extends cc{constructor(t){super(t)}load(t,e,i,r){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const s=Ng.get(t);if(void 0!==s)return this.manager.itemStart(t),setTimeout(()=>{e&&e(s),this.manager.itemEnd(t)},0),s;if(void 0!==Np[t])return void Np[t].push({onLoad:e,onProgress:i,onError:r});Np[t]=[],Np[t].push({onLoad:e,onProgress:i,onError:r});const l=new Request(t,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),u=this.mimeType,f=this.responseType;fetch(l).then(p=>{if(200===p.status||0===p.status){if(0===p.status&&console.warn("THREE.FileLoader: HTTP Status 0 received."),typeof ReadableStream>"u"||void 0===p.body||void 0===p.body.getReader)return p;const m=Np[t],_=p.body.getReader(),b=p.headers.get("X-File-Size")||p.headers.get("Content-Length"),w=b?parseInt(b):0,F=0!==w;let D=0;const T=new ReadableStream({start(I){!function O(){_.read().then(({done:R,value:P})=>{if(R)I.close();else{D+=P.byteLength;const ee=new ProgressEvent("progress",{lengthComputable:F,loaded:D,total:w});for(let J=0,te=m.length;J{I.error(R)})}()}});return new Response(T)}throw new Hie(`fetch for "${p.url}" responded with ${p.status}: ${p.statusText}`,p)}).then(p=>{switch(f){case"arraybuffer":return p.arrayBuffer();case"blob":return p.blob();case"document":return p.text().then(m=>(new DOMParser).parseFromString(m,u));case"json":return p.json();default:if(void 0===u)return p.text();{const _=/charset="?([^;"\s]*)"?/i.exec(u),b=_&&_[1]?_[1].toLowerCase():void 0,w=new TextDecoder(b);return p.arrayBuffer().then(F=>w.decode(F))}}}).then(p=>{Ng.add(t,p);const m=Np[t];delete Np[t];for(let _=0,b=m.length;_{const m=Np[t];if(void 0===m)throw this.manager.itemError(t),p;delete Np[t];for(let _=0,b=m.length;_{this.manager.itemEnd(t)}),this.manager.itemStart(t)}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}}class Jb extends Oo{constructor(t,e=1){super(),this.isLight=!0,this.type="Light",this.color=new vn(t),this.intensity=e}dispose(){}copy(t,e){return super.copy(t,e),this.color.copy(t.color),this.intensity=t.intensity,this}toJSON(t){const e=super.toJSON(t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,void 0!==this.groundColor&&(e.object.groundColor=this.groundColor.getHex()),void 0!==this.distance&&(e.object.distance=this.distance),void 0!==this.angle&&(e.object.angle=this.angle),void 0!==this.decay&&(e.object.decay=this.decay),void 0!==this.penumbra&&(e.object.penumbra=this.penumbra),void 0!==this.shadow&&(e.object.shadow=this.shadow.toJSON()),void 0!==this.target&&(e.object.target=this.target.uuid),e}}const xU=new Gi,Nz=new pe,Lz=new pe;class CU{constructor(t){this.camera=t,this.intensity=1,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new ft(512,512),this.map=null,this.mapPass=null,this.matrix=new Gi,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new Fk,this._frameExtents=new ft(1,1),this._viewportCount=1,this._viewports=[new so(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(t){const e=this.camera,i=this.matrix;Nz.setFromMatrixPosition(t.matrixWorld),e.position.copy(Nz),Lz.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(Lz),e.updateMatrixWorld(),xU.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(xU),i.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),i.multiply(xU)}getViewport(t){return this._viewports[t]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(t){return this.camera=t.camera.clone(),this.intensity=t.intensity,this.bias=t.bias,this.radius=t.radius,this.mapSize.copy(t.mapSize),this}clone(){return(new this.constructor).copy(this)}toJSON(){const t={};return 1!==this.intensity&&(t.intensity=this.intensity),0!==this.bias&&(t.bias=this.bias),0!==this.normalBias&&(t.normalBias=this.normalBias),1!==this.radius&&(t.radius=this.radius),(512!==this.mapSize.x||512!==this.mapSize.y)&&(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}}class qie extends CU{constructor(){super(new Bk(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}}class IS extends Jb{constructor(t,e){super(t,e),this.isDirectionalLight=!0,this.type="DirectionalLight",this.position.copy(Oo.DEFAULT_UP),this.updateMatrix(),this.target=new Oo,this.shadow=new qie}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}class EU extends Jb{constructor(t,e){super(t,e),this.isAmbientLight=!0,this.type="AmbientLight"}}class $z{constructor(t=!0){this.autoStart=t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=qz(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let t=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){const e=qz();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}}function qz(){return(typeof performance>"u"?Date:performance).now()}const TU="\\[\\]\\.:\\/",rre=new RegExp("["+TU+"]","g"),IU="[^"+TU+"]",ore="[^"+TU.replace("\\.","")+"]",dre=new RegExp("^"+/((?:WC+[\/:])*)/.source.replace("WC",IU)+/(WCOD+)?/.source.replace("WCOD",ore)+/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",IU)+/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",IU)+"$"),ure=["material","materials","bones","map"];class hre{constructor(t,e,i){const r=i||zo.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,r)}getValue(t,e){this.bind();const r=this._bindings[this._targetGroup.nCachedObjects_];void 0!==r&&r.getValue(t,e)}setValue(t,e){const i=this._bindings;for(let r=this._targetGroup.nCachedObjects_,s=i.length;r!==s;++r)i[r].setValue(t,e)}bind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,i=t.length;e!==i;++e)t[e].bind()}unbind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,i=t.length;e!==i;++e)t[e].unbind()}}let zo=(()=>{class n{constructor(e,i,r){this.path=i,this.parsedPath=r||n.parseTrackName(i),this.node=n.findNode(e,this.parsedPath.nodeName),this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,i,r){return e&&e.isAnimationObjectGroup?new n.Composite(e,i,r):new n(e,i,r)}static sanitizeNodeName(e){return e.replace(/\s/g,"_").replace(rre,"")}static parseTrackName(e){const i=dre.exec(e);if(null===i)throw new Error("PropertyBinding: Cannot parse trackName: "+e);const r={nodeName:i[2],objectName:i[3],objectIndex:i[4],propertyName:i[5],propertyIndex:i[6]},s=r.nodeName&&r.nodeName.lastIndexOf(".");if(void 0!==s&&-1!==s){const l=r.nodeName.substring(s+1);-1!==ure.indexOf(l)&&(r.nodeName=r.nodeName.substring(0,s),r.objectName=l)}if(null===r.propertyName||0===r.propertyName.length)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+e);return r}static findNode(e,i){if(void 0===i||""===i||"."===i||-1===i||i===e.name||i===e.uuid)return e;if(e.skeleton){const r=e.skeleton.getBoneByName(i);if(void 0!==r)return r}if(e.children){const r=function(l){for(let u=0;u=this.min.x&&t.x<=this.max.x&&t.y>=this.min.y&&t.y<=this.max.y}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(t){return t.max.x>=this.min.x&&t.min.x<=this.max.x&&t.max.y>=this.min.y&&t.min.y<=this.max.y}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,nG).distanceTo(t)}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}const w3=new Ss;class _re extends Op{constructor(t,e=16776960){const i=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),r=new Float32Array(24),s=new Yi;s.setIndex(new ae(i,1)),s.setAttribute("position",new ae(r,3)),super(s,new Ya({color:e,toneMapped:!1})),this.object=t,this.type="BoxHelper",this.matrixAutoUpdate=!1,this.update()}update(t){if(void 0!==t&&console.warn("THREE.BoxHelper: .update() has no longer arguments."),void 0!==this.object&&w3.setFromObject(this.object),w3.isEmpty())return;const e=w3.min,i=w3.max,r=this.geometry.attributes.position,s=r.array;s[0]=i.x,s[1]=i.y,s[2]=i.z,s[3]=e.x,s[4]=i.y,s[5]=i.z,s[6]=e.x,s[7]=e.y,s[8]=i.z,s[9]=i.x,s[10]=e.y,s[11]=i.z,s[12]=i.x,s[13]=i.y,s[14]=e.z,s[15]=e.x,s[16]=i.y,s[17]=e.z,s[18]=e.x,s[19]=e.y,s[20]=e.z,s[21]=i.x,s[22]=e.y,s[23]=e.z,r.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(t){return this.object=t,this.update(),this}copy(t,e){return super.copy(t,e),this.object=t.object,this}dispose(){this.geometry.dispose(),this.material.dispose()}}const dG=new pe;let x3,BU;class bre extends Oo{constructor(t=new pe(0,0,1),e=new pe(0,0,0),i=1,r=16776960,s=.2*i,l=.2*s){super(),this.type="ArrowHelper",void 0===x3&&(x3=new Yi,x3.setAttribute("position",new Zt([0,0,0,0,1,0],3)),BU=new CS(0,.5,1,5,1),BU.translate(0,-.5,0)),this.position.copy(e),this.line=new ku(x3,new Ya({color:r,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new dr(BU,new h({color:r,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(t),this.setLength(i,s,l)}setDirection(t){if(t.y>.99999)this.quaternion.set(0,0,0,1);else if(t.y<-.99999)this.quaternion.set(1,0,0,0);else{dG.set(t.z,0,-t.x).normalize();const e=Math.acos(t.y);this.quaternion.setFromAxisAngle(dG,e)}}setLength(t,e=.2*t,i=.2*e){this.line.scale.set(1,Math.max(1e-4,t-e),1),this.line.updateMatrix(),this.cone.scale.set(i,e,i),this.cone.position.y=t,this.cone.updateMatrix()}setColor(t){this.line.material.color.set(t),this.cone.material.color.set(t)}copy(t){return super.copy(t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}}class vre extends Op{constructor(t=1){const e=[0,0,0,t,0,0,0,0,0,0,t,0,0,0,0,0,0,t],r=new Yi;r.setAttribute("position",new Zt(e,3)),r.setAttribute("color",new Zt([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3)),super(r,new Ya({vertexColors:!0,toneMapped:!1})),this.type="AxesHelper"}setColors(t,e,i){const r=new vn,s=this.geometry.attributes.color.array;return r.set(t),r.toArray(s,0),r.toArray(s,3),r.set(e),r.toArray(s,6),r.toArray(s,9),r.set(i),r.toArray(s,12),r.toArray(s,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}}class Ug{constructor(){this.type="ShapePath",this.color=new vn,this.subPaths=[],this.currentPath=null}moveTo(t,e){return this.currentPath=new Xb,this.subPaths.push(this.currentPath),this.currentPath.moveTo(t,e),this}lineTo(t,e){return this.currentPath.lineTo(t,e),this}quadraticCurveTo(t,e,i,r){return this.currentPath.quadraticCurveTo(t,e,i,r),this}bezierCurveTo(t,e,i,r,s,l){return this.currentPath.bezierCurveTo(t,e,i,r,s,l),this}splineThru(t){return this.currentPath.splineThru(t),this}toShapes(t){function i(I,O){const R=O.length;let P=!1;for(let ee=R-1,J=0;JNumber.EPSILON){if(q<0&&(te=O[J],W=-W,ie=O[ee],q=-q),I.yie.y)continue;if(I.y===te.y){if(I.x===te.x)return!0}else{const ce=q*(I.x-te.x)-W*(I.y-te.y);if(0===ce)return!0;if(ce<0)continue;P=!P}}else{if(I.y!==te.y)continue;if(ie.x<=I.x&&I.x<=te.x||te.x<=I.x&&I.x<=ie.x)return!0}}return P}const r=Qh.isClockWise,s=this.subPaths;if(0===s.length)return[];let l,u,f;const p=[];if(1===s.length)return u=s[0],f=new Og,f.curves=u.curves,p.push(f),p;let m=!r(s[0].getPoints());m=t?!m:m;const _=[],b=[];let D,T,w=[],F=0;b[F]=void 0,w[F]=[];for(let I=0,O=s.length;I1){let I=!1,O=0;for(let R=0,P=b.length;R0&&!1===I&&(w=_)}for(let I=0,O=b.length;In.appSettings,uG=sn(ko,n=>n.screenshotToClipboardEnabled),RU=".png",hG="~",C3="_";function fG(n){return n.some(t=>t.selectedAs!==At.None)}function M3(n){return n.filter(t=>t.selectedAs!==At.None)}function dc(n){return n.some(t=>t.selectedAs===At.Reference)}function pG(n){return n.some(t=>t.selectedAs===At.Partial)}function E3(n,t){return n.fileMeta.fileChecksum===t.fileMeta.fileChecksum}let jh=(()=>{class n{static{this.VIEW_ANGLE=45}static{this.NEAR=50}static{this.FAR=2e5}init(e,i){this.camera=new Js(n.VIEW_ANGLE,e/i,n.NEAR,n.FAR),this.setPosition(new pe(0,300,1e3))}setPosition(e){this.camera.position.set(e.x,e.y,e.z),this.camera.lookAt(0,0,0)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var Dre=v(3205),AG=v.n(Dre);class mG{constructor(t,e,i){this.h=t,this.s=e,this.l=i}toHex(){return`#${AG().hsl.hex([this.h,this.s,this.l])}`}decreaseLightness(t){this.l-=t}getLightness(){return this.l}setLightness(t){this.l=t}toString(){return`hsl(${this.h}, ${this.s}%, ${this.l}%)`}}class Dr{static{this.colorToVector3Map=new Map}static{this.colorToVector3ArrayMap=new Map}static{this.hexToNumberMap=new Map}static getVector3(t){let e=this.colorToVector3Map.get(t);return void 0===e&&(e=Dr.colorToVector3(t),this.colorToVector3Map.set(t,e)),e}static getVector3Array(t){let e=this.colorToVector3ArrayMap.get(t);return void 0===e&&(e=Dr.colorToVector3Array(t),this.colorToVector3ArrayMap.set(t,e)),e}static getNumber(t){let e=this.hexToNumberMap.get(t);return void 0===e&&(e=Dr.convertHexToNumber(t),this.hexToNumberMap.set(t,e)),e}static convertHexToNumber(t){return+`0x${t.slice(1)}`}static convertNumberToHex(t){const e=t.toString(16);return`#${"0".repeat(6-e.length)}${e}`}static convertHexToRgba(t,e=1){return`rgba(${this.encodeHex(t).join(",")},${e})`}static convertHexToColorObject(t){const e=this.encodeHex(t);return new vn(...e)}static convertColorToHex(t){return[t.r,t.g,t.b].reduce((e,i)=>e+Math.round(i).toString(16).padStart(2,"0"),"#")}static hexToHSL(t){const e=AG().hex.hsl(t);return new mG(...e)}static colorToVector3(t){const e=Dr.convertHexToNumber(t);return new pe((e>>16&255)/255,(e>>8&255)/255,(255&e)/255)}static colorToVector3Array(t){const e=Dr.convertHexToNumber(t);return[(e>>16&255)/255,(e>>8&255)/255,(255&e)/255]}static vector3ToRGB(t){const e=Math.floor(255*t.x),i=Math.floor(255*t.y),r=Math.floor(255*t.z);return new vn(e,i,r)}static gradient(t,e,i){const r=this.convertHexToColorObject(t),l=this.convertHexToColorObject(e).sub(r),u=[];for(let f=0;f<=i;f++){const p=l.clone().multiplyScalar(1/i*f),m=r.clone().add(p);u[f]=this.convertColorToHex(m)}return u}static getImageDataUri(t){const e=this.encodeHex(t),i=this.encodeRGB(e[0],e[1],e[2]);return this.generatePixel(i)}static encodeHex(t){let e=t.slice(1);return 3===e.length&&(e=`${e[0]}${e[0]}${e[1]}${e[1]}${e[2]}${e[2]}`),[Number.parseInt(`${e[0]}${e[1]}`,16),Number.parseInt(`${e[2]}${e[3]}`,16),Number.parseInt(`${e[4]}${e[5]}`,16)]}static encodeRGB(t,e,i){return this.encodeTriplet(0,t,e)+this.encodeTriplet(i,255,255)}static encodeTriplet(t,e,i){const r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",l=(3&t)<<4|e>>4,u=(15&e)<<2|i>>6,f=63&i;return r.charAt(t>>2)+r.charAt(l)+r.charAt(u)+r.charAt(f)}static generatePixel(t){return`data:image/gif;base64,R0lGODlhAQABAPAA${t}/yH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==`}}function Bre(n){n.x0=Math.round(n.x0),n.y0=Math.round(n.y0),n.x1=Math.round(n.x1),n.y1=Math.round(n.y1)}function kre(n,t,e,i,r){for(var l,s=n.children,u=-1,f=s.length,p=n.value&&(i-t)/n.value;++uO&&(O=p),J=T*T*ee,(R=Math.max(O/J,J/I))>P){T-=p;break}P=R}l.push(f={value:T,dice:w1?i:1)},e}((1+Math.sqrt(5))/2);function FS(){return 0}function DS(n){return function(){return n}}function Lre(){var n=Nre,t=!1,e=1,i=1,r=[0],s=FS,l=FS,u=FS,f=FS,p=FS;function m(b){return b.x0=b.y0=0,b.x1=e,b.y1=i,b.eachBefore(_),r=[0],t&&b.eachBefore(Bre),b}function _(b){var w=r[b.depth],F=b.x0+w,D=b.y0+w,T=b.x1-w,I=b.y1-w;Tn.dynamicSettings,zw=sn($c,n=>n.searchPattern);function _G(n,t){return function Vre(n){return n.startsWith(`${Fa.rootPath}/`)}(t)?BS(n,t):t}function BS(n,t){const e=Fa.rootPath.length+1,i=t.length<=e?"":`/${t.slice(e)}`;return`${Fa.rootPath}/${n}${i}`}function PU(n,t){do{t=t.slice(0,t.lastIndexOf("/"));const e=n.get(t);if(e)return e}while(t!==Fa.rootPath&&t.length>0)}let bG=(()=>{class n{static{this.projectNameArray=[]}static{this.fileNameArray=[]}static{this.fileChecksumArray=[]}static{this.fileSizesSum=0}static calculateAggregationFile(e){const i=C(e.map(r=>r.file));if(1===i.length)return i[0];this.resetVariables();for(const r of i)this.projectNameArray.push(r.fileMeta.projectName.replace(" ","_")),this.fileNameArray.push(uu.withoutCCExtension(r.fileMeta.fileName).replace(" ","_")),this.fileChecksumArray.push(r.fileMeta.fileChecksum),this.fileSizesSum+=r.fileMeta.exportedFileSize;return this.getNewAggregatedMap(i)}static getNewAggregatedMap(e){const i={fileMeta:{projectName:`project_aggregation_of_${this.projectNameArray.join("_and_")}`,fileName:`file_aggregation_of_${this.fileNameArray.join("_and_")}`,fileChecksum:this.fileChecksumArray.join(";"),apiVersion:s1.f4.X,exportedFileSize:this.fileSizesSum},map:{name:Fa.rootName,type:ts.FOLDER,children:[],attributes:{},path:Fa.rootPath},settings:{fileSettings:{edges:[],blacklist:[],attributeTypes:{nodes:{},edges:{}},attributeDescriptors:{},markedPackages:[]}}};for(const r of e)i.map.children.push(this.extractNodeFromMap(r));return this.aggregateRootAttributes(i),i}static aggregateRootAttributes(e){for(const{attributes:i}of e.map.children)for(const r of Object.keys(i))void 0===e.map.attributes[r]&&(e.map.attributes[r]=0),e.map.attributes[r]+=i[r]}static extractNodeFromMap(e){const i={name:e.fileMeta.fileName,children:e.map.children,type:e.map.type};e.map.path&&(i.path=BS(e.fileMeta.fileName,e.map.path));for(const r of Object.keys(e.map))"name"!==r&&"path"!==r&&"children"!==r&&(i[r]=e.map[r]);return this.updatePathOfAllChildren(e.fileMeta.fileName,i.children),i}static updatePathOfAllChildren(e,i){for(const r of i)r.path&&(r.path=BS(e,r.path)),r.children&&this.updatePathOfAllChildren(e,r.children)}static resetVariables(){this.projectNameArray=[],this.fileNameArray=[],this.fileChecksumArray=[],this.fileSizesSum=0}}return n})();const kS=n=>n.fileSettings,Ru=sn(kS,n=>n.blacklist);var vG=Object.prototype.hasOwnProperty;function yG(n,t,e){for(e of n.keys())if(Vg(e,t))return e}function Vg(n,t){var e,i,r;if(n===t)return!0;if(n&&t&&(e=n.constructor)===t.constructor){if(e===Date)return n.getTime()===t.getTime();if(e===RegExp)return n.toString()===t.toString();if(e===Array){if((i=n.length)===t.length)for(;i--&&Vg(n[i],t[i]););return-1===i}if(e===Set){if(n.size!==t.size)return!1;for(i of n)if((r=i)&&"object"==typeof r&&!(r=yG(t,r))||!t.has(r))return!1;return!0}if(e===Map){if(n.size!==t.size)return!1;for(i of n)if((r=i[0])&&"object"==typeof r&&!(r=yG(t,r))||!Vg(i[1],t.get(r)))return!1;return!0}if(e===ArrayBuffer)n=new Uint8Array(n),t=new Uint8Array(t);else if(e===DataView){if((i=n.byteLength)===t.byteLength)for(;i--&&n.getInt8(i)===t.getInt8(i););return-1===i}if(ArrayBuffer.isView(n)){if((i=n.byteLength)===t.byteLength)for(;i--&&n[i]===t[i];);return-1===i}if(!e||"object"==typeof n){for(e in i=0,n)if(vG.call(n,e)&&++i&&!vG.call(t,e)||!(e in t)||!Vg(n[e],t[e]))return!1;return Object.keys(t).length===i}}return n!=n&&t!=t}function wG(n,t){return n.filter(e=>!Vg(e,t))}function xG(n,t){return[...n.slice(0,t),...n.slice(t+1)]}function CG(n,t){return MG(n,t)?n:[...n,C(t)]}function MG(n,t){return n.some(e=>Vg(e,t))}function EG(n,t){if(n===t||0===n.length&&0===t.length)return!0;if(dc(n)||dc(t))return function Gre(n,t){if(dc(n)!==dc(t))return!1;const e=n.find(l=>l.selectedAs===At.Reference),i=t.find(l=>l.selectedAs===At.Reference);if(e.file.fileMeta.fileChecksum!==i.file.fileMeta.fileChecksum)return!1;const r=n.find(l=>l.selectedAs===At.Comparison),s=t.find(l=>l.selectedAs===At.Comparison);return!(r?.file.fileMeta.fileChecksum!==s?.file.fileMeta.fileChecksum||!r!=!s)}(n,t);const e=n.filter(r=>r.selectedAs===At.Partial).map(r=>r.file.fileMeta.fileChecksum),i=t.filter(r=>r.selectedAs===At.Partial).map(r=>r.file.fileMeta.fileChecksum);return e.length===i.length&&function Qre(n,t){if(n.length!==t.length)return!1;let e=[...t];return n.every(i=>{const r=function zre(n,t){return n.findIndex(e=>Vg(e,t))}(e,i);return r>=0&&(e=xG(e,r),!0)})}(e,i)}const uc=ah(n=>sh(n,EG,EG))(wn,M3);function SG(n,t){const e=new Map,i=new Set;for(const{file:s}of n)for(const{data:l}of oo(s.map))i.add(l.path);for(const s of n)for(const l of s.file.settings.fileSettings.edges)if(jre(l,i,t))for(const u of Object.keys(l.attributes))qre($re(e,u),TG(n.length,s,l.fromNodeName),TG(n.length,s,l.toNodeName));const r=function Wre(n){const t=[];for(const[e,i]of n){const r=[];let s=0,l=Number.MAX_SAFE_INTEGER;for(const u of i.values()){const f=u.incoming+u.outgoing;r.push(f),f>s&&(s=f),f<=l&&(l=f)}t.push({name:e,values:r,maxValue:s,minValue:l})}return t}(e);return Pc(r),{edgeMetricData:r,nodeEdgeMetricsMap:e}}function TG(n,t,e){return n>1?`/root/${t.file.fileMeta.fileName}${e.replace("/root","")}`:e}function jre(n,t,e){return!(!t.has(n.fromNodeName)||!t.has(n.toNodeName)||cu(n.fromNodeName,e,"exclude")||cu(n.toNodeName,e,"exclude"))}function $re(n,t){let e=n.get(t);return e||(e=new Map,n.set(t,e)),e}function qre(n,t,e){const i=n.get(t);void 0===i?n.set(t,{incoming:0,outgoing:1}):i.outgoing+=1;const r=n.get(e);void 0===r?n.set(e,{incoming:1,outgoing:0}):r.incoming+=1}const ka=sn(uc,Ru,(n,t)=>({nodeMetricData:qo(n,t),...SG(n,t)})),Xre=sn(ka,n=>n.edgeMetricData.map(t=>t.name));class Kre{static createCodeMapFromHashMap(t){let e;for(const[i,r]of t)i===Fa.rootPath?e=r:PU(t,i).children.push(r);return e}static getDeltaFile(t,e){const i=this.getDeltaNodesByPath(t.map,e.map),r=this.createCodeMapFromHashMap(i),s=this.getFileMetaData(t,e);return this.getNewCCFileWithDeltas(r,s)}static getDeltaNodesByPath(t,e){const i=new Map,r=this.getReferenceNodesByPath(t);return this.addExistingAndNewNodesToDeltaMap(r,e,i),this.addDeletedNodesToDeltaMap(r,i),i}static getReferenceNodesByPath(t){const e=new Map;for(const{data:i}of oo(t))e.set(i.path,i);return e}static addExistingAndNewNodesToDeltaMap(t,e,i){for(const{data:r}of oo(e)){const s=t.get(r.path);if(s){(s.children||r.children)&&(s.children=[]);const{deltaList:u,differenceExists:f}=this.compareAttributeValues(s.attributes,r.attributes);s.deltas=u;const p=f?1:0;s.attributes=r.attributes,s.fileCount={added:0,removed:0,changed:p}}else r.children&&(r.children=[]),r.deltas={...r.attributes},r.fileCount={added:r.type===ts.FILE?1:0,removed:0,changed:0};const l=s??r;i.set(l.path,l),t.delete(l.path)}}static addDeletedNodesToDeltaMap(t,e){for(const i of t.values()){i.children&&(i.children=[]),i.deltas={},i.fileCount={added:0,removed:i.type===ts.FILE?1:0,changed:0};for(const[r,s]of Object.entries(i.attributes))i.deltas[r]=-s,i.attributes[r]=0;e.set(i.path,i)}}static compareAttributeValues(t,e){const i={};let r=!1;const s=new Set(Object.keys(t));for(const l of Object.keys(e))s.add(l);for(const l of s){const u=t[l]??0,f=e[l]??0;u!==f&&(r=!0),i[l]=f-u}return{deltaList:i,differenceExists:r}}static getFileMetaData(t,e){return{fileName:`delta_between_${uu.withoutCCExtension(t.fileMeta.fileName)}_and_${uu.withoutCCExtension(e.fileMeta.fileName)}`,fileChecksum:`${t.fileMeta.fileChecksum};${e.fileMeta.fileChecksum}`,apiVersion:s1.f4.X,projectName:`delta_between_${t.fileMeta.projectName}_and_${e.fileMeta.projectName}`,exportedFileSize:t.fileMeta.exportedFileSize+e.fileMeta.exportedFileSize}}static getNewCCFileWithDeltas(t,e){return{map:t,fileMeta:e,settings:{fileSettings:{edges:[],blacklist:[],attributeTypes:{nodes:{},edges:{}},attributeDescriptors:{},markedPackages:[]}}}}}const Zre=(n,t,e)=>{const i=new Map;for(const r of e){const s=n.get(r);s&&i.set(r,s.get(t.data.path))}return i},OU=sn(kS,n=>n.attributeTypes),IG=Object.freeze({unifiedMapNode:void 0,unifiedFileMeta:void 0}),Fd=sn(ka,uc,OU,Ru,Xre,(n,t,e,i,r)=>{if(!fG(t)||!n.nodeMetricData)return IG;const s=eoe(C(t));return s?.map?(du.decorateMap(s.map,n,i),((n,t,e)=>{if(0!==e.length)for(const i of oo(t))if(Ro(i)){const r=Zre(n,i,e);for(const[s,l]of r)i.data.edgeAttributes[s]=l}})(n.nodeEdgeMetricsMap,s.map,r),du.decorateParentNodesWithAggregatedAttributes(s.map,dc(t),e),{unifiedMapNode:s.map,unifiedFileMeta:s.fileMeta}):IG}),eoe=n=>{if(pG(n))return bG.calculateAggregationFile(n);if(dc(n)){const[t,e]=n;return e&&t.file.map.name!==e.file.map.name?bG.calculateAggregationFile(n):(n=>{if(2===n.length){let[t,e]=n;if(t.selectedAs!==At.Reference){const i=e;e=t,t=i}return Kre.getDeltaFile(t.file,e.file)}return n[0].file})(n)}},FG=sn(Fd,zw,(n,t)=>function Ure(n,t){if(0===(t=t.trimStart()).length||!n)return[];const e=WI(t),i=[];for(const{data:r}of oo(n))e.ignoredNodePaths.ignores(Bm(r.path))===e.condition&&i.push(r);return i}(n.unifiedMapNode,t)),NU=sn(FG,n=>new Set(n.map(t=>t.path))),LU={getColorByTrueGradient(n,t,e,i){const r=(t.from+t.to)/2,s=Dr.convertHexToColorObject(n.neutral);if(i<=r){const f=i/r,p=Dr.convertHexToColorObject(n.positive);return Dr.convertColorToHex((new vn).lerpColors(p,s,f))}const l=(i-r)/(e.maxValue-r),u=Dr.convertHexToColorObject(n.negative);return Dr.convertColorToHex((new vn).lerpColors(s,u,l))},getColorByFocusedGradient(n,t,e,i){const r=(t.from+t.to)/2,s=Dr.convertHexToColorObject(n.neutral);if(i=t.to&&t.to!==e.maxValue)return n.negative;if(i===r)return n.neutral;if(in.colorMetric),Qg=sn(ka,Hg,(n,t)=>{const e=n.nodeMetricData.find(i=>i.name===t);return{values:e?.values??[],minValue:e?.minValue??0,maxValue:e?.maxValue??0}}),Is=250;function RG(n,t,e,i){const r=U_(n.files);if(i)return 2;let s=t.attributes[n.dynamicSettings.heightMetric]||0;s*=r;const l=n.dynamicSettings.heightMetric;return 1===n.fileSettings.attributeDescriptors[l]?.direction?n.appSettings.invertHeight?s:e-s:n.appSettings.invertHeight?e-s:s}function PG(n,t,e,i){const r=e.deltas?.[i.dynamicSettings.heightMetric]?0:2;return Math.max(Math.abs(t*n),r)}function VU(n,t,e,i){return!(n.isExcluded||t&&e.appSettings.hideFlatBuildings&&i)&&(!(e.dynamicSettings.focusedNodePath.length>0)||n.path.startsWith(e.dynamicSettings.focusedNodePath[0]))}function T3(n,t,e,i,r){return n>e?new pe(i.x-r+n/4,i.y+t,i.z-r+e/2):new pe(i.x-r+n/2,i.y+t,i.z-r+e/4)}function OG(n,t,e,i,r){return n>e?new pe(i.x-r+.75*n,i.y+t,i.z-r+e/2):new pe(i.x-r+n/2,i.y+t,i.z-r+.75*e)}function I3(n,t){if(n.isFlattened)return!0;const e=NU(t);return e&&t.dynamicSettings.searchPattern?.length>0?0===e.size||function ooe(n,t){return!NU(t).has(n.path)}(n,t):!(!t.appSettings.showOnlyBuildingsWithEdges||!t.fileSettings.edges.some(i=>i.visible))&&function roe(n,t){return void 0===n.edgeAttributes[t.dynamicSettings.edgeMetric]||!t.fileSettings.edges.some(e=>n.path===e.fromNodeName||n.path===e.toNodeName)}(n,t)}function HU(n,{appSettings:t,dynamicSettings:e},i,r,s){const{mapColors:l}=t;if(r)return l.base;const u=n.attributes[e.colorMetric];if(void 0===u)return l.base;if(s)return l.flat;const{colorRange:f,colorMode:p}=e;return"unary"===e.colorMetric?l.positive:p===Gl.absolute?u0)for(const i of n.children)e+=kG(i,t);return e},buildNodeFrom:function ioe(n,t,e,i,r){const s=U_(i.files),{x0:l,x1:u,y0:f,y1:p,data:m}=n,_=Ro(n),b=I3(m,i),w=RG(i,m,e,b),F=m.path.split("/").length-2,D=_?PG(w,t,m,i)*s:2,T=u-l,I=p-f,O=2*n.depth,R=(m.deltas?.[i.dynamicSettings.heightMetric]??0)*t*s,P=D+(R<0?Math.abs(R):0);return{name:m.name,id:m.id,width:T,height:D,length:I,depth:F,mapNodeDepth:n.depth,x0:l,z0:O,y0:f,isLeaf:_,attributes:m.attributes,edgeAttributes:m.edgeAttributes,deltas:m.deltas,heightDelta:R,visible:VU(m,_,i,b),path:m.path,link:m.link,markingColor:l1(m,i.fileSettings.markedPackages),flat:b,color:HU(m,i,Qg(i),r,b),incomingEdgePoint:T3(T,P,I,new pe(l,O,f),Is),outgoingEdgePoint:OG(T,P,I,new pe(l,O,f),Is)}},isNodeFlat:I3,resolveHeightValue:PG,getHeightValue:RG,FOLDER_HEIGHT:2,MIN_BUILDING_HEIGHT:2,HEIGHT_VALUE_WHEN_METRIC_NOT_FOUND:0},NG=.4,LG=120,UG=95,soe=.035,aoe=.028,QU=3;function VG(n,t,e,i,r,s,l,u,f,p,m){const _=[];for(const b of n.children){const w=b.data.fixedPosition,F=QG(b.data,t,m,f);for(const D of F.treeMap.descendants()){const T=w.width/F.width,I=w.height/F.height;D.x0=(D.x0*T+w.left)*i,D.x1=(D.x1*T+w.left)*i,D.y0=(D.y0*I+w.top)*e,D.y1=(D.y1*I+w.top)*e,D.x0+=r,D.x1+=r,D.y0+=s,D.y1+=s;const O=Za.buildNodeFrom(D,l,u,t,p);if(_.push(O),HG(b.data)){Array.prototype.push.apply(_,VG(b,t,O.length/100,O.width/100,D.x0,D.y0,l,u,f,p,m));break}}}return _}function HG(n){return!!n.children[0]?.fixedPosition}function QG(n,t,e,i){const r=oo(n),s=zG(r),{enableFloorLabels:l,experimentalFeaturesEnabled:u}=t.appSettings,{margin:f}=t.dynamicSettings,p=f*NG*e;let m,_;void 0!==n.fixedPosition?(m=n.fixedPosition.width,_=n.fixedPosition.height):(m=2*Is,_=2*Is);let b=0;r.eachAfter(I=>{!Ro(I)&&l&&(0===I.depth&&(b+=LG),I.depth>0&&I.depth{if(!D&&null===I.parent&&(D=I),D&&l){if(0===I.depth)return Math.max((D.x1-D.x0)*soe,LG);if(I.depth>0&&I.depthfunction uoe(n,{dynamicSettings:t,appSettings:e,fileSettings:i},r,s){if(n.isExcluded)return 0;if(n.deltas&&function doe(n,t){return 0===n.attributes[t.areaMetric]&&n.deltas[t.heightMetric]<0}(n,t))return Math.abs(n.deltas[t.areaMetric]);if(Ro(n)&&n.attributes?.[t.areaMetric]){const l=t.areaMetric;return 1===i.attributeDescriptors[l]?.direction?e.invertArea?n.attributes[t.areaMetric]:r-n.attributes[t.areaMetric]:e.invertArea?r-n.attributes[t.areaMetric]:n.attributes[t.areaMetric]}return s?.5:0}(I,t,i,u)*e)),height:F,width:w}}function zG(n){let t=0,e=0;return n.each(({data:i})=>{(i.isExcluded||i.isFlattened)&&e++,t++}),2*Math.sqrt(t-e)}class RS{static getMapResolutionScaling(t){const{width:e}=document.getElementById("codeMapScene"),i=RS.getScalingThreshold(e);return t>i?i/t:1}static getScalingThreshold(t){return Math.min(4*t,10240)}static isLabelNode(t){return!t.isLeaf&&t.mapNodeDepthe&&(r=e,s=t),i.width=r,i.height=s;const l=i.getContext("2d");return l.fillStyle="white",l.textAlign="center",l.textBaseline="middle",{textCanvas:i,context:l}}writeLabelsOnCanvas(t,e,i){const{width:r,length:s}=this.rootNode;for(const l of e){let u=0===l.depth?Math.max(Math.floor(.03*r),120):Math.max(Math.floor(.023*r),95);u*=i,t.font=`${u}px Arial`;const f=Gw.getLabelAndSetContextFont(l,t,i,u);t.fillText(f.labelText,(s-l.y0-l.length/2)*i,(l.x0+l.width)*i-f.fontSize/2)}}drawLevelPlaneGeometry(t,e,i,r,s){const l=new $ne(t);l.wrapS=_b,l.wrapT=_b,l.repeat.x=-1,l.needsUpdate=!0,l.rotation=90*Math.PI/180;const u=new Iw(e,i),f=new h({side:1,map:l,transparent:!0}),p=new dr(u,f);p.rotateX(90*Math.PI/180),u.translate(e/2,i/2,-this.folderGeometryHeight*this.scaling.y*(r+1)-2),p.scale.set(this.scaling.x/s,this.scaling.z/s,1),p.position.set(-this.mapSize*this.scaling.x,0,-this.mapSize*this.scaling.z),this.floorLabelPlanes.push(p),this.floorLabelPlaneLevel.set(p,r)}static getLabelAndSetContextFont(t,e,i,r){const s=t.name,l=t.length*i;e.font=`${r}px Arial`;const u=e.measureText(s),f=Gw.getFontScaleFactor(l,u.width);return f<=.5?(r*=.5,r=Math.floor(Math.min(r,t.width*i)),e.font=`${r}px Arial`,{labelText:Gw.getFittingLabelText(e,l,s),fontSize:r}):(r=Math.floor(Math.min(r*f,t.width*i)),e.font=`${r}px Arial`,{labelText:s,fontSize:r})}static getFontScaleFactor(t,e){return e=e&&s>1;)s-=1,l=`${i.slice(0,s)}\u2026`;return l}}const zU=bn("SET_SELECTED_BUILDING_ID",{_as:"props",_p:void 0}),jw=sn(Fd,n=>{if(!n.unifiedMapNode)return new Map;const t=new Map([[n.unifiedMapNode.id,n.unifiedMapNode]]);for(const{data:e}of oo(n.unifiedMapNode))t.set(e.id,e);return t}),$w=sn(ko,n=>n.mapColors),Lp=bn("SET_MAP_COLORS",{_as:"props",_p:void 0}),F3=bn("INVERT_COLOR_RANGE"),D3=bn("INVERT_DELTA_COLORS"),Mr=n=>(t,e)=>void 0===e.value?n:e.value,B3=n=>(t,e)=>void 0===e.value?n:{...t,...e.value},$h={positive:"#69AE40",neutral:"#ddcc00",negative:"#820E0E",selected:"#EB8319",positiveDelta:"#64d051",negativeDelta:"#ff0E0E",base:"#666666",flat:"#AAAAAA",markingColors:["#FF1D8E","#1d8eff","#1DFFFF","#8eff1d","#8e1dff"],incomingEdge:"#00ffff",outgoingEdge:"#ff00ff",labelColorAndAlpha:{rgb:"#e0e0e0",alpha:.7}},hoe=Di($h,yn(Lp,B3($h)),yn(F3,n=>({...n,positive:n.negative,negative:n.positive})),yn(D3,n=>({...n,positiveDelta:n.negativeDelta,negativeDelta:n.positiveDelta})));class GU{constructor(){this.listeners={}}on(t,e){this.listeners[t]??=[],this.listeners[t].push(e)}emit(t,e){if(!this.listeners[t]?.length)return!1;for(const i of this.listeners[t])i(e);return!0}}let PS=(()=>{class n{constructor(){this.idToBuilding=new Map}setIdToBuilding(e){this.idToBuilding=new Map;for(const i of e)this.idToBuilding.set(i.node.id,i)}get(e){return this.idToBuilding.get(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();class k3{constructor(){this.isPass=!0,this.enabled=!0,this.needsSwap=!0,this.clear=!1,this.renderToScreen=!1}setSize(){}render(){console.error("THREE.Pass: .render() must be implemented in derived pass.")}dispose(){}}const foe=new Bk(-1,1,1,-1,0,1),Aoe=new class poe extends Yi{constructor(){super(),this.setAttribute("position",new Zt([-1,3,0,-1,-1,0,3,-1,0],3)),this.setAttribute("uv",new Zt([0,2,0,0,2,0],2))}};class moe{constructor(t){this._mesh=new dr(Aoe,t)}dispose(){this._mesh.geometry.dispose()}render(t){t.render(this._mesh,foe)}get material(){return this._mesh.material}set material(t){this._mesh.material=t}}class goe extends k3{constructor(t,e,i=null,r=null,s=null){super(),this.scene=t,this.camera=e,this.overrideMaterial=i,this.clearColor=r,this.clearAlpha=s,this.clear=!0,this.clearDepth=!1,this.needsSwap=!1,this._oldClearColor=new vn}render(t,e,i){const r=t.autoClear;let s,l;t.autoClear=!1,null!==this.overrideMaterial&&(l=this.scene.overrideMaterial,this.scene.overrideMaterial=this.overrideMaterial),null!==this.clearColor&&(t.getClearColor(this._oldClearColor),t.setClearColor(this.clearColor,t.getClearAlpha())),null!==this.clearAlpha&&(s=t.getClearAlpha(),t.setClearAlpha(this.clearAlpha)),1==this.clearDepth&&t.clearDepth(),t.setRenderTarget(this.renderToScreen?null:i),!0===this.clear&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),t.render(this.scene,this.camera),null!==this.clearColor&&t.setClearColor(this._oldClearColor),null!==this.clearAlpha&&t.setClearAlpha(s),null!==this.overrideMaterial&&(this.scene.overrideMaterial=l),t.autoClear=r}}const boe=class _oe{static isWebGL2Available(){try{const t=document.createElement("canvas");return!(!window.WebGL2RenderingContext||!t.getContext("webgl2"))}catch{return!1}}static isColorSpaceAvailable(t){try{const e=document.createElement("canvas"),i=window.WebGL2RenderingContext&&e.getContext("webgl2");return i.drawingBufferColorSpace=t,i.drawingBufferColorSpace===t}catch{return!1}}static getWebGL2ErrorMessage(){return this.getErrorMessage(2)}static getErrorMessage(t){const i={1:window.WebGLRenderingContext,2:window.WebGL2RenderingContext};let r='Your $0 does not seem to support
$1';const s=document.createElement("div");return s.id="webglmessage",s.style.fontFamily="monospace",s.style.fontSize="13px",s.style.fontWeight="normal",s.style.textAlign="center",s.style.background="#fff",s.style.color="#000",s.style.padding="1.5em",s.style.width="400px",s.style.margin="5em auto 0",r=r.replace("$0",i[t]?"graphics card":"browser"),r=r.replace("$1",{1:"WebGL",2:"WebGL 2"}[t]),s.innerHTML=r,s}static isWebGLAvailable(){console.warn("isWebGLAvailable() has been deprecated and will be removed in r178. Use isWebGL2Available() instead.");try{const t=document.createElement("canvas");return!(!window.WebGLRenderingContext||!t.getContext("webgl")&&!t.getContext("experimental-webgl"))}catch{return!1}}static getWebGLErrorMessage(){return console.warn("getWebGLErrorMessage() has been deprecated and will be removed in r178. Use getWebGL2ErrorMessage() instead."),this.getErrorMessage(1)}};class GG extends k3{constructor(t,e){super(),this.textureID=void 0!==e?e:"tDiffuse",t instanceof ac?(this.uniforms=t.uniforms,this.material=t):t&&(this.uniforms=S5.clone(t.uniforms),this.material=new ac({name:void 0!==t.name?t.name:"unspecified",defines:Object.assign({},t.defines),uniforms:this.uniforms,vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})),this.fsQuad=new moe(this.material)}render(t,e,i){this.uniforms[this.textureID]&&(this.uniforms[this.textureID].value=i.texture),this.fsQuad.material=this.material,this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(e),this.clear&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),this.fsQuad.render(t))}dispose(){this.material.dispose(),this.fsQuad.dispose()}}class jU extends k3{constructor(t,e){super(),this.scene=t,this.camera=e,this.clear=!0,this.needsSwap=!1,this.inverse=!1}render(t,e,i){const r=t.getContext(),s=t.state;let l,u;s.buffers.color.setMask(!1),s.buffers.depth.setMask(!1),s.buffers.color.setLocked(!0),s.buffers.depth.setLocked(!0),this.inverse?(l=0,u=1):(l=1,u=0),s.buffers.stencil.setTest(!0),s.buffers.stencil.setOp(r.REPLACE,r.REPLACE,r.REPLACE),s.buffers.stencil.setFunc(r.ALWAYS,l,4294967295),s.buffers.stencil.setClear(u),s.buffers.stencil.setLocked(!0),t.setRenderTarget(i),this.clear&&t.clear(),t.render(this.scene,this.camera),t.setRenderTarget(e),this.clear&&t.clear(),t.render(this.scene,this.camera),s.buffers.color.setLocked(!1),s.buffers.depth.setLocked(!1),s.buffers.color.setMask(!0),s.buffers.depth.setMask(!0),s.buffers.stencil.setLocked(!1),s.buffers.stencil.setFunc(r.EQUAL,1,4294967295),s.buffers.stencil.setOp(r.KEEP,r.KEEP,r.KEEP),s.buffers.stencil.setLocked(!0)}}class jG extends k3{constructor(){super(),this.needsSwap=!1}render(t){t.state.buffers.stencil.setLocked(!1),t.state.buffers.stencil.setTest(!1)}}const voe={name:"CopyShader",uniforms:{tDiffuse:{value:null},opacity:{value:1}},vertexShader:"\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvUv = uv;\n\t\t\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n\t\t}",fragmentShader:"\n\n\t\tuniform float opacity;\n\n\t\tuniform sampler2D tDiffuse;\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvec4 texel = texture2D( tDiffuse, vUv );\n\t\t\tgl_FragColor = opacity * texel;\n\n\n\t\t}"};class yoe{constructor(t,e){if(this.renderer=t,this._pixelRatio=t.getPixelRatio(),void 0===e){const i=t.getSize(new ft);this._width=i.width,this._height=i.height,(e=new oc(this._width*this._pixelRatio,this._height*this._pixelRatio,{type:pg})).texture.name="EffectComposer.rt1"}else this._width=e.width,this._height=e.height;this.renderTarget1=e,this.renderTarget2=e.clone(),this.renderTarget2.texture.name="EffectComposer.rt2",this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2,this.renderToScreen=!0,this.passes=[],this.copyPass=new GG(voe),this.copyPass.material.blending=0,this.clock=new $z}swapBuffers(){const t=this.readBuffer;this.readBuffer=this.writeBuffer,this.writeBuffer=t}addPass(t){this.passes.push(t),t.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}insertPass(t,e){this.passes.splice(e,0,t),t.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}removePass(t){const e=this.passes.indexOf(t);-1!==e&&this.passes.splice(e,1)}isLastEnabledPass(t){for(let e=t+1;en.isWhiteBackground);class woe{constructor(){this.vertexShader=v(889),this.fragmentShader=v(6655),this.uniforms={tDiffuse:{value:null},resolution:{value:new ft(1/1024,1/512)}}}}class wr{static{this.BACKGROUND_COLOR={white:16777215,normal:16053483}}static{this.CLEAR_COLOR=wr.BACKGROUND_COLOR.normal}static{this.CLEAR_ALPHA=1}static{this.RENDER_OPTIONS={antialias:!0,preserveDrawingBuffer:!0,alpha:!0}}static{this.enableFXAA=!1}static{this.setPixelRatio=!1}constructor(t,e){this.store=t,this.state=e,this.setBackgroundColorToState=i=>{wr.CLEAR_COLOR=i?wr.BACKGROUND_COLOR.white:wr.BACKGROUND_COLOR.normal,this.renderer?.setClearColor(wr.CLEAR_COLOR,wr.CLEAR_ALPHA)},this.initGL=(i,r)=>{if(this.setGLOptions(),this.renderer=new V5(wr.RENDER_OPTIONS),wr.setPixelRatio&&this.renderer.setPixelRatio(window.devicePixelRatio),wr.enableFXAA)if(boe.isWebGL2Available){const s=this.renderer.getDrawingBufferSize(new ft),l=new oc(s.width,s.height,{format:Da});this.composer=new $G(this.renderer,l)}else this.composer=new $G(this.renderer);this.renderer.setSize(i,r),this.renderer.domElement.id="codeMapScene",wr.enableFXAA&&this.initComposer()},this.setGLOptions=()=>{switch(this.state.getValue().appSettings.sharpnessMode){case gd.Standard:wr.RENDER_OPTIONS.antialias=!0,wr.enableFXAA=!1,wr.setPixelRatio=!1;break;case gd.PixelRatioNoAA:wr.RENDER_OPTIONS.antialias=!1,wr.enableFXAA=!1,wr.setPixelRatio=!0;break;case gd.PixelRatioFXAA:wr.RENDER_OPTIONS.antialias=!1,wr.enableFXAA=!0,wr.setPixelRatio=!0;break;case gd.PixelRatioAA:wr.RENDER_OPTIONS.antialias=!0,wr.enableFXAA=!1,wr.setPixelRatio=!0}},this.initComposer=()=>{const i=this.renderer.getPixelRatio();this.composer.setSize(window.innerWidth*i,window.innerHeight*i);const r=new goe(this.scene,this.camera);this.composer.addPass(r);const s=new GG(new woe);s.renderToScreen=!1,s.uniforms.resolution.value.x=1/(window.innerWidth*i),s.uniforms.resolution.value.y=1/(window.innerHeight*i),this.composer.addPass(s)},this.getInfo=()=>wr.enableFXAA?this.composer.getInfo():this.renderer.info.render,this.getMemoryInfo=()=>wr.enableFXAA?this.composer.getMemoryInfo():this.renderer.info.memory}init(t,e,i,r){this.scene=i,this.camera=r,this.initGL(t,e),this.store.select(qG).subscribe(this.setBackgroundColorToState)}render(){const{scene:t,camera:e,composer:i,renderer:r}=this;wr.enableFXAA?i?.render():r?.render(t,e)}static{this.\u0275fac=function(e){return new(e||wr)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:wr,factory:wr.\u0275fac,providedIn:"root"})}}let Dd=(()=>{class n{constructor(e,i,r,s){this.store=e,this.state=i,this.idToBuilding=r,this.threeRendererService=s,this.eventEmitter=new GU,this.selected=null,this.highlighted=[],this.constantHighlight=new Map,this.folderLabelColorHighlighted=Dr.convertHexToNumber("#FFFFFF"),this.folderLabelColorNotHighlighted=Dr.convertHexToNumber("#7A7777"),this.rayPoint=new pe(0,0,0),this.normedTransformVector=new pe(0,0,0),this.highlightedLabel=null,this.highlightedLineIndex=-1,this.highlightedLine=null,this.subscription=this.store.select($w).subscribe(l=>{this.folderLabelColorSelected=l.selected,this.numberSelectionColor=Dr.convertHexToNumber(this.folderLabelColorSelected)}),this.scene=new Nk,this.mapGeometry=new lc,this.lights=new lc,this.labels=new lc,this.floorLabelPlanes=new lc,this.edgeArrows=new lc,this.initLights(),this.scene.add(this.mapGeometry),this.scene.add(this.edgeArrows),this.scene.add(this.labels),this.scene.add(this.lights),this.scene.add(this.floorLabelPlanes)}ngOnDestroy(){this.subscription.unsubscribe()}initFloorLabels(e){this.floorLabelPlanes.clear();const{layoutAlgorithm:i,enableFloorLabels:r}=this.state.getValue().appSettings;if(i!==za.SquarifiedTreeMap||!r)return;const s=this.getRootNode(e);if(!s)return;const l=this.state.getValue().appSettings.scaling,u=this.state.getValue().appSettings.experimentalFeaturesEnabled,f=new pe(l.x,l.y,l.z);this.floorLabelDrawer=new Gw(this.mapMesh.getNodes(),s,Is,f,u);const p=this.floorLabelDrawer.draw(this.state.getValue());p.length>0&&(this.floorLabelPlanes.add(...p),this.scene.add(this.floorLabelPlanes))}getRootNode(e){return e.find(i=>0===i.id)}getConstantHighlight(){return this.constantHighlight}highlightBuildings(){const e=this.state.getValue();this.getMapMesh().highlightBuilding(this.highlighted,this.selected,e,this.constantHighlight),this.mapGeometry.children[0]&&this.highlightMaterial(this.mapGeometry.children[0].material),this.threeRendererService.render()}selectMaterial(e){e.find(({userData:r})=>r.id===this.selected.node.id)?.color.setHex(this.numberSelectionColor)}resetMaterial(e){const i=this.selected?this.selected.node.id:-1;for(const r of e)r.userData.id!==i&&r.color?.setHex(this.folderLabelColorHighlighted)}scaleHeight(){const e=this.state.getValue().appSettings.scaling;this.floorLabelDrawer?.translatePlaneCanvases(e),this.mapGeometry.scale.set(e.x,e.y,e.z),this.mapGeometry.position.set(-Is*e.x,0,-Is*e.z),this.mapMesh.setScale(e)}highlightMaterial(e){const i=new Set(this.highlighted.map(({node:s})=>s.id)),r=new Set;for(const{node:s}of this.constantHighlight.values())r.add(s.id);for(const s of e){const l=s.userData.id;this.selected&&l===this.selected.node.id?s.color.setHex(this.numberSelectionColor):i.has(l)||r.has(l)?s.color.setHex(this.folderLabelColorHighlighted):s.color?.setHex(this.folderLabelColorNotHighlighted)}}highlightSingleBuilding(e){this.highlighted=[],this.addBuildingToHighlightingList(e),this.highlightBuildings()}addBuildingToHighlightingList(e){this.highlighted.push(e)}clearHoverHighlight(){this.highlighted=[],this.highlightBuildings()}clearHighlight(){this.getMapMesh()&&(this.getMapMesh().clearHighlight(this.selected),this.highlighted=[],this.constantHighlight.clear(),this.mapGeometry.children[0]&&this.resetMaterial(this.mapGeometry.children[0].material))}selectBuilding(e){e.id!==this.selected?.id&&this.store.dispatch(zU({value:e.node.id})),this.getMapMesh().selectBuilding(e,this.folderLabelColorSelected),this.selected=e,this.highlightBuildings(),this.eventEmitter.emit("onBuildingSelected",{building:this.selected}),this.mapGeometry.children[0]&&this.selectMaterial(this.mapGeometry.children[0].material)}animateLabel(e,i,r){if(null!==e&&null!==i){this.resetLabel(),e.material&&(e.material.opacity=1),this.highlightedLineIndex=this.getHoveredLabelLineIndex(r,e),this.highlightedLine=r[this.highlightedLineIndex],this.rayPoint=new pe,this.rayPoint.subVectors(i.ray.origin,e.position);const s=Math.sqrt(this.rayPoint.x**2+this.rayPoint.y**2+this.rayPoint.z**2);this.normedTransformVector=new pe(this.rayPoint.x/s,this.rayPoint.y/s,this.rayPoint.z/s);const u=this.calculateMaxDistance(e,r,i.ray.origin);this.normedTransformVector.multiplyScalar(u),e.position.add(this.normedTransformVector),this.toggleLineAnimation(e),this.highlightedLabel=e}}resetLineHighlight(){this.highlightedLineIndex=-1,this.highlightedLine=null}resetLabel(){null!==this.highlightedLabel&&(this.highlightedLabel.position.sub(this.normedTransformVector),this.highlightedLabel.material.opacity=$h.labelColorAndAlpha.alpha,this.highlightedLine&&this.toggleLineAnimation(this.highlightedLabel),this.highlightedLabel=null)}getHoveredLabelLineIndex(e,i){const r=e.findIndex(({uuid:s})=>s===i.uuid);if(r>=0)return r+1}toggleLineAnimation(e){const i=new pe(e.position.x,e.position.y,e.position.z),s=[...this.highlightedLine.geometry.attributes.position.array],l=(new Yi).setFromPoints([new pe(s[0],s[1],s[2]),i]),u=new ku(l,this.highlightedLine.material);this.labels.children.splice(this.highlightedLineIndex,1,u)}getLabelForHoveredNode(e,i){for(let r=0;r=i.min[r]&&i.max[r]>=e.min[r])}getIntersectionDistanceFunction(e,i){return r=>{const s=this.normedTransformVector.clone();s.multiplyScalar(r),e.translate(s);const l=this.isOverlapping(i,e,"x")+this.isOverlapping(i,e,"y");return 2===l||1===l&&this.isOverlapping(i,e,"z")?r:0}}calculateMaxDistance(e,i,r){const s=(new Ss).setFromObject(e),l=new pe;s.getCenter(l);const u=r.distanceTo(l);let f=u/20;for(let p=0;p0&&this.clearHighlight()}clearSelection(){this.selected&&(this.getMapMesh().clearSelection(this.selected),this.store.dispatch(zU({value:null})),this.eventEmitter.emit("onBuildingDeselected")),this.highlighted.length>0&&this.highlightBuildings(),this.selected=null,this.mapGeometry.children[0]&&this.resetMaterial(this.mapGeometry.children[0].material)}initLights(){const e=new EU(7368816),i=new IS(14737632,1.5);i.position.set(50,10,8).normalize();const r=new IS(14737632,1.5);r.position.set(-50,10,-8).normalize(),this.lights.add(e),this.lights.add(i),this.lights.add(r)}setMapMesh(e,i){this.mapMesh=i,this.initFloorLabels(e),this.mapGeometry.children.length=0,this.mapGeometry.position.x=-Is,this.mapGeometry.position.y=0,this.mapGeometry.position.z=-Is,this.mapGeometry.add(this.mapMesh.getThreeMesh()),this.idToBuilding.setIdToBuilding(this.mapMesh.getMeshDescription().buildings)}getMapMesh(){return this.mapMesh}getSelectedBuilding(){return this.selected}getHighlightedBuilding(){return this.highlighted[0]}dispose(){this.mapMesh?.dispose()}subscribe(e,i){this.eventEmitter.on(e,r=>{i(r)})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(PS),o.KVO(wr))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function xoe(n,t){if(1&n){const e=o.RV6();o.j41(0,"cc-action-icon",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.makeScreenshotToClipboard())}),o.k0s()}if(2&n){const e=o.XpG();o.AVh("disabled",!e.isWriteToClipboardAllowed),o.FS9("title",e.TITLE_CLIPBOARD_BUTTON),o.Y8G("icon","fa fa-camera")}}function Coe(n,t){if(1&n){const e=o.RV6();o.j41(0,"cc-action-icon",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.makeScreenshotToFile())}),o.k0s()}if(2&n){const e=o.XpG();o.FS9("title",e.TITLE_FILE_BUTTON),o.Y8G("icon","fa fa-camera")}}let Moe=(()=>{class n{constructor(e,i,r,s,l){this.threeCameraService=e,this.threeSceneService=i,this.threeRendererService=r,this.store=s,this.state=l,this.SCREENSHOT_HOTKEY_TO_FILE="Ctrl+Alt+S",this.SCREENSHOT_HOTKEY_TO_CLIPBOARD="Ctrl+Alt+F",this.isScreenshotToClipboardEnabled$=this.store.select(uG)}ngOnInit(){this.isWriteToClipboardAllowed=function xre(){return"clipboard"in navigator&&"write"in navigator.clipboard}(),this.TITLE_CLIPBOARD_BUTTON=this.createTitleClipboardButton(),this.TITLE_FILE_BUTTON=this.createTitleFileButton(),Ed(this.SCREENSHOT_HOTKEY_TO_FILE,()=>{this.makeScreenshotToFile()}),Ed(this.SCREENSHOT_HOTKEY_TO_CLIPBOARD,()=>{this.makeScreenshotToClipboard()})}makeScreenshotToFile(){var e=this;return Mn(function*(){const i=e.threeRendererService.renderer,r=e.saveRenderSettings(i),s=yield e.buildScreenShotCanvas(i);e.downloadScreenshot(s,e.state.getValue().files),e.applyRenderSettings(i,r)})()}makeScreenshotToClipboard(){var e=this;return Mn(function*(){if(!e.isWriteToClipboardAllowed)return;const i=e.threeRendererService.renderer,r=e.saveRenderSettings(i),s=yield e.buildScreenShotCanvas(i),l=new Promise(f=>s.toBlob(f));e.applyRenderSettings(i,r);const u=yield l;yield function wre(n){return kU.apply(this,arguments)}(u)})()}downloadScreenshot(e,i){const r=e.toDataURL("image/png"),s=document.createElement("a");s.download=function Sre(n,t){const e=dc(n)?"delta":"",r=M3(n).map(u=>function Tre(n){return n.file.fileMeta.fileName.replace(/(.cc)?.json$/,"")}(u)),s=function Ire(n){return n.length<=3?n.join(C3):[n.at(0),hG,n.at(-1)].join(C3)}(r);return function Fre(n,t,e){const i=[t,n].filter(s=>s.length>0).join(C3),r=255-e.length-RU.length;return i.length<=r?[i,C3,e,RU].join(""):[i.slice(0,r-1),hG,e,RU].join("")}(s,e,t)}(i,"map"),s.href=r,document.body.appendChild(s),s.click(),s.remove()}saveRenderSettings(e){const i=e.getPixelRatio(),r=new vn;return e.getClearColor(r),{pixelRatio:i,clearColor:r}}applyRenderSettings(e,i){const{pixelRatio:r,clearColor:s}=i;e.setPixelRatio(r),e.setClearColor(s),e.render(this.threeSceneService.scene,this.threeCameraService.camera)}buildScreenShotCanvas(e){var i=this;return Mn(function*(){e.setPixelRatio(window.devicePixelRatio),e.setClearColor(new vn(0,0,0),0),e.render(i.threeSceneService.scene,i.threeCameraService.camera);const r=new Set(["cc-logo","cc-tool-bar","cc-view-cube","cc-ribbon-bar","cc-file-extension-bar","cc-attribute-side-bar","cc-loading-file-progess-spinner"]),s=new Set(["legend-panel-button"]),l=document.querySelector("body")?.offsetHeight,u=document.querySelector("cc-ribbon-bar")?.offsetHeight,f=document.querySelector("cc-tool-bar")?.offsetHeight,p=document.querySelector("cc-file-extension-bar")?.offsetHeight,m=u+f+p,_=yield fB()(document.querySelector("body"),{removeContainer:!0,backgroundColor:"#00",scrollY:-m,height:l-m,ignoreElements:b=>r.has(b.tagName.toLowerCase())||s.has(b.id)||"10000"===b.style.zIndex});return i.getCroppedCanvas(_)})()}getCroppedCanvas(e){const i=e.getContext("2d"),r=e.width,s=e.height,u=i.getImageData(0,0,r,s).data;let f=r,p=s,m=0,_=0;for(let F=0;F0&&(f=Math.min(f,F),m=Math.max(m,F),p=Math.min(p,D),_=Math.max(_,D));const b=document.createElement("canvas"),w=b.getContext("2d");return b.width=m-f+1,b.height=_-p+1,w.drawImage(e,f,p,b.width,b.height,0,0,b.width,b.height),b}createTitleClipboardButton(){return this.isWriteToClipboardAllowed?`Take a screenshot of the map with ${this.SCREENSHOT_HOTKEY_TO_CLIPBOARD} (copy to clipboard) or ${this.SCREENSHOT_HOTKEY_TO_FILE} (save as file)`:"Firefox does not support copying to clipboard"}createTitleFileButton(){return`Take a screenshot of the map with ${this.SCREENSHOT_HOTKEY_TO_FILE} (save as file) or ${this.SCREENSHOT_HOTKEY_TO_CLIPBOARD} (copy to clipboard)`}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(jh),o.rXU(Dd),o.rXU(wr),o.rXU(Yt),o.rXU(Vi))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-screenshot-button"]],standalone:!0,features:[o.aNF],decls:4,vars:6,consts:[[3,"icon","title","disabled"],[3,"icon","title"],[3,"click","icon","title"]],template:function(i,r){1&i&&(o.DNE(0,xoe,1,4,"cc-action-icon",0),o.nI1(1,"async"),o.DNE(2,Coe,1,2,"cc-action-icon",1),o.nI1(3,"async")),2&i&&(o.vxM(o.bMT(1,2,r.isScreenshotToClipboardEnabled$)?0:-1),o.R7$(2),o.vxM(o.bMT(3,4,r.isScreenshotToClipboardEnabled$)?-1:2))},dependencies:[pl,zn],encapsulation:2})}}return n})();function Eoe(n){return`\t\u2022 ${n.filePath} (${n.value})\n`}function Soe(n){return`${n.toUpperCase()}\n`}function Doe(n){return n.type===ts.FILE&&void 0!==n.attributes}function Boe(n,t,e){for(const[i,r]of Object.entries(n.attributes)){const s=t?.[i]?.direction,l={filePath:n.path,value:r};if(e.has(i)){const u=e.get(i);koe(u,l,s),e.set(i,u.slice(0,10))}else e.set(i,[l])}}function koe(n,t,e){const i=function Roe(n){return 1===n?(t,e)=>t.value-e.value:(t,e)=>e.value-t.value}(e),r=n.findIndex(s=>i(t,s)<0);-1===r?n.push(t):n.splice(r,0,t)}let Poe=(()=>{class n{constructor(e){this.state=e}getClipboardText(){const r=function Foe(n,t){const e=new Map;for(const{data:i}of oo(n))Doe(i)&&Boe(i,t,e);return e}(this.getUnifiedMapNode(),this.state.getValue().fileSettings.attributeDescriptors);return function Toe(n){let t="";for(const[e,i]of n.entries()){t+=Soe(e);for(const r of i)t+=Eoe(r)}return t}(r)}getUnifiedMapNode(){const{unifiedMapNode:e}=Fd(this.state.getValue());return e}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),Ooe=(()=>{class n{constructor(e){this.copyToClipboardService=e}copyNamesToClipBoard(){var e=this;return Mn(function*(){yield navigator.clipboard.writeText(e.copyToClipboardService.getClipboardText())})()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Poe))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-copy-to-clipboard-button"]],standalone:!0,features:[o.aNF],decls:1,vars:0,consts:[["icon","fa fa-clipboard","title","Copy filenames with highest metric values to clipboard",3,"click"]],template:function(i,r){1&i&&(o.j41(0,"cc-action-icon",0),o.bIt("click",function(){return r.copyNamesToClipBoard()}),o.k0s())},dependencies:[pl],encapsulation:2})}}return n})();const WG={type:"change"},$U={type:"start"},XG={type:"end"},R3=new Lh,KG=new Rg,Noe=Math.cos(70*Ib_DEG2RAD),na=new pe,hc=2*Math.PI,qU=1e-6;class WU extends yre{constructor(t,e=null){super(t,e),this.state=-1,this.enabled=!0,this.target=new pe,this.cursor=new pe,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minTargetRadius=0,this.maxTargetRadius=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"},this.mouseButtons={LEFT:0,MIDDLE:1,RIGHT:2},this.touches={ONE:0,TWO:2},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this._lastPosition=new pe,this._lastQuaternion=new Vs,this._lastTargetPosition=new pe,this._quat=(new Vs).setFromUnitVectors(t.up,new pe(0,1,0)),this._quatInverse=this._quat.clone().invert(),this._spherical=new eG,this._sphericalDelta=new eG,this._scale=1,this._panOffset=new pe,this._rotateStart=new ft,this._rotateEnd=new ft,this._rotateDelta=new ft,this._panStart=new ft,this._panEnd=new ft,this._panDelta=new ft,this._dollyStart=new ft,this._dollyEnd=new ft,this._dollyDelta=new ft,this._dollyDirection=new pe,this._mouse=new ft,this._performCursorZoom=!1,this._pointers=[],this._pointerPositions={},this._controlActive=!1,this._onPointerMove=Uoe.bind(this),this._onPointerDown=Loe.bind(this),this._onPointerUp=Voe.bind(this),this._onContextMenu=qoe.bind(this),this._onMouseWheel=zoe.bind(this),this._onKeyDown=Goe.bind(this),this._onTouchStart=joe.bind(this),this._onTouchMove=$oe.bind(this),this._onMouseDown=Hoe.bind(this),this._onMouseMove=Qoe.bind(this),this._interceptControlDown=Woe.bind(this),this._interceptControlUp=Xoe.bind(this),null!==this.domElement&&this.connect(),this.update()}connect(){this.domElement.addEventListener("pointerdown",this._onPointerDown),this.domElement.addEventListener("pointercancel",this._onPointerUp),this.domElement.addEventListener("contextmenu",this._onContextMenu),this.domElement.addEventListener("wheel",this._onMouseWheel,{passive:!1}),this.domElement.getRootNode().addEventListener("keydown",this._interceptControlDown,{passive:!0,capture:!0}),this.domElement.style.touchAction="none"}disconnect(){this.domElement.removeEventListener("pointerdown",this._onPointerDown),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.domElement.removeEventListener("pointercancel",this._onPointerUp),this.domElement.removeEventListener("wheel",this._onMouseWheel),this.domElement.removeEventListener("contextmenu",this._onContextMenu),this.stopListenToKeyEvents(),this.domElement.getRootNode().removeEventListener("keydown",this._interceptControlDown,{capture:!0}),this.domElement.style.touchAction="auto"}dispose(){this.disconnect()}getPolarAngle(){return this._spherical.phi}getAzimuthalAngle(){return this._spherical.theta}getDistance(){return this.object.position.distanceTo(this.target)}listenToKeyEvents(t){t.addEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=t}stopListenToKeyEvents(){null!==this._domElementKeyEvents&&(this._domElementKeyEvents.removeEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=null)}saveState(){this.target0.copy(this.target),this.position0.copy(this.object.position),this.zoom0=this.object.zoom}reset(){this.target.copy(this.target0),this.object.position.copy(this.position0),this.object.zoom=this.zoom0,this.object.updateProjectionMatrix(),this.dispatchEvent(WG),this.update(),this.state=-1}update(t=null){const e=this.object.position;na.copy(e).sub(this.target),na.applyQuaternion(this._quat),this._spherical.setFromVector3(na),this.autoRotate&&-1===this.state&&this._rotateLeft(this._getAutoRotationAngle(t)),this.enableDamping?(this._spherical.theta+=this._sphericalDelta.theta*this.dampingFactor,this._spherical.phi+=this._sphericalDelta.phi*this.dampingFactor):(this._spherical.theta+=this._sphericalDelta.theta,this._spherical.phi+=this._sphericalDelta.phi);let i=this.minAzimuthAngle,r=this.maxAzimuthAngle;isFinite(i)&&isFinite(r)&&(i<-Math.PI?i+=hc:i>Math.PI&&(i-=hc),r<-Math.PI?r+=hc:r>Math.PI&&(r-=hc),this._spherical.theta=i<=r?Math.max(i,Math.min(r,this._spherical.theta)):this._spherical.theta>(i+r)/2?Math.max(i,this._spherical.theta):Math.min(r,this._spherical.theta)),this._spherical.phi=Math.max(this.minPolarAngle,Math.min(this.maxPolarAngle,this._spherical.phi)),this._spherical.makeSafe(),!0===this.enableDamping?this.target.addScaledVector(this._panOffset,this.dampingFactor):this.target.add(this._panOffset),this.target.sub(this.cursor),this.target.clampLength(this.minTargetRadius,this.maxTargetRadius),this.target.add(this.cursor);let s=!1;if(this.zoomToCursor&&this._performCursorZoom||this.object.isOrthographicCamera)this._spherical.radius=this._clampDistance(this._spherical.radius);else{const l=this._spherical.radius;this._spherical.radius=this._clampDistance(this._spherical.radius*this._scale),s=l!=this._spherical.radius}if(na.setFromSpherical(this._spherical),na.applyQuaternion(this._quatInverse),e.copy(this.target).add(na),this.object.lookAt(this.target),!0===this.enableDamping?(this._sphericalDelta.theta*=1-this.dampingFactor,this._sphericalDelta.phi*=1-this.dampingFactor,this._panOffset.multiplyScalar(1-this.dampingFactor)):(this._sphericalDelta.set(0,0,0),this._panOffset.set(0,0,0)),this.zoomToCursor&&this._performCursorZoom){let l=null;if(this.object.isPerspectiveCamera){const u=na.length();l=this._clampDistance(u*this._scale);const f=u-l;this.object.position.addScaledVector(this._dollyDirection,f),this.object.updateMatrixWorld(),s=!!f}else if(this.object.isOrthographicCamera){const u=new pe(this._mouse.x,this._mouse.y,0);u.unproject(this.object);const f=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),this.object.updateProjectionMatrix(),s=f!==this.object.zoom;const p=new pe(this._mouse.x,this._mouse.y,0);p.unproject(this.object),this.object.position.sub(p).add(u),this.object.updateMatrixWorld(),l=na.length()}else console.warn("WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled."),this.zoomToCursor=!1;null!==l&&(this.screenSpacePanning?this.target.set(0,0,-1).transformDirection(this.object.matrix).multiplyScalar(l).add(this.object.position):(R3.origin.copy(this.object.position),R3.direction.set(0,0,-1).transformDirection(this.object.matrix),Math.abs(this.object.up.dot(R3.direction))qU||8*(1-this._lastQuaternion.dot(this.object.quaternion))>qU||this._lastTargetPosition.distanceToSquared(this.target)>qU)&&(this.dispatchEvent(WG),this._lastPosition.copy(this.object.position),this._lastQuaternion.copy(this.object.quaternion),this._lastTargetPosition.copy(this.target),!0)}_getAutoRotationAngle(t){return null!==t?hc/60*this.autoRotateSpeed*t:hc/60/60*this.autoRotateSpeed}_getZoomScale(t){const e=Math.abs(.01*t);return Math.pow(.95,this.zoomSpeed*e)}_rotateLeft(t){this._sphericalDelta.theta-=t}_rotateUp(t){this._sphericalDelta.phi-=t}_panLeft(t,e){na.setFromMatrixColumn(e,0),na.multiplyScalar(-t),this._panOffset.add(na)}_panUp(t,e){!0===this.screenSpacePanning?na.setFromMatrixColumn(e,1):(na.setFromMatrixColumn(e,0),na.crossVectors(this.object.up,na)),na.multiplyScalar(t),this._panOffset.add(na)}_pan(t,e){const i=this.domElement;if(this.object.isPerspectiveCamera){na.copy(this.object.position).sub(this.target);let s=na.length();s*=Math.tan(this.object.fov/2*Math.PI/180),this._panLeft(2*t*s/i.clientHeight,this.object.matrix),this._panUp(2*e*s/i.clientHeight,this.object.matrix)}else this.object.isOrthographicCamera?(this._panLeft(t*(this.object.right-this.object.left)/this.object.zoom/i.clientWidth,this.object.matrix),this._panUp(e*(this.object.top-this.object.bottom)/this.object.zoom/i.clientHeight,this.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),this.enablePan=!1)}_dollyOut(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale/=t:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_dollyIn(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale*=t:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_updateZoomParameters(t,e){if(!this.zoomToCursor)return;this._performCursorZoom=!0;const i=this.domElement.getBoundingClientRect(),s=e-i.top,u=i.height;this._mouse.x=(t-i.left)/i.width*2-1,this._mouse.y=-s/u*2+1,this._dollyDirection.set(this._mouse.x,this._mouse.y,1).unproject(this.object).sub(this.object.position).normalize()}_clampDistance(t){return Math.max(this.minDistance,Math.min(this.maxDistance,t))}_handleMouseDownRotate(t){this._rotateStart.set(t.clientX,t.clientY)}_handleMouseDownDolly(t){this._updateZoomParameters(t.clientX,t.clientX),this._dollyStart.set(t.clientX,t.clientY)}_handleMouseDownPan(t){this._panStart.set(t.clientX,t.clientY)}_handleMouseMoveRotate(t){this._rotateEnd.set(t.clientX,t.clientY),this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const e=this.domElement;this._rotateLeft(hc*this._rotateDelta.x/e.clientHeight),this._rotateUp(hc*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd),this.update()}_handleMouseMoveDolly(t){this._dollyEnd.set(t.clientX,t.clientY),this._dollyDelta.subVectors(this._dollyEnd,this._dollyStart),this._dollyDelta.y>0?this._dollyOut(this._getZoomScale(this._dollyDelta.y)):this._dollyDelta.y<0&&this._dollyIn(this._getZoomScale(this._dollyDelta.y)),this._dollyStart.copy(this._dollyEnd),this.update()}_handleMouseMovePan(t){this._panEnd.set(t.clientX,t.clientY),this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd),this.update()}_handleMouseWheel(t){this._updateZoomParameters(t.clientX,t.clientY),t.deltaY<0?this._dollyIn(this._getZoomScale(t.deltaY)):t.deltaY>0&&this._dollyOut(this._getZoomScale(t.deltaY)),this.update()}_handleKeyDown(t){let e=!1;switch(t.code){case this.keys.UP:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateUp(hc*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,this.keyPanSpeed),e=!0;break;case this.keys.BOTTOM:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateUp(-hc*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,-this.keyPanSpeed),e=!0;break;case this.keys.LEFT:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateLeft(hc*this.rotateSpeed/this.domElement.clientHeight):this._pan(this.keyPanSpeed,0),e=!0;break;case this.keys.RIGHT:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateLeft(-hc*this.rotateSpeed/this.domElement.clientHeight):this._pan(-this.keyPanSpeed,0),e=!0}e&&(t.preventDefault(),this.update())}_handleTouchStartRotate(t){if(1===this._pointers.length)this._rotateStart.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t);this._rotateStart.set(.5*(t.pageX+e.x),.5*(t.pageY+e.y))}}_handleTouchStartPan(t){if(1===this._pointers.length)this._panStart.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t);this._panStart.set(.5*(t.pageX+e.x),.5*(t.pageY+e.y))}}_handleTouchStartDolly(t){const e=this._getSecondPointerPosition(t),i=t.pageX-e.x,r=t.pageY-e.y,s=Math.sqrt(i*i+r*r);this._dollyStart.set(0,s)}_handleTouchStartDollyPan(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enablePan&&this._handleTouchStartPan(t)}_handleTouchStartDollyRotate(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enableRotate&&this._handleTouchStartRotate(t)}_handleTouchMoveRotate(t){if(1==this._pointers.length)this._rotateEnd.set(t.pageX,t.pageY);else{const i=this._getSecondPointerPosition(t);this._rotateEnd.set(.5*(t.pageX+i.x),.5*(t.pageY+i.y))}this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const e=this.domElement;this._rotateLeft(hc*this._rotateDelta.x/e.clientHeight),this._rotateUp(hc*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd)}_handleTouchMovePan(t){if(1===this._pointers.length)this._panEnd.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t);this._panEnd.set(.5*(t.pageX+e.x),.5*(t.pageY+e.y))}this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd)}_handleTouchMoveDolly(t){const e=this._getSecondPointerPosition(t),i=t.pageX-e.x,r=t.pageY-e.y,s=Math.sqrt(i*i+r*r);this._dollyEnd.set(0,s),this._dollyDelta.set(0,Math.pow(this._dollyEnd.y/this._dollyStart.y,this.zoomSpeed)),this._dollyOut(this._dollyDelta.y),this._dollyStart.copy(this._dollyEnd),this._updateZoomParameters(.5*(t.pageX+e.x),.5*(t.pageY+e.y))}_handleTouchMoveDollyPan(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enablePan&&this._handleTouchMovePan(t)}_handleTouchMoveDollyRotate(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enableRotate&&this._handleTouchMoveRotate(t)}_addPointer(t){this._pointers.push(t.pointerId)}_removePointer(t){delete this._pointerPositions[t.pointerId];for(let e=0;e>1|(21845&Go)<<1;LS[Go]=((65280&(zg=(61680&(zg=(52428&zg)>>2|(13107&zg)<<2))>>4|(3855&zg)<<4))>>8|(255&zg)<<8)>>1}var qh=function(n,t,e){for(var i=n.length,r=0,s=new Sl(t);r>f]=p}else for(u=new Sl(i),r=0;r>15-n[r]);return u},Gg=new vo(288);for(Go=0;Go<144;++Go)Gg[Go]=8;for(Go=144;Go<256;++Go)Gg[Go]=9;for(Go=256;Go<280;++Go)Gg[Go]=7;for(Go=280;Go<288;++Go)Gg[Go]=8;var US=new vo(32);for(Go=0;Go<32;++Go)US[Go]=5;var nj=qh(Gg,9,0),rj=qh(US,5,0),VS=function(n){return(n+7)/8|0},jg=function(n,t,e){return(null==t||t<0)&&(t=0),(null==e||e>n.length)&&(e=n.length),new vo(n.subarray(t,e))},sj=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],Nr=function(n,t,e){var i=new Error(t||sj[n]);if(i.code=n,Error.captureStackTrace&&Error.captureStackTrace(i,Nr),!e)throw i;return i},Wh=function(n,t,e){var i=t/8|0;n[i]|=e<<=7&t,n[i+1]|=e>>8},Kw=function(n,t,e){var i=t/8|0;n[i]|=e<<=7&t,n[i+1]|=e>>8,n[i+2]|=e>>16},U3=function(n,t){for(var e=[],i=0;ib&&(b=s[i].s);var w=new Sl(b+1),F=V3(e[m-1],w,0);if(F>t){i=0;var D=0,T=F-t,I=1<t))break;D+=I-(1<>=T;D>0;){var R=s[i].s;w[R]=0&&D;--i){var P=s[i].s;w[P]==t&&(--w[P],++D)}F=t}return{t:new vo(w),l:F}},V3=function(n,t,e){return-1==n.s?Math.max(V3(n.l,t,e+1),V3(n.r,t,e+1)):t[n.s]=e},YU=function(n){for(var t=n.length;t&&!n[--t];);for(var e=new Sl(++t),i=0,r=n[0],s=1,l=function(f){e[i++]=f},u=1;u<=t;++u)if(n[u]==r&&u!=t)++s;else{if(!r&&s>2){for(;s>138;s-=138)l(32754);s>2&&(l(s>10?s-11<<5|28690:s-3<<5|12305),s=0)}else if(s>3){for(l(r),--s;s>6;s-=6)l(8304);s>2&&(l(s-3<<5|8208),s=0)}for(;s--;)l(r);s=1,r=n[u]}return{c:e.subarray(0,i),n:t}},Yw=function(n,t){for(var e=0,i=0;i>8,n[r+2]=255^n[r],n[r+3]=255^n[r+1];for(var s=0;s4&&!q[NS[ke-1]];--ke);var Ce,Oe,Fe,ht,Ue=p+5<<3,de=Yw(r,Gg)+Yw(s,US)+l,ze=Yw(r,b)+Yw(s,D)+l+14+3*ke+Yw(te,q)+2*te[16]+3*te[17]+7*te[18];if(f>=0&&Ue<=de&&Ue<=ze)return ZU(t,m,n.subarray(f,f+p));if(Wh(t,m,1+(ze15&&(Wh(t,m,Kn[ie]>>5&127),m+=Kn[ie]>>12)}}else Ce=nj,Oe=Gg,Fe=rj,ht=US;for(ie=0;ie255){var Me;Kw(t,m,Ce[257+(Me=be>>18&31)]),m+=Oe[Me+257],Me>7&&(Wh(t,m,be>>23&31),m+=Ww[Me]);var Ae=31&be;Kw(t,m,Fe[Ae]),m+=ht[Ae],Ae>3&&(Kw(t,m,be>>5&8191),m+=Xw[Ae])}else Kw(t,m,Ce[be]),m+=Oe[be]}return Kw(t,m,Ce[256]),m+Oe[256]},aj=new OS([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),e8=new vo(0),cj=function(){for(var n=new Int32Array(256),t=0;t<256;++t){for(var e=t,i=9;--i;)e=(1&e&&-306674912)^e>>>1;n[t]=e}return n}(),H3=function(){var n=-1;return{p:function(t){for(var e=n,i=0;i>>8;n=e},d:function(){return~n}}},Q3=function(n,t,e,i,r){if(!r&&(r={l:1},t.dictionary)){var s=t.dictionary.subarray(-32768),l=new vo(s.length+n.length);l.set(s),l.set(n,s.length),n=l,r.w=s.length}return function(n,t,e,i,r,s){var l=s.z||n.length,u=new vo(i+l+5*(1+Math.ceil(l/7e3))+r),f=u.subarray(i,u.length-r),p=s.l,m=7&(s.r||0);if(t){m&&(f[0]=s.r>>3);for(var _=aj[t-1],b=_>>13,w=8191&_,F=(1<7e3||q>24576)&&(Ce>423||!p)){m=JU(n,f,0,P,ee,J,ie,q,ke,W-ke,m),q=te=ie=0,ke=W;for(var Oe=0;Oe<286;++Oe)ee[Oe]=0;for(Oe=0;Oe<30;++Oe)J[Oe]=0}var Fe=2,ht=0,Mt=w,Bt=de-ze&32767;if(Ce>2&&Ue==R(W-Bt))for(var rn=Math.min(b,Ce)-1,Kn=Math.min(32767,W),Me=Math.min(258,Ce);Bt<=Kn&&--Mt&&de!=ze;){if(n[W+Fe]==n[W+Fe-Bt]){for(var be=0;beFe){if(Fe=be,ht=Bt,be>rn)break;var Ae=Math.min(Bt,be-2),le=0;for(Oe=0;Oele&&(le=at,ze=dt)}}}Bt+=(de=ze)-(ze=D[de])&32767}if(ht){P[q++]=268435456|P3[Fe]<<18|KU[ht];var zt=31&P3[Fe],ue=31&KU[ht];ie+=Ww[zt]+Xw[ue],++ee[257+zt],++J[ue],ce=W+Fe,++te}else P[q++]=n[W],++ee[n[W]]}}for(W=Math.max(W,ce);W=l&&(f[m/8|0]=p,yt=l),m=ZU(f,m+1,n.subarray(W,yt))}s.i=l}return jg(u,0,i+VS(m)+r)}(n,null==t.level?6:t.level,null==t.mem?r.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(n.length)))):20:12+t.mem,e,i,r)},z3=function(n,t){var e={};for(var i in n)e[i]=n[i];for(var i in t)e[i]=t[i];return e},Ko=function(n,t,e){for(;e;++t)n[t]=e,e>>>=8};function j3(n,t){return Q3(n,t||{},0,0)}var l8=function(n,t,e,i){for(var r in n){var s=n[r],l=t+r,u=i;Array.isArray(s)&&(u=z3(i,s[1]),s=s[0]),s instanceof vo?e[l]=[s,u]:(e[l+="/"]=[new vo(0),u],l8(s,l,e,i))}},yj=typeof TextEncoder<"u"&&new TextEncoder,c8=typeof TextDecoder<"u"&&new TextDecoder;try{c8.decode(e8,{stream:!0})}catch{}function qg(n,t){if(t){for(var e=new vo(n.length),i=0;i>1)),l=0,u=function(m){s[l++]=m};for(i=0;is.length){var f=new vo(l+8+(r-i<<1));f.set(s),s=f}var p=n.charCodeAt(i);p<128||t?u(p):p<2048?(u(192|p>>6),u(128|63&p)):p>55295&&p<57344?(u(240|(p=65536+(1047552&p)|1023&n.charCodeAt(++i))>>18),u(128|p>>12&63),u(128|p>>6&63),u(128|63&p)):(u(224|p>>12),u(128|p>>6&63),u(128|63&p))}return jg(s,0,l)}var QS=function(n){var t=0;if(n)for(var e in n){var i=n[e].length;i>65535&&Nr(9),t+=i+4}return t},$3=function(n,t,e,i,r,s,l,u){var f=i.length,p=e.extra,m=u&&u.length,_=QS(p);Ko(n,t,null!=l?33639248:67324752),t+=4,null!=l&&(n[t++]=20,n[t++]=e.os),n[t]=20,t+=2,n[t++]=e.flag<<1|(s<0&&8),n[t++]=r&&8,n[t++]=255&e.compression,n[t++]=e.compression>>8;var b=new Date(null==e.mtime?Date.now():e.mtime),w=b.getFullYear()-1980;if((w<0||w>119)&&Nr(10),Ko(n,t,w<<25|b.getMonth()+1<<21|b.getDate()<<16|b.getHours()<<11|b.getMinutes()<<5|b.getSeconds()>>1),t+=4,-1!=s&&(Ko(n,t,e.crc),Ko(n,t+4,s<0?-s-2:s),Ko(n,t+8,e.size)),Ko(n,t+12,f),Ko(n,t+14,_),t+=16,null!=l&&(Ko(n,t,m),Ko(n,t+6,e.attrs),Ko(n,t+10,l),t+=14),n.set(i,t),t+=f,_)for(var F in p){var D=p[F],T=D.length;Ko(n,t,+F),Ko(n,t+2,T),n.set(D,t+4),t+=4+T}return m&&(n.set(u,t),t+=m),t};function Ase(n){return` \n \n \n \n \n \n`}function d8(){return(d8=Mn(function*(n){const{vertices:t,triangles:e,volumes:i}=function Mj(n){const t=[],e=[],i=[],r=new Map,s=new Map;for(const u of n.children)u8(u,t,e,r,1,s,i);return{vertices:t,triangles:e,volumes:i}}(n),r=function gse(n,t){const i=function bse(n){let t=" \n";for(const e of n)t+=` ${e}\n`;return t+=" \n",t}(n),r=function vse(n){let t=" \n";for(const e of n)t+=` ${e}\n`;return t+=" \n",t}(t);return'\n\n PrusaSlicer-2.7.2\n \n \n \n'+i+r+' \n \n \n \n\n'}(t,e),s=function fse(n){let t='\n\n \n \n';for(const e of n)t+=Ase(e);return t+=" \n\n",t}(i);return function dse(n,t){t||(t={});var e={},i=[];l8(n,"",e,t);var r=0,s=0;for(var l in e){var u=e[l],f=u[0],p=u[1],m=0==p.level?0:8,b=(_=qg(l)).length,w=p.comment,F=w&&qg(w),D=F&&F.length,T=QS(p.extra);b>65535&&Nr(11);var I=m?j3(f,p):f,O=I.length,R=H3();R.p(f),i.push(z3(p,{size:f.length,crc:R.d(),c:I,f:_,m:F,u:b!=l.length||F&&w.length!=D,o:r,compression:m})),r+=30+b+T+O,s+=76+2*(b+T)+(D||0)+O}for(var P=new vo(s+22),ee=r,J=s-r,te=0;te\n \n \n')},Metadata:{"Slic3r_PE_model.config":qg(s)},"[Content_Types].xml":qg('\n\n \n \n')},{comment:"created by CodeCharta"}).buffer})).apply(this,arguments)}function u8(n,t,e,i,r,s,l,u=void 0){if(!n.visible)return;for(const m of n.children){let _=n.matrix;u&&(_=u.clone().multiply(n.matrix)),u8(m,t,e,i,r,s,l,_)}const f=function Ej(n){const t=new Map;if(n.geometry.attributes.color)for(let e=0;el);t.set(i,r)}return t}(n),p=new Map;for(const[m,_]of f.entries()){const b=e.length;Sj(t,i,p,_,n,u),Tj(n.geometry,e,p,_),Ij(n,m,b,e.length-1,l,r,s),r++}}function Sj(n,t,e,i,r,s){const l=r.geometry.attributes.position;for(const u of i){const f=new pe(l.getX(u),l.getY(u),l.getZ(u));f.applyMatrix4(r.matrix),s&&f.applyMatrix4(s);const p=``;t.has(p)?e.set(u,t.get(p)):(n.push(p),t.set(p,n.length-1),e.set(u,n.length-1))}}function Tj(n,t,e,i){if(n.index){const r=n.index;for(let s=0;s`;t.push(p)}}}else for(let r=0;r`;t.push(s)}}function Ij(n,t,e,i,r,s,l){l.has(t)||l.set(t,l.size+1);const u=l.get(t);r.push({id:s,name:"Map"===n.name?`${n.name} 0x${t}`:n.name,color:t,extruder:u,firstTriangleId:e,lastTriangleId:i})}function h8(n,t){return(n instanceof ae?[n.getX(t),n.getY(t),n.getZ(t)]:[n[t],n[t+1],n[t+2]]).map(i=>Math.round(255*i).toString(16).padStart(2,"0")).join("")}"function"==typeof queueMicrotask?queueMicrotask:"function"==typeof setTimeout&&setTimeout;class f8{constructor(t){this.isFont=!0,this.type="Font",this.data=t}generateShapes(t,e=100){const i=[],r=function xse(n,t,e){const i=Array.from(n),r=t/e.resolution,s=(e.boundingBox.yMax-e.boundingBox.yMin+e.underlineThickness)*r,l=[];let u=0,f=0;for(let p=0;p{e.geometry=r});const i=new ac;return i.copy(t.defaultMaterial),i.polygonOffset=!0,i.polygonOffsetUnits=1,i.polygonOffsetFactor=.1,e.material=i,e.updateColor(t.numberOfColors),new Promise(r=>{r(e)})})()}changeSize(t){this.boundingBoxCalculated=!1,this.createBaseplateGeometryStrategy.create(t).then(e=>{this.geometry=e})}}class ov extends Ou{constructor(t,e,i=1,r=!0){super(t,e),this.minWidth=i,this.manualVisibility=r}setManualVisibility(t){this.manualVisibility=t,this.updateVisibility()}setCurrentWidth(t){this.currentWidth=t,this.updateVisibility()}updateVisibility(){this.visible=this.manualVisibility&&this.visibleBecauseOfColor&&(!this.currentWidth||this.currentWidth>=this.minWidth)}updateColor(t){this.visibleBecauseOfColor=this.colorChangeStrategy.execute(t,this);for(const e of this.children)e instanceof Ou&&e.updateColor(t);this.updateVisibility()}}class fc{execute(t,e){if(t<=1)return!1;let i;return i=t<4?[1,1,1]:4===t?[1,1,0]:[1,1,1],e.material.color.setRGB(i[0],i[1],i[2]),!0}}class Tse extends ov{constructor(){super("Map",new fc,1,!1)}init(t){var e=this;return Mn(function*(){e.material=t.originalMapMesh.clone().material,e.originalColors=t.originalMapMesh.geometry.attributes.color;const i=t.originalMapMesh.geometry.clone();return i.computeBoundingBox(),i.rotateX(Math.PI/2),e.updateMapGeometry(t,i),i.computeBoundingBox(),i.rotateZ(-Math.PI/2),e.geometry=i,e})()}updateMapGeometry(t,e){const i=t.width-2*t.mapSideOffset,s=i/e.boundingBox.max.x;return e.scale(s,s,s),e.translate(-i/2,i/2,0),this.updateMapColors(this.originalColors,e,t.numberOfColors),e}updateMapColors(t,e,i){const r=[];for(let s=0;s.75&&u>.75?p=i<4?[1,1,1]:[1,1,0]:l>.45&&u<.1?p=i<4?[1,1,1]:[1,0,0]:l<5&&u>.6?p=i<4?[1,1,1]:[0,1,0]:(console.error("Unknown color"),p=[1,1,1]),r.push(...p)}e.setAttribute("color",new Zt(r,3))}changeSize(t,e){var i=this;return Mn(function*(){const r=(t.width-2*t.mapSideOffset)/(e-2*t.mapSideOffset);i.geometry.scale(r,r,r)})()}updateColor(t){this.updateMapColors(this.originalColors,this.geometry,t)}}const Ise=ic;class p8 extends cc{constructor(t){super(t),this.defaultDPI=90,this.defaultUnit="px"}load(t,e,i,r){const s=this,l=new Gh(s.manager);l.setPath(s.path),l.setRequestHeader(s.requestHeader),l.setWithCredentials(s.withCredentials),l.load(t,function(u){try{e(s.parse(u))}catch(f){r?r(f):console.error(f),s.manager.itemError(t)}},i,r)}parse(t){const e=this;function l(Me,be,Ae,le,dt,Ot,at,zt){if(0==be||0==Ae)return void Me.lineTo(zt.x,zt.y);le=le*Math.PI/180,be=Math.abs(be),Ae=Math.abs(Ae);const ue=(at.x-zt.x)/2,yt=(at.y-zt.y)/2,Ze=Math.cos(le)*ue+Math.sin(le)*yt,Ct=-Math.sin(le)*ue+Math.cos(le)*yt;let _t=be*be,It=Ae*Ae;const Pe=Ze*Ze,Se=Ct*Ct,_e=Pe/_t+Se/It;if(_e>1){const hn=Math.sqrt(_e);_t=(be*=hn)*be,It=(Ae*=hn)*Ae}const oe=_t*Se+It*Pe;let Ht=Math.sqrt(Math.max(0,(_t*It-oe)/oe));dt===Ot&&(Ht=-Ht);const Ut=Ht*be*Ct/Ae,jt=-Ht*Ae*Ze/be,Ti=Math.cos(le)*Ut-Math.sin(le)*jt+(at.x+zt.x)/2,Dn=Math.sin(le)*Ut+Math.cos(le)*jt+(at.y+zt.y)/2,Yn=u(1,0,(Ze-Ut)/be,(Ct-jt)/Ae),or=u((Ze-Ut)/be,(Ct-jt)/Ae,(-Ze-Ut)/be,(-Ct-jt)/Ae)%(2*Math.PI);Me.currentPath.absellipse(Ti,Dn,be,Ae,Yn,Yn+or,0===Ot,le)}function u(Me,be,Ae,le){const dt=Me*Ae+be*le,Ot=Math.sqrt(Me*Me+be*be)*Math.sqrt(Ae*Ae+le*le);let at=Math.acos(Math.max(-1,Math.min(1,dt/Ot)));return Me*le-be*Ae<0&&(at=-at),at}function F(Me,be){be=Object.assign({},be);let Ae={};if(Me.hasAttribute("class")){const at=Me.getAttribute("class").split(/\s/).filter(Boolean).map(zt=>zt.trim());for(let zt=0;ztNumber.EPSILON}function W(Me){const be=Me.elements;return Math.sqrt(be[0]*be[0]+be[1]*be[1])}function q(Me){const be=Me.elements;return Math.sqrt(be[3]*be[3]+be[4]*be[4])}const ke=[],Ue={},de=[],ze=new zi,Ce=new zi,Oe=new zi,Fe=new zi,ht=new ft,Mt=new pe,Bt=new zi,rn=(new DOMParser).parseFromString(t,"image/svg+xml");return function i(Me,be){if(1!==Me.nodeType)return;const Ae=function P(Me){if(!(Me.hasAttribute("transform")||"use"===Me.nodeName&&(Me.hasAttribute("x")||Me.hasAttribute("y"))))return null;const be=function ee(Me){const be=new zi,Ae=ze;if("use"===Me.nodeName&&(Me.hasAttribute("x")||Me.hasAttribute("y"))){const le=R(Me.getAttribute("x")),dt=R(Me.getAttribute("y"));be.translate(le,dt)}if(Me.hasAttribute("transform")){const le=Me.getAttribute("transform").split(")");for(let dt=le.length-1;dt>=0;dt--){const Ot=le[dt].trim();if(""===Ot)continue;const at=Ot.indexOf("(");if(at>0&&at=1){let Ct=0;yt.length>=2&&(Ct=yt[1]),Ae.translate(yt[0],Ct)}break;case"rotate":if(yt.length>=1){let Ze=0,Ct=0,_t=0;Ze=yt[0]*Math.PI/180,yt.length>=3&&(Ct=yt[1],_t=yt[2]),Ce.makeTranslation(-Ct,-_t),Oe.makeRotation(Ze),Fe.multiplyMatrices(Oe,Ce),Ce.makeTranslation(Ct,_t),Ae.multiplyMatrices(Ce,Fe)}break;case"scale":if(yt.length>=1){const Ze=yt[0];let Ct=Ze;yt.length>=2&&(Ct=yt[1]),Ae.scale(Ze,Ct)}break;case"skewX":1===yt.length&&Ae.set(1,Math.tan(yt[0]*Math.PI/180),0,0,1,0,0,0,1);break;case"skewY":1===yt.length&&Ae.set(1,0,0,Math.tan(yt[0]*Math.PI/180),1,0,0,0,1);break;case"matrix":6===yt.length&&Ae.set(yt[0],yt[2],yt[4],yt[1],yt[3],yt[5],0,0,1)}}be.premultiply(Ae)}}return be}(Me);return de.length>0&&be.premultiply(de[de.length-1]),Bt.copy(be),de.push(be),be}(Me);let le=!1,dt=null;switch(Me.nodeName){case"svg":case"g":be=F(Me,be);break;case"style":!function s(Me){if(Me.sheet&&Me.sheet.cssRules&&Me.sheet.cssRules.length)for(let be=0;bedt.trim());for(let dt=0;dt""!==at));Ue[le[dt]]=Object.assign(Ue[le[dt]]||{},Ot)}}}(Me);break;case"path":be=F(Me,be),Me.hasAttribute("d")&&(dt=function r(Me){const be=new Ug,Ae=new ft,le=new ft,dt=new ft;let Ot=!0,at=!1;const zt=Me.getAttribute("d");if(""===zt||"none"===zt)return null;const ue=zt.match(/[a-df-z][^a-df-z]*/gi);for(let yt=0,Ze=ue.length;yt0&&(Ae.copy(dt),be.currentPath.currentPoint.copy(Ae),Ot=!0);break;default:console.warn(Ct)}at=!1}return be}(Me));break;case"rect":be=F(Me,be),dt=function f(Me){const be=R(Me.getAttribute("x")||0),Ae=R(Me.getAttribute("y")||0),le=R(Me.getAttribute("rx")||Me.getAttribute("ry")||0),dt=R(Me.getAttribute("ry")||Me.getAttribute("rx")||0),Ot=R(Me.getAttribute("width")),at=R(Me.getAttribute("height")),zt=.448084975506,ue=new Ug;return ue.moveTo(be+le,Ae),ue.lineTo(be+Ot-le,Ae),(0!==le||0!==dt)&&ue.bezierCurveTo(be+Ot-le*zt,Ae,be+Ot,Ae+dt*zt,be+Ot,Ae+dt),ue.lineTo(be+Ot,Ae+at-dt),(0!==le||0!==dt)&&ue.bezierCurveTo(be+Ot,Ae+at-dt*zt,be+Ot-le*zt,Ae+at,be+Ot-le,Ae+at),ue.lineTo(be+le,Ae+at),(0!==le||0!==dt)&&ue.bezierCurveTo(be+le*zt,Ae+at,be,Ae+at-dt*zt,be,Ae+at-dt),ue.lineTo(be,Ae+dt),(0!==le||0!==dt)&&ue.bezierCurveTo(be,Ae+dt*zt,be+le*zt,Ae,be+le,Ae),ue}(Me);break;case"polygon":be=F(Me,be),dt=function p(Me){const le=new Ug;let dt=0;return Me.getAttribute("points").replace(/([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g,function be(Ot,at,zt){const ue=R(at),yt=R(zt);0===dt?le.moveTo(ue,yt):le.lineTo(ue,yt),dt++}),le.currentPath.autoClose=!0,le}(Me);break;case"polyline":be=F(Me,be),dt=function m(Me){const le=new Ug;let dt=0;return Me.getAttribute("points").replace(/([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g,function be(Ot,at,zt){const ue=R(at),yt=R(zt);0===dt?le.moveTo(ue,yt):le.lineTo(ue,yt),dt++}),le.currentPath.autoClose=!1,le}(Me);break;case"circle":be=F(Me,be),dt=function _(Me){const be=R(Me.getAttribute("cx")||0),Ae=R(Me.getAttribute("cy")||0),le=R(Me.getAttribute("r")||0),dt=new Xb;dt.absarc(be,Ae,le,0,2*Math.PI);const Ot=new Ug;return Ot.subPaths.push(dt),Ot}(Me);break;case"ellipse":be=F(Me,be),dt=function b(Me){const be=R(Me.getAttribute("cx")||0),Ae=R(Me.getAttribute("cy")||0),le=R(Me.getAttribute("rx")||0),dt=R(Me.getAttribute("ry")||0),Ot=new Xb;Ot.absellipse(be,Ae,le,dt,0,2*Math.PI);const at=new Ug;return at.subPaths.push(Ot),at}(Me);break;case"line":be=F(Me,be),dt=function w(Me){const be=R(Me.getAttribute("x1")||0),Ae=R(Me.getAttribute("y1")||0),le=R(Me.getAttribute("x2")||0),dt=R(Me.getAttribute("y2")||0),Ot=new Ug;return Ot.moveTo(be,Ae),Ot.lineTo(le,dt),Ot.currentPath.autoClose=!1,Ot}(Me);break;case"defs":le=!0;break;case"use":be=F(Me,be);const zt=(Me.getAttributeNS("http://www.w3.org/1999/xlink","href")||"").substring(1),ue=Me.viewportElement.getElementById(zt);ue?i(ue,be):console.warn("SVGLoader: 'use node' references non-existent node id: "+zt)}dt&&(void 0!==be.fill&&"none"!==be.fill&&dt.color.setStyle(be.fill,Ise),function J(Me,be){function Ae(at){Mt.set(at.x,at.y,1).applyMatrix3(be),at.set(Mt.x,Mt.y)}function le(at){const zt=at.xRadius,ue=at.yRadius,yt=Math.cos(at.aRotation),Ze=Math.sin(at.aRotation),Ct=new pe(zt*yt,zt*Ze,0),_t=new pe(-ue*Ze,ue*yt,0),It=Ct.applyMatrix3(be),Pe=_t.applyMatrix3(be),Se=ze.set(It.x,Pe.x,0,It.y,Pe.y,0,0,0,1),_e=Ce.copy(Se).invert(),Ht=Oe.copy(_e).transpose().multiply(_e).elements,Ut=function ce(Me,be,Ae){let le,dt,Ot,at,zt;const ue=Me+Ae,yt=Me-Ae,Ze=Math.sqrt(yt*yt+4*be*be);return ue>0?(le=.5*(ue+Ze),zt=1/le,dt=Me*zt*Ae-be*zt*be):ue<0?dt=.5*(ue-Ze):(le=.5*Ze,dt=-.5*Ze),Ot=yt>0?yt+Ze:yt-Ze,Math.abs(Ot)>2*Math.abs(be)?(zt=-2*be/Ot,at=1/Math.sqrt(1+zt*zt),Ot=zt*at):0===Math.abs(be)?(Ot=1,at=0):(zt=-.5*Ot/be,Ot=1/Math.sqrt(1+zt*zt),at=zt*Ot),yt>0&&(zt=Ot,Ot=-at,at=zt),{rt1:le,rt2:dt,cs:Ot,sn:at}}(Ht[0],Ht[1],Ht[4]),jt=Math.sqrt(Ut.rt1),Ti=Math.sqrt(Ut.rt2);if(at.xRadius=1/jt,at.yRadius=1/Ti,at.aRotation=Math.atan2(Ut.sn,Ut.cs),!((at.aEndAngle-at.aStartAngle)%(2*Math.PI){const{x:tr,y:di}=new pe(Math.cos(Br),Math.sin(Br),0).applyMatrix3(hn);return Math.atan2(di,tr)};at.aStartAngle=Zn(at.aStartAngle),at.aEndAngle=Zn(at.aEndAngle),te(be)&&(at.aClockwise=!at.aClockwise)}}function dt(at){const zt=W(be),ue=q(be);at.xRadius*=zt,at.yRadius*=ue;const yt=zt>Number.EPSILON?Math.atan2(be.elements[1],be.elements[0]):Math.atan2(-be.elements[3],be.elements[4]);at.aRotation+=yt,te(be)&&(at.aStartAngle*=-1,at.aEndAngle*=-1,at.aClockwise=!at.aClockwise)}const Ot=Me.subPaths;for(let at=0,zt=Ot.length;at0?Bt.copy(de[de.length-1]):Bt.identity())}(rn.documentElement,{fill:"#000",fillOpacity:1,strokeOpacity:1,strokeWidth:1,strokeLineJoin:"miter",strokeLineCap:"butt",strokeMiterLimit:4}),{paths:ke,xml:rn.documentElement}}static createShapes(t){const r={loc:0,t:0};function s(D,T,I,O){const R=D.x,P=T.x,ee=I.x,J=O.x,te=D.y,ie=T.y,W=I.y,q=O.y,ce=(J-ee)*(te-W)-(q-W)*(R-ee),Ue=(q-W)*(P-R)-(J-ee)*(ie-te),de=ce/Ue,ze=((P-R)*(te-W)-(ie-te)*(R-ee))/Ue;if(0===Ue&&0!==ce||de<=0||de>=1||ze<0||ze>1)return null;if(0===ce&&0===Ue){for(let Ce=0;Ce<2;Ce++){if(l(0===Ce?I:O,D,T),0==r.loc){const Oe=0===Ce?I:O;return{x:Oe.x,y:Oe.y,t:r.t}}if(2==r.loc)return{x:+(R+r.t*(P-R)).toPrecision(10),y:+(te+r.t*(ie-te)).toPrecision(10),t:r.t}}return null}for(let Fe=0;Fe<2;Fe++)if(l(0===Fe?I:O,D,T),0==r.loc){const ht=0===Fe?I:O;return{x:ht.x,y:ht.y,t:r.t}}return{x:+(R+de*(P-R)).toPrecision(10),y:+(te+de*(ie-te)).toPrecision(10),t:de}}function l(D,T,I){const O=I.x-T.x,R=I.y-T.y,P=D.x-T.x,ee=D.y-T.y,J=O*ee-P*R;if(D.x===T.x&&D.y===T.y)return r.loc=0,void(r.t=0);if(D.x===I.x&&D.y===I.y)return r.loc=1,void(r.t=1);if(J<-Number.EPSILON)return void(r.loc=3);if(J>Number.EPSILON)return void(r.loc=4);if(O*P<0||R*ee<0)return void(r.loc=5);if(Math.sqrt(O*O+R*R){const T=D.getPoints();let I=-999999999,O=999999999,R=-999999999,P=999999999;for(let ee=0;eeI&&(I=J.y),J.yR&&(R=J.x),J.x=P&&(m=P-1),{curves:D.curves,points:T,isCW:Qh.isClockWise(T),identifier:-1,boundingBox:new mre(new ft(P,O),new ft(R,I))}});b=b.filter(D=>D.points.length>1);for(let D=0;Dfunction p(D,T,I,O,R){(null==R||""===R)&&(R="nonzero");const P=new ft;D.boundingBox.getCenter(P);const J=function f(D,T,I){const O=new ft;T.getCenter(O);const R=[];return I.forEach(P=>{P.boundingBox.containsPoint(O)&&function u(D,T){const I=[],O=[];for(let R=1;Rq.t<=W.t+Number.EPSILON&&q.t>=W.t-Number.EPSILON)&&(I.push(W),O.push(new ft(W.x,W.y)))}}return O}(D,P.points).forEach(J=>{R.push({identifier:P.identifier,isCW:P.isCW,point:J})})}),R.sort((P,ee)=>P.point.x-ee.point.x),R}([new ft(I,P.y),new ft(O,P.y)],D.boundingBox,T);J.sort((ke,Ue)=>ke.point.x-Ue.point.x);const te=[],ie=[];J.forEach(ke=>{ke.identifier===D.identifier?te.push(ke):ie.push(ke)});const W=te[0].point.x,q=[];let ce=0;for(;ce0&&q[q.length-1]===ie[ce].identifier?q.pop():q.push(ie[ce].identifier),ce++;if(q.push(D.identifier),"evenodd"===R)return{identifier:D.identifier,isHole:q.length%2==0,for:q[q.length-2]};if("nonzero"===R){let ke=!0,Ue=null,de=null;for(let ze=0;ze{if(!w[D.identifier].isHole){const I=new Og;I.curves=D.curves,w.filter(R=>R.isHole&&R.for===D.identifier).forEach(R=>{const P=b[R.identifier],ee=new Xb;ee.curves=P.curves,I.holes.push(ee)}),F.push(I)}}),F}static getStrokeStyle(t,e,i,r,s){return{strokeColor:e=void 0!==e?e:"#000",strokeWidth:t=void 0!==t?t:1,strokeLineJoin:i=void 0!==i?i:"miter",strokeLineCap:r=void 0!==r?r:"butt",strokeMiterLimit:s=void 0!==s?s:4}}static pointsToStroke(t,e,i,r){const s=[],l=[],u=[];if(0===p8.pointsToStrokeWithBuffers(t,e,i,r,s,l,u))return null;const f=new Yi;return f.setAttribute("position",new Zt(s,3)),f.setAttribute("normal",new Zt(l,3)),f.setAttribute("uv",new Zt(u,2)),f}static pointsToStrokeWithBuffers(t,e,i,r,s,l,u,f){const p=new ft,m=new ft,_=new ft,b=new ft,w=new ft,F=new ft,D=new ft,T=new ft,I=new ft,O=new ft,R=new ft,P=new ft,ee=new ft,J=new ft,te=new ft,ie=new ft,W=new ft;i=void 0!==i?i:12,r=void 0!==r?r:.001,f=void 0!==f?f:0;const q=(t=function yt(Ze){let Ct=!1;for(let It=1,Pe=Ze.length-1;It=r&&_t.push(Ze[It]);return _t.push(Ze[Ze.length-1]),_t}(t)).length;if(q<2)return 0;const ce=t[0].equals(t[q-1]);let ke,de,Ue=t[0];const ze=e.strokeWidth/2,Ce=1/(q-1);let Fe,ht,Mt,Bt,Oe=0,rn=!1,Kn=0,Me=3*f,be=2*f;Ae(t[0],t[1],p).multiplyScalar(ze),T.copy(t[0]).sub(p),I.copy(t[0]).add(p),O.copy(T),R.copy(I);for(let Ze=1;ZeNumber.EPSILON){const It=ze/_t;_.multiplyScalar(-It),b.subVectors(ke,Ue),w.copy(b).setLength(It).add(_),ie.copy(w).negate();const Pe=w.length(),Se=b.length();b.divideScalar(Se),F.subVectors(de,ke);const _e=F.length();switch(F.divideScalar(_e),b.dot(ie){r.load(i,function(u){const f=u.paths,p=[];for(const F of f){const D=F.toShapes(!0);for(const T of D){const I=new Vw(T,{depth:t.printHeight,bevelEnabled:!1});p.push(I)}}const m=W3(p);m.computeBoundingBox();const w=e.size/Math.max(m.boundingBox.max.x-m.boundingBox.min.x,m.boundingBox.max.y-m.boundingBox.min.y);m.scale(w,w,1),m.center(),"back"===e.side?m.rotateZ(Math.PI):(m.rotateZ(Math.PI),m.rotateY(Math.PI)),s(m)},void 0,function(u){console.error(`Error loading ${i}`),l(u)})})})()}}class Fse extends ov{constructor(t){super(t,new fc,120,!0),this.name="BackMWLogo"}init(t){var e=this;return Mn(function*(){const i=new zS;return e.geometry=yield i.create(t,{filePath:"codeCharta/assets/mw_logo_text.svg",size:.31,side:"back"}),e.position.set(0,.37,t.printHeight/2-t.baseplateHeight),e.updateColor(t.numberOfColors),e})()}}class Dj extends Vw{constructor(t,e={}){const i=e.font;if(void 0===i)super();else{const r=i.generateShapes(t,e.size);void 0===e.depth&&void 0!==e.height&&console.warn("THREE.TextGeometry: .height is now depreciated. Please use .depth instead"),e.depth=void 0!==e.depth?e.depth:void 0!==e.height?e.height:50,void 0===e.bevelThickness&&(e.bevelThickness=10),void 0===e.bevelSize&&(e.bevelSize=8),void 0===e.bevelEnabled&&(e.bevelEnabled=!1),super(r,e)}this.type="TextGeometry"}}class Bj{create(t,e){var i=this;return Mn(function*(){const{font:r,side:s,text:l,xPosition:u,yPosition:f,align:p}=e;if(!l)return new Yi;let{textSize:m}=e;m||(m=.025);const _="center"===p&&l.includes("\n")?i.createMultilineCenteredTextGeometry(l,r,m,t.printHeight):new Dj(l,{font:r,size:m,height:t.printHeight});return _.center(),"back"===s&&_.rotateY(Math.PI),_.computeBoundingBox(),_.translate(("front"===s?1:-1)*(("center"===p?0:(_.boundingBox.max.x-_.boundingBox.min.x)/2)+u),f,"front"===s?t.printHeight/2:t.printHeight/2-t.baseplateHeight),_})()}createMultilineCenteredTextGeometry(t,e,i,r){const s=t.split("\n"),l=[];for(const[u,f]of s.entries()){const p=new Dj(f,{font:e,size:i,height:r});p.center(),p.translate(0,-u*i*1.5,0),l.push(p)}return W3(l)}}class GS extends ov{constructor(t,e=new fc,i,r,s,l=new Bj){super(t,e,i,r),this.createTextGeometryOptions=s,this.createTextGeometryStrategy=l}init(t){var e=this;return Mn(function*(){return e.geometry=yield e.createTextGeometryStrategy.create(t,e.createTextGeometryOptions),e.updateColor(t.numberOfColors),e})()}updateText(t){var e=this;return Mn(function*(){e.geometry=yield e.createTextGeometryStrategy.create(t,e.createTextGeometryOptions),e.boundingBoxCalculated=!1})()}updateTextGeometryOptions(t){this.createTextGeometryOptions.text=t}}class Dse extends GS{constructor(t,e){const i={font:e,text:"IT Stabilization & Modernization\nmaibornwolff.de/service/it-sanierung",side:"back",xPosition:0,yPosition:.23,align:"center"};super(t,new fc,200,!0,i)}}var Bse=v(8314);class kse extends ov{constructor(t){super(t,new fc,0,!1)}init(t){var e=this;return Mn(function*(){return e.geometry=yield e.create(t),e.position.set(.45,.45,t.printHeight/2-t.baseplateHeight),e.updateColor(t.numberOfColors),e})()}changeText(t){var e=this;return Mn(function*(){e.geometry=yield e.create(t)})()}create(t){var e=this;return Mn(function*(){if(!t.qrCodeText||0===t.qrCodeText.length)return new Yi;const i=document.createElement("canvas");yield Bse.mo(i,t.qrCodeText,{errorCorrectionLevel:"H"});const s=i.getContext("2d").getImageData(0,0,i.width,i.height),l=[],u=.6/s.width;for(let f=0;fsuper.init,i=this;return Mn(function*(){const r=yield i.createColoredBackTextChildren(t);for(const s of r)i.add(s);return e().call(i,t),i})()}createTextGeometry(t,e,i){var r=this;return Mn(function*(){return t.create(i,{font:r.font,text:e,side:"back",xPosition:.05,yPosition:.015,align:"left"})})()}getText(){return`${this.metricDescriptionBlockOptions.nodeMetricData.name}\n${this.metricDescriptionBlockOptions.title}\n`}createColoredBackTextChildren(t){var e=this;return Mn(function*(){const i=e.metricDescriptionBlockOptions,r=[],s=["Value ranges:",`${i.nodeMetricData.minValue} - ${i.colorRange.from-1}`,"/",`${i.colorRange.from} - ${i.colorRange.to-1}`,"/",`${i.colorRange.to} - ${i.nodeMetricData.maxValue}`],l=[new fc,new Ose,new fc,new Nse,new fc,new Lse];let u=.05;for(let f=0;f{if(e instanceof dr&&e.visible){e.geometry.computeBoundingBox();const{min:i,max:r}=e.geometry.boundingBox;t.min=Math.min(t.min,i.x),t.max=Math.max(t.max,r.x)}}),this.position.x=(t.max-t.min)/2}createColorAttributes(){return{colorIcon:"color_icon_for_3D_print.svg",colorIconScale:.075}}createHeightAttributes(){return{heightIcon:"height_icon_for_3D_print.svg",heightIconScale:.09}}createAreaAttributes(){return{areaIcon:"area_icon_for_3D_print.svg",areaIconScale:.075}}}class Hse extends Ou{constructor(t){super("BackPrintContainer",new fc),this.font=t}init(t){var e=this;return Mn(function*(){return e.childrenMeshes=new Map,e.childrenMeshes.set("BackMWLogo",new Fse("BackMWLogo")),e.childrenMeshes.set("BackBelowLogoText",new Dse("BackBelowLogoText",e.font)),e.childrenMeshes.set("QrCode",new kse("QrCode")),e.childrenMeshes.set("CodeChartaLogo",new Rse("CodeChartaLogo")),e.childrenMeshes.set("CodeChartaText",new Pse("CodeChartaText",e.font)),e.childrenMeshes.set("MetricDescriptionsContainer",new Vse("MetricDescriptionsContainer",e.font)),yield Promise.all([...e.childrenMeshes.values()].map(function(){var i=Mn(function*(r){yield r.init(t),e.add(r)});return function(r){return i.apply(this,arguments)}}())),e.changeSize(t,1),e})()}changeSize(t,e){const i=t.width/e;this.scale.set(this.scale.x*i,this.scale.y*i,this.scale.z),this.traverse(r=>{r instanceof ov&&r.setCurrentWidth(t.width)})}isQRCodeVisible(){return this.childrenMeshes.get("QrCode").visible}updateQrCodeText(t,e){var i=this;return Mn(function*(){e.qrCodeText=t,yield i.childrenMeshes.get("QrCode").changeText(e)})()}updateQrCodeVisibility(t){this.childrenMeshes.get("QrCode").setManualVisibility(t)}getChildrenMeshes(){return this.childrenMeshes}}class g8{execute(t,e){let i;return i=t<4?[1,1,1]:4===t?[1,1,0]:[1,1,1],e.material.color.setRGB(i[0],i[1],i[2]),!0}}class Qse extends GS{constructor(t,e,i){let r=i.frontText;r||(r="FrontText");const s={font:e,side:"front",text:r,xPosition:0,yPosition:i.frontTextSize/2,textSize:i.frontTextSize,align:"center"};super(t,new g8,0,!0,s),this.name="Front Text"}}class zse extends GS{constructor(t,e,i){const r={font:e,text:i.secondRowText,side:"front",xPosition:0,yPosition:-i.secondRowTextSize,textSize:i.secondRowTextSize,align:"center"};super(t,new g8,0,!1,r)}}class _8 extends Ou{constructor(t,e){super(t,new g8),this.alignment=e}changeRelativeSize(t){const e=this.getWidth();this.boundingBoxCalculated=!1;const i=t.secondRowVisible,r=i?(t.frontTextSize+t.secondRowTextSize)/t.frontTextSize:1;this.scale.x=r,this.scale.y=r;const s=i?-1:1,l="left"===this.alignment?-1:1;this.translateY(s*t.secondRowTextSize);const u=i?e/this.getWidth():this.getWidth()/e;this.translateX(2*u*l*s)}}class Gse extends _8{constructor(t){super(t,"right")}init(t,e=new zS){var i=this;return Mn(function*(){const r=t.frontTextSize*t.width/250;return i.geometry=yield e.create(t,{filePath:"codeCharta/assets/mw_logo.svg",size:r,side:"front"}),i.position.set(t.width/2-r/2-t.mapSideOffset/2,r/2,t.printHeight/2),t.secondRowVisible&&i.changeRelativeSize(t),i.updateColor(t.numberOfColors),i})()}changeSize(t,e){this.position.x+=(t.width-e)/2}}class jse extends _8{constructor(t,e){super(t,"left"),this.filePath=e}init(t){var e=this;return Mn(function*(){const i=new zS,r=t.frontTextSize*t.width/200;return e.geometry=yield i.create(t,{filePath:e.filePath,size:r,side:"front"}),e.position.set(-t.width/2+r/2+t.mapSideOffset/2,r/2,t.printHeight/2),t.secondRowVisible&&e.changeRelativeSize(t),e.updateColor(t.numberOfColors),e})()}setColor(t){this.material.color.set(t)}rotate(){this.geometry.rotateZ(Math.PI/2)}flip(){this.geometry.rotateY(Math.PI)}changeSize(t,e){this.position.x-=(t.width-e)/2}}class $se extends Ou{constructor(t){super("FrontPrintContainer",new fc),this.font=t}init(t){var e=this;return Mn(function*(){return e.childrenMeshes=new Map,e.childrenMeshes.set("FrontText",new Qse("FrontText",e.font,t)),e.childrenMeshes.set("SecondRowText",new zse("SecondRowText",e.font,t)),e.childrenMeshes.set("FrontMWLogo",new Gse("FrontMWLogo")),yield Promise.all([...e.childrenMeshes.values()].map(function(){var i=Mn(function*(r){yield r.init(t),e.add(r)});return function(r){return i.apply(this,arguments)}}())),e.position.y=-t.width/2-t.mapSideOffset/2,e})()}addCustomLogo(t,e){var i=this;return Mn(function*(){i.childrenMeshes.has("CustomLogo")&&i.removeCustomLogo();const r=yield new jse("CustomLogo",t).init(e);i.add(r),i.childrenMeshes.set(r.name,r)})()}rotateCustomLogo(){this.childrenMeshes.get("CustomLogo").rotate()}flipCustomLogo(){this.childrenMeshes.get("CustomLogo").flip()}removeCustomLogo(){this.remove(this.childrenMeshes.get("CustomLogo")),this.childrenMeshes.delete("CustomLogo")}updateCustomLogoColor(t){this.childrenMeshes.get("CustomLogo").setColor(t)}updateFrontText(t,e){var i=this;return Mn(function*(){const r=i.childrenMeshes.get("FrontText");r.updateTextGeometryOptions(t),yield r.updateText(e)})()}changeSize(t,e){this.position.y-=(t.width-e)/2;for(const i of this.childrenMeshes.values())i instanceof _8&&i.isGeneralSizeChangeMesh()&&i.changeSize(t,e)}updateSecondRowText(t,e){var i=this;return Mn(function*(){const r=i.childrenMeshes.get("SecondRowText");r.updateTextGeometryOptions(t),yield r.updateText(e)})()}updateSecondRowVisibility(t){const e=this.childrenMeshes.get("FrontMWLogo"),i=this.childrenMeshes.get("SecondRowText"),r=this.childrenMeshes.get("CustomLogo");i.setManualVisibility(t.secondRowVisible),e.changeRelativeSize(t),r?.changeRelativeSize(t)}getChildrenMeshes(){return this.childrenMeshes}}const kj=JSON.parse('{"glyphs":{"0":{"x_min":73,"x_max":715,"ha":792,"o":"m 394 -29 q 153 129 242 -29 q 73 479 73 272 q 152 829 73 687 q 394 989 241 989 q 634 829 545 989 q 715 479 715 684 q 635 129 715 270 q 394 -29 546 -29 m 394 89 q 546 211 489 89 q 598 479 598 322 q 548 748 598 640 q 394 871 491 871 q 241 748 298 871 q 190 479 190 637 q 239 211 190 319 q 394 89 296 89 "},"1":{"x_min":215.671875,"x_max":574,"ha":792,"o":"m 574 0 l 442 0 l 442 697 l 215 697 l 215 796 q 386 833 330 796 q 475 986 447 875 l 574 986 l 574 0 "},"2":{"x_min":59,"x_max":731,"ha":792,"o":"m 731 0 l 59 0 q 197 314 59 188 q 457 487 199 315 q 598 691 598 580 q 543 819 598 772 q 411 867 488 867 q 272 811 328 867 q 209 630 209 747 l 81 630 q 182 901 81 805 q 408 986 271 986 q 629 909 536 986 q 731 694 731 826 q 613 449 731 541 q 378 316 495 383 q 201 122 235 234 l 731 122 l 731 0 "},"3":{"x_min":54,"x_max":737,"ha":792,"o":"m 737 284 q 635 55 737 141 q 399 -25 541 -25 q 156 52 248 -25 q 54 308 54 140 l 185 308 q 245 147 185 202 q 395 96 302 96 q 539 140 484 96 q 602 280 602 190 q 510 429 602 390 q 324 454 451 454 l 324 565 q 487 584 441 565 q 565 719 565 617 q 515 835 565 791 q 395 879 466 879 q 255 824 307 879 q 203 661 203 769 l 78 661 q 166 909 78 822 q 387 992 250 992 q 603 921 513 992 q 701 723 701 844 q 669 607 701 656 q 578 524 637 558 q 696 434 655 499 q 737 284 737 369 "},"4":{"x_min":48,"x_max":742.453125,"ha":792,"o":"m 742 243 l 602 243 l 602 0 l 476 0 l 476 243 l 48 243 l 48 368 l 476 958 l 602 958 l 602 354 l 742 354 l 742 243 m 476 354 l 476 792 l 162 354 l 476 354 "},"5":{"x_min":54.171875,"x_max":738,"ha":792,"o":"m 738 314 q 626 60 738 153 q 382 -23 526 -23 q 155 47 248 -23 q 54 256 54 125 l 183 256 q 259 132 204 174 q 382 91 314 91 q 533 149 471 91 q 602 314 602 213 q 538 469 602 411 q 386 528 475 528 q 284 506 332 528 q 197 439 237 484 l 81 439 l 159 958 l 684 958 l 684 840 l 254 840 l 214 579 q 306 627 258 612 q 407 643 354 643 q 636 552 540 643 q 738 314 738 457 "},"6":{"x_min":53,"x_max":739,"ha":792,"o":"m 739 312 q 633 62 739 162 q 400 -31 534 -31 q 162 78 257 -31 q 53 439 53 206 q 178 859 53 712 q 441 986 284 986 q 643 912 559 986 q 732 713 732 833 l 601 713 q 544 830 594 786 q 426 875 494 875 q 268 793 331 875 q 193 517 193 697 q 301 597 240 570 q 427 624 362 624 q 643 540 552 624 q 739 312 739 451 m 603 298 q 540 461 603 400 q 404 516 484 516 q 268 461 323 516 q 207 300 207 401 q 269 137 207 198 q 405 83 325 83 q 541 137 486 83 q 603 298 603 197 "},"7":{"x_min":58.71875,"x_max":730.953125,"ha":792,"o":"m 730 839 q 469 448 560 641 q 335 0 378 255 l 192 0 q 328 441 235 252 q 593 830 421 630 l 58 830 l 58 958 l 730 958 l 730 839 "},"8":{"x_min":55,"x_max":736,"ha":792,"o":"m 571 527 q 694 424 652 491 q 736 280 736 358 q 648 71 736 158 q 395 -26 551 -26 q 142 69 238 -26 q 55 279 55 157 q 96 425 55 359 q 220 527 138 491 q 120 615 153 562 q 88 726 88 668 q 171 904 88 827 q 395 986 261 986 q 618 905 529 986 q 702 727 702 830 q 670 616 702 667 q 571 527 638 565 m 394 565 q 519 610 475 565 q 563 717 563 655 q 521 823 563 781 q 392 872 474 872 q 265 824 312 872 q 224 720 224 783 q 265 613 224 656 q 394 565 312 565 m 395 91 q 545 150 488 91 q 597 280 597 204 q 546 408 597 355 q 395 465 492 465 q 244 408 299 465 q 194 280 194 356 q 244 150 194 203 q 395 91 299 91 "},"9":{"x_min":53,"x_max":739,"ha":792,"o":"m 739 524 q 619 94 739 241 q 362 -32 516 -32 q 150 47 242 -32 q 59 244 59 126 l 191 244 q 246 129 191 176 q 373 82 301 82 q 526 161 466 82 q 597 440 597 255 q 363 334 501 334 q 130 432 216 334 q 53 650 53 521 q 134 880 53 786 q 383 986 226 986 q 659 841 566 986 q 739 524 739 719 m 388 449 q 535 514 480 449 q 585 658 585 573 q 535 805 585 744 q 388 873 480 873 q 242 809 294 873 q 191 658 191 745 q 239 514 191 572 q 388 449 292 449 "},"\u03bf":{"x_min":0,"x_max":712,"ha":815,"o":"m 356 -25 q 96 88 192 -25 q 0 368 0 201 q 92 642 0 533 q 356 761 192 761 q 617 644 517 761 q 712 368 712 533 q 619 91 712 201 q 356 -25 520 -25 m 356 85 q 527 175 465 85 q 583 369 583 255 q 528 562 583 484 q 356 651 466 651 q 189 560 250 651 q 135 369 135 481 q 187 177 135 257 q 356 85 250 85 "},"S":{"x_min":0,"x_max":788,"ha":890,"o":"m 788 291 q 662 54 788 144 q 397 -26 550 -26 q 116 68 226 -26 q 0 337 0 168 l 131 337 q 200 152 131 220 q 384 85 269 85 q 557 129 479 85 q 650 270 650 183 q 490 429 650 379 q 194 513 341 470 q 33 739 33 584 q 142 964 33 881 q 388 1041 242 1041 q 644 957 543 1041 q 756 716 756 867 l 625 716 q 561 874 625 816 q 395 933 497 933 q 243 891 309 933 q 164 759 164 841 q 325 609 164 656 q 625 526 475 568 q 788 291 788 454 "},"\xa6":{"x_min":343,"x_max":449,"ha":792,"o":"m 449 462 l 343 462 l 343 986 l 449 986 l 449 462 m 449 -242 l 343 -242 l 343 280 l 449 280 l 449 -242 "},"/":{"x_min":183.25,"x_max":608.328125,"ha":792,"o":"m 608 1041 l 266 -129 l 183 -129 l 520 1041 l 608 1041 "},"\u03a4":{"x_min":-0.4375,"x_max":777.453125,"ha":839,"o":"m 777 893 l 458 893 l 458 0 l 319 0 l 319 892 l 0 892 l 0 1013 l 777 1013 l 777 893 "},"y":{"x_min":0,"x_max":684.78125,"ha":771,"o":"m 684 738 l 388 -83 q 311 -216 356 -167 q 173 -279 252 -279 q 97 -266 133 -279 l 97 -149 q 132 -155 109 -151 q 168 -160 155 -160 q 240 -114 213 -160 q 274 -26 248 -98 l 0 738 l 137 737 l 341 139 l 548 737 l 684 738 "},"\u03a0":{"x_min":0,"x_max":803,"ha":917,"o":"m 803 0 l 667 0 l 667 886 l 140 886 l 140 0 l 0 0 l 0 1012 l 803 1012 l 803 0 "},"\u0390":{"x_min":-111,"x_max":339,"ha":361,"o":"m 339 800 l 229 800 l 229 925 l 339 925 l 339 800 m -1 800 l -111 800 l -111 925 l -1 925 l -1 800 m 284 3 q 233 -10 258 -5 q 182 -15 207 -15 q 85 26 119 -15 q 42 200 42 79 l 42 737 l 167 737 l 168 215 q 172 141 168 157 q 226 101 183 101 q 248 103 239 101 q 284 112 257 104 l 284 3 m 302 1040 l 113 819 l 30 819 l 165 1040 l 302 1040 "},"g":{"x_min":0,"x_max":686,"ha":838,"o":"m 686 34 q 586 -213 686 -121 q 331 -306 487 -306 q 131 -252 216 -306 q 31 -84 31 -190 l 155 -84 q 228 -174 166 -138 q 345 -207 284 -207 q 514 -109 454 -207 q 564 89 564 -27 q 461 6 521 36 q 335 -23 401 -23 q 88 100 184 -23 q 0 370 0 215 q 87 634 0 522 q 330 758 183 758 q 457 728 398 758 q 564 644 515 699 l 564 737 l 686 737 l 686 34 m 582 367 q 529 560 582 481 q 358 652 468 652 q 189 561 250 652 q 135 369 135 482 q 189 176 135 255 q 361 85 251 85 q 529 176 468 85 q 582 367 582 255 "},"\xb2":{"x_min":0,"x_max":442,"ha":539,"o":"m 442 383 l 0 383 q 91 566 0 492 q 260 668 176 617 q 354 798 354 727 q 315 875 354 845 q 227 905 277 905 q 136 869 173 905 q 99 761 99 833 l 14 761 q 82 922 14 864 q 232 974 141 974 q 379 926 316 974 q 442 797 442 878 q 351 635 442 704 q 183 539 321 611 q 92 455 92 491 l 442 455 l 442 383 "},"\u2013":{"x_min":0,"x_max":705.5625,"ha":803,"o":"m 705 334 l 0 334 l 0 410 l 705 410 l 705 334 "},"\u039a":{"x_min":0,"x_max":819.5625,"ha":893,"o":"m 819 0 l 650 0 l 294 509 l 139 356 l 139 0 l 0 0 l 0 1013 l 139 1013 l 139 526 l 626 1013 l 809 1013 l 395 600 l 819 0 "},"\u0192":{"x_min":-46.265625,"x_max":392,"ha":513,"o":"m 392 651 l 259 651 l 79 -279 l -46 -278 l 134 651 l 14 651 l 14 751 l 135 751 q 151 948 135 900 q 304 1041 185 1041 q 334 1040 319 1041 q 392 1034 348 1039 l 392 922 q 337 931 360 931 q 271 883 287 931 q 260 793 260 853 l 260 751 l 392 751 l 392 651 "},"e":{"x_min":0,"x_max":714,"ha":813,"o":"m 714 326 l 140 326 q 200 157 140 227 q 359 87 260 87 q 488 130 431 87 q 561 245 545 174 l 697 245 q 577 48 670 123 q 358 -26 484 -26 q 97 85 195 -26 q 0 363 0 197 q 94 642 0 529 q 358 765 195 765 q 626 627 529 765 q 714 326 714 503 m 576 429 q 507 583 564 522 q 355 650 445 650 q 206 583 266 650 q 140 429 152 522 l 576 429 "},"\u03cc":{"x_min":0,"x_max":712,"ha":815,"o":"m 356 -25 q 94 91 194 -25 q 0 368 0 202 q 92 642 0 533 q 356 761 192 761 q 617 644 517 761 q 712 368 712 533 q 619 91 712 201 q 356 -25 520 -25 m 356 85 q 527 175 465 85 q 583 369 583 255 q 528 562 583 484 q 356 651 466 651 q 189 560 250 651 q 135 369 135 481 q 187 177 135 257 q 356 85 250 85 m 576 1040 l 387 819 l 303 819 l 438 1040 l 576 1040 "},"J":{"x_min":0,"x_max":588,"ha":699,"o":"m 588 279 q 287 -26 588 -26 q 58 73 126 -26 q 0 327 0 158 l 133 327 q 160 172 133 227 q 288 96 198 96 q 426 171 391 96 q 449 336 449 219 l 449 1013 l 588 1013 l 588 279 "},"\xbb":{"x_min":-1,"x_max":503,"ha":601,"o":"m 503 302 l 280 136 l 281 256 l 429 373 l 281 486 l 280 608 l 503 440 l 503 302 m 221 302 l 0 136 l 0 255 l 145 372 l 0 486 l -1 608 l 221 440 l 221 302 "},"\xa9":{"x_min":-3,"x_max":1008,"ha":1106,"o":"m 502 -7 q 123 151 263 -7 q -3 501 -3 294 q 123 851 -3 706 q 502 1011 263 1011 q 881 851 739 1011 q 1008 501 1008 708 q 883 151 1008 292 q 502 -7 744 -7 m 502 60 q 830 197 709 60 q 940 501 940 322 q 831 805 940 681 q 502 944 709 944 q 174 805 296 944 q 65 501 65 680 q 173 197 65 320 q 502 60 294 60 m 741 394 q 661 246 731 302 q 496 190 591 190 q 294 285 369 190 q 228 497 228 370 q 295 714 228 625 q 499 813 370 813 q 656 762 588 813 q 733 625 724 711 l 634 625 q 589 704 629 673 q 498 735 550 735 q 377 666 421 735 q 334 504 334 597 q 374 340 334 408 q 490 272 415 272 q 589 304 549 272 q 638 394 628 337 l 741 394 "},"\u03ce":{"x_min":0,"x_max":922,"ha":1030,"o":"m 687 1040 l 498 819 l 415 819 l 549 1040 l 687 1040 m 922 339 q 856 97 922 203 q 650 -26 780 -26 q 538 9 587 -26 q 461 103 489 44 q 387 12 436 46 q 277 -22 339 -22 q 69 97 147 -22 q 0 338 0 202 q 45 551 0 444 q 161 737 84 643 l 302 737 q 175 552 219 647 q 124 336 124 446 q 155 179 124 248 q 275 88 197 88 q 375 163 341 88 q 400 294 400 219 l 400 572 l 524 572 l 524 294 q 561 135 524 192 q 643 88 591 88 q 762 182 719 88 q 797 341 797 257 q 745 555 797 450 q 619 737 705 637 l 760 737 q 874 551 835 640 q 922 339 922 444 "},"^":{"x_min":193.0625,"x_max":598.609375,"ha":792,"o":"m 598 772 l 515 772 l 395 931 l 277 772 l 193 772 l 326 1013 l 462 1013 l 598 772 "},"\xab":{"x_min":0,"x_max":507.203125,"ha":604,"o":"m 506 136 l 284 302 l 284 440 l 506 608 l 507 485 l 360 371 l 506 255 l 506 136 m 222 136 l 0 302 l 0 440 l 222 608 l 221 486 l 73 373 l 222 256 l 222 136 "},"D":{"x_min":0,"x_max":828,"ha":935,"o":"m 389 1013 q 714 867 593 1013 q 828 521 828 729 q 712 161 828 309 q 382 0 587 0 l 0 0 l 0 1013 l 389 1013 m 376 124 q 607 247 523 124 q 681 510 681 355 q 607 771 681 662 q 376 896 522 896 l 139 896 l 139 124 l 376 124 "},"\u2219":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 585 l 0 585 l 0 738 l 142 738 l 142 585 "},"\xff":{"x_min":0,"x_max":47,"ha":125,"o":"m 47 3 q 37 -7 47 -7 q 28 0 30 -7 q 39 -4 32 -4 q 45 3 45 -1 l 37 0 q 28 9 28 0 q 39 19 28 19 l 47 16 l 47 19 l 47 3 m 37 1 q 44 8 44 1 q 37 16 44 16 q 30 8 30 16 q 37 1 30 1 m 26 1 l 23 22 l 14 0 l 3 22 l 3 3 l 0 25 l 13 1 l 22 25 l 26 1 "},"w":{"x_min":0,"x_max":1009.71875,"ha":1100,"o":"m 1009 738 l 783 0 l 658 0 l 501 567 l 345 0 l 222 0 l 0 738 l 130 738 l 284 174 l 432 737 l 576 738 l 721 173 l 881 737 l 1009 738 "},"$":{"x_min":0,"x_max":700,"ha":793,"o":"m 664 717 l 542 717 q 490 825 531 785 q 381 872 450 865 l 381 551 q 620 446 540 522 q 700 241 700 370 q 618 45 700 116 q 381 -25 536 -25 l 381 -152 l 307 -152 l 307 -25 q 81 62 162 -25 q 0 297 0 149 l 124 297 q 169 146 124 204 q 307 81 215 89 l 307 441 q 80 536 148 469 q 13 725 13 603 q 96 910 13 839 q 307 982 180 982 l 307 1077 l 381 1077 l 381 982 q 574 917 494 982 q 664 717 664 845 m 307 565 l 307 872 q 187 831 233 872 q 142 724 142 791 q 180 618 142 656 q 307 565 218 580 m 381 76 q 562 237 562 96 q 517 361 562 313 q 381 423 472 409 l 381 76 "},"\\\\":{"x_min":-0.015625,"x_max":425.0625,"ha":522,"o":"m 425 -129 l 337 -129 l 0 1041 l 83 1041 l 425 -129 "},"\xb5":{"x_min":0,"x_max":697.21875,"ha":747,"o":"m 697 -4 q 629 -14 658 -14 q 498 97 513 -14 q 422 9 470 41 q 313 -23 374 -23 q 207 4 258 -23 q 119 81 156 32 l 119 -278 l 0 -278 l 0 738 l 124 738 l 124 343 q 165 173 124 246 q 308 83 216 83 q 452 178 402 83 q 493 359 493 255 l 493 738 l 617 738 l 617 214 q 623 136 617 160 q 673 92 637 92 q 697 96 684 92 l 697 -4 "},"\u0399":{"x_min":42,"x_max":181,"ha":297,"o":"m 181 0 l 42 0 l 42 1013 l 181 1013 l 181 0 "},"\u038e":{"x_min":0,"x_max":1144.5,"ha":1214,"o":"m 1144 1012 l 807 416 l 807 0 l 667 0 l 667 416 l 325 1012 l 465 1012 l 736 533 l 1004 1012 l 1144 1012 m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 "},"\u2019":{"x_min":0,"x_max":139,"ha":236,"o":"m 139 851 q 102 737 139 784 q 0 669 65 690 l 0 734 q 59 787 42 741 q 72 873 72 821 l 0 873 l 0 1013 l 139 1013 l 139 851 "},"\u039d":{"x_min":0,"x_max":801,"ha":915,"o":"m 801 0 l 651 0 l 131 822 l 131 0 l 0 0 l 0 1013 l 151 1013 l 670 191 l 670 1013 l 801 1013 l 801 0 "},"-":{"x_min":8.71875,"x_max":350.390625,"ha":478,"o":"m 350 317 l 8 317 l 8 428 l 350 428 l 350 317 "},"Q":{"x_min":0,"x_max":968,"ha":1072,"o":"m 954 5 l 887 -79 l 744 35 q 622 -11 687 2 q 483 -26 556 -26 q 127 130 262 -26 q 0 504 0 279 q 127 880 0 728 q 484 1041 262 1041 q 841 884 708 1041 q 968 507 968 735 q 933 293 968 398 q 832 104 899 188 l 954 5 m 723 191 q 802 330 777 248 q 828 499 828 412 q 744 790 828 673 q 483 922 650 922 q 228 791 322 922 q 142 505 142 673 q 227 221 142 337 q 487 91 323 91 q 632 123 566 91 l 520 215 l 587 301 l 723 191 "},"\u03c2":{"x_min":1,"x_max":676.28125,"ha":740,"o":"m 676 460 l 551 460 q 498 595 542 546 q 365 651 448 651 q 199 578 263 651 q 136 401 136 505 q 266 178 136 241 q 508 106 387 142 q 640 -50 640 62 q 625 -158 640 -105 q 583 -278 611 -211 l 465 -278 q 498 -182 490 -211 q 515 -80 515 -126 q 381 12 515 -15 q 134 91 197 51 q 1 388 1 179 q 100 651 1 542 q 354 761 199 761 q 587 680 498 761 q 676 460 676 599 "},"M":{"x_min":0,"x_max":954,"ha":1067,"o":"m 954 0 l 819 0 l 819 869 l 537 0 l 405 0 l 128 866 l 128 0 l 0 0 l 0 1013 l 200 1013 l 472 160 l 757 1013 l 954 1013 l 954 0 "},"\u03a8":{"x_min":0,"x_max":1006,"ha":1094,"o":"m 1006 678 q 914 319 1006 429 q 571 200 814 200 l 571 0 l 433 0 l 433 200 q 92 319 194 200 q 0 678 0 429 l 0 1013 l 139 1013 l 139 679 q 191 417 139 492 q 433 326 255 326 l 433 1013 l 571 1013 l 571 326 l 580 326 q 813 423 747 326 q 868 679 868 502 l 868 1013 l 1006 1013 l 1006 678 "},"C":{"x_min":0,"x_max":886,"ha":944,"o":"m 886 379 q 760 87 886 201 q 455 -26 634 -26 q 112 136 236 -26 q 0 509 0 283 q 118 882 0 737 q 469 1041 245 1041 q 748 955 630 1041 q 879 708 879 859 l 745 708 q 649 862 724 805 q 473 920 573 920 q 219 791 312 920 q 136 509 136 675 q 217 229 136 344 q 470 99 311 99 q 672 179 591 99 q 753 379 753 259 l 886 379 "},"!":{"x_min":0,"x_max":138,"ha":236,"o":"m 138 684 q 116 409 138 629 q 105 244 105 299 l 33 244 q 16 465 33 313 q 0 684 0 616 l 0 1013 l 138 1013 l 138 684 m 138 0 l 0 0 l 0 151 l 138 151 l 138 0 "},"{":{"x_min":0,"x_max":480.5625,"ha":578,"o":"m 480 -286 q 237 -213 303 -286 q 187 -45 187 -159 q 194 48 187 -15 q 201 141 201 112 q 164 264 201 225 q 0 314 118 314 l 0 417 q 164 471 119 417 q 201 605 201 514 q 199 665 201 644 q 193 772 193 769 q 241 941 193 887 q 480 1015 308 1015 l 480 915 q 336 866 375 915 q 306 742 306 828 q 310 662 306 717 q 314 577 314 606 q 288 452 314 500 q 176 365 256 391 q 289 275 257 337 q 314 143 314 226 q 313 84 314 107 q 310 -11 310 -5 q 339 -131 310 -94 q 480 -182 377 -182 l 480 -286 "},"X":{"x_min":-0.015625,"x_max":854.15625,"ha":940,"o":"m 854 0 l 683 0 l 423 409 l 166 0 l 0 0 l 347 519 l 18 1013 l 186 1013 l 428 637 l 675 1013 l 836 1013 l 504 520 l 854 0 "},"#":{"x_min":0,"x_max":963.890625,"ha":1061,"o":"m 963 690 l 927 590 l 719 590 l 655 410 l 876 410 l 840 310 l 618 310 l 508 -3 l 393 -2 l 506 309 l 329 310 l 215 -2 l 102 -3 l 212 310 l 0 310 l 36 410 l 248 409 l 312 590 l 86 590 l 120 690 l 347 690 l 459 1006 l 573 1006 l 462 690 l 640 690 l 751 1006 l 865 1006 l 754 690 l 963 690 m 606 590 l 425 590 l 362 410 l 543 410 l 606 590 "},"\u03b9":{"x_min":42,"x_max":284,"ha":361,"o":"m 284 3 q 233 -10 258 -5 q 182 -15 207 -15 q 85 26 119 -15 q 42 200 42 79 l 42 738 l 167 738 l 168 215 q 172 141 168 157 q 226 101 183 101 q 248 103 239 101 q 284 112 257 104 l 284 3 "},"\u0386":{"x_min":0,"x_max":906.953125,"ha":982,"o":"m 283 1040 l 88 799 l 5 799 l 145 1040 l 283 1040 m 906 0 l 756 0 l 650 303 l 251 303 l 143 0 l 0 0 l 376 1012 l 529 1012 l 906 0 m 609 421 l 452 866 l 293 421 l 609 421 "},")":{"x_min":0,"x_max":318,"ha":415,"o":"m 318 365 q 257 25 318 191 q 87 -290 197 -141 l 0 -290 q 140 21 93 -128 q 193 360 193 189 q 141 704 193 537 q 0 1024 97 850 l 87 1024 q 257 706 197 871 q 318 365 318 542 "},"\u03b5":{"x_min":0,"x_max":634.71875,"ha":714,"o":"m 634 234 q 527 38 634 110 q 300 -25 433 -25 q 98 29 183 -25 q 0 204 0 93 q 37 314 0 265 q 128 390 67 353 q 56 460 82 419 q 26 555 26 505 q 114 712 26 654 q 295 763 191 763 q 499 700 416 763 q 589 515 589 631 l 478 515 q 419 618 464 580 q 307 657 374 657 q 207 630 253 657 q 151 547 151 598 q 238 445 151 469 q 389 434 280 434 l 389 331 l 349 331 q 206 315 255 331 q 125 210 125 287 q 183 107 125 145 q 302 76 233 76 q 436 117 379 76 q 509 234 493 159 l 634 234 "},"\u0394":{"x_min":0,"x_max":952.78125,"ha":1028,"o":"m 952 0 l 0 0 l 400 1013 l 551 1013 l 952 0 m 762 124 l 476 867 l 187 124 l 762 124 "},"}":{"x_min":0,"x_max":481,"ha":578,"o":"m 481 314 q 318 262 364 314 q 282 136 282 222 q 284 65 282 97 q 293 -58 293 -48 q 241 -217 293 -166 q 0 -286 174 -286 l 0 -182 q 143 -130 105 -182 q 171 -2 171 -93 q 168 81 171 22 q 165 144 165 140 q 188 275 165 229 q 306 365 220 339 q 191 455 224 391 q 165 588 165 505 q 168 681 165 624 q 171 742 171 737 q 141 865 171 827 q 0 915 102 915 l 0 1015 q 243 942 176 1015 q 293 773 293 888 q 287 675 293 741 q 282 590 282 608 q 318 466 282 505 q 481 417 364 417 l 481 314 "},"\u2030":{"x_min":-3,"x_max":1672,"ha":1821,"o":"m 846 0 q 664 76 732 0 q 603 244 603 145 q 662 412 603 344 q 846 489 729 489 q 1027 412 959 489 q 1089 244 1089 343 q 1029 76 1089 144 q 846 0 962 0 m 845 103 q 945 143 910 103 q 981 243 981 184 q 947 340 981 301 q 845 385 910 385 q 745 342 782 385 q 709 243 709 300 q 742 147 709 186 q 845 103 781 103 m 888 986 l 284 -25 l 199 -25 l 803 986 l 888 986 m 241 468 q 58 545 126 468 q -3 715 -3 615 q 56 881 -3 813 q 238 958 124 958 q 421 881 353 958 q 483 712 483 813 q 423 544 483 612 q 241 468 356 468 m 241 855 q 137 811 175 855 q 100 710 100 768 q 136 612 100 653 q 240 572 172 572 q 344 614 306 572 q 382 713 382 656 q 347 810 382 771 q 241 855 308 855 m 1428 0 q 1246 76 1314 0 q 1185 244 1185 145 q 1244 412 1185 344 q 1428 489 1311 489 q 1610 412 1542 489 q 1672 244 1672 343 q 1612 76 1672 144 q 1428 0 1545 0 m 1427 103 q 1528 143 1492 103 q 1564 243 1564 184 q 1530 340 1564 301 q 1427 385 1492 385 q 1327 342 1364 385 q 1291 243 1291 300 q 1324 147 1291 186 q 1427 103 1363 103 "},"a":{"x_min":0,"x_max":698.609375,"ha":794,"o":"m 698 0 q 661 -12 679 -7 q 615 -17 643 -17 q 536 12 564 -17 q 500 96 508 41 q 384 6 456 37 q 236 -25 312 -25 q 65 31 130 -25 q 0 194 0 88 q 118 390 0 334 q 328 435 180 420 q 488 483 476 451 q 495 523 495 504 q 442 619 495 584 q 325 654 389 654 q 209 617 257 654 q 152 513 161 580 l 33 513 q 123 705 33 633 q 332 772 207 772 q 528 712 448 772 q 617 531 617 645 l 617 163 q 624 108 617 126 q 664 90 632 90 l 698 94 l 698 0 m 491 262 l 491 372 q 272 329 350 347 q 128 201 128 294 q 166 113 128 144 q 264 83 205 83 q 414 130 346 83 q 491 262 491 183 "},"\u2014":{"x_min":0,"x_max":941.671875,"ha":1039,"o":"m 941 334 l 0 334 l 0 410 l 941 410 l 941 334 "},"=":{"x_min":8.71875,"x_max":780.953125,"ha":792,"o":"m 780 510 l 8 510 l 8 606 l 780 606 l 780 510 m 780 235 l 8 235 l 8 332 l 780 332 l 780 235 "},"N":{"x_min":0,"x_max":801,"ha":914,"o":"m 801 0 l 651 0 l 131 823 l 131 0 l 0 0 l 0 1013 l 151 1013 l 670 193 l 670 1013 l 801 1013 l 801 0 "},"\u03c1":{"x_min":0,"x_max":712,"ha":797,"o":"m 712 369 q 620 94 712 207 q 362 -26 521 -26 q 230 2 292 -26 q 119 83 167 30 l 119 -278 l 0 -278 l 0 362 q 91 643 0 531 q 355 764 190 764 q 617 647 517 764 q 712 369 712 536 m 583 366 q 530 559 583 480 q 359 651 469 651 q 190 562 252 651 q 135 370 135 483 q 189 176 135 257 q 359 85 250 85 q 528 175 466 85 q 583 366 583 254 "},"\xaf":{"x_min":0,"x_max":941.671875,"ha":938,"o":"m 941 1033 l 0 1033 l 0 1109 l 941 1109 l 941 1033 "},"Z":{"x_min":0,"x_max":779,"ha":849,"o":"m 779 0 l 0 0 l 0 113 l 621 896 l 40 896 l 40 1013 l 779 1013 l 778 887 l 171 124 l 779 124 l 779 0 "},"u":{"x_min":0,"x_max":617,"ha":729,"o":"m 617 0 l 499 0 l 499 110 q 391 10 460 45 q 246 -25 322 -25 q 61 58 127 -25 q 0 258 0 136 l 0 738 l 125 738 l 125 284 q 156 148 125 202 q 273 82 197 82 q 433 165 369 82 q 493 340 493 243 l 493 738 l 617 738 l 617 0 "},"k":{"x_min":0,"x_max":612.484375,"ha":697,"o":"m 612 738 l 338 465 l 608 0 l 469 0 l 251 382 l 121 251 l 121 0 l 0 0 l 0 1013 l 121 1013 l 121 402 l 456 738 l 612 738 "},"\u0397":{"x_min":0,"x_max":803,"ha":917,"o":"m 803 0 l 667 0 l 667 475 l 140 475 l 140 0 l 0 0 l 0 1013 l 140 1013 l 140 599 l 667 599 l 667 1013 l 803 1013 l 803 0 "},"\u0391":{"x_min":0,"x_max":906.953125,"ha":985,"o":"m 906 0 l 756 0 l 650 303 l 251 303 l 143 0 l 0 0 l 376 1013 l 529 1013 l 906 0 m 609 421 l 452 866 l 293 421 l 609 421 "},"s":{"x_min":0,"x_max":604,"ha":697,"o":"m 604 217 q 501 36 604 104 q 292 -23 411 -23 q 86 43 166 -23 q 0 238 0 114 l 121 237 q 175 122 121 164 q 300 85 223 85 q 415 112 363 85 q 479 207 479 147 q 361 309 479 276 q 140 372 141 370 q 21 544 21 426 q 111 708 21 647 q 298 761 190 761 q 492 705 413 761 q 583 531 583 643 l 462 531 q 412 625 462 594 q 298 657 363 657 q 199 636 242 657 q 143 558 143 608 q 262 454 143 486 q 484 394 479 397 q 604 217 604 341 "},"B":{"x_min":0,"x_max":778,"ha":876,"o":"m 580 546 q 724 469 670 535 q 778 311 778 403 q 673 83 778 171 q 432 0 575 0 l 0 0 l 0 1013 l 411 1013 q 629 957 541 1013 q 732 768 732 892 q 691 633 732 693 q 580 546 650 572 m 393 899 l 139 899 l 139 588 l 379 588 q 521 624 462 588 q 592 744 592 667 q 531 859 592 819 q 393 899 471 899 m 419 124 q 566 169 504 124 q 635 303 635 219 q 559 436 635 389 q 402 477 494 477 l 139 477 l 139 124 l 419 124 "},"\u2026":{"x_min":0,"x_max":614,"ha":708,"o":"m 142 0 l 0 0 l 0 151 l 142 151 l 142 0 m 378 0 l 236 0 l 236 151 l 378 151 l 378 0 m 614 0 l 472 0 l 472 151 l 614 151 l 614 0 "},"?":{"x_min":0,"x_max":607,"ha":704,"o":"m 607 777 q 543 599 607 674 q 422 474 482 537 q 357 272 357 391 l 236 272 q 297 487 236 395 q 411 619 298 490 q 474 762 474 691 q 422 885 474 838 q 301 933 371 933 q 179 880 228 933 q 124 706 124 819 l 0 706 q 94 963 0 872 q 302 1044 177 1044 q 511 973 423 1044 q 607 777 607 895 m 370 0 l 230 0 l 230 151 l 370 151 l 370 0 "},"H":{"x_min":0,"x_max":803,"ha":915,"o":"m 803 0 l 667 0 l 667 475 l 140 475 l 140 0 l 0 0 l 0 1013 l 140 1013 l 140 599 l 667 599 l 667 1013 l 803 1013 l 803 0 "},"\u03bd":{"x_min":0,"x_max":675,"ha":761,"o":"m 675 738 l 404 0 l 272 0 l 0 738 l 133 738 l 340 147 l 541 738 l 675 738 "},"c":{"x_min":1,"x_max":701.390625,"ha":775,"o":"m 701 264 q 584 53 681 133 q 353 -26 487 -26 q 91 91 188 -26 q 1 370 1 201 q 92 645 1 537 q 353 761 190 761 q 572 688 479 761 q 690 493 666 615 l 556 493 q 487 606 545 562 q 356 650 428 650 q 186 563 246 650 q 134 372 134 487 q 188 179 134 258 q 359 88 250 88 q 492 136 437 88 q 566 264 548 185 l 701 264 "},"\xb6":{"x_min":0,"x_max":566.671875,"ha":678,"o":"m 21 892 l 52 892 l 98 761 l 145 892 l 176 892 l 178 741 l 157 741 l 157 867 l 108 741 l 88 741 l 40 871 l 40 741 l 21 741 l 21 892 m 308 854 l 308 731 q 252 691 308 691 q 227 691 240 691 q 207 696 213 695 l 207 712 l 253 706 q 288 733 288 706 l 288 763 q 244 741 279 741 q 193 797 193 741 q 261 860 193 860 q 287 860 273 860 q 308 854 302 855 m 288 842 l 263 843 q 213 796 213 843 q 248 756 213 756 q 288 796 288 756 l 288 842 m 566 988 l 502 988 l 502 -1 l 439 -1 l 439 988 l 317 988 l 317 -1 l 252 -1 l 252 602 q 81 653 155 602 q 0 805 0 711 q 101 989 0 918 q 309 1053 194 1053 l 566 1053 l 566 988 "},"\u03b2":{"x_min":0,"x_max":660,"ha":745,"o":"m 471 550 q 610 450 561 522 q 660 280 660 378 q 578 64 660 151 q 367 -22 497 -22 q 239 5 299 -22 q 126 82 178 32 l 126 -278 l 0 -278 l 0 593 q 54 903 0 801 q 318 1042 127 1042 q 519 964 436 1042 q 603 771 603 887 q 567 644 603 701 q 471 550 532 586 m 337 79 q 476 138 418 79 q 535 279 535 198 q 427 437 535 386 q 226 477 344 477 l 226 583 q 398 620 329 583 q 486 762 486 668 q 435 884 486 833 q 312 935 384 935 q 169 861 219 935 q 126 698 126 797 l 126 362 q 170 169 126 242 q 337 79 224 79 "},"\u039c":{"x_min":0,"x_max":954,"ha":1068,"o":"m 954 0 l 819 0 l 819 868 l 537 0 l 405 0 l 128 865 l 128 0 l 0 0 l 0 1013 l 199 1013 l 472 158 l 758 1013 l 954 1013 l 954 0 "},"\u038c":{"x_min":0.109375,"x_max":1120,"ha":1217,"o":"m 1120 505 q 994 132 1120 282 q 642 -29 861 -29 q 290 130 422 -29 q 167 505 167 280 q 294 883 167 730 q 650 1046 430 1046 q 999 882 868 1046 q 1120 505 1120 730 m 977 504 q 896 784 977 669 q 644 915 804 915 q 391 785 484 915 q 307 504 307 669 q 391 224 307 339 q 644 95 486 95 q 894 224 803 95 q 977 504 977 339 m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 "},"\u0389":{"x_min":0,"x_max":1158,"ha":1275,"o":"m 1158 0 l 1022 0 l 1022 475 l 496 475 l 496 0 l 356 0 l 356 1012 l 496 1012 l 496 599 l 1022 599 l 1022 1012 l 1158 1012 l 1158 0 m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 "},"\u2022":{"x_min":0,"x_max":663.890625,"ha":775,"o":"m 663 529 q 566 293 663 391 q 331 196 469 196 q 97 294 194 196 q 0 529 0 393 q 96 763 0 665 q 331 861 193 861 q 566 763 469 861 q 663 529 663 665 "},"\xa5":{"x_min":0.1875,"x_max":819.546875,"ha":886,"o":"m 563 561 l 697 561 l 696 487 l 520 487 l 482 416 l 482 380 l 697 380 l 695 308 l 482 308 l 482 0 l 342 0 l 342 308 l 125 308 l 125 380 l 342 380 l 342 417 l 303 487 l 125 487 l 125 561 l 258 561 l 0 1013 l 140 1013 l 411 533 l 679 1013 l 819 1013 l 563 561 "},"(":{"x_min":0,"x_max":318.0625,"ha":415,"o":"m 318 -290 l 230 -290 q 61 23 122 -142 q 0 365 0 190 q 62 712 0 540 q 230 1024 119 869 l 318 1024 q 175 705 219 853 q 125 360 125 542 q 176 22 125 187 q 318 -290 223 -127 "},"U":{"x_min":0,"x_max":796,"ha":904,"o":"m 796 393 q 681 93 796 212 q 386 -25 566 -25 q 101 95 208 -25 q 0 393 0 211 l 0 1013 l 138 1013 l 138 391 q 204 191 138 270 q 394 107 276 107 q 586 191 512 107 q 656 391 656 270 l 656 1013 l 796 1013 l 796 393 "},"\u03b3":{"x_min":0.5,"x_max":744.953125,"ha":822,"o":"m 744 737 l 463 54 l 463 -278 l 338 -278 l 338 54 l 154 495 q 104 597 124 569 q 13 651 67 651 l 0 651 l 0 751 l 39 753 q 168 711 121 753 q 242 594 207 676 l 403 208 l 617 737 l 744 737 "},"\u03b1":{"x_min":0,"x_max":765.5625,"ha":809,"o":"m 765 -4 q 698 -14 726 -14 q 564 97 586 -14 q 466 7 525 40 q 337 -26 407 -26 q 88 98 186 -26 q 0 369 0 212 q 88 637 0 525 q 337 760 184 760 q 465 728 407 760 q 563 637 524 696 l 563 739 l 685 739 l 685 222 q 693 141 685 168 q 748 94 708 94 q 765 96 760 94 l 765 -4 m 584 371 q 531 562 584 485 q 360 653 470 653 q 192 566 254 653 q 135 379 135 489 q 186 181 135 261 q 358 84 247 84 q 528 176 465 84 q 584 371 584 260 "},"F":{"x_min":0,"x_max":683.328125,"ha":717,"o":"m 683 888 l 140 888 l 140 583 l 613 583 l 613 458 l 140 458 l 140 0 l 0 0 l 0 1013 l 683 1013 l 683 888 "},"\xad":{"x_min":0,"x_max":705.5625,"ha":803,"o":"m 705 334 l 0 334 l 0 410 l 705 410 l 705 334 "},":":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 585 l 0 585 l 0 738 l 142 738 l 142 585 m 142 0 l 0 0 l 0 151 l 142 151 l 142 0 "},"\u03a7":{"x_min":0,"x_max":854.171875,"ha":935,"o":"m 854 0 l 683 0 l 423 409 l 166 0 l 0 0 l 347 519 l 18 1013 l 186 1013 l 427 637 l 675 1013 l 836 1013 l 504 521 l 854 0 "},"*":{"x_min":116,"x_max":674,"ha":792,"o":"m 674 768 l 475 713 l 610 544 l 517 477 l 394 652 l 272 478 l 178 544 l 314 713 l 116 766 l 153 876 l 341 812 l 342 1013 l 446 1013 l 446 811 l 635 874 l 674 768 "},"\u2020":{"x_min":0,"x_max":777,"ha":835,"o":"m 458 804 l 777 804 l 777 683 l 458 683 l 458 0 l 319 0 l 319 681 l 0 683 l 0 804 l 319 804 l 319 1015 l 458 1013 l 458 804 "},"\xb0":{"x_min":0,"x_max":347,"ha":444,"o":"m 173 802 q 43 856 91 802 q 0 977 0 905 q 45 1101 0 1049 q 173 1153 90 1153 q 303 1098 255 1153 q 347 977 347 1049 q 303 856 347 905 q 173 802 256 802 m 173 884 q 238 910 214 884 q 262 973 262 937 q 239 1038 262 1012 q 173 1064 217 1064 q 108 1037 132 1064 q 85 973 85 1010 q 108 910 85 937 q 173 884 132 884 "},"V":{"x_min":0,"x_max":862.71875,"ha":940,"o":"m 862 1013 l 505 0 l 361 0 l 0 1013 l 143 1013 l 434 165 l 718 1012 l 862 1013 "},"\u039e":{"x_min":0,"x_max":734.71875,"ha":763,"o":"m 723 889 l 9 889 l 9 1013 l 723 1013 l 723 889 m 673 463 l 61 463 l 61 589 l 673 589 l 673 463 m 734 0 l 0 0 l 0 124 l 734 124 l 734 0 "},"\xa0":{"x_min":0,"x_max":0,"ha":853},"\u03ab":{"x_min":0.328125,"x_max":819.515625,"ha":889,"o":"m 588 1046 l 460 1046 l 460 1189 l 588 1189 l 588 1046 m 360 1046 l 232 1046 l 232 1189 l 360 1189 l 360 1046 m 819 1012 l 482 416 l 482 0 l 342 0 l 342 416 l 0 1012 l 140 1012 l 411 533 l 679 1012 l 819 1012 "},"\u201d":{"x_min":0,"x_max":347,"ha":454,"o":"m 139 851 q 102 737 139 784 q 0 669 65 690 l 0 734 q 59 787 42 741 q 72 873 72 821 l 0 873 l 0 1013 l 139 1013 l 139 851 m 347 851 q 310 737 347 784 q 208 669 273 690 l 208 734 q 267 787 250 741 q 280 873 280 821 l 208 873 l 208 1013 l 347 1013 l 347 851 "},"@":{"x_min":0,"x_max":1260,"ha":1357,"o":"m 1098 -45 q 877 -160 1001 -117 q 633 -203 752 -203 q 155 -29 327 -203 q 0 360 0 127 q 176 802 0 616 q 687 1008 372 1008 q 1123 854 969 1008 q 1260 517 1260 718 q 1155 216 1260 341 q 868 82 1044 82 q 772 106 801 82 q 737 202 737 135 q 647 113 700 144 q 527 82 594 82 q 367 147 420 82 q 314 312 314 212 q 401 565 314 452 q 639 690 498 690 q 810 588 760 690 l 849 668 l 938 668 q 877 441 900 532 q 833 226 833 268 q 853 182 833 198 q 902 167 873 167 q 1088 272 1012 167 q 1159 512 1159 372 q 1051 793 1159 681 q 687 925 925 925 q 248 747 415 925 q 97 361 97 586 q 226 26 97 159 q 627 -122 370 -122 q 856 -87 737 -122 q 1061 8 976 -53 l 1098 -45 m 786 488 q 738 580 777 545 q 643 615 700 615 q 483 517 548 615 q 425 322 425 430 q 457 203 425 250 q 552 156 490 156 q 722 273 665 156 q 786 488 738 309 "},"\u038a":{"x_min":0,"x_max":499,"ha":613,"o":"m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 m 499 0 l 360 0 l 360 1012 l 499 1012 l 499 0 "},"i":{"x_min":14,"x_max":136,"ha":275,"o":"m 136 873 l 14 873 l 14 1013 l 136 1013 l 136 873 m 136 0 l 14 0 l 14 737 l 136 737 l 136 0 "},"\u0392":{"x_min":0,"x_max":778,"ha":877,"o":"m 580 545 q 724 468 671 534 q 778 310 778 402 q 673 83 778 170 q 432 0 575 0 l 0 0 l 0 1013 l 411 1013 q 629 957 541 1013 q 732 768 732 891 q 691 632 732 692 q 580 545 650 571 m 393 899 l 139 899 l 139 587 l 379 587 q 521 623 462 587 q 592 744 592 666 q 531 859 592 819 q 393 899 471 899 m 419 124 q 566 169 504 124 q 635 302 635 219 q 559 435 635 388 q 402 476 494 476 l 139 476 l 139 124 l 419 124 "},"\u03c5":{"x_min":0,"x_max":617,"ha":725,"o":"m 617 352 q 540 94 617 199 q 308 -24 455 -24 q 76 94 161 -24 q 0 352 0 199 l 0 739 l 126 739 l 126 355 q 169 185 126 257 q 312 98 220 98 q 451 185 402 98 q 492 355 492 257 l 492 739 l 617 739 l 617 352 "},"]":{"x_min":0,"x_max":275,"ha":372,"o":"m 275 -281 l 0 -281 l 0 -187 l 151 -187 l 151 920 l 0 920 l 0 1013 l 275 1013 l 275 -281 "},"m":{"x_min":0,"x_max":1019,"ha":1128,"o":"m 1019 0 l 897 0 l 897 454 q 860 591 897 536 q 739 660 816 660 q 613 586 659 660 q 573 436 573 522 l 573 0 l 447 0 l 447 455 q 412 591 447 535 q 294 657 372 657 q 165 586 213 657 q 122 437 122 521 l 122 0 l 0 0 l 0 738 l 117 738 l 117 640 q 202 730 150 697 q 316 763 254 763 q 437 730 381 763 q 525 642 494 697 q 621 731 559 700 q 753 763 682 763 q 943 694 867 763 q 1019 512 1019 625 l 1019 0 "},"\u03c7":{"x_min":8.328125,"x_max":780.5625,"ha":815,"o":"m 780 -278 q 715 -294 747 -294 q 616 -257 663 -294 q 548 -175 576 -227 l 379 133 l 143 -277 l 9 -277 l 313 254 l 163 522 q 127 586 131 580 q 36 640 91 640 q 8 637 27 640 l 8 752 l 52 757 q 162 719 113 757 q 236 627 200 690 l 383 372 l 594 737 l 726 737 l 448 250 l 625 -69 q 670 -153 647 -110 q 743 -188 695 -188 q 780 -184 759 -188 l 780 -278 "},"\u03af":{"x_min":42,"x_max":326.71875,"ha":361,"o":"m 284 3 q 233 -10 258 -5 q 182 -15 207 -15 q 85 26 119 -15 q 42 200 42 79 l 42 737 l 167 737 l 168 215 q 172 141 168 157 q 226 101 183 101 q 248 102 239 101 q 284 112 257 104 l 284 3 m 326 1040 l 137 819 l 54 819 l 189 1040 l 326 1040 "},"\u0396":{"x_min":0,"x_max":779.171875,"ha":850,"o":"m 779 0 l 0 0 l 0 113 l 620 896 l 40 896 l 40 1013 l 779 1013 l 779 887 l 170 124 l 779 124 l 779 0 "},"R":{"x_min":0,"x_max":781.953125,"ha":907,"o":"m 781 0 l 623 0 q 587 242 590 52 q 407 433 585 433 l 138 433 l 138 0 l 0 0 l 0 1013 l 396 1013 q 636 946 539 1013 q 749 731 749 868 q 711 597 749 659 q 608 502 674 534 q 718 370 696 474 q 729 207 722 352 q 781 26 736 62 l 781 0 m 373 551 q 533 594 465 551 q 614 731 614 645 q 532 859 614 815 q 373 896 465 896 l 138 896 l 138 551 l 373 551 "},"o":{"x_min":0,"x_max":713,"ha":821,"o":"m 357 -25 q 94 91 194 -25 q 0 368 0 202 q 93 642 0 533 q 357 761 193 761 q 618 644 518 761 q 713 368 713 533 q 619 91 713 201 q 357 -25 521 -25 m 357 85 q 528 175 465 85 q 584 369 584 255 q 529 562 584 484 q 357 651 467 651 q 189 560 250 651 q 135 369 135 481 q 187 177 135 257 q 357 85 250 85 "},"K":{"x_min":0,"x_max":819.46875,"ha":906,"o":"m 819 0 l 649 0 l 294 509 l 139 355 l 139 0 l 0 0 l 0 1013 l 139 1013 l 139 526 l 626 1013 l 809 1013 l 395 600 l 819 0 "},",":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 -12 q 105 -132 142 -82 q 0 -205 68 -182 l 0 -138 q 57 -82 40 -124 q 70 0 70 -51 l 0 0 l 0 151 l 142 151 l 142 -12 "},"d":{"x_min":0,"x_max":683,"ha":796,"o":"m 683 0 l 564 0 l 564 93 q 456 6 516 38 q 327 -25 395 -25 q 87 100 181 -25 q 0 365 0 215 q 90 639 0 525 q 343 763 187 763 q 564 647 486 763 l 564 1013 l 683 1013 l 683 0 m 582 373 q 529 562 582 484 q 361 653 468 653 q 190 561 253 653 q 135 365 135 479 q 189 175 135 254 q 358 85 251 85 q 529 178 468 85 q 582 373 582 258 "},"\xa8":{"x_min":-109,"x_max":247,"ha":232,"o":"m 247 1046 l 119 1046 l 119 1189 l 247 1189 l 247 1046 m 19 1046 l -109 1046 l -109 1189 l 19 1189 l 19 1046 "},"E":{"x_min":0,"x_max":736.109375,"ha":789,"o":"m 736 0 l 0 0 l 0 1013 l 725 1013 l 725 889 l 139 889 l 139 585 l 677 585 l 677 467 l 139 467 l 139 125 l 736 125 l 736 0 "},"Y":{"x_min":0,"x_max":820,"ha":886,"o":"m 820 1013 l 482 416 l 482 0 l 342 0 l 342 416 l 0 1013 l 140 1013 l 411 534 l 679 1012 l 820 1013 "},"\\"":{"x_min":0,"x_max":299,"ha":396,"o":"m 299 606 l 203 606 l 203 988 l 299 988 l 299 606 m 96 606 l 0 606 l 0 988 l 96 988 l 96 606 "},"\u2039":{"x_min":17.984375,"x_max":773.609375,"ha":792,"o":"m 773 40 l 18 376 l 17 465 l 773 799 l 773 692 l 159 420 l 773 149 l 773 40 "},"\u201e":{"x_min":0,"x_max":364,"ha":467,"o":"m 141 -12 q 104 -132 141 -82 q 0 -205 67 -182 l 0 -138 q 56 -82 40 -124 q 69 0 69 -51 l 0 0 l 0 151 l 141 151 l 141 -12 m 364 -12 q 327 -132 364 -82 q 222 -205 290 -182 l 222 -138 q 279 -82 262 -124 q 292 0 292 -51 l 222 0 l 222 151 l 364 151 l 364 -12 "},"\u03b4":{"x_min":1,"x_max":710,"ha":810,"o":"m 710 360 q 616 87 710 196 q 356 -28 518 -28 q 99 82 197 -28 q 1 356 1 192 q 100 606 1 509 q 355 703 199 703 q 180 829 288 754 q 70 903 124 866 l 70 1012 l 643 1012 l 643 901 l 258 901 q 462 763 422 794 q 636 592 577 677 q 710 360 710 485 m 584 365 q 552 501 584 447 q 451 602 521 555 q 372 611 411 611 q 197 541 258 611 q 136 355 136 472 q 190 171 136 245 q 358 85 252 85 q 528 173 465 85 q 584 365 584 252 "},"\u03ad":{"x_min":0,"x_max":634.71875,"ha":714,"o":"m 634 234 q 527 38 634 110 q 300 -25 433 -25 q 98 29 183 -25 q 0 204 0 93 q 37 313 0 265 q 128 390 67 352 q 56 459 82 419 q 26 555 26 505 q 114 712 26 654 q 295 763 191 763 q 499 700 416 763 q 589 515 589 631 l 478 515 q 419 618 464 580 q 307 657 374 657 q 207 630 253 657 q 151 547 151 598 q 238 445 151 469 q 389 434 280 434 l 389 331 l 349 331 q 206 315 255 331 q 125 210 125 287 q 183 107 125 145 q 302 76 233 76 q 436 117 379 76 q 509 234 493 159 l 634 234 m 520 1040 l 331 819 l 248 819 l 383 1040 l 520 1040 "},"\u03c9":{"x_min":0,"x_max":922,"ha":1031,"o":"m 922 339 q 856 97 922 203 q 650 -26 780 -26 q 538 9 587 -26 q 461 103 489 44 q 387 12 436 46 q 277 -22 339 -22 q 69 97 147 -22 q 0 339 0 203 q 45 551 0 444 q 161 738 84 643 l 302 738 q 175 553 219 647 q 124 336 124 446 q 155 179 124 249 q 275 88 197 88 q 375 163 341 88 q 400 294 400 219 l 400 572 l 524 572 l 524 294 q 561 135 524 192 q 643 88 591 88 q 762 182 719 88 q 797 342 797 257 q 745 556 797 450 q 619 738 705 638 l 760 738 q 874 551 835 640 q 922 339 922 444 "},"\xb4":{"x_min":0,"x_max":96,"ha":251,"o":"m 96 606 l 0 606 l 0 988 l 96 988 l 96 606 "},"\xb1":{"x_min":11,"x_max":781,"ha":792,"o":"m 781 490 l 446 490 l 446 255 l 349 255 l 349 490 l 11 490 l 11 586 l 349 586 l 349 819 l 446 819 l 446 586 l 781 586 l 781 490 m 781 21 l 11 21 l 11 115 l 781 115 l 781 21 "},"|":{"x_min":343,"x_max":449,"ha":792,"o":"m 449 462 l 343 462 l 343 986 l 449 986 l 449 462 m 449 -242 l 343 -242 l 343 280 l 449 280 l 449 -242 "},"\u03cb":{"x_min":0,"x_max":617,"ha":725,"o":"m 482 800 l 372 800 l 372 925 l 482 925 l 482 800 m 239 800 l 129 800 l 129 925 l 239 925 l 239 800 m 617 352 q 540 93 617 199 q 308 -24 455 -24 q 76 93 161 -24 q 0 352 0 199 l 0 738 l 126 738 l 126 354 q 169 185 126 257 q 312 98 220 98 q 451 185 402 98 q 492 354 492 257 l 492 738 l 617 738 l 617 352 "},"\xa7":{"x_min":0,"x_max":593,"ha":690,"o":"m 593 425 q 554 312 593 369 q 467 233 516 254 q 537 83 537 172 q 459 -74 537 -12 q 288 -133 387 -133 q 115 -69 184 -133 q 47 96 47 -6 l 166 96 q 199 7 166 40 q 288 -26 232 -26 q 371 -5 332 -26 q 420 60 420 21 q 311 201 420 139 q 108 309 210 255 q 0 490 0 383 q 33 602 0 551 q 124 687 66 654 q 75 743 93 712 q 58 812 58 773 q 133 984 58 920 q 300 1043 201 1043 q 458 987 394 1043 q 529 814 529 925 l 411 814 q 370 908 404 877 q 289 939 336 939 q 213 911 246 939 q 180 841 180 883 q 286 720 180 779 q 484 612 480 615 q 593 425 593 534 m 467 409 q 355 544 467 473 q 196 630 228 612 q 146 587 162 609 q 124 525 124 558 q 239 387 124 462 q 398 298 369 315 q 448 345 429 316 q 467 409 467 375 "},"b":{"x_min":0,"x_max":685,"ha":783,"o":"m 685 372 q 597 99 685 213 q 347 -25 501 -25 q 219 5 277 -25 q 121 93 161 36 l 121 0 l 0 0 l 0 1013 l 121 1013 l 121 634 q 214 723 157 692 q 341 754 272 754 q 591 637 493 754 q 685 372 685 526 m 554 356 q 499 550 554 470 q 328 644 437 644 q 162 556 223 644 q 108 369 108 478 q 160 176 108 256 q 330 83 221 83 q 498 169 435 83 q 554 356 554 245 "},"q":{"x_min":0,"x_max":683,"ha":876,"o":"m 683 -278 l 564 -278 l 564 97 q 474 8 533 39 q 345 -23 415 -23 q 91 93 188 -23 q 0 364 0 203 q 87 635 0 522 q 337 760 184 760 q 466 727 408 760 q 564 637 523 695 l 564 737 l 683 737 l 683 -278 m 582 375 q 527 564 582 488 q 358 652 466 652 q 190 565 253 652 q 135 377 135 488 q 189 179 135 261 q 361 84 251 84 q 530 179 469 84 q 582 375 582 260 "},"\u03a9":{"x_min":-0.171875,"x_max":969.5625,"ha":1068,"o":"m 969 0 l 555 0 l 555 123 q 744 308 675 194 q 814 558 814 423 q 726 812 814 709 q 484 922 633 922 q 244 820 334 922 q 154 567 154 719 q 223 316 154 433 q 412 123 292 199 l 412 0 l 0 0 l 0 124 l 217 124 q 68 327 122 210 q 15 572 15 444 q 144 911 15 781 q 484 1041 274 1041 q 822 909 691 1041 q 953 569 953 777 q 899 326 953 443 q 750 124 846 210 l 969 124 l 969 0 "},"\u03cd":{"x_min":0,"x_max":617,"ha":725,"o":"m 617 352 q 540 93 617 199 q 308 -24 455 -24 q 76 93 161 -24 q 0 352 0 199 l 0 738 l 126 738 l 126 354 q 169 185 126 257 q 312 98 220 98 q 451 185 402 98 q 492 354 492 257 l 492 738 l 617 738 l 617 352 m 535 1040 l 346 819 l 262 819 l 397 1040 l 535 1040 "},"z":{"x_min":-0.015625,"x_max":613.890625,"ha":697,"o":"m 613 0 l 0 0 l 0 100 l 433 630 l 20 630 l 20 738 l 594 738 l 593 636 l 163 110 l 613 110 l 613 0 "},"\u2122":{"x_min":0,"x_max":894,"ha":1000,"o":"m 389 951 l 229 951 l 229 503 l 160 503 l 160 951 l 0 951 l 0 1011 l 389 1011 l 389 951 m 894 503 l 827 503 l 827 939 l 685 503 l 620 503 l 481 937 l 481 503 l 417 503 l 417 1011 l 517 1011 l 653 580 l 796 1010 l 894 1011 l 894 503 "},"\u03ae":{"x_min":0.78125,"x_max":697,"ha":810,"o":"m 697 -278 l 572 -278 l 572 454 q 540 587 572 536 q 425 650 501 650 q 271 579 337 650 q 206 420 206 509 l 206 0 l 81 0 l 81 489 q 73 588 81 562 q 0 644 56 644 l 0 741 q 68 755 38 755 q 158 721 124 755 q 200 630 193 687 q 297 726 234 692 q 434 761 359 761 q 620 692 544 761 q 697 516 697 624 l 697 -278 m 479 1040 l 290 819 l 207 819 l 341 1040 l 479 1040 "},"\u0398":{"x_min":0,"x_max":960,"ha":1056,"o":"m 960 507 q 833 129 960 280 q 476 -32 698 -32 q 123 129 255 -32 q 0 507 0 280 q 123 883 0 732 q 476 1045 255 1045 q 832 883 696 1045 q 960 507 960 732 m 817 500 q 733 789 817 669 q 476 924 639 924 q 223 792 317 924 q 142 507 142 675 q 222 222 142 339 q 476 89 315 89 q 730 218 636 89 q 817 500 817 334 m 716 449 l 243 449 l 243 571 l 716 571 l 716 449 "},"\xae":{"x_min":-3,"x_max":1008,"ha":1106,"o":"m 503 532 q 614 562 566 532 q 672 658 672 598 q 614 747 672 716 q 503 772 569 772 l 338 772 l 338 532 l 503 532 m 502 -7 q 123 151 263 -7 q -3 501 -3 294 q 123 851 -3 706 q 502 1011 263 1011 q 881 851 739 1011 q 1008 501 1008 708 q 883 151 1008 292 q 502 -7 744 -7 m 502 60 q 830 197 709 60 q 940 501 940 322 q 831 805 940 681 q 502 944 709 944 q 174 805 296 944 q 65 501 65 680 q 173 197 65 320 q 502 60 294 60 m 788 146 l 678 146 q 653 316 655 183 q 527 449 652 449 l 338 449 l 338 146 l 241 146 l 241 854 l 518 854 q 688 808 621 854 q 766 658 766 755 q 739 563 766 607 q 668 497 713 519 q 751 331 747 472 q 788 164 756 190 l 788 146 "},"~":{"x_min":0,"x_max":833,"ha":931,"o":"m 833 958 q 778 753 833 831 q 594 665 716 665 q 402 761 502 665 q 240 857 302 857 q 131 795 166 857 q 104 665 104 745 l 0 665 q 54 867 0 789 q 237 958 116 958 q 429 861 331 958 q 594 765 527 765 q 704 827 670 765 q 729 958 729 874 l 833 958 "},"\u0395":{"x_min":0,"x_max":736.21875,"ha":778,"o":"m 736 0 l 0 0 l 0 1013 l 725 1013 l 725 889 l 139 889 l 139 585 l 677 585 l 677 467 l 139 467 l 139 125 l 736 125 l 736 0 "},"\xb3":{"x_min":0,"x_max":450,"ha":547,"o":"m 450 552 q 379 413 450 464 q 220 366 313 366 q 69 414 130 366 q 0 567 0 470 l 85 567 q 126 470 85 504 q 225 437 168 437 q 320 467 280 437 q 360 552 360 498 q 318 632 360 608 q 213 657 276 657 q 195 657 203 657 q 176 657 181 657 l 176 722 q 279 733 249 722 q 334 815 334 752 q 300 881 334 856 q 220 907 267 907 q 133 875 169 907 q 97 781 97 844 l 15 781 q 78 926 15 875 q 220 972 135 972 q 364 930 303 972 q 426 817 426 888 q 344 697 426 733 q 421 642 392 681 q 450 552 450 603 "},"[":{"x_min":0,"x_max":273.609375,"ha":371,"o":"m 273 -281 l 0 -281 l 0 1013 l 273 1013 l 273 920 l 124 920 l 124 -187 l 273 -187 l 273 -281 "},"L":{"x_min":0,"x_max":645.828125,"ha":696,"o":"m 645 0 l 0 0 l 0 1013 l 140 1013 l 140 126 l 645 126 l 645 0 "},"\u03c3":{"x_min":0,"x_max":803.390625,"ha":894,"o":"m 803 628 l 633 628 q 713 368 713 512 q 618 93 713 204 q 357 -25 518 -25 q 94 91 194 -25 q 0 368 0 201 q 94 644 0 533 q 356 761 194 761 q 481 750 398 761 q 608 739 564 739 l 803 739 l 803 628 m 360 85 q 529 180 467 85 q 584 374 584 262 q 527 566 584 490 q 352 651 463 651 q 187 559 247 651 q 135 368 135 478 q 189 175 135 254 q 360 85 251 85 "},"\u03b6":{"x_min":0,"x_max":573,"ha":642,"o":"m 573 -40 q 553 -162 573 -97 q 510 -278 543 -193 l 400 -278 q 441 -187 428 -219 q 462 -90 462 -132 q 378 -14 462 -14 q 108 45 197 -14 q 0 290 0 117 q 108 631 0 462 q 353 901 194 767 l 55 901 l 55 1012 l 561 1012 l 561 924 q 261 669 382 831 q 128 301 128 489 q 243 117 128 149 q 458 98 350 108 q 573 -40 573 80 "},"\u03b8":{"x_min":0,"x_max":674,"ha":778,"o":"m 674 496 q 601 160 674 304 q 336 -26 508 -26 q 73 153 165 -26 q 0 485 0 296 q 72 840 0 683 q 343 1045 166 1045 q 605 844 516 1045 q 674 496 674 692 m 546 579 q 498 798 546 691 q 336 935 437 935 q 178 798 237 935 q 126 579 137 701 l 546 579 m 546 475 l 126 475 q 170 233 126 348 q 338 80 230 80 q 504 233 447 80 q 546 475 546 346 "},"\u039f":{"x_min":0,"x_max":958,"ha":1054,"o":"m 485 1042 q 834 883 703 1042 q 958 511 958 735 q 834 136 958 287 q 481 -26 701 -26 q 126 130 261 -26 q 0 504 0 279 q 127 880 0 729 q 485 1042 263 1042 m 480 98 q 731 225 638 98 q 815 504 815 340 q 733 783 815 670 q 480 913 640 913 q 226 785 321 913 q 142 504 142 671 q 226 224 142 339 q 480 98 319 98 "},"\u0393":{"x_min":0,"x_max":705.28125,"ha":749,"o":"m 705 886 l 140 886 l 140 0 l 0 0 l 0 1012 l 705 1012 l 705 886 "}," ":{"x_min":0,"x_max":0,"ha":375},"%":{"x_min":-3,"x_max":1089,"ha":1186,"o":"m 845 0 q 663 76 731 0 q 602 244 602 145 q 661 412 602 344 q 845 489 728 489 q 1027 412 959 489 q 1089 244 1089 343 q 1029 76 1089 144 q 845 0 962 0 m 844 103 q 945 143 909 103 q 981 243 981 184 q 947 340 981 301 q 844 385 909 385 q 744 342 781 385 q 708 243 708 300 q 741 147 708 186 q 844 103 780 103 m 888 986 l 284 -25 l 199 -25 l 803 986 l 888 986 m 241 468 q 58 545 126 468 q -3 715 -3 615 q 56 881 -3 813 q 238 958 124 958 q 421 881 353 958 q 483 712 483 813 q 423 544 483 612 q 241 468 356 468 m 241 855 q 137 811 175 855 q 100 710 100 768 q 136 612 100 653 q 240 572 172 572 q 344 614 306 572 q 382 713 382 656 q 347 810 382 771 q 241 855 308 855 "},"P":{"x_min":0,"x_max":726,"ha":806,"o":"m 424 1013 q 640 931 555 1013 q 726 719 726 850 q 637 506 726 587 q 413 426 548 426 l 140 426 l 140 0 l 0 0 l 0 1013 l 424 1013 m 379 889 l 140 889 l 140 548 l 372 548 q 522 589 459 548 q 593 720 593 637 q 528 845 593 801 q 379 889 463 889 "},"\u0388":{"x_min":0,"x_max":1078.21875,"ha":1118,"o":"m 1078 0 l 342 0 l 342 1013 l 1067 1013 l 1067 889 l 481 889 l 481 585 l 1019 585 l 1019 467 l 481 467 l 481 125 l 1078 125 l 1078 0 m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 "},"\u038f":{"x_min":0.125,"x_max":1136.546875,"ha":1235,"o":"m 1136 0 l 722 0 l 722 123 q 911 309 842 194 q 981 558 981 423 q 893 813 981 710 q 651 923 800 923 q 411 821 501 923 q 321 568 321 720 q 390 316 321 433 q 579 123 459 200 l 579 0 l 166 0 l 166 124 l 384 124 q 235 327 289 210 q 182 572 182 444 q 311 912 182 782 q 651 1042 441 1042 q 989 910 858 1042 q 1120 569 1120 778 q 1066 326 1120 443 q 917 124 1013 210 l 1136 124 l 1136 0 m 277 1040 l 83 800 l 0 800 l 140 1041 l 277 1040 "},"_":{"x_min":0,"x_max":705.5625,"ha":803,"o":"m 705 -334 l 0 -334 l 0 -234 l 705 -234 l 705 -334 "},"\u03aa":{"x_min":-110,"x_max":246,"ha":275,"o":"m 246 1046 l 118 1046 l 118 1189 l 246 1189 l 246 1046 m 18 1046 l -110 1046 l -110 1189 l 18 1189 l 18 1046 m 136 0 l 0 0 l 0 1012 l 136 1012 l 136 0 "},"+":{"x_min":23,"x_max":768,"ha":792,"o":"m 768 372 l 444 372 l 444 0 l 347 0 l 347 372 l 23 372 l 23 468 l 347 468 l 347 840 l 444 840 l 444 468 l 768 468 l 768 372 "},"\xbd":{"x_min":0,"x_max":1050,"ha":1149,"o":"m 1050 0 l 625 0 q 712 178 625 108 q 878 277 722 187 q 967 385 967 328 q 932 456 967 429 q 850 484 897 484 q 759 450 798 484 q 721 352 721 416 l 640 352 q 706 502 640 448 q 851 551 766 551 q 987 509 931 551 q 1050 385 1050 462 q 976 251 1050 301 q 829 179 902 215 q 717 68 740 133 l 1050 68 l 1050 0 m 834 985 l 215 -28 l 130 -28 l 750 984 l 834 985 m 224 422 l 142 422 l 142 811 l 0 811 l 0 867 q 104 889 62 867 q 164 973 157 916 l 224 973 l 224 422 "},"\u03a1":{"x_min":0,"x_max":720,"ha":783,"o":"m 424 1013 q 637 933 554 1013 q 720 723 720 853 q 633 508 720 591 q 413 426 546 426 l 140 426 l 140 0 l 0 0 l 0 1013 l 424 1013 m 378 889 l 140 889 l 140 548 l 371 548 q 521 589 458 548 q 592 720 592 637 q 527 845 592 801 q 378 889 463 889 "},"\'":{"x_min":0,"x_max":139,"ha":236,"o":"m 139 851 q 102 737 139 784 q 0 669 65 690 l 0 734 q 59 787 42 741 q 72 873 72 821 l 0 873 l 0 1013 l 139 1013 l 139 851 "},"\xaa":{"x_min":0,"x_max":350,"ha":397,"o":"m 350 625 q 307 616 328 616 q 266 631 281 616 q 247 673 251 645 q 190 628 225 644 q 116 613 156 613 q 32 641 64 613 q 0 722 0 669 q 72 826 0 800 q 247 866 159 846 l 247 887 q 220 934 247 916 q 162 953 194 953 q 104 934 129 953 q 76 882 80 915 l 16 882 q 60 976 16 941 q 166 1011 104 1011 q 266 979 224 1011 q 308 891 308 948 l 308 706 q 311 679 308 688 q 331 670 315 670 l 350 672 l 350 625 m 247 757 l 247 811 q 136 790 175 798 q 64 726 64 773 q 83 682 64 697 q 132 667 103 667 q 207 690 174 667 q 247 757 247 718 "},"\u0385":{"x_min":0,"x_max":450,"ha":553,"o":"m 450 800 l 340 800 l 340 925 l 450 925 l 450 800 m 406 1040 l 212 800 l 129 800 l 269 1040 l 406 1040 m 110 800 l 0 800 l 0 925 l 110 925 l 110 800 "},"T":{"x_min":0,"x_max":777,"ha":835,"o":"m 777 894 l 458 894 l 458 0 l 319 0 l 319 894 l 0 894 l 0 1013 l 777 1013 l 777 894 "},"\u03a6":{"x_min":0,"x_max":915,"ha":997,"o":"m 527 0 l 389 0 l 389 122 q 110 231 220 122 q 0 509 0 340 q 110 785 0 677 q 389 893 220 893 l 389 1013 l 527 1013 l 527 893 q 804 786 693 893 q 915 509 915 679 q 805 231 915 341 q 527 122 696 122 l 527 0 m 527 226 q 712 310 641 226 q 779 507 779 389 q 712 705 779 627 q 527 787 641 787 l 527 226 m 389 226 l 389 787 q 205 698 275 775 q 136 505 136 620 q 206 308 136 391 q 389 226 276 226 "},"\u204b":{"x_min":0,"x_max":0,"ha":694},"j":{"x_min":-77.78125,"x_max":167,"ha":349,"o":"m 167 871 l 42 871 l 42 1013 l 167 1013 l 167 871 m 167 -80 q 121 -231 167 -184 q -26 -278 76 -278 l -77 -278 l -77 -164 l -41 -164 q 26 -143 11 -164 q 42 -65 42 -122 l 42 737 l 167 737 l 167 -80 "},"\u03a3":{"x_min":0,"x_max":756.953125,"ha":819,"o":"m 756 0 l 0 0 l 0 107 l 395 523 l 22 904 l 22 1013 l 745 1013 l 745 889 l 209 889 l 566 523 l 187 125 l 756 125 l 756 0 "},"\u203a":{"x_min":18.0625,"x_max":774,"ha":792,"o":"m 774 376 l 18 40 l 18 149 l 631 421 l 18 692 l 18 799 l 774 465 l 774 376 "},"<":{"x_min":17.984375,"x_max":773.609375,"ha":792,"o":"m 773 40 l 18 376 l 17 465 l 773 799 l 773 692 l 159 420 l 773 149 l 773 40 "},"\xa3":{"x_min":0,"x_max":704.484375,"ha":801,"o":"m 704 41 q 623 -10 664 5 q 543 -26 583 -26 q 359 15 501 -26 q 243 36 288 36 q 158 23 197 36 q 73 -21 119 10 l 6 76 q 125 195 90 150 q 175 331 175 262 q 147 443 175 383 l 0 443 l 0 512 l 108 512 q 43 734 43 623 q 120 929 43 854 q 358 1010 204 1010 q 579 936 487 1010 q 678 729 678 857 l 678 684 l 552 684 q 504 838 552 780 q 362 896 457 896 q 216 852 263 896 q 176 747 176 815 q 199 627 176 697 q 248 512 217 574 l 468 512 l 468 443 l 279 443 q 297 356 297 398 q 230 194 297 279 q 153 107 211 170 q 227 133 190 125 q 293 142 264 142 q 410 119 339 142 q 516 96 482 96 q 579 105 550 96 q 648 142 608 115 l 704 41 "},"t":{"x_min":0,"x_max":367,"ha":458,"o":"m 367 0 q 312 -5 339 -2 q 262 -8 284 -8 q 145 28 183 -8 q 108 143 108 64 l 108 638 l 0 638 l 0 738 l 108 738 l 108 944 l 232 944 l 232 738 l 367 738 l 367 638 l 232 638 l 232 185 q 248 121 232 140 q 307 102 264 102 q 345 104 330 102 q 367 107 360 107 l 367 0 "},"\xac":{"x_min":0,"x_max":706,"ha":803,"o":"m 706 411 l 706 158 l 630 158 l 630 335 l 0 335 l 0 411 l 706 411 "},"\u03bb":{"x_min":0,"x_max":750,"ha":803,"o":"m 750 -7 q 679 -15 716 -15 q 538 59 591 -15 q 466 214 512 97 l 336 551 l 126 0 l 0 0 l 270 705 q 223 837 247 770 q 116 899 190 899 q 90 898 100 899 l 90 1004 q 152 1011 125 1011 q 298 938 244 1011 q 373 783 326 901 l 605 192 q 649 115 629 136 q 716 95 669 95 l 736 95 q 750 97 745 97 l 750 -7 "},"W":{"x_min":0,"x_max":1263.890625,"ha":1351,"o":"m 1263 1013 l 995 0 l 859 0 l 627 837 l 405 0 l 265 0 l 0 1013 l 136 1013 l 342 202 l 556 1013 l 701 1013 l 921 207 l 1133 1012 l 1263 1013 "},">":{"x_min":18.0625,"x_max":774,"ha":792,"o":"m 774 376 l 18 40 l 18 149 l 631 421 l 18 692 l 18 799 l 774 465 l 774 376 "},"v":{"x_min":0,"x_max":675.15625,"ha":761,"o":"m 675 738 l 404 0 l 272 0 l 0 738 l 133 737 l 340 147 l 541 737 l 675 738 "},"\u03c4":{"x_min":0.28125,"x_max":644.5,"ha":703,"o":"m 644 628 l 382 628 l 382 179 q 388 120 382 137 q 436 91 401 91 q 474 94 447 91 q 504 97 501 97 l 504 0 q 454 -9 482 -5 q 401 -14 426 -14 q 278 67 308 -14 q 260 233 260 118 l 260 628 l 0 628 l 0 739 l 644 739 l 644 628 "},"\u03be":{"x_min":0,"x_max":624.9375,"ha":699,"o":"m 624 -37 q 608 -153 624 -96 q 563 -278 593 -211 l 454 -278 q 491 -183 486 -200 q 511 -83 511 -126 q 484 -23 511 -44 q 370 1 452 1 q 323 0 354 1 q 283 -1 293 -1 q 84 76 169 -1 q 0 266 0 154 q 56 431 0 358 q 197 538 108 498 q 94 613 134 562 q 54 730 54 665 q 77 823 54 780 q 143 901 101 867 l 27 901 l 27 1012 l 576 1012 l 576 901 l 380 901 q 244 863 303 901 q 178 745 178 820 q 312 600 178 636 q 532 582 380 582 l 532 479 q 276 455 361 479 q 118 281 118 410 q 165 173 118 217 q 274 120 208 133 q 494 101 384 110 q 624 -37 624 76 "},"&":{"x_min":-3,"x_max":894.25,"ha":992,"o":"m 894 0 l 725 0 l 624 123 q 471 0 553 40 q 306 -41 390 -41 q 168 -7 231 -41 q 62 92 105 26 q 14 187 31 139 q -3 276 -3 235 q 55 433 -3 358 q 248 581 114 508 q 170 689 196 640 q 137 817 137 751 q 214 985 137 922 q 384 1041 284 1041 q 548 988 483 1041 q 622 824 622 928 q 563 666 622 739 q 431 556 516 608 l 621 326 q 649 407 639 361 q 663 493 653 426 l 781 493 q 703 229 781 352 l 894 0 m 504 818 q 468 908 504 877 q 384 940 433 940 q 293 907 331 940 q 255 818 255 875 q 289 714 255 767 q 363 628 313 678 q 477 729 446 682 q 504 818 504 771 m 556 209 l 314 499 q 179 395 223 449 q 135 283 135 341 q 146 222 135 253 q 183 158 158 192 q 333 80 241 80 q 556 209 448 80 "},"\u039b":{"x_min":0,"x_max":862.5,"ha":942,"o":"m 862 0 l 719 0 l 426 847 l 143 0 l 0 0 l 356 1013 l 501 1013 l 862 0 "},"I":{"x_min":41,"x_max":180,"ha":293,"o":"m 180 0 l 41 0 l 41 1013 l 180 1013 l 180 0 "},"G":{"x_min":0,"x_max":921,"ha":1011,"o":"m 921 0 l 832 0 l 801 136 q 655 15 741 58 q 470 -28 568 -28 q 126 133 259 -28 q 0 499 0 284 q 125 881 0 731 q 486 1043 259 1043 q 763 957 647 1043 q 905 709 890 864 l 772 709 q 668 866 747 807 q 486 926 589 926 q 228 795 322 926 q 142 507 142 677 q 228 224 142 342 q 483 94 323 94 q 712 195 625 94 q 796 435 796 291 l 477 435 l 477 549 l 921 549 l 921 0 "},"\u03b0":{"x_min":0,"x_max":617,"ha":725,"o":"m 524 800 l 414 800 l 414 925 l 524 925 l 524 800 m 183 800 l 73 800 l 73 925 l 183 925 l 183 800 m 617 352 q 540 93 617 199 q 308 -24 455 -24 q 76 93 161 -24 q 0 352 0 199 l 0 738 l 126 738 l 126 354 q 169 185 126 257 q 312 98 220 98 q 451 185 402 98 q 492 354 492 257 l 492 738 l 617 738 l 617 352 m 489 1040 l 300 819 l 216 819 l 351 1040 l 489 1040 "},"`":{"x_min":0,"x_max":138.890625,"ha":236,"o":"m 138 699 l 0 699 l 0 861 q 36 974 0 929 q 138 1041 72 1020 l 138 977 q 82 931 95 969 q 69 839 69 893 l 138 839 l 138 699 "},"\xb7":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 585 l 0 585 l 0 738 l 142 738 l 142 585 "},"\u03a5":{"x_min":0.328125,"x_max":819.515625,"ha":889,"o":"m 819 1013 l 482 416 l 482 0 l 342 0 l 342 416 l 0 1013 l 140 1013 l 411 533 l 679 1013 l 819 1013 "},"r":{"x_min":0,"x_max":355.5625,"ha":432,"o":"m 355 621 l 343 621 q 179 569 236 621 q 122 411 122 518 l 122 0 l 0 0 l 0 737 l 117 737 l 117 604 q 204 719 146 686 q 355 753 262 753 l 355 621 "},"x":{"x_min":0,"x_max":675,"ha":764,"o":"m 675 0 l 525 0 l 331 286 l 144 0 l 0 0 l 256 379 l 12 738 l 157 737 l 336 473 l 516 738 l 661 738 l 412 380 l 675 0 "},"\u03bc":{"x_min":0,"x_max":696.609375,"ha":747,"o":"m 696 -4 q 628 -14 657 -14 q 498 97 513 -14 q 422 8 470 41 q 313 -24 374 -24 q 207 3 258 -24 q 120 80 157 31 l 120 -278 l 0 -278 l 0 738 l 124 738 l 124 343 q 165 172 124 246 q 308 82 216 82 q 451 177 402 82 q 492 358 492 254 l 492 738 l 616 738 l 616 214 q 623 136 616 160 q 673 92 636 92 q 696 95 684 92 l 696 -4 "},"h":{"x_min":0,"x_max":615,"ha":724,"o":"m 615 472 l 615 0 l 490 0 l 490 454 q 456 590 490 535 q 338 654 416 654 q 186 588 251 654 q 122 436 122 522 l 122 0 l 0 0 l 0 1013 l 122 1013 l 122 633 q 218 727 149 694 q 362 760 287 760 q 552 676 484 760 q 615 472 615 600 "},".":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 0 l 0 0 l 0 151 l 142 151 l 142 0 "},"\u03c6":{"x_min":-2,"x_max":878,"ha":974,"o":"m 496 -279 l 378 -279 l 378 -17 q 101 88 204 -17 q -2 367 -2 194 q 68 626 -2 510 q 283 758 151 758 l 283 646 q 167 537 209 626 q 133 373 133 462 q 192 177 133 254 q 378 93 259 93 l 378 758 q 445 764 426 763 q 476 765 464 765 q 765 659 653 765 q 878 377 878 553 q 771 96 878 209 q 496 -17 665 -17 l 496 -279 m 496 93 l 514 93 q 687 183 623 93 q 746 380 746 265 q 691 569 746 491 q 522 658 629 658 l 496 656 l 496 93 "},";":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 585 l 0 585 l 0 738 l 142 738 l 142 585 m 142 -12 q 105 -132 142 -82 q 0 -206 68 -182 l 0 -138 q 58 -82 43 -123 q 68 0 68 -56 l 0 0 l 0 151 l 142 151 l 142 -12 "},"f":{"x_min":0,"x_max":378,"ha":472,"o":"m 378 638 l 246 638 l 246 0 l 121 0 l 121 638 l 0 638 l 0 738 l 121 738 q 137 935 121 887 q 290 1028 171 1028 q 320 1027 305 1028 q 378 1021 334 1026 l 378 908 q 323 918 346 918 q 257 870 273 918 q 246 780 246 840 l 246 738 l 378 738 l 378 638 "},"\u201c":{"x_min":1,"x_max":348.21875,"ha":454,"o":"m 140 670 l 1 670 l 1 830 q 37 943 1 897 q 140 1011 74 990 l 140 947 q 82 900 97 940 q 68 810 68 861 l 140 810 l 140 670 m 348 670 l 209 670 l 209 830 q 245 943 209 897 q 348 1011 282 990 l 348 947 q 290 900 305 940 q 276 810 276 861 l 348 810 l 348 670 "},"A":{"x_min":0.03125,"x_max":906.953125,"ha":1008,"o":"m 906 0 l 756 0 l 648 303 l 251 303 l 142 0 l 0 0 l 376 1013 l 529 1013 l 906 0 m 610 421 l 452 867 l 293 421 l 610 421 "},"\u2018":{"x_min":1,"x_max":139.890625,"ha":236,"o":"m 139 670 l 1 670 l 1 830 q 37 943 1 897 q 139 1011 74 990 l 139 947 q 82 900 97 940 q 68 810 68 861 l 139 810 l 139 670 "},"\u03ca":{"x_min":-70,"x_max":283,"ha":361,"o":"m 283 800 l 173 800 l 173 925 l 283 925 l 283 800 m 40 800 l -70 800 l -70 925 l 40 925 l 40 800 m 283 3 q 232 -10 257 -5 q 181 -15 206 -15 q 84 26 118 -15 q 41 200 41 79 l 41 737 l 166 737 l 167 215 q 171 141 167 157 q 225 101 182 101 q 247 103 238 101 q 283 112 256 104 l 283 3 "},"\u03c0":{"x_min":-0.21875,"x_max":773.21875,"ha":857,"o":"m 773 -7 l 707 -11 q 575 40 607 -11 q 552 174 552 77 l 552 226 l 552 626 l 222 626 l 222 0 l 97 0 l 97 626 l 0 626 l 0 737 l 773 737 l 773 626 l 676 626 l 676 171 q 695 103 676 117 q 773 90 714 90 l 773 -7 "},"\u03ac":{"x_min":0,"x_max":765.5625,"ha":809,"o":"m 765 -4 q 698 -14 726 -14 q 564 97 586 -14 q 466 7 525 40 q 337 -26 407 -26 q 88 98 186 -26 q 0 369 0 212 q 88 637 0 525 q 337 760 184 760 q 465 727 407 760 q 563 637 524 695 l 563 738 l 685 738 l 685 222 q 693 141 685 168 q 748 94 708 94 q 765 95 760 94 l 765 -4 m 584 371 q 531 562 584 485 q 360 653 470 653 q 192 566 254 653 q 135 379 135 489 q 186 181 135 261 q 358 84 247 84 q 528 176 465 84 q 584 371 584 260 m 604 1040 l 415 819 l 332 819 l 466 1040 l 604 1040 "},"O":{"x_min":0,"x_max":958,"ha":1057,"o":"m 485 1041 q 834 882 702 1041 q 958 512 958 734 q 834 136 958 287 q 481 -26 702 -26 q 126 130 261 -26 q 0 504 0 279 q 127 880 0 728 q 485 1041 263 1041 m 480 98 q 731 225 638 98 q 815 504 815 340 q 733 783 815 669 q 480 912 640 912 q 226 784 321 912 q 142 504 142 670 q 226 224 142 339 q 480 98 319 98 "},"n":{"x_min":0,"x_max":615,"ha":724,"o":"m 615 463 l 615 0 l 490 0 l 490 454 q 453 592 490 537 q 331 656 410 656 q 178 585 240 656 q 117 421 117 514 l 117 0 l 0 0 l 0 738 l 117 738 l 117 630 q 218 728 150 693 q 359 764 286 764 q 552 675 484 764 q 615 463 615 593 "},"l":{"x_min":41,"x_max":166,"ha":279,"o":"m 166 0 l 41 0 l 41 1013 l 166 1013 l 166 0 "},"\xa4":{"x_min":40.09375,"x_max":728.796875,"ha":825,"o":"m 728 304 l 649 224 l 512 363 q 383 331 458 331 q 256 363 310 331 l 119 224 l 40 304 l 177 441 q 150 553 150 493 q 184 673 150 621 l 40 818 l 119 898 l 267 749 q 321 766 291 759 q 384 773 351 773 q 447 766 417 773 q 501 749 477 759 l 649 898 l 728 818 l 585 675 q 612 618 604 648 q 621 553 621 587 q 591 441 621 491 l 728 304 m 384 682 q 280 643 318 682 q 243 551 243 604 q 279 461 243 499 q 383 423 316 423 q 487 461 449 423 q 525 553 525 500 q 490 641 525 605 q 384 682 451 682 "},"\u03ba":{"x_min":0,"x_max":632.328125,"ha":679,"o":"m 632 0 l 482 0 l 225 384 l 124 288 l 124 0 l 0 0 l 0 738 l 124 738 l 124 446 l 433 738 l 596 738 l 312 466 l 632 0 "},"p":{"x_min":0,"x_max":685,"ha":786,"o":"m 685 364 q 598 96 685 205 q 350 -23 504 -23 q 121 89 205 -23 l 121 -278 l 0 -278 l 0 738 l 121 738 l 121 633 q 220 726 159 691 q 351 761 280 761 q 598 636 504 761 q 685 364 685 522 m 557 371 q 501 560 557 481 q 330 651 437 651 q 162 559 223 651 q 108 366 108 479 q 162 177 108 254 q 333 87 224 87 q 502 178 441 87 q 557 371 557 258 "},"\u2021":{"x_min":0,"x_max":777,"ha":835,"o":"m 458 238 l 458 0 l 319 0 l 319 238 l 0 238 l 0 360 l 319 360 l 319 681 l 0 683 l 0 804 l 319 804 l 319 1015 l 458 1013 l 458 804 l 777 804 l 777 683 l 458 683 l 458 360 l 777 360 l 777 238 l 458 238 "},"\u03c8":{"x_min":0,"x_max":808,"ha":907,"o":"m 465 -278 l 341 -278 l 341 -15 q 87 102 180 -15 q 0 378 0 210 l 0 739 l 133 739 l 133 379 q 182 195 133 275 q 341 98 242 98 l 341 922 l 465 922 l 465 98 q 623 195 563 98 q 675 382 675 278 l 675 742 l 808 742 l 808 381 q 720 104 808 213 q 466 -13 627 -13 l 465 -278 "},"\u03b7":{"x_min":0.78125,"x_max":697,"ha":810,"o":"m 697 -278 l 572 -278 l 572 454 q 540 587 572 536 q 425 650 501 650 q 271 579 337 650 q 206 420 206 509 l 206 0 l 81 0 l 81 489 q 73 588 81 562 q 0 644 56 644 l 0 741 q 68 755 38 755 q 158 720 124 755 q 200 630 193 686 q 297 726 234 692 q 434 761 359 761 q 620 692 544 761 q 697 516 697 624 l 697 -278 "}},"cssFontWeight":"normal","ascender":1189,"underlinePosition":-100,"cssFontStyle":"normal","boundingBox":{"yMin":-334,"xMin":-111,"yMax":1189,"xMax":1672},"resolution":1000,"original_font_information":{"postscript_name":"Helvetiker-Regular","version_string":"Version 1.00 2004 initial release","vendor_url":"http://www.magenta.gr/","full_font_name":"Helvetiker","font_family_name":"Helvetiker","copyright":"Copyright (c) \u039cagenta ltd, 2004","description":"","trademark":"","designer":"","designer_url":"","unique_font_identifier":"\u039cagenta ltd:Helvetiker:22-10-104","license_url":"http://www.ellak.gr/fonts/MgOpen/license.html","license_description":"Copyright (c) 2004 by MAGENTA Ltd. All Rights Reserved.\\r\\n\\r\\nPermission is hereby granted, free of charge, to any person obtaining a copy of the fonts accompanying this license (\\"Fonts\\") and associated documentation files (the \\"Font Software\\"), to reproduce and distribute the Font Software, including without limitation the rights to use, copy, merge, publish, distribute, and/or sell copies of the Font Software, and to permit persons to whom the Font Software is furnished to do so, subject to the following conditions: \\r\\n\\r\\nThe above copyright and this permission notice shall be included in all copies of one or more of the Font Software typefaces.\\r\\n\\r\\nThe Font Software may be modified, altered, or added to, and in particular the designs of glyphs or characters in the Fonts may be modified and additional glyphs or characters may be added to the Fonts, only if the fonts are renamed to names not containing the word \\"MgOpen\\", or if the modifications are accepted for inclusion in the Font Software itself by the each appointed Administrator.\\r\\n\\r\\nThis License becomes null and void to the extent applicable to Fonts or Font Software that has been modified and is distributed under the \\"MgOpen\\" name.\\r\\n\\r\\nThe Font Software may be sold as part of a larger software package but no copy of one or more of the Font Software typefaces may be sold by itself. \\r\\n\\r\\nTHE FONT SOFTWARE IS PROVIDED \\"AS IS\\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL MAGENTA OR PERSONS OR BODIES IN CHARGE OF ADMINISTRATION AND MAINTENANCE OF THE FONT SOFTWARE BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.","manufacturer_name":"\u039cagenta ltd","font_sub_family_name":"Regular"},"descender":-334,"familyName":"Helvetiker","lineHeight":1522,"underlineThickness":50}');class qse{constructor(t,e=new $se(new f8(kj)),i=new Hse(new f8(kj)),r=new Sse,s=new Tse){this.geometryOptions=t,this.frontPrintContainerMesh=e,this.backPrintContainerMesh=i,this.baseplateMesh=r,this.mapMesh=s,this.printMesh=new dr,this.printMesh.name="PrintMesh"}initialize(){var t=this;return Mn(function*(){t.baseplateMesh=yield t.baseplateMesh.init(t.geometryOptions),t.printMesh.add(t.baseplateMesh),t.mapMesh=yield t.mapMesh.init(t.geometryOptions),t.printMesh.add(t.mapMesh),t.frontPrintContainerMesh=yield t.frontPrintContainerMesh.init(t.geometryOptions),t.printMesh.add(t.frontPrintContainerMesh),t.backPrintContainerMesh=yield t.backPrintContainerMesh.init(t.geometryOptions),t.printMesh.add(t.backPrintContainerMesh),t.calculateCurrentSize()})()}getThreeMesh(){return this.printMesh}getMapMesh(){return this.mapMesh}getSize(){return this.currentSize}updateSize(t){var e=this;return Mn(function*(){e.geometryOptions.width=t;const i=e.currentSize.x;return yield Promise.all([...e.printMesh.children].map(function(){var r=Mn(function*(s){s instanceof Ou&&s.isGeneralSizeChangeMesh()&&s.changeSize(e.geometryOptions,i)});return function(s){return r.apply(this,arguments)}}())),e.calculateCurrentSize(),e.backPrintContainerMesh.isQRCodeVisible()})()}updateNumberOfColors(t){this.geometryOptions.numberOfColors=t;for(const e of this.printMesh.children)e instanceof Ou&&e.updateColor(t)}addCustomLogo(t){var e=this;return Mn(function*(){e.frontPrintContainerMesh.addCustomLogo(t,e.geometryOptions)})()}rotateCustomLogo(){this.frontPrintContainerMesh.rotateCustomLogo()}flipCustomLogo(){this.frontPrintContainerMesh.flipCustomLogo()}removeCustomLogo(){this.frontPrintContainerMesh.removeCustomLogo()}updateCustomLogoColor(t){this.frontPrintContainerMesh.updateCustomLogoColor(t)}updateFrontText(t){this.frontPrintContainerMesh.updateFrontText(t,this.geometryOptions)}updateSecondRowVisibility(t){this.geometryOptions.secondRowVisible!==t&&(this.geometryOptions.secondRowVisible=t,this.frontPrintContainerMesh.updateSecondRowVisibility(this.geometryOptions),this.baseplateMesh.changeSize(this.geometryOptions))}updateSecondRowText(t){var e=this;return Mn(function*(){yield e.frontPrintContainerMesh.updateSecondRowText(t,e.geometryOptions)})()}calculateCurrentSize(){const t=this.baseplateMesh.getWidth(),e=this.baseplateMesh.getDepth(),i=this.baseplateMesh.getHeight()+this.mapMesh.getHeight();this.currentSize=new pe(t,e,i)}updateQrCodeText(t){var e=this;return Mn(function*(){yield e.backPrintContainerMesh.updateQrCodeText(t,e.geometryOptions)})()}updateQrCodeVisibility(t){this.backPrintContainerMesh.updateQrCodeVisibility(t)}}function Rj(n,t,e,i,r){const u=n.z,f=n.x,p=n.y-e;return t.geometry.boundingBox||t.geometry.computeBoundingBox(),Math.min(f,p,(u-i)*t.geometry.boundingBox.max.x/(t.geometry.boundingBox.max.z-t.geometry.boundingBox.min.z)+2*r)}const{isArray:Wse}=Array,{getPrototypeOf:Xse,prototype:Kse,keys:Yse}=Object;function Pj(n){if(1===n.length){const t=n[0];if(Wse(t))return{args:t,keys:null};if(function Zse(n){return n&&"object"==typeof n&&Xse(n)===Kse}(t)){const e=Yse(t);return{args:e.map(i=>t[i]),keys:e}}}return{args:n,keys:null}}function Oj(n,t){return n.reduce((e,i,r)=>(e[i]=t[r],e),{})}let Nj=(()=>{class n{constructor(e,i){this._renderer=e,this._elementRef=i,this.onChange=r=>{},this.onTouched=()=>{}}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.sFG),o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n})}}return n})(),sv=(()=>{class n extends Nj{static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,features:[o.Vt3]})}}return n})();const Aa=new o.nKC(""),tae={provide:Aa,useExisting:(0,o.Rfq)(()=>Wg),multi:!0},iae=new o.nKC("");let Wg=(()=>{class n extends Nj{constructor(e,i,r){super(e,i),this._compositionMode=r,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function nae(){const n=Z()?Z().getUserAgent():"";return/android (\d+)/.test(n.toLowerCase())}())}writeValue(e){this.setProperty("value",e??"")}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.sFG),o.rXU(o.aKT),o.rXU(iae,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(i,r){1&i&&o.bIt("input",function(l){return r._handleInput(l.target.value)})("blur",function(){return r.onTouched()})("compositionstart",function(){return r._compositionStart()})("compositionend",function(l){return r._compositionEnd(l.target.value)})},features:[o.Jv_([tae]),o.Vt3]})}}return n})();function Xg(n){return null==n||("string"==typeof n||Array.isArray(n))&&0===n.length}function Uj(n){return null!=n&&"number"==typeof n.length}const Hs=new o.nKC(""),Kg=new o.nKC(""),rae=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class b8{static min(t){return function Vj(n){return t=>{if(Xg(t.value)||Xg(n))return null;const e=parseFloat(t.value);return!isNaN(e)&&e{if(Xg(t.value)||Xg(n))return null;const e=parseFloat(t.value);return!isNaN(e)&&e>n?{max:{max:n,actual:t.value}}:null}}(t)}static required(t){return Qj(t)}static requiredTrue(t){return function zj(n){return!0===n.value?null:{required:!0}}(t)}static email(t){return function Gj(n){return Xg(n.value)||rae.test(n.value)?null:{email:!0}}(t)}static minLength(t){return function jj(n){return t=>Xg(t.value)||!Uj(t.value)?null:t.value.lengthUj(t.value)&&t.value.length>n?{maxlength:{requiredLength:n,actualLength:t.value.length}}:null}(t)}static pattern(t){return function qj(n){if(!n)return X3;let t,e;return"string"==typeof n?(e="","^"!==n.charAt(0)&&(e+="^"),e+=n,"$"!==n.charAt(n.length-1)&&(e+="$"),t=new RegExp(e)):(e=n.toString(),t=n),i=>{if(Xg(i.value))return null;const r=i.value;return t.test(r)?null:{pattern:{requiredPattern:e,actualValue:r}}}}(t)}static nullValidator(t){return null}static compose(t){return Jj(t)}static composeAsync(t){return e$(t)}}function Qj(n){return Xg(n.value)?{required:!0}:null}function X3(n){return null}function Wj(n){return null!=n}function Xj(n){return(0,o.jNT)(n)?sa(n):n}function Kj(n){let t={};return n.forEach(e=>{t=null!=e?{...t,...e}:t}),0===Object.keys(t).length?null:t}function Yj(n,t){return t.map(e=>e(n))}function Zj(n){return n.map(t=>function oae(n){return!n.validate}(t)?t:e=>t.validate(e))}function Jj(n){if(!n)return null;const t=n.filter(Wj);return 0==t.length?null:function(e){return Kj(Yj(e,t))}}function v8(n){return null!=n?Jj(Zj(n)):null}function e$(n){if(!n)return null;const t=n.filter(Wj);return 0==t.length?null:function(e){return function Jse(...n){const t=BA(n),{args:e,keys:i}=Pj(n),r=new qr.c(s=>{const{length:l}=e;if(!l)return void s.complete();const u=new Array(l);let f=l,p=l;for(let m=0;m{_||(_=!0,p--),u[m]=b},()=>f--,void 0,()=>{(!f||!_)&&(p||s.next(i?Oj(i,u):u),s.complete())}))}});return t?r.pipe(kc(t)):r}(Yj(e,t).map(Xj)).pipe((0,Xn.T)(Kj))}}function y8(n){return null!=n?e$(Zj(n)):null}function t$(n,t){return null===n?[t]:Array.isArray(n)?[...n,t]:[n,t]}function n$(n){return n._rawValidators}function i$(n){return n._rawAsyncValidators}function w8(n){return n?Array.isArray(n)?n:[n]:[]}function K3(n,t){return Array.isArray(n)?n.includes(t):n===t}function r$(n,t){const e=w8(t);return w8(n).forEach(r=>{K3(e,r)||e.push(r)}),e}function o$(n,t){return w8(t).filter(e=>!K3(n,e))}class s${constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=v8(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=y8(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Tl extends s${get formDirective(){return null}get path(){return null}}class Xh extends s${constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class a${constructor(t){this._cd=t}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}}let Jw=(()=>{class n extends a${constructor(e){super(e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Xh,2))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,r){2&i&&o.AVh("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)},features:[o.Vt3]})}}return n})();const jS="VALID",Z3="INVALID",ex="PENDING",$S="DISABLED";class tx{}class c$ extends tx{constructor(t,e){super(),this.value=t,this.source=e}}class M8 extends tx{constructor(t,e){super(),this.pristine=t,this.source=e}}class E8 extends tx{constructor(t,e){super(),this.touched=t,this.source=e}}class J3 extends tx{constructor(t,e){super(),this.status=t,this.source=e}}class uae extends tx{constructor(t){super(),this.source=t}}class hae extends tx{constructor(t){super(),this.source=t}}function S8(n){return(eR(n)?n.validators:n)||null}function T8(n,t){return(eR(t)?t.asyncValidators:n)||null}function eR(n){return null!=n&&!Array.isArray(n)&&"object"==typeof n}class I8{constructor(t,e){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=null,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this._status=(0,o.EWP)(()=>this.statusReactive()),this.statusReactive=(0,o.vPA)(void 0),this._pristine=(0,o.EWP)(()=>this.pristineReactive()),this.pristineReactive=(0,o.vPA)(!0),this._touched=(0,o.EWP)(()=>this.touchedReactive()),this.touchedReactive=(0,o.vPA)(!1),this._events=new mi.B,this.events=this._events.asObservable(),this._onDisabledChange=[],this._assignValidators(t),this._assignAsyncValidators(e)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get status(){return(0,o.O8t)(this.statusReactive)}set status(t){(0,o.O8t)(()=>this.statusReactive.set(t))}get valid(){return this.status===jS}get invalid(){return this.status===Z3}get pending(){return this.status==ex}get disabled(){return this.status===$S}get enabled(){return this.status!==$S}get pristine(){return(0,o.O8t)(this.pristineReactive)}set pristine(t){(0,o.O8t)(()=>this.pristineReactive.set(t))}get dirty(){return!this.pristine}get touched(){return(0,o.O8t)(this.touchedReactive)}set touched(t){(0,o.O8t)(()=>this.touchedReactive.set(t))}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(r$(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(r$(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(o$(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(o$(t,this._rawAsyncValidators))}hasValidator(t){return K3(this._rawValidators,t)}hasAsyncValidator(t){return K3(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){const e=!1===this.touched;this.touched=!0;const i=t.sourceControl??this;this._parent&&!t.onlySelf&&this._parent.markAsTouched({...t,sourceControl:i}),e&&!1!==t.emitEvent&&this._events.next(new E8(!0,i))}markAllAsTouched(t={}){this.markAsTouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(t))}markAsUntouched(t={}){const e=!0===this.touched;this.touched=!1,this._pendingTouched=!1;const i=t.sourceControl??this;this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:i})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t,i),e&&!1!==t.emitEvent&&this._events.next(new E8(!1,i))}markAsDirty(t={}){const e=!0===this.pristine;this.pristine=!1;const i=t.sourceControl??this;this._parent&&!t.onlySelf&&this._parent.markAsDirty({...t,sourceControl:i}),e&&!1!==t.emitEvent&&this._events.next(new M8(!1,i))}markAsPristine(t={}){const e=!1===this.pristine;this.pristine=!0,this._pendingDirty=!1;const i=t.sourceControl??this;this._forEachChild(r=>{r.markAsPristine({onlySelf:!0,emitEvent:t.emitEvent})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t,i),e&&!1!==t.emitEvent&&this._events.next(new M8(!0,i))}markAsPending(t={}){this.status=ex;const e=t.sourceControl??this;!1!==t.emitEvent&&(this._events.next(new J3(this.status,e)),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.markAsPending({...t,sourceControl:e})}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=$S,this.errors=null,this._forEachChild(r=>{r.disable({...t,onlySelf:!0})}),this._updateValue();const i=t.sourceControl??this;!1!==t.emitEvent&&(this._events.next(new c$(this.value,i)),this._events.next(new J3(this.status,i)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...t,skipPristineCheck:e},this),this._onDisabledChange.forEach(r=>r(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=jS,this._forEachChild(i=>{i.enable({...t,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors({...t,skipPristineCheck:e},this),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(t,e){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine({},e),this._parent._updateTouched({},e))}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){const i=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===jS||this.status===ex)&&this._runAsyncValidator(i,t.emitEvent)}const e=t.sourceControl??this;!1!==t.emitEvent&&(this._events.next(new c$(this.value,e)),this._events.next(new J3(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity({...t,sourceControl:e})}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?$S:jS}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t,e){if(this.asyncValidator){this.status=ex,this._hasOwnPendingAsyncValidator={emitEvent:!1!==e};const i=Xj(this.asyncValidator(this));this._asyncValidationSubscription=i.subscribe(r=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(r,{emitEvent:e,shouldHaveEmitted:t})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();const t=this._hasOwnPendingAsyncValidator?.emitEvent??!1;return this._hasOwnPendingAsyncValidator=null,t}return!1}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent,this,e.shouldHaveEmitted)}get(t){let e=t;return null==e||(Array.isArray(e)||(e=e.split(".")),0===e.length)?null:e.reduce((i,r)=>i&&i._find(r),this)}getError(t,e){const i=e?this.get(e):this;return i&&i.errors?i.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t,e,i){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),(t||i)&&this._events.next(new J3(this.status,e)),this._parent&&this._parent._updateControlsErrors(t,e,i)}_initObservables(){this.valueChanges=new o.bkB,this.statusChanges=new o.bkB}_calculateStatus(){return this._allControlsDisabled()?$S:this.errors?Z3:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(ex)?ex:this._anyControlsHaveStatus(Z3)?Z3:jS}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t,e){const i=!this._anyControlsDirty(),r=this.pristine!==i;this.pristine=i,this._parent&&!t.onlySelf&&this._parent._updatePristine(t,e),r&&this._events.next(new M8(this.pristine,e))}_updateTouched(t={},e){this.touched=this._anyControlsTouched(),this._events.next(new E8(this.touched,e)),this._parent&&!t.onlySelf&&this._parent._updateTouched(t,e)}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){eR(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=function fae(n){return Array.isArray(n)?v8(n):n||null}(this._rawValidators)}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=function pae(n){return Array.isArray(n)?y8(n):n||null}(this._rawAsyncValidators)}}class F8 extends I8{constructor(t,e,i){super(S8(e),T8(i,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e,i={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,i={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){(function u$(n,t,e){n._forEachChild((i,r)=>{if(void 0===e[r])throw new o.wOt(1002,"")})})(this,0,t),Object.keys(t).forEach(i=>{(function d$(n,t,e){const i=n.controls;if(!(t?Object.keys(i):i).length)throw new o.wOt(1e3,"");if(!i[e])throw new o.wOt(1001,"")})(this,!0,i),this.controls[i].setValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){null!=t&&(Object.keys(t).forEach(i=>{const r=this.controls[i];r&&r.patchValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(t={},e={}){this._forEachChild((i,r)=>{i.reset(t?t[r]:null,{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,i)=>(t[i]=e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(e,i)=>!!i._syncPendingControls()||e);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){Object.keys(this.controls).forEach(e=>{const i=this.controls[e];i&&t(i,e)})}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const[e,i]of Object.entries(this.controls))if(this.contains(e)&&t(i))return!0;return!1}_reduceValue(){return this._reduceChildren({},(e,i,r)=>((i.enabled||this.disabled)&&(e[r]=i.value),e))}_reduceChildren(t,e){let i=t;return this._forEachChild((r,s)=>{i=e(i,r,s)}),i}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(t){return this.controls.hasOwnProperty(t)?this.controls[t]:null}}const av=new o.nKC("CallSetDisabledState",{providedIn:"root",factory:()=>qS}),qS="always";function WS(n,t,e=qS){D8(n,t),t.valueAccessor.writeValue(n.value),(n.disabled||"always"===e)&&t.valueAccessor.setDisabledState?.(n.disabled),function gae(n,t){t.valueAccessor.registerOnChange(e=>{n._pendingValue=e,n._pendingChange=!0,n._pendingDirty=!0,"change"===n.updateOn&&h$(n,t)})}(n,t),function bae(n,t){const e=(i,r)=>{t.valueAccessor.writeValue(i),r&&t.viewToModelUpdate(i)};n.registerOnChange(e),t._registerOnDestroy(()=>{n._unregisterOnChange(e)})}(n,t),function _ae(n,t){t.valueAccessor.registerOnTouched(()=>{n._pendingTouched=!0,"blur"===n.updateOn&&n._pendingChange&&h$(n,t),"submit"!==n.updateOn&&n.markAsTouched()})}(n,t),function mae(n,t){if(t.valueAccessor.setDisabledState){const e=i=>{t.valueAccessor.setDisabledState(i)};n.registerOnDisabledChange(e),t._registerOnDestroy(()=>{n._unregisterOnDisabledChange(e)})}}(n,t)}function nR(n,t,e=!0){const i=()=>{};t.valueAccessor&&(t.valueAccessor.registerOnChange(i),t.valueAccessor.registerOnTouched(i)),rR(n,t),n&&(t._invokeOnDestroyCallbacks(),n._registerOnCollectionChange(()=>{}))}function iR(n,t){n.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(t)})}function D8(n,t){const e=n$(n);null!==t.validator?n.setValidators(t$(e,t.validator)):"function"==typeof e&&n.setValidators([e]);const i=i$(n);null!==t.asyncValidator?n.setAsyncValidators(t$(i,t.asyncValidator)):"function"==typeof i&&n.setAsyncValidators([i]);const r=()=>n.updateValueAndValidity();iR(t._rawValidators,r),iR(t._rawAsyncValidators,r)}function rR(n,t){let e=!1;if(null!==n){if(null!==t.validator){const r=n$(n);if(Array.isArray(r)&&r.length>0){const s=r.filter(l=>l!==t.validator);s.length!==r.length&&(e=!0,n.setValidators(s))}}if(null!==t.asyncValidator){const r=i$(n);if(Array.isArray(r)&&r.length>0){const s=r.filter(l=>l!==t.asyncValidator);s.length!==r.length&&(e=!0,n.setAsyncValidators(s))}}}const i=()=>{};return iR(t._rawValidators,i),iR(t._rawAsyncValidators,i),e}function h$(n,t){n._pendingDirty&&n.markAsDirty(),n.setValue(n._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(n._pendingValue),n._pendingChange=!1}function f$(n,t){D8(n,t)}function k8(n,t){if(!n.hasOwnProperty("model"))return!1;const e=n.model;return!!e.isFirstChange()||!Object.is(t,e.currentValue)}function p$(n,t){n._syncPendingControls(),t.forEach(e=>{const i=e.control;"submit"===i.updateOn&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function R8(n,t){if(!t)return null;let e,i,r;return Array.isArray(t),t.forEach(s=>{s.constructor===Wg?e=s:function wae(n){return Object.getPrototypeOf(n.constructor)===sv}(s)?i=s:r=s}),r||i||e||null}const Cae={provide:Tl,useExisting:(0,o.Rfq)(()=>KS)},XS=Promise.resolve();let KS=(()=>{class n extends Tl{get submitted(){return(0,o.O8t)(this.submittedReactive)}constructor(e,i,r){super(),this.callSetDisabledState=r,this._submitted=(0,o.EWP)(()=>this.submittedReactive()),this.submittedReactive=(0,o.vPA)(!1),this._directives=new Set,this.ngSubmit=new o.bkB,this.form=new F8({},v8(e),y8(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){XS.then(()=>{const i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),WS(e.control,e,this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){XS.then(()=>{const i=this._findContainer(e.path);i&&i.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){XS.then(()=>{const i=this._findContainer(e.path),r=new F8({});f$(r,e),i.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){XS.then(()=>{const i=this._findContainer(e.path);i&&i.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){XS.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),p$(this.form,this._directives),this.ngSubmit.emit(e),"dialog"===e?.target?.method}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Hs,10),o.rXU(Kg,10),o.rXU(av,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,r){1&i&&o.bIt("submit",function(l){return r.onSubmit(l)})("reset",function(){return r.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[o.Jv_([Cae]),o.Vt3]})}}return n})();function A$(n,t){const e=n.indexOf(t);e>-1&&n.splice(e,1)}function m$(n){return"object"==typeof n&&null!==n&&2===Object.keys(n).length&&"value"in n&&"disabled"in n}const P8=class extends I8{constructor(t=null,e,i){super(S8(e),T8(i,e)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),eR(e)&&(e.nonNullable||e.initialValueIsDefault)&&(this.defaultValue=m$(t)?t.value:t)}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(i=>i(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=this.defaultValue,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){A$(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){A$(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){m$(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}},g$=P8,Sae={provide:Xh,useExisting:(0,o.Rfq)(()=>nx)},v$=Promise.resolve();let nx=(()=>{class n extends Xh{constructor(e,i,r,s,l,u){super(),this._changeDetectorRef=l,this.callSetDisabledState=u,this.control=new P8,this._registered=!1,this.name="",this.update=new o.bkB,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=R8(0,s)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){const i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),k8(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){WS(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(e){v$.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){const i=e.isDisabled.currentValue,r=0!==i&&(0,o.L39)(i);v$.then(()=>{r&&!this.control.disabled?this.control.disable():!r&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?function tR(n,t){return[...t.path,n]}(e,this._parent):[e]}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Tl,9),o.rXU(Hs,10),o.rXU(Kg,10),o.rXU(Aa,10),o.rXU(o.gRc,8),o.rXU(av,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[o.Jv_([Sae]),o.Vt3,o.OA$]})}}return n})();const O8=new o.nKC(""),kae={provide:Xh,useExisting:(0,o.Rfq)(()=>oR)};let oR=(()=>{class n extends Xh{set isDisabled(e){}static{this._ngModelWarningSentOnce=!1}constructor(e,i,r,s,l){super(),this._ngModelWarningConfig=s,this.callSetDisabledState=l,this.update=new o.bkB,this._ngModelWarningSent=!1,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=R8(0,r)}ngOnChanges(e){if(this._isControlChanged(e)){const i=e.form.previousValue;i&&nR(i,this,!1),WS(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}k8(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&nR(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Hs,10),o.rXU(Kg,10),o.rXU(Aa,10),o.rXU(O8,8),o.rXU(av,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[o.Jv_([kae]),o.Vt3,o.OA$]})}}return n})();const Rae={provide:Tl,useExisting:(0,o.Rfq)(()=>YS)};let YS=(()=>{class n extends Tl{get submitted(){return(0,o.O8t)(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}constructor(e,i,r){super(),this.callSetDisabledState=r,this._submitted=(0,o.EWP)(()=>this._submittedReactive()),this._submittedReactive=(0,o.vPA)(!1),this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new o.bkB,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(rR(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(e){const i=this.form.get(e.path);return WS(i,e,this.callSetDisabledState),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){nR(e.control||null,e,!1),function xae(n,t){const e=n.indexOf(t);e>-1&&n.splice(e,1)}(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}getFormArray(e){return this.form.get(e.path)}updateModel(e,i){this.form.get(e.path).setValue(i)}onSubmit(e){return this._submittedReactive.set(!0),p$(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new uae(this.control)),"dialog"===e?.target?.method}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this._submittedReactive.set(!1),this.form._events.next(new hae(this.form))}_updateDomValue(){this.directives.forEach(e=>{const i=e.control,r=this.form.get(e.path);i!==r&&(nR(i||null,e),(n=>n instanceof P8)(r)&&(WS(r,e,this.callSetDisabledState),e.control=r))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){const i=this.form.get(e.path);f$(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){if(this.form){const i=this.form.get(e.path);i&&function vae(n,t){return rR(n,t)}(i,e)&&i.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){D8(this.form,this),this._oldForm&&rR(this._oldForm,this)}_checkFormPresent(){}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Hs,10),o.rXU(Kg,10),o.rXU(av,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","formGroup",""]],hostBindings:function(i,r){1&i&&o.bIt("submit",function(l){return r.onSubmit(l)})("reset",function(){return r.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[o.Jv_([Rae]),o.Vt3,o.OA$]})}}return n})(),lv=(()=>{class n{constructor(){this._validator=X3}ngOnChanges(e){if(this.inputName in e){const i=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):X3,this._onChange&&this._onChange()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return null!=e}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,features:[o.OA$]})}}return n})();const $ae={provide:Hs,useExisting:(0,o.Rfq)(()=>sR),multi:!0};let sR=(()=>{class n extends lv{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=o.L39,this.createValidator=e=>Qj}enabled(e){return e}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(i,r){2&i&&o.BMQ("required",r._enabled?"":null)},inputs:{required:"required"},features:[o.Jv_([$ae]),o.Vt3]})}}return n})(),O$=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275mod=o.$C({type:n})}static{this.\u0275inj=o.G2t({})}}return n})(),ZS=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:av,useValue:e.callSetDisabledState??qS}]}}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275mod=o.$C({type:n})}static{this.\u0275inj=o.G2t({imports:[O$]})}}return n})(),N$=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:O8,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:av,useValue:e.callSetDisabledState??qS}]}}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275mod=o.$C({type:n})}static{this.\u0275inj=o.G2t({imports:[O$]})}}return n})();const Jae=["switch"],ele=["*"];function tle(n,t){1&n&&(o.j41(0,"span",10),o.qSk(),o.j41(1,"svg",12),o.nrm(2,"path",13),o.k0s(),o.j41(3,"svg",14),o.nrm(4,"path",15),o.k0s()())}const nle=new o.nKC("mat-slide-toggle-default-options",{providedIn:"root",factory:()=>({disableToggleValue:!1,hideIcon:!1,disabledInteractive:!1})}),ile={provide:Aa,useExisting:(0,o.Rfq)(()=>JS),multi:!0};class L${constructor(t,e){this.source=t,this.checked=e}}let rle=0,JS=(()=>{class n{_createChangeEvent(e){return new L$(this,e)}get buttonId(){return`${this.id||this._uniqueId}-button`}focus(){this._switchElement.nativeElement.focus()}get checked(){return this._checked}set checked(e){this._checked=e,this._changeDetectorRef.markForCheck()}get inputId(){return`${this.id||this._uniqueId}-input`}constructor(e,i,r,s,l,u){this._elementRef=e,this._focusMonitor=i,this._changeDetectorRef=r,this.defaults=l,this._onChange=f=>{},this._onTouched=()=>{},this._validatorOnChange=()=>{},this._checked=!1,this.name=null,this.labelPosition="after",this.ariaLabel=null,this.ariaLabelledby=null,this.disabled=!1,this.disableRipple=!1,this.tabIndex=0,this.change=new o.bkB,this.toggleChange=new o.bkB,this.tabIndex=parseInt(s)||0,this.color=l.color||"accent",this._noopAnimations="NoopAnimations"===u,this.id=this._uniqueId="mat-mdc-slide-toggle-"+ ++rle,this.hideIcon=l.hideIcon??!1,this.disabledInteractive=l.disabledInteractive??!1,this._labelId=this._uniqueId+"-label"}ngAfterContentInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{"keyboard"===e||"program"===e?(this._focused=!0,this._changeDetectorRef.markForCheck()):e||Promise.resolve().then(()=>{this._focused=!1,this._onTouched(),this._changeDetectorRef.markForCheck()})})}ngOnChanges(e){e.required&&this._validatorOnChange()}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}writeValue(e){this.checked=!!e}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}validate(e){return this.required&&!0!==e.value?{required:!0}:null}registerOnValidatorChange(e){this._validatorOnChange=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck()}toggle(){this.checked=!this.checked,this._onChange(this.checked)}_emitChangeEvent(){this._onChange(this.checked),this.change.emit(this._createChangeEvent(this.checked))}_handleClick(){this.disabled||(this.toggleChange.emit(),this.defaults.disableToggleValue||(this.checked=!this.checked,this._onChange(this.checked),this.change.emit(new L$(this,this.checked))))}_getAriaLabelledBy(){return this.ariaLabelledby?this.ariaLabelledby:this.ariaLabel?null:this._labelId}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Yl),o.rXU(o.gRc),o.kS0("tabindex"),o.rXU(nle),o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-slide-toggle"]],viewQuery:function(i,r){if(1&i&&o.GBs(Jae,5),2&i){let s;o.mGM(s=o.lsd())&&(r._switchElement=s.first)}},hostAttrs:[1,"mat-mdc-slide-toggle"],hostVars:13,hostBindings:function(i,r){2&i&&(o.Mr5("id",r.id),o.BMQ("tabindex",null)("aria-label",null)("name",null)("aria-labelledby",null),o.HbH(r.color?"mat-"+r.color:""),o.AVh("mat-mdc-slide-toggle-focused",r._focused)("mat-mdc-slide-toggle-checked",r.checked)("_mat-animation-noopable",r._noopAnimations))},inputs:{name:"name",id:"id",labelPosition:"labelPosition",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],required:[2,"required","required",o.L39],color:"color",disabled:[2,"disabled","disabled",o.L39],disableRipple:[2,"disableRipple","disableRipple",o.L39],tabIndex:[2,"tabIndex","tabIndex",e=>null==e?0:(0,o.Udg)(e)],checked:[2,"checked","checked",o.L39],hideIcon:[2,"hideIcon","hideIcon",o.L39],disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39]},outputs:{change:"change",toggleChange:"toggleChange"},exportAs:["matSlideToggle"],standalone:!0,features:[o.Jv_([ile,{provide:Hs,useExisting:n,multi:!0}]),o.GFd,o.OA$,o.aNF],ngContentSelectors:ele,decls:13,vars:27,consts:[["switch",""],["mat-internal-form-field","",3,"labelPosition"],["role","switch","type","button",1,"mdc-switch",3,"click","tabIndex","disabled"],[1,"mdc-switch__track"],[1,"mdc-switch__handle-track"],[1,"mdc-switch__handle"],[1,"mdc-switch__shadow"],[1,"mdc-elevation-overlay"],[1,"mdc-switch__ripple"],["mat-ripple","",1,"mat-mdc-slide-toggle-ripple","mat-mdc-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-switch__icons"],[1,"mdc-label",3,"click","for"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--on"],["d","M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--off"],["d","M20 13H4v-2h16v2z"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(),o.j41(0,"div",1)(1,"button",2,0),o.bIt("click",function(){return o.eBV(s),o.Njj(r._handleClick())}),o.nrm(3,"span",3),o.j41(4,"span",4)(5,"span",5)(6,"span",6),o.nrm(7,"span",7),o.k0s(),o.j41(8,"span",8),o.nrm(9,"span",9),o.k0s(),o.DNE(10,tle,5,0,"span",10),o.k0s()()(),o.j41(11,"label",11),o.bIt("click",function(u){return o.eBV(s),o.Njj(u.stopPropagation())}),o.SdG(12),o.k0s()()}if(2&i){const s=o.sdS(2);o.Y8G("labelPosition",r.labelPosition),o.R7$(),o.AVh("mdc-switch--selected",r.checked)("mdc-switch--unselected",!r.checked)("mdc-switch--checked",r.checked)("mdc-switch--disabled",r.disabled)("mat-mdc-slide-toggle-disabled-interactive",r.disabledInteractive),o.Y8G("tabIndex",r.disabled&&!r.disabledInteractive?-1:r.tabIndex)("disabled",r.disabled&&!r.disabledInteractive),o.BMQ("id",r.buttonId)("name",r.name)("aria-label",r.ariaLabel)("aria-labelledby",r._getAriaLabelledBy())("aria-describedby",r.ariaDescribedby)("aria-required",r.required||null)("aria-checked",r.checked)("aria-disabled",r.disabled&&r.disabledInteractive?"true":null),o.R7$(8),o.Y8G("matRippleTrigger",s)("matRippleDisabled",r.disableRipple||r.disabled)("matRippleCentered",!0),o.R7$(),o.vxM(r.hideIcon?-1:10),o.R7$(),o.Y8G("for",r.buttonId),o.BMQ("id",r._labelId)}},dependencies:[ml,MI],styles:['.mdc-switch{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;margin:0;outline:none;overflow:visible;padding:0;position:relative;width:var(--mdc-switch-track-width)}.mdc-switch.mdc-switch--disabled{cursor:default;pointer-events:none}.mdc-switch.mat-mdc-slide-toggle-disabled-interactive{pointer-events:auto}.mdc-switch__track{overflow:hidden;position:relative;width:100%;height:var(--mdc-switch-track-height);border-radius:var(--mdc-switch-track-shape, var(--mat-app-corner-full))}.mdc-switch--disabled.mdc-switch .mdc-switch__track{opacity:var(--mdc-switch-disabled-track-opacity)}.mdc-switch__track::before,.mdc-switch__track::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";height:100%;left:0;position:absolute;width:100%;border-width:var(--mat-switch-track-outline-width);border-color:var(--mat-switch-track-outline-color, var(--mat-app-outline))}.cdk-high-contrast-active .mdc-switch__track::before,.cdk-high-contrast-active .mdc-switch__track::after{border-color:currentColor}.mdc-switch--selected .mdc-switch__track::before,.mdc-switch--selected .mdc-switch__track::after{border-width:var(--mat-switch-selected-track-outline-width);border-color:var(--mat-switch-selected-track-outline-color)}.mdc-switch--disabled .mdc-switch__track::before,.mdc-switch--disabled .mdc-switch__track::after{border-width:var(--mat-switch-disabled-unselected-track-outline-width);border-color:var(--mat-switch-disabled-unselected-track-outline-color, var(--mat-app-on-surface))}.mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:translateX(0);background:var(--mdc-switch-unselected-track-color, var(--mat-app-surface-variant))}.mdc-switch--selected .mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.6, 1);transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch--selected .mdc-switch__track::before{transform:translateX(-100%)}.mdc-switch--selected .mdc-switch__track::before{opacity:var(--mat-switch-hidden-track-opacity);transition:var(--mat-switch-hidden-track-transition)}.mdc-switch--unselected .mdc-switch__track::before{opacity:var(--mat-switch-visible-track-opacity);transition:var(--mat-switch-visible-track-transition)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::before{background:var(--mdc-switch-unselected-hover-track-color, var(--mat-app-surface-variant))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::before{background:var(--mdc-switch-unselected-focus-track-color, var(--mat-app-surface-variant))}.mdc-switch:enabled:active .mdc-switch__track::before{background:var(--mdc-switch-unselected-pressed-track-color, var(--mat-app-surface-variant))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::before,.mdc-switch.mdc-switch--disabled .mdc-switch__track::before{background:var(--mdc-switch-disabled-unselected-track-color, var(--mat-app-surface-variant))}.mdc-switch__track::after{transform:translateX(-100%);background:var(--mdc-switch-selected-track-color, var(--mat-app-primary))}[dir=rtl] .mdc-switch__track::after{transform:translateX(100%)}.mdc-switch--selected .mdc-switch__track::after{transform:translateX(0)}.mdc-switch--selected .mdc-switch__track::after{opacity:var(--mat-switch-visible-track-opacity);transition:var(--mat-switch-visible-track-transition)}.mdc-switch--unselected .mdc-switch__track::after{opacity:var(--mat-switch-hidden-track-opacity);transition:var(--mat-switch-hidden-track-transition)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::after{background:var(--mdc-switch-selected-hover-track-color, var(--mat-app-primary))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::after{background:var(--mdc-switch-selected-focus-track-color, var(--mat-app-primary))}.mdc-switch:enabled:active .mdc-switch__track::after{background:var(--mdc-switch-selected-pressed-track-color, var(--mat-app-primary))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::after,.mdc-switch.mdc-switch--disabled .mdc-switch__track::after{background:var(--mdc-switch-disabled-selected-track-color, var(--mat-app-on-surface))}.mdc-switch__handle-track{height:100%;pointer-events:none;position:absolute;top:0;transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);left:0;right:auto;transform:translateX(0);width:calc(100% - var(--mdc-switch-handle-width))}[dir=rtl] .mdc-switch__handle-track{left:auto;right:0}.mdc-switch--selected .mdc-switch__handle-track{transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch__handle-track{transform:translateX(-100%)}.mdc-switch__handle{display:flex;pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);left:0;right:auto;transition:width 75ms cubic-bezier(0.4, 0, 0.2, 1),height 75ms cubic-bezier(0.4, 0, 0.2, 1),margin 75ms cubic-bezier(0.4, 0, 0.2, 1);width:var(--mdc-switch-handle-width);height:var(--mdc-switch-handle-height);border-radius:var(--mdc-switch-handle-shape, var(--mat-app-corner-full))}[dir=rtl] .mdc-switch__handle{left:auto;right:0}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle{width:var(--mat-switch-unselected-handle-size);height:var(--mat-switch-unselected-handle-size);margin:var(--mat-switch-unselected-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-switch-unselected-with-icon-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle{width:var(--mat-switch-selected-handle-size);height:var(--mat-switch-selected-handle-size);margin:var(--mat-switch-selected-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-switch-selected-with-icon-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch__handle:has(.mdc-switch__icons){width:var(--mat-switch-with-icon-handle-size);height:var(--mat-switch-with-icon-handle-size)}.mat-mdc-slide-toggle .mdc-switch:active:not(.mdc-switch--disabled) .mdc-switch__handle{width:var(--mat-switch-pressed-handle-size);height:var(--mat-switch-pressed-handle-size)}.mat-mdc-slide-toggle .mdc-switch--selected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-switch-selected-pressed-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch--unselected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-switch-unselected-pressed-handle-horizontal-margin)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__handle::after{opacity:var(--mat-switch-disabled-selected-handle-opacity)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__handle::after{opacity:var(--mat-switch-disabled-unselected-handle-opacity)}.mdc-switch__handle::before,.mdc-switch__handle::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";width:100%;height:100%;left:0;position:absolute;top:0;transition:background-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1),border-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);z-index:-1}.cdk-high-contrast-active .mdc-switch__handle::before,.cdk-high-contrast-active .mdc-switch__handle::after{border-color:currentColor}.mdc-switch--selected:enabled .mdc-switch__handle::after{background:var(--mdc-switch-selected-handle-color, var(--mat-app-on-primary))}.mdc-switch--selected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mdc-switch-selected-hover-handle-color, var(--mat-app-primary-container))}.mdc-switch--selected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mdc-switch-selected-focus-handle-color, var(--mat-app-primary-container))}.mdc-switch--selected:enabled:active .mdc-switch__handle::after{background:var(--mdc-switch-selected-pressed-handle-color, var(--mat-app-primary-container))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:hover:not(:focus):not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:focus:not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:active .mdc-switch__handle::after,.mdc-switch--selected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mdc-switch-disabled-selected-handle-color, var(--mat-app-surface))}.mdc-switch--unselected:enabled .mdc-switch__handle::after{background:var(--mdc-switch-unselected-handle-color, var(--mat-app-outline))}.mdc-switch--unselected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mdc-switch-unselected-hover-handle-color, var(--mat-app-on-surface-variant))}.mdc-switch--unselected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mdc-switch-unselected-focus-handle-color, var(--mat-app-on-surface-variant))}.mdc-switch--unselected:enabled:active .mdc-switch__handle::after{background:var(--mdc-switch-unselected-pressed-handle-color, var(--mat-app-on-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mdc-switch-disabled-unselected-handle-color, var(--mat-app-on-surface))}.mdc-switch__handle::before{background:var(--mdc-switch-handle-surface-color)}.mdc-switch__shadow{border-radius:inherit;bottom:0;left:0;position:absolute;right:0;top:0}.mdc-switch:enabled .mdc-switch__shadow{box-shadow:var(--mdc-switch-handle-elevation-shadow)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__shadow,.mdc-switch.mdc-switch--disabled .mdc-switch__shadow{box-shadow:var(--mdc-switch-disabled-handle-elevation-shadow)}.mdc-switch__ripple{left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);z-index:-1;width:var(--mdc-switch-state-layer-size);height:var(--mdc-switch-state-layer-size)}.mdc-switch__ripple::after{content:"";opacity:0}.mdc-switch--disabled .mdc-switch__ripple::after{display:none}.mat-mdc-slide-toggle-disabled-interactive .mdc-switch__ripple::after{display:block}.mdc-switch:hover .mdc-switch__ripple::after{opacity:.04;transition:75ms opacity cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle.mat-mdc-slide-toggle-focused .mdc-switch .mdc-switch__ripple::after{opacity:.12}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:focus .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:active .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:hover:not(:focus) .mdc-switch__ripple::after,.mdc-switch--unselected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mdc-switch-unselected-hover-state-layer-color, var(--mat-app-on-surface))}.mdc-switch--unselected:enabled:focus .mdc-switch__ripple::after{background:var(--mdc-switch-unselected-focus-state-layer-color, var(--mat-app-on-surface))}.mdc-switch--unselected:enabled:active .mdc-switch__ripple::after{background:var(--mdc-switch-unselected-pressed-state-layer-color, var(--mat-app-on-surface));opacity:var(--mdc-switch-unselected-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch--selected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mdc-switch-selected-hover-state-layer-color, var(--mat-app-primary))}.mdc-switch--selected:enabled:focus .mdc-switch__ripple::after{background:var(--mdc-switch-selected-focus-state-layer-color, var(--mat-app-primary))}.mdc-switch--selected:enabled:active .mdc-switch__ripple::after{background:var(--mdc-switch-selected-pressed-state-layer-color, var(--mat-app-primary));opacity:var(--mdc-switch-selected-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch__icons{position:relative;height:100%;width:100%;z-index:1}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__icons{opacity:var(--mdc-switch-disabled-unselected-icon-opacity)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__icons{opacity:var(--mdc-switch-disabled-selected-icon-opacity)}.mdc-switch__icon{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;opacity:0;transition:opacity 30ms 0ms cubic-bezier(0.4, 0, 1, 1)}.mdc-switch--unselected .mdc-switch__icon{width:var(--mdc-switch-unselected-icon-size);height:var(--mdc-switch-unselected-icon-size);fill:var(--mdc-switch-unselected-icon-color, var(--mat-app-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mdc-switch-disabled-unselected-icon-color, var(--mat-app-surface-variant))}.mdc-switch--selected .mdc-switch__icon{width:var(--mdc-switch-selected-icon-size);height:var(--mdc-switch-selected-icon-size);fill:var(--mdc-switch-selected-icon-color, var(--mat-app-on-primary-container))}.mdc-switch--selected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mdc-switch-disabled-selected-icon-color, var(--mat-app-on-surface))}.mdc-switch--selected .mdc-switch__icon--on,.mdc-switch--unselected .mdc-switch__icon--off{opacity:1;transition:opacity 45ms 30ms cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle{-webkit-user-select:none;user-select:none;display:inline-block;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:0}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple,.mat-mdc-slide-toggle .mdc-switch__ripple::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple:not(:empty),.mat-mdc-slide-toggle .mdc-switch__ripple::after:not(:empty){transform:translateZ(0)}.mat-mdc-slide-toggle.mat-mdc-slide-toggle-focused .mat-mdc-focus-indicator::before{content:""}.mat-mdc-slide-toggle .mat-internal-form-field{color:var(--mat-switch-label-text-color, var(--mat-app-on-surface));font-family:var(--mat-switch-label-text-font, var(--mat-app-body-medium-font));line-height:var(--mat-switch-label-text-line-height, var(--mat-app-body-medium-line-height));font-size:var(--mat-switch-label-text-size, var(--mat-app-body-medium-size));letter-spacing:var(--mat-switch-label-text-tracking, var(--mat-app-body-medium-tracking));font-weight:var(--mat-switch-label-text-weight, var(--mat-app-body-medium-weight))}.mat-mdc-slide-toggle .mat-ripple-element{opacity:.12}.mat-mdc-slide-toggle .mat-mdc-focus-indicator::before{border-radius:50%}.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle-track,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__icon,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::after,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::after{transition:none}.mat-mdc-slide-toggle .mdc-switch:enabled+.mdc-label{cursor:pointer}.mat-mdc-slide-toggle .mdc-switch--disabled+label{color:var(--mdc-switch-disabled-label-text-color)}'],encapsulation:2,changeDetection:0})}}return n})();const ale=["*",[["mat-toolbar-row"]]],lle=["*","mat-toolbar-row"];let cle=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"],standalone:!0})}}return n})(),Yg=(()=>{class n{constructor(e,i,r){this._elementRef=e,this._platform=i,this._document=r}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Io),o.rXU(V))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-toolbar"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,cle,5),2&i){let l;o.mGM(l=o.lsd())&&(r._toolbarRows=l)}},hostAttrs:[1,"mat-toolbar"],hostVars:6,hostBindings:function(i,r){2&i&&(o.HbH(r.color?"mat-"+r.color:""),o.AVh("mat-toolbar-multiple-rows",r._toolbarRows.length>0)("mat-toolbar-single-row",0===r._toolbarRows.length))},inputs:{color:"color"},exportAs:["matToolbar"],standalone:!0,features:[o.aNF],ngContentSelectors:lle,decls:2,vars:0,template:function(i,r){1&i&&(o.NAR(ale),o.SdG(0),o.SdG(1,1))},styles:[".mat-toolbar{background:var(--mat-toolbar-container-background-color, var(--mat-app-surface));color:var(--mat-toolbar-container-text-color, var(--mat-app-on-surface))}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font-family:var(--mat-toolbar-title-text-font, var(--mat-app-title-large-font));font-size:var(--mat-toolbar-title-text-size, var(--mat-app-title-large-size));line-height:var(--mat-toolbar-title-text-line-height, var(--mat-app-title-large-line-height));font-weight:var(--mat-toolbar-title-text-weight, var(--mat-app-title-large-weight));letter-spacing:var(--mat-toolbar-title-text-tracking, var(--mat-app-title-large-tracking));margin:0}.cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar .mat-mdc-button-base.mat-mdc-button-base.mat-unthemed{--mdc-text-button-label-text-color:var(--mat-toolbar-container-text-color, var(--mat-app-on-surface));--mdc-outlined-button-label-text-color:var(--mat-toolbar-container-text-color, var(--mat-app-on-surface))}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap;height:var(--mat-toolbar-standard-height)}@media(max-width: 599px){.mat-toolbar-row,.mat-toolbar-single-row{height:var(--mat-toolbar-mobile-height)}}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%;min-height:var(--mat-toolbar-standard-height)}@media(max-width: 599px){.mat-toolbar-multiple-rows{min-height:var(--mat-toolbar-mobile-height)}}"],encapsulation:2,changeDetection:0})}}return n})();class dle extends mi.B{constructor(t=1/0,e=1/0,i=wf){super(),this._bufferSize=t,this._windowTime=e,this._timestampProvider=i,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=e===1/0,this._bufferSize=Math.max(1,t),this._windowTime=Math.max(1,e)}next(t){const{isStopped:e,_buffer:i,_infiniteTimeWindow:r,_timestampProvider:s,_windowTime:l}=this;e||(i.push(t),!r&&i.push(s.now()+l)),this._trimBuffer(),super.next(t)}_subscribe(t){this._throwIfClosed(),this._trimBuffer();const e=this._innerSubscribe(t),{_infiniteTimeWindow:i,_buffer:r}=this,s=r.slice();for(let l=0;lnew mi.B,resetOnError:e=!0,resetOnComplete:i=!0,resetOnRefCountZero:r=!0}=n;return s=>{let l,u,f,p=0,m=!1,_=!1;const b=()=>{u?.unsubscribe(),u=void 0},w=()=>{b(),l=f=void 0,m=_=!1},F=()=>{const D=l;w(),D?.unsubscribe()};return(0,Ir.N)((D,T)=>{p++,!_&&!m&&b();const I=f=f??t();T.add(()=>{p--,0===p&&!_&&!m&&(u=Q8(F,r))}),I.subscribe(T),!l&&p>0&&(l=new H8.Ms({next:O=>I.next(O),error:O=>{_=!0,b(),u=Q8(w,e,O),I.error(O)},complete:()=>{m=!0,b(),u=Q8(w,i),I.complete()}}),Rr(D).subscribe(l))})(s)}}function Q8(n,t,...e){if(!0===t)return void n();if(!1===t)return;const i=new H8.Ms({next:()=>{i.unsubscribe(),n()}});return Rr(t(...e)).subscribe(i)}class hle{constructor(t){this._box=t,this._destroyed=new mi.B,this._resizeSubject=new mi.B,this._elementObservables=new Map,typeof ResizeObserver<"u"&&(this._resizeObserver=new ResizeObserver(e=>this._resizeSubject.next(e)))}observe(t){return this._elementObservables.has(t)||this._elementObservables.set(t,new qr.c(e=>{const i=this._resizeSubject.subscribe(e);return this._resizeObserver?.observe(t,{box:this._box}),()=>{this._resizeObserver?.unobserve(t),i.unsubscribe(),this._elementObservables.delete(t)}}).pipe(hr(e=>e.some(i=>i.target===t)),function ule(n,t,e){let i,r=!1;return n&&"object"==typeof n?({bufferSize:i=1/0,windowTime:t=1/0,refCount:r=!1,scheduler:e}=n):i=n??1/0,lR({connector:()=>new dle(i,t,e),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:r})}({bufferSize:1,refCount:!0}),bo(this._destroyed))),this._elementObservables.get(t)}destroy(){this._destroyed.next(),this._destroyed.complete(),this._resizeSubject.complete(),this._elementObservables.clear()}}let fle=(()=>{class n{constructor(){this._observers=new Map,this._ngZone=(0,o.WQX)(o.SKi)}ngOnDestroy(){for(const[,e]of this._observers)e.destroy();this._observers.clear()}observe(e,i){const r=i?.box||"content-box";return this._observers.has(r)||this._observers.set(r,new hle(r)),this._observers.get(r).observe(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const ple=["notch"],Ale=["matFormFieldNotchedOutline",""],mle=["*"],gle=["textField"],_le=["iconPrefixContainer"],ble=["textPrefixContainer"],vle=["iconSuffixContainer"],yle=["textSuffixContainer"],wle=["*",[["mat-label"]],[["","matPrefix",""],["","matIconPrefix",""]],[["","matTextPrefix",""]],[["","matTextSuffix",""]],[["","matSuffix",""],["","matIconSuffix",""]],[["mat-error"],["","matError",""]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],xle=["*","mat-label","[matPrefix], [matIconPrefix]","[matTextPrefix]","[matTextSuffix]","[matSuffix], [matIconSuffix]","mat-error, [matError]","mat-hint:not([align='end'])","mat-hint[align='end']"];function Cle(n,t){1&n&&o.nrm(0,"span",21)}function Mle(n,t){if(1&n&&(o.j41(0,"label",20),o.SdG(1,1),o.DNE(2,Cle,1,0,"span",21),o.k0s()),2&n){const e=o.XpG(2);o.Y8G("floating",e._shouldLabelFloat())("monitorResize",e._hasOutline())("id",e._labelId),o.BMQ("for",e._control.disableAutomaticLabeling?null:e._control.id),o.R7$(2),o.vxM(!e.hideRequiredMarker&&e._control.required?2:-1)}}function Ele(n,t){if(1&n&&o.DNE(0,Mle,3,5,"label",20),2&n){const e=o.XpG();o.vxM(e._hasFloatingLabel()?0:-1)}}function Sle(n,t){1&n&&o.nrm(0,"div",7)}function Tle(n,t){}function Ile(n,t){if(1&n&&o.DNE(0,Tle,0,0,"ng-template",13),2&n){o.XpG(2);const e=o.sdS(1);o.Y8G("ngTemplateOutlet",e)}}function Fle(n,t){if(1&n&&(o.j41(0,"div",9),o.DNE(1,Ile,1,1,null,13),o.k0s()),2&n){const e=o.XpG();o.Y8G("matFormFieldNotchedOutlineOpen",e._shouldLabelFloat()),o.R7$(),o.vxM(e._forceDisplayInfixLabel()?-1:1)}}function Dle(n,t){1&n&&(o.j41(0,"div",10,2),o.SdG(2,2),o.k0s())}function Ble(n,t){1&n&&(o.j41(0,"div",11,3),o.SdG(2,3),o.k0s())}function kle(n,t){}function Rle(n,t){if(1&n&&o.DNE(0,kle,0,0,"ng-template",13),2&n){o.XpG();const e=o.sdS(1);o.Y8G("ngTemplateOutlet",e)}}function Ple(n,t){1&n&&(o.j41(0,"div",14,4),o.SdG(2,4),o.k0s())}function Ole(n,t){1&n&&(o.j41(0,"div",15,5),o.SdG(2,5),o.k0s())}function Nle(n,t){1&n&&o.nrm(0,"div",16)}function Lle(n,t){if(1&n&&(o.j41(0,"div",18),o.SdG(1,6),o.k0s()),2&n){const e=o.XpG();o.Y8G("@transitionMessages",e._subscriptAnimationState)}}function Ule(n,t){if(1&n&&(o.j41(0,"mat-hint",22),o.EFF(1),o.k0s()),2&n){const e=o.XpG(2);o.Y8G("id",e._hintLabelId),o.R7$(),o.JRh(e.hintLabel)}}function Vle(n,t){if(1&n&&(o.j41(0,"div",19),o.DNE(1,Ule,2,2,"mat-hint",22),o.SdG(2,7),o.nrm(3,"div",23),o.SdG(4,8),o.k0s()),2&n){const e=o.XpG();o.Y8G("@transitionMessages",e._subscriptAnimationState),o.R7$(),o.vxM(e.hintLabel?1:-1)}}let Nu=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-label"]],standalone:!0})}}return n})(),Hle=0;const U$=new o.nKC("MatError");let V$=(()=>{class n{constructor(e,i){this.id="mat-mdc-error-"+Hle++,e||i.nativeElement.setAttribute("aria-live","polite")}static{this.\u0275fac=function(i){return new(i||n)(o.kS0("aria-live"),o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-error"],["","matError",""]],hostAttrs:["aria-atomic","true",1,"mat-mdc-form-field-error","mat-mdc-form-field-bottom-align"],hostVars:1,hostBindings:function(i,r){2&i&&o.Mr5("id",r.id)},inputs:{id:"id"},standalone:!0,features:[o.Jv_([{provide:U$,useExisting:n}])]})}}return n})(),Qle=0,z8=(()=>{class n{constructor(){this.align="start",this.id="mat-mdc-hint-"+Qle++}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-hint"]],hostAttrs:[1,"mat-mdc-form-field-hint","mat-mdc-form-field-bottom-align"],hostVars:4,hostBindings:function(i,r){2&i&&(o.Mr5("id",r.id),o.BMQ("align",null),o.AVh("mat-mdc-form-field-hint-end","end"===r.align))},inputs:{align:"align",id:"id"},standalone:!0})}}return n})();const H$=new o.nKC("MatPrefix");let Q$=(()=>{class n{constructor(){this._isText=!1}set _isTextSelector(e){this._isText=!0}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matPrefix",""],["","matIconPrefix",""],["","matTextPrefix",""]],inputs:{_isTextSelector:[0,"matTextPrefix","_isTextSelector"]},standalone:!0,features:[o.Jv_([{provide:H$,useExisting:n}])]})}}return n})();const zle=new o.nKC("MatSuffix"),z$=new o.nKC("FloatingLabelParent");let G$=(()=>{class n{get floating(){return this._floating}set floating(e){this._floating=e,this.monitorResize&&this._handleResize()}get monitorResize(){return this._monitorResize}set monitorResize(e){this._monitorResize=e,this._monitorResize?this._subscribeToResize():this._resizeSubscription.unsubscribe()}constructor(e){this._elementRef=e,this._floating=!1,this._monitorResize=!1,this._resizeObserver=(0,o.WQX)(fle),this._ngZone=(0,o.WQX)(o.SKi),this._parent=(0,o.WQX)(z$),this._resizeSubscription=new un.yU}ngOnDestroy(){this._resizeSubscription.unsubscribe()}getWidth(){return function Gle(n){if(null!==n.offsetParent)return n.scrollWidth;const e=n.cloneNode(!0);e.style.setProperty("position","absolute"),e.style.setProperty("transform","translate(-9999px, -9999px)"),document.documentElement.appendChild(e);const i=e.scrollWidth;return e.remove(),i}(this._elementRef.nativeElement)}get element(){return this._elementRef.nativeElement}_handleResize(){setTimeout(()=>this._parent._handleLabelResized())}_subscribeToResize(){this._resizeSubscription.unsubscribe(),this._ngZone.runOutsideAngular(()=>{this._resizeSubscription=this._resizeObserver.observe(this._elementRef.nativeElement,{box:"border-box"}).subscribe(()=>this._handleResize())})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["label","matFormFieldFloatingLabel",""]],hostAttrs:[1,"mdc-floating-label","mat-mdc-floating-label"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mdc-floating-label--float-above",r.floating)},inputs:{floating:"floating",monitorResize:"monitorResize"},standalone:!0})}}return n})();const j$="mdc-line-ripple--active",cR="mdc-line-ripple--deactivating";let $$=(()=>{class n{constructor(e,i){this._elementRef=e,this._handleTransitionEnd=r=>{const s=this._elementRef.nativeElement.classList,l=s.contains(cR);"opacity"===r.propertyName&&l&&s.remove(j$,cR)},i.runOutsideAngular(()=>{e.nativeElement.addEventListener("transitionend",this._handleTransitionEnd)})}activate(){const e=this._elementRef.nativeElement.classList;e.remove(cR),e.add(j$)}deactivate(){this._elementRef.nativeElement.classList.add(cR)}ngOnDestroy(){this._elementRef.nativeElement.removeEventListener("transitionend",this._handleTransitionEnd)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["div","matFormFieldLineRipple",""]],hostAttrs:[1,"mdc-line-ripple"],standalone:!0})}}return n})(),q$=(()=>{class n{constructor(e,i){this._elementRef=e,this._ngZone=i,this.open=!1}ngAfterViewInit(){const e=this._elementRef.nativeElement.querySelector(".mdc-floating-label");e?(this._elementRef.nativeElement.classList.add("mdc-notched-outline--upgraded"),"function"==typeof requestAnimationFrame&&(e.style.transitionDuration="0s",this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>e.style.transitionDuration="")}))):this._elementRef.nativeElement.classList.add("mdc-notched-outline--no-label")}_setNotchWidth(e){this._notch.nativeElement.style.width=this.open&&e?`calc(${e}px * var(--mat-mdc-form-field-floating-label-scale, 0.75) + 9px)`:""}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["div","matFormFieldNotchedOutline",""]],viewQuery:function(i,r){if(1&i&&o.GBs(ple,5),2&i){let s;o.mGM(s=o.lsd())&&(r._notch=s.first)}},hostAttrs:[1,"mdc-notched-outline"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mdc-notched-outline--notched",r.open)},inputs:{open:[0,"matFormFieldNotchedOutlineOpen","open"]},standalone:!0,features:[o.aNF],attrs:Ale,ngContentSelectors:mle,decls:5,vars:0,consts:[["notch",""],[1,"mat-mdc-notch-piece","mdc-notched-outline__leading"],[1,"mat-mdc-notch-piece","mdc-notched-outline__notch"],[1,"mat-mdc-notch-piece","mdc-notched-outline__trailing"]],template:function(i,r){1&i&&(o.NAR(),o.nrm(0,"div",1),o.j41(1,"div",2,0),o.SdG(3),o.k0s(),o.nrm(4,"div",3))},encapsulation:2,changeDetection:0})}}return n})();const jle={transitionMessages:(0,Nn.hZ)("transitionMessages",[(0,Nn.wk)("enter",(0,Nn.iF)({opacity:1,transform:"translateY(0%)"})),(0,Nn.kY)("void => enter",[(0,Nn.iF)({opacity:0,transform:"translateY(-5px)"}),(0,Nn.i0)("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let G8=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n})}}return n})();const j8=new o.nKC("MatFormField"),$le=new o.nKC("MAT_FORM_FIELD_DEFAULT_OPTIONS");let W$=0,Lu=(()=>{class n{get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(e){this._hideRequiredMarker=gi(e)}get floatLabel(){return this._floatLabel||this._defaults?.floatLabel||"auto"}set floatLabel(e){e!==this._floatLabel&&(this._floatLabel=e,this._changeDetectorRef.markForCheck())}get appearance(){return this._appearance}set appearance(e){const i=this._appearance;this._appearance=e||this._defaults?.appearance||"fill","outline"===this._appearance&&this._appearance!==i&&(this._needsOutlineLabelOffsetUpdate=!0)}get subscriptSizing(){return this._subscriptSizing||this._defaults?.subscriptSizing||"fixed"}set subscriptSizing(e){this._subscriptSizing=e||this._defaults?.subscriptSizing||"fixed"}get hintLabel(){return this._hintLabel}set hintLabel(e){this._hintLabel=e,this._processHints()}get _control(){return this._explicitFormFieldControl||this._formFieldControl}set _control(e){this._explicitFormFieldControl=e}constructor(e,i,r,s,l,u,f,p){this._elementRef=e,this._changeDetectorRef=i,this._dir=s,this._platform=l,this._defaults=u,this._animationMode=f,this._labelChild=(0,o.sbv)(Nu),this._hideRequiredMarker=!1,this.color="primary",this._appearance="fill",this._subscriptSizing=null,this._hintLabel="",this._hasIconPrefix=!1,this._hasTextPrefix=!1,this._hasIconSuffix=!1,this._hasTextSuffix=!1,this._labelId="mat-mdc-form-field-label-"+W$++,this._hintLabelId="mat-mdc-hint-"+W$++,this._subscriptAnimationState="",this._destroyed=new mi.B,this._isFocused=null,this._needsOutlineLabelOffsetUpdate=!1,this._previousControl=null,this._injector=(0,o.WQX)(o.zZn),this.getLabelId=(0,o.EWP)(()=>this._hasFloatingLabel()?this._labelId:null),this._hasFloatingLabel=(0,o.EWP)(()=>!!this._labelChild()),u&&(u.appearance&&(this.appearance=u.appearance),this._hideRequiredMarker=!!u?.hideRequiredMarker,u.color&&(this.color=u.color))}ngAfterViewInit(){this._updateFocusState(),this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngAfterContentInit(){this._assertFormFieldControl(),this._initializeSubscript(),this._initializePrefixAndSuffix(),this._initializeOutlineLabelOffsetSubscriptions()}ngAfterContentChecked(){this._assertFormFieldControl(),this._control!==this._previousControl&&(this._initializeControl(this._previousControl),this._previousControl=this._control)}ngOnDestroy(){this._stateChanges?.unsubscribe(),this._valueChanges?.unsubscribe(),this._destroyed.next(),this._destroyed.complete()}getConnectedOverlayOrigin(){return this._textField||this._elementRef}_animateAndLockLabel(){this._hasFloatingLabel()&&(this.floatLabel="always")}_initializeControl(e){const i=this._control,r="mat-mdc-form-field-type-";e&&this._elementRef.nativeElement.classList.remove(r+e.controlType),i.controlType&&this._elementRef.nativeElement.classList.add(r+i.controlType),this._stateChanges?.unsubscribe(),this._stateChanges=i.stateChanges.subscribe(()=>{this._updateFocusState(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._valueChanges?.unsubscribe(),i.ngControl&&i.ngControl.valueChanges&&(this._valueChanges=i.ngControl.valueChanges.pipe(bo(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()))}_checkPrefixAndSuffixTypes(){this._hasIconPrefix=!!this._prefixChildren.find(e=>!e._isText),this._hasTextPrefix=!!this._prefixChildren.find(e=>e._isText),this._hasIconSuffix=!!this._suffixChildren.find(e=>!e._isText),this._hasTextSuffix=!!this._suffixChildren.find(e=>e._isText)}_initializePrefixAndSuffix(){this._checkPrefixAndSuffixTypes(),ql(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._checkPrefixAndSuffixTypes(),this._changeDetectorRef.markForCheck()})}_initializeSubscript(){this._hintChildren.changes.subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._validateHints(),this._syncDescribedByIds()}_assertFormFieldControl(){}_updateFocusState(){this._control.focused&&!this._isFocused?(this._isFocused=!0,this._lineRipple?.activate()):!this._control.focused&&(this._isFocused||null===this._isFocused)&&(this._isFocused=!1,this._lineRipple?.deactivate()),this._textField?.nativeElement.classList.toggle("mdc-text-field--focused",this._control.focused)}_initializeOutlineLabelOffsetSubscriptions(){this._prefixChildren.changes.subscribe(()=>this._needsOutlineLabelOffsetUpdate=!0),(0,o.Tzd)(()=>{this._needsOutlineLabelOffsetUpdate&&(this._needsOutlineLabelOffsetUpdate=!1,this._updateOutlineLabelOffset())},{injector:this._injector}),this._dir.change.pipe(bo(this._destroyed)).subscribe(()=>this._needsOutlineLabelOffsetUpdate=!0)}_shouldAlwaysFloat(){return"always"===this.floatLabel}_hasOutline(){return"outline"===this.appearance}_forceDisplayInfixLabel(){return!this._platform.isBrowser&&this._prefixChildren.length&&!this._shouldLabelFloat()}_shouldLabelFloat(){return!!this._hasFloatingLabel()&&(this._control.shouldLabelFloat||this._shouldAlwaysFloat())}_shouldForward(e){const i=this._control?this._control.ngControl:null;return i&&i[e]}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_handleLabelResized(){this._refreshOutlineNotchWidth()}_refreshOutlineNotchWidth(){this._hasOutline()&&this._floatingLabel&&this._shouldLabelFloat()?this._notchedOutline?._setNotchWidth(this._floatingLabel.getWidth()):this._notchedOutline?._setNotchWidth(0)}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_syncDescribedByIds(){if(this._control){let e=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&e.push(...this._control.userAriaDescribedBy.split(" ")),"hint"===this._getDisplayedMessages()){const i=this._hintChildren?this._hintChildren.find(s=>"start"===s.align):null,r=this._hintChildren?this._hintChildren.find(s=>"end"===s.align):null;i?e.push(i.id):this._hintLabel&&e.push(this._hintLabelId),r&&e.push(r.id)}else this._errorChildren&&e.push(...this._errorChildren.map(i=>i.id));this._control.setDescribedByIds(e)}}_updateOutlineLabelOffset(){if(!this._hasOutline()||!this._floatingLabel)return;const e=this._floatingLabel.element;if(!this._iconPrefixContainer&&!this._textPrefixContainer)return void(e.style.transform="");if(!this._isAttachedToDom())return void(this._needsOutlineLabelOffsetUpdate=!0);const i=this._iconPrefixContainer?.nativeElement,r=this._textPrefixContainer?.nativeElement,s=this._iconSuffixContainer?.nativeElement,l=this._textSuffixContainer?.nativeElement,u=i?.getBoundingClientRect().width??0,f=r?.getBoundingClientRect().width??0,p=s?.getBoundingClientRect().width??0,m=l?.getBoundingClientRect().width??0;e.style.transform=`var(\n --mat-mdc-form-field-label-transform,\n translateY(-50%) translateX(calc(${"rtl"===this._dir.value?"-1":"1"} * (${u+f}px + var(--mat-mdc-form-field-label-offset-x, 0px))))\n )`,this._elementRef.nativeElement.style.setProperty("--mat-form-field-notch-max-width",`calc(100% - ${u+f+p+m}px)`)}_isAttachedToDom(){const e=this._elementRef.nativeElement;if(e.getRootNode){const i=e.getRootNode();return i&&i!==e}return document.documentElement.contains(e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.gRc),o.rXU(o.SKi),o.rXU(Ks),o.rXU(Io),o.rXU($le,8),o.rXU(o.bc$,8),o.rXU(V))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-form-field"]],contentQueries:function(i,r,s){if(1&i&&(o.C6U(s,r._labelChild,Nu,5),o.wni(s,G8,5),o.wni(s,H$,5),o.wni(s,zle,5),o.wni(s,U$,5),o.wni(s,z8,5)),2&i){let l;o.NyB(),o.mGM(l=o.lsd())&&(r._formFieldControl=l.first),o.mGM(l=o.lsd())&&(r._prefixChildren=l),o.mGM(l=o.lsd())&&(r._suffixChildren=l),o.mGM(l=o.lsd())&&(r._errorChildren=l),o.mGM(l=o.lsd())&&(r._hintChildren=l)}},viewQuery:function(i,r){if(1&i&&(o.GBs(gle,5),o.GBs(_le,5),o.GBs(ble,5),o.GBs(vle,5),o.GBs(yle,5),o.GBs(G$,5),o.GBs(q$,5),o.GBs($$,5)),2&i){let s;o.mGM(s=o.lsd())&&(r._textField=s.first),o.mGM(s=o.lsd())&&(r._iconPrefixContainer=s.first),o.mGM(s=o.lsd())&&(r._textPrefixContainer=s.first),o.mGM(s=o.lsd())&&(r._iconSuffixContainer=s.first),o.mGM(s=o.lsd())&&(r._textSuffixContainer=s.first),o.mGM(s=o.lsd())&&(r._floatingLabel=s.first),o.mGM(s=o.lsd())&&(r._notchedOutline=s.first),o.mGM(s=o.lsd())&&(r._lineRipple=s.first)}},hostAttrs:[1,"mat-mdc-form-field"],hostVars:42,hostBindings:function(i,r){2&i&&o.AVh("mat-mdc-form-field-label-always-float",r._shouldAlwaysFloat())("mat-mdc-form-field-has-icon-prefix",r._hasIconPrefix)("mat-mdc-form-field-has-icon-suffix",r._hasIconSuffix)("mat-form-field-invalid",r._control.errorState)("mat-form-field-disabled",r._control.disabled)("mat-form-field-autofilled",r._control.autofilled)("mat-form-field-no-animations","NoopAnimations"===r._animationMode)("mat-form-field-appearance-fill","fill"==r.appearance)("mat-form-field-appearance-outline","outline"==r.appearance)("mat-form-field-hide-placeholder",r._hasFloatingLabel()&&!r._shouldLabelFloat())("mat-focused",r._control.focused)("mat-primary","accent"!==r.color&&"warn"!==r.color)("mat-accent","accent"===r.color)("mat-warn","warn"===r.color)("ng-untouched",r._shouldForward("untouched"))("ng-touched",r._shouldForward("touched"))("ng-pristine",r._shouldForward("pristine"))("ng-dirty",r._shouldForward("dirty"))("ng-valid",r._shouldForward("valid"))("ng-invalid",r._shouldForward("invalid"))("ng-pending",r._shouldForward("pending"))},inputs:{hideRequiredMarker:"hideRequiredMarker",color:"color",floatLabel:"floatLabel",appearance:"appearance",subscriptSizing:"subscriptSizing",hintLabel:"hintLabel"},exportAs:["matFormField"],standalone:!0,features:[o.Jv_([{provide:j8,useExisting:n},{provide:z$,useExisting:n}]),o.aNF],ngContentSelectors:xle,decls:18,vars:21,consts:[["labelTemplate",""],["textField",""],["iconPrefixContainer",""],["textPrefixContainer",""],["textSuffixContainer",""],["iconSuffixContainer",""],[1,"mat-mdc-text-field-wrapper","mdc-text-field",3,"click"],[1,"mat-mdc-form-field-focus-overlay"],[1,"mat-mdc-form-field-flex"],["matFormFieldNotchedOutline","",3,"matFormFieldNotchedOutlineOpen"],[1,"mat-mdc-form-field-icon-prefix"],[1,"mat-mdc-form-field-text-prefix"],[1,"mat-mdc-form-field-infix"],[3,"ngTemplateOutlet"],[1,"mat-mdc-form-field-text-suffix"],[1,"mat-mdc-form-field-icon-suffix"],["matFormFieldLineRipple",""],[1,"mat-mdc-form-field-subscript-wrapper","mat-mdc-form-field-bottom-align"],[1,"mat-mdc-form-field-error-wrapper"],[1,"mat-mdc-form-field-hint-wrapper"],["matFormFieldFloatingLabel","",3,"floating","monitorResize","id"],["aria-hidden","true",1,"mat-mdc-form-field-required-marker","mdc-floating-label--required"],[3,"id"],[1,"mat-mdc-form-field-hint-spacer"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(wle),o.DNE(0,Ele,1,1,"ng-template",null,0,o.C5r),o.j41(2,"div",6,1),o.bIt("click",function(u){return o.eBV(s),o.Njj(r._control.onContainerClick(u))}),o.DNE(4,Sle,1,0,"div",7),o.j41(5,"div",8),o.DNE(6,Fle,2,2,"div",9)(7,Dle,3,0,"div",10)(8,Ble,3,0,"div",11),o.j41(9,"div",12),o.DNE(10,Rle,1,1,null,13),o.SdG(11),o.k0s(),o.DNE(12,Ple,3,0,"div",14)(13,Ole,3,0,"div",15),o.k0s(),o.DNE(14,Nle,1,0,"div",16),o.k0s(),o.j41(15,"div",17),o.DNE(16,Lle,2,1,"div",18)(17,Vle,5,2,"div",19),o.k0s()}if(2&i){let s;o.R7$(2),o.AVh("mdc-text-field--filled",!r._hasOutline())("mdc-text-field--outlined",r._hasOutline())("mdc-text-field--no-label",!r._hasFloatingLabel())("mdc-text-field--disabled",r._control.disabled)("mdc-text-field--invalid",r._control.errorState),o.R7$(2),o.vxM(r._hasOutline()||r._control.disabled?-1:4),o.R7$(2),o.vxM(r._hasOutline()?6:-1),o.R7$(),o.vxM(r._hasIconPrefix?7:-1),o.R7$(),o.vxM(r._hasTextPrefix?8:-1),o.R7$(2),o.vxM(!r._hasOutline()||r._forceDisplayInfixLabel()?10:-1),o.R7$(2),o.vxM(r._hasTextSuffix?12:-1),o.R7$(),o.vxM(r._hasIconSuffix?13:-1),o.R7$(),o.vxM(r._hasOutline()?-1:14),o.R7$(),o.AVh("mat-mdc-form-field-subscript-dynamic-size","dynamic"===r.subscriptSizing),o.R7$(),o.vxM("error"===(s=r._getDisplayedMessages())?16:"hint"===s?17:-1)}},dependencies:[G$,q$,yi,$$,z8],styles:['.mdc-text-field{display:inline-flex;align-items:baseline;padding:0 16px;position:relative;box-sizing:border-box;overflow:hidden;will-change:opacity,transform,color;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.mdc-text-field__input{width:100%;min-width:0;border:none;border-radius:0;background:none;padding:0;-moz-appearance:none;-webkit-appearance:none;height:28px}.mdc-text-field__input::-webkit-calendar-picker-indicator{display:none}.mdc-text-field__input::-ms-clear{display:none}.mdc-text-field__input:focus{outline:none}.mdc-text-field__input:invalid{box-shadow:none}.mdc-text-field__input::placeholder{opacity:0}.mdc-text-field__input::-moz-placeholder{opacity:0}.mdc-text-field__input::-webkit-input-placeholder{opacity:0}.mdc-text-field__input:-ms-input-placeholder{opacity:0}.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mdc-text-field--focused .mdc-text-field__input::placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{opacity:1}.mdc-text-field--outlined .mdc-text-field__input,.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input{height:100%}.mdc-text-field--outlined .mdc-text-field__input{display:flex;border:none !important;background-color:rgba(0,0,0,0)}.mdc-text-field--disabled .mdc-text-field__input{pointer-events:auto}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mdc-filled-text-field-input-text-color, var(--mat-app-on-surface));caret-color:var(--mdc-filled-text-field-caret-color, var(--mat-app-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mdc-filled-text-field-error-caret-color)}.mdc-text-field--filled.mdc-text-field--disabled .mdc-text-field__input{color:var(--mdc-filled-text-field-disabled-input-text-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mdc-outlined-text-field-input-text-color, var(--mat-app-on-surface));caret-color:var(--mdc-outlined-text-field-caret-color, var(--mat-app-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mdc-outlined-text-field-error-caret-color)}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--mdc-outlined-text-field-disabled-input-text-color)}.mdc-text-field--disabled .cdk-high-contrast-active .mdc-text-field__input{background-color:Window}.mdc-text-field--filled{height:56px;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:var(--mdc-filled-text-field-container-shape, var(--mat-app-corner-extra-small-top));border-top-right-radius:var(--mdc-filled-text-field-container-shape, var(--mat-app-corner-extra-small-top))}.mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:var(--mdc-filled-text-field-container-color, var(--mat-app-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled{background-color:var(--mdc-filled-text-field-disabled-container-color)}.mdc-text-field--outlined{height:56px;overflow:visible;padding-right:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)));padding-left:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)) + 4px)}[dir=rtl] .mdc-text-field--outlined{padding-right:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)) + 4px);padding-left:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))}.mdc-floating-label{position:absolute;left:0;transform-origin:left top;line-height:1.15rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform}[dir=rtl] .mdc-floating-label{right:0;left:auto;transform-origin:right top;text-align:right}.mdc-text-field .mdc-floating-label{top:50%;transform:translateY(-50%);pointer-events:none}.mdc-notched-outline .mdc-floating-label{display:inline-block;position:relative;max-width:100%}.mdc-text-field--outlined .mdc-floating-label{left:4px;right:auto}[dir=rtl] .mdc-text-field--outlined .mdc-floating-label{left:auto;right:4px}.mdc-text-field--filled .mdc-floating-label{left:16px;right:auto}[dir=rtl] .mdc-text-field--filled .mdc-floating-label{left:auto;right:16px}.mdc-text-field--disabled .mdc-floating-label{cursor:default}.cdk-high-contrast-active .mdc-text-field--disabled .mdc-floating-label{z-index:1}.mdc-text-field--filled.mdc-text-field--no-label .mdc-floating-label{display:none}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mdc-filled-text-field-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mdc-filled-text-field-focus-label-text-color, var(--mat-app-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mdc-filled-text-field-hover-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-floating-label{color:var(--mdc-filled-text-field-disabled-label-text-color)}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mdc-filled-text-field-error-label-text-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mdc-filled-text-field-error-focus-label-text-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mdc-filled-text-field-error-hover-label-text-color, var(--mat-app-on-error-container))}.mdc-text-field--filled .mdc-floating-label{font-family:var(--mdc-filled-text-field-label-text-font, var(--mat-app-body-large-font));font-size:var(--mdc-filled-text-field-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-filled-text-field-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-filled-text-field-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mdc-outlined-text-field-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mdc-outlined-text-field-focus-label-text-color, var(--mat-app-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mdc-outlined-text-field-hover-label-text-color, var(--mat-app-on-surface))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-floating-label{color:var(--mdc-outlined-text-field-disabled-label-text-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mdc-outlined-text-field-error-label-text-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mdc-outlined-text-field-error-focus-label-text-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mdc-outlined-text-field-error-hover-label-text-color, var(--mat-app-on-error-container))}.mdc-text-field--outlined .mdc-floating-label{font-family:var(--mdc-outlined-text-field-label-text-font, var(--mat-app-body-large-font));font-size:var(--mdc-outlined-text-field-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-outlined-text-field-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-outlined-text-field-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-floating-label--float-above{cursor:auto;transform:translateY(-106%) scale(0.75)}.mdc-text-field--filled .mdc-floating-label--float-above{transform:translateY(-106%) scale(0.75)}.mdc-text-field--outlined .mdc-floating-label--float-above{transform:translateY(-37.25px) scale(1);font-size:.75rem}.mdc-notched-outline .mdc-floating-label--float-above{text-overflow:clip}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:133.3333333333%}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{transform:translateY(-34.75px) scale(0.75)}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:1rem}.mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:1px;margin-right:0;content:"*"}[dir=rtl] .mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:0;margin-right:1px}.mdc-notched-outline{display:flex;position:absolute;top:0;right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;height:100%;text-align:left;pointer-events:none}[dir=rtl] .mdc-notched-outline{text-align:right}.mdc-text-field--outlined .mdc-notched-outline{z-index:1}.mat-mdc-notch-piece{box-sizing:border-box;height:100%;pointer-events:none;border-top:1px solid;border-bottom:1px solid}.mdc-text-field--focused .mat-mdc-notch-piece{border-width:2px}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-outline-color, var(--mat-app-outline));border-width:var(--mdc-outlined-text-field-outline-width)}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-hover-outline-color, var(--mat-app-on-surface))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-focus-outline-color, var(--mat-app-primary))}.mdc-text-field--outlined.mdc-text-field--disabled .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-disabled-outline-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-outline-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-notched-outline .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-hover-outline-color, var(--mat-app-on-error-container))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-focus-outline-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mat-mdc-notch-piece{border-width:var(--mdc-outlined-text-field-focus-outline-width)}.mdc-notched-outline__leading{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading{width:max(12px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))}[dir=rtl] .mdc-notched-outline__leading{border-left:none;border-right:1px solid;border-bottom-left-radius:0;border-top-left-radius:0;border-top-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-notched-outline__trailing{flex-grow:1;border-left:none;border-right:1px solid;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}[dir=rtl] .mdc-notched-outline__trailing{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-notched-outline__notch{flex:0 0 auto;width:auto}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__notch{max-width:min(var(--mat-form-field-notch-max-width, 100%),100% - max(12px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))*2)}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:1px}.mdc-text-field--focused.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:2px}.mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:0;padding-right:8px;border-top:none;--mat-form-field-notch-max-width: 100%}[dir=rtl] .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:8px;padding-right:0}.mdc-notched-outline--no-label .mdc-notched-outline__notch{display:none}.mdc-line-ripple::before,.mdc-line-ripple::after{position:absolute;bottom:0;left:0;width:100%;border-bottom-style:solid;content:""}.mdc-line-ripple::before{z-index:1;border-bottom-width:var(--mdc-filled-text-field-active-indicator-height)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-active-indicator-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-hover-active-indicator-color, var(--mat-app-on-surface))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-disabled-active-indicator-color)}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-error-active-indicator-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-error-hover-active-indicator-color, var(--mat-app-on-error-container))}.mdc-line-ripple::after{transform:scaleX(0);opacity:0;z-index:2}.mdc-text-field--filled .mdc-line-ripple::after{border-bottom-width:var(--mdc-filled-text-field-focus-active-indicator-height)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mdc-filled-text-field-focus-active-indicator-color, var(--mat-app-primary))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mdc-filled-text-field-error-focus-active-indicator-color, var(--mat-app-error))}.mdc-line-ripple--active::after{transform:scaleX(1);opacity:1}.mdc-line-ripple--deactivating::after{opacity:0}.mdc-text-field--disabled{pointer-events:none}.mat-mdc-form-field-textarea-control{vertical-align:middle;resize:vertical;box-sizing:border-box;height:auto;margin:0;padding:0;border:none;overflow:auto}.mat-mdc-form-field-input-control.mat-mdc-form-field-input-control{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font:inherit;letter-spacing:inherit;text-decoration:inherit;text-transform:inherit;border:none}.mat-mdc-form-field .mat-mdc-floating-label.mdc-floating-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;line-height:normal;pointer-events:all;will-change:auto}.mat-mdc-form-field:not(.mat-form-field-disabled) .mat-mdc-floating-label.mdc-floating-label{cursor:inherit}.mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input,.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:auto}.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control.mdc-text-field__input[type=color]{height:23px}.mat-mdc-text-field-wrapper{height:auto;flex:auto;will-change:auto}.mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-left:0;--mat-mdc-form-field-label-offset-x: -16px}.mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-right:0}[dir=rtl] .mat-mdc-text-field-wrapper{padding-left:16px;padding-right:16px}[dir=rtl] .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-left:0}[dir=rtl] .mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-right:0}.mat-form-field-disabled .mdc-text-field__input::placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-mdc-form-field-label-always-float .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms;opacity:1}.mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .mat-mdc-floating-label{left:auto;right:auto}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input{display:inline-block}.mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field .mdc-notched-outline__notch{padding-top:0}.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:1px solid rgba(0,0,0,0)}[dir=rtl] .mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:none;border-right:1px solid rgba(0,0,0,0)}.mat-mdc-form-field-infix{min-height:var(--mat-form-field-container-height);padding-top:var(--mat-form-field-filled-with-label-container-padding-top);padding-bottom:var(--mat-form-field-filled-with-label-container-padding-bottom)}.mdc-text-field--outlined .mat-mdc-form-field-infix,.mdc-text-field--no-label .mat-mdc-form-field-infix{padding-top:var(--mat-form-field-container-vertical-padding);padding-bottom:var(--mat-form-field-container-vertical-padding)}.mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:calc(var(--mat-form-field-container-height)/2)}.mdc-text-field--filled .mat-mdc-floating-label{display:var(--mat-form-field-filled-label-display, block)}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{--mat-mdc-form-field-label-transform: translateY(calc(calc(6.75px + var(--mat-form-field-container-height) / 2) * -1)) scale(var(--mat-mdc-form-field-floating-label-scale, 0.75));transform:var(--mat-mdc-form-field-label-transform)}.mat-mdc-form-field-subscript-wrapper{box-sizing:border-box;width:100%;position:relative}.mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-error-wrapper{position:absolute;top:0;left:0;right:0;padding:0 16px}.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper{position:static}.mat-mdc-form-field-bottom-align::before{content:"";display:inline-block;height:16px}.mat-mdc-form-field-bottom-align.mat-mdc-form-field-subscript-dynamic-size::before{content:unset}.mat-mdc-form-field-hint-end{order:1}.mat-mdc-form-field-hint-wrapper{display:flex}.mat-mdc-form-field-hint-spacer{flex:1 0 1em}.mat-mdc-form-field-error{display:block;color:var(--mat-form-field-error-text-color, var(--mat-app-error))}.mat-mdc-form-field-subscript-wrapper,.mat-mdc-form-field-bottom-align::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-subscript-text-font, var(--mat-app-body-small-font));line-height:var(--mat-form-field-subscript-text-line-height, var(--mat-app-body-small-line-height));font-size:var(--mat-form-field-subscript-text-size, var(--mat-app-body-small-size));letter-spacing:var(--mat-form-field-subscript-text-tracking, var(--mat-app-body-small-tracking));font-weight:var(--mat-form-field-subscript-text-weight, var(--mat-app-body-small-weight))}.mat-mdc-form-field-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;opacity:0;pointer-events:none;background-color:var(--mat-form-field-state-layer-color, var(--mat-app-on-surface))}.mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-form-field.mat-focused .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-focus-state-layer-opacity)}select.mat-mdc-form-field-input-control{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(0,0,0,0);display:inline-flex;box-sizing:border-box}select.mat-mdc-form-field-input-control:not(:disabled){cursor:pointer}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option{color:var(--mat-form-field-select-option-text-color)}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option:disabled{color:var(--mat-form-field-select-disabled-option-text-color)}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{content:"";width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;position:absolute;right:0;top:50%;margin-top:-2.5px;pointer-events:none;color:var(--mat-form-field-enabled-select-arrow-color, var(--mat-app-on-surface-variant))}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{right:auto;left:0}.mat-mdc-form-field-type-mat-native-select.mat-focused .mat-mdc-form-field-infix::after{color:var(--mat-form-field-focus-select-arrow-color, var(--mat-app-primary))}.mat-mdc-form-field-type-mat-native-select.mat-form-field-disabled .mat-mdc-form-field-infix::after{color:var(--mat-form-field-disabled-select-arrow-color)}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:15px}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:0;padding-left:15px}.cdk-high-contrast-active .mat-form-field-appearance-fill .mat-mdc-text-field-wrapper{outline:solid 1px}.cdk-high-contrast-active .mat-form-field-appearance-fill.mat-form-field-disabled .mat-mdc-text-field-wrapper{outline-color:GrayText}.cdk-high-contrast-active .mat-form-field-appearance-fill.mat-focused .mat-mdc-text-field-wrapper{outline:dashed 3px}.cdk-high-contrast-active .mat-mdc-form-field.mat-focused .mdc-notched-outline{border:dashed 3px}.mat-mdc-form-field-input-control[type=date],.mat-mdc-form-field-input-control[type=datetime],.mat-mdc-form-field-input-control[type=datetime-local],.mat-mdc-form-field-input-control[type=month],.mat-mdc-form-field-input-control[type=week],.mat-mdc-form-field-input-control[type=time]{line-height:1}.mat-mdc-form-field-input-control::-webkit-datetime-edit{line-height:1;padding:0;margin-bottom:-2px}.mat-mdc-form-field{--mat-mdc-form-field-floating-label-scale: 0.75;display:inline-flex;flex-direction:column;min-width:0;text-align:left;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-container-text-font, var(--mat-app-body-large-font));line-height:var(--mat-form-field-container-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mat-form-field-container-text-size, var(--mat-app-body-large-size));letter-spacing:var(--mat-form-field-container-text-tracking, var(--mat-app-body-large-tracking));font-weight:var(--mat-form-field-container-text-weight, var(--mat-app-body-large-weight))}[dir=rtl] .mat-mdc-form-field{text-align:right}.mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{font-size:calc(var(--mat-form-field-outlined-label-text-populated-size)*var(--mat-mdc-form-field-floating-label-scale))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:var(--mat-form-field-outlined-label-text-populated-size)}.mat-mdc-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-mdc-text-field-wrapper{width:100%;z-index:0}.mat-mdc-form-field-icon-prefix,.mat-mdc-form-field-icon-suffix{align-self:center;line-height:0;pointer-events:auto;position:relative;z-index:1}.mat-mdc-form-field-icon-prefix>.mat-icon,.mat-mdc-form-field-icon-suffix>.mat-icon{padding:0 12px;box-sizing:content-box}.mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-leading-icon-color, var(--mat-app-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-disabled-leading-icon-color)}.mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-trailing-icon-color, var(--mat-app-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-disabled-trailing-icon-color)}.mat-form-field-invalid .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-trailing-icon-color, var(--mat-app-error))}.mat-form-field-invalid:not(.mat-focused):not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-hover-trailing-icon-color, var(--mat-app-on-error-container))}.mat-form-field-invalid.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-focus-trailing-icon-color, var(--mat-app-error))}.mat-mdc-form-field-icon-prefix,[dir=rtl] .mat-mdc-form-field-icon-suffix{padding:0 4px 0 0}.mat-mdc-form-field-icon-suffix,[dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 0 0 4px}.mat-mdc-form-field-subscript-wrapper .mat-icon,.mat-mdc-form-field label .mat-icon{width:1em;height:1em;font-size:inherit}.mat-mdc-form-field-infix{flex:auto;min-width:0;width:180px;position:relative;box-sizing:border-box}.mat-mdc-form-field-infix:has(textarea[cols]){width:auto}.mat-mdc-form-field .mdc-notched-outline__notch{margin-left:-1px;-webkit-clip-path:inset(-9em -999em -9em 1px);clip-path:inset(-9em -999em -9em 1px)}[dir=rtl] .mat-mdc-form-field .mdc-notched-outline__notch{margin-left:0;margin-right:-1px;-webkit-clip-path:inset(-9em 1px -9em -999em);clip-path:inset(-9em 1px -9em -999em)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-floating-label{transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input{transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::-moz-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::-webkit-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input:-ms-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field--filled:not(.mdc-ripple-upgraded):focus .mdc-text-field__ripple::before{transition-duration:75ms}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-line-ripple::after{transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-notched-outline .mdc-floating-label{max-width:calc(100% + 1px)}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:calc(133.3333333333% + 1px)}'],encapsulation:2,data:{animation:[jle.transitionMessages]},changeDetection:0})}}return n})();class dR{get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}constructor(t=!1,e,i=!0,r){this._multiple=t,this._emitChanges=i,this.compareWith=r,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new mi.B,e&&e.length&&(t?e.forEach(s=>this._markSelected(s)):this._markSelected(e[0]),this._selectedToEmit.length=0)}select(...t){this._verifyValueAssignment(t),t.forEach(i=>this._markSelected(i));const e=this._hasQueuedChanges();return this._emitChangeEvent(),e}deselect(...t){this._verifyValueAssignment(t),t.forEach(i=>this._unmarkSelected(i));const e=this._hasQueuedChanges();return this._emitChangeEvent(),e}setSelection(...t){this._verifyValueAssignment(t);const e=this.selected,i=new Set(t);t.forEach(s=>this._markSelected(s)),e.filter(s=>!i.has(this._getConcreteValue(s,i))).forEach(s=>this._unmarkSelected(s));const r=this._hasQueuedChanges();return this._emitChangeEvent(),r}toggle(t){return this.isSelected(t)?this.deselect(t):this.select(t)}clear(t=!0){this._unmarkAll();const e=this._hasQueuedChanges();return t&&this._emitChangeEvent(),e}isSelected(t){return this._selection.has(this._getConcreteValue(t))}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(t){this._multiple&&this.selected&&this._selected.sort(t)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(t){t=this._getConcreteValue(t),this.isSelected(t)||(this._multiple||this._unmarkAll(),this.isSelected(t)||this._selection.add(t),this._emitChanges&&this._selectedToEmit.push(t))}_unmarkSelected(t){t=this._getConcreteValue(t),this.isSelected(t)&&(this._selection.delete(t),this._emitChanges&&this._deselectedToEmit.push(t))}_unmarkAll(){this.isEmpty()||this._selection.forEach(t=>this._unmarkSelected(t))}_verifyValueAssignment(t){}_hasQueuedChanges(){return!(!this._deselectedToEmit.length&&!this._selectedToEmit.length)}_getConcreteValue(t,e){if(this.compareWith){e=e??this._selection;for(let i of e)if(this.compareWith(t,i))return i;return t}return t}}let Y$=(()=>{class n{constructor(){this._listeners=[]}notify(e,i){for(let r of this._listeners)r(e,i)}listen(e){return this._listeners.push(e),()=>{this._listeners=this._listeners.filter(i=>e!==i)}}ngOnDestroy(){this._listeners=[]}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function Jg(n,t){return(0,Ir.N)((e,i)=>{let r=null,s=0,l=!1;const u=()=>l&&!r&&i.complete();e.subscribe((0,lr._)(i,f=>{r?.unsubscribe();let p=0;const m=s++;Rr(n(f,m)).subscribe(r=(0,lr._)(i,_=>i.next(t?t(f,_,m,p++):_),()=>{r=null,u()}))},()=>{l=!0,u()}))})}const Kle=["trigger"],Yle=["panel"],Zle=[[["mat-select-trigger"]],"*"],Jle=["mat-select-trigger","*"];function ece(n,t){if(1&n&&(o.j41(0,"span",4),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.JRh(e.placeholder)}}function tce(n,t){1&n&&o.SdG(0)}function nce(n,t){if(1&n&&(o.j41(0,"span",11),o.EFF(1),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.JRh(e.triggerValue)}}function ice(n,t){if(1&n&&(o.j41(0,"span",5),o.DNE(1,tce,1,0)(2,nce,2,1,"span",11),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.vxM(e.customTrigger?1:2)}}function rce(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",12,1),o.bIt("@transformPanel.done",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._panelDoneAnimatingStream.next(r.toState))})("keydown",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._handleKeydown(r))}),o.SdG(2,1),o.k0s()}if(2&n){const e=o.XpG();o.ZvI("mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open ",e._getPanelTheme(),""),o.Y8G("ngClass",e.panelClass)("@transformPanel","showing"),o.BMQ("id",e.id+"-panel")("aria-multiselectable",e.multiple)("aria-label",e.ariaLabel||null)("aria-labelledby",e._getPanelAriaLabelledby())}}const oce={transformPanelWrap:(0,Nn.hZ)("transformPanelWrap",[(0,Nn.kY)("* => void",(0,Nn.P)("@transformPanel",[(0,Nn.MA)()],{optional:!0}))]),transformPanel:(0,Nn.hZ)("transformPanel",[(0,Nn.wk)("void",(0,Nn.iF)({opacity:0,transform:"scale(1, 0.8)"})),(0,Nn.kY)("void => showing",(0,Nn.i0)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,Nn.iF)({opacity:1,transform:"scale(1, 1)"}))),(0,Nn.kY)("* => void",(0,Nn.i0)("100ms linear",(0,Nn.iF)({opacity:0})))])};let Z$=0;const J$=new o.nKC("mat-select-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.reposition()}}),ace=new o.nKC("MAT_SELECT_CONFIG"),eq=new o.nKC("MatSelectTrigger");class lce{constructor(t,e){this.source=t,this.value=e}}let e0=(()=>{class n{_scrollOptionIntoView(e){const i=this.options.toArray()[e];if(i){const r=this.panel.nativeElement,s=function JO(n,t,e){if(e.length){let i=t.toArray(),r=e.toArray(),s=0;for(let l=0;le+i?Math.max(0,n-i+t):e}(l.offsetTop,l.offsetHeight,r.scrollTop,r.offsetHeight)}}_positioningSettled(){this._scrollOptionIntoView(this._keyManager.activeItemIndex||0)}_getChangeEvent(e){return new lce(this,e)}get focused(){return this._focused||this._panelOpen}get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._syncParentProperties()}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}get required(){return this._required??this.ngControl?.control?.hasValidator(b8.required)??!1}set required(e){this._required=e,this.stateChanges.next()}get multiple(){return this._multiple}set multiple(e){this._multiple=e}get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this._assignValue(e)&&this._onChange(e)}get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}get id(){return this._id}set id(e){this._id=e||this._uid,this.stateChanges.next()}get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}constructor(e,i,r,s,l,u,f,p,m,_,b,w,F,D){this._viewportRuler=e,this._changeDetectorRef=i,this._elementRef=l,this._dir=u,this._parentFormField=m,this.ngControl=_,this._liveAnnouncer=F,this._defaultOptions=D,this._positions=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"}],this._panelOpen=!1,this._compareWith=(T,I)=>T===I,this._uid="mat-select-"+Z$++,this._triggerAriaLabelledBy=null,this._destroy=new mi.B,this.stateChanges=new mi.B,this.disableAutomaticLabeling=!0,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+Z$++,this._panelDoneAnimatingStream=new mi.B,this._overlayPanelClass=this._defaultOptions?.overlayPanelClass||"",this._focused=!1,this.controlType="mat-select",this.disabled=!1,this.disableRipple=!1,this.tabIndex=0,this._hideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1,this._multiple=!1,this.disableOptionCentering=this._defaultOptions?.disableOptionCentering??!1,this.ariaLabel="",this.panelWidth=this._defaultOptions&&typeof this._defaultOptions.panelWidth<"u"?this._defaultOptions.panelWidth:"auto",this._initialized=new mi.B,this.optionSelectionChanges=Ky(()=>{const T=this.options;return T?T.changes.pipe(su(T),Jg(()=>ql(...T.map(I=>I.onSelectionChange)))):this._initialized.pipe(Jg(()=>this.optionSelectionChanges))}),this.openedChange=new o.bkB,this._openedStream=this.openedChange.pipe(hr(T=>T),(0,Xn.T)(()=>{})),this._closedStream=this.openedChange.pipe(hr(T=>!T),(0,Xn.T)(()=>{})),this.selectionChange=new o.bkB,this.valueChange=new o.bkB,this._trackedModal=null,this._skipPredicate=T=>!this.panelOpen&&T.disabled,this.ngControl&&(this.ngControl.valueAccessor=this),null!=D?.typeaheadDebounceInterval&&(this.typeaheadDebounceInterval=D.typeaheadDebounceInterval),this._errorStateTracker=new au(s,_,p,f,this.stateChanges),this._scrollStrategyFactory=w,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(b)||0,this.id=this.id}ngOnInit(){this._selectionModel=new dR(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(kr(),bo(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen)),this._viewportRuler.change().pipe(bo(this._destroy)).subscribe(()=>{this.panelOpen&&(this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._changeDetectorRef.detectChanges())})}ngAfterContentInit(){this._initialized.next(),this._initialized.complete(),this._initKeyManager(),this._selectionModel.changed.pipe(bo(this._destroy)).subscribe(e=>{e.added.forEach(i=>i.select()),e.removed.forEach(i=>i.deselect())}),this.options.changes.pipe(su(null),bo(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const e=this._getTriggerAriaLabelledby(),i=this.ngControl;if(e!==this._triggerAriaLabelledBy){const r=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?r.setAttribute("aria-labelledby",e):r.removeAttribute("aria-labelledby")}i&&(this._previousControl!==i.control&&(void 0!==this._previousControl&&null!==i.disabled&&i.disabled!==this.disabled&&(this.disabled=i.disabled),this._previousControl=i.control),this.updateErrorState())}ngOnChanges(e){(e.disabled||e.userAriaDescribedBy)&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this.typeaheadDebounceInterval)}ngOnDestroy(){this._keyManager?.destroy(),this._destroy.next(),this._destroy.complete(),this.stateChanges.complete(),this._clearFromModal()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._parentFormField&&(this._preferredOverlayOrigin=this._parentFormField.getConnectedOverlayOrigin()),this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._applyModalPanelOwnership(),this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_applyModalPanelOwnership(){const e=this._elementRef.nativeElement.closest('body > .cdk-overlay-container [aria-modal="true"]');if(!e)return;const i=`${this.id}-panel`;this._trackedModal&&NT(this._trackedModal,"aria-owns",i),Qy(e,"aria-owns",i),this._trackedModal=e}_clearFromModal(){this._trackedModal&&(NT(this._trackedModal,"aria-owns",`${this.id}-panel`),this._trackedModal=null)}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched(),this.stateChanges.next())}writeValue(e){this._assignValue(e)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel?.selected||[]:this._selectionModel?.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const e=this._selectionModel.selected.map(i=>i.viewValue);return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}updateErrorState(){this._errorStateTracker.updateErrorState()}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}_handleClosedKeydown(e){const i=e.keyCode,r=40===i||38===i||37===i||39===i,s=13===i||32===i,l=this._keyManager;if(!l.isTyping()&&s&&!Kl(e)||(this.multiple||e.altKey)&&r)e.preventDefault(),this.open();else if(!this.multiple){const u=this.selected;l.onKeydown(e);const f=this.selected;f&&u!==f&&this._liveAnnouncer.announce(f.viewValue,1e4)}}_handleOpenKeydown(e){const i=this._keyManager,r=e.keyCode,s=40===r||38===r,l=i.isTyping();if(s&&e.altKey)e.preventDefault(),this.close();else if(l||13!==r&&32!==r||!i.activeItem||Kl(e))if(!l&&this._multiple&&65===r&&e.ctrlKey){e.preventDefault();const u=this.options.some(f=>!f.disabled&&!f.selected);this.options.forEach(f=>{f.disabled||(u?f.select():f.deselect())})}else{const u=i.activeItemIndex;i.onKeydown(e),this._multiple&&s&&e.shiftKey&&i.activeItem&&i.activeItemIndex!==u&&i.activeItem._selectViaInteraction()}else e.preventDefault(),i.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,this._keyManager?.cancelTypeahead(),!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe(Ms(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(e){if(this.options.forEach(i=>i.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(i=>this._selectOptionByValue(i)),this._sortValues();else{const i=this._selectOptionByValue(e);i?this._keyManager.updateActiveItem(i):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(e){const i=this.options.find(r=>{if(this._selectionModel.isSelected(r))return!1;try{return null!=r.value&&this._compareWith(r.value,e)}catch{return!1}});return i&&this._selectionModel.select(i),i}_assignValue(e){return!!(e!==this._value||this._multiple&&Array.isArray(e))&&(this.options&&this._setSelectionByValue(e),this._value=e,!0)}_getOverlayWidth(e){return"auto"===this.panelWidth?(e instanceof Hy?e.elementRef:e||this._elementRef).nativeElement.getBoundingClientRect().width:null===this.panelWidth?"":this.panelWidth}_syncParentProperties(){if(this.options)for(const e of this.options)e._changeDetectorRef.markForCheck()}_initKeyManager(){this._keyManager=new VT(this.options).withTypeAhead(this.typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withPageUpDown().withAllowedModifierKeys(["shiftKey"]).skipPredicate(this._skipPredicate),this._keyManager.tabOut.subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const e=ql(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(bo(e)).subscribe(i=>{this._onSelect(i.source,i.isUserInput),i.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),ql(...this.options.map(i=>i._stateChanges)).pipe(bo(e)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this.stateChanges.next()})}_onSelect(e,i){const r=this._selectionModel.isSelected(e);null!=e.value||this._multiple?(r!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),i&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),i&&this.focus())):(e.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(e.value)),r!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const e=this.options.toArray();this._selectionModel.sort((i,r)=>this.sortComparator?this.sortComparator(i,r,e):e.indexOf(i)-e.indexOf(r)),this.stateChanges.next()}}_propagateChanges(e){let i;i=this.multiple?this.selected.map(r=>r.value):this.selected?this.selected.value:e,this._value=i,this.valueChange.emit(i),this._onChange(i),this.selectionChange.emit(this._getChangeEvent(i)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){if(this._keyManager)if(this.empty){let e=-1;for(let i=0;i0}focus(e){this._elementRef.nativeElement.focus(e)}_getPanelAriaLabelledby(){if(this.ariaLabel)return null;const e=this._parentFormField?.getLabelId();return this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){if(this.ariaLabel)return null;const e=this._parentFormField?.getLabelId();let i=(e?e+" ":"")+this._valueId;return this.ariaLabelledby&&(i+=" "+this.ariaLabelledby),i}_panelDoneAnimating(e){this.openedChange.emit(e)}setDescribedByIds(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this.panelOpen||!this.empty||this.focused&&!!this.placeholder}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(dT),o.rXU(o.gRc),o.rXU(o.SKi),o.rXU(mI),o.rXU(o.aKT),o.rXU(Ks,8),o.rXU(KS,8),o.rXU(YS,8),o.rXU(j8,8),o.rXU(Xh,10),o.kS0("tabindex"),o.rXU(J$),o.rXU(kO),o.rXU(ace,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-select"]],contentQueries:function(i,r,s){if(1&i&&(o.wni(s,eq,5),o.wni(s,yd,5),o.wni(s,wI,5)),2&i){let l;o.mGM(l=o.lsd())&&(r.customTrigger=l.first),o.mGM(l=o.lsd())&&(r.options=l),o.mGM(l=o.lsd())&&(r.optionGroups=l)}},viewQuery:function(i,r){if(1&i&&(o.GBs(Kle,5),o.GBs(Yle,5),o.GBs(OT,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.trigger=s.first),o.mGM(s=o.lsd())&&(r.panel=s.first),o.mGM(s=o.lsd())&&(r._overlayDir=s.first)}},hostAttrs:["role","combobox","aria-haspopup","listbox",1,"mat-mdc-select"],hostVars:19,hostBindings:function(i,r){1&i&&o.bIt("keydown",function(l){return r._handleKeydown(l)})("focus",function(){return r._onFocus()})("blur",function(){return r._onBlur()}),2&i&&(o.BMQ("id",r.id)("tabindex",r.disabled?-1:r.tabIndex)("aria-controls",r.panelOpen?r.id+"-panel":null)("aria-expanded",r.panelOpen)("aria-label",r.ariaLabel||null)("aria-required",r.required.toString())("aria-disabled",r.disabled.toString())("aria-invalid",r.errorState)("aria-activedescendant",r._getAriaActiveDescendant()),o.AVh("mat-mdc-select-disabled",r.disabled)("mat-mdc-select-invalid",r.errorState)("mat-mdc-select-required",r.required)("mat-mdc-select-empty",r.empty)("mat-mdc-select-multiple",r.multiple))},inputs:{userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],panelClass:"panelClass",disabled:[2,"disabled","disabled",o.L39],disableRipple:[2,"disableRipple","disableRipple",o.L39],tabIndex:[2,"tabIndex","tabIndex",e=>null==e?0:(0,o.Udg)(e)],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",o.L39],placeholder:"placeholder",required:[2,"required","required",o.L39],multiple:[2,"multiple","multiple",o.L39],disableOptionCentering:[2,"disableOptionCentering","disableOptionCentering",o.L39],compareWith:"compareWith",value:"value",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:[2,"typeaheadDebounceInterval","typeaheadDebounceInterval",o.Udg],sortComparator:"sortComparator",id:"id",panelWidth:"panelWidth"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},exportAs:["matSelect"],standalone:!0,features:[o.Jv_([{provide:G8,useExisting:n},{provide:yI,useExisting:n}]),o.GFd,o.OA$,o.aNF],ngContentSelectors:Jle,decls:11,vars:8,consts:[["fallbackOverlayOrigin","cdkOverlayOrigin","trigger",""],["panel",""],["cdk-overlay-origin","",1,"mat-mdc-select-trigger",3,"click"],[1,"mat-mdc-select-value"],[1,"mat-mdc-select-placeholder","mat-mdc-select-min-line"],[1,"mat-mdc-select-value-text"],[1,"mat-mdc-select-arrow-wrapper"],[1,"mat-mdc-select-arrow"],["viewBox","0 0 24 24","width","24px","height","24px","focusable","false","aria-hidden","true"],["d","M7 10l5 5 5-5z"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"backdropClick","attach","detach","cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayWidth"],[1,"mat-mdc-select-min-line"],["role","listbox","tabindex","-1",3,"keydown","ngClass"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(Zle),o.j41(0,"div",2,0),o.bIt("click",function(){return o.eBV(s),o.Njj(r.open())}),o.j41(3,"div",3),o.DNE(4,ece,2,1,"span",4)(5,ice,3,1,"span",5),o.k0s(),o.j41(6,"div",6)(7,"div",7),o.qSk(),o.j41(8,"svg",8),o.nrm(9,"path",9),o.k0s()()()(),o.DNE(10,rce,3,9,"ng-template",10),o.bIt("backdropClick",function(){return o.eBV(s),o.Njj(r.close())})("attach",function(){return o.eBV(s),o.Njj(r._onAttached())})("detach",function(){return o.eBV(s),o.Njj(r.close())})}if(2&i){const s=o.sdS(1);o.R7$(3),o.BMQ("id",r._valueId),o.R7$(),o.vxM(r.empty?4:5),o.R7$(6),o.Y8G("cdkConnectedOverlayPanelClass",r._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",r._scrollStrategy)("cdkConnectedOverlayOrigin",r._preferredOverlayOrigin||s)("cdkConnectedOverlayOpen",r.panelOpen)("cdkConnectedOverlayPositions",r._positions)("cdkConnectedOverlayWidth",r._overlayWidth)}},dependencies:[Hy,OT,Sn],styles:['.mat-mdc-select{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color, var(--mat-app-on-surface));font-family:var(--mat-select-trigger-text-font, var(--mat-app-body-large-font));line-height:var(--mat-select-trigger-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mat-select-trigger-text-size, var(--mat-app-body-large-size));font-weight:var(--mat-select-trigger-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mat-select-trigger-text-tracking, var(--mat-app-body-large-tracking))}div.mat-mdc-select-panel{box-shadow:var(--mat-select-container-elevation-shadow)}.mat-mdc-select-disabled{color:var(--mat-select-disabled-trigger-text-color)}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-invalid .mat-mdc-select-arrow,.mat-form-field-invalid:not(.mat-form-field-disabled) .mat-mdc-form-field-infix::after{color:var(--mat-select-invalid-arrow-color, var(--mat-app-error))}.mat-mdc-select-arrow{width:10px;height:5px;position:relative;color:var(--mat-select-enabled-arrow-color, var(--mat-app-on-surface-variant))}.mat-mdc-form-field.mat-focused .mat-mdc-select-arrow{color:var(--mat-select-focused-arrow-color, var(--mat-app-primary))}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-disabled .mat-mdc-select-arrow{color:var(--mat-select-disabled-arrow-color)}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}div.mat-mdc-select-panel{width:100%;max-height:275px;outline:0;overflow:auto;padding:8px 0;border-radius:4px;box-sizing:border-box;position:static;background-color:var(--mat-select-panel-background-color, var(--mat-app-surface-container))}.cdk-high-contrast-active div.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) div.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above div.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}div.mat-mdc-select-panel .mat-mdc-option{--mdc-list-list-item-container-color: var(--mat-select-panel-background-color)}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);color:var(--mat-select-placeholder-text-color, var(--mat-app-on-surface-variant))}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100%/0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;visibility:hidden}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:var(--mat-select-arrow-transform)}'],encapsulation:2,data:{animation:[oce.transformPanel]},changeDetection:0})}}return n})(),tq=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-select-trigger"]],standalone:!0,features:[o.Jv_([{provide:eq,useExisting:n}])]})}}return n})();const cce=["*"],hce=[[["","mat-card-avatar",""],["","matCardAvatar",""]],[["mat-card-title"],["mat-card-subtitle"],["","mat-card-title",""],["","mat-card-subtitle",""],["","matCardTitle",""],["","matCardSubtitle",""]],"*"],fce=["[mat-card-avatar], [matCardAvatar]","mat-card-title, mat-card-subtitle,\n [mat-card-title], [mat-card-subtitle],\n [matCardTitle], [matCardSubtitle]","*"],pce=new o.nKC("MAT_CARD_CONFIG");let e2=(()=>{class n{constructor(e){this.appearance=e?.appearance||"raised"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(pce,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-card"]],hostAttrs:[1,"mat-mdc-card","mdc-card"],hostVars:4,hostBindings:function(i,r){2&i&&o.AVh("mat-mdc-card-outlined","outlined"===r.appearance)("mdc-card--outlined","outlined"===r.appearance)},inputs:{appearance:"appearance"},exportAs:["matCard"],standalone:!0,features:[o.aNF],ngContentSelectors:cce,decls:1,vars:0,template:function(i,r){1&i&&(o.NAR(),o.SdG(0))},styles:['.mat-mdc-card{display:flex;flex-direction:column;box-sizing:border-box;position:relative;border-style:solid;border-width:0;background-color:var(--mdc-elevated-card-container-color, var(--mat-app-surface-container-low));border-color:var(--mdc-elevated-card-container-color, var(--mat-app-surface-container-low));border-radius:var(--mdc-elevated-card-container-shape, var(--mat-app-corner-medium));box-shadow:var(--mdc-elevated-card-container-elevation, var(--mat-app-level1))}.mat-mdc-card::after{position:absolute;top:0;left:0;width:100%;height:100%;border:solid 1px rgba(0,0,0,0);content:"";display:block;pointer-events:none;box-sizing:border-box;border-radius:var(--mdc-elevated-card-container-shape, var(--mat-app-corner-medium))}.mat-mdc-card-outlined{background-color:var(--mdc-outlined-card-container-color, var(--mat-app-surface));border-radius:var(--mdc-outlined-card-container-shape, var(--mat-app-corner-medium));border-width:var(--mdc-outlined-card-outline-width);border-color:var(--mdc-outlined-card-outline-color, var(--mat-app-outline-variant));box-shadow:var(--mdc-outlined-card-container-elevation, var(--mat-app-level0))}.mat-mdc-card-outlined::after{border:none}.mdc-card__media{position:relative;box-sizing:border-box;background-repeat:no-repeat;background-position:center;background-size:cover}.mdc-card__media::before{display:block;content:""}.mdc-card__media:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.mdc-card__media:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.mat-mdc-card-actions{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;min-height:52px;padding:8px}.mat-mdc-card-title{font-family:var(--mat-card-title-text-font, var(--mat-app-title-large-font));line-height:var(--mat-card-title-text-line-height, var(--mat-app-title-large-line-height));font-size:var(--mat-card-title-text-size, var(--mat-app-title-large-size));letter-spacing:var(--mat-card-title-text-tracking, var(--mat-app-title-large-tracking));font-weight:var(--mat-card-title-text-weight, var(--mat-app-title-large-weight))}.mat-mdc-card-subtitle{color:var(--mat-card-subtitle-text-color, var(--mat-app-on-surface));font-family:var(--mat-card-subtitle-text-font, var(--mat-app-title-medium-font));line-height:var(--mat-card-subtitle-text-line-height, var(--mat-app-title-medium-line-height));font-size:var(--mat-card-subtitle-text-size, var(--mat-app-title-medium-size));letter-spacing:var(--mat-card-subtitle-text-tracking, var(--mat-app-title-medium-tracking));font-weight:var(--mat-card-subtitle-text-weight, var(--mat-app-title-medium-weight))}.mat-mdc-card-title,.mat-mdc-card-subtitle{display:block;margin:0}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle{padding:16px 16px 0}.mat-mdc-card-header{display:flex;padding:16px 16px 0}.mat-mdc-card-content{display:block;padding:0 16px}.mat-mdc-card-content:first-child{padding-top:16px}.mat-mdc-card-content:last-child{padding-bottom:16px}.mat-mdc-card-title-group{display:flex;justify-content:space-between;width:100%}.mat-mdc-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;margin-bottom:16px;object-fit:cover}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title{line-height:normal}.mat-mdc-card-sm-image{width:80px;height:80px}.mat-mdc-card-md-image{width:112px;height:112px}.mat-mdc-card-lg-image{width:152px;height:152px}.mat-mdc-card-xl-image{width:240px;height:240px}.mat-mdc-card-subtitle~.mat-mdc-card-title,.mat-mdc-card-title~.mat-mdc-card-subtitle,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-title-group .mat-mdc-card-title,.mat-mdc-card-title-group .mat-mdc-card-subtitle{padding-top:0}.mat-mdc-card-content>:last-child:not(.mat-mdc-card-footer){margin-bottom:0}.mat-mdc-card-actions-align-end{justify-content:flex-end}'],encapsulation:2,changeDetection:0})}}return n})(),nq=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-card-content"]],hostAttrs:[1,"mat-mdc-card-content"],standalone:!0})}}return n})(),iq=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-card-header"]],hostAttrs:[1,"mat-mdc-card-header"],standalone:!0,features:[o.aNF],ngContentSelectors:fce,decls:4,vars:0,consts:[[1,"mat-mdc-card-header-text"]],template:function(i,r){1&i&&(o.NAR(hce),o.SdG(0),o.j41(1,"div",0),o.SdG(2,1),o.k0s(),o.SdG(3,2))},encapsulation:2,changeDetection:0})}}return n})();const bce=["knob"],vce=["valueIndicatorContainer"];function yce(n,t){if(1&n&&(o.j41(0,"div",2,1)(2,"div",5)(3,"span",6),o.EFF(4),o.k0s()()()),2&n){const e=o.XpG();o.R7$(4),o.JRh(e.valueIndicatorText)}}const wce=["trackActive"],xce=["*"];function Cce(n,t){if(1&n&&o.nrm(0,"div"),2&n){const e=t.$implicit,i=t.$index,r=o.XpG(3);o.HbH(0===e?"mdc-slider__tick-mark--active":"mdc-slider__tick-mark--inactive"),o.xc7("transform",r._calcTickMarkTransform(i))}}function Mce(n,t){if(1&n&&o.Z7z(0,Cce,1,4,"div",8,o.Vm6),2&n){const e=o.XpG(2);o.Dyx(e._tickMarks)}}function Ece(n,t){if(1&n&&(o.j41(0,"div",6,1),o.DNE(2,Mce,2,0),o.k0s()),2&n){const e=o.XpG();o.R7$(2),o.vxM(e._cachedWidth?2:-1)}}function Sce(n,t){if(1&n&&o.nrm(0,"mat-slider-visual-thumb",7),2&n){const e=o.XpG();o.Y8G("discrete",e.discrete)("thumbPosition",1)("valueIndicatorText",e.startValueIndicatorText)}}var Wi=function(n){return n[n.START=1]="START",n[n.END=2]="END",n}(Wi||{}),ix=function(n){return n[n.ACTIVE=0]="ACTIVE",n[n.INACTIVE=1]="INACTIVE",n}(ix||{});const uR=new o.nKC("_MatSlider"),rq=new o.nKC("_MatSliderThumb"),oq=new o.nKC("_MatSliderRangeThumb"),sq=new o.nKC("_MatSliderVisualThumb");let Tce=(()=>{class n{constructor(e,i,r,s){this._cdr=e,this._ngZone=i,this._slider=s,this._isHovered=!1,this._isActive=!1,this._isValueIndicatorVisible=!1,this._platform=(0,o.WQX)(Io),this._onPointerMove=l=>{if(this._sliderInput._isFocused)return;const u=this._hostElement.getBoundingClientRect(),f=this._slider._isCursorOnSliderThumb(l,u);this._isHovered=f,f?this._showHoverRipple():this._hideRipple(this._hoverRippleRef)},this._onMouseLeave=()=>{this._isHovered=!1,this._hideRipple(this._hoverRippleRef)},this._onFocus=()=>{this._hideRipple(this._hoverRippleRef),this._showFocusRipple(),this._hostElement.classList.add("mdc-slider__thumb--focused")},this._onBlur=()=>{this._isActive||this._hideRipple(this._focusRippleRef),this._isHovered&&this._showHoverRipple(),this._hostElement.classList.remove("mdc-slider__thumb--focused")},this._onDragStart=l=>{0===l.button&&(this._isActive=!0,this._showActiveRipple())},this._onDragEnd=()=>{this._isActive=!1,this._hideRipple(this._activeRippleRef),this._sliderInput._isFocused||this._hideRipple(this._focusRippleRef),this._platform.SAFARI&&this._showHoverRipple()},this._hostElement=r.nativeElement}ngAfterViewInit(){const e=this._slider._getInput(this.thumbPosition);e&&(this._ripple.radius=24,this._sliderInput=e,this._sliderInputEl=this._sliderInput._hostElement,this._ngZone.runOutsideAngular(()=>{const i=this._sliderInputEl;i.addEventListener("pointermove",this._onPointerMove),i.addEventListener("pointerdown",this._onDragStart),i.addEventListener("pointerup",this._onDragEnd),i.addEventListener("pointerleave",this._onMouseLeave),i.addEventListener("focus",this._onFocus),i.addEventListener("blur",this._onBlur)}))}ngOnDestroy(){const e=this._sliderInputEl;e&&(e.removeEventListener("pointermove",this._onPointerMove),e.removeEventListener("pointerdown",this._onDragStart),e.removeEventListener("pointerup",this._onDragEnd),e.removeEventListener("pointerleave",this._onMouseLeave),e.removeEventListener("focus",this._onFocus),e.removeEventListener("blur",this._onBlur))}_showHoverRipple(){this._isShowingRipple(this._hoverRippleRef)||(this._hoverRippleRef=this._showRipple({enterDuration:0,exitDuration:0}),this._hoverRippleRef?.element.classList.add("mat-mdc-slider-hover-ripple"))}_showFocusRipple(){this._isShowingRipple(this._focusRippleRef)||(this._focusRippleRef=this._showRipple({enterDuration:0,exitDuration:0},!0),this._focusRippleRef?.element.classList.add("mat-mdc-slider-focus-ripple"))}_showActiveRipple(){this._isShowingRipple(this._activeRippleRef)||(this._activeRippleRef=this._showRipple({enterDuration:225,exitDuration:400}),this._activeRippleRef?.element.classList.add("mat-mdc-slider-active-ripple"))}_isShowingRipple(e){return e?.state===Ls.FADING_IN||e?.state===Ls.VISIBLE}_showRipple(e,i){if(!this._slider.disabled&&(this._showValueIndicator(),this._slider._isRange&&this._slider._getThumb(this.thumbPosition===Wi.START?Wi.END:Wi.START)._showValueIndicator(),!this._slider._globalRippleOptions?.disabled||i))return this._ripple.launch({animation:this._slider._noopAnimations?{enterDuration:0,exitDuration:0}:e,centered:!0,persistent:!0})}_hideRipple(e){if(e?.fadeOut(),this._isShowingAnyRipple())return;this._slider._isRange||this._hideValueIndicator();const i=this._getSibling();i._isShowingAnyRipple()||(this._hideValueIndicator(),i._hideValueIndicator())}_showValueIndicator(){this._hostElement.classList.add("mdc-slider__thumb--with-indicator")}_hideValueIndicator(){this._hostElement.classList.remove("mdc-slider__thumb--with-indicator")}_getSibling(){return this._slider._getThumb(this.thumbPosition===Wi.START?Wi.END:Wi.START)}_getValueIndicatorContainer(){return this._valueIndicatorContainer?.nativeElement}_getKnob(){return this._knob.nativeElement}_isShowingAnyRipple(){return this._isShowingRipple(this._hoverRippleRef)||this._isShowingRipple(this._focusRippleRef)||this._isShowingRipple(this._activeRippleRef)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc),o.rXU(o.SKi),o.rXU(o.aKT),o.rXU(uR))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-slider-visual-thumb"]],viewQuery:function(i,r){if(1&i&&(o.GBs(ml,5),o.GBs(bce,5),o.GBs(vce,5)),2&i){let s;o.mGM(s=o.lsd())&&(r._ripple=s.first),o.mGM(s=o.lsd())&&(r._knob=s.first),o.mGM(s=o.lsd())&&(r._valueIndicatorContainer=s.first)}},hostAttrs:[1,"mdc-slider__thumb","mat-mdc-slider-visual-thumb"],inputs:{discrete:"discrete",thumbPosition:"thumbPosition",valueIndicatorText:"valueIndicatorText"},standalone:!0,features:[o.Jv_([{provide:sq,useExisting:n}]),o.aNF],decls:4,vars:2,consts:[["knob",""],["valueIndicatorContainer",""],[1,"mdc-slider__value-indicator-container"],[1,"mdc-slider__thumb-knob"],["matRipple","",1,"mat-mdc-focus-indicator",3,"matRippleDisabled"],[1,"mdc-slider__value-indicator"],[1,"mdc-slider__value-indicator-text"]],template:function(i,r){1&i&&(o.DNE(0,yce,5,1,"div",2),o.nrm(1,"div",3,0)(3,"div",4)),2&i&&(o.vxM(r.discrete?0:-1),o.R7$(3),o.Y8G("matRippleDisabled",!0))},dependencies:[ml],styles:[".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}.mat-mdc-slider .mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--active,.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--inactive{position:absolute;left:2px}"],encapsulation:2,changeDetection:0})}}return n})(),aq=(()=>{class n{get disabled(){return this._disabled}set disabled(e){this._disabled=e;const i=this._getInput(Wi.END),r=this._getInput(Wi.START);i&&(i.disabled=this._disabled),r&&(r.disabled=this._disabled)}get discrete(){return this._discrete}set discrete(e){this._discrete=e,this._updateValueIndicatorUIs()}get min(){return this._min}set min(e){const i=isNaN(e)?this._min:e;this._min!==i&&this._updateMin(i)}_updateMin(e){const i=this._min;this._min=e,this._isRange?this._updateMinRange({old:i,new:e}):this._updateMinNonRange(e),this._onMinMaxOrStepChange()}_updateMinRange(e){const i=this._getInput(Wi.END),r=this._getInput(Wi.START),s=i.value,l=r.value;r.min=e.new,i.min=Math.max(e.new,r.value),r.max=Math.min(i.max,i.value),r._updateWidthInactive(),i._updateWidthInactive(),e.newe.old?this._onTranslateXChangeBySideEffect(r,i):this._onTranslateXChangeBySideEffect(i,r),s!==i.value&&this._onValueChange(i),l!==r.value&&this._onValueChange(r)}_updateMaxNonRange(e){const i=this._getInput(Wi.END);if(i){const r=i.value;i.max=e,i._updateThumbUIByValue(),this._updateTrackUI(i),r!==i.value&&this._onValueChange(i)}}get step(){return this._step}set step(e){const i=isNaN(e)?this._step:e;this._step!==i&&this._updateStep(i)}_updateStep(e){this._step=e,this._isRange?this._updateStepRange():this._updateStepNonRange(),this._onMinMaxOrStepChange()}_updateStepRange(){const e=this._getInput(Wi.END),i=this._getInput(Wi.START),r=e.value,s=i.value,l=i.value;e.min=this._min,i.max=this._max,e.step=this._step,i.step=this._step,this._platform.SAFARI&&(e.value=e.value,i.value=i.value),e.min=Math.max(this._min,i.value),i.max=Math.min(this._max,e.value),i._updateWidthInactive(),e._updateWidthInactive(),e.value`${f}`,this._rippleRadius=24,this.startValueIndicatorText="",this.endValueIndicatorText="",this._isRange=!1,this._isRtl=!1,this._hasViewInitialized=!1,this._tickMarkTrackWidth=0,this._hasAnimation=!1,this._resizeTimer=null,this._platform=(0,o.WQX)(Io),this._knobRadius=8,this._thumbsOverlap=!1,this._noopAnimations="NoopAnimations"===u,this._dirChangeSubscription=this._dir.change.subscribe(()=>this._onDirChange()),this._isRtl="rtl"===this._dir.value}ngAfterViewInit(){this._platform.isBrowser&&this._updateDimensions();const e=this._getInput(Wi.END),i=this._getInput(Wi.START);this._isRange=!!e&&!!i,this._cdr.detectChanges();const r=this._getThumb(Wi.END);this._rippleRadius=r._ripple.radius,this._inputPadding=this._rippleRadius-this._knobRadius,this._isRange?this._initUIRange(e,i):this._initUINonRange(e),this._updateTrackUI(e),this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._observeHostResize(),this._cdr.detectChanges()}_initUINonRange(e){e.initProps(),e.initUI(),this._updateValueIndicatorUI(e),this._hasViewInitialized=!0,e._updateThumbUIByValue()}_initUIRange(e,i){e.initProps(),e.initUI(),i.initProps(),i.initUI(),e._updateMinMax(),i._updateMinMax(),e._updateStaticStyles(),i._updateStaticStyles(),this._updateValueIndicatorUIs(),this._hasViewInitialized=!0,e._updateThumbUIByValue(),i._updateThumbUIByValue()}ngOnDestroy(){this._dirChangeSubscription.unsubscribe(),this._resizeObserver?.disconnect(),this._resizeObserver=null}_onDirChange(){this._isRtl="rtl"===this._dir.value,this._isRange?this._onDirChangeRange():this._onDirChangeNonRange(),this._updateTickMarkUI()}_onDirChangeRange(){const e=this._getInput(Wi.END),i=this._getInput(Wi.START);e._setIsLeftThumb(),i._setIsLeftThumb(),e.translateX=e._calcTranslateXByValue(),i.translateX=i._calcTranslateXByValue(),e._updateStaticStyles(),i._updateStaticStyles(),e._updateWidthInactive(),i._updateWidthInactive(),e._updateThumbUIByValue(),i._updateThumbUIByValue()}_onDirChangeNonRange(){this._getInput(Wi.END)._updateThumbUIByValue()}_observeHostResize(){typeof ResizeObserver>"u"||!ResizeObserver||this._ngZone.runOutsideAngular(()=>{this._resizeObserver=new ResizeObserver(()=>{this._isActive()||(this._resizeTimer&&clearTimeout(this._resizeTimer),this._onResize())}),this._resizeObserver.observe(this._elementRef.nativeElement)})}_isActive(){return this._getThumb(Wi.START)._isActive||this._getThumb(Wi.END)._isActive}_getValue(e=Wi.END){const i=this._getInput(e);return i?i.value:this.min}_skipUpdate(){return!(!this._getInput(Wi.START)?._skipUIUpdate&&!this._getInput(Wi.END)?._skipUIUpdate)}_updateDimensions(){this._cachedWidth=this._elementRef.nativeElement.offsetWidth,this._cachedLeft=this._elementRef.nativeElement.getBoundingClientRect().left}_setTrackActiveStyles(e){const i=this._trackActive.nativeElement.style;i.left=e.left,i.right=e.right,i.transformOrigin=e.transformOrigin,i.transform=e.transform}_calcTickMarkTransform(e){return`translateX(${e*(this._tickMarkTrackWidth/(this._tickMarks.length-1))}px`}_onTranslateXChange(e){this._hasViewInitialized&&(this._updateThumbUI(e),this._updateTrackUI(e),this._updateOverlappingThumbUI(e))}_onTranslateXChangeBySideEffect(e,i){this._hasViewInitialized&&(e._updateThumbUIByValue(),i._updateThumbUIByValue())}_onValueChange(e){this._hasViewInitialized&&(this._updateValueIndicatorUI(e),this._updateTickMarkUI(),this._cdr.detectChanges())}_onMinMaxOrStepChange(){this._hasViewInitialized&&(this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._cdr.markForCheck())}_onResize(){if(this._hasViewInitialized){if(this._updateDimensions(),this._isRange){const e=this._getInput(Wi.END),i=this._getInput(Wi.START);e._updateThumbUIByValue(),i._updateThumbUIByValue(),e._updateStaticStyles(),i._updateStaticStyles(),e._updateMinMax(),i._updateMinMax(),e._updateWidthInactive(),i._updateWidthInactive()}else{const e=this._getInput(Wi.END);e&&e._updateThumbUIByValue()}this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._cdr.detectChanges()}}_areThumbsOverlapping(){const e=this._getInput(Wi.START),i=this._getInput(Wi.END);return!(!e||!i)&&i.translateX-e.translateX<20}_updateOverlappingThumbClassNames(e){const i=e.getSibling(),r=this._getThumb(e.thumbPosition);this._getThumb(i.thumbPosition)._hostElement.classList.remove("mdc-slider__thumb--top"),r._hostElement.classList.toggle("mdc-slider__thumb--top",this._thumbsOverlap)}_updateOverlappingThumbUI(e){!this._isRange||this._skipUpdate()||this._thumbsOverlap!==this._areThumbsOverlapping()&&(this._thumbsOverlap=!this._thumbsOverlap,this._updateOverlappingThumbClassNames(e))}_updateThumbUI(e){this._skipUpdate()||(this._getThumb(e.thumbPosition===Wi.END?Wi.END:Wi.START)._hostElement.style.transform=`translateX(${e.translateX}px)`)}_updateValueIndicatorUI(e){if(this._skipUpdate())return;const i=this.displayWith(e.value);if(this._hasViewInitialized?e._valuetext.set(i):e._hostElement.setAttribute("aria-valuetext",i),this.discrete){e.thumbPosition===Wi.START?this.startValueIndicatorText=i:this.endValueIndicatorText=i;const r=this._getThumb(e.thumbPosition);i.length<3?r._hostElement.classList.add("mdc-slider__thumb--short-value"):r._hostElement.classList.remove("mdc-slider__thumb--short-value")}}_updateValueIndicatorUIs(){const e=this._getInput(Wi.END),i=this._getInput(Wi.START);e&&this._updateValueIndicatorUI(e),i&&this._updateValueIndicatorUI(i)}_updateTickMarkTrackUI(){if(!this.showTickMarks||this._skipUpdate())return;const e=this._step&&this._step>0?this._step:1,r=(Math.floor(this.max/e)*e-this.min)/(this.max-this.min);this._tickMarkTrackWidth=this._cachedWidth*r-6}_updateTrackUI(e){this._skipUpdate()||(this._isRange?this._updateTrackUIRange(e):this._updateTrackUINonRange(e))}_updateTrackUIRange(e){const i=e.getSibling();if(!i||!this._cachedWidth)return;const r=Math.abs(i.translateX-e.translateX)/this._cachedWidth;this._setTrackActiveStyles(e._isLeftThumb&&this._cachedWidth?{left:"auto",right:this._cachedWidth-i.translateX+"px",transformOrigin:"right",transform:`scaleX(${r})`}:{left:`${i.translateX}px`,right:"auto",transformOrigin:"left",transform:`scaleX(${r})`})}_updateTrackUINonRange(e){this._setTrackActiveStyles(this._isRtl?{left:"auto",right:"0px",transformOrigin:"right",transform:`scaleX(${1-e.fillPercentage})`}:{left:"0px",right:"auto",transformOrigin:"left",transform:`scaleX(${e.fillPercentage})`})}_updateTickMarkUI(){if(!this.showTickMarks||void 0===this.step||void 0===this.min||void 0===this.max)return;const e=this.step>0?this.step:1;this._isRange?this._updateTickMarkUIRange(e):this._updateTickMarkUINonRange(e),this._isRtl&&this._tickMarks.reverse()}_updateTickMarkUINonRange(e){const i=this._getValue();let r=Math.max(Math.round((i-this.min)/e),0),s=Math.max(Math.round((this.max-i)/e),0);this._isRtl?r++:s++,this._tickMarks=Array(r).fill(ix.ACTIVE).concat(Array(s).fill(ix.INACTIVE))}_updateTickMarkUIRange(e){const i=this._getValue(),r=this._getValue(Wi.START),s=Math.max(Math.round((r-this.min)/e),0),l=Math.max(Math.round((i-r)/e)+1,0),u=Math.max(Math.round((this.max-i)/e),0);this._tickMarks=Array(s).fill(ix.INACTIVE).concat(Array(l).fill(ix.ACTIVE),Array(u).fill(ix.INACTIVE))}_getInput(e){return e===Wi.END&&this._input?this._input:this._inputs?.length?e===Wi.START?this._inputs.first:this._inputs.last:void 0}_getThumb(e){return e===Wi.END?this._thumbs?.last:this._thumbs?.first}_setTransition(e){this._hasAnimation=!this._platform.IOS&&e&&!this._noopAnimations,this._elementRef.nativeElement.classList.toggle("mat-mdc-slider-with-animation",this._hasAnimation)}_isCursorOnSliderThumb(e,i){const r=i.width/2,f=e.clientY-(i.y+r);return Math.pow(e.clientX-(i.x+r),2)+Math.pow(f,2)hR),multi:!0};let hR=(()=>{class n{get value(){return(0,o.Udg)(this._hostElement.value,0)}set value(e){const i=(e=isNaN(e)?0:e)+"";this._hasSetInitialValue?this._isActive||this._setValue(i):this._initialValue=i}_setValue(e){this._hostElement.value=e,this._updateThumbUIByValue(),this._slider._onValueChange(this),this._cdr.detectChanges(),this._slider._cdr.markForCheck()}get translateX(){return this._slider.min>=this._slider.max?(this._translateX=this._tickMarkOffset,this._translateX):(void 0===this._translateX&&(this._translateX=this._calcTranslateXByValue()),this._translateX)}set translateX(e){this._translateX=e}get min(){return(0,o.Udg)(this._hostElement.min,0)}set min(e){this._hostElement.min=e+"",this._cdr.detectChanges()}get max(){return(0,o.Udg)(this._hostElement.max,0)}set max(e){this._hostElement.max=e+"",this._cdr.detectChanges()}get step(){return(0,o.Udg)(this._hostElement.step,0)}set step(e){this._hostElement.step=e+"",this._cdr.detectChanges()}get disabled(){return(0,o.L39)(this._hostElement.disabled)}set disabled(e){this._hostElement.disabled=e,this._cdr.detectChanges(),this._slider.disabled!==this.disabled&&(this._slider.disabled=this.disabled)}get percentage(){return this._slider.min>=this._slider.max?this._slider._isRtl?1:0:(this.value-this._slider.min)/(this._slider.max-this._slider.min)}get fillPercentage(){return this._slider._cachedWidth?0===this._translateX?0:this.translateX/this._slider._cachedWidth:this._slider._isRtl?1:0}_setIsFocused(e){this._isFocused=e}constructor(e,i,r,s){this._ngZone=e,this._elementRef=i,this._cdr=r,this._slider=s,this.valueChange=new o.bkB,this.dragStart=new o.bkB,this.dragEnd=new o.bkB,this.thumbPosition=Wi.END,this._valuetext=(0,o.vPA)(""),this._knobRadius=8,this._tickMarkOffset=3,this._isActive=!1,this._isFocused=!1,this._hasSetInitialValue=!1,this._destroyed=new mi.B,this._skipUIUpdate=!1,this._onTouchedFn=()=>{},this._isControlInitialized=!1,this._platform=(0,o.WQX)(Io),this._hostElement=i.nativeElement,this._ngZone.runOutsideAngular(()=>{this._hostElement.addEventListener("pointerdown",this._onPointerDown.bind(this)),this._hostElement.addEventListener("pointermove",this._onPointerMove.bind(this)),this._hostElement.addEventListener("pointerup",this._onPointerUp.bind(this))})}ngOnDestroy(){this._hostElement.removeEventListener("pointerdown",this._onPointerDown),this._hostElement.removeEventListener("pointermove",this._onPointerMove),this._hostElement.removeEventListener("pointerup",this._onPointerUp),this._destroyed.next(),this._destroyed.complete(),this.dragStart.complete(),this.dragEnd.complete()}initProps(){this._updateWidthInactive(),this.disabled!==this._slider.disabled&&(this._slider.disabled=!0),this.step=this._slider.step,this.min=this._slider.min,this.max=this._slider.max,this._initValue()}initUI(){this._updateThumbUIByValue()}_initValue(){this._hasSetInitialValue=!0,void 0===this._initialValue?this.value=this._getDefaultValue():(this._hostElement.value=this._initialValue,this._updateThumbUIByValue(),this._slider._onValueChange(this),this._cdr.detectChanges())}_getDefaultValue(){return this.min}_onBlur(){this._setIsFocused(!1),this._onTouchedFn()}_onFocus(){this._slider._setTransition(!1),this._slider._updateTrackUI(this),this._setIsFocused(!0)}_onChange(){this.valueChange.emit(this.value),this._isActive&&this._updateThumbUIByValue({withAnimation:!0})}_onInput(){this._onChangeFn?.(this.value),(this._slider.step||!this._isActive)&&this._updateThumbUIByValue({withAnimation:!0}),this._slider._onValueChange(this)}_onNgControlValueChange(){(!this._isActive||!this._isFocused)&&(this._slider._onValueChange(this),this._updateThumbUIByValue()),this._slider.disabled=this._formControl.disabled}_onPointerDown(e){if(!this.disabled&&0===e.button){if(this._platform.IOS){const i=this._slider._isCursorOnSliderThumb(e,this._slider._getThumb(this.thumbPosition)._hostElement.getBoundingClientRect());return this._isActive=i,this._updateWidthActive(),void this._slider._updateDimensions()}this._isActive=!0,this._setIsFocused(!0),this._updateWidthActive(),this._slider._updateDimensions(),this._slider.step||this._updateThumbUIByPointerEvent(e,{withAnimation:!0}),this.disabled||(this._handleValueCorrection(e),this.dragStart.emit({source:this,parent:this._slider,value:this.value}))}}_handleValueCorrection(e){this._skipUIUpdate=!0,setTimeout(()=>{this._skipUIUpdate=!1,this._fixValue(e)},0)}_fixValue(e){const i=e.clientX-this._slider._cachedLeft,r=this._slider._cachedWidth,s=0===this._slider.step?1:this._slider.step,l=Math.floor((this._slider.max-this._slider.min)/s),p=Math.round((this._slider._isRtl?1-i/r:i/r)*l)/l*(this._slider.max-this._slider.min)+this._slider.min,m=Math.round(p/s)*s;if(m===this.value)return this._slider._onValueChange(this),void(this._slider.step>0?this._updateThumbUIByValue():this._updateThumbUIByPointerEvent(e,{withAnimation:this._slider._hasAnimation}));this.value=m,this.valueChange.emit(this.value),this._onChangeFn?.(this.value),this._slider._onValueChange(this),this._slider.step>0?this._updateThumbUIByValue():this._updateThumbUIByPointerEvent(e,{withAnimation:this._slider._hasAnimation})}_onPointerMove(e){!this._slider.step&&this._isActive&&this._updateThumbUIByPointerEvent(e)}_onPointerUp(){this._isActive&&(this._isActive=!1,this._platform.SAFARI&&this._setIsFocused(!1),this.dragEnd.emit({source:this,parent:this._slider,value:this.value}),setTimeout(()=>this._updateWidthInactive(),this._platform.IOS?10:0))}_clamp(e){const i=this._tickMarkOffset;return Math.max(Math.min(e,this._slider._cachedWidth-this._tickMarkOffset),i)}_calcTranslateXByValue(){return this._slider._isRtl?(1-this.percentage)*(this._slider._cachedWidth-2*this._tickMarkOffset)+this._tickMarkOffset:this.percentage*(this._slider._cachedWidth-2*this._tickMarkOffset)+this._tickMarkOffset}_calcTranslateXByPointerEvent(e){return e.clientX-this._slider._cachedLeft}_updateWidthActive(){}_updateWidthInactive(){this._hostElement.style.padding=`0 ${this._slider._inputPadding}px`,this._hostElement.style.width=`calc(100% + ${this._slider._inputPadding-2*this._tickMarkOffset}px)`,this._hostElement.style.left=`-${this._slider._rippleRadius-this._tickMarkOffset}px`}_updateThumbUIByValue(e){this.translateX=this._clamp(this._calcTranslateXByValue()),this._updateThumbUI(e)}_updateThumbUIByPointerEvent(e,i){this.translateX=this._clamp(this._calcTranslateXByPointerEvent(e)),this._updateThumbUI(i)}_updateThumbUI(e){this._slider._setTransition(!!e?.withAnimation),this._slider._onTranslateXChange(this)}writeValue(e){(this._isControlInitialized||null!==e)&&(this.value=e)}registerOnChange(e){this._onChangeFn=e,this._isControlInitialized=!0}registerOnTouched(e){this._onTouchedFn=e}setDisabledState(e){this.disabled=e}focus(){this._hostElement.focus()}blur(){this._hostElement.blur()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.SKi),o.rXU(o.aKT),o.rXU(o.gRc),o.rXU(uR))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["input","matSliderThumb",""]],hostAttrs:["type","range",1,"mdc-slider__input"],hostVars:1,hostBindings:function(i,r){1&i&&o.bIt("change",function(){return r._onChange()})("input",function(){return r._onInput()})("blur",function(){return r._onBlur()})("focus",function(){return r._onFocus()}),2&i&&o.BMQ("aria-valuetext",r._valuetext())},inputs:{value:[2,"value","value",o.Udg]},outputs:{valueChange:"valueChange",dragStart:"dragStart",dragEnd:"dragEnd"},exportAs:["matSliderThumb"],standalone:!0,features:[o.Jv_([Fce,{provide:rq,useExisting:n}]),o.GFd]})}}return n})();const lq=Gf({passive:!0});let kce=(()=>{class n{constructor(e,i){this._platform=e,this._ngZone=i,this._monitoredElements=new Map}monitor(e){if(!this._platform.isBrowser)return mh;const i=Mi(e),r=this._monitoredElements.get(i);if(r)return r.subject;const s=new mi.B,l="cdk-text-field-autofilled",u=f=>{"cdk-text-field-autofill-start"!==f.animationName||i.classList.contains(l)?"cdk-text-field-autofill-end"===f.animationName&&i.classList.contains(l)&&(i.classList.remove(l),this._ngZone.run(()=>s.next({target:f.target,isAutofilled:!1}))):(i.classList.add(l),this._ngZone.run(()=>s.next({target:f.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{i.addEventListener("animationstart",u,lq),i.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(i,{subject:s,unlisten:()=>{i.removeEventListener("animationstart",u,lq)}}),s}stopMonitoring(e){const i=Mi(e),r=this._monitoredElements.get(i);r&&(r.unlisten(),r.subject.complete(),i.classList.remove("cdk-text-field-autofill-monitored"),i.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(i))}ngOnDestroy(){this._monitoredElements.forEach((e,i)=>this.stopMonitoring(i))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Io),o.KVO(o.SKi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),cq=(()=>{class n{get minRows(){return this._minRows}set minRows(e){this._minRows=jn(e),this._setMinHeight()}get maxRows(){return this._maxRows}set maxRows(e){this._maxRows=jn(e),this._setMaxHeight()}get enabled(){return this._enabled}set enabled(e){this._enabled!==e&&((this._enabled=e)?this.resizeToFitContent(!0):this.reset())}get placeholder(){return this._textareaElement.placeholder}set placeholder(e){this._cachedPlaceholderHeight=void 0,e?this._textareaElement.setAttribute("placeholder",e):this._textareaElement.removeAttribute("placeholder"),this._cacheTextareaPlaceholderHeight()}constructor(e,i,r,s){this._elementRef=e,this._platform=i,this._ngZone=r,this._destroyed=new mi.B,this._enabled=!0,this._previousMinRows=-1,this._isViewInited=!1,this._handleFocusEvent=l=>{this._hasFocus="focus"===l.type},this._document=s,this._textareaElement=this._elementRef.nativeElement}_setMinHeight(){const e=this.minRows&&this._cachedLineHeight?this.minRows*this._cachedLineHeight+"px":null;e&&(this._textareaElement.style.minHeight=e)}_setMaxHeight(){const e=this.maxRows&&this._cachedLineHeight?this.maxRows*this._cachedLineHeight+"px":null;e&&(this._textareaElement.style.maxHeight=e)}ngAfterViewInit(){this._platform.isBrowser&&(this._initialHeight=this._textareaElement.style.height,this.resizeToFitContent(),this._ngZone.runOutsideAngular(()=>{Os(this._getWindow(),"resize").pipe(h_(16),bo(this._destroyed)).subscribe(()=>this.resizeToFitContent(!0)),this._textareaElement.addEventListener("focus",this._handleFocusEvent),this._textareaElement.addEventListener("blur",this._handleFocusEvent)}),this._isViewInited=!0,this.resizeToFitContent(!0))}ngOnDestroy(){this._textareaElement.removeEventListener("focus",this._handleFocusEvent),this._textareaElement.removeEventListener("blur",this._handleFocusEvent),this._destroyed.next(),this._destroyed.complete()}_cacheTextareaLineHeight(){if(this._cachedLineHeight)return;let e=this._textareaElement.cloneNode(!1);e.rows=1,e.style.position="absolute",e.style.visibility="hidden",e.style.border="none",e.style.padding="0",e.style.height="",e.style.minHeight="",e.style.maxHeight="",e.style.overflow="hidden",this._textareaElement.parentNode.appendChild(e),this._cachedLineHeight=e.clientHeight,e.remove(),this._setMinHeight(),this._setMaxHeight()}_measureScrollHeight(){const e=this._textareaElement,i=e.style.marginBottom||"",r=this._platform.FIREFOX,s=r&&this._hasFocus,l=r?"cdk-textarea-autosize-measuring-firefox":"cdk-textarea-autosize-measuring";s&&(e.style.marginBottom=`${e.clientHeight}px`),e.classList.add(l);const u=e.scrollHeight-4;return e.classList.remove(l),s&&(e.style.marginBottom=i),u}_cacheTextareaPlaceholderHeight(){if(!this._isViewInited||null!=this._cachedPlaceholderHeight)return;if(!this.placeholder)return void(this._cachedPlaceholderHeight=0);const e=this._textareaElement.value;this._textareaElement.value=this._textareaElement.placeholder,this._cachedPlaceholderHeight=this._measureScrollHeight(),this._textareaElement.value=e}ngDoCheck(){this._platform.isBrowser&&this.resizeToFitContent()}resizeToFitContent(e=!1){if(!this._enabled||(this._cacheTextareaLineHeight(),this._cacheTextareaPlaceholderHeight(),!this._cachedLineHeight))return;const i=this._elementRef.nativeElement,r=i.value;if(!e&&this._minRows===this._previousMinRows&&r===this._previousValue)return;const s=this._measureScrollHeight(),l=Math.max(s,this._cachedPlaceholderHeight||0);i.style.height=`${l}px`,this._ngZone.runOutsideAngular(()=>{typeof requestAnimationFrame<"u"?requestAnimationFrame(()=>this._scrollToCaretPosition(i)):setTimeout(()=>this._scrollToCaretPosition(i))}),this._previousValue=r,this._previousMinRows=this._minRows}reset(){void 0!==this._initialHeight&&(this._textareaElement.style.height=this._initialHeight)}_noopInputHandler(){}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_scrollToCaretPosition(e){const{selectionStart:i,selectionEnd:r}=e;!this._destroyed.isStopped&&this._hasFocus&&e.setSelectionRange(i,r)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Io),o.rXU(o.SKi),o.rXU(V,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["textarea","cdkTextareaAutosize",""]],hostAttrs:["rows","1",1,"cdk-textarea-autosize"],hostBindings:function(i,r){1&i&&o.bIt("input",function(){return r._noopInputHandler()})},inputs:{minRows:[0,"cdkAutosizeMinRows","minRows"],maxRows:[0,"cdkAutosizeMaxRows","maxRows"],enabled:[2,"cdkTextareaAutosize","enabled",o.L39],placeholder:"placeholder"},exportAs:["cdkTextareaAutosize"],standalone:!0,features:[o.GFd]})}}return n})();const Rce=new o.nKC("MAT_INPUT_VALUE_ACCESSOR"),Pce=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let Oce=0,t0=(()=>{class n{get disabled(){return this._disabled}set disabled(e){this._disabled=gi(e),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(e){this._id=e||this._uid}get required(){return this._required??this.ngControl?.control?.hasValidator(b8.required)??!1}set required(e){this._required=gi(e)}get type(){return this._type}set type(e){this._type=e||"text",this._validateType(),!this._isTextarea&&Dy().has(this._type)&&(this._elementRef.nativeElement.type=this._type),this._ensureWheelDefaultBehavior()}get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}get value(){return this._inputValueAccessor.value}set value(e){e!==this.value&&(this._inputValueAccessor.value=e,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(e){this._readonly=gi(e)}get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}constructor(e,i,r,s,l,u,f,p,m,_){this._elementRef=e,this._platform=i,this.ngControl=r,this._autofillMonitor=p,this._ngZone=m,this._formField=_,this._uid="mat-input-"+Oce++,this._webkitBlinkWheelListenerAttached=!1,this.focused=!1,this.stateChanges=new mi.B,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(F=>Dy().has(F)),this._iOSKeyupListener=F=>{const D=F.target;!D.value&&0===D.selectionStart&&0===D.selectionEnd&&(D.setSelectionRange(1,1),D.setSelectionRange(0,0))},this._webkitBlinkWheelListener=()=>{};const b=this._elementRef.nativeElement,w=b.nodeName.toLowerCase();this._inputValueAccessor=f||b,this._previousNativeValue=this.value,this.id=this.id,i.IOS&&m.runOutsideAngular(()=>{e.nativeElement.addEventListener("keyup",this._iOSKeyupListener)}),this._errorStateTracker=new au(u,r,l,s,this.stateChanges),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===w,this._isTextarea="textarea"===w,this._isInFormField=!!_,this._isNativeSelect&&(this.controlType=b.multiple?"mat-native-select-multiple":"mat-native-select")}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(e=>{this.autofilled=e.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._platform.IOS&&this._elementRef.nativeElement.removeEventListener("keyup",this._iOSKeyupListener),this._webkitBlinkWheelListenerAttached&&this._elementRef.nativeElement.removeEventListener("wheel",this._webkitBlinkWheelListener)}ngDoCheck(){this.ngControl&&(this.updateErrorState(),null!==this.ngControl.disabled&&this.ngControl.disabled!==this.disabled&&(this.disabled=this.ngControl.disabled,this.stateChanges.next())),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(e){this._elementRef.nativeElement.focus(e)}updateErrorState(){this._errorStateTracker.updateErrorState()}_focusChanged(e){e!==this.focused&&(this.focused=e,this.stateChanges.next())}_onInput(){}_dirtyCheckNativeValue(){const e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}_dirtyCheckPlaceholder(){const e=this._getPlaceholder();if(e!==this._previousPlaceholder){const i=this._elementRef.nativeElement;this._previousPlaceholder=e,e?i.setAttribute("placeholder",e):i.removeAttribute("placeholder")}}_getPlaceholder(){return this.placeholder||null}_validateType(){Pce.indexOf(this._type)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let e=this._elementRef.nativeElement.validity;return e&&e.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const e=this._elementRef.nativeElement,i=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&i&&i.label)}return this.focused||!this.empty}setDescribedByIds(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){const e=this._elementRef.nativeElement;return this._isNativeSelect&&(e.multiple||e.size>1)}_ensureWheelDefaultBehavior(){!this._webkitBlinkWheelListenerAttached&&"number"===this._type&&(this._platform.BLINK||this._platform.WEBKIT)&&(this._ngZone.runOutsideAngular(()=>{this._elementRef.nativeElement.addEventListener("wheel",this._webkitBlinkWheelListener)}),this._webkitBlinkWheelListenerAttached=!0),this._webkitBlinkWheelListenerAttached&&"number"!==this._type&&(this._elementRef.nativeElement.removeEventListener("wheel",this._webkitBlinkWheelListener),this._webkitBlinkWheelListenerAttached=!0)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Io),o.rXU(Xh,10),o.rXU(KS,8),o.rXU(YS,8),o.rXU(mI),o.rXU(Rce,10),o.rXU(kce),o.rXU(o.SKi),o.rXU(j8,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-mdc-input-element"],hostVars:18,hostBindings:function(i,r){1&i&&o.bIt("focus",function(){return r._focusChanged(!0)})("blur",function(){return r._focusChanged(!1)})("input",function(){return r._onInput()}),2&i&&(o.Mr5("id",r.id)("disabled",r.disabled)("required",r.required),o.BMQ("name",r.name||null)("readonly",r.readonly&&!r._isNativeSelect||null)("aria-invalid",r.empty&&r.required?null:r.errorState)("aria-required",r.required)("id",r.id),o.AVh("mat-input-server",r._isServer)("mat-mdc-form-field-textarea-control",r._isInFormField&&r._isTextarea)("mat-mdc-form-field-input-control",r._isInFormField)("mdc-text-field__input",r._isInFormField)("mat-mdc-native-select-inline",r._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],standalone:!0,features:[o.Jv_([{provide:G8,useExisting:n}]),o.OA$]})}}return n})();function dq(){return(0,Ir.N)((n,t)=>{n.subscribe((0,lr._)(t,J0.l))})}function uq(n,t){return t?e=>$C(t.pipe(Ms(1),dq()),e.pipe(uq(n))):Xs((e,i)=>Rr(n(e,i)).pipe(Ms(1),function Nce(n){return(0,Xn.T)(()=>n)}(e)))}function hq(n,t=tu){const e=Qf(n,t);return uq(()=>e)}const Lce=["mat-menu-item",""],Uce=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],Vce=["mat-icon, [matMenuItemIcon]","*"];function Hce(n,t){1&n&&(o.qSk(),o.j41(0,"svg",2),o.nrm(1,"polygon",3),o.k0s())}const Qce=["*"];function zce(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",0),o.bIt("keydown",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._handleKeydown(r))})("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.closed.emit("click"))})("@transformMenu.start",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._onAnimationStart(r))})("@transformMenu.done",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._onAnimationDone(r))}),o.j41(1,"div",1),o.SdG(2),o.k0s()()}if(2&n){const e=o.XpG();o.HbH(e._classList),o.Y8G("id",e.panelId)("@transformMenu",e._panelAnimationState),o.BMQ("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}const $8=new o.nKC("MAT_MENU_PANEL");let fR=(()=>{class n{constructor(e,i,r,s,l){this._elementRef=e,this._document=i,this._focusMonitor=r,this._parentMenu=s,this._changeDetectorRef=l,this.role="menuitem",this.disabled=!1,this.disableRipple=!1,this._hovered=new mi.B,this._focused=new mi.B,this._highlighted=!1,this._triggersSubmenu=!1,s?.addItem?.(this)}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,i):this._getHostElement().focus(i),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){const e=this._elementRef.nativeElement.cloneNode(!0),i=e.querySelectorAll("mat-icon, .material-icons");for(let r=0;r enter",(0,Nn.i0)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,Nn.iF)({opacity:1,transform:"scale(1)"}))),(0,Nn.kY)("* => void",(0,Nn.i0)("100ms 25ms linear",(0,Nn.iF)({opacity:0})))]),fadeInItems:(0,Nn.hZ)("fadeInItems",[(0,Nn.wk)("showing",(0,Nn.iF)({opacity:1})),(0,Nn.kY)("void => *",[(0,Nn.iF)({opacity:0}),(0,Nn.i0)("400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let jce=0;const $ce=new o.nKC("mat-menu-default-options",{providedIn:"root",factory:function qce(){return{overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"}}});let Kh=(()=>{class n{get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}set panelClass(e){const i=this._previousPanelClass,r={...this._classList};i&&i.length&&i.split(" ").forEach(s=>{r[s]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(s=>{r[s]=!0}),this._elementRef.nativeElement.className=""),this._classList=r}get classList(){return this.panelClass}set classList(e){this.panelClass=e}constructor(e,i,r,s){this._elementRef=e,this._changeDetectorRef=s,this._elevationPrefix="mat-elevation-z",this._baseElevation=null,this._directDescendantItems=new o.rOR,this._classList={},this._panelAnimationState="void",this._animationDone=new mi.B,this.closed=new o.bkB,this.close=this.closed,this.panelId="mat-menu-panel-"+jce++,this._injector=(0,o.WQX)(o.zZn),this.overlayPanelClass=r.overlayPanelClass||"",this._xPosition=r.xPosition,this._yPosition=r.yPosition,this.backdropClass=r.backdropClass,this.overlapTrigger=r.overlapTrigger,this.hasBackdrop=r.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new ou(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(su(this._directDescendantItems),Jg(e=>ql(...e.map(i=>i._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{const i=this._keyManager;if("enter"===this._panelAnimationState&&i.activeItem?._hasFocus()){const r=e.toArray(),s=Math.max(0,Math.min(r.length-1,i.activeItemIndex||0));r[s]&&!r[s].disabled?i.setActiveItem(s):i.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusRef?.destroy()}_hovered(){return this._directDescendantItems.changes.pipe(su(this._directDescendantItems),Jg(i=>ql(...i.map(r=>r._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){const i=e.keyCode,r=this._keyManager;switch(i){case 27:Kl(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&"ltr"===this.direction&&this.closed.emit("keydown");break;case 39:this.parentMenu&&"rtl"===this.direction&&this.closed.emit("keydown");break;default:return(38===i||40===i)&&r.setFocusOrigin("keyboard"),void r.onKeydown(e)}e.stopPropagation()}focusFirstItem(e="program"){this._firstItemFocusRef?.destroy(),this._firstItemFocusRef=(0,o.mal)(()=>{let i=null;if(this._directDescendantItems.length&&(i=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),!i||!i.contains(document.activeElement)){const r=this._keyManager;r.setFocusOrigin(e).setFirstItemActive(),!r.activeItem&&i&&i.focus()}},{injector:this._injector})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){if(null===this._baseElevation){const u=("function"==typeof getComputedStyle?getComputedStyle(this._elementRef.nativeElement):null)?.getPropertyValue("--mat-menu-base-elevation-level")||"8";this._baseElevation=parseInt(u)}const i=Math.min(this._baseElevation+e,24),r=`${this._elevationPrefix}${i}`,s=Object.keys(this._classList).find(l=>l.startsWith(this._elevationPrefix));if(!s||s===this._previousElevation){const l={...this._classList};this._previousElevation&&(l[this._previousElevation]=!1),l[r]=!0,this._previousElevation=r,this._classList=l}}setPositionClasses(e=this.xPosition,i=this.yPosition){this._classList={...this._classList,"mat-menu-before":"before"===e,"mat-menu-after":"after"===e,"mat-menu-above":"above"===i,"mat-menu-below":"below"===i},this._changeDetectorRef?.markForCheck()}_startAnimation(){this._panelAnimationState="enter"}_resetAnimation(){this._panelAnimationState="void"}_onAnimationDone(e){this._animationDone.next(e),this._isAnimating=!1}_onAnimationStart(e){this._isAnimating=!0,"enter"===e.toState&&0===this._keyManager.activeItemIndex&&(e.element.scrollTop=0)}_updateDirectDescendants(){this._allItems.changes.pipe(su(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(i=>i._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi),o.rXU($ce),o.rXU(o.gRc))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-menu"]],contentQueries:function(i,r,s){if(1&i&&(o.wni(s,Gce,5),o.wni(s,fR,5),o.wni(s,fR,4)),2&i){let l;o.mGM(l=o.lsd())&&(r.lazyContent=l.first),o.mGM(l=o.lsd())&&(r._allItems=l),o.mGM(l=o.lsd())&&(r.items=l)}},viewQuery:function(i,r){if(1&i&&o.GBs(o.C4Q,5),2&i){let s;o.mGM(s=o.lsd())&&(r.templateRef=s.first)}},hostVars:3,hostBindings:function(i,r){2&i&&o.BMQ("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},inputs:{backdropClass:"backdropClass",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:[2,"overlapTrigger","overlapTrigger",o.L39],hasBackdrop:[2,"hasBackdrop","hasBackdrop",e=>null==e?null:(0,o.L39)(e)],panelClass:[0,"class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"},exportAs:["matMenu"],standalone:!0,features:[o.Jv_([{provide:$8,useExisting:n}]),o.GFd,o.aNF],ngContentSelectors:Qce,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-mdc-menu-panel","mat-mdc-elevation-specific",3,"keydown","click","id"],[1,"mat-mdc-menu-content"]],template:function(i,r){1&i&&(o.NAR(),o.DNE(0,zce,3,7,"ng-template"))},styles:['mat-menu{display:none}.mat-mdc-menu-content{margin:0;padding:8px 0;outline:0}.mat-mdc-menu-content,.mat-mdc-menu-content .mat-mdc-menu-item .mat-mdc-menu-item-text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;flex:1;white-space:normal;font-family:var(--mat-menu-item-label-text-font, var(--mat-app-label-large-font));line-height:var(--mat-menu-item-label-text-line-height, var(--mat-app-label-large-line-height));font-size:var(--mat-menu-item-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mat-menu-item-label-text-tracking, var(--mat-app-label-large-tracking));font-weight:var(--mat-menu-item-label-text-weight, var(--mat-app-label-large-weight))}.mat-mdc-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;outline:0;border-radius:var(--mat-menu-container-shape, var(--mat-app-corner-extra-small));background-color:var(--mat-menu-container-color, var(--mat-app-surface-container));will-change:transform,opacity}.mat-mdc-menu-panel.ng-animating{pointer-events:none}.mat-mdc-menu-panel.ng-animating:has(.mat-mdc-menu-content:empty){display:none}.cdk-high-contrast-active .mat-mdc-menu-panel{outline:solid 1px}.mat-mdc-menu-panel .mat-divider{color:var(--mat-menu-divider-color, var(--mat-app-surface-variant));margin-bottom:var(--mat-menu-divider-bottom-spacing);margin-top:var(--mat-menu-divider-top-spacing)}.mat-mdc-menu-item{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;padding-left:var(--mat-menu-item-leading-spacing);padding-right:var(--mat-menu-item-trailing-spacing);-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer;width:100%;text-align:left;box-sizing:border-box;color:inherit;font-size:inherit;background:none;text-decoration:none;margin:0;min-height:48px}[dir=rtl] .mat-mdc-menu-item{padding-right:var(--mat-menu-item-leading-spacing);padding-left:var(--mat-menu-item-trailing-spacing)}.mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-leading-spacing);padding-right:var(--mat-menu-item-with-icon-trailing-spacing)}[dir=rtl] .mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-right:var(--mat-menu-item-with-icon-leading-spacing);padding-left:var(--mat-menu-item-with-icon-trailing-spacing)}.mat-mdc-menu-item::-moz-focus-inner{border:0}.mat-mdc-menu-item,.mat-mdc-menu-item:visited,.mat-mdc-menu-item:link{color:var(--mat-menu-item-label-text-color, var(--mat-app-on-surface))}.mat-mdc-menu-item .mat-icon-no-color,.mat-mdc-menu-item .mat-mdc-menu-submenu-icon{color:var(--mat-menu-item-icon-color, var(--mat-app-on-surface-variant))}.mat-mdc-menu-item[disabled]{cursor:default;opacity:.38}.mat-mdc-menu-item[disabled]::after{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.mat-mdc-menu-item:focus{outline:0}.mat-mdc-menu-item .mat-icon{flex-shrink:0;margin-right:var(--mat-menu-item-spacing);height:var(--mat-menu-item-icon-size);width:var(--mat-menu-item-icon-size)}[dir=rtl] .mat-mdc-menu-item{text-align:right}[dir=rtl] .mat-mdc-menu-item .mat-icon{margin-right:0;margin-left:var(--mat-menu-item-spacing)}.mat-mdc-menu-item:not([disabled]):hover{background-color:var(--mat-menu-item-hover-state-layer-color)}.mat-mdc-menu-item:not([disabled]).cdk-program-focused,.mat-mdc-menu-item:not([disabled]).cdk-keyboard-focused,.mat-mdc-menu-item:not([disabled]).mat-mdc-menu-item-highlighted{background-color:var(--mat-menu-item-focus-state-layer-color)}.cdk-high-contrast-active .mat-mdc-menu-item{margin-top:1px}.mat-mdc-menu-submenu-icon{width:var(--mat-menu-item-icon-size);height:10px;fill:currentColor;padding-left:var(--mat-menu-item-spacing)}[dir=rtl] .mat-mdc-menu-submenu-icon{padding-right:var(--mat-menu-item-spacing);padding-left:0}[dir=rtl] .mat-mdc-menu-submenu-icon polygon{transform:scaleX(-1);transform-origin:center}.cdk-high-contrast-active .mat-mdc-menu-submenu-icon{fill:CanvasText}.mat-mdc-menu-item .mat-mdc-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}'],encapsulation:2,data:{animation:[pR.transformMenu,pR.fadeInItems]},changeDetection:0})}}return n})();const fq=new o.nKC("mat-menu-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.reposition()}}),pq=Gf({passive:!0});let rx=(()=>{class n{get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(e){this.menu=e}get menu(){return this._menu}set menu(e){e!==this._menu&&(this._menu=e,this._menuCloseSubscription.unsubscribe(),e&&(this._menuCloseSubscription=e.close.subscribe(i=>{this._destroyMenu(i),("click"===i||"tab"===i)&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(i)})),this._menuItemInstance?._setTriggersSubmenu(this.triggersSubmenu()))}constructor(e,i,r,s,l,u,f,p,m){this._overlay=e,this._element=i,this._viewContainerRef=r,this._menuItemInstance=u,this._dir=f,this._focusMonitor=p,this._ngZone=m,this._overlayRef=null,this._menuOpen=!1,this._closingActionsSubscription=un.yU.EMPTY,this._hoverSubscription=un.yU.EMPTY,this._menuCloseSubscription=un.yU.EMPTY,this._changeDetectorRef=(0,o.WQX)(o.gRc),this._handleTouchStart=_=>{T_(_)||(this._openedBy="touch")},this._openedBy=void 0,this.restoreFocus=!0,this.menuOpened=new o.bkB,this.onMenuOpen=this.menuOpened,this.menuClosed=new o.bkB,this.onMenuClose=this.menuClosed,this._scrollStrategy=s,this._parentMaterialMenu=l instanceof Kh?l:void 0,i.nativeElement.addEventListener("touchstart",this._handleTouchStart,pq)}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null),this._element.nativeElement.removeEventListener("touchstart",this._handleTouchStart,pq),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._hoverSubscription.unsubscribe()}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this.menu)}toggleMenu(){return this._menuOpen?this.closeMenu():this.openMenu()}openMenu(){const e=this.menu;if(this._menuOpen||!e)return;const i=this._createOverlay(e),r=i.getConfig(),s=r.positionStrategy;this._setPosition(e,s),r.hasBackdrop=null==e.hasBackdrop?!this.triggersSubmenu():e.hasBackdrop,i.attach(this._getPortal(e)),e.lazyContent&&e.lazyContent.attach(this.menuData),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this.closeMenu()),this._initMenu(e),e instanceof Kh&&(e._startAnimation(),e._directDescendantItems.changes.pipe(bo(e.close)).subscribe(()=>{s.withLockedPosition(!1).reapplyLastPosition(),s.withLockedPosition(!0)}))}closeMenu(){this.menu?.close.emit()}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}updatePosition(){this._overlayRef?.updatePosition()}_destroyMenu(e){if(!this._overlayRef||!this.menuOpen)return;const i=this.menu;this._closingActionsSubscription.unsubscribe(),this._overlayRef.detach(),this.restoreFocus&&("keydown"===e||!this._openedBy||!this.triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,i instanceof Kh?(i._resetAnimation(),i.lazyContent?i._animationDone.pipe(hr(r=>"void"===r.toState),Ms(1),bo(i.lazyContent._attached)).subscribe({next:()=>i.lazyContent.detach(),complete:()=>this._setIsMenuOpen(!1)}):this._setIsMenuOpen(!1)):(this._setIsMenuOpen(!1),i?.lazyContent?.detach())}_initMenu(e){e.parentMenu=this.triggersSubmenu()?this._parentMaterialMenu:void 0,e.direction=this.dir,this._setMenuElevation(e),e.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0)}_setMenuElevation(e){if(e.setElevation){let i=0,r=e.parentMenu;for(;r;)i++,r=r.parentMenu;e.setElevation(i)}}_setIsMenuOpen(e){e!==this._menuOpen&&(this._menuOpen=e,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this.triggersSubmenu()&&this._menuItemInstance._setHighlighted(e),this._changeDetectorRef.markForCheck())}_createOverlay(e){if(!this._overlayRef){const i=this._getOverlayConfig(e);this._subscribeToPositions(e,i.positionStrategy),this._overlayRef=this._overlay.create(i),this._overlayRef.keydownEvents().subscribe()}return this._overlayRef}_getOverlayConfig(e){return new Am({positionStrategy:this._overlay.position().flexibleConnectedTo(this._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:e.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:e.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir})}_subscribeToPositions(e,i){e.setPositionClasses&&i.positionChanges.subscribe(r=>{const s="start"===r.connectionPair.overlayX?"after":"before",l="top"===r.connectionPair.overlayY?"below":"above";this._ngZone?this._ngZone.run(()=>e.setPositionClasses(s,l)):e.setPositionClasses(s,l)})}_setPosition(e,i){let[r,s]="before"===e.xPosition?["end","start"]:["start","end"],[l,u]="above"===e.yPosition?["bottom","top"]:["top","bottom"],[f,p]=[l,u],[m,_]=[r,s],b=0;if(this.triggersSubmenu()){if(_=r="before"===e.xPosition?"start":"end",s=m="end"===r?"start":"end",this._parentMaterialMenu){if(null==this._parentInnerPadding){const w=this._parentMaterialMenu.items.first;this._parentInnerPadding=w?w._getHostElement().offsetTop:0}b="bottom"===l?this._parentInnerPadding:-this._parentInnerPadding}}else e.overlapTrigger||(f="top"===l?"bottom":"top",p="top"===u?"bottom":"top");i.withPositions([{originX:r,originY:f,overlayX:m,overlayY:l,offsetY:b},{originX:s,originY:f,overlayX:_,overlayY:l,offsetY:b},{originX:r,originY:p,overlayX:m,overlayY:u,offsetY:-b},{originX:s,originY:p,overlayX:_,overlayY:u,offsetY:-b}])}_menuClosingActions(){const e=this._overlayRef.backdropClick(),i=this._overlayRef.detachments();return ql(e,this._parentMaterialMenu?this._parentMaterialMenu.closed:Mo(),this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(hr(l=>l!==this._menuItemInstance),hr(()=>this._menuOpen)):Mo(),i)}_handleMousedown(e){_m(e)||(this._openedBy=0===e.button?"mouse":void 0,this.triggersSubmenu()&&e.preventDefault())}_handleKeydown(e){const i=e.keyCode;(13===i||32===i)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(39===i&&"ltr"===this.dir||37===i&&"rtl"===this.dir)&&(this._openedBy="keyboard",this.openMenu())}_handleClick(e){this.triggersSubmenu()?(e.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){!this.triggersSubmenu()||!this._parentMaterialMenu||(this._hoverSubscription=this._parentMaterialMenu._hovered().pipe(hr(e=>e===this._menuItemInstance&&!e.disabled),hq(0,u_)).subscribe(()=>{this._openedBy="mouse",this.menu instanceof Kh&&this.menu._isAnimating?this.menu._animationDone.pipe(Ms(1),hq(0,u_),bo(this._parentMaterialMenu._hovered())).subscribe(()=>this.openMenu()):this.openMenu()}))}_getPortal(e){return(!this._portal||this._portal.templateRef!==e.templateRef)&&(this._portal=new A_(e.templateRef,this._viewContainerRef)),this._portal}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Ns),o.rXU(o.aKT),o.rXU(o.c1b),o.rXU(fq),o.rXU($8,8),o.rXU(fR,10),o.rXU(Ks,8),o.rXU(Yl),o.rXU(o.SKi))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-mdc-menu-trigger"],hostVars:3,hostBindings:function(i,r){1&i&&o.bIt("click",function(l){return r._handleClick(l)})("mousedown",function(l){return r._handleMousedown(l)})("keydown",function(l){return r._handleKeydown(l)}),2&i&&o.BMQ("aria-haspopup",r.menu?"menu":null)("aria-expanded",r.menuOpen)("aria-controls",r.menuOpen?r.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:[0,"mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:[0,"matMenuTriggerFor","menu"],menuData:[0,"matMenuTriggerData","menuData"],restoreFocus:[0,"matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"},exportAs:["matMenuTrigger"],standalone:!0})}}return n})();function Pa(n,t){(function Xce(n){return"string"==typeof n&&-1!==n.indexOf(".")&&1===parseFloat(n)})(n)&&(n="100%");var e=function Kce(n){return"string"==typeof n&&-1!==n.indexOf("%")}(n);return n=360===t?n:Math.min(t,Math.max(0,parseFloat(n))),e&&(n=parseInt(String(n*t),10)/100),Math.abs(n-t)<1e-6?1:n=360===t?(n<0?n%t+t:n%t)/parseFloat(String(t)):n%t/parseFloat(String(t))}function AR(n){return Math.min(1,Math.max(0,n))}function Aq(n){return n=parseFloat(n),(isNaN(n)||n<0||n>1)&&(n=1),n}function mR(n){return n<=1?"".concat(100*Number(n),"%"):n}function cv(n){return 1===n.length?"0"+n:String(n)}function mq(n,t,e){n=Pa(n,255),t=Pa(t,255),e=Pa(e,255);var i=Math.max(n,t,e),r=Math.min(n,t,e),s=0,l=0,u=(i+r)/2;if(i===r)l=0,s=0;else{var f=i-r;switch(l=u>.5?f/(2-i-r):f/(i+r),i){case n:s=(t-e)/f+(t1&&(e-=1),e<1/6?n+6*e*(t-n):e<.5?t:e<2/3?n+(t-n)*(2/3-e)*6:n}function gq(n,t,e){n=Pa(n,255),t=Pa(t,255),e=Pa(e,255);var i=Math.max(n,t,e),r=Math.min(n,t,e),s=0,l=i,u=i-r,f=0===i?0:u/i;if(i===r)s=0;else{switch(i){case n:s=(t-e)/u+(t>16,g:(65280&n)>>8,b:255&n}}(t)),this.originalInput=t;var r=function nde(n){var t={r:0,g:0,b:0},e=1,i=null,r=null,s=null,l=!1,u=!1;return"string"==typeof n&&(n=function ode(n){if(0===(n=n.trim().toLowerCase()).length)return!1;var t=!1;if(W8[n])n=W8[n],t=!0;else if("transparent"===n)return{r:0,g:0,b:0,a:0,format:"name"};var e=Uu.rgb.exec(n);return e?{r:e[1],g:e[2],b:e[3]}:(e=Uu.rgba.exec(n))?{r:e[1],g:e[2],b:e[3],a:e[4]}:(e=Uu.hsl.exec(n))?{h:e[1],s:e[2],l:e[3]}:(e=Uu.hsla.exec(n))?{h:e[1],s:e[2],l:e[3],a:e[4]}:(e=Uu.hsv.exec(n))?{h:e[1],s:e[2],v:e[3]}:(e=Uu.hsva.exec(n))?{h:e[1],s:e[2],v:e[3],a:e[4]}:(e=Uu.hex8.exec(n))?{r:qc(e[1]),g:qc(e[2]),b:qc(e[3]),a:vq(e[4]),format:t?"name":"hex8"}:(e=Uu.hex6.exec(n))?{r:qc(e[1]),g:qc(e[2]),b:qc(e[3]),format:t?"name":"hex"}:(e=Uu.hex4.exec(n))?{r:qc(e[1]+e[1]),g:qc(e[2]+e[2]),b:qc(e[3]+e[3]),a:vq(e[4]+e[4]),format:t?"name":"hex8"}:!!(e=Uu.hex3.exec(n))&&{r:qc(e[1]+e[1]),g:qc(e[2]+e[2]),b:qc(e[3]+e[3]),format:t?"name":"hex"}}(n)),"object"==typeof n&&(Up(n.r)&&Up(n.g)&&Up(n.b)?(t=function Yce(n,t,e){return{r:255*Pa(n,255),g:255*Pa(t,255),b:255*Pa(e,255)}}(n.r,n.g,n.b),l=!0,u="%"===String(n.r).substr(-1)?"prgb":"rgb"):Up(n.h)&&Up(n.s)&&Up(n.v)?(i=mR(n.s),r=mR(n.v),t=function Jce(n,t,e){n=6*Pa(n,360),t=Pa(t,100),e=Pa(e,100);var i=Math.floor(n),r=n-i,s=e*(1-t),l=e*(1-r*t),u=e*(1-(1-r)*t),f=i%6;return{r:255*[e,l,s,s,u,e][f],g:255*[u,e,e,l,s,s][f],b:255*[s,s,u,e,e,l][f]}}(n.h,i,r),l=!0,u="hsv"):Up(n.h)&&Up(n.s)&&Up(n.l)&&(i=mR(n.s),s=mR(n.l),t=function Zce(n,t,e){var i,r,s;if(n=Pa(n,360),t=Pa(t,100),e=Pa(e,100),0===t)r=e,s=e,i=e;else{var l=e<.5?e*(1+t):e+t-e*t,u=2*e-l;i=q8(u,l,n+1/3),r=q8(u,l,n),s=q8(u,l,n-1/3)}return{r:255*i,g:255*r,b:255*s}}(n.h,i,s),l=!0,u="hsl"),Object.prototype.hasOwnProperty.call(n,"a")&&(e=n.a)),e=Aq(e),{ok:l,format:n.format||u,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:e}}(t);this.originalInput=t,this.r=r.r,this.g=r.g,this.b=r.b,this.a=r.a,this.roundA=Math.round(100*this.a)/100,this.format=null!==(i=e.format)&&void 0!==i?i:r.format,this.gradientType=e.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=r.ok}return n.prototype.isDark=function(){return this.getBrightness()<128},n.prototype.isLight=function(){return!this.isDark()},n.prototype.getBrightness=function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},n.prototype.getLuminance=function(){var t=this.toRgb(),s=t.r/255,l=t.g/255,u=t.b/255;return.2126*(s<=.03928?s/12.92:Math.pow((s+.055)/1.055,2.4))+.7152*(l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4))+.0722*(u<=.03928?u/12.92:Math.pow((u+.055)/1.055,2.4))},n.prototype.getAlpha=function(){return this.a},n.prototype.setAlpha=function(t){return this.a=Aq(t),this.roundA=Math.round(100*this.a)/100,this},n.prototype.isMonochrome=function(){return 0===this.toHsl().s},n.prototype.toHsv=function(){var t=gq(this.r,this.g,this.b);return{h:360*t.h,s:t.s,v:t.v,a:this.a}},n.prototype.toHsvString=function(){var t=gq(this.r,this.g,this.b),e=Math.round(360*t.h),i=Math.round(100*t.s),r=Math.round(100*t.v);return 1===this.a?"hsv(".concat(e,", ").concat(i,"%, ").concat(r,"%)"):"hsva(".concat(e,", ").concat(i,"%, ").concat(r,"%, ").concat(this.roundA,")")},n.prototype.toHsl=function(){var t=mq(this.r,this.g,this.b);return{h:360*t.h,s:t.s,l:t.l,a:this.a}},n.prototype.toHslString=function(){var t=mq(this.r,this.g,this.b),e=Math.round(360*t.h),i=Math.round(100*t.s),r=Math.round(100*t.l);return 1===this.a?"hsl(".concat(e,", ").concat(i,"%, ").concat(r,"%)"):"hsla(".concat(e,", ").concat(i,"%, ").concat(r,"%, ").concat(this.roundA,")")},n.prototype.toHex=function(t){return void 0===t&&(t=!1),_q(this.r,this.g,this.b,t)},n.prototype.toHexString=function(t){return void 0===t&&(t=!1),"#"+this.toHex(t)},n.prototype.toHex8=function(t){return void 0===t&&(t=!1),function ede(n,t,e,i,r){var s=[cv(Math.round(n).toString(16)),cv(Math.round(t).toString(16)),cv(Math.round(e).toString(16)),cv(bq(i))];return r&&s[0].startsWith(s[0].charAt(1))&&s[1].startsWith(s[1].charAt(1))&&s[2].startsWith(s[2].charAt(1))&&s[3].startsWith(s[3].charAt(1))?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")}(this.r,this.g,this.b,this.a,t)},n.prototype.toHex8String=function(t){return void 0===t&&(t=!1),"#"+this.toHex8(t)},n.prototype.toHexShortString=function(t){return void 0===t&&(t=!1),1===this.a?this.toHexString(t):this.toHex8String(t)},n.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},n.prototype.toRgbString=function(){var t=Math.round(this.r),e=Math.round(this.g),i=Math.round(this.b);return 1===this.a?"rgb(".concat(t,", ").concat(e,", ").concat(i,")"):"rgba(".concat(t,", ").concat(e,", ").concat(i,", ").concat(this.roundA,")")},n.prototype.toPercentageRgb=function(){var t=function(e){return"".concat(Math.round(100*Pa(e,255)),"%")};return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},n.prototype.toPercentageRgbString=function(){var t=function(e){return Math.round(100*Pa(e,255))};return 1===this.a?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},n.prototype.toName=function(){if(0===this.a)return"transparent";if(this.a<1)return!1;for(var t="#"+_q(this.r,this.g,this.b,!1),e=0,i=Object.entries(W8);e=0&&(t.startsWith("hex")||"name"===t)?"name"===t&&0===this.a?this.toName():this.toRgbString():("rgb"===t&&(i=this.toRgbString()),"prgb"===t&&(i=this.toPercentageRgbString()),("hex"===t||"hex6"===t)&&(i=this.toHexString()),"hex3"===t&&(i=this.toHexString(!0)),"hex4"===t&&(i=this.toHex8String(!0)),"hex8"===t&&(i=this.toHex8String()),"name"===t&&(i=this.toName()),"hsl"===t&&(i=this.toHslString()),"hsv"===t&&(i=this.toHsvString()),i||this.toHexString())},n.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},n.prototype.clone=function(){return new n(this.toString())},n.prototype.lighten=function(t){void 0===t&&(t=10);var e=this.toHsl();return e.l+=t/100,e.l=AR(e.l),new n(e)},n.prototype.brighten=function(t){void 0===t&&(t=10);var e=this.toRgb();return e.r=Math.max(0,Math.min(255,e.r-Math.round(-t/100*255))),e.g=Math.max(0,Math.min(255,e.g-Math.round(-t/100*255))),e.b=Math.max(0,Math.min(255,e.b-Math.round(-t/100*255))),new n(e)},n.prototype.darken=function(t){void 0===t&&(t=10);var e=this.toHsl();return e.l-=t/100,e.l=AR(e.l),new n(e)},n.prototype.tint=function(t){return void 0===t&&(t=10),this.mix("white",t)},n.prototype.shade=function(t){return void 0===t&&(t=10),this.mix("black",t)},n.prototype.desaturate=function(t){void 0===t&&(t=10);var e=this.toHsl();return e.s-=t/100,e.s=AR(e.s),new n(e)},n.prototype.saturate=function(t){void 0===t&&(t=10);var e=this.toHsl();return e.s+=t/100,e.s=AR(e.s),new n(e)},n.prototype.greyscale=function(){return this.desaturate(100)},n.prototype.spin=function(t){var e=this.toHsl(),i=(e.h+t)%360;return e.h=i<0?360+i:i,new n(e)},n.prototype.mix=function(t,e){void 0===e&&(e=50);var i=this.toRgb(),r=new n(t).toRgb(),s=e/100;return new n({r:(r.r-i.r)*s+i.r,g:(r.g-i.g)*s+i.g,b:(r.b-i.b)*s+i.b,a:(r.a-i.a)*s+i.a})},n.prototype.analogous=function(t,e){void 0===t&&(t=6),void 0===e&&(e=30);var i=this.toHsl(),r=360/e,s=[this];for(i.h=(i.h-(r*t>>1)+720)%360;--t;)i.h=(i.h+r)%360,s.push(new n(i));return s},n.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new n(t)},n.prototype.monochromatic=function(t){void 0===t&&(t=6);for(var e=this.toHsv(),i=e.h,r=e.s,s=e.v,l=[],u=1/t;t--;)l.push(new n({h:i,s:r,v:s})),s=(s+u)%1;return l},n.prototype.splitcomplement=function(){var t=this.toHsl(),e=t.h;return[this,new n({h:(e+72)%360,s:t.s,l:t.l}),new n({h:(e+216)%360,s:t.s,l:t.l})]},n.prototype.onBackground=function(t){var e=this.toRgb(),i=new n(t).toRgb(),r=e.a+i.a*(1-e.a);return new n({r:(e.r*e.a+i.r*i.a*(1-e.a))/r,g:(e.g*e.a+i.g*i.a*(1-e.a))/r,b:(e.b*e.a+i.b*i.a*(1-e.a))/r,a:r})},n.prototype.triad=function(){return this.polyad(3)},n.prototype.tetrad=function(){return this.polyad(4)},n.prototype.polyad=function(t){for(var e=this.toHsl(),i=e.h,r=[this],s=360/t,l=1;l{class n{constructor(){this.white="transparent",this.size=8,this.grey="rgba(0,0,0,.08)"}ngOnInit(){const e=function cde(n,t,e){const i=`${n}-${t}-${e}`;if(Y8[i])return Y8[i];const r=function lde(n,t,e){if(typeof document>"u")return null;const i=document.createElement("canvas");i.width=2*e,i.height=2*e;const r=i.getContext("2d");return r?(r.fillStyle=n,r.fillRect(0,0,i.width,i.height),r.fillStyle=t,r.fillRect(0,0,e,e),r.translate(e,e),r.fillRect(0,0,e,e),i.toDataURL()):null}(n,t,e);return r?(Y8[i]=r,r):null}(this.white,this.grey,this.size);this.gridStyles={borderRadius:this.borderRadius,boxShadow:this.boxShadow,background:`url(${e}) center left`}}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-checkboard"]],inputs:{white:"white",size:"size",grey:"grey",boxShadow:"boxShadow",borderRadius:"borderRadius"},decls:1,vars:1,consts:[[1,"grid",3,"ngStyle"]],template:function(e,i){1&e&&o.nrm(0,"div",0),2&e&&o.Y8G("ngStyle",i.gridStyles)},dependencies:[ma],styles:[".grid[_ngcontent-%COMP%]{top:0px;right:0px;bottom:0px;left:0px;position:absolute}"],changeDetection:0}),n})(),wq=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba]]}),n})(),Z8=(()=>{class n{constructor(e){this.el=e,this.coordinatesChange=new mi.B,this.mousechange=new mi.B,this.mouseListening=!1}mousemove(e,i,r,s=!1){this.mouseListening&&(e.preventDefault(),this.mousechange.next({$event:e,x:i,y:r,isTouch:s}))}mouseup(){this.mouseListening=!1}mousedown(e,i,r,s=!1){e.preventDefault(),this.mouseListening=!0,this.mousechange.next({$event:e,x:i,y:r,isTouch:s})}ngOnInit(){this.sub=this.mousechange.pipe(kr((e,i)=>e.x===i.x&&e.y===i.y)).subscribe(e=>this.handleChange(e.x,e.y,e.$event,e.isTouch))}ngOnDestroy(){this.sub.unsubscribe()}handleChange(e,i,r,s){const l=this.el.nativeElement.clientWidth,u=this.el.nativeElement.clientHeight,f=e-(this.el.nativeElement.getBoundingClientRect().left+window.pageXOffset);let p=i-this.el.nativeElement.getBoundingClientRect().top;s||(p-=window.pageYOffset),this.coordinatesChange.next({x:e,y:i,top:p,left:f,containerWidth:l,containerHeight:u,$event:r})}}return n.\u0275fac=function(e){return new(e||n)(o.rXU(o.aKT))},n.\u0275dir=o.FsC({type:n,selectors:[["","ngx-color-coordinates",""]],hostBindings:function(e,i){1&e&&o.bIt("mousemove",function(s){return i.mousemove(s,s.pageX,s.pageY)},!1,o.tSv)("touchmove",function(s){return i.mousemove(s,s.touches[0].clientX,s.touches[0].clientY,!0)},!1,o.tSv)("mouseup",function(){return i.mouseup()},!1,o.tSv)("touchend",function(){return i.mouseup()},!1,o.tSv)("mousedown",function(s){return i.mousedown(s,s.pageX,s.pageY)})("touchstart",function(s){return i.mousedown(s,s.touches[0].clientX,s.touches[0].clientY,!0)})},outputs:{coordinatesChange:"coordinatesChange"}}),n})(),J8=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({}),n})(),dde=(()=>{class n{constructor(){this.direction="horizontal",this.onChange=new o.bkB}ngOnChanges(){"vertical"===this.direction?(this.pointerLeft=0,this.pointerTop=100*this.rgb.a,this.gradient={background:`linear-gradient(to bottom, rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 0) 0%,\n rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 1) 100%)`}):(this.gradient={background:`linear-gradient(to right, rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 0) 0%,\n rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 1) 100%)`},this.pointerLeft=100*this.rgb.a)}handleChange({top:e,left:i,containerHeight:r,containerWidth:s,$event:l}){let u;if("vertical"===this.direction){let f;f=e<0?0:e>r?1:Math.round(100*e/r)/100,this.hsl.a!==f&&(u={h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:f,source:"rgb"})}else{let f;f=i<0?0:i>s?1:Math.round(100*i/s)/100,this.hsl.a!==f&&(u={h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:f,source:"rgb"})}u&&this.onChange.emit({data:u,$event:l})}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-alpha"]],inputs:{hsl:"hsl",rgb:"rgb",pointer:"pointer",shadow:"shadow",radius:"radius",direction:"direction"},outputs:{onChange:"onChange"},features:[o.OA$],decls:7,vars:15,consts:[[1,"alpha"],[1,"alpha-checkboard"],[1,"alpha-gradient",3,"ngStyle"],["ngx-color-coordinates","",3,"coordinatesChange"],[1,"alpha-pointer"],[1,"alpha-slider",3,"ngStyle"]],template:function(e,i){1&e&&(o.j41(0,"div",0)(1,"div",1),o.nrm(2,"color-checkboard"),o.k0s(),o.nrm(3,"div",2),o.j41(4,"div",3),o.bIt("coordinatesChange",function(s){return i.handleChange(s)}),o.j41(5,"div",4),o.nrm(6,"div",5),o.k0s()()()),2&e&&(o.xc7("border-radius",i.radius),o.R7$(3),o.xc7("box-shadow",i.shadow)("border-radius",i.radius),o.Y8G("ngStyle",i.gradient),o.R7$(),o.ZvI("alpha-container color-alpha-",i.direction,""),o.R7$(),o.xc7("left",i.pointerLeft,"%")("top",i.pointerTop,"%"),o.R7$(),o.Y8G("ngStyle",i.pointer))},dependencies:[yq,ma,Z8],styles:[".alpha[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.alpha-checkboard[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.alpha-gradient[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.alpha-container[_ngcontent-%COMP%]{position:relative;height:100%;margin:0 3px}.alpha-pointer[_ngcontent-%COMP%]{position:absolute}.alpha-slider[_ngcontent-%COMP%]{width:4px;border-radius:1px;height:8px;box-shadow:0 0 2px #0009;background:#fff;margin-top:1px;transform:translate(-2px)}"],changeDetection:0}),n})(),ude=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba,wq,J8]]}),n})();function xq(n){let e=0,i=0;return["r","g","b","a","h","s","l","v"].forEach(r=>{n[r]&&(e+=1,isNaN(n[r])||(i+=1),("s"===r||"l"===r)&&/^\d+%$/.test(n[r])&&(i+=1))}),e===i&&n}function n2(n,t,e){const i=new t2(n.hex?n.hex:n);e&&i.setAlpha(1);const r=i.toHsl(),s=i.toHsv(),l=i.toRgb(),u=i.toHex();return 0===r.s&&(r.h=t||0,s.h=t||0),{hsl:r,hex:"000000"===u&&0===l.a?"transparent":i.toHexString(),rgb:l,hsv:s,oldHue:n.h||t||r.h,source:n.source}}var ox=function(n){return n.HEX="hex",n.HSL="hsl",n.HSV="hsv",n.RGB="rgb",n}(ox||{});let Cq=(()=>{class n{constructor(){this.mode=ox.HEX,this.color={h:250,s:.5,l:.2,a:1},this.colorChange=new o.bkB,this.onChange=new o.bkB,this.onChangeComplete=new o.bkB,this.onSwatchHover=new o.bkB,this._onChangeCompleteSubscription=new un.yU,this._onSwatchHoverSubscription=new un.yU}ngOnInit(){this.changes=this.onChange.pipe(x_(100),ro(e=>{switch(this.onChangeComplete.emit(e),this.mode){case ox.HEX:this.colorChange.emit(e.color.hex);break;case ox.HSL:this.colorChange.emit(e.color.hsl);break;case ox.HSV:this.colorChange.emit(e.color.hsv);break;case ox.RGB:this.colorChange.emit(e.color.rgb);break;default:const i=`The mode '${this.mode}' is not supported`;if((0,o.naY)())throw new Error(i);console.warn(i)}})).subscribe(),this.setState(n2(this.color,0)),this.currentColor=this.hex}ngOnChanges(){this.setState(n2(this.color,this.oldHue))}ngOnDestroy(){this.changes?.unsubscribe(),this._onChangeCompleteSubscription.unsubscribe(),this._onSwatchHoverSubscription.unsubscribe()}setState(e){this.oldHue=e.oldHue,this.hsl=e.hsl,this.hsv=e.hsv,this.rgb=e.rgb,this.hex=e.hex,this.source=e.source,this.afterValidChange()}handleChange(e,i){if(xq(e)){const s=n2(e,e.h||this.oldHue,this.disableAlpha);this.setState(s),this.onChange.emit({color:s,$event:i}),this.afterValidChange()}}afterValidChange(){}handleSwatchHover(e,i){if(xq(e)){const s=n2(e,e.h||this.oldHue);this.setState(s),this.onSwatchHover.emit({color:s,$event:i})}}registerOnChange(e){this._onChangeCompleteSubscription.add(this.onChangeComplete.pipe(ro(i=>e(i.color.hex))).subscribe())}registerOnTouched(e){this._onSwatchHoverSubscription.add(this.onSwatchHover.pipe(ro(()=>e())).subscribe())}setDisabledState(e){}writeValue(e){this.color=e}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-wrap"]],inputs:{className:"className",mode:"mode",color:"color"},outputs:{colorChange:"colorChange",onChange:"onChange",onChangeComplete:"onChangeComplete",onSwatchHover:"onSwatchHover"},features:[o.Jv_([{provide:Aa,useExisting:(0,o.Rfq)(()=>n),multi:!0}]),o.OA$],decls:0,vars:0,template:function(e,i){},encapsulation:2}),n})(),fde=0,pde=(()=>{class n{constructor(){this.placeholder="",this.onChange=new o.bkB,this.focus=!1,this.uniqueId="editableInput-"+ ++fde}ngOnInit(){this.wrapStyle=this.style&&this.style.wrap?this.style.wrap:{},this.inputStyle=this.style&&this.style.input?this.style.input:{},this.labelStyle=this.style&&this.style.label?this.style.label:{},this.dragLabel&&(this.labelStyle.cursor="ew-resize")}handleFocus(e){this.focus=!0}handleFocusOut(e){this.focus=!1,this.currentValue=this.blurValue}handleKeydown(e){const i=String(e.target.value),r=i.indexOf("%")>-1,s=Number(i.replace(/%/g,""));if(isNaN(s))return;const l=this.arrowOffset||1;38===e.keyCode&&(this.onChange.emit(this.label?{data:{[this.label]:s+l},$event:e}:{data:s+l,$event:e}),this.currentValue=r?`${s+l}%`:s+l),40===e.keyCode&&(this.onChange.emit(this.label?{data:{[this.label]:s-l},$event:e}:{data:s-l,$event:e}),this.currentValue=r?s-l+"%":s-l)}handleKeyup(e){40===e.keyCode||38===e.keyCode||`${this.currentValue}`!==e.target.value&&this.onChange.emit(this.label?{data:{[this.label]:e.target.value},$event:e}:{data:e.target.value,$event:e})}ngOnChanges(){this.focus||(this.currentValue=String(this.value).toUpperCase()),this.blurValue=String(this.value).toUpperCase()}ngOnDestroy(){this.unsubscribe()}subscribe(){this.mousemove=Os(document,"mousemove").subscribe(e=>this.handleDrag(e)),this.mouseup=Os(document,"mouseup").subscribe(()=>this.unsubscribe())}unsubscribe(){this.mousemove&&this.mousemove.unsubscribe(),this.mouseup&&this.mouseup.unsubscribe()}handleMousedown(e){this.dragLabel&&(e.preventDefault(),this.handleDrag(e),this.subscribe())}handleDrag(e){if(this.dragLabel){const i=Math.round(this.value+e.movementX);i>=0&&i<=this.dragMax&&this.onChange.emit({data:{[this.label]:i},$event:e})}}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-editable-input"]],inputs:{style:"style",label:"label",value:"value",arrowOffset:"arrowOffset",dragLabel:"dragLabel",dragMax:"dragMax",placeholder:"placeholder"},outputs:{onChange:"onChange"},features:[o.OA$],decls:3,vars:6,consts:[[1,"wrap",3,"ngStyle"],["spellCheck","false",3,"keydown","keyup","focus","focusout","ngStyle","value","placeholder"],[3,"id","ngStyle","mousedown",4,"ngIf"],[3,"mousedown","id","ngStyle"]],template:function(e,i){1&e&&(o.j41(0,"div",0)(1,"input",1),o.bIt("keydown",function(s){return i.handleKeydown(s)})("keyup",function(s){return i.handleKeyup(s)})("focus",function(s){return i.handleFocus(s)})("focusout",function(s){return i.handleFocusOut(s)}),o.k0s(),o.DNE(2,sde,2,3,"span",2),o.k0s()),2&e&&(o.Y8G("ngStyle",i.wrapStyle),o.R7$(),o.Y8G("ngStyle",i.inputStyle)("value",i.currentValue)("placeholder",i.placeholder),o.BMQ("aria-labelledby",i.uniqueId),o.R7$(),o.Y8G("ngIf",i.label))},dependencies:[ma,Gn],styles:["[_nghost-%COMP%]{display:flex}.wrap[_ngcontent-%COMP%]{position:relative}"],changeDetection:0}),n})(),Ade=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba]]}),n})(),mde=(()=>{class n{constructor(){this.hidePointer=!1,this.direction="horizontal",this.onChange=new o.bkB,this.left="0px",this.top=""}ngOnChanges(){"horizontal"===this.direction?this.left=100*this.hsl.h/360+"%":this.top=-100*this.hsl.h/360+100+"%"}handleChange({top:e,left:i,containerHeight:r,containerWidth:s,$event:l}){let u;if("vertical"===this.direction){let f;f=e<0?359:e>r?0:360*(-100*e/r+100)/100,this.hsl.h!==f&&(u={h:f,s:this.hsl.s,l:this.hsl.l,a:this.hsl.a,source:"rgb"})}else{let f;f=i<0?0:i>s?359:100*i/s*360/100,this.hsl.h!==f&&(u={h:f,s:this.hsl.s,l:this.hsl.l,a:this.hsl.a,source:"rgb"})}u&&this.onChange.emit({data:u,$event:l})}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-hue"]],inputs:{hsl:"hsl",pointer:"pointer",radius:"radius",shadow:"shadow",hidePointer:"hidePointer",direction:"direction"},outputs:{onChange:"onChange"},features:[o.OA$],decls:3,vars:8,consts:[["ngx-color-coordinates","",1,"color-hue-container",3,"coordinatesChange"],["class","color-hue-pointer",3,"left","top",4,"ngIf"],[1,"color-hue-pointer"],[1,"color-hue-slider",3,"ngStyle"]],template:function(e,i){1&e&&(o.j41(0,"div")(1,"div",0),o.bIt("coordinatesChange",function(s){return i.handleChange(s)}),o.DNE(2,ade,2,5,"div",1),o.k0s()()),2&e&&(o.ZvI("color-hue color-hue-",i.direction,""),o.xc7("border-radius",i.radius,"px")("box-shadow",i.shadow),o.R7$(2),o.Y8G("ngIf",!i.hidePointer))},dependencies:[Z8,Gn,ma],styles:[".color-hue[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.color-hue-container[_ngcontent-%COMP%]{margin:0 2px;position:relative;height:100%}.color-hue-pointer[_ngcontent-%COMP%]{position:absolute}.color-hue-slider[_ngcontent-%COMP%]{margin-top:1px;width:4px;border-radius:1px;height:8px;box-shadow:0 0 2px #0009;background:#fff;transform:translate(-2px)}.color-hue-horizontal[_ngcontent-%COMP%]{background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)}.color-hue-vertical[_ngcontent-%COMP%]{background:linear-gradient(to top,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)}"],changeDetection:0}),n})(),gde=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba,J8]]}),n})(),_de=(()=>{class n{constructor(){this.onChange=new o.bkB}ngOnChanges(){this.background=`hsl(${this.hsl.h}, 100%, 50%)`,this.pointerTop=-100*this.hsv.v+1+100+"%",this.pointerLeft=100*this.hsv.s+"%"}handleChange({top:e,left:i,containerHeight:r,containerWidth:s,$event:l}){i<0?i=0:i>s?i=s:e<0?e=0:e>r&&(e=r);let f=-e/r+1;f=f>0?f:0,f=f>1?1:f,this.onChange.emit({data:{h:this.hsl.h,s:i/s,v:f,a:this.hsl.a,source:"hsva"},$event:l})}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-saturation"]],inputs:{hsl:"hsl",hsv:"hsv",radius:"radius",pointer:"pointer",circle:"circle"},outputs:{onChange:"onChange"},features:[o.OA$],decls:5,vars:8,consts:[["ngx-color-coordinates","",1,"color-saturation",3,"coordinatesChange"],[1,"saturation-white"],[1,"saturation-black"],[1,"saturation-pointer",3,"ngStyle"],[1,"saturation-circle",3,"ngStyle"]],template:function(e,i){1&e&&(o.j41(0,"div",0),o.bIt("coordinatesChange",function(s){return i.handleChange(s)}),o.j41(1,"div",1),o.nrm(2,"div",2),o.j41(3,"div",3),o.nrm(4,"div",4),o.k0s()()()),2&e&&(o.xc7("background",i.background),o.R7$(3),o.xc7("top",i.pointerTop)("left",i.pointerLeft),o.Y8G("ngStyle",i.pointer),o.R7$(),o.Y8G("ngStyle",i.circle))},dependencies:[Z8,ma],styles:[".saturation-white[_ngcontent-%COMP%]{background:linear-gradient(to right,#fff,rgba(255,255,255,0));position:absolute;top:0;bottom:0;left:0;right:0}.saturation-black[_ngcontent-%COMP%]{background:linear-gradient(to top,#000,rgba(0,0,0,0));position:absolute;top:0;bottom:0;left:0;right:0}.color-saturation[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.saturation-pointer[_ngcontent-%COMP%]{position:absolute;cursor:default}.saturation-circle[_ngcontent-%COMP%]{width:4px;height:4px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;cursor:hand;transform:translate(-2px,-4px)}"],changeDetection:0}),n})(),bde=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba,J8]]}),n})();const Vp=(n,t)=>({input:n,label:t});function vde(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",11)(1,"color-editable-input",12),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()()}if(2&n){const e=o.XpG();o.R7$(),o.Aen(o.l_i(3,Vp,e.input,e.label)),o.Y8G("value",e.hex)}}function yde(n,t){if(1&n){const e=o.RV6();o.j41(0,"color-editable-input",17),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG(2);return o.Njj(s.handleChange(r))}),o.k0s()}if(2&n){const e=o.XpG(2);o.Aen(o.l_i(4,Vp,e.input,e.label)),o.Y8G("value",e.rgb.a)("arrowOffset",.01)}}function wde(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",11)(1,"color-editable-input",13),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(2,"div",11)(3,"color-editable-input",14),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(4,"div",11)(5,"color-editable-input",15),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(6,"div",11),o.DNE(7,yde,1,7,"color-editable-input",16),o.k0s()}if(2&n){const e=o.XpG();o.R7$(),o.Aen(o.l_i(10,Vp,e.input,e.label)),o.Y8G("value",e.rgb.r),o.R7$(2),o.Aen(o.l_i(13,Vp,e.input,e.label)),o.Y8G("value",e.rgb.g),o.R7$(2),o.Aen(o.l_i(16,Vp,e.input,e.label)),o.Y8G("value",e.rgb.b),o.R7$(2),o.Y8G("ngIf",!e.disableAlpha)}}function xde(n,t){if(1&n){const e=o.RV6();o.j41(0,"color-editable-input",17),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG(2);return o.Njj(s.handleChange(r))}),o.k0s()}if(2&n){const e=o.XpG(2);o.Aen(o.l_i(4,Vp,e.input,e.label)),o.Y8G("value",e.hsl.a)("arrowOffset",.01)}}function Cde(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",11)(1,"color-editable-input",18),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(2,"div",11)(3,"color-editable-input",19),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(4,"div",11)(5,"color-editable-input",20),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(6,"div",11),o.DNE(7,xde,1,7,"color-editable-input",16),o.k0s()}if(2&n){const e=o.XpG();o.R7$(),o.Aen(o.l_i(10,Vp,e.input,e.label)),o.Y8G("value",e.round(e.hsl.h)),o.R7$(2),o.Aen(o.l_i(13,Vp,e.input,e.label)),o.Y8G("value",e.round(100*e.hsl.s)+"%"),o.R7$(2),o.Aen(o.l_i(16,Vp,e.input,e.label)),o.Y8G("value",e.round(100*e.hsl.l)+"%"),o.R7$(2),o.Y8G("ngIf",!e.disableAlpha)}}function Mde(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",12)(1,"color-alpha",13),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleValueChange(r))}),o.k0s()()}if(2&n){const e=o.XpG();o.R7$(),o.Y8G("radius",2)("rgb",e.rgb)("hsl",e.hsl)("pointer",e.pointer)}}let Ede=(()=>{class n{constructor(){this.onChange=new o.bkB,this.view="",this.input={fontSize:"11px",color:"#333",width:"100%",borderRadius:"2px",border:"none",boxShadow:"inset 0 0 0 1px #dadada",height:"21px","text-align":"center"},this.label={"text-transform":"uppercase",fontSize:"11px","line-height":"11px",color:"#969696","text-align":"center",display:"block",marginTop:"12px"}}ngOnInit(){1===this.hsl.a&&"hex"!==this.view?this.view="hex":"rgb"!==this.view&&"hsl"!==this.view&&(this.view="rgb")}toggleViews(){"hex"===this.view?this.view="rgb":"rgb"===this.view?this.view="hsl":"hsl"===this.view&&(this.view=1===this.hsl.a?"hex":"rgb")}round(e){return Math.round(e)}handleChange({data:e,$event:i}){if(e.hex){if(function hde(n){return new t2(n).isValid}(e.hex)){const r=new t2(e.hex);this.onChange.emit({data:{hex:this.disableAlpha?r.toHex():r.toHex8(),source:"hex"},$event:i})}}else if(e.r||e.g||e.b)this.onChange.emit({data:{r:e.r||this.rgb.r,g:e.g||this.rgb.g,b:e.b||this.rgb.b,source:"rgb"},$event:i});else if(e.a)e.a<0?e.a=0:e.a>1&&(e.a=1),this.disableAlpha&&(e.a=1),this.onChange.emit({data:{h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:Math.round(100*e.a)/100,source:"rgb"},$event:i});else if(e.h||e.s||e.l){const r=e.s&&e.s.replace("%",""),s=e.l&&e.l.replace("%","");this.onChange.emit({data:{h:e.h||this.hsl.h,s:Number(r||this.hsl.s),l:Number(s||this.hsl.l),source:"hsl"},$event:i})}}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-chrome-fields"]],inputs:{disableAlpha:"disableAlpha",hsl:"hsl",rgb:"rgb",hex:"hex"},outputs:{onChange:"onChange"},decls:13,vars:3,consts:[["icon",""],["iconUp",""],["iconDown",""],[1,"chrome-wrap"],[1,"chrome-fields"],[3,"ngIf"],[1,"chrome-toggle"],[1,"chrome-icon",3,"click"],["viewBox","0 0 24 24",1,"chrome-toggle-svg"],["fill","#333","d","M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"],["fill","#333","d","M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15Z"],[1,"chrome-field"],["label","hex",3,"onChange","value"],["label","r",3,"onChange","value"],["label","g",3,"onChange","value"],["label","b",3,"onChange","value"],["label","a",3,"style","value","arrowOffset","onChange",4,"ngIf"],["label","a",3,"onChange","value","arrowOffset"],["label","h",3,"onChange","value"],["label","s",3,"onChange","value"],["label","l",3,"onChange","value"]],template:function(e,i){if(1&e){const r=o.RV6();o.j41(0,"div",3)(1,"div",4),o.DNE(2,vde,2,6,"ng-template",5)(3,wde,8,19,"ng-template",5)(4,Cde,8,19,"ng-template",5),o.k0s(),o.j41(5,"div",6)(6,"div",7,0),o.bIt("click",function(){return o.eBV(r),o.Njj(i.toggleViews())}),o.qSk(),o.j41(8,"svg",8),o.nrm(9,"path",9,1)(11,"path",10,2),o.k0s()()()()}2&e&&(o.R7$(2),o.Y8G("ngIf","hex"===i.view),o.R7$(),o.Y8G("ngIf","rgb"===i.view),o.R7$(),o.Y8G("ngIf","hsl"===i.view))},dependencies:[pde,Gn],styles:[".chrome-wrap[_ngcontent-%COMP%]{padding-top:16px;display:flex}.chrome-fields[_ngcontent-%COMP%]{flex:1;display:flex;margin-left:-6px}.chrome-field[_ngcontent-%COMP%]{padding-left:6px;width:100%}.chrome-toggle[_ngcontent-%COMP%]{width:32px;text-align:right;position:relative}.chrome-icon[_ngcontent-%COMP%]{margin-right:-4px;margin-top:12px;cursor:pointer;position:relative}.chrome-toggle-svg[_ngcontent-%COMP%]{width:24px;height:24px;border:1px transparent solid;border-radius:5px}.chrome-toggle-svg[_ngcontent-%COMP%]:hover{background:#eee}"],changeDetection:0}),n})(),Sde=(()=>{class n extends Cq{constructor(){super(),this.disableAlpha=!1,this.circle={width:"12px",height:"12px",borderRadius:"6px",boxShadow:"rgb(255, 255, 255) 0px 0px 0px 1px inset",transform:"translate(-6px, -8px)"},this.pointer={width:"12px",height:"12px",borderRadius:"6px",transform:"translate(-6px, -2px)",backgroundColor:"rgb(248, 248, 248)",boxShadow:"0 1px 4px 0 rgba(0, 0, 0, 0.37)"}}afterValidChange(){this.activeBackground=`rgba(${this.rgb.r}, ${this.rgb.g}, ${this.rgb.b}, ${this.disableAlpha?1:this.rgb.a})`}handleValueChange({data:e,$event:i}){this.handleChange(e,i)}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-chrome"]],inputs:{disableAlpha:"disableAlpha"},features:[o.Jv_([{provide:Aa,useExisting:(0,o.Rfq)(()=>n),multi:!0},{provide:Cq,useExisting:(0,o.Rfq)(()=>n)}]),o.Vt3],decls:14,vars:16,consts:[[1,"saturation"],[3,"onChange","hsl","hsv","circle"],[1,"chrome-body"],[1,"chrome-controls"],[1,"chrome-color"],[1,"chrome-swatch"],[1,"chrome-active"],[1,"chrome-toggles"],[1,"chrome-hue"],[3,"onChange","radius","hsl","pointer"],["class","chrome-alpha",4,"ngIf"],[3,"onChange","rgb","hsl","hex","disableAlpha"],[1,"chrome-alpha"],[3,"onChange","radius","rgb","hsl","pointer"]],template:function(e,i){1&e&&(o.j41(0,"div")(1,"div",0)(2,"color-saturation",1),o.bIt("onChange",function(s){return i.handleValueChange(s)}),o.k0s()(),o.j41(3,"div",2)(4,"div",3)(5,"div",4)(6,"div",5),o.nrm(7,"div",6)(8,"color-checkboard"),o.k0s()(),o.j41(9,"div",7)(10,"div",8)(11,"color-hue",9),o.bIt("onChange",function(s){return i.handleValueChange(s)}),o.k0s()(),o.DNE(12,Mde,2,4,"div",10),o.k0s()(),o.j41(13,"color-chrome-fields",11),o.bIt("onChange",function(s){return i.handleValueChange(s)}),o.k0s()()()),2&e&&(o.ZvI("chrome-picker ",i.className,""),o.R7$(2),o.Y8G("hsl",i.hsl)("hsv",i.hsv)("circle",i.circle),o.R7$(5),o.xc7("background",i.activeBackground),o.R7$(4),o.Y8G("radius",2)("hsl",i.hsl)("pointer",i.pointer),o.R7$(),o.Y8G("ngIf",!i.disableAlpha),o.R7$(),o.Y8G("rgb",i.rgb)("hsl",i.hsl)("hex",i.hex)("disableAlpha",i.disableAlpha))},dependencies:()=>[_de,yq,mde,dde,Ede,Gn],styles:['.chrome-picker[_ngcontent-%COMP%]{background:#fff;border-radius:2px;box-shadow:0 0 2px #0000004d,0 4px 8px #0000004d;box-sizing:initial;width:225px;font-family:"Menlo"}.chrome-controls[_ngcontent-%COMP%]{display:flex}.chrome-color[_ngcontent-%COMP%]{width:42px}.chrome-body[_ngcontent-%COMP%]{padding:14px 14px 12px}.chrome-active[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0;border-radius:20px;box-shadow:inset 0 0 0 1px #0000001a;z-index:2}.chrome-swatch[_ngcontent-%COMP%]{width:28px;height:28px;border-radius:15px;position:relative;overflow:hidden}.saturation[_ngcontent-%COMP%]{width:100%;padding-bottom:55%;position:relative;border-radius:2px 2px 0 0;overflow:hidden}.chrome-toggles[_ngcontent-%COMP%]{flex:1}.chrome-hue[_ngcontent-%COMP%]{height:10px;position:relative;margin-bottom:8px}.chrome-alpha[_ngcontent-%COMP%]{height:10px;position:relative}'],changeDetection:0}),n})(),Tde=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba,ude,wq,Ade,gde,bde]]}),n})();const Ide=["colorPickerMenuTrigger"],Fde=(n,t)=>({isOpen:n,isHovered:t});let Mq=(()=>{class n{constructor(){this.openXPosition="after",this.onColorChange=new o.bkB,this.isHovered=!1,this.isClickInside=!1}handleChangeComplete(e){this.onColorChange.emit(e)}onMouseEnter(){this.isHovered=!0}onMouseLeave(){this.isHovered=!1}onClick(){this.isClickInside=!0,this.colorPickerMenuTrigger.openMenu()}handleDocumentClick(){!this.isClickInside&&this.colorPickerMenuTrigger.menuOpen&&this.colorPickerMenuTrigger.closeMenu(),this.isClickInside=!1}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-color-picker"]],viewQuery:function(i,r){if(1&i&&o.GBs(Ide,5),2&i){let s;o.mGM(s=o.lsd())&&(r.colorPickerMenuTrigger=s.first)}},hostBindings:function(i,r){1&i&&o.bIt("mouseenter",function(){return r.onMouseEnter()})("mouseleave",function(){return r.onMouseLeave()})("click",function(){return r.onClick()})("click",function(){return r.handleDocumentClick()},!1,o.EBC)},inputs:{hexColor:"hexColor",openXPosition:"openXPosition",triggerTemplate:"triggerTemplate"},outputs:{onColorChange:"onColorChange"},standalone:!0,features:[o.aNF],decls:6,vars:10,consts:[["colorPickerMenuTrigger","matMenuTrigger"],["menu","matMenu"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"matMenuTriggerFor"],[1,"cc-color-picker-menu",3,"xPosition","hasBackdrop"],["role","colorpicker",3,"click","onChangeComplete","disableAlpha","color"]],template:function(i,r){if(1&i){const s=o.RV6();o.eu8(0,2),o.nrm(1,"span",3,0),o.j41(3,"mat-menu",4,1)(5,"color-chrome",5),o.bIt("click",function(u){return o.eBV(s),o.Njj(u.stopPropagation())})("onChangeComplete",function(u){return o.eBV(s),o.Njj(r.handleChangeComplete(u.color.hex))}),o.k0s()()}if(2&i){const s=o.sdS(2),l=o.sdS(4);o.Y8G("ngTemplateOutlet",r.triggerTemplate)("ngTemplateOutletContext",o.l_i(7,Fde,s.menuOpen,r.isHovered)),o.R7$(),o.Y8G("matMenuTriggerFor",l),o.R7$(2),o.Y8G("xPosition",r.openXPosition)("hasBackdrop",!1),o.R7$(2),o.Y8G("disableAlpha",!0)("color",r.hexColor)}},dependencies:[yi,rx,Kh,Tde,Sde],encapsulation:2})}}return n})(),Bde=(()=>{class n{transform(e){return(n=>(299*Number.parseInt(n.slice(1,3),16)+587*Number.parseInt(n.slice(3,5),16)+114*Number.parseInt(n.slice(5,7),16))/1e3>=128?"black":"white")(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"readableColorForBackground",type:n,pure:!0,standalone:!0})}}return n})();function kde(n,t){1&n&&o.nrm(0,"br")}function Rde(n,t){if(1&n&&(o.j41(0,"span"),o.EFF(1),o.DNE(2,kde,1,0,"br"),o.k0s()),2&n){const e=t.$implicit,i=t.$index,r=t.$count;o.R7$(),o.SpI(" ",e," "),o.R7$(),o.vxM(i!==r-1?2:-1)}}function Pde(n,t){if(1&n&&(o.j41(0,"div",2)(1,"div",3),o.nrm(2,"span",4)(3,"span",5),o.nI1(4,"readableColorForBackground"),o.k0s(),o.j41(5,"div",6),o.Z7z(6,Rde,3,2,"span",null,o.fX1),o.k0s()()),2&n){const e=t.isOpen,i=t.isHovered,r=o.XpG();o.R7$(2),o.xc7("background-color",r.hexColor),o.R7$(),o.xc7("color",o.bMT(4,6,r.hexColor))("opacity",i||e?"1":"0"),o.R7$(3),o.Dyx(r.labels)}}let e6=(()=>{class n{constructor(){this.onColorChange=new o.bkB}handleColorChange(e){this.onColorChange.emit(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-labelled-color-picker"]],inputs:{hexColor:"hexColor",labels:"labels"},outputs:{onColorChange:"onColorChange"},standalone:!0,features:[o.aNF],decls:3,vars:3,consts:[["colorPickerTriggerTemplate",""],[3,"onColorChange","hexColor","openXPosition","triggerTemplate"],[1,"cc-labelled-color-picker-container"],[1,"cc-color-swatch-container"],[1,"cc-color-swatch"],[1,"cc-color-brush","fa","fa-paint-brush"],[1,"cc-labelled-color-picker-label"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"cc-color-picker",1),o.bIt("onColorChange",function(u){return o.eBV(s),o.Njj(r.handleColorChange(u))}),o.k0s(),o.DNE(1,Pde,8,8,"ng-template",null,0,o.C5r)}if(2&i){const s=o.sdS(2);o.Y8G("hexColor",r.hexColor)("openXPosition","before")("triggerTemplate",s)}},dependencies:[Mq,Bde],styles:[".cc-labelled-color-picker-container[_ngcontent-%COMP%]{display:flex;height:40px;align-items:center}.cc-labelled-color-picker-container[_ngcontent-%COMP%]:hover{cursor:pointer}.cc-labelled-color-picker-container[_ngcontent-%COMP%] .cc-color-swatch-container[_ngcontent-%COMP%]{position:relative;margin:0 11px;width:18px;height:18px}.cc-labelled-color-picker-container[_ngcontent-%COMP%] .cc-color-swatch-container[_ngcontent-%COMP%] .cc-color-swatch[_ngcontent-%COMP%]{display:inline-block;width:inherit;height:inherit;border-radius:2px;border:1px solid black}.cc-labelled-color-picker-container[_ngcontent-%COMP%] .cc-color-swatch-container[_ngcontent-%COMP%] .cc-color-brush[_ngcontent-%COMP%]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);opacity:0}.cc-labelled-color-picker-container[_ngcontent-%COMP%] > .cc-labelled-color-picker-label[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;direction:rtl}.cc-labelled-color-picker-container[_ngcontent-%COMP%] > .cc-labelled-color-picker-label[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{unicode-bidi:plaintext}"]})}}return n})();const Ode=["rendererContainer"],Nde=["fileInput"],Lde=()=>["Color"];function Ude(n,t){if(1&n&&(o.j41(0,"mat-option",9),o.EFF(1),o.j41(2,"span",35),o.EFF(3),o.k0s()()),2&n){const e=t.$implicit;o.Y8G("value",e),o.R7$(),o.SpI("",e.name," "),o.R7$(2),o.LHq(" (x: ",e.x,"cm, y: ",e.y,"cm, z: ",e.z,"cm, colors ",e.numberOfColors," )")}}let Eq=(()=>{class n{constructor(e,i){this.state=e,this.threeSceneService=i,this.logoColor="#ffffff",this.isFileSelected=!1,this.isPrintMeshLoaded=!1,this.secondRow={defaultText:(new Date).toLocaleDateString(),name:"Second Row Text",isVisible:!1,currentText:void 0},this.qrCode={defaultText:"maibornwolff.de/service/it-sanierung",name:"QrCode",isVisible:!1,currentText:void 0},this.printers=[{name:"Prusa MK3S (single color)",x:245,y:205,z:205,numberOfColors:1},{name:"BambuLab A1 + AMS Lite",x:251,y:251,z:251,numberOfColors:4},{name:"Prusa XL (5 colors)",x:355,y:335,z:355,numberOfColors:5}],this.selectedPrinter=this.printers[2],this.layerHeight=.2,this.frontTextSize=8,this.secondRowTextSize=6,this.frontPrintDepth=.6,this.mapSideOffset=10,this.baseplateHeight=1,this.logoSize=10,this.maxWidth=Rj(new pe(this.selectedPrinter.x,this.selectedPrinter.y,this.selectedPrinter.z),this.threeSceneService.getMapMesh().getThreeMesh(),this.frontTextSize,this.baseplateHeight,this.mapSideOffset),this.currentSize=new pe,this.currentSize.x=this.maxWidth,this.wantedWidth=this.maxWidth,this.currentNumberOfColors=this.selectedPrinter.numberOfColors,this.isPrintMeshLoaded=!1,this.secondRow.currentText=this.secondRow.defaultText,this.qrCode.currentText=this.qrCode.defaultText,this.areaMetric=this.state.getValue().dynamicSettings.areaMetric,this.heightMetric=this.state.getValue().dynamicSettings.heightMetric,this.colorMetric=this.state.getValue().dynamicSettings.colorMetric;const r=M3(this.state.getValue().files),s=this.state.getValue().fileSettings.blacklist,l=qo(r,s);this.nodeMetricData=l.filter(u=>u.name===this.areaMetric||u.name===this.heightMetric||u.name===this.colorMetric)}ngAfterViewInit(){var e=this;return Mn(function*(){yield e.createScene(),e.isPrintMeshLoaded=!0})()}onScaleChange(){this.previewMesh.updateSize(this.wantedWidth).then(e=>{this.qrCode.isVisible=e}),this.currentSize=this.previewMesh.getSize()}onFrontTextChange(){this.previewMesh.updateFrontText(this.frontText)}onFileSelected(e){const i=e.target.files[0];if(i){this.isFileSelected=!0;const r=new FileReader;r.readAsDataURL(i),r.onload=()=>{this.previewMesh.addCustomLogo(r.result)}}else this.isFileSelected=!1}onRotateLogo(){this.previewMesh.rotateCustomLogo()}onFlipLogo(){this.previewMesh.flipCustomLogo()}onRemoveLogo(){this.isFileSelected=!1,this.fileInput.nativeElement.value="",this.previewMesh.removeCustomLogo()}onSelectedPrinterChange(){const e=this.selectedPrinter.numberOfColors;this.currentNumberOfColors!==e&&(this.previewMesh.updateNumberOfColors(e),this.currentNumberOfColors=e),this.makeMapMaxSize(),this.updateCameraPosition(this.printPreviewScene.getObjectByName("camera"))}onLogoColorChange(e){this.logoColor=e,this.previewMesh.updateCustomLogoColor(this.logoColor)}onQrCodeTextChange(){this.onTextChange(this.qrCode),this.previewMesh.updateQrCodeText(this.qrCode.currentText),this.previewMesh.updateQrCodeVisibility(this.qrCode.isVisible)}onQrCodeVisibilityChange(e){this.qrCode.isVisible!==e.checked&&(this.qrCode.isVisible=e.checked,this.previewMesh.updateQrCodeVisibility(this.qrCode.isVisible))}onSecondRowTextChange(){this.onTextChange(this.secondRow),this.previewMesh.updateSecondRowText(this.secondRow.currentText),this.previewMesh.updateSecondRowVisibility(this.secondRow.isVisible)}onSecondRowVisibilityChange(e){this.secondRow.isVisible!==e.checked&&(this.secondRow.isVisible=e.checked,this.previewMesh.updateSecondRowVisibility(this.secondRow.isVisible))}onTextChange(e){""!==e.currentText?e.isVisible||(e.isVisible=!0):e.isVisible=!1}createScene(){var e=this;return Mn(function*(){const i=new Nk;i.name="printPreviewScene",e.printPreviewScene=i,i.background=new vn(15527388);const r=e.threeSceneService.scene.clone().children[3];r.name="lights",i.add(r);const s=new Js(45,1.15,50,2e5);s.name="camera",s.up=new pe(0,0,1),i.add(s),e.initRenderer(i,s),e.previewMesh=new qse(e.initGeometryOptions()),yield e.previewMesh.initialize(),e.currentSize=e.previewMesh.getSize(),i.add(e.previewMesh.getThreeMesh()),e.updateCameraPosition(s)})()}initRenderer(e,i){const r=this.getGL(),s=new ft;r.getSize(s);const l=this.rendererContainer.nativeElement.offsetWidth;r.setSize(l,s.y*(l/s.x),!0),this.rendererContainer.nativeElement.appendChild(r.domElement);const f=new WU(i,r.domElement),p=function(){requestAnimationFrame(p),f.update(),r.render(e,i)};p()}getGL(){return new V5}updateCameraPosition(e){e.position.set(.2*-this.currentSize.x,1.2*-this.currentSize.y,3*this.currentSize.z)}download3MFFile(){var e=this;return Mn(function*(){const i=yield function wse(n){return d8.apply(this,arguments)}(e.printPreviewScene.getObjectByName("PrintMesh"));e.downloadFile(i,"3mf")})()}makeMapMaxSize(){this.wantedWidth=Rj(new pe(this.selectedPrinter.x,this.selectedPrinter.y,this.selectedPrinter.z),this.threeSceneService.getMapMesh().getThreeMesh(),this.frontTextSize,this.baseplateHeight,this.mapSideOffset),this.previewMesh.updateSize(this.wantedWidth).then(e=>{this.qrCode.isVisible=e}),this.currentSize=this.previewMesh.getSize(),this.maxWidth=this.currentSize.x}downloadStlFile(){const e=(new Koe).parse(this.previewMesh.getMapMesh(),{binary:!0});this.downloadFile(e,"stl")}initGeometryOptions(){const e=this.state.getValue().fileSettings.attributeDescriptors,i=qw,r=e[this.areaMetric]?.title||i.get(this.areaMetric),s=e[this.heightMetric]?.title||i.get(this.heightMetric),l=e[this.colorMetric]?.title||i.get(this.colorMetric);return{originalMapMesh:this.threeSceneService.getMapMesh().getThreeMesh(),width:this.wantedWidth,areaMetricTitle:r,areaMetricData:this.nodeMetricData.find(u=>u.name===this.areaMetric),heightMetricTitle:s,heightMetricData:this.nodeMetricData.find(u=>u.name===this.heightMetric),colorMetricTitle:l,colorMetricData:this.nodeMetricData.find(u=>u.name===this.colorMetric),colorRange:this.state.getValue().dynamicSettings.colorRange,frontText:this.frontText,secondRowText:this.secondRow.currentText,secondRowVisible:this.secondRow.isVisible,qrCodeText:this.qrCode.currentText,defaultMaterial:this.threeSceneService.getMapMesh().getThreeMesh().material[0].clone(),numberOfColors:this.currentNumberOfColors,layerHeight:this.layerHeight,frontTextSize:this.frontTextSize,secondRowTextSize:this.secondRowTextSize,printHeight:this.frontPrintDepth,mapSideOffset:this.mapSideOffset,baseplateHeight:this.baseplateHeight,logoSize:this.logoSize}}downloadFile(e,i){const r=wn(this.state.getValue()),s=Fd(this.state.getValue()).unifiedFileMeta?.fileName,l=`${uu.getNewFileName(s,dc(r))}.${i}`;Om.downloadData(e,l)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi),o.rXU(Dd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-export-3D-map-dialog"]],viewQuery:function(i,r){if(1&i&&(o.GBs(Ode,5),o.GBs(Nde,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.rendererContainer=s.first),o.mGM(s=o.lsd())&&(r.fileInput=s.first)}},inputs:{logoColor:"logoColor"},standalone:!0,features:[o.aNF],decls:84,vars:25,consts:[["rendererContainer",""],["slider",""],["fileInput",""],["color","primary"],[1,"cc-export-3D-map-dialog"],[1,"preview"],["appearance","outline",1,"cc-export-3D-map-dialog-content"],["appearance","outline"],["data-testid","selectPrinter",3,"selectionChange","valueChange","value"],["data-testid","selectedPrinter",3,"value"],["appearance","outlined"],[1,"slider-container"],["data-testid","onScaleChange","discrete","true","min","100","step","1",3,"change","max"],["matSliderThumb","",3,"ngModelChange","ngModel"],["data-testid","printSizeOverview"],["matInput","","data-testid","frontText",3,"ngModelChange","input","ngModel","placeholder"],[1,"cc-manual-visibility-content"],["data-testid","secondRowToggle",3,"change","checked"],["appearance","outline",3,"hidden"],["matInput","","data-testid","secondRowText",3,"ngModelChange","input","ngModel"],["data-testid","qrCodeToggle",3,"change","checked"],["matInput","","data-testid","qrCodeText",3,"ngModelChange","input","ngModel"],["type","file","accept",".svg",1,"cc-file-input",3,"change"],["mat-button","","title","Remove Logo Button",3,"click","hidden"],[1,"fa","fa-times"],[3,"hidden"],["mat-button","","title","Rotate Logo Button",3,"click"],[1,"fa","fa-rotate-right"],["mat-button","","title","Flip Logo Button",3,"click"],[1,"fa","fa-arrows-h"],[3,"onColorChange","hexColor","labels"],["align","end"],["mat-button","","title","Download 3MF Button",3,"click","disabled"],[1,"fa","fa-download"],["mat-button","","title","Download Stl Button",3,"click","disabled"],[1,"cc-printer-specs"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"mat-toolbar",3),o.EFF(1,"3D Print CodeCharta Map"),o.k0s(),o.j41(2,"div",4),o.nrm(3,"div",5,0),o.j41(5,"mat-dialog-content",6)(6,"mat-form-field",7)(7,"mat-label"),o.EFF(8,"Printer preset"),o.k0s(),o.j41(9,"mat-select",8),o.bIt("selectionChange",function(){return o.eBV(s),o.Njj(r.onSelectedPrinterChange())}),o.mxI("valueChange",function(u){return o.eBV(s),o.DH7(r.selectedPrinter,u)||(r.selectedPrinter=u),o.Njj(u)}),o.j41(10,"mat-select-trigger"),o.EFF(11),o.k0s(),o.Z7z(12,Ude,4,6,"mat-option",9,o.fX1),o.k0s()(),o.j41(14,"mat-card",10)(15,"mat-card-header"),o.EFF(16,"Scale:"),o.k0s(),o.j41(17,"mat-card-content")(18,"div",11)(19,"mat-slider",12),o.bIt("change",function(){return o.eBV(s),o.Njj(r.onScaleChange())}),o.j41(20,"input",13,1),o.mxI("ngModelChange",function(u){return o.eBV(s),o.DH7(r.wantedWidth,u)||(r.wantedWidth=u),o.Njj(u)}),o.k0s()()(),o.j41(22,"div",14)(23,"span"),o.EFF(24),o.k0s(),o.nrm(25,"br"),o.j41(26,"span"),o.EFF(27),o.k0s(),o.nrm(28,"br"),o.j41(29,"span"),o.EFF(30),o.k0s()()()(),o.j41(31,"mat-form-field",7)(32,"mat-label"),o.EFF(33,"Bottom center label text"),o.k0s(),o.j41(34,"input",15),o.mxI("ngModelChange",function(u){return o.eBV(s),o.DH7(r.frontText,u)||(r.frontText=u),o.Njj(u)}),o.bIt("input",function(){return o.eBV(s),o.Njj(r.onFrontTextChange())}),o.k0s()(),o.j41(35,"mat-card",10)(36,"mat-card-header"),o.EFF(37,"Second row center text"),o.k0s(),o.j41(38,"mat-card-content",16)(39,"mat-slide-toggle",17),o.bIt("change",function(u){return o.eBV(s),o.Njj(r.onSecondRowVisibilityChange(u))}),o.EFF(40," Show second row text "),o.k0s(),o.j41(41,"mat-form-field",18)(42,"mat-label"),o.EFF(43,"Text"),o.k0s(),o.j41(44,"input",19),o.mxI("ngModelChange",function(u){return o.eBV(s),o.DH7(r.secondRow.currentText,u)||(r.secondRow.currentText=u),o.Njj(u)}),o.bIt("input",function(){return o.eBV(s),o.Njj(r.onSecondRowTextChange())}),o.k0s()()()(),o.j41(45,"mat-card",10)(46,"mat-card-header"),o.EFF(47,"QR-Code"),o.k0s(),o.j41(48,"mat-card-content",16)(49,"mat-slide-toggle",20),o.bIt("change",function(u){return o.eBV(s),o.Njj(r.onQrCodeVisibilityChange(u))}),o.EFF(50," Show QR-Code "),o.k0s(),o.j41(51,"mat-form-field",18)(52,"mat-label"),o.EFF(53,"QR-Code text"),o.k0s(),o.j41(54,"input",21),o.mxI("ngModelChange",function(u){return o.eBV(s),o.DH7(r.qrCode.currentText,u)||(r.qrCode.currentText=u),o.Njj(u)}),o.bIt("input",function(){return o.eBV(s),o.Njj(r.onQrCodeTextChange())}),o.k0s()()()(),o.j41(55,"mat-card",10)(56,"mat-card-header"),o.EFF(57,"Bottom left logo (SVG):"),o.k0s(),o.j41(58,"mat-card-content")(59,"input",22,2),o.bIt("change",function(u){return o.eBV(s),o.Njj(r.onFileSelected(u))}),o.k0s(),o.j41(61,"button",23),o.bIt("click",function(){return o.eBV(s),o.Njj(r.onRemoveLogo())}),o.j41(62,"span"),o.nrm(63,"i",24),o.EFF(64," Remove Logo"),o.k0s()(),o.j41(65,"div",25)(66,"button",26),o.bIt("click",function(){return o.eBV(s),o.Njj(r.onRotateLogo())}),o.j41(67,"span"),o.nrm(68,"i",27),o.EFF(69," Rotate Logo"),o.k0s()(),o.j41(70,"button",28),o.bIt("click",function(){return o.eBV(s),o.Njj(r.onFlipLogo())}),o.j41(71,"span"),o.nrm(72,"i",29),o.EFF(73," Flip Logo"),o.k0s()(),o.j41(74,"cc-labelled-color-picker",30),o.bIt("onColorChange",function(u){return o.eBV(s),o.Njj(r.onLogoColorChange(u))}),o.k0s()()()()(),o.j41(75,"mat-dialog-actions",31)(76,"button",32),o.bIt("click",function(){return o.eBV(s),o.Njj(r.download3MFFile())}),o.j41(77,"span"),o.nrm(78,"i",33),o.EFF(79," Download 3MF"),o.k0s()(),o.j41(80,"button",34),o.bIt("click",function(){return o.eBV(s),o.Njj(r.downloadStlFile())}),o.j41(81,"span"),o.nrm(82,"i",33),o.EFF(83," Download minimal STL"),o.k0s()()()()}2&i&&(o.R7$(9),o.R50("value",r.selectedPrinter),o.R7$(2),o.SpI(" ",r.selectedPrinter.name," "),o.R7$(),o.Dyx(r.printers),o.R7$(7),o.Y8G("max",r.maxWidth),o.R7$(),o.R50("ngModel",r.wantedWidth),o.R7$(4),o.Lme("Width: ",(r.currentSize.x/10).toFixed(1),"cm (max. ",(r.selectedPrinter.x/10).toFixed(1),")"),o.R7$(3),o.Lme("Depth: ",(r.currentSize.y/10).toFixed(1),"cm (max. ",(r.selectedPrinter.y/10).toFixed(1),")"),o.R7$(3),o.Lme("Height: ",(r.currentSize.z/10).toFixed(1),"cm (max. ",(r.selectedPrinter.z/10).toFixed(1),")"),o.R7$(4),o.R50("ngModel",r.frontText),o.Y8G("placeholder","CodeCharta"),o.R7$(5),o.Y8G("checked",r.secondRow.isVisible),o.R7$(2),o.Y8G("hidden",r.secondRow.isVisible),o.R7$(3),o.R50("ngModel",r.secondRow.currentText),o.R7$(5),o.Y8G("checked",r.qrCode.isVisible),o.R7$(2),o.Y8G("hidden",r.qrCode.isVisible),o.R7$(3),o.R50("ngModel",r.qrCode.currentText),o.R7$(7),o.Y8G("hidden",!r.isFileSelected),o.R7$(4),o.Y8G("hidden",!r.isFileSelected),o.R7$(9),o.Y8G("hexColor",r.logoColor)("labels",o.lJ4(24,Lde)),o.R7$(2),o.Y8G("disabled",!r.isPrintMeshLoaded),o.R7$(4),o.Y8G("disabled",!r.isPrintMeshLoaded))},dependencies:[Yg,Al,Lu,Nu,e0,tq,yd,e2,iq,nq,aq,hR,ZS,Wg,Jw,nx,t0,JS,ns,e6,Zl],styles:[".cc-printer-specs[_ngcontent-%COMP%]{color:#888}.cc-file-input[_ngcontent-%COMP%]{margin-top:16px}"]})}}return n})();const Sq=sn($c,n=>n.colorMode),sx=bn("SET_COLOR_MODE",{_as:"props",_p:void 0});let Vde=(()=>{class n{constructor(e,i,r){this.dialog=e,this.state=i,this.store=r}export3DMap(){this.state.getValue().dynamicSettings.colorMode!==Gl.absolute?this.dialog.open(lu,{data:this.buildErrorDialog()}):this.dialog.open(Eq,{panelClass:"cc-export-3D-map-dialog"})}buildErrorDialog(){return{title:"Map could not be exported",message:'

3D map can only be exported when color mode is set to absolute.
You can change this under Color Metric Options or use "Change and continue" to directly change the color mode and continue.

',resolveErrorData:{buttonText:"Change and continue",onResolveErrorClick:()=>{this.store.dispatch(sx({value:Gl.absolute})),this.store.select(Sq).pipe(Ms(1)).subscribe(l=>{l===Gl.absolute&&setTimeout(()=>{this.dialog.open(Eq,{panelClass:"cc-export-3D-map-dialog"})},100)})}}}}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es),o.rXU(Vi),o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-export-3d-map-button"]],standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[["title","Download 3MF code file",3,"click","icon"]],template:function(i,r){1&i&&(o.j41(0,"cc-action-icon",0),o.bIt("click",function(){return r.export3DMap()}),o.k0s()),2&i&&o.Y8G("icon","fa fa-print")},dependencies:[pl],encapsulation:2})}}return n})();const t6=(0,v(1853).L)(n=>function(){n(this),this.name="EmptyError",this.message="no elements in sequence"});function zde(n=Gde){return(0,Ir.N)((t,e)=>{let i=!1;t.subscribe((0,lr._)(e,r=>{i=!0,e.next(r)},()=>i?e.complete():e.error(n())))})}function Gde(){return new t6}function r2(n,t){const e=arguments.length>=2;return i=>i.pipe(n?hr((r,s)=>n(r,s,i)):Ll.D,Ms(1),e?function Qde(n){return(0,Ir.N)((t,e)=>{let i=!1;t.subscribe((0,lr._)(e,r=>{i=!0,e.next(r)},()=>{i||e.next(n),e.complete()}))})}(t):zde(()=>new t6))}const Vu=v(4999),r0=bn("SET_AMOUNT_OF_TOP_LABELS",{_as:"props",_p:void 0}),o2=bn("SET_COLOR_LABELS",{_as:"props",_p:void 0}),ax=bn("SET_EDGE_HEIGHT",{_as:"props",_p:void 0}),gR=bn("SET_SCREENSHOT_TO_CLIPBOARD_ENABLED",{_as:"props",_p:void 0}),_R=bn("SET_EXPERIMENTAL_FEATURES_ENABLED",{_as:"props",_p:void 0}),s2=bn("SET_ENABLE_FLOOR_LABELS",{_as:"props",_p:void 0}),a2=bn("SET_HIDE_FLAT_BUILDINGS",{_as:"props",_p:void 0}),l2=bn("SET_INVERT_AREA",{_as:"props",_p:void 0}),c2=bn("SET_INVERT_HEIGHT",{_as:"props",_p:void 0}),n6=bn("SET_IS_EDGE_METRIC_VISIBLE",{_as:"props",_p:void 0}),bR=bn("TOGGLE_IS_EDGE_METRIC_VISIBLE"),i6=bn("SET_IS_COLOR_METRIC_LINKED_TO_HEIGHT_METRIC",{_as:"props",_p:void 0}),r6=bn("TOGGLE_IS_COLOR_METRIC_LINKED_TO_HEIGHT_METRIC"),vR=bn("SET_PRESENTATION_MODE",{_as:"props",_p:void 0}),d2=bn("SET_IS_WHITE_BACKGROUND",{_as:"props",_p:void 0}),u2=bn("SET_LAYOUT_ALGORITHM",{_as:"props",_p:void 0}),h2=bn("SET_MAX_TREE_MAP_FILES",{_as:"props",_p:void 0}),yR=bn("SET_RESET_CAMERA_IF_NEW_FILE_IS_LOADED",{_as:"props",_p:void 0}),lx=bn("SET_SCALING",{_as:"props",_p:void 0}),f2=bn("SET_SHARPNESS_MODE",{_as:"props",_p:void 0}),p2=bn("SET_SHOW_METRIC_LABEL_NAME_VALUE",{_as:"props",_p:void 0}),A2=bn("SET_SHOW_METRIC_LABEL_NODE_NAME",{_as:"props",_p:void 0}),m2=bn("SET_SHOW_ONLY_BUILDINGS_WITH_EDGES",{_as:"props",_p:void 0}),Hp=bn("SET_AREA_METRIC",{_as:"props",_p:void 0}),Yh=bn("SET_COLOR_METRIC",{_as:"props",_p:void 0}),Qp=bn("SET_COLOR_RANGE",{_as:"props",_p:void 0}),g2=bn("SET_DISTRIBUTION_METRIC",{_as:"props",_p:void 0}),zp=bn("SET_EDGE_METRIC",{_as:"props",_p:void 0}),wR=bn("SET_ALL_FOCUSED_NODES",{_as:"props",_p:void 0}),xR=bn("FOCUS_NODE",{_as:"props",_p:void 0}),_2=bn("UNFOCUS_ALL_NODES"),CR=bn("UNFOCUS_NODE"),Gp=bn("SET_HEIGHT_METRIC",{_as:"props",_p:void 0}),cx=bn("SET_MARGIN",{_as:"props",_p:void 0}),o0=bn("SET_SEARCH_PATTERN",{_as:"props",_p:void 0}),MR=bn("SET_SORTING_OPTION",{_as:"props",_p:void 0}),o6=bn("SET_ATTRIBUTE_DESCRIPTORS",{_as:"props",_p:void 0}),s6=bn("SET_ATTRIBUTE_TYPES",{_as:"props",_p:void 0}),a6=bn("UPDATE_ATTRIBUTE_TYPE",{_as:"props",_p:void 0}),l6=bn("SET_BLACKLIST",{_as:"props",_p:void 0}),c6=bn("ADD_BLACKLIST_ITEM",{_as:"props",_p:void 0}),ER=bn("ADD_BLACKLIST_ITEMS",{_as:"props",_p:void 0}),SR=bn("REMOVE_BLACKLIST_ITEM",{_as:"props",_p:void 0}),d6=bn("ADD_BLACKLIST_ITEMS_IF_NOT_RESULTS_IN_EMPTY_MAP",{_as:"props",_p:void 0}),u6=bn("SET_EDGES",{_as:"props",_p:void 0}),Iq=bn("ADD_EDGE",{_as:"props",_p:void 0}),Fq=bn("REMOVE_EDGE",{_as:"props",_p:void 0}),TR=bn("SET_MARKED_PACKAGES",{_as:"props",_p:void 0}),b2=bn("MARK_PACKAGES",{_as:"props",_p:void 0}),IR=bn("UNMARK_PACKAGE",{_as:"props",_p:void 0});function Dq(n,t){this.v=n,this.k=t}function Bq(n){return new Dq(n,0)}function v2(n){var t,e;function i(s,l){try{var u=n[s](l),f=u.value,p=f instanceof Dq;Promise.resolve(p?f.v:f).then(function(m){if(p){var _="return"===s?"return":"next";if(!f.k||m.done)return i(_,m);m=n[_](m).value}r(u.done?"return":"normal",m)},function(m){i("throw",m)})}catch(m){r("throw",m)}}function r(s,l){switch(s){case"return":t.resolve({value:l,done:!0});break;case"throw":t.reject(l);break;default:t.resolve({value:l,done:!1})}(t=t.next)?i(t.key,t.arg):e=null}this._invoke=function(s,l){return new Promise(function(u,f){var p={key:s,arg:l,resolve:u,reject:f,next:null};e?e=e.next=p:(t=e=p,i(s,l))})},"function"!=typeof n.return&&(this.return=void 0)}v2.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},v2.prototype.next=function(n){return this._invoke("next",n)},v2.prototype.throw=function(n){return this._invoke("throw",n)},v2.prototype.return=function(n){return this._invoke("return",n)};const h6=(n,t)=>t.some(e=>n instanceof e);let kq,Rq;const f6=new WeakMap,p6=new WeakMap,FR=new WeakMap;let A6={get(n,t,e){if(n instanceof IDBTransaction){if("done"===t)return f6.get(n);if("store"===t)return e.objectStoreNames[1]?void 0:e.objectStore(e.objectStoreNames[0])}return s0(n[t])},set:(n,t,e)=>(n[t]=e,!0),has:(n,t)=>n instanceof IDBTransaction&&("done"===t||"store"===t)||t in n};function Pq(n){A6=n(A6)}function Yde(n){return"function"==typeof n?function Kde(n){return function qde(){return Rq||(Rq=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}().includes(n)?function(...t){return n.apply(m6(this),t),s0(this.request)}:function(...t){return s0(n.apply(m6(this),t))}}(n):(n instanceof IDBTransaction&&function Xde(n){if(f6.has(n))return;const t=new Promise((e,i)=>{const r=()=>{n.removeEventListener("complete",s),n.removeEventListener("error",l),n.removeEventListener("abort",l)},s=()=>{e(),r()},l=()=>{i(n.error||new DOMException("AbortError","AbortError")),r()};n.addEventListener("complete",s),n.addEventListener("error",l),n.addEventListener("abort",l)});f6.set(n,t)}(n),h6(n,function $de(){return kq||(kq=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}())?new Proxy(n,A6):n)}function s0(n){if(n instanceof IDBRequest)return function Wde(n){const t=new Promise((e,i)=>{const r=()=>{n.removeEventListener("success",s),n.removeEventListener("error",l)},s=()=>{e(s0(n.result)),r()},l=()=>{i(n.error),r()};n.addEventListener("success",s),n.addEventListener("error",l)});return FR.set(t,n),t}(n);if(p6.has(n))return p6.get(n);const t=Yde(n);return t!==n&&(p6.set(n,t),FR.set(t,n)),t}const m6=n=>FR.get(n),Jde=["get","getKey","getAll","getAllKeys","count"],eue=["put","add","delete","clear"],g6=new Map;function Oq(n,t){if(!(n instanceof IDBDatabase)||t in n||"string"!=typeof t)return;if(g6.get(t))return g6.get(t);const e=t.replace(/FromIndex$/,""),i=t!==e,r=eue.includes(e);if(!(e in(i?IDBIndex:IDBObjectStore).prototype)||!r&&!Jde.includes(e))return;const s=function(){var l=Mn(function*(u,...f){const p=this.transaction(u,r?"readwrite":"readonly");let m=p.store;return i&&(m=m.index(f.shift())),(yield Promise.all([m[e](...f),r&&p.done]))[0]});return function(f){return l.apply(this,arguments)}}();return g6.set(t,s),s}Pq(n=>({...n,get:(t,e,i)=>Oq(t,e)||n.get(t,e,i),has:(t,e)=>!!Oq(t,e)||n.has(t,e)}));const tue=["continue","continuePrimaryKey","advance"],Nq={},_6=new WeakMap,Lq=new WeakMap,nue={get(n,t){if(!tue.includes(t))return n[t];let e=Nq[t];return e||(e=Nq[t]=function(...i){_6.set(this,Lq.get(this)[t](...i))}),e}};function iue(){return b6.apply(this,arguments)}function b6(){return b6=function jde(n){return function(){return new v2(n.apply(this,arguments))}}(function*(...n){let t=this;if(t instanceof IDBCursor||(t=yield Bq(t.openCursor(...n))),!t)return;const e=new Proxy(t,nue);for(Lq.set(e,t),FR.set(e,m6(t));t;)yield e,t=yield Bq(_6.get(e)||t.continue()),_6.delete(e)}),b6.apply(this,arguments)}function Uq(n,t){return t===Symbol.asyncIterator&&h6(n,[IDBIndex,IDBObjectStore,IDBCursor])||"iterate"===t&&h6(n,[IDBIndex,IDBObjectStore])}Pq(n=>({...n,get:(t,e,i)=>Uq(t,e)?iue:n.get(t,e,i),has:(t,e)=>Uq(t,e)||n.has(t,e)}));const rue="CodeCharta",oue=1,y2="ccstate",Vq="id",v6=1001;function y6(){return(y6=Mn(function*(n){const e=(yield M6()).transaction(y2,"readwrite");yield e.store.put({[Vq]:v6,state:n}),yield e.done})).apply(this,arguments)}function w6(){return x6.apply(this,arguments)}function x6(){return(x6=Mn(function*(){return(yield(yield M6()).get(y2,v6))?.state||null})).apply(this,arguments)}function C6(){return(C6=Mn(function*(){const t=(yield M6()).transaction(y2,"readwrite");yield t.store.delete(v6),yield t.done})).apply(this,arguments)}function M6(){return E6.apply(this,arguments)}function E6(){return(E6=Mn(function*(){return function Zde(n,t,{blocked:e,upgrade:i,blocking:r,terminated:s}={}){const l=indexedDB.open(n,t),u=s0(l);return i&&l.addEventListener("upgradeneeded",f=>{i(s0(l.result),f.oldVersion,f.newVersion,s0(l.transaction),f)}),e&&l.addEventListener("blocked",f=>e(f.oldVersion,f.newVersion,f)),u.then(f=>{s&&f.addEventListener("close",()=>s()),r&&f.addEventListener("versionchange",p=>r(p.oldVersion,p.newVersion,p))}).catch(()=>{}),u}(rue,oue,{upgrade(n){n.objectStoreNames.contains(y2)||n.createObjectStore(y2,{keyPath:Vq})}})})).apply(this,arguments)}const lue=JSON.parse('{"projectName":"Sample Project with Edges","apiVersion":"1.2","fileChecksum":"valid-md5-sample1","nodes":[{"name":"root","type":"Folder","attributes":{},"children":[{"name":"sample1OnlyLeaf.scss","type":"File","attributes":{"rloc":400,"functions":10,"sonar_complexity":100,"pairingRate":32,"avgCommits":17},"link":"http://www.google.de"},{"name":"bigLeaf.ts","type":"File","attributes":{"rloc":100,"functions":10,"sonar_complexity":1,"pairingRate":77,"avgCommits":56},"link":"http://www.google.de"},{"name":"ParentLeaf","type":"Folder","attributes":{},"children":[{"name":"smallLeaf.html","type":"File","attributes":{"rloc":30,"functions":100,"sonar_complexity":100,"pairingRate":60,"avgCommits":51}},{"name":"otherSmallLeaf.ts","type":"File","attributes":{"rloc":70,"functions":1000,"sonar_complexity":10,"pairingRate":65,"avgCommits":22}}]}]}],"edges":[{"fromNodeName":"/root/bigLeaf.ts","toNodeName":"/root/ParentLeaf/smallLeaf.html","attributes":{"pairingRate":89,"avgCommits":34}},{"fromNodeName":"/root/sample1OnlyLeaf.scss","toNodeName":"/root/ParentLeaf/smallLeaf.html","attributes":{"pairingRate":32,"avgCommits":17}},{"fromNodeName":"/root/ParentLeaf/otherSmallLeaf.ts","toNodeName":"/root/bigLeaf.ts","attributes":{"pairingRate":65,"avgCommits":22}}],"attributeTypes":{"nodes":{"rloc":"absolute","functions":"absolute","sonar_complexity":"absolute","pairingRate":"relative"},"edges":{"pairingRate":"relative","avgCommits":"absolute"}}}'),cue=JSON.parse('{"projectName":"Sample Project","apiVersion":"1.2","fileChecksum":"valid-md5-sample2","nodes":[{"name":"root","type":"Folder","attributes":{},"children":[{"name":"bigLeaf.ts","type":"File","attributes":{"rloc":120,"functions":10,"sonar_complexity":1},"link":"http://www.google.de"},{"name":"ParentLeaf","type":"Folder","attributes":{},"children":[{"name":"smallLeaf.html","type":"File","attributes":{"rloc":30,"functions":101,"sonar_complexity":80}},{"name":"otherSmallLeaf.ts","type":"File","attributes":{"rloc":70,"functions":10,"sonar_complexity":100}},{"name":"sample2LeafMergedIn.kt","type":"File","attributes":{"rloc":600,"functions":10,"sonar_complexity":1},"link":"http://www.google.de"}]}]}],"attributeTypes":{"nodes":{"rloc":"absolute","functions":"absolute","sonar_complexity":"absolute"}}}');class jp{constructor(t,e,i){this.kind=t,this.value=e,this.error=i,this.hasValue="N"===t}observe(t){return Hq(this,t)}do(t,e,i){const{kind:r,value:s,error:l}=this;return"N"===r?t?.(s):"E"===r?e?.(l):i?.()}accept(t,e,i){var r;return(0,Yr.T)(null===(r=t)||void 0===r?void 0:r.next)?this.observe(t):this.do(t,e,i)}toObservable(){const{kind:t,value:e,error:i}=this,r="N"===t?Mo(e):"E"===t?function due(n,t){const e=(0,Yr.T)(n)?n:()=>n,i=r=>r.error(e());return new qr.c(t?r=>t.schedule(i,0,r):i)}(()=>i):"C"===t?mh:0;if(!r)throw new TypeError(`Unexpected notification kind ${t}`);return r}static createNext(t){return new jp("N",t)}static createError(t){return new jp("E",void 0,t)}static createComplete(){return jp.completeNotification}}function Hq(n,t){var e,i,r;const{kind:s,value:l,error:u}=n;if("string"!=typeof s)throw new TypeError('Invalid notification, missing "kind"');"N"===s?null===(e=t.next)||void 0===e||e.call(t,l):"E"===s?null===(i=t.error)||void 0===i||i.call(t,u):null===(r=t.complete)||void 0===r||r.call(t)}function Qq(n){return(0,Ir.N)((t,e)=>{let s,i=null,r=!1;i=t.subscribe((0,lr._)(e,void 0,void 0,l=>{s=Rr(n(l,Qq(n)(t))),i?(i.unsubscribe(),i=null,s.subscribe(e)):r=!0})),r&&(i.unsubscribe(),i=null,s.subscribe(e))})}function zq(n,t,e,i){return(0,Ir.N)((r,s)=>{let l;t&&"function"!=typeof t?({duration:e,element:l,connector:i}=t):l=t;const u=new Map,f=F=>{u.forEach(F),F(s)},p=F=>f(D=>D.error(F));let m=0,_=!1;const b=new lr.H(s,F=>{try{const D=n(F);let T=u.get(D);if(!T){u.set(D,T=i?i():new mi.B);const I=function w(F,D){const T=new qr.c(I=>{m++;const O=D.subscribe(I);return()=>{O.unsubscribe(),0==--m&&_&&b.unsubscribe()}});return T.key=F,T}(D,T);if(s.next(I),e){const O=(0,lr._)(T,()=>{T.complete(),O?.unsubscribe()},void 0,void 0,()=>u.delete(D));b.add(Rr(e(I)).subscribe(O))}}T.next(l?l(F):F)}catch(D){p(D)}},()=>f(F=>F.complete()),p,()=>u.clear(),()=>(_=!0,0===m));r.subscribe(b)})}function Gq(n,t){return t?e=>e.pipe(Gq((i,r)=>Rr(n(i,r)).pipe((0,Xn.T)((s,l)=>t(i,s,r,l))))):(0,Ir.N)((e,i)=>{let r=0,s=null,l=!1;e.subscribe((0,lr._)(i,u=>{s||(s=(0,lr._)(i,void 0,()=>{s=null,l&&i.complete()}),Rr(n(u,r++)).subscribe(s))},()=>{l=!0,!s&&i.complete()}))})}jp.completeNotification=new jp("C");const pue={dispatch:!0,functional:!1,useEffectsErrorHandler:!0},DR="__@ngrx/effects_create__";function vs(n,t={}){const e=t.functional?n:n(),i={...pue,...t};return Object.defineProperty(e,DR,{value:i}),e}function $q(n){return Object.getPrototypeOf(n)}function S6(n){return"function"==typeof n}function bue(n,t,e){const i=$q(n),s=i&&"Object"!==i.constructor.name?i.constructor.name:null,l=function jq(n){return function Aue(n){return Object.getOwnPropertyNames(n).filter(i=>!(!n[i]||!n[i].hasOwnProperty(DR))&&n[i][DR].hasOwnProperty("dispatch")).map(i=>({propertyName:i,...n[i][DR]}))}(n)}(n).map(({propertyName:u,dispatch:f,useEffectsErrorHandler:p})=>{const m="function"==typeof n[u]?n[u]():n[u],_=p?e(m,t):m;return!1===f?_.pipe(dq()):_.pipe(function hue(){return(0,Ir.N)((n,t)=>{n.subscribe((0,lr._)(t,e=>{t.next(jp.createNext(e))},()=>{t.next(jp.createComplete()),t.complete()},e=>{t.next(jp.createError(e)),t.complete()}))})}()).pipe((0,Xn.T)(w=>({effect:n[u],notification:w,propertyName:u,sourceName:s,sourceInstance:n})))});return ql(...l)}function qq(n,t,e=10){return n.pipe(Qq(i=>(t&&t.handleError(i),e<=1?n:qq(n,t,e-1))))}let $p=(()=>{class n extends qr.c{constructor(e){super(),e&&(this.source=e)}lift(e){const i=new n;return i.source=this,i.operator=e,i}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Sc))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function qp(...n){return hr(t=>n.some(e=>"string"==typeof e?e===t.type:e.type===t.type))}new o.nKC("@ngrx/effects Internal Root Guard"),new o.nKC("@ngrx/effects User Provided Effects"),new o.nKC("@ngrx/effects Internal Root Effects"),new o.nKC("@ngrx/effects Internal Root Effects Instances"),new o.nKC("@ngrx/effects Internal Feature Effects"),new o.nKC("@ngrx/effects Internal Feature Effects Instance Groups");const wue=new o.nKC("@ngrx/effects Effects Error Handler",{providedIn:"root",factory:()=>qq}),xue=bn("@ngrx/effects/init");function kue(n){return T6(n,"ngrxOnInitEffects")}function T6(n,t){return n&&t in n&&"function"==typeof n[t]}let Wq=(()=>{class n extends mi.B{constructor(e,i){super(),this.errorHandler=e,this.effectsErrorHandler=i}addEffects(e){this.next(e)}toActions(){return this.pipe(zq(e=>function mue(n){return!!n.constructor&&"Object"!==n.constructor.name&&"Function"!==n.constructor.name}(e)?$q(e):e),Xs(e=>e.pipe(zq(Rue))),Xs(e=>{const i=e.pipe(Gq(s=>function Pue(n,t){return e=>{const i=bue(e,n,t);return function Due(n){return T6(n,"ngrxOnRunEffects")}(e)?e.ngrxOnRunEffects(i):i}}(this.errorHandler,this.effectsErrorHandler)(s)),(0,Xn.T)(s=>(function Cue(n,t){if("N"===n.notification.kind){const e=n.notification.value;!function Mue(n){return"function"!=typeof n&&n&&n.type&&"string"==typeof n.type}(e)&&t.handleError(new Error(`Effect ${function Eue({propertyName:n,sourceInstance:t,sourceName:e}){const i="function"==typeof t[n];return e?`"${e}.${String(n)}${i?"()":""}"`:`"${String(n)}()"`}(n)} dispatched an invalid action: ${function Sue(n){try{return JSON.stringify(n)}catch{return n}}(e)}`))}}(s,this.errorHandler),s.notification)),hr(s=>"N"===s.kind&&null!=s.value),function fue(){return(0,Ir.N)((n,t)=>{n.subscribe((0,lr._)(t,e=>Hq(e,t)))})}());return ql(i,e.pipe(Ms(1),hr(kue),(0,Xn.T)(s=>s.ngrxOnInitEffects())))}))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(o.zcH),o.KVO(wue))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function Rue(n){return function Iue(n){return T6(n,"ngrxOnIdentifyEffects")}(n)?n.ngrxOnIdentifyEffects():""}let Xq=(()=>{class n{get isStarted(){return!!this.effectsSubscription}constructor(e,i){this.effectSources=e,this.store=i,this.effectsSubscription=null}start(){this.effectsSubscription||(this.effectsSubscription=this.effectSources.toActions().subscribe(this.store))}ngOnDestroy(){this.effectsSubscription&&(this.effectsSubscription.unsubscribe(),this.effectsSubscription=null)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Wq),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const Nue=[zp,Gp,Yh,Hp,wh];var Wc=function(n){return n.areaMetric="area",n.heightMetric="height",n.colorMetric="color",n.edgeMetric="edge",n.currentFilesAreSampleFiles="currentFilesAreSampleFiles",n}(Wc||{});let Lue=(()=>{class n{constructor(e,i,r,s){this.loadInitialFileService=e,this.actions$=i,this.state=r,this.store=s,this.saveMetricsInQueryParameters$=vs(()=>this.actions$.pipe(qp(...Nue),ul(this.store.select(ka)),(0,Xn.T)(l=>l[1].edgeMetricData&&l[1].edgeMetricData.length>0),x_(100),ro(l=>{this.updateMetricQueryParameters(l)})),{dispatch:!1})}updateMetricQueryParameters(e){const i=this.state.getValue(),{edgeMetric:r,heightMetric:s,colorMetric:l,areaMetric:u}=i.dynamicSettings;this.loadInitialFileService.checkFileQueryParameterPresent()&&(this.addOrUpdateQueryParameter(Wc.areaMetric,u),this.addOrUpdateQueryParameter(Wc.heightMetric,s),this.addOrUpdateQueryParameter(Wc.colorMetric,l),e?this.addOrUpdateQueryParameter(Wc.edgeMetric,r):this.deleteQueryParameterIfExists(Wc.edgeMetric),i.appStatus.currentFilesAreSampleFiles?this.addOrUpdateQueryParameter(Wc.currentFilesAreSampleFiles,!0):this.deleteQueryParameterIfExists(Wc.currentFilesAreSampleFiles))}addOrUpdateQueryParameter(e,i){const r=new URL(window.location.href),s=r.search.slice(1),l=s.length>0?s.split("&"):[],u=[];let f=!1;for(const p of l)p.split("=")[0]===e?(u.push(`${e}=${encodeURIComponent(i)}`),f=!0):u.push(p);f||u.push(`${e}=${encodeURIComponent(i)}`),r.search=u.join("&"),window.history.replaceState(null,"",r.toString())}deleteQueryParameterIfExists(e){const i=new URL(window.location.href),r=i.search.slice(1),s=r.length>0?r.split("&"):[],l=[];for(const u of s){const[f,p]=u.split("=");f!==e&&l.push(`${f}=${p}`)}i.search=l.join("&"),window.history.replaceState(null,"",i.toString())}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(P6),o.KVO($p),o.KVO(Vi),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function Kq(n,t){const e="object"==typeof t;return new Promise((i,r)=>{const s=new H8.Ms({next:l=>{i(l),s.unsubscribe()},error:r,complete:()=>{e?i(t.defaultValue):r(new t6)}});n.subscribe(s)})}class Yq{constructor(t){this.httpClient=t}getParameterByName(t){const e=t.replaceAll(/[[\]]/g,"\\$&"),r=new RegExp(`[?&]${e}(=([^&#]*)|&|#|$)`).exec(window.location.href);return r?r[2]?decodeURIComponent(r[2].replaceAll("+"," ")):"":null}getFileDataFromQueryParam(){var t=this;return Mn(function*(){const i=new URLSearchParams(window.location.search).getAll("file");if(0===i.length)throw new Error("Filename is missing");return Promise.all(i.map(function(){var r=Mn(function*(s){return t.getFileDataFromFile(s)});return function(s){return r.apply(this,arguments)}}()))})()}getFileDataFromFile(t){var e=this;return Mn(function*(){if(!t)throw new Error("Filename is missing");return t.endsWith(".gz")?e.getUnzippedFile(t):e.getFile(t)})()}getUnzippedFile(t){var e=this;return Mn(function*(){const i=yield Kq(e.httpClient.get(t,{responseType:"arraybuffer",observe:"response"}));if(i.status>=200&&i.status<300){const l=HI(N1(i.body,{to:"string"}));return{fileName:e.getFileName(t,l.projectName),fileSize:13,content:l}}throw new Error(`Could not load file "${t}"`)})()}getFile(t){var e=this;return Mn(function*(){const i=yield Kq(e.httpClient.get(t,{observe:"response"}));if(i.status>=200&&i.status<300){const s=HI(i.body);return{fileName:t=e.getFileName(t,s.projectName),fileSize:15,content:s}}throw new Error(`Could not load file "${t}"`)})()}getFileName(t,e){return e?.trim()||t.split("/").pop()}}function Zq(n){return(0,Ir.N)((t,e)=>{try{t.subscribe(e)}finally{e.add(n)}})}class BR{}class kR{}class kd{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?"string"==typeof t?this.lazyInit=()=>{this.headers=new Map,t.split("\n").forEach(e=>{const i=e.indexOf(":");if(i>0){const r=e.slice(0,i),s=r.toLowerCase(),l=e.slice(i+1).trim();this.maybeSetNormalizedName(r,s),this.headers.has(s)?this.headers.get(s).push(l):this.headers.set(s,[l])}})}:typeof Headers<"u"&&t instanceof Headers?(this.headers=new Map,t.forEach((e,i)=>{this.setHeaderEntries(i,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(t).forEach(([e,i])=>{this.setHeaderEntries(e,i)})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof kd?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new kd;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof kd?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let i=t.value;if("string"==typeof i&&(i=[i]),0===i.length)return;this.maybeSetNormalizedName(t.name,e);const r=("a"===t.op?this.headers.get(e):void 0)||[];r.push(...i),this.headers.set(e,r);break;case"d":const s=t.value;if(s){let l=this.headers.get(e);if(!l)return;l=l.filter(u=>-1===s.indexOf(u)),0===l.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,l)}else this.headers.delete(e),this.normalizedNames.delete(e)}}setHeaderEntries(t,e){const i=(Array.isArray(e)?e:[e]).map(s=>s.toString()),r=t.toLowerCase();this.headers.set(r,i),this.maybeSetNormalizedName(t,r)}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class Vue{encodeKey(t){return Jq(t)}encodeValue(t){return Jq(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const Que=/%(\d[a-f0-9])/gi,zue={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function Jq(n){return encodeURIComponent(n).replace(Que,(t,e)=>zue[e]??t)}function RR(n){return`${n}`}class a0{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new Vue,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function Hue(n,t){const e=new Map;return n.length>0&&n.replace(/^\?/,"").split("&").forEach(r=>{const s=r.indexOf("="),[l,u]=-1==s?[t.decodeKey(r),""]:[t.decodeKey(r.slice(0,s)),t.decodeValue(r.slice(s+1))],f=e.get(l)||[];f.push(u),e.set(l,f)}),e}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const i=t.fromObject[e],r=Array.isArray(i)?i.map(RR):[RR(i)];this.map.set(e,r)})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}appendAll(t){const e=[];return Object.keys(t).forEach(i=>{const r=t[i];Array.isArray(r)?r.forEach(s=>{e.push({param:i,value:s,op:"a"})}):e.push({param:i,value:r,op:"a"})}),this.clone(e)}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(i=>e+"="+this.encoder.encodeValue(i)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const e=new a0({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(t),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(RR(t.value)),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let i=this.map.get(t.param)||[];const r=i.indexOf(RR(t.value));-1!==r&&i.splice(r,1),i.length>0?this.map.set(t.param,i):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}class Gue{constructor(){this.map=new Map}set(t,e){return this.map.set(t,e),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}has(t){return this.map.has(t)}keys(){return this.map.keys()}}function eW(n){return typeof ArrayBuffer<"u"&&n instanceof ArrayBuffer}function tW(n){return typeof Blob<"u"&&n instanceof Blob}function nW(n){return typeof FormData<"u"&&n instanceof FormData}class w2{constructor(t,e,i,r){let s;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function jue(n){switch(n){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==i?i:null,s=r):s=i,s&&(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.context&&(this.context=s.context),s.params&&(this.params=s.params),this.transferCache=s.transferCache),this.headers??=new kd,this.context??=new Gue,this.params){const l=this.params.toString();if(0===l.length)this.urlWithParams=e;else{const u=e.indexOf("?");this.urlWithParams=e+(-1===u?"?":ub.set(w,t.setHeaders[w]),p)),t.setParams&&(m=Object.keys(t.setParams).reduce((b,w)=>b.set(w,t.setParams[w]),m)),new w2(e,i,l,{params:m,headers:p,context:_,reportProgress:f,responseType:r,withCredentials:u,transferCache:s})}}var l0=function(n){return n[n.Sent=0]="Sent",n[n.UploadProgress=1]="UploadProgress",n[n.ResponseHeader=2]="ResponseHeader",n[n.DownloadProgress=3]="DownloadProgress",n[n.Response=4]="Response",n[n.User=5]="User",n}(l0||{});class I6{constructor(t,e=200,i="OK"){this.headers=t.headers||new kd,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||i,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class PR extends I6{constructor(t={}){super(t),this.type=l0.ResponseHeader}clone(t={}){return new PR({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class dv extends I6{constructor(t={}){super(t),this.type=l0.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new dv({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class dx extends I6{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function F6(n,t){return{body:t,headers:n.headers,context:n.context,observe:n.observe,params:n.params,reportProgress:n.reportProgress,responseType:n.responseType,withCredentials:n.withCredentials,transferCache:n.transferCache}}let D6=(()=>{class n{constructor(e){this.handler=e}request(e,i,r={}){let s;if(e instanceof w2)s=e;else{let f,p;f=r.headers instanceof kd?r.headers:new kd(r.headers),r.params&&(p=r.params instanceof a0?r.params:new a0({fromObject:r.params})),s=new w2(e,i,void 0!==r.body?r.body:null,{headers:f,context:r.context,params:p,reportProgress:r.reportProgress,responseType:r.responseType||"json",withCredentials:r.withCredentials,transferCache:r.transferCache})}const l=Mo(s).pipe(function Uue(n,t){return(0,Yr.T)(t)?Xs(n,t,1):Xs(n,1)}(f=>this.handler.handle(f)));if(e instanceof w2||"events"===r.observe)return l;const u=l.pipe(hr(f=>f instanceof dv));switch(r.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return u.pipe((0,Xn.T)(f=>{if(null!==f.body&&!(f.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return f.body}));case"blob":return u.pipe((0,Xn.T)(f=>{if(null!==f.body&&!(f.body instanceof Blob))throw new Error("Response is not a Blob.");return f.body}));case"text":return u.pipe((0,Xn.T)(f=>{if(null!==f.body&&"string"!=typeof f.body)throw new Error("Response is not a string.");return f.body}));default:return u.pipe((0,Xn.T)(f=>f.body))}case"response":return u;default:throw new Error(`Unreachable: unhandled observe type ${r.observe}}`)}}delete(e,i={}){return this.request("DELETE",e,i)}get(e,i={}){return this.request("GET",e,i)}head(e,i={}){return this.request("HEAD",e,i)}jsonp(e,i){return this.request("JSONP",e,{params:(new a0).append(i,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,i={}){return this.request("OPTIONS",e,i)}patch(e,i,r={}){return this.request("PATCH",e,F6(r,i))}post(e,i,r={}){return this.request("POST",e,F6(r,i))}put(e,i,r={}){return this.request("PUT",e,F6(r,i))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(BR))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const Xue=/^\)\]\}',?\n/;function rW(n){if(n.url)return n.url;const t="X-Request-URL".toLocaleLowerCase();return n.headers.get(t)}let B6=(()=>{class n{constructor(){this.fetchImpl=(0,o.WQX)(Yue,{optional:!0})?.fetch??((...e)=>globalThis.fetch(...e)),this.ngZone=(0,o.WQX)(o.SKi)}handle(e){return new qr.c(i=>{const r=new AbortController;return this.doRequest(e,r.signal,i).then(k6,s=>i.error(new dx({error:s}))),()=>r.abort()})}doRequest(e,i,r){var s=this;return Mn(function*(){const l=s.createRequestInit(e);let u;try{const F=s.ngZone.runOutsideAngular(()=>s.fetchImpl(e.urlWithParams,{signal:i,...l}));(function Zue(n){n.then(k6,k6)})(F),r.next({type:l0.Sent}),u=yield F}catch(F){return void r.error(new dx({error:F,status:F.status??0,statusText:F.statusText,url:e.urlWithParams,headers:F.headers}))}const f=new kd(u.headers),p=u.statusText,m=rW(u)??e.urlWithParams;let _=u.status,b=null;if(e.reportProgress&&r.next(new PR({headers:f,status:_,statusText:p,url:m})),u.body){const F=u.headers.get("content-length"),D=[],T=u.body.getReader();let O,R,I=0;const P=typeof Zone<"u"&&Zone.current;yield s.ngZone.runOutsideAngular(Mn(function*(){for(;;){const{done:J,value:te}=yield T.read();if(J)break;if(D.push(te),I+=te.length,e.reportProgress){R="text"===e.responseType?(R??"")+(O??=new TextDecoder).decode(te,{stream:!0}):void 0;const ie=()=>r.next({type:l0.DownloadProgress,total:F?+F:void 0,loaded:I,partialText:R});P?P.run(ie):ie()}}}));const ee=s.concatChunks(D,I);try{const J=u.headers.get("Content-Type")??"";b=s.parseBody(e,ee,J)}catch(J){return void r.error(new dx({error:J,headers:new kd(u.headers),status:u.status,statusText:u.statusText,url:rW(u)??e.urlWithParams}))}}0===_&&(_=b?200:0),_>=200&&_<300?(r.next(new dv({body:b,headers:f,status:_,statusText:p,url:m})),r.complete()):r.error(new dx({error:b,headers:f,status:_,statusText:p,url:m}))})()}parseBody(e,i,r){switch(e.responseType){case"json":const s=(new TextDecoder).decode(i).replace(Xue,"");return""===s?null:JSON.parse(s);case"text":return(new TextDecoder).decode(i);case"blob":return new Blob([i],{type:r});case"arraybuffer":return i.buffer}}createRequestInit(e){const i={},r=e.withCredentials?"include":void 0;if(e.headers.forEach((s,l)=>i[s]=l.join(",")),e.headers.has("Accept")||(i.Accept="application/json, text/plain, */*"),!e.headers.has("Content-Type")){const s=e.detectContentTypeHeader();null!==s&&(i["Content-Type"]=s)}return{body:e.serializeBody(),method:e.method,headers:i,credentials:r}}concatChunks(e,i){const r=new Uint8Array(i);let s=0;for(const l of e)r.set(l,s),s+=l.length;return r}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();class Yue{}function k6(){}function oW(n,t){return t(n)}function Jue(n,t){return(e,i)=>t.intercept(e,{handle:r=>n(r,i)})}const the=new o.nKC(""),x2=new o.nKC(""),sW=new o.nKC(""),aW=new o.nKC("",{providedIn:"root",factory:()=>!0});function nhe(){let n=null;return(t,e)=>{null===n&&(n=((0,o.WQX)(the,{optional:!0})??[]).reduceRight(Jue,oW));const i=(0,o.WQX)(o.TgB);if((0,o.WQX)(aW)){const s=i.add();return n(t,e).pipe(Zq(()=>i.remove(s)))}return n(t,e)}}let lW=(()=>{class n extends BR{constructor(e,i){super(),this.backend=e,this.injector=i,this.chain=null,this.pendingTasks=(0,o.WQX)(o.TgB),this.contributeToStability=(0,o.WQX)(aW)}handle(e){if(null===this.chain){const i=Array.from(new Set([...this.injector.get(x2),...this.injector.get(sW,[])]));this.chain=i.reduceRight((r,s)=>function ehe(n,t,e){return(i,r)=>(0,o.N4e)(e,()=>t(i,s=>n(s,r)))}(r,s,this.injector),oW)}if(this.contributeToStability){const i=this.pendingTasks.add();return this.chain(e,r=>this.backend.handle(r)).pipe(Zq(()=>this.pendingTasks.remove(i)))}return this.chain(e,i=>this.backend.handle(i))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(kR),o.KVO(o.uvJ))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const ahe=/^\)\]\}',?\n/;let dW=(()=>{class n{constructor(e){this.xhrFactory=e}handle(e){if("JSONP"===e.method)throw new o.wOt(-2800,!1);const i=this.xhrFactory;return(i.\u0275loadImpl?sa(i.\u0275loadImpl()):Mo(null)).pipe(Jg(()=>new qr.c(s=>{const l=i.build();if(l.open(e.method,e.urlWithParams),e.withCredentials&&(l.withCredentials=!0),e.headers.forEach((D,T)=>l.setRequestHeader(D,T.join(","))),e.headers.has("Accept")||l.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){const D=e.detectContentTypeHeader();null!==D&&l.setRequestHeader("Content-Type",D)}if(e.responseType){const D=e.responseType.toLowerCase();l.responseType="json"!==D?D:"text"}const u=e.serializeBody();let f=null;const p=()=>{if(null!==f)return f;const D=l.statusText||"OK",T=new kd(l.getAllResponseHeaders()),I=function lhe(n){return"responseURL"in n&&n.responseURL?n.responseURL:/^X-Request-URL:/m.test(n.getAllResponseHeaders())?n.getResponseHeader("X-Request-URL"):null}(l)||e.url;return f=new PR({headers:T,status:l.status,statusText:D,url:I}),f},m=()=>{let{headers:D,status:T,statusText:I,url:O}=p(),R=null;204!==T&&(R=typeof l.response>"u"?l.responseText:l.response),0===T&&(T=R?200:0);let P=T>=200&&T<300;if("json"===e.responseType&&"string"==typeof R){const ee=R;R=R.replace(ahe,"");try{R=""!==R?JSON.parse(R):null}catch(J){R=ee,P&&(P=!1,R={error:J,text:R})}}P?(s.next(new dv({body:R,headers:D,status:T,statusText:I,url:O||void 0})),s.complete()):s.error(new dx({error:R,headers:D,status:T,statusText:I,url:O||void 0}))},_=D=>{const{url:T}=p(),I=new dx({error:D,status:l.status||0,statusText:l.statusText||"Unknown Error",url:T||void 0});s.error(I)};let b=!1;const w=D=>{b||(s.next(p()),b=!0);let T={type:l0.DownloadProgress,loaded:D.loaded};D.lengthComputable&&(T.total=D.total),"text"===e.responseType&&l.responseText&&(T.partialText=l.responseText),s.next(T)},F=D=>{let T={type:l0.UploadProgress,loaded:D.loaded};D.lengthComputable&&(T.total=D.total),s.next(T)};return l.addEventListener("load",m),l.addEventListener("error",_),l.addEventListener("timeout",_),l.addEventListener("abort",_),e.reportProgress&&(l.addEventListener("progress",w),null!==u&&l.upload&&l.upload.addEventListener("progress",F)),l.send(u),s.next({type:l0.Sent}),()=>{l.removeEventListener("error",_),l.removeEventListener("abort",_),l.removeEventListener("load",m),l.removeEventListener("timeout",_),e.reportProgress&&(l.removeEventListener("progress",w),null!==u&&l.upload&&l.upload.removeEventListener("progress",F)),l.readyState!==l.DONE&&l.abort()}})))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(rl))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const R6=new o.nKC(""),uW=new o.nKC("",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),hW=new o.nKC("",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class fW{}let uhe=(()=>{class n{constructor(e,i,r){this.doc=e,this.platform=i,this.cookieName=r,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=eo(e,this.cookieName),this.lastCookieString=e),this.lastToken}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(o.Agw),o.KVO(uW))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function hhe(n,t){const e=n.url.toLowerCase();if(!(0,o.WQX)(R6)||"GET"===n.method||"HEAD"===n.method||e.startsWith("http://")||e.startsWith("https://"))return t(n);const i=(0,o.WQX)(fW).getToken(),r=(0,o.WQX)(hW);return null!=i&&!n.headers.has(r)&&(n=n.clone({headers:n.headers.set(r,i)})),t(n)}var c0=function(n){return n[n.Interceptors=0]="Interceptors",n[n.LegacyInterceptors=1]="LegacyInterceptors",n[n.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",n[n.NoXsrfProtection=3]="NoXsrfProtection",n[n.JsonpSupport=4]="JsonpSupport",n[n.RequestsMadeViaParent=5]="RequestsMadeViaParent",n[n.Fetch=6]="Fetch",n}(c0||{});const pW=new o.nKC(""),NR={fileName:"sample1.cc.json",fileSize:3072,content:lue},LR={fileName:"sample2.cc.json",fileSize:2048,content:cue};let P6=(()=>{class n{constructor(e,i,r,s,l){this.store=e,this.state=i,this.dialog=r,this.loadFileService=s,this.httpClient=l,this.urlUtils=new Yq(this.httpClient)}loadFilesOrSampleFiles(){var e=this;return Mn(function*(){yield e.checkFileQueryParameterPresent()?e.loadFilesFromQueryParams():e.loadFilesFromIndexedDB()})()}checkFileQueryParameterPresent(){return!!this.urlUtils.getParameterByName("file")}loadFilesFromQueryParams(){var e=this;return Mn(function*(){try{const i=yield e.urlUtils.getFileDataFromQueryParam(),r=yield w6();if(!r)return e.loadFileService.loadFiles(i),void e.setRenderStateFromUrl();const s=r.files,l=s.map(p=>Wo(p.file)),u=i.map(p=>p.content.fileChecksum),f=l.map(p=>p.content.fileChecksum);Vu(u)===Vu(f)?e.applySettingsAndFilesFromSavedState(s,r,l):e.applySettingsFromSavedState(r,i),e.setRenderStateFromUrl()}catch(i){yield e.handleErrorLoadFilesFromQueryParams(i)}finally{e.setMetricsFromUrl(),e.setCurrentFilesAreSampleFilesFromUrl()}})()}applySettingsAndFilesFromSavedState(e,i,r){const s=[];i.appSettings.resetCameraIfNewFileIsLoaded||this.store.dispatch({type:"StartWithGlobalOption:resetCameraIfNewFileIsLoadedSetToFalse"});const l=this.applyAppSettings(i.appSettings);s.push(...l),this.loadFileService.loadFiles(r),this.store.dispatch(S({value:e}));const u=this.applyFileSettings(i.fileSettings);s.push(...u);const f=this.applyDynamicSettings(i.dynamicSettings);s.push(...f),s.length>0&&this.showErrorDialogForMissingProperties(s)}applySettingsFromSavedState(e,i){this.applyAllSettings(e),this.loadFileService.loadFiles(i)}showErrorDialogForMissingProperties(e){const r=this.buildMissingPropertiesMessage(e);this.showErrorDialog("The previous state could not be fully restored after loading the page. The following properties were not restored.",r)}handleErrorLoadFilesFromQueryParams(e){var i=this;return Mn(function*(){if(e.message!==tp){const r="File(s) could not be loaded from the given file URL parameter. Loaded sample files instead.",s=i.createTitleUrlErrorDialog(e);i.showErrorDialog(r,s)}yield i.loadSampleFiles()})()}loadFilesFromIndexedDB(){var e=this;return Mn(function*(){try{const i=yield w6();if(!i)return void(yield e.loadSampleFiles());const r=i.files,s=r.map(l=>Wo(l.file));e.applySettingsAndFilesFromSavedState(r,i,s)}catch(i){yield e.handleErrorLoadFilesFromIndexedDB(i)}})()}handleErrorLoadFilesFromIndexedDB(e){var i=this;return Mn(function*(){e.message!==tp&&i.showErrorDialog("Previously loaded files and settings could not be restored. Loaded sample files instead.",e.message),yield i.loadSampleFiles()})()}applyAllSettings(e){var i=this;return Mn(function*(){const r=e.fileSettings,s=e.dynamicSettings,l=e.appSettings,u=[];if(r){const f=i.applyFileSettings(r);u.push(...f)}if(s){const f=i.applyDynamicSettings(s);u.push(...f)}if(l){const f=i.applyAppSettings(l);u.push(...f)}u.length>0&&i.showErrorDialogForMissingProperties(u)})()}applyFileSettings(e){const i=this.state.getValue().fileSettings,r=[];for(const[s,l]of Object.entries(i))s in e?Vu(l)!==Vu(e[s])&&this.mapFileSettingToAction(s,e[s]):r.push(s);return r}applyDynamicSettings(e){const i=this.state.getValue().dynamicSettings,r=[];for(const[s,l]of Object.entries(i))s in e?Vu(l)!==Vu(e[s])&&this.mapDynamicSettingToAction(s,e[s]):r.push(s);return r}applyAppSettings(e){const i=this.state.getValue().appSettings,r=[];for(const[s,l]of Object.entries(i))s in e?Vu(l)!==Vu(e[s])&&this.mapAppSettingToAction(s,e[s]):r.push(s);return r}mapFileSettingToAction(e,i){switch(e){case"attributeTypes":this.store.dispatch(s6({value:i}));break;case"attributeDescriptors":this.store.dispatch(o6({value:i}));break;case"blacklist":this.store.dispatch(l6({value:i}));break;case"edges":this.store.dispatch(u6({value:i}));break;case"markedPackages":this.store.dispatch(TR({value:i}));break;default:throw new Error(`Unhandled key: ${e}`)}}mapDynamicSettingToAction(e,i){switch(e){case"areaMetric":this.store.dispatch(Hp({value:i}));break;case"heightMetric":this.store.dispatch(Gp({value:i}));break;case"edgeMetric":this.store.dispatch(zp({value:i}));break;case"colorMetric":this.store.dispatch(Yh({value:i}));break;case"colorMode":this.store.dispatch(sx({value:i}));break;case"sortingOption":this.store.dispatch(MR({value:i}));break;case"colorRange":this.store.dispatch(Qp({value:i}));break;case"distributionMetric":this.store.dispatch(g2({value:i}));break;case"focusedNodePath":this.store.dispatch(wR({value:i}));break;case"searchPattern":this.store.dispatch(o0({value:i}));break;case"margin":this.store.dispatch(cx({value:i}));break;default:throw new Error(`Unhandled key: ${e}`)}}mapAppSettingToAction(e,i){switch(e){case"amountOfTopLabels":case"amountOfEdgePreviews":this.store.dispatch(r0({value:i}));break;case"edgeHeight":this.store.dispatch(ax({value:i}));break;case"scaling":this.store.dispatch(lx({value:i}));break;case"hideFlatBuildings":this.store.dispatch(a2({value:i}));break;case"invertHeight":this.store.dispatch(c2({value:i}));break;case"invertArea":this.store.dispatch(l2({value:i}));break;case"isWhiteBackground":this.store.dispatch(d2({value:i}));break;case"mapColors":this.store.dispatch(Lp({value:i}));break;case"isPresentationMode":this.store.dispatch(vR({value:i}));break;case"showOnlyBuildingsWithEdges":this.store.dispatch(m2({value:i}));break;case"isEdgeMetricVisible":this.store.dispatch(n6({value:i}));break;case"resetCameraIfNewFileIsLoaded":this.store.dispatch(yR({value:i}));break;case"isLoadingMap":this.store.dispatch(uh({value:i}));break;case"isLoadingFile":this.store.dispatch(Ic({value:i}));break;case"sortingOrderAscending":case"isSearchPanelPinned":break;case"showMetricLabelNameValue":this.store.dispatch(p2({value:i}));break;case"showMetricLabelNodeName":this.store.dispatch(A2({value:i}));break;case"layoutAlgorithm":this.store.dispatch(u2({value:i}));break;case"maxTreeMapFiles":this.store.dispatch(h2({value:i}));break;case"sharpnessMode":this.store.dispatch(f2({value:i}));break;case"experimentalFeaturesEnabled":this.store.dispatch(_R({value:i}));break;case"screenshotToClipboardEnabled":this.store.dispatch(gR({value:i}));break;case"colorLabels":this.store.dispatch(o2({value:i}));break;case"isColorMetricLinkedToHeightMetric":this.store.dispatch(i6({value:i}));break;case"enableFloorLabels":this.store.dispatch(s2({value:i}));break;default:throw new Error(`Unhandled key: ${e}`)}}buildMissingPropertiesMessage(e){return`${LI(' ',e)}`}loadSampleFiles(){var e=this;return Mn(function*(){try{const i=yield w6();i&&e.applyAllSettings(i),e.loadFileService.loadFiles([NR,LR])}catch{e.loadFileService.loadFiles([NR,LR])}e.store.dispatch(wh({value:!0}))})()}showErrorDialog(e,i){this.dialog.open(lu,{data:{title:e,message:i}})}createTitleUrlErrorDialog(e){let i="Error";return e.message?i+=` (${e.message})`:e.statusText&&e.status&&(i+=` (${e.status}: ${e.statusText})`),i}setMetricsFromUrl(){const e=this.urlUtils.getParameterByName(Wc.areaMetric),i=this.urlUtils.getParameterByName(Wc.heightMetric),r=this.urlUtils.getParameterByName(Wc.colorMetric),s=this.urlUtils.getParameterByName(Wc.edgeMetric),l=this.state.getValue(),u=ka(l).nodeMetricData,f=ka(l).edgeMetricData;if(!u)return;const p=new Set(u.map(_=>_.name)),m=f.map(_=>_.name);e&&p.has(e)&&this.store.dispatch(Hp({value:e})),i&&p.has(i)&&this.store.dispatch(Gp({value:i})),r&&p.has(r)&&this.store.dispatch(Yh({value:r})),s&&m.includes(s)&&this.store.dispatch(zp({value:s}))}setRenderStateFromUrl(){const e=this.urlUtils.getParameterByName("mode"),i=function Mre(n){return n.map(t=>t.file)}(this.state.getValue().files);"Delta"===e&&i.length>=2&&this.store.dispatch(tt({referenceFile:i[0],comparisonFile:i[1]}))}setCurrentFilesAreSampleFilesFromUrl(){const e=this.urlUtils.getParameterByName(Wc.currentFilesAreSampleFiles);e&&"true"===e&&this.store.dispatch(wh({value:!0}))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(Es),o.KVO(np),o.KVO(D6))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const hv=sn($c,n=>n.areaMetric),C2=sn($c,n=>n.heightMetric),She=sn(wn,n=>fG(n)),wW=sn(ka,hv,Hg,C2,(n,t,e,i)=>((n,t)=>t.every(e=>((n,t)=>n.some(e=>e.name===t))(n,e)))(n.nodeMetricData,[t,e,i])),The=sn($c,n=>(n=>Object.entries(n).every(([t,e])=>((n,t)=>"edgeMetric"===n||null!==t&&("object"!=typeof t||Object.values(t).every(e=>null!==e)))(t,e)))(n)),Ihe=(sn(ka,She,wW,The,(n,t,e,i)=>!(null===n.nodeMetricData||!t||!e||!i)),n=>n.some(t=>"rloc"===t.name)?"rloc":"unary"),Fhe=["rloc","real_lines_of_code","loc","lines_of_code","lines","statements","functions"],xW=["complexity","mcc","cognitive_complexity","sonar_complexity","sonar_cognitive_complexity","max_nesting_level","indentation_level"];function Dhe(n){return n.some(t=>t.maxValue>0)}let Rhe=(()=>{class n{constructor(e){this.store=e,this.resetChosenDistributionMetric$=vs(()=>this.store.select(ka).pipe((0,Xn.T)(i=>i.nodeMetricData),hr(Dhe),ul(this.store.select(wW)),hr(([,i])=>!i),ro(([i])=>{CW(this.store,i)})),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function CW(n,t){n.dispatch(g2({value:Ihe(t)}));let[e,i,r]=function khe(n){const t=[],e={AreaMetric:Fhe,HeightMetric:xW,ColorMetric:xW},i=new Set(n.map(r=>r.name));for(const r in e)for(const s of e[r])if(i.has(s)){t.push(s);break}return t}(t);(!e||!i||!r)&&([e,i,r]=function Bhe(n,t){const e=[];let i;for(const r of n)if(r.maxValue&&(e.push(r.name),i=r.name,0==--t))return e;if(!i)throw new Error("there are no metrics available");for(;t-- >0;)e.push(i);return e}(t,3)),n.dispatch(Hp({value:e})),n.dispatch(Gp({value:i})),n.dispatch(Yh({value:r}))}const O6={positive:!1,negative:!1,neutral:!1},Phe=Di(O6,yn(o2,B3(O6))),Ohe=Di(!0,yn(A2,Mr(!0))),L6=!1,Nhe=Di(L6,yn(p2,Mr(L6))),MW=bn("SET_SORTING_ORDER_ASCENDING",{_as:"props",_p:void 0}),U6=bn("TOGGLE_SORTING_ORDER_ASCENDING"),Lhe=Di(!0,yn(MW,Mr(!0)),yn(U6,n=>!n)),Uhe=Di(!0,yn(Ic,Mr(!0))),Vhe=Di(!0,yn(uh,Mr(!0))),Hhe=Di(!0,yn(yR,Mr(!0))),G6=!1,Qhe=Di(G6,yn(m2,Mr(G6))),j6=!1,zhe=Di(j6,yn(d2,Mr(j6))),$6=!1,Ghe=Di($6,yn(c2,Mr($6))),q6=!1,jhe=Di(q6,yn(a2,Mr(q6))),UR={x:1,y:1,z:1},$he=Di(UR,yn(lx,B3(UR))),qhe=Di(4,yn(ax,Mr(4))),M2=bn("SET_AMOUNT_OF_EDGE_PREVIEWS",{_as:"props",_p:void 0}),Whe=Di(1,yn(M2,Mr(1))),Xhe=Di(1,yn(r0,Mr(1))),W6=!1,Khe=Di(W6,yn(vR,Mr(W6))),X6=!1,Yhe=Di(X6,yn(_R,Mr(X6))),K6=za.SquarifiedTreeMap,Zhe=Di(K6,yn(u2,Mr(K6))),Jhe=Di(100,yn(h2,Mr(100))),Z6=gd.Standard,efe=Di(Z6,yn(f2,Mr(Z6))),J6=!1,tfe=Di(J6,yn(gR,Mr(J6))),e7=!1,nfe=Di(e7,yn(l2,Mr(e7))),ife=Di(!0,yn(n6,(n,t)=>t.value),yn(bR,n=>!n)),rfe=Di(!1,yn(i6,(n,t)=>t.value),yn(r6,n=>!n)),TW=bn("SET_IS_FILE_EXPLORER_PINNED",{_as:"props",_p:void 0}),t7=bn("TOGGLE_IS_FILE_EXPLORER_PINNED"),n7=!1,afe=Ea({colorLabels:Phe,showMetricLabelNodeName:Ohe,showMetricLabelNameValue:Nhe,sortingOrderAscending:Lhe,isSearchPanelPinned:Di(n7,yn(TW,Mr(n7)),yn(t7,n=>!n)),isLoadingFile:Uhe,isLoadingMap:Vhe,mapColors:hoe,resetCameraIfNewFileIsLoaded:Hhe,showOnlyBuildingsWithEdges:Qhe,isEdgeMetricVisible:ife,isWhiteBackground:zhe,invertHeight:Ghe,invertArea:nfe,hideFlatBuildings:jhe,scaling:$he,edgeHeight:qhe,amountOfEdgePreviews:Whe,amountOfTopLabels:Xhe,isPresentationMode:Khe,experimentalFeaturesEnabled:Yhe,screenshotToClipboardEnabled:tfe,layoutAlgorithm:Zhe,maxTreeMapFiles:Jhe,sharpnessMode:efe,isColorMetricLinkedToHeightMetric:rfe,enableFloorLabels:Di(!0,yn(s2,Mr(!0)))}),lfe={colorLabels:O6,showMetricLabelNodeName:!0,showMetricLabelNameValue:L6,sortingOrderAscending:!0,isSearchPanelPinned:n7,isLoadingFile:!0,isLoadingMap:!0,mapColors:$h,resetCameraIfNewFileIsLoaded:!0,showOnlyBuildingsWithEdges:G6,isEdgeMetricVisible:!0,isWhiteBackground:j6,invertHeight:$6,invertArea:e7,hideFlatBuildings:q6,scaling:UR,edgeHeight:4,amountOfEdgePreviews:1,amountOfTopLabels:1,isPresentationMode:W6,experimentalFeaturesEnabled:X6,screenshotToClipboardEnabled:J6,layoutAlgorithm:K6,maxTreeMapFiles:100,sharpnessMode:Z6,isColorMetricLinkedToHeightMetric:!1,enableFloorLabels:!0},cfe=(n,{path:t,color:e})=>{const i=PU(n,t);(!i||i.color!==e)&&n.set(t,{path:t,color:e});for(const[r,s]of n)if(s.path===t)s.color!==e&&n.delete(r);else if(s.path.startsWith(t)){const l=PU(n,s.path);l&&l.color===s.color&&n.delete(r)}},IW=(n,t)=>{const e=n.findIndex(r=>r.path===t);if(-1!==e)return e;let i=-1;for(let r=0;r{const e=new Map(n.map(i=>[i.path,i]));for(const i of t.packages)cfe(e,i);return[...e.values()]}),yn(IR,(n,t)=>{const e=IW(n,t.path);return-1!==e?xG(n,e):n})),o7=[],ufe=Di(o7,yn(u6,Mr(o7)),yn(Iq,(n,t)=>CG(n,t.edge)),yn(Fq,(n,t)=>wG(n,t.edge))),s7={nodes:{},edges:{}},hfe=Di(s7,yn(s6,Mr(s7)),yn(a6,(n,t)=>({...n,[t.category]:{...n[t.category],[t.name]:t.attributeType}}))),a7=[],ffe=Di(a7,yn(l6,Mr(a7)),yn(c6,(n,t)=>CG(n,t.item)),yn(ER,(n,t)=>function Hre(n,t){const e=[...n];for(const i of t)MG(e,i)||e.push(i);return e}(n,t.items)),yn(SR,(n,t)=>wG(n,t.item))),l7={},Afe=Ea({markedPackages:dfe,edges:ufe,attributeTypes:hfe,attributeDescriptors:Di(l7,yn(o6,Mr(l7))),blacklist:ffe}),mfe={markedPackages:r7,edges:o7,attributeTypes:s7,attributeDescriptors:l7,blacklist:a7},c7=Gl.weightedGradient,gfe=Di(c7,yn(sx,Mr(c7))),d7=_d.NAME,h7={from:0,to:0},FW=[],Tfe=Ea({colorMode:gfe,sortingOption:Di(d7,yn(MR,Mr(d7))),edgeMetric:Di(null,yn(zp,Mr(null))),colorRange:Di(h7,yn(Qp,B3(h7))),margin:Di(50,yn(cx,Mr(50))),searchPattern:Di("",yn(o0,Mr("")),yn($,()=>"")),focusedNodePath:Di(FW,yn(wR,(n,t)=>[...t.value]),yn(_2,()=>[]),yn(xR,(n,t)=>t.value===Fa.rootPath?n:[t.value,...n]),yn(CR,n=>n.slice(1))),heightMetric:Di(null,yn(Gp,Mr(null))),distributionMetric:Di(null,yn(g2,Mr(null))),colorMetric:Di(null,yn(Yh,Mr(null))),areaMetric:Di(null,yn(Hp,Mr(null)))}),Ife={colorMode:c7,sortingOption:d7,edgeMetric:null,colorRange:h7,margin:50,searchPattern:"",focusedNodePath:FW,heightMetric:null,distributionMetric:null,colorMetric:null,areaMetric:null},g7=[],Ffe=Di(g7,yn(S,(n,t)=>function Dfe(n,t){return void 0===t?g7:[...t].sort((e,i)=>DW(e.file,i.file)?1:-1)}(0,t.value)),yn(E,(n,t)=>function Bfe(n,t){const e=n.findIndex(r=>DW(r.file,t)),i={file:t,selectedAs:At.None};return-1===e?[...n,i]:[...n.slice(0,e),i,...n.slice(e)]}(n,t.file)),yn(N,(n,t)=>function kfe(n,t){if(0===t.length)return n;const e=n.filter(r=>!t.includes(r.file.fileMeta.fileName));return e.some(r=>r.selectedAs===At.Partial)||(e[0]={...e[0],selectedAs:At.Partial}),e}(n,t.fileNames)),yn(tt,(n,t)=>function Rfe(n,t,e){return n.map(i=>E3(i.file,t)?{...i,selectedAs:At.Reference}:e&&E3(i.file,e)?{...i,selectedAs:At.Comparison}:{...i,selectedAs:At.None})}(n,t.referenceFile,t.comparisonFile)),yn(Xe,(n,t)=>function Pfe(n,t){return n.map(e=>E3(e.file,t)?{...e,selectedAs:At.Reference}:e.selectedAs===At.Comparison?e:{...e,selectedAs:At.None})}(n,t.file)),yn(ge,(n,t)=>function Ofe(n,t){return n.map(e=>e.file===t?{...e,selectedAs:At.Comparison}:e.selectedAs===At.Reference?e:{...e,selectedAs:At.None})}(n,t.file)),yn(xe,n=>function Nfe(n){return n.map(t=>t.selectedAs===At.Reference?{...t,selectedAs:At.Comparison}:t.selectedAs===At.Comparison?{...t,selectedAs:At.Reference}:t)}(n)),yn($,(n,t)=>BW(n,t.files.map(e=>e.fileMeta.fileName))),yn(se,(n,t)=>BW(n,t.fileNames)));function DW(n,t){return n.fileMeta.fileName>t.fileMeta.fileName||!(n.fileMeta.fileName=t.fileMeta.fileChecksum}function BW(n,t){return n.map(e=>({...e,selectedAs:t.includes(e.file.fileMeta.fileName)?At.Partial:At.None}))}const ux=bn("SET_HOVERED_NODE_ID",{_as:"props",_p:void 0}),Lfe=Di(null,yn(ux,Mr(null))),hx=bn("SET_RIGHT_CLICKED_NODE_DATA",{_as:"props",_p:void 0}),Ufe=Di(null,yn(hx,(n,t)=>t.value)),Vfe=Di(null,yn(zU,Mr(null))),Gfe={fileSettings:Afe,appSettings:afe,dynamicSettings:Tfe,files:Ffe,appStatus:Ea({currentFilesAreSampleFiles:Di(!1,yn(wh,(n,t)=>t.value)),hoveredNodeId:Lfe,selectedBuildingId:Vfe,rightClickedNodeData:Ufe})},PW={fileSettings:mfe,appSettings:lfe,dynamicSettings:Ife,files:g7,appStatus:{currentFilesAreSampleFiles:!1,hoveredNodeId:null,selectedBuildingId:null,rightClickedNodeData:null}},$fe=new Set(["fileSettings.attributeTypes","fileSettings.attributeDescriptors","fileSettings.blacklist","fileSettings.edges","fileSettings.markedPackages","dynamicSettings.focusedNodePath","files"]);function OW(n,t,e=[]){for(const[i,r]of Object.entries(t)){if(null==r||!qfe(n,i))continue;const s=[...e,i],l=s.join(".");n[i]="object"!=typeof r||$fe.has(l)?r:OW({...n[i]},r,s)}return n}function qfe(n,t){return Object.prototype.hasOwnProperty.call(n,t)}let Wfe=(()=>{class n{constructor(e,i,r,s){this.store=e,this.httpClient=i,this.loadFileService=r,this.loadInitialFileService=s,this.urlUtils=new Yq(this.httpClient)}resetMap(){var e=this;return Mn(function*(){if(yield function aue(){return C6.apply(this,arguments)}(),e.store.dispatch(hu({value:PW})),e.loadInitialFileService.checkFileQueryParameterPresent())try{const r=yield e.urlUtils.getFileDataFromQueryParam();e.loadFileService.loadFiles(r),e.loadInitialFileService.setRenderStateFromUrl()}catch{e.loadFileService.loadFiles([NR,LR])}else e.loadFileService.loadFiles([NR,LR]);e.resetMetrics()})()}resetMetrics(){this.store.select(ka).pipe(r2(),ro(e=>{CW(this.store,e.nodeMetricData)})).subscribe()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(D6),o.rXU(np),o.rXU(P6))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-confirm-reset-map-dialog"]],standalone:!0,features:[o.aNF],decls:12,vars:0,consts:[["xmlns","http://www.w3.org/1999/html",1,"header"],[1,"dialog-content"],["mat-button","","mat-dialog-close",""],["mat-button","","mat-dialog-close","","cdkFocusInitial","",3,"click"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0)(1,"h2"),o.EFF(2,"Confirm reset map to default"),o.k0s()(),o.j41(3,"mat-dialog-content")(4,"div",1)(5,"p"),o.EFF(6,"Uploaded maps, selected metrics and settings are reset to default"),o.k0s()()(),o.j41(7,"mat-dialog-actions")(8,"button",2),o.EFF(9,"No"),o.k0s(),o.j41(10,"button",3),o.bIt("click",function(){return r.resetMap()}),o.EFF(11,"Yes"),o.k0s()())},dependencies:[Yg,Al,Zl,ns,Ta],encapsulation:2})}}return n})(),Xfe=(()=>{class n{constructor(e){this.dialog=e}showConfirmResetStateDialog(){this.dialog.open(Wfe,{panelClass:"cc-confirm-reset-map-dialog"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-reset-map-button"]],standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[["title","Reset map to default",3,"click","icon"]],template:function(i,r){1&i&&(o.j41(0,"cc-action-icon",0),o.bIt("click",function(){return r.showConfirmResetStateDialog()}),o.k0s()),2&i&&o.Y8G("icon","fa fa-undo")},dependencies:[pl],encapsulation:2})}}return n})();const Wp=sn(wn,n=>dc(n));function NW(){return(0,Ir.N)((n,t)=>{let e,i=!1;n.subscribe((0,lr._)(t,r=>{const s=e;e=r,i&&t.next([s,r]),i=!0}))})}let Kfe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.lastSetFilesOfPreviousMode=[],this.subscription=this.store.select(wn).pipe(NW(),hr(([r,s])=>dc(r)!==dc(s)||0===s.length),ro(([r,s])=>{this.lastSetFilesOfPreviousMode=0===s.length?s:r})).subscribe()}ngOnDestroy(){this.subscription.unsubscribe()}toggle(){if(0===this.lastSetFilesOfPreviousMode.length||dc(this.lastSetFilesOfPreviousMode)){const i=wn(this.state.getValue());this.lastSetFilesOfPreviousMode=this.filterNoneExisting(i,this.lastSetFilesOfPreviousMode);const r=this.lastSetFilesOfPreviousMode.find(l=>l.selectedAs===At.Reference)??i.find(l=>l.selectedAs===At.Partial),s=this.lastSetFilesOfPreviousMode.find(l=>l.selectedAs===At.Comparison);this.store.dispatch(tt({referenceFile:r.file,comparisonFile:s?.file}))}else this.store.dispatch(S({value:this.lastSetFilesOfPreviousMode}))}filterNoneExisting(e,i){return i.filter(r=>e.find(s=>E3(s.file,r.file)))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),Yfe=(()=>{class n{constructor(e,i){this.store=e,this.fileSelectionModeService=i,this.isDeltaState$=this.store.select(Wp)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Kfe))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-panel-state-buttons"]],standalone:!0,features:[o.aNF],decls:10,vars:14,consts:[["mat-button","",1,"state-selector-button","left",3,"click","disabled"],[1,"text"],["mat-button","",1,"state-selector-button","right",3,"click","disabled"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"async"),o.nI1(2,"async"),o.bIt("click",function(){return r.fileSelectionModeService.toggle()}),o.j41(3,"span",1),o.EFF(4,"Standard"),o.k0s()(),o.j41(5,"button",2),o.nI1(6,"async"),o.nI1(7,"async"),o.bIt("click",function(){return r.fileSelectionModeService.toggle()}),o.j41(8,"span",1),o.EFF(9,"Delta"),o.k0s()()),2&i&&(o.AVh("current",!o.bMT(1,6,r.isDeltaState$)),o.Y8G("disabled",!o.bMT(2,8,r.isDeltaState$)),o.R7$(5),o.AVh("current",o.bMT(6,10,r.isDeltaState$)),o.Y8G("disabled",o.bMT(7,12,r.isDeltaState$)))},dependencies:[ns,zn],styles:[".state-selector-button[_ngcontent-%COMP%]{height:24px;width:66px;margin:0;padding:0;background-color:#fff;font-size:10pt}.state-selector-button[_ngcontent-%COMP%]:hover{background-color:#e6e6e6f5}.state-selector-button.left[_ngcontent-%COMP%]{border-radius:5px 0 0 5px}.state-selector-button.right[_ngcontent-%COMP%]{border-radius:0 5px 5px 0}.state-selector-button.current[_ngcontent-%COMP%]{background-color:#1b9cfc;color:#fff}.state-selector-button.current[_ngcontent-%COMP%]:hover{background-color:#1b9cfc}"]})}}return n})(),v7=(()=>{class n{transform(e){return uu.withoutCCExtension(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"removeExtension",type:n,pure:!0,standalone:!0})}}return n})();function Zfe(n,t){1&n&&o.nrm(0,"i",1)}function Jfe(n,t){1&n&&o.nrm(0,"i",2)}let epe=(()=>{class n{constructor(){this.removeOrAddFile=new o.bkB}onRemoveOrAddFile(e,i){this.removeOrAddFile.emit(e),i.stopPropagation(),i.preventDefault()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-remove-file-button"]],inputs:{filename:"filename",isRemoved:"isRemoved"},outputs:{removeOrAddFile:"removeOrAddFile"},standalone:!0,features:[o.aNF],decls:3,vars:2,consts:[[3,"click","title"],[1,"fa","fa-undo"],[1,"fa","fa-trash","delete-symbol"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(l){return r.onRemoveOrAddFile(r.filename,l)}),o.DNE(1,Zfe,1,0,"i",1)(2,Jfe,1,0,"i",2),o.k0s()),2&i&&(o.FS9("title",r.isRemoved?"Undo remove map":"Remove map"),o.R7$(),o.vxM(r.isRemoved?1:2))},styles:["button[_ngcontent-%COMP%]{padding:8px 10px}button[_ngcontent-%COMP%]:hover{border-radius:50%}"]})}}return n})();const tpe=["tooltip"],UW=new o.nKC("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.reposition({scrollThrottle:20})}}),rpe=new o.nKC("mat-tooltip-default-options",{providedIn:"root",factory:function ipe(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),VW="tooltip-panel",HW=Gf({passive:!0});let y7=(()=>{class n{get position(){return this._position}set position(e){e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(e){this._positionAtOrigin=gi(e),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(e){const i=gi(e);this._disabled!==i&&(this._disabled=i,i?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(e){this._showDelay=jn(e)}get hideDelay(){return this._hideDelay}set hideDelay(e){this._hideDelay=jn(e),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}get message(){return this._message}set message(e){const i=this._message;this._message=null!=e?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(i)}get tooltipClass(){return this._tooltipClass}set tooltipClass(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}constructor(e,i,r,s,l,u,f,p,m,_,b,w){this._overlay=e,this._elementRef=i,this._scrollDispatcher=r,this._viewContainerRef=s,this._ngZone=l,this._platform=u,this._ariaDescriber=f,this._focusMonitor=p,this._dir=_,this._defaultOptions=b,this._position="below",this._positionAtOrigin=!1,this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._tooltipComponent=cpe,this._viewportMargin=8,this._cssClassPrefix="mat-mdc",this.touchGestures="auto",this._message="",this._passiveListeners=[],this._touchstartTimeout=null,this._destroyed=new mi.B,this._injector=(0,o.WQX)(o.zZn),this._scrollStrategy=m,this._document=w,b&&(this._showDelay=b.showDelay,this._hideDelay=b.hideDelay,b.position&&(this.position=b.position),b.positionAtOrigin&&(this.positionAtOrigin=b.positionAtOrigin),b.touchGestures&&(this.touchGestures=b.touchGestures),b.tooltipClass&&(this.tooltipClass=b.tooltipClass)),_.change.pipe(bo(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)}),this._viewportMargin=8}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(bo(this._destroyed)).subscribe(e=>{e?"keyboard"===e&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const e=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(([i,r])=>{e.removeEventListener(i,r,HW)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}show(e=this.showDelay,i){if(this.disabled||!this.message||this._isTooltipVisible())return void this._tooltipInstance?._cancelPendingAnimations();const r=this._createOverlay(i);this._detach(),this._portal=this._portal||new am(this._tooltipComponent,this._viewContainerRef);const s=this._tooltipInstance=r.attach(this._portal).instance;s._triggerElement=this._elementRef.nativeElement,s._mouseLeaveHideDelay=this._hideDelay,s.afterHidden().pipe(bo(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),s.show(e)}hide(e=this.hideDelay){const i=this._tooltipInstance;i&&(i.isVisible()?i.hide(e):(i._cancelPendingAnimations(),this._detach()))}toggle(e){this._isTooltipVisible()?this.hide():this.show(void 0,e)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(e){if(this._overlayRef){const s=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!e)&&s._origin instanceof o.aKT)return this._overlayRef;this._detach()}const i=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),r=this._overlay.position().flexibleConnectedTo(this.positionAtOrigin&&e||this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(i);return r.positionChanges.pipe(bo(this._destroyed)).subscribe(s=>{this._updateCurrentPositionClass(s.connectionPair),this._tooltipInstance&&s.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:r,panelClass:`${this._cssClassPrefix}-${VW}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(bo(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(bo(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(bo(this._destroyed)).subscribe(s=>{this._isTooltipVisible()&&27===s.keyCode&&!Kl(s)&&(s.preventDefault(),s.stopPropagation(),this._ngZone.run(()=>this.hide(0)))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(e){const i=e.getConfig().positionStrategy,r=this._getOrigin(),s=this._getOverlayPosition();i.withPositions([this._addOffset({...r.main,...s.main}),this._addOffset({...r.fallback,...s.fallback})])}_addOffset(e){const r=!this._dir||"ltr"==this._dir.value;return"top"===e.originY?e.offsetY=-8:"bottom"===e.originY?e.offsetY=8:"start"===e.originX?e.offsetX=r?-8:8:"end"===e.originX&&(e.offsetX=r?8:-8),e}_getOrigin(){const e=!this._dir||"ltr"==this._dir.value,i=this.position;let r;"above"==i||"below"==i?r={originX:"center",originY:"above"==i?"top":"bottom"}:"before"==i||"left"==i&&e||"right"==i&&!e?r={originX:"start",originY:"center"}:("after"==i||"right"==i&&e||"left"==i&&!e)&&(r={originX:"end",originY:"center"});const{x:s,y:l}=this._invertPosition(r.originX,r.originY);return{main:r,fallback:{originX:s,originY:l}}}_getOverlayPosition(){const e=!this._dir||"ltr"==this._dir.value,i=this.position;let r;"above"==i?r={overlayX:"center",overlayY:"bottom"}:"below"==i?r={overlayX:"center",overlayY:"top"}:"before"==i||"left"==i&&e||"right"==i&&!e?r={overlayX:"end",overlayY:"center"}:("after"==i||"right"==i&&e||"left"==i&&!e)&&(r={overlayX:"start",overlayY:"center"});const{x:s,y:l}=this._invertPosition(r.overlayX,r.overlayY);return{main:r,fallback:{overlayX:s,overlayY:l}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),(0,o.mal)(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e,this._tooltipInstance._markForCheck())}_invertPosition(e,i){return"above"===this.position||"below"===this.position?"top"===i?i="bottom":"bottom"===i&&(i="top"):"end"===e?e="start":"start"===e&&(e="end"),{x:e,y:i}}_updateCurrentPositionClass(e){const{overlayY:i,originX:r,originY:s}=e;let l;if(l="center"===i?this._dir&&"rtl"===this._dir.value?"end"===r?"left":"right":"start"===r?"left":"right":"bottom"===i&&"top"===s?"above":"below",l!==this._currentPosition){const u=this._overlayRef;if(u){const f=`${this._cssClassPrefix}-${VW}-`;u.removePanelClass(f+this._currentPosition),u.addPanelClass(f+l)}this._currentPosition=l}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",e=>{let i;this._setupPointerExitEventsIfNeeded(),void 0!==e.x&&void 0!==e.y&&(i=e),this.show(void 0,i)}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",e=>{const i=e.targetTouches?.[0],r=i?{x:i.clientX,y:i.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,r)},this._defaultOptions.touchLongPressShowDelay??500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const e=[];if(this._platformSupportsMouseEvents())e.push(["mouseleave",i=>{const r=i.relatedTarget;(!r||!this._overlayRef?.overlayElement.contains(r))&&this.hide()}],["wheel",i=>this._wheelListener(i)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const i=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};e.push(["touchend",i],["touchcancel",i])}this._addListeners(e),this._passiveListeners.push(...e)}_addListeners(e){e.forEach(([i,r])=>{this._elementRef.nativeElement.addEventListener(i,r,HW)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(e){if(this._isTooltipVisible()){const i=this._document.elementFromPoint(e.clientX,e.clientY),r=this._elementRef.nativeElement;i!==r&&!r.contains(i)&&this.hide()}}_disableNativeGesturesIfNecessary(){const e=this.touchGestures;if("off"!==e){const i=this._elementRef.nativeElement,r=i.style;("on"===e||"INPUT"!==i.nodeName&&"TEXTAREA"!==i.nodeName)&&(r.userSelect=r.msUserSelect=r.webkitUserSelect=r.MozUserSelect="none"),("on"===e||!i.draggable)&&(r.webkitUserDrag="none"),r.touchAction="none",r.webkitTapHighlightColor="transparent"}}_syncAriaDescription(e){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,e,"tooltip"),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Ns),o.rXU(o.aKT),o.rXU(fh),o.rXU(o.c1b),o.rXU(o.SKi),o.rXU(Io),o.rXU(ru),o.rXU(Yl),o.rXU(UW),o.rXU(Ks),o.rXU(rpe,8),o.rXU(V))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mat-mdc-tooltip-disabled",r.disabled)},inputs:{position:[0,"matTooltipPosition","position"],positionAtOrigin:[0,"matTooltipPositionAtOrigin","positionAtOrigin"],disabled:[0,"matTooltipDisabled","disabled"],showDelay:[0,"matTooltipShowDelay","showDelay"],hideDelay:[0,"matTooltipHideDelay","hideDelay"],touchGestures:[0,"matTooltipTouchGestures","touchGestures"],message:[0,"matTooltip","message"],tooltipClass:[0,"matTooltipClass","tooltipClass"]},exportAs:["matTooltip"],standalone:!0})}}return n})(),cpe=(()=>{class n{constructor(e,i,r){this._changeDetectorRef=e,this._elementRef=i,this._isMultiline=!1,this._closeOnInteraction=!1,this._isVisible=!1,this._onHide=new mi.B,this._showAnimation="mat-mdc-tooltip-show",this._hideAnimation="mat-mdc-tooltip-hide",this._animationsDisabled="NoopAnimations"===r}show(e){null!=this._hideTimeoutId&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},e)}hide(e){null!=this._showTimeoutId&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},e)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:e}){(!e||!this._triggerElement.contains(e))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){const e=this._elementRef.nativeElement.getBoundingClientRect();return e.height>24&&e.width>=200}_handleAnimationEnd({animationName:e}){(e===this._showAnimation||e===this._hideAnimation)&&this._finalizeAnimation(e===this._showAnimation)}_cancelPendingAnimations(){null!=this._showTimeoutId&&clearTimeout(this._showTimeoutId),null!=this._hideTimeoutId&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(e){e?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(e){const i=this._tooltip.nativeElement,r=this._showAnimation,s=this._hideAnimation;if(i.classList.remove(e?s:r),i.classList.add(e?r:s),this._isVisible!==e&&(this._isVisible=e,this._changeDetectorRef.markForCheck()),e&&!this._animationsDisabled&&"function"==typeof getComputedStyle){const l=getComputedStyle(i);("0s"===l.getPropertyValue("animation-duration")||"none"===l.getPropertyValue("animation-name"))&&(this._animationsDisabled=!0)}e&&this._onShow(),this._animationsDisabled&&(i.classList.add("_mat-animation-noopable"),this._finalizeAnimation(e))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc),o.rXU(o.aKT),o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-tooltip-component"]],viewQuery:function(i,r){if(1&i&&o.GBs(tpe,7),2&i){let s;o.mGM(s=o.lsd())&&(r._tooltip=s.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(i,r){1&i&&o.bIt("mouseleave",function(l){return r._handleMouseLeave(l)})},standalone:!0,features:[o.aNF],decls:4,vars:4,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend","ngClass"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"div",1,0),o.bIt("animationend",function(u){return o.eBV(s),o.Njj(r._handleAnimationEnd(u))}),o.j41(2,"div",2),o.EFF(3),o.k0s()()}2&i&&(o.AVh("mdc-tooltip--multiline",r._isMultiline),o.Y8G("ngClass",r.tooltipClass),o.R7$(3),o.JRh(r.message))},dependencies:[Sn],styles:['.mat-mdc-tooltip{position:relative;transform:scale(0);display:inline-flex}.mat-mdc-tooltip::before{content:"";top:0;right:0;bottom:0;left:0;z-index:-1;position:absolute}.mat-mdc-tooltip-panel-below .mat-mdc-tooltip::before{top:-8px}.mat-mdc-tooltip-panel-above .mat-mdc-tooltip::before{bottom:-8px}.mat-mdc-tooltip-panel-right .mat-mdc-tooltip::before{left:-8px}.mat-mdc-tooltip-panel-left .mat-mdc-tooltip::before{right:-8px}.mat-mdc-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.mat-mdc-tooltip-surface{word-break:normal;overflow-wrap:anywhere;padding:4px 8px;min-width:40px;max-width:200px;min-height:24px;max-height:40vh;box-sizing:border-box;overflow:hidden;text-align:center;will-change:transform,opacity;background-color:var(--mdc-plain-tooltip-container-color, var(--mat-app-inverse-surface));color:var(--mdc-plain-tooltip-supporting-text-color, var(--mat-app-inverse-on-surface));border-radius:var(--mdc-plain-tooltip-container-shape, var(--mat-app-corner-extra-small));font-family:var(--mdc-plain-tooltip-supporting-text-font, var(--mat-app-body-small-font));font-size:var(--mdc-plain-tooltip-supporting-text-size, var(--mat-app-body-small-size));font-weight:var(--mdc-plain-tooltip-supporting-text-weight, var(--mat-app-body-small-weight));line-height:var(--mdc-plain-tooltip-supporting-text-line-height, var(--mat-app-body-small-line-height));letter-spacing:var(--mdc-plain-tooltip-supporting-text-tracking, var(--mat-app-body-small-tracking))}.mat-mdc-tooltip-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:left}[dir=rtl] .mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:right}.mat-mdc-tooltip-panel.mat-mdc-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-mdc-tooltip-show{0%{opacity:0;transform:scale(0.8)}100%{opacity:1;transform:scale(1)}}@keyframes mat-mdc-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(0.8)}}.mat-mdc-tooltip-show{animation:mat-mdc-tooltip-show 150ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-mdc-tooltip-hide{animation:mat-mdc-tooltip-hide 75ms cubic-bezier(0.4, 0, 1, 1) forwards}'],encapsulation:2,changeDetection:0})}}return n})();const dpe=["fileSelect"],upe=n=>({"text-decoration":n});function hpe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-option",4),o.EFF(1),o.nI1(2,"removeExtension"),o.j41(3,"cc-remove-file-button",7),o.bIt("removeOrAddFile",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleAddOrRemoveFile(r))}),o.k0s()()}if(2&n){const e=t.$implicit;o.Y8G("value",e.file)("ngStyle",o.eq3(7,upe,e.isRemoved?"line-through":"none")),o.R7$(),o.SpI(" ",o.bMT(2,5,e.file.fileMeta.fileName)," "),o.R7$(2),o.Y8G("filename",e.file.fileMeta.fileName)("isRemoved",e.isRemoved)}}let fpe=(()=>{class n{constructor(e){this.store=e,this.filesInUI=[],this.selectedFilesInUI=[],this.filesInStore=[],this.closedByApply=!1,this.applyButtonTooltip="",this.applyButtonDisabled=!1,this.filesSubscription=this.store.select(wn).subscribe(i=>{this.filesInStore=i,this.filesInUI=i.map(r=>({file:r.file,isRemoved:!1})),this.selectedFilesInUI=i.filter(r=>r.selectedAs===At.Partial).map(r=>r.file)})}ngOnDestroy(){this.filesSubscription.unsubscribe()}handleSelectedFilesChanged(e){this.selectedFilesInUI=e;for(const i of this.filesInUI)e.includes(i.file)&&(i.isRemoved=!1);this.updateApplyButtonState()}handleOpenedChanged(e){this.closedByApply||e?this.closedByApply=!1:this.store.select(wn).pipe(Ms(1)).subscribe(i=>{this.filesInUI=i.map(r=>({file:r.file,isRemoved:!1})),this.selectedFilesInUI=i.filter(r=>r.selectedAs===At.Partial).map(r=>r.file)}),e&&this.setApplyButtonStateToNoChangesToApply()}handleSelectZeroFiles(){this.selectedFilesInUI=[],this.setApplyButtonStateToNoMapSelected()}handleInvertSelectedFiles(){const e=this.filesInUI.filter(i=>!i.isRemoved);0!==e.length&&(this.selectedFilesInUI=0===this.selectedFilesInUI.length?e.map(i=>i.file):this.selectedFilesInUI.length===e.length?[]:e.filter(i=>!this.selectedFilesInUI.includes(i.file)).map(i=>i.file),this.updateApplyButtonState())}handleSelectAllFiles(){this.selectedFilesInUI=this.filesInUI.filter(e=>!e.isRemoved).map(e=>e.file),this.updateApplyButtonState()}handleApplyFileChanges(){const e=this.filesInUI.filter(i=>i.isRemoved).map(i=>i.file.fileMeta.fileName);this.store.dispatch($({files:this.selectedFilesInUI})),this.store.dispatch(N({fileNames:e})),this.closedByApply=!0,this.select.close()}handleAddOrRemoveFile(e){this.filesInUI=this.filesInUI.map(i=>i.file.fileMeta.fileName===e?{file:i.file,isRemoved:!i.isRemoved}:i),this.selectedFilesInUI=this.selectedFilesInUI.filter(i=>i.fileMeta.fileName!==e),this.updateApplyButtonState()}updateApplyButtonState(){0!==this.selectedFilesInUI.length?this.uiSelectionDiffersFromStore()?this.setApplyButtonStateEnabled():this.setApplyButtonStateToNoChangesToApply():this.setApplyButtonStateToNoMapSelected()}setApplyButtonStateToNoChangesToApply(){this.applyButtonTooltip="No changes to apply",this.applyButtonDisabled=!0}setApplyButtonStateToNoMapSelected(){this.applyButtonTooltip="Select at least one map",this.applyButtonDisabled=!0}setApplyButtonStateEnabled(){this.applyButtonTooltip="",this.applyButtonDisabled=!1}uiSelectionDiffersFromStore(){if(this.filesInUI.some(i=>i.isRemoved))return!0;const e=this.filesInStore.filter(i=>i.selectedAs===At.Partial).map(i=>i.file);return this.selectedFilesInUI.length!==e.length||!this.selectedFilesInUI.every(i=>e.includes(i))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-panel-file-selector"]],viewQuery:function(i,r){if(1&i&&o.GBs(dpe,5),2&i){let s;o.mGM(s=o.lsd())&&(r.select=s.first)}},standalone:!0,features:[o.aNF],decls:14,vars:4,consts:[["fileSelect",""],["panelClass","cc-file-select","multiple","",1,"cc-standard-select",3,"valueChange","selectionChange","openedChange","value"],[1,"cc-file-selection-actions"],[1,"cc-file-select-action-button",3,"click"],[1,"cc-file-name",3,"value","ngStyle"],[1,"cc-apply-file-selection-button-container"],[3,"click","disabled","matTooltip","matTooltipDisabled"],[3,"removeOrAddFile","filename","isRemoved"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"mat-select",1,0),o.mxI("valueChange",function(u){return o.eBV(s),o.DH7(r.selectedFilesInUI,u)||(r.selectedFilesInUI=u),o.Njj(u)}),o.bIt("selectionChange",function(u){return o.eBV(s),o.Njj(r.handleSelectedFilesChanged(u.value))})("openedChange",function(u){return o.eBV(s),o.Njj(r.handleOpenedChanged(u))}),o.j41(2,"div",2)(3,"button",3),o.bIt("click",function(){return o.eBV(s),o.Njj(r.handleSelectAllFiles())}),o.EFF(4,"All"),o.k0s(),o.j41(5,"button",3),o.bIt("click",function(){return o.eBV(s),o.Njj(r.handleSelectZeroFiles())}),o.EFF(6,"None"),o.k0s(),o.j41(7,"button",3),o.bIt("click",function(){return o.eBV(s),o.Njj(r.handleInvertSelectedFiles())}),o.EFF(8,"Invert"),o.k0s()(),o.Z7z(9,hpe,4,9,"mat-option",4,o.fX1),o.j41(11,"div",5)(12,"button",6),o.bIt("click",function(){return o.eBV(s),o.Njj(r.handleApplyFileChanges())}),o.EFF(13," Apply "),o.k0s()()()}2&i&&(o.R50("value",r.selectedFilesInUI),o.R7$(9),o.Dyx(r.filesInUI),o.R7$(3),o.FS9("matTooltip",r.applyButtonTooltip),o.FS9("matTooltipDisabled",!r.applyButtonDisabled),o.Y8G("disabled",r.applyButtonDisabled))},dependencies:[e0,yd,epe,v7,ma,y7],styles:[".cc-standard-select[_ngcontent-%COMP%]{width:200px;font-size:10pt}.cc-apply-file-selection-button-container[_ngcontent-%COMP%]{padding-right:16px;display:flex;justify-content:flex-end}.cc-apply-file-selection-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:50%;height:30px}.cc-apply-file-selection-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover:not(:disabled){border-radius:10%;background-color:#ddd}"]})}}return n})();const ppe=sn($w,n=>`linear-gradient(${n.positiveDelta} 50%, ${n.negativeDelta} 50%)`),Ape=["input"],mpe=["label"],gpe=["*"],_pe=new o.nKC("mat-checkbox-default-options",{providedIn:"root",factory:QW});function QW(){return{color:"accent",clickAction:"check-indeterminate",disabledInteractive:!1}}var Ja=function(n){return n[n.Init=0]="Init",n[n.Checked=1]="Checked",n[n.Unchecked=2]="Unchecked",n[n.Indeterminate=3]="Indeterminate",n}(Ja||{});const bpe={provide:Aa,useExisting:(0,o.Rfq)(()=>fv),multi:!0};class vpe{}let ype=0;const zW=QW();let fv=(()=>{class n{focus(){this._inputElement.nativeElement.focus()}_createChangeEvent(e){const i=new vpe;return i.source=this,i.checked=e,i}_getAnimationTargetElement(){return this._inputElement?.nativeElement}get inputId(){return`${this.id||this._uniqueId}-input`}constructor(e,i,r,s,l,u){this._elementRef=e,this._changeDetectorRef=i,this._ngZone=r,this._animationMode=l,this._options=u,this._animationClasses={uncheckedToChecked:"mdc-checkbox--anim-unchecked-checked",uncheckedToIndeterminate:"mdc-checkbox--anim-unchecked-indeterminate",checkedToUnchecked:"mdc-checkbox--anim-checked-unchecked",checkedToIndeterminate:"mdc-checkbox--anim-checked-indeterminate",indeterminateToChecked:"mdc-checkbox--anim-indeterminate-checked",indeterminateToUnchecked:"mdc-checkbox--anim-indeterminate-unchecked"},this.ariaLabel="",this.ariaLabelledby=null,this.labelPosition="after",this.name=null,this.change=new o.bkB,this.indeterminateChange=new o.bkB,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=Ja.Init,this._controlValueAccessorChangeFn=()=>{},this._validatorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||zW,this.color=this._options.color||zW.color,this.tabIndex=parseInt(s)||0,this.id=this._uniqueId="mat-mdc-checkbox-"+ ++ype,this.disabledInteractive=u?.disabledInteractive??!1}ngOnChanges(e){e.required&&this._validatorChangeFn()}ngAfterViewInit(){this._syncIndeterminate(this._indeterminate)}get checked(){return this._checked}set checked(e){e!=this.checked&&(this._checked=e,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(e){e!==this.disabled&&(this._disabled=e,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(e){const i=e!=this._indeterminate;this._indeterminate=e,i&&(this._transitionCheckState(this._indeterminate?Ja.Indeterminate:this.checked?Ja.Checked:Ja.Unchecked),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(e){this.checked=!!e}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}validate(e){return this.required&&!0!==e.value?{required:!0}:null}registerOnValidatorChange(e){this._validatorChangeFn=e}_transitionCheckState(e){let i=this._currentCheckState,r=this._getAnimationTargetElement();if(i!==e&&r&&(this._currentAnimationClass&&r.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(i,e),this._currentCheckState=e,this._currentAnimationClass.length>0)){r.classList.add(this._currentAnimationClass);const s=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{r.classList.remove(s)},1e3)})}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.checked),this.change.emit(this._createChangeEvent(this.checked)),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_handleInputClick(){const e=this._options?.clickAction;this.disabled||"noop"===e?(this.disabled&&this.disabledInteractive||!this.disabled&&"noop"===e)&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==e&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this._checked=!this._checked,this._transitionCheckState(this._checked?Ja.Checked:Ja.Unchecked),this._emitChangeEvent())}_onInteractionEvent(e){e.stopPropagation()}_onBlur(){Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}_getAnimationClassForCheckStateTransition(e,i){if("NoopAnimations"===this._animationMode)return"";switch(e){case Ja.Init:if(i===Ja.Checked)return this._animationClasses.uncheckedToChecked;if(i==Ja.Indeterminate)return this._checked?this._animationClasses.checkedToIndeterminate:this._animationClasses.uncheckedToIndeterminate;break;case Ja.Unchecked:return i===Ja.Checked?this._animationClasses.uncheckedToChecked:this._animationClasses.uncheckedToIndeterminate;case Ja.Checked:return i===Ja.Unchecked?this._animationClasses.checkedToUnchecked:this._animationClasses.checkedToIndeterminate;case Ja.Indeterminate:return i===Ja.Checked?this._animationClasses.indeterminateToChecked:this._animationClasses.indeterminateToUnchecked}return""}_syncIndeterminate(e){const i=this._inputElement;i&&(i.nativeElement.indeterminate=e)}_onInputClick(){this._handleInputClick()}_onTouchTargetClick(){this._handleInputClick(),this.disabled||this._inputElement.nativeElement.focus()}_preventBubblingFromLabel(e){e.target&&this._labelElement.nativeElement.contains(e.target)&&e.stopPropagation()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.gRc),o.rXU(o.SKi),o.kS0("tabindex"),o.rXU(o.bc$,8),o.rXU(_pe,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-checkbox"]],viewQuery:function(i,r){if(1&i&&(o.GBs(Ape,5),o.GBs(mpe,5),o.GBs(ml,5)),2&i){let s;o.mGM(s=o.lsd())&&(r._inputElement=s.first),o.mGM(s=o.lsd())&&(r._labelElement=s.first),o.mGM(s=o.lsd())&&(r.ripple=s.first)}},hostAttrs:[1,"mat-mdc-checkbox"],hostVars:16,hostBindings:function(i,r){2&i&&(o.Mr5("id",r.id),o.BMQ("tabindex",null)("aria-label",null)("aria-labelledby",null),o.HbH(r.color?"mat-"+r.color:"mat-accent"),o.AVh("_mat-animation-noopable","NoopAnimations"===r._animationMode)("mdc-checkbox--disabled",r.disabled)("mat-mdc-checkbox-disabled",r.disabled)("mat-mdc-checkbox-checked",r.checked)("mat-mdc-checkbox-disabled-interactive",r.disabledInteractive))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],id:"id",required:[2,"required","required",o.L39],labelPosition:"labelPosition",name:"name",value:"value",disableRipple:[2,"disableRipple","disableRipple",o.L39],tabIndex:[2,"tabIndex","tabIndex",e=>null==e?void 0:(0,o.Udg)(e)],color:"color",disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39],checked:[2,"checked","checked",o.L39],disabled:[2,"disabled","disabled",o.L39],indeterminate:[2,"indeterminate","indeterminate",o.L39]},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],standalone:!0,features:[o.Jv_([bpe,{provide:Hs,useExisting:n,multi:!0}]),o.GFd,o.OA$,o.aNF],ngContentSelectors:gpe,decls:15,vars:20,consts:[["checkbox",""],["input",""],["label",""],["mat-internal-form-field","",3,"click","labelPosition"],[1,"mdc-checkbox"],[1,"mat-mdc-checkbox-touch-target",3,"click"],["type","checkbox",1,"mdc-checkbox__native-control",3,"blur","click","change","checked","indeterminate","disabled","id","required","tabIndex"],[1,"mdc-checkbox__ripple"],[1,"mdc-checkbox__background"],["focusable","false","viewBox","0 0 24 24","aria-hidden","true",1,"mdc-checkbox__checkmark"],["fill","none","d","M1.73,12.91 8.1,19.28 22.79,4.59",1,"mdc-checkbox__checkmark-path"],[1,"mdc-checkbox__mixedmark"],["mat-ripple","",1,"mat-mdc-checkbox-ripple","mat-mdc-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-label",3,"for"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(),o.j41(0,"div",3),o.bIt("click",function(u){return o.eBV(s),o.Njj(r._preventBubblingFromLabel(u))}),o.j41(1,"div",4,0)(3,"div",5),o.bIt("click",function(){return o.eBV(s),o.Njj(r._onTouchTargetClick())}),o.k0s(),o.j41(4,"input",6,1),o.bIt("blur",function(){return o.eBV(s),o.Njj(r._onBlur())})("click",function(){return o.eBV(s),o.Njj(r._onInputClick())})("change",function(u){return o.eBV(s),o.Njj(r._onInteractionEvent(u))}),o.k0s(),o.nrm(6,"div",7),o.j41(7,"div",8),o.qSk(),o.j41(8,"svg",9),o.nrm(9,"path",10),o.k0s(),o.joV(),o.nrm(10,"div",11),o.k0s(),o.nrm(11,"div",12),o.k0s(),o.j41(12,"label",13,2),o.SdG(14),o.k0s()()}if(2&i){const s=o.sdS(2);o.Y8G("labelPosition",r.labelPosition),o.R7$(4),o.AVh("mdc-checkbox--selected",r.checked),o.Y8G("checked",r.checked)("indeterminate",r.indeterminate)("disabled",r.disabled&&!r.disabledInteractive)("id",r.inputId)("required",r.required)("tabIndex",r.disabled&&!r.disabledInteractive?-1:r.tabIndex),o.BMQ("aria-label",r.ariaLabel||null)("aria-labelledby",r.ariaLabelledby)("aria-describedby",r.ariaDescribedby)("aria-checked",r.indeterminate?"mixed":null)("aria-disabled",!(!r.disabled||!r.disabledInteractive)||null)("name",r.name)("value",r.value),o.R7$(7),o.Y8G("matRippleTrigger",s)("matRippleDisabled",r.disableRipple||r.disabled)("matRippleCentered",!0),o.R7$(),o.Y8G("for",r.inputId)}},dependencies:[ml,MI],styles:['.mdc-checkbox{display:inline-block;position:relative;flex:0 0 18px;box-sizing:content-box;width:18px;height:18px;line-height:0;white-space:nowrap;cursor:pointer;vertical-align:bottom;padding:calc((var(--mdc-checkbox-state-layer-size, 40px) - 18px)/2);margin:calc((var(--mdc-checkbox-state-layer-size, 40px) - var(--mdc-checkbox-state-layer-size, 40px))/2)}.mdc-checkbox:hover .mdc-checkbox__ripple{opacity:var(--mdc-checkbox-unselected-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity));background-color:var(--mdc-checkbox-unselected-hover-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox:hover .mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-unselected-hover-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-unselected-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity));background-color:var(--mdc-checkbox-unselected-focus-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox .mdc-checkbox__native-control:focus~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-unselected-focus-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox:active .mdc-checkbox__native-control~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-unselected-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity));background-color:var(--mdc-checkbox-unselected-pressed-state-layer-color, var(--mat-app-primary))}.mdc-checkbox:active .mdc-checkbox__native-control~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-unselected-pressed-state-layer-color, var(--mat-app-primary))}.mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-selected-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity));background-color:var(--mdc-checkbox-selected-hover-state-layer-color, var(--mat-app-primary))}.mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-selected-hover-state-layer-color, var(--mat-app-primary))}.mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-selected-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity));background-color:var(--mdc-checkbox-selected-focus-state-layer-color, var(--mat-app-primary))}.mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-selected-focus-state-layer-color, var(--mat-app-primary))}.mdc-checkbox:active .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-selected-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity));background-color:var(--mdc-checkbox-selected-pressed-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox:active .mdc-checkbox__native-control:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-selected-pressed-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control~.mat-mdc-checkbox-ripple .mat-ripple-element,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control~.mdc-checkbox__ripple{background-color:var(--mdc-checkbox-unselected-hover-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox .mdc-checkbox__native-control{position:absolute;margin:0;padding:0;opacity:0;cursor:inherit;width:var(--mdc-checkbox-state-layer-size, 40px);height:var(--mdc-checkbox-state-layer-size, 40px);top:calc((var(--mdc-checkbox-state-layer-size, 40px) - var(--mdc-checkbox-state-layer-size, 40px))/2);right:calc((var(--mdc-checkbox-state-layer-size, 40px) - var(--mdc-checkbox-state-layer-size, 40px))/2);left:calc((var(--mdc-checkbox-state-layer-size, 40px) - var(--mdc-checkbox-state-layer-size, 40px))/2)}.mdc-checkbox--disabled{cursor:default;pointer-events:none}.cdk-high-contrast-active .mdc-checkbox--disabled{opacity:.5}.mdc-checkbox__background{display:inline-flex;position:absolute;align-items:center;justify-content:center;box-sizing:border-box;width:18px;height:18px;border:2px solid currentColor;border-radius:2px;background-color:rgba(0,0,0,0);pointer-events:none;will-change:background-color,border-color;transition:background-color 90ms cubic-bezier(0.4, 0, 0.6, 1),border-color 90ms cubic-bezier(0.4, 0, 0.6, 1);-webkit-print-color-adjust:exact;color-adjust:exact;border-color:var(--mdc-checkbox-unselected-icon-color, var(--mat-app-on-surface-variant));top:calc((var(--mdc-checkbox-state-layer-size, 40px) - 18px)/2);left:calc((var(--mdc-checkbox-state-layer-size, 40px) - 18px)/2)}.mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background{border-color:var(--mdc-checkbox-selected-icon-color, var(--mat-app-primary));background-color:var(--mdc-checkbox-selected-icon-color, var(--mat-app-primary))}.mdc-checkbox--disabled .mdc-checkbox__background{border-color:var(--mdc-checkbox-disabled-unselected-icon-color)}.mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background{background-color:var(--mdc-checkbox-disabled-selected-icon-color);border-color:rgba(0,0,0,0)}.mdc-checkbox:hover .mdc-checkbox__native-control:not(:checked)~.mdc-checkbox__background,.mdc-checkbox:hover .mdc-checkbox__native-control:not(:indeterminate)~.mdc-checkbox__background{border-color:var(--mdc-checkbox-unselected-hover-icon-color, var(--mat-app-on-surface));background-color:rgba(0,0,0,0)}.mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox:hover .mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{border-color:var(--mdc-checkbox-selected-hover-icon-color, var(--mat-app-primary));background-color:var(--mdc-checkbox-selected-hover-icon-color, var(--mat-app-primary))}.mdc-checkbox__native-control:focus:focus:not(:checked)~.mdc-checkbox__background,.mdc-checkbox__native-control:focus:focus:not(:indeterminate)~.mdc-checkbox__background{border-color:var(--mdc-checkbox-unselected-focus-icon-color, var(--mat-app-on-surface))}.mdc-checkbox__native-control:focus:focus:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:focus:focus:indeterminate~.mdc-checkbox__background{border-color:var(--mdc-checkbox-selected-focus-icon-color, var(--mat-app-primary));background-color:var(--mdc-checkbox-selected-focus-icon-color, var(--mat-app-primary))}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox:hover .mdc-checkbox__native-control~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__background{border-color:var(--mdc-checkbox-disabled-unselected-icon-color)}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{background-color:var(--mdc-checkbox-disabled-selected-icon-color);border-color:rgba(0,0,0,0)}.mdc-checkbox__checkmark{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;transition:opacity 180ms cubic-bezier(0.4, 0, 0.6, 1);color:var(--mdc-checkbox-selected-checkmark-color, var(--mat-app-on-primary))}.cdk-high-contrast-active .mdc-checkbox__checkmark{color:CanvasText}.mdc-checkbox--disabled .mdc-checkbox__checkmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__checkmark{color:var(--mdc-checkbox-disabled-selected-checkmark-color, var(--mat-app-surface))}.cdk-high-contrast-active .mdc-checkbox--disabled .mdc-checkbox__checkmark,.cdk-high-contrast-active .mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__checkmark{color:CanvasText}.mdc-checkbox__checkmark-path{transition:stroke-dashoffset 180ms cubic-bezier(0.4, 0, 0.6, 1);stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}.mdc-checkbox__mixedmark{width:100%;height:0;transform:scaleX(0) rotate(0deg);border-width:1px;border-style:solid;opacity:0;transition:opacity 90ms cubic-bezier(0.4, 0, 0.6, 1),transform 90ms cubic-bezier(0.4, 0, 0.6, 1);border-color:var(--mdc-checkbox-selected-checkmark-color, var(--mat-app-on-primary))}.cdk-high-contrast-active .mdc-checkbox__mixedmark{margin:0 1px}.mdc-checkbox--disabled .mdc-checkbox__mixedmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__mixedmark{border-color:var(--mdc-checkbox-disabled-selected-checkmark-color, var(--mat-app-surface))}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background,.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background,.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background,.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background{animation-duration:180ms;animation-timing-function:linear}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark-path{animation:mdc-checkbox-unchecked-checked-checkmark-path 180ms linear;transition:none}.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark{animation:mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear;transition:none}.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark-path{animation:mdc-checkbox-checked-unchecked-checkmark-path 90ms linear;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark{animation:mdc-checkbox-checked-indeterminate-checkmark 90ms linear;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark{animation:mdc-checkbox-checked-indeterminate-mixedmark 90ms linear;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark{animation:mdc-checkbox-indeterminate-checked-checkmark 500ms linear;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark{animation:mdc-checkbox-indeterminate-checked-mixedmark 500ms linear;transition:none}.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark{animation:mdc-checkbox-indeterminate-unchecked-mixedmark 300ms linear;transition:none}.mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{transition:border-color 90ms cubic-bezier(0, 0, 0.2, 1),background-color 90ms cubic-bezier(0, 0, 0.2, 1)}.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__checkmark-path,.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__checkmark-path{stroke-dashoffset:0}.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__checkmark{transition:opacity 180ms cubic-bezier(0, 0, 0.2, 1),transform 180ms cubic-bezier(0, 0, 0.2, 1);opacity:1}.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__mixedmark{transform:scaleX(1) rotate(-45deg)}.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__checkmark{transform:rotate(45deg);opacity:0;transition:opacity 90ms cubic-bezier(0.4, 0, 0.6, 1),transform 90ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__mixedmark{transform:scaleX(1) rotate(0deg);opacity:1}@keyframes mdc-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:29.7833385}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 1)}100%{stroke-dashoffset:0}}@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mdc-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-29.7833385}}@keyframes mdc-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 1);transform:rotate(0deg);opacity:1}to{transform:rotate(45deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);transform:rotate(45deg);opacity:0}to{transform:rotate(360deg);opacity:1}}@keyframes mdc-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 1);transform:rotate(-45deg);opacity:0}to{transform:rotate(0deg);opacity:1}}@keyframes mdc-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);transform:rotate(0deg);opacity:1}to{transform:rotate(315deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;transform:scaleX(1);opacity:1}32.8%,100%{transform:scaleX(0);opacity:0}}.mat-mdc-checkbox{display:inline-block;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-checkbox._mat-animation-noopable .mdc-checkbox *,.mat-mdc-checkbox._mat-animation-noopable .mdc-checkbox *::before{transition:none !important;animation:none !important}.mat-mdc-checkbox label{cursor:pointer}.mat-mdc-checkbox .mat-internal-form-field{color:var(--mat-checkbox-label-text-color, var(--mat-app-on-surface));font-family:var(--mat-checkbox-label-text-font, var(--mat-app-body-medium-font));line-height:var(--mat-checkbox-label-text-line-height, var(--mat-app-body-medium-line-height));font-size:var(--mat-checkbox-label-text-size, var(--mat-app-body-medium-size));letter-spacing:var(--mat-checkbox-label-text-tracking, var(--mat-app-body-medium-tracking));font-weight:var(--mat-checkbox-label-text-weight, var(--mat-app-body-medium-weight))}.mat-mdc-checkbox.mat-mdc-checkbox-disabled.mat-mdc-checkbox-disabled-interactive{pointer-events:auto}.mat-mdc-checkbox.mat-mdc-checkbox-disabled.mat-mdc-checkbox-disabled-interactive input{cursor:default}.mat-mdc-checkbox.mat-mdc-checkbox-disabled label{cursor:default;color:var(--mat-checkbox-disabled-label-color)}.mat-mdc-checkbox label:empty{display:none}.mat-mdc-checkbox .mdc-checkbox__ripple{opacity:0}.mat-mdc-checkbox-ripple,.mdc-checkbox__ripple{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-checkbox-ripple:not(:empty),.mdc-checkbox__ripple:not(:empty){transform:translateZ(0)}.mat-mdc-checkbox-ripple .mat-ripple-element{opacity:.1}.mat-mdc-checkbox-touch-target{position:absolute;top:50%;left:50%;height:48px;width:48px;transform:translate(-50%, -50%);display:var(--mat-checkbox-touch-target-display)}.mat-mdc-checkbox-ripple::before{border-radius:50%}.mdc-checkbox__native-control:focus~.mat-mdc-focus-indicator::before{content:""}'],encapsulation:2,changeDetection:0})}}return n})();const w7="alertOnIncompatibleMaps";let Cpe=(()=>{class n{constructor(e){this.data=e}setDoNotAlertOnIncompatibleMaps(e){localStorage.setItem(w7,JSON.stringify(!e.checked))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Jf))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-incompatible-maps-dialog"]],standalone:!0,features:[o.aNF],decls:25,vars:4,consts:[["color","primary"],[1,"cc-files"],[3,"change"],["align","end"],["href","https://codecharta.com/docs/filter/structure-modifier","target","_blank","rel","noopener noreferrer"],["mat-flat-button","",3,"mat-dialog-close"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0),o.EFF(1,"Incompatible Maps"),o.k0s(),o.j41(2,"mat-dialog-content")(3,"p"),o.EFF(4,"The selected maps use different complexity metrics and are therefore incompatible:"),o.k0s(),o.j41(5,"p",1),o.EFF(6),o.k0s(),o.j41(7,"p"),o.EFF(8," The file "),o.j41(9,"b"),o.EFF(10),o.k0s(),o.EFF(11," is using the "),o.j41(12,"b"),o.EFF(13,"mcc metric"),o.k0s(),o.EFF(14," and the other one "),o.j41(15,"b"),o.EFF(16,"complexity"),o.k0s(),o.EFF(17,". Please migrate. "),o.k0s(),o.j41(18,"mat-checkbox",2),o.bIt("change",function(l){return r.setDoNotAlertOnIncompatibleMaps(l)}),o.EFF(19,"Don't show again"),o.k0s()(),o.j41(20,"mat-dialog-actions",3)(21,"a",4),o.EFF(22,"Know more"),o.k0s(),o.j41(23,"button",5),o.EFF(24,"CLOSE"),o.k0s()()),2&i&&(o.R7$(6),o.Lme("",r.data.referenceFileName," \u2192 ",r.data.comparisonFileName,""),o.R7$(4),o.JRh(r.data.fileWithMccMetric),o.R7$(13),o.Y8G("mat-dialog-close",!0))},dependencies:[Yg,Al,fv,Zl,ns,Ta],styles:["p[_ngcontent-%COMP%]{font-size:18px}.cc-files[_ngcontent-%COMP%]{text-align:center}"]})}}return n})();function Mpe(n,t){if(1&n&&(o.j41(0,"mat-option",2),o.EFF(1),o.nI1(2,"removeExtension"),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e.file),o.R7$(),o.SpI(" ",o.bMT(2,2,e.file.fileMeta.fileName)," ")}}function Epe(n,t){if(1&n&&(o.j41(0,"mat-option",2),o.EFF(1),o.nI1(2,"removeExtension"),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e.file),o.R7$(),o.SpI(" ",o.bMT(2,2,e.file.fileMeta.fileName)," ")}}let Spe=(()=>{class n{constructor(e,i){this.store=e,this.dialog=i,this.files$=this.store.select(wn),this.referenceFile$=this.store.select(Tn),this.comparisonFile$=this.files$.pipe((0,Xn.T)(r=>r.find(s=>s.selectedAs===At.Comparison)?.file)),this.possibleComparisonFiles$=this.files$.pipe((0,Xn.T)(r=>r.filter(s=>s.selectedAs!==At.Reference))),this.pictogramBackground$=this.store.select(ppe),this.referenceFile$.subscribe(r=>this.referenceFile=r),this.comparisonFile$.subscribe(r=>this.comparisonFile=r)}handleDeltaReferenceFileChange(e){this.store.dispatch(Xe({file:e})),this.showAlertWhenFilesAreIncompatible()}handleDeltaComparisonFileChange(e){this.store.dispatch(ge({file:e})),this.showAlertWhenFilesAreIncompatible()}showAlertWhenFilesAreIncompatible(){this.alertOnIncompatibleMaps()&&this.areMapsIncompatible()&&this.openIncompatibleMapsDialog()}alertOnIncompatibleMaps(){return!localStorage.getItem(w7)||!0===JSON.parse(localStorage.getItem(w7))}openIncompatibleMapsDialog(){this.dialog.open(Cpe,{panelClass:"cc-incompatible-maps-dialog",data:{referenceFileName:this.getFileName(this.referenceFile),comparisonFileName:this.getFileName(this.comparisonFile),fileWithMccMetric:this.getFileWithMccMetric(this.referenceFile,this.comparisonFile)}})}getFileName(e){return e?.fileMeta.fileName}hasMccMetric(e){return e?.map.children.some(i=>this.containsMCCAttribute(i))}containsMCCAttribute(e){if(e.attributes.mcc)return!0;if(e.children)for(const i of e.children)if(this.containsMCCAttribute(i))return!0;return!1}getFileWithMccMetric(e,i){return this.hasMccMetric(e)?this.getFileName(e):this.hasMccMetric(i)?this.getFileName(i):void 0}switchReferenceAndComparison(){this.store.dispatch(xe())}areMapsIncompatible(){if(this.referenceFile&&this.comparisonFile)return this.hasMccMetric(this.referenceFile)!==this.hasMccMetric(this.comparisonFile)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-panel-delta-selector"]],standalone:!0,features:[o.aNF],decls:16,vars:17,consts:[[1,"delta-select-wrapper"],["panelClass","cc-file-select",1,"delta-select",3,"selectionChange","value"],[3,"value"],["title","Switch reference and comparison file",1,"reference-comparison-switch",3,"click","disabled"],[1,"fa","fa-arrows-h"],["placeholder","select comparison file","panelClass","cc-file-select",1,"delta-select",3,"selectionChange","value"],[1,"pictogram"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"mat-select",1),o.nI1(2,"async"),o.bIt("selectionChange",function(l){return r.handleDeltaReferenceFileChange(l.value)}),o.Z7z(3,Mpe,3,4,"mat-option",2,o.fX1),o.nI1(5,"async"),o.k0s(),o.j41(6,"button",3),o.nI1(7,"async"),o.bIt("click",function(){return r.switchReferenceAndComparison()}),o.nrm(8,"i",4),o.k0s(),o.j41(9,"mat-select",5),o.nI1(10,"async"),o.bIt("selectionChange",function(l){return r.handleDeltaComparisonFileChange(l.value)}),o.Z7z(11,Epe,3,4,"mat-option",2,o.fX1),o.nI1(13,"async"),o.k0s(),o.nrm(14,"div",6),o.nI1(15,"async"),o.k0s()),2&i&&(o.R7$(),o.Y8G("value",o.bMT(2,5,r.referenceFile$)),o.R7$(2),o.Dyx(o.bMT(5,7,r.files$)),o.R7$(3),o.Y8G("disabled",void 0===o.bMT(7,9,r.comparisonFile$)),o.R7$(3),o.Y8G("value",o.bMT(10,11,r.comparisonFile$)),o.R7$(2),o.Dyx(o.bMT(13,13,r.possibleComparisonFiles$)),o.R7$(3),o.xc7("background",o.bMT(15,15,r.pictogramBackground$)))},dependencies:[e0,yd,zn,v7],styles:[".delta-select-wrapper[_ngcontent-%COMP%]{display:flex;gap:12px}.delta-select[_ngcontent-%COMP%]{width:200px;font-size:10pt}.reference-comparison-switch[_ngcontent-%COMP%]{background-color:#1b9cfc;margin:0;height:24px;width:36px;border-radius:5px}.reference-comparison-switch[disabled][_ngcontent-%COMP%]{background-color:#ccc}.reference-comparison-switch[_ngcontent-%COMP%]:hover{background-color:#0374c9}.reference-comparison-switch[_ngcontent-%COMP%]:hover[disabled]{background-color:#ccc}.reference-comparison-switch[_ngcontent-%COMP%] .fa[_ngcontent-%COMP%]{vertical-align:middle;color:#fff}.pictogram[_ngcontent-%COMP%]{display:inline-flex;width:10px;margin-right:5px;margin-left:5px;height:22px;border-radius:2px;align-self:center;vertical-align:bottom}"]})}}return n})();function Tpe(n,t){1&n&&o.nrm(0,"cc-file-panel-file-selector")}function Ipe(n,t){1&n&&o.nrm(0,"cc-file-panel-delta-selector")}let Fpe=(()=>{class n{constructor(e){this.store=e,this.isDeltaState$=this.store.select(Wp)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-panel"]],standalone:!0,features:[o.aNF],decls:4,vars:3,template:function(i,r){1&i&&(o.nrm(0,"cc-file-panel-state-buttons"),o.DNE(1,Tpe,1,0,"cc-file-panel-file-selector"),o.nI1(2,"async"),o.DNE(3,Ipe,1,0,"cc-file-panel-delta-selector")),2&i&&(o.R7$(),o.vxM(o.bMT(2,1,r.isDeltaState$)?3:1))},dependencies:[Yfe,fpe,Spe,zn],styles:["[_nghost-%COMP%]{display:flex;gap:inherit}.hidden[_nghost-%COMP%]{display:none}"]})}}return n})();const GW=sn(jw,md,(n,t)=>n.get(t)),Dpe=sn(GW,n=>n&&{path:n.path.slice(1).split("/"),isFile:"File"===n.type});function Bpe(n,t){if(1&n&&o.nrm(0,"i",2),2&n){const e=o.XpG(2);o.AVh("fa-file-o",e.isFile)("fa-folder",!e.isFile)}}function kpe(n,t){1&n&&o.nrm(0,"i",1)}function Rpe(n,t){if(1&n&&(o.j41(0,"span"),o.DNE(1,Bpe,1,4,"i",0),o.j41(2,"span"),o.EFF(3),o.k0s(),o.DNE(4,kpe,1,0,"i",1),o.k0s()),2&n){const e=t.$implicit,i=t.$index,r=t.$count;o.R7$(),o.vxM(i===r-1?1:-1),o.R7$(),o.AVh("bold",i===r-1),o.R7$(),o.JRh(e),o.R7$(),o.vxM(i!==r-1?4:-1)}}function Ppe(n,t){1&n&&o.Z7z(0,Rpe,5,5,"span",null,o.fX1),2&n&&o.Dyx(t.path)}let Ope=(()=>{class n{constructor(e){this.store=e,this.hoveredNodePathPanelData$=this.store.select(Dpe)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-hovered-node-path-panel"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[1,"fa",3,"fa-file-o","fa-folder"],[1,"fa","fa-angle-right"],[1,"fa"]],template:function(i,r){if(1&i&&(o.DNE(0,Ppe,2,0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.hoveredNodePathPanelData$))?0:-1,s)}},dependencies:[zn],styles:["[_nghost-%COMP%]{width:100%;min-width:400px;display:inline-block;vertical-align:middle;margin:0 8px;font-size:10pt;overflow:hidden;white-space:nowrap}[_nghost-%COMP%] .bold[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] i[_ngcontent-%COMP%]{margin:0 4px}"]})}}return n})();const Npe=sn(ko,n=>n.isLoadingMap),Lpe=["determinateSpinner"];function Upe(n,t){if(1&n&&(o.qSk(),o.j41(0,"svg",11),o.nrm(1,"circle",12),o.k0s()),2&n){const e=o.XpG();o.BMQ("viewBox",e._viewBox()),o.R7$(),o.xc7("stroke-dasharray",e._strokeCircumference(),"px")("stroke-dashoffset",e._strokeCircumference()/2,"px")("stroke-width",e._circleStrokeWidth(),"%"),o.BMQ("r",e._circleRadius())}}const Vpe=new o.nKC("mat-progress-spinner-default-options",{providedIn:"root",factory:function Hpe(){return{diameter:jW}}}),jW=100;let $W=(()=>{class n{get color(){return this._color||this._defaultColor}set color(e){this._color=e}constructor(e,i,r){this._elementRef=e,this._defaultColor="primary",this._value=0,this._diameter=jW,this._noopAnimations="NoopAnimations"===i&&!!r&&!r._forceAnimations,this.mode="mat-spinner"===e.nativeElement.nodeName.toLowerCase()?"indeterminate":"determinate",r&&(r.color&&(this.color=this._defaultColor=r.color),r.diameter&&(this.diameter=r.diameter),r.strokeWidth&&(this.strokeWidth=r.strokeWidth))}get value(){return"determinate"===this.mode?this._value:0}set value(e){this._value=Math.max(0,Math.min(100,e||0))}get diameter(){return this._diameter}set diameter(e){this._diameter=e||0}get strokeWidth(){return this._strokeWidth??this.diameter/10}set strokeWidth(e){this._strokeWidth=e||0}_circleRadius(){return(this.diameter-10)/2}_viewBox(){const e=2*this._circleRadius()+this.strokeWidth;return`0 0 ${e} ${e}`}_strokeCircumference(){return 2*Math.PI*this._circleRadius()}_strokeDashOffset(){return"determinate"===this.mode?this._strokeCircumference()*(100-this._value)/100:null}_circleStrokeWidth(){return this.strokeWidth/this.diameter*100}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.bc$,8),o.rXU(Vpe))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-progress-spinner"],["mat-spinner"]],viewQuery:function(i,r){if(1&i&&o.GBs(Lpe,5),2&i){let s;o.mGM(s=o.lsd())&&(r._determinateCircle=s.first)}},hostAttrs:["role","progressbar","tabindex","-1",1,"mat-mdc-progress-spinner","mdc-circular-progress"],hostVars:18,hostBindings:function(i,r){2&i&&(o.BMQ("aria-valuemin",0)("aria-valuemax",100)("aria-valuenow","determinate"===r.mode?r.value:null)("mode",r.mode),o.HbH("mat-"+r.color),o.xc7("width",r.diameter,"px")("height",r.diameter,"px")("--mdc-circular-progress-size",r.diameter+"px")("--mdc-circular-progress-active-indicator-width",r.diameter+"px"),o.AVh("_mat-animation-noopable",r._noopAnimations)("mdc-circular-progress--indeterminate","indeterminate"===r.mode))},inputs:{color:"color",mode:"mode",value:[2,"value","value",o.Udg],diameter:[2,"diameter","diameter",o.Udg],strokeWidth:[2,"strokeWidth","strokeWidth",o.Udg]},exportAs:["matProgressSpinner"],standalone:!0,features:[o.GFd,o.aNF],decls:14,vars:11,consts:[["circle",""],["determinateSpinner",""],["aria-hidden","true",1,"mdc-circular-progress__determinate-container"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__determinate-circle-graphic"],["cx","50%","cy","50%",1,"mdc-circular-progress__determinate-circle"],["aria-hidden","true",1,"mdc-circular-progress__indeterminate-container"],[1,"mdc-circular-progress__spinner-layer"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-left"],[3,"ngTemplateOutlet"],[1,"mdc-circular-progress__gap-patch"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-right"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__indeterminate-circle-graphic"],["cx","50%","cy","50%"]],template:function(i,r){if(1&i&&(o.DNE(0,Upe,2,8,"ng-template",null,0,o.C5r),o.j41(2,"div",2,1),o.qSk(),o.j41(4,"svg",3),o.nrm(5,"circle",4),o.k0s()(),o.joV(),o.j41(6,"div",5)(7,"div",6)(8,"div",7),o.eu8(9,8),o.k0s(),o.j41(10,"div",9),o.eu8(11,8),o.k0s(),o.j41(12,"div",10),o.eu8(13,8),o.k0s()()()),2&i){const s=o.sdS(1);o.R7$(4),o.BMQ("viewBox",r._viewBox()),o.R7$(),o.xc7("stroke-dasharray",r._strokeCircumference(),"px")("stroke-dashoffset",r._strokeDashOffset(),"px")("stroke-width",r._circleStrokeWidth(),"%"),o.BMQ("r",r._circleRadius()),o.R7$(4),o.Y8G("ngTemplateOutlet",s),o.R7$(2),o.Y8G("ngTemplateOutlet",s),o.R7$(2),o.Y8G("ngTemplateOutlet",s)}},dependencies:[yi],styles:[".mat-mdc-progress-spinner{display:block;overflow:hidden;line-height:0;position:relative;direction:ltr;transition:opacity 250ms cubic-bezier(0.4, 0, 0.6, 1)}.mat-mdc-progress-spinner circle{stroke-width:var(--mdc-circular-progress-active-indicator-width)}.mat-mdc-progress-spinner._mat-animation-noopable,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__determinate-circle{transition:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__spinner-layer,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container{animation:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container circle{stroke-dasharray:0 !important}.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic,.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle{stroke:currentColor;stroke:CanvasText}.mdc-circular-progress__determinate-container,.mdc-circular-progress__indeterminate-circle-graphic,.mdc-circular-progress__indeterminate-container,.mdc-circular-progress__spinner-layer{position:absolute;width:100%;height:100%}.mdc-circular-progress__determinate-container{transform:rotate(-90deg)}.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container{opacity:0}.mdc-circular-progress__indeterminate-container{font-size:0;letter-spacing:0;white-space:nowrap;opacity:0}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{opacity:1;animation:mdc-circular-progress-container-rotate 1568.2352941176ms linear infinite}.mdc-circular-progress__determinate-circle-graphic,.mdc-circular-progress__indeterminate-circle-graphic{fill:rgba(0,0,0,0)}.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:var(--mdc-circular-progress-active-indicator-color, var(--mat-app-primary))}.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:CanvasText}.mdc-circular-progress__determinate-circle{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1)}.mdc-circular-progress__gap-patch{position:absolute;top:0;left:47.5%;box-sizing:border-box;width:5%;height:100%;overflow:hidden}.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic{left:-900%;width:2000%;transform:rotate(180deg)}.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic{width:200%}.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{left:-100%}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress__circle-clipper{display:inline-flex;position:relative;width:50%;height:100%;overflow:hidden}.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}@keyframes mdc-circular-progress-container-rotate{to{transform:rotate(360deg)}}@keyframes mdc-circular-progress-spinner-layer-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes mdc-circular-progress-left-spin{from{transform:rotate(265deg)}50%{transform:rotate(130deg)}to{transform:rotate(265deg)}}@keyframes mdc-circular-progress-right-spin{from{transform:rotate(-265deg)}50%{transform:rotate(-130deg)}to{transform:rotate(-265deg)}}"],encapsulation:2,changeDetection:0})}}return n})(),zpe=(()=>{class n{constructor(e){this.isLoadingMap$=e.select(Npe)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-loading-map-progress-spinner"]],standalone:!0,features:[o.aNF],decls:2,vars:4,consts:[["id","loading-gif-map","mode","indeterminate","diameter","22","title","Rendering map"]],template:function(i,r){1&i&&(o.nrm(0,"mat-progress-spinner",0),o.nI1(1,"async")),2&i&&o.xc7("visibility",o.bMT(1,2,r.isLoadingMap$)?"visible":"hidden")},dependencies:[$W,zn],styles:["[_nghost-%COMP%]{display:inline-block;vertical-align:middle}"]})}}return n})();const Gpe=sn(ko,n=>n.isPresentationMode);let jpe=(()=>{class n{constructor(e,i){this.store=e,this.elementReference=i,this.isPresentationModeEnabled$=this.store.select(Gpe)}setPresentationModeEnabled(e){this.store.dispatch(vR({value:e.checked})),this.elementReference.nativeElement.querySelector("mat-slide-toggle").classList.remove("cdk-focused"),this.elementReference.nativeElement.querySelector("mat-slide-toggle").classList.remove("cdk-program-focused"),this.elementReference.nativeElement.querySelector("mat-slide-toggle").classList.remove("mat-mdc-slide-toggle-focused")}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(o.aKT))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-presentation-mode-button"]],standalone:!0,features:[o.aNF],decls:6,vars:6,consts:[["aria-label","Presentation Mode Toggle",1,"cc-presentation-mode-button",3,"change","checked","title"],[1,"presentation-mode-icon","fa","fa-television"]],template:function(i,r){1&i&&(o.j41(0,"mat-slide-toggle",0),o.nI1(1,"async"),o.nI1(2,"async"),o.bIt("change",function(l){return r.setPresentationModeEnabled(l)}),o.nrm(3,"i",1),o.j41(4,"span"),o.EFF(5,"Presentation Mode"),o.k0s()()),2&i&&o.Y8G("checked",o.bMT(1,2,r.isPresentationModeEnabled$))("title",o.bMT(2,4,r.isPresentationModeEnabled$)?"Disable flashlight hover effect":"Enable flashlight hover effect")},dependencies:[JS,zn],styles:["i[_ngcontent-%COMP%]{margin-right:4px}"]})}}return n})();const $pe=sn(ko,n=>n.experimentalFeaturesEnabled),qpe=sn(ko,n=>n.hideFlatBuildings),qW=sn(ko,n=>n.resetCameraIfNewFileIsLoaded),WW=sn(ko,n=>n.layoutAlgorithm),Wpe=sn(ko,n=>n.maxTreeMapFiles);function Zh(n,t=0){let e;return(...i)=>{clearTimeout(e),e=setTimeout(()=>{n.apply(this,i),e=null},t)}}const x7=(n,t,e)=>{const i=Number.parseInt(n.target.value);return ie?e:i};let GR=(()=>{class n{constructor(){this.step=1,this.disabled=!1}handleSliderOnChange(e){e!==this.value&&this.onChange(e)}handleInputOnChange(e){const i=x7(e,this.min,this.max);i!==this.value&&!Number.isNaN(i)&&this.onChange(i)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-slider"]],inputs:{value:"value",min:"min",max:"max",label:"label",step:"step",disabled:"disabled",onChange:"onChange"},standalone:!0,features:[o.aNF],decls:8,vars:10,consts:[[1,"cc-slider-container"],[1,"label"],[1,"slider-with-input"],[3,"disabled","step","min","max"],["matSliderThumb","",3,"input","value"],["appearance","outline","subscriptSizing","dynamic"],["matInput","","type","number",3,"input","value","disabled","min","max"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"mat-label",1),o.EFF(2),o.k0s(),o.j41(3,"div",2)(4,"mat-slider",3)(5,"input",4),o.bIt("input",function(l){return r.handleInputOnChange(l)}),o.k0s()(),o.j41(6,"mat-form-field",5)(7,"input",6),o.bIt("input",function(l){return r.handleInputOnChange(l)}),o.k0s()()()()),2&i&&(o.R7$(2),o.JRh(r.label),o.R7$(2),o.Y8G("disabled",r.disabled)("step",r.step)("min",r.min)("max",r.max),o.R7$(),o.Y8G("value",r.value),o.R7$(2),o.Y8G("value",r.value)("disabled",r.disabled)("min",r.min)("max",r.max))},dependencies:[Nu,aq,hR,Lu,t0],styles:["[_nghost-%COMP%]{width:100%;margin-top:8px;display:inline-block}"]})}}return n})();function Xpe(n,t){if(1&n&&(o.j41(0,"mat-option",2),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e),o.R7$(),o.SpI(" ",e," ")}}function Kpe(n,t){if(1&n&&(o.nrm(0,"cc-slider",3),o.nI1(1,"async")),2&n){const e=o.XpG();o.Y8G("label","Maximum TreeMap Files")("min",1)("max",1e3)("value",o.bMT(1,5,e.maxTreeMapFiles$))("onChange",e.handleChangeMaxTreeMapFiles)}}let Ype=(()=>{class n{constructor(e){this.store=e,this.layoutAlgorithms=Object.values(za),this.layoutAlgorithm$=this.store.select(WW),this.maxTreeMapFiles$=this.store.select(Wpe),this.handleChangeMaxTreeMapFiles=Zh(i=>{this.store.dispatch(h2({value:i}))},400)}handleSelectedLayoutAlgorithmChanged(e){this.store.dispatch(u2({value:e.value}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-layout-selection"]],standalone:!0,features:[o.aNF],decls:9,vars:6,consts:[["appearance","outline","subscriptSizing","dynamic"],[3,"selectionChange","value"],[3,"value"],[1,"cc-tree-maps-max-tree-map-files",3,"label","min","max","value","onChange"]],template:function(i,r){1&i&&(o.j41(0,"mat-form-field",0)(1,"mat-label"),o.EFF(2,"Map Layout"),o.k0s(),o.j41(3,"mat-select",1),o.nI1(4,"async"),o.bIt("selectionChange",function(l){return r.handleSelectedLayoutAlgorithmChanged(l)}),o.Z7z(5,Xpe,2,2,"mat-option",2,o.fX1),o.k0s()(),o.DNE(7,Kpe,2,7,"cc-slider",3),o.nI1(8,"async")),2&i&&(o.R7$(3),o.Y8G("value",o.bMT(4,2,r.layoutAlgorithm$)),o.R7$(2),o.Dyx(r.layoutAlgorithms),o.R7$(2),o.vxM("TreeMapStreet"===o.bMT(8,4,r.layoutAlgorithm$)?7:-1))},dependencies:[Lu,Nu,e0,yd,GR,zn],encapsulation:2})}}return n})();const XW=sn(ko,n=>n.sharpnessMode);function Zpe(n,t){if(1&n&&(o.j41(0,"mat-option",2),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e),o.R7$(),o.SpI(" ",e," ")}}let Jpe=(()=>{class n{constructor(e){this.store=e,this.sharpnessModes=Object.values(gd),this.sharpnessMode$=this.store.select(XW)}handleSelectedSharpnessModeChanged(e){this.store.dispatch(f2({value:e.value}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-display-quality-selection"]],standalone:!0,features:[o.aNF],decls:7,vars:3,consts:[["appearance","outline","subscriptSizing","dynamic"],[3,"selectionChange","value"],[3,"value"]],template:function(i,r){1&i&&(o.j41(0,"mat-form-field",0)(1,"mat-label"),o.EFF(2,"Display Quality"),o.k0s(),o.j41(3,"mat-select",1),o.nI1(4,"async"),o.bIt("selectionChange",function(l){return r.handleSelectedSharpnessModeChanged(l)}),o.Z7z(5,Zpe,2,2,"mat-option",2,o.fX1),o.k0s()()),2&i&&(o.R7$(3),o.Y8G("value",o.bMT(4,1,r.sharpnessMode$)),o.R7$(2),o.Dyx(r.sharpnessModes))},dependencies:[Lu,Nu,e0,yd,zn],encapsulation:2})}}return n})();function C7(n){for(const e of Object.keys(n))if("object"==typeof n[e]&&null!==n[e]){const{x:i,y:r,z:s}=n[e];void 0!==i||void 0!==r||void 0!==s?n[e]=new pe(i??1,r??1,s??1):C7(n[e])}}const jR=sn(Fd,n=>function a1(n){const t=[];if(void 0!==n)for(const{data:e}of oo(n))"Folder"!==e.type&&t.push(e);return t}(n.unifiedMapNode)),M7=n=>{const t=Math.floor(n.length/100);return t<=1?1:Math.min(t,10)};function rAe(n,t){if(1&n&&(o.j41(0,"span",2),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.SpI(" ",e.label,"")}}let S2=(()=>{class n{constructor(e,i){this.store=e,this.state=i}applyDefaultSettings(){const e=((n,t)=>{const e={};let i=0;for(const r of n){const s=r.split(".");let l=PW,u=e;for(const[f,p]of s.entries())void 0!==l[p]&&(u[p]||(u[p]={},i++),f===s.length-1?u[p]=l[p]:(l=l[p],u=u[p]))}return 0!==i&&C7(e),n.includes("appSettings.amountOfTopLabels")&&(e.appSettings.amountOfTopLabels=M7(jR(t))),e})(this.settingsKeys,this.state.getValue());this.store.dispatch(hu({value:e})),this.callback&&this.callback()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Vi))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-reset-settings-button"]],inputs:{settingsKeys:"settingsKeys",tooltip:"tooltip",label:"label",callback:"callback"},standalone:!0,features:[o.aNF],decls:3,vars:2,consts:[[3,"click","title"],[1,"fa","fa-undo"],[1,"reset-settings-button-label"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.applyDefaultSettings()}),o.nrm(1,"i",1),o.DNE(2,rAe,2,1,"span",2),o.k0s()),2&i&&(o.Y8G("title",r.tooltip),o.R7$(2),o.vxM(r.label?2:-1))},styles:["button[_ngcontent-%COMP%]{color:#1b9cfc;background:none;align-items:center;display:flex;gap:4px;margin:0;padding:0}button[_ngcontent-%COMP%] .fa[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:40px;width:40px;font-size:18px}button[_ngcontent-%COMP%]:hover .fa[_ngcontent-%COMP%]{border-radius:100%;background-color:#9e9e9e33}"]})}}return n})();const oAe=()=>["appSettings.hideFlatBuildings","appSettings.isWhiteBackground","appSettings.resetCameraIfNewFileIsLoaded","appSettings.layoutAlgorithm","appSettings.maxTreeMapFiles"];let sAe=(()=>{class n{constructor(e){this.store=e,this.screenshotToClipboardEnabled$=this.store.select(uG),this.experimentalFeaturesEnabled$=this.store.select($pe),this.isWhiteBackground$=this.store.select(qG),this.hideFlatBuildings$=this.store.select(qpe),this.resetCameraIfNewFileIsLoaded$=this.store.select(qW)}handleResetCameraIfNewFileIsLoadedChanged(e){this.store.dispatch(yR({value:e.checked}))}handleHideFlatBuildingsChanged(e){this.store.dispatch(a2({value:e.checked}))}handleIsWhiteBackgroundChanged(e){this.store.dispatch(d2({value:e.checked}))}handleExperimentalFeaturesEnabledChanged(e){this.store.dispatch(_R({value:e.checked}))}handleScreenshotToClipboardEnabledChanged(e){this.store.dispatch(gR({value:e.checked}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-global-configuration-dialog"]],standalone:!0,features:[o.aNF],decls:38,vars:17,consts:[["xmlns","http://www.w3.org/1999/html",1,"header"],[1,"cc-global-configuration-dialog-content"],[3,"change","checked"],["title","The camera is reset to the default position when any change in the map layout is made. Layout changes could be area changes, file changes, layout algorithm changes, focussing, excluding etc.",3,"change","checked"],[1,"fa","fa-info-circle"],["title","Current experimental features:\nDynamic Floor Label Height: Raises folder labels further up to reduce flickering on large maps (Needs site refresh)\nVisibility of buildings without area metric: Show buildings without area metric in the map (Needs site refresh)",3,"change","checked"],["tooltip","Reset global settings to their defaults","label","Reset global settings",3,"settingsKeys"],[1,"cc-global-configuration-links-list"],["href","https://codecharta.com/","target","_blank","rel","noopener noreferrer",1,"weblink"],[1,"fa","fa-external-link","icon-link"],["href","https://codecharta.com/docs/overview/introduction","target","_blank","rel","noopener noreferrer",1,"weblink"],["href","https://github.com/MaibornWolff/codecharta/","target","_blank","rel","noopener noreferrer",1,"weblink"],["align","end"],["mat-flat-button","","mat-dialog-close",""]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0)(1,"h2"),o.EFF(2,"Global Configuration"),o.k0s()(),o.j41(3,"mat-dialog-content")(4,"div",1),o.nrm(5,"cc-map-layout-selection")(6,"cc-display-quality-selection"),o.j41(7,"mat-slide-toggle",2),o.nI1(8,"async"),o.bIt("change",function(l){return r.handleHideFlatBuildingsChanged(l)}),o.EFF(9," Hide Flattened Buildings "),o.k0s(),o.j41(10,"mat-slide-toggle",3),o.nI1(11,"async"),o.bIt("change",function(l){return r.handleResetCameraIfNewFileIsLoadedChanged(l)}),o.EFF(12," Reset camera when map layout changes "),o.nrm(13,"i",4),o.k0s(),o.j41(14,"mat-slide-toggle",2),o.nI1(15,"async"),o.bIt("change",function(l){return r.handleIsWhiteBackgroundChanged(l)}),o.EFF(16," White Background "),o.k0s(),o.j41(17,"mat-slide-toggle",5),o.nI1(18,"async"),o.bIt("change",function(l){return r.handleExperimentalFeaturesEnabledChanged(l)}),o.EFF(19," Enable Experimental Features "),o.nrm(20,"i",4),o.k0s(),o.j41(21,"mat-slide-toggle",2),o.nI1(22,"async"),o.bIt("change",function(l){return r.handleScreenshotToClipboardEnabledChanged(l)}),o.EFF(23," Screenshot to clipboard "),o.k0s(),o.nrm(24,"cc-reset-settings-button",6),o.j41(25,"div",7)(26,"a",8),o.nrm(27,"em",9),o.EFF(28,"Website "),o.k0s(),o.j41(29,"a",10),o.nrm(30,"em",9),o.EFF(31,"Documentation "),o.k0s(),o.j41(32,"a",11),o.nrm(33,"em",9),o.EFF(34,"Github "),o.k0s()()()(),o.j41(35,"mat-dialog-actions",12)(36,"button",13),o.EFF(37,"Close"),o.k0s()()),2&i&&(o.R7$(7),o.Y8G("checked",o.bMT(8,6,r.hideFlatBuildings$)),o.R7$(3),o.Y8G("checked",o.bMT(11,8,r.resetCameraIfNewFileIsLoaded$)),o.R7$(4),o.Y8G("checked",o.bMT(15,10,r.isWhiteBackground$)),o.R7$(3),o.Y8G("checked",o.bMT(18,12,r.experimentalFeaturesEnabled$)),o.R7$(4),o.Y8G("checked",o.bMT(22,14,r.screenshotToClipboardEnabled$)),o.R7$(3),o.Y8G("settingsKeys",o.lJ4(16,oAe)))},dependencies:[Yg,Al,Ype,Jpe,JS,S2,Zl,ns,Ta,zn],styles:[".cc-global-configuration-dialog-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:26px}.cc-global-configuration-links-list[_ngcontent-%COMP%]{display:flex;gap:16px}.cc-global-configuration-links-list[_ngcontent-%COMP%] .weblink[_ngcontent-%COMP%]{display:block;color:#000000de;text-decoration:none}.cc-global-configuration-links-list[_ngcontent-%COMP%] .weblink[_ngcontent-%COMP%] .fa[_ngcontent-%COMP%]{margin:8px}"]})}}return n})(),aAe=(()=>{class n{constructor(e){this.dialog=e}showGlobalConfiguration(){this.dialog.open(sAe,{panelClass:"cc-global-configuration-dialog"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-global-configuration-button"]],standalone:!0,features:[o.aNF],decls:4,vars:1,consts:[["mat-button","","title","Global Configuration",3,"click"],[3,"icon"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.showGlobalConfiguration()}),o.j41(1,"span"),o.EFF(2,"Global Configuration"),o.k0s(),o.nrm(3,"cc-action-icon",1),o.k0s()),2&i&&(o.R7$(3),o.Y8G("icon","fa fa-cog"))},dependencies:[ns,pl],styles:["button[_ngcontent-%COMP%]{margin:0}button[_ngcontent-%COMP%] cc-action-icon[_ngcontent-%COMP%]{margin-left:12px}button[_ngcontent-%COMP%]:hover cc-action-icon[_ngcontent-%COMP%]{background-color:#0374c9}span[_ngcontent-%COMP%]{font-size:10pt}"]})}}return n})();function lAe(n,t){1&n&&o.nrm(0,"cc-file-panel")}function cAe(n,t){1&n&&o.nrm(0,"cc-hovered-node-path-panel")}let dAe=(()=>{class n{constructor(e){this.store=e,this.hoveredNodeId$=this.store.select(md)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-tool-bar"]],standalone:!0,features:[o.aNF],decls:12,vars:3,consts:[[1,"right-aligned"]],template:function(i,r){1&i&&(o.nrm(0,"cc-upload-files-button")(1,"cc-screenshot-button")(2,"cc-copy-to-clipboard-button")(3,"cc-export-3d-map-button")(4,"cc-reset-map-button"),o.DNE(5,lAe,1,0,"cc-file-panel"),o.nI1(6,"async"),o.DNE(7,cAe,1,0,"cc-hovered-node-path-panel"),o.j41(8,"div",0),o.nrm(9,"cc-loading-map-progress-spinner")(10,"cc-presentation-mode-button")(11,"cc-global-configuration-button"),o.k0s()),2&i&&(o.R7$(5),o.vxM(null===o.bMT(6,1,r.hoveredNodeId$)?5:7))},dependencies:[nB,Moe,Ooe,Vde,Xfe,Fpe,Ope,zpe,jpe,aAe,zn],styles:["[_nghost-%COMP%]{display:flex;gap:8px;padding-left:8px;align-items:center;background-color:#f0f0f0;height:35px;border-bottom:1px solid #cdcdcd}[_nghost-%COMP%] .right-aligned[_ngcontent-%COMP%]{position:absolute;right:4px;display:inline-flex;align-items:center;width:400px;justify-content:space-between}"]})}}return n})(),KW=(()=>{class n{static{this.NO_EXTENSION="None"}static{this.OTHER_EXTENSION="other"}static{this.OTHER_GROUP_THRESHOLD_VALUE=3}static getMetricDistribution(e,i){if(!e)return[];const r=new Map;let s=0;for(const u of oo(e))if(Ro(u)&&!u.data.isExcluded){const f=u.data.attributes[i],p=n.estimateFileExtension(u.data.name),m=r.get(p);s+=f,m?m.absoluteMetricValue+=f:r.set(p,n.getDistributionObject(p,f))}if(0===s)return[n.getNoneExtension()];let l=[];for(const u of r.values())0!==u.absoluteMetricValue&&(u.relativeMetricValue=100*u.absoluteMetricValue/s,l.push(u));return l.sort((u,f)=>f.absoluteMetricValue-u.absoluteMetricValue),l=n.getMetricDistributionWithOthers(l),l.length>0?l:[n.getNoneExtension()]}static getMetricDistributionWithOthers(e){const i=n.getOtherExtension(),r=[];for(const s of e)s.relativeMetricValue>n.OTHER_GROUP_THRESHOLD_VALUE?r.push(s):(i.absoluteMetricValue+=s.absoluteMetricValue,i.relativeMetricValue+=s.relativeMetricValue);return i.relativeMetricValue>0&&r.push(i),r}static getOtherExtension(){return{fileExtension:n.OTHER_EXTENSION,absoluteMetricValue:0,relativeMetricValue:0,color:n.getColor(n.OTHER_EXTENSION)}}static getDistributionObject(e,i){return{fileExtension:e,absoluteMetricValue:i,relativeMetricValue:0,color:n.getColor(e)}}static estimateFileExtension(e){const i=e.lastIndexOf(".");return i>0&&i!==e.length?e.slice(i+1).toLowerCase():n.NO_EXTENSION}static getNoneExtension(){return{fileExtension:n.NO_EXTENSION,absoluteMetricValue:null,relativeMetricValue:100,color:n.getColor(n.NO_EXTENSION)}}static getColor(e){if(e===n.NO_EXTENSION||e===n.OTHER_EXTENSION)return"#676867";let i=0;for(let r=0;rn.distributionMetric),uAe=sn(Fd,YW,(n,t)=>KW.getMetricDistribution(n.unifiedMapNode,t)),$R=sn(kS,n=>n.attributeDescriptors),Xp=sn($c,n=>n.edgeMetric),qR=sn(hv,C2,Hg,Xp,(n,t,e,i)=>({areaMetric:n,heightMetric:t,colorMetric:e,edgeMetric:i})),hAe=["*"];let ZW=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-rounded-box"]],inputs:{backgroundColor:"backgroundColor"},standalone:!0,features:[o.aNF],ngContentSelectors:hAe,decls:3,vars:2,consts:[[1,"metric-value"],[1,"rounded-box"]],template:function(i,r){1&i&&(o.NAR(),o.j41(0,"div",0)(1,"div",1),o.SdG(2),o.k0s()()),2&i&&(o.R7$(),o.xc7("background-color",r.backgroundColor))},styles:[".metric-value[_ngcontent-%COMP%]{height:25px}.metric-value[_ngcontent-%COMP%] .rounded-box[_ngcontent-%COMP%]{background-color:#e6e6e6;border-radius:2px;padding:2px 5px;display:inline-block}"]})}}return n})();function d0(...n){const t=nh(n),e=BA(n),{args:i,keys:r}=Pj(n);if(0===i.length)return sa([],t);const s=new qr.c(function pAe(n,t,e=Ll.D){return i=>{JW(t,()=>{const{length:r}=n,s=new Array(r);let l=r,u=r;for(let f=0;f{const p=sa(n[f],t);let m=!1;p.subscribe((0,lr._)(i,_=>{s[f]=_,m||(m=!0,u--),u||i.next(e(s.slice()))},()=>{--l||i.complete()}))},i)},i)}}(i,t,r?l=>Oj(r,l):Ll.D));return e?s.pipe(kc(e)):s}function JW(n,t,e){n?js(e,n,t):t()}const AAe=sn(c_,n=>n.selectedBuildingId),u0=sn(AAe,jw,(n,t)=>t?.get(n));class mAe{constructor(){this.vertexShaderCode=v(1812),this.fragmentShaderCode=v(1190)}}class gAe{constructor(t){this._buildings=new Array,this.mapSize=t,this.scales=new pe(1,1,1)}add(t){this._buildings.push(t)}get buildings(){return this._buildings}setScales(t){this.scales=new pe(t.x,t.y,t.z)}getBuildingByPath(t){return this.buildings.find(e=>e.node.path===t)}intersect(t){let e,i=Number.POSITIVE_INFINITY;const r=this.scales.clone().multiplyScalar(this.mapSize).multiply(new pe(-1,0,-1));for(const s of this._buildings){const l=s.boundingBox.clone();if(l.min.multiply(this.scales),l.max.multiply(this.scales),l.translate(r),this.rayIntersectsAxisAlignedBoundingBox(t,l)){const u=t.intersectBox(l,new pe);if(u){const f=u.distanceTo(t.origin);f=s}}class _Ae{constructor(t,e,i,r){this._id=t,this._boundingBox=e,this._color=r,this._defaultColor=r,this._deltaColor="#000000",this._defaultDeltaColor="#000000",this._node=i}getCenterPoint(t){return new pe(this._node.x0-t+this._node.width/2,this._node.z0+this._node.height,this._node.y0-t+this._node.length/2)}decreaseLightness(t){this._color=this._decreaseLightnessForColor(this._defaultColor,t),this._node.deltas&&(this._deltaColor=this._decreaseLightnessForColor(this._defaultDeltaColor,t))}_decreaseLightnessForColor(t,e){const i=Dr.hexToHSL(t);return i.decreaseLightness(e),i.getLightness()<10?i.setLightness(10):i.setLightness(i.getLightness()),i.toHex()}getColorVector(){return Dr.getVector3(this._color)}getDefaultColorVector(){return Dr.getVector3(this._defaultColor)}getDeltaColorVector(){return Dr.getVector3(this._deltaColor)}getDefaultDeltaColorVector(){return Dr.getVector3(this._defaultDeltaColor)}resetColor(){this._color=this._defaultColor,this._deltaColor=this._defaultDeltaColor}equals(t){return this._id===t._id}get id(){return this._id}get boundingBox(){return this._boundingBox}get color(){return this._color}get node(){return this._node}get deltaColor(){return this._deltaColor}get defaultDeltaColor(){return this._defaultDeltaColor}setColor(t){this._color=t}setNode(t){this._node=t}setInitialDeltaColor(t){this._defaultDeltaColor=t,this._deltaColor=t}setDeltaColor(t){this._deltaColor=t}}var WR=function(n){return n[n.left=0]="left",n[n.right=1]="right",n[n.bottom=2]="bottom",n[n.top=3]="top",n[n.back=4]="back",n[n.front=5]="front",n}(WR||{});const bAe=[[-1,0,0],[1,0,0],[0,-1,0],[0,1,0],[0,0,-1],[0,0,1]],eX=[1,0,1,1,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,0,1,0,1,1,0,1,1,0,0,0,0,1,1,1];function tX(n,t,e,i,r,s,l){s.add(new _Ae(r,new Ss(new pe(e.x,e.y,e.z),new pe(e.x+e.width,e.y+e.height,e.z+e.depth)),t,i)),n.uvs.set(eX,r*eX.length),function vAe(n,t,e){const{x:i,y:r,z:s,width:l,height:u,depth:f}=t,p=i+l,m=r+u,_=s+f;let b=4*e*6*3;n[b++]=i,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=_,n[b++]=i,n[b++]=r,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=s,n[b++]=p,n[b++]=m,n[b++]=s,n[b++]=p,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=_,n[b++]=i,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=r,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=m,n[b++]=s,n[b++]=p,n[b++]=r,n[b++]=_,n[b++]=i,n[b++]=r,n[b++]=_,n[b++]=i,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=s,n[b++]=p,n[b++]=m,n[b++]=s}(n.positions,e,r),function wAe(n,t,e,i,r,s){const{y:l,height:u}=t,p=i/(l+u-l);let m=6*r*4,_=3*m,b=6*r*6;const w=Dr.getVector3Array(e);for(let F=0;F<6;F++){const D=yAe(F,n),T=bAe[F],I=m,O=m+1,R=m+2,P=m+3;s.isHeight.set(D,m);for(const te=m+4;m{class n{static{this.MINIMAL_BUILDING_HEIGHT=1}build(e,i,r,s){const l=new gAe(Is);this.floorGradient=Dr.gradient("#333333","#DDDDDD",this.getMaxNodeDepth(e)),this.materials=[i];const u=e.length,b=4*u*6,w={positions:new Float32Array(3*b),uvs:new Float32Array(2*b),normals:new Float32Array(3*b),colors:new Float32Array(3*b),indices:new Uint32Array(6*u*6),ids:new Float32Array(b),deltas:new Float32Array(b),isHeight:new Float32Array(b)};for(const[F,D]of e.entries())D.isLeaf?this.addBuilding(w,D,F,l,r,s):this.addFloor(w,D,F,l);return{mesh:this.buildMeshFromIntermediateVertexData(w),desc:l}}getMaxNodeDepth(e){return e.reduce((i,{depth:r})=>Math.max(r,i),0)}mapNodeToLocalBox(e){return{x:e.x0,y:e.z0,z:e.y0,width:e.width,height:e.height,depth:e.length}}ensureMinHeightUnlessDeltaIsNegative(e,i){return i<=0?e:Math.max(e,n.MINIMAL_BUILDING_HEIGHT)}addFloor(e,i,r,s){const l=this.getMarkingColorWithGradient(i);tX(e,i,this.mapNodeToLocalBox(i),l,r,s,0)}getMarkingColorWithGradient(e){if(e.markingColor){const r=Dr.getNumber(e.markingColor)&(e.depth%2==0?14540253:16777215);return Dr.convertNumberToHex(r)}return this.floorGradient[e.depth]}addBuilding(e,i,r,s,l,u){const f=this.mapNodeToLocalBox(i);f.height=this.ensureMinHeightUnlessDeltaIsNegative(i.height,i.heightDelta);let p=0;u&&i.deltas&&i.deltas[l.dynamicSettings.heightMetric]&&i.heightDelta&&(p=i.heightDelta,!i.flat&&p<0&&(f.height+=Math.abs(p))),tX(e,i,f,i.color,r,s,p)}buildMeshFromIntermediateVertexData(e){const s=new Float32Array(e.colors),l=new Yi;return l.setAttribute("position",new ae(e.positions,3)),l.setAttribute("normal",new ae(e.normals,3)),l.setAttribute("isHeight",new ae(e.isHeight,1)),l.setAttribute("uv",new ae(e.uvs,2)),l.setAttribute("color",new ae(e.colors,3)),l.setAttribute("deltaColor",new ae(s,3)),l.setAttribute("subGeomIdx",new ae(e.ids,1)),l.setAttribute("delta",new ae(e.deltas,1)),l.setIndex(new ae(e.indices,1)),l.addGroup(0,Number.POSITIVE_INFINITY,0),new dr(l,this.materials)}}return n})(),CAe=(()=>{class n{static{this.NUM_OF_COLOR_VECTOR_FIELDS=3}static{this.NUM_OF_VERTICES=24}static{this.LIGHTNESS_INCREASE=-10}static{this.LIGHTNESS_DECREASE=20}constructor(e,i,r){this.initMaterial(),this.geomGen=new xAe,this.material.precision="lowp";const s=this.geomGen.build(e,this.material,i,r);this.threeMesh=s.mesh,this.mapGeomDesc=s.desc,this.nodes=e,this.initDeltaColorsOnMesh(i)}getThreeMesh(){return this.threeMesh}getNodes(){return this.nodes}selectBuilding(e,i){e.setColor(i),e.setDeltaColor(i),this.setVertexColor(e.id,e.getColorVector(),e.getDeltaColorVector()),this.updateVertices()}clearSelection(e){e.resetColor(),this.setVertexColor(e.id,e.getDefaultColorVector(),e.getDefaultDeltaColorVector()),this.updateVertices()}getMeshDescription(){return this.mapGeomDesc}getBuildingByPath(e){return this.mapGeomDesc.getBuildingByPath(e)}checkMouseRayMeshIntersection(e,i){const r=this.calculatePickingRay(e,i);return this.getMeshDescription().intersect(r)}setScale(e){this.mapGeomDesc.setScales(e)}highlightBuilding(e,i,r,s){const l=Za.buildingArrayToMap(e);for(const u of this.mapGeomDesc.buildings)this.isBuildingSelected(i,u)||(l.get(u.id)||s.get(u.id)?u.decreaseLightness(n.LIGHTNESS_INCREASE):this.adjustSurroundingBuildingColors(e,u,r),this.setVertexColor(u.id,u.getColorVector(),u.getDeltaColorVector()));this.updateVertices()}clearHighlight(e){for(const i of this.mapGeomDesc.buildings)this.isBuildingSelected(e,i)||this.setVertexColor(i.id,i.getDefaultColorVector(),i.getDefaultDeltaColorVector());this.updateVertices()}adjustSurroundingBuildingColors(e,i,r){if(r.appSettings.isPresentationMode){const s=e[0].getCenterPoint(Is).distanceTo(i.getCenterPoint(Is));this.decreaseLightnessByDistance(i,s)}else i.decreaseLightness(n.LIGHTNESS_DECREASE)}initDeltaColorsOnMesh(e){if(this.mapGeomDesc.buildings[0]?.node.deltas){for(const i of this.mapGeomDesc.buildings)this.setNewDeltaColor(i,e),this.setVertexColor(i.id,i.getColorVector(),i.getDeltaColorVector());this.updateVertices()}}setNewDeltaColor(e,i){const{appSettings:{mapColors:r},dynamicSettings:{heightMetric:s}}=i,{node:l}=e;if(l.flat)e.setInitialDeltaColor(r.flat);else if(l.deltas){const u=l.deltas[s];u>0&&e.setInitialDeltaColor(r.positiveDelta),u<0&&e.setInitialDeltaColor(r.negativeDelta)}}isBuildingSelected(e,i){return e&&i.equals(e)}decreaseLightnessByDistance(e,i){i>800?e.decreaseLightness(40):i>400?e.decreaseLightness(30):i>250?e.decreaseLightness(20):i>100?e.decreaseLightness(15):i>50&&e.decreaseLightness(10)}setVertexColor(e,i,r){const s=n.NUM_OF_VERTICES,l=e*s,u=this.threeMesh.geometry.getAttribute("color"),f=this.threeMesh.geometry.getAttribute("deltaColor");for(let p=l;pthis.height?this.height:this.width}isVertical(){return this.height>this.width}area(){return this.width*this.height}getBottomRight(){return this.bottomRight}}class T7{constructor(t){this.height=0,this.width=0,this.FIXED_MARGIN=.5,this.mapNode=t}getNode(){return this.mapNode}createMarginatedRectangle(t){const e=new ft(t.x+this.FIXED_MARGIN,t.y+this.FIXED_MARGIN);return new h0(e,this.width-2*this.FIXED_MARGIN,this.height-2*this.FIXED_MARGIN)}}var I7=function(n){return n[n.Horizontal=0]="Horizontal",n[n.Vertical=1]="Vertical",n}(I7||{});class nX extends T7{constructor(){super(...arguments),this.spacer=2}getStreetThickness(){const t=this.mapNode.path.split("/"),e=this.mapNode.path.startsWith("/root/")&&3===t.length&&""!==t[2];return"/root"===this.mapNode.path||e?this.calculateRootStreetThickness(this.mapNode):this.calculateNonRootThickness(this.mapNode)}calculateNonRootThickness(t){return 2+5e-4*t.attributes.unary}calculateRootStreetThickness(t){return 8+.001*t.attributes.unary}}function XR(n,t){let e=n.attributes[t]||0;if(0===e&&n.children&&n.children.length>0)for(const i of n.children)e+=XR(i,t);return e}const px={calculateSize:XR,mergeDirectories:function MAe(n,t){let e=n;const i=XR(n,t);for(const r of n.children)if(!Ro(r)&&i===XR(r,t)){const l=e.name;e=r,e.name=`${l}/${r.name}`;break}return e},buildNodeFrom:function EAe(n,t,e,i,r){const s=!(n.children&&n.children.length>0),l=I3(n,i),u=Za.getHeightValue(i,n,e,l),f=Math.abs(s?Math.max(t*u,Za.MIN_BUILDING_HEIGHT):Za.FOLDER_HEIGHT),p=n.rect.height,m=n.rect.topLeft.x,_=n.rect.topLeft.y,b=n.zOffset*Za.FOLDER_HEIGHT;return{name:n.name,id:n.id,width:n.rect.width,height:f,length:p,depth:n.zOffset,mapNodeDepth:100,x0:m,z0:b,y0:_,isLeaf:s,attributes:n.attributes,edgeAttributes:n.edgeAttributes,deltas:n.deltas,heightDelta:n.deltas?.[i.dynamicSettings.heightMetric]?t*n.deltas[i.dynamicSettings.heightMetric]:0,visible:VU(n,s,i,l),path:n.path,link:n.link,markingColor:l1(n,i.fileSettings.markedPackages),flat:l,color:HU(n,i,Qg(i),r,l),incomingEdgePoint:T3(n.rect.width,f,p,new pe(m,b,_),Is),outgoingEdgePoint:T3(n.rect.width,f,p,new pe(m,b,_),Is)}}};var f0=function(n){return n[n.RIGHT=0]="RIGHT",n[n.LEFT=1]="LEFT",n}(f0||{});class pv extends nX{constructor(t,e,i=f0.RIGHT){super(t),this.children=[],this.topRow=[],this.bottomRow=[],this.children=e,this.orientation=i}calculateDimension(t){for(const e of this.children)e.calculateDimension(t);this.splitChildrenToRows(this.children),this.rearrangeRows(),this.metricValue=px.calculateSize(this.mapNode,t),this.width=Math.max(this.getLength(this.topRow),this.getLength(this.bottomRow)),this.height=this.getMaxHeight(this.topRow)+this.getStreetThickness()+this.getMaxHeight(this.bottomRow)+this.spacer}layout(t,e){const i=this.getMaxHeight(this.topRow),r=this.layoutTopRow(e,i,t),s=this.layoutBottomRow(e,i,t);return[...r,this.layoutStreet(e,i),...s]}layoutTopRow(t,e,i){const r=new ft(t.x,t.y),s=[];if(this.orientation===f0.LEFT){const l=this.getLength(this.topRow);r.x+=this.width-l}for(let l=0;lMath.max(e,i.height),Number.MIN_VALUE)}calculateStreetOverhang(t){return this.orientation===f0.LEFT?this.calculateLeftStreetOverhang(t):this.calculateRightStreetOverhang(t)}calculateLeftStreetOverhang(t){const e=this.topRow[0],i=this.bottomRow[0],r=e instanceof Ax&&e.streetRect?e.streetRect.topLeft.x-t.x:this.width-this.getLength(this.topRow),s=i instanceof Ax&&i.streetRect?i.streetRect.topLeft.x-t.x:this.width-this.getLength(this.bottomRow);return r>0&&s>0?Math.min(r,s):0}calculateRightStreetOverhang(t){const e=this.topRow.at(-1),i=this.bottomRow.at(-1),r=t.x+this.width,s=e instanceof Ax&&e.streetRect?r-e.streetRect.getBottomRight().x:this.width-this.getLength(this.topRow),l=i instanceof Ax&&i.streetRect?r-i.streetRect.getBottomRight().x:this.width-this.getLength(this.bottomRow);return s>0&&l>0?Math.min(s,l):0}}var p0=function(n){return n[n.UP=0]="UP",n[n.DOWN=1]="DOWN",n}(p0||{});class Ax extends nX{constructor(t,e,i,r=p0.UP){super(t),this.children=[],this.leftRow=[],this.rightRow=[],this.children=e,this.orientation=r}calculateDimension(t){for(const e of this.children)e.calculateDimension(t);this.splitChildrenToRows(this.children),this.rearrangeRows(),this.metricValue=px.calculateSize(this.mapNode,t),this.width=this.getMaxWidth(this.leftRow)+this.getStreetThickness()+this.getMaxWidth(this.rightRow)+2*this.spacer,this.height=Math.max(this.getLength(this.leftRow),this.getLength(this.rightRow))}layout(t,e){const i=this.getMaxWidth(this.leftRow),r=this.layoutLeftRow(e,i,t),s=this.layoutRightRow(e,i,t);return[...r,this.layoutStreet(e,i),...s]}layoutLeftRow(t,e,i){const r=new ft(t.x,t.y),s=[];if(this.orientation===p0.UP){const l=this.getLength(this.leftRow);r.y+=this.height-l}for(let l=0;le.mapNode.type===i.mapNode.type?0:e.mapNode.type===ts.FILE?-1:1)}splitChildrenToRows(t){this.sortChildrenByType(t);let e=0,i=0;for(const r of t)e+=r.height;for(const r of t)i<=e/2?(r instanceof pv&&(r.orientation=f0.LEFT),this.leftRow.push(r),i+=r.height):this.rightRow.push(r)}rearrangeRows(){this.orientation===p0.UP?this.leftRow.reverse():this.rightRow.reverse()}getMaxWidth(t){return t.reduce((e,i)=>Math.max(e,i.width),Number.MIN_VALUE)}calculateStreetOverhang(t){return this.orientation===p0.UP?this.calculateTopStreetOverhang(t):this.calculateBottomStreetOverhang(t)}calculateTopStreetOverhang(t){const e=this.leftRow[0],i=this.rightRow[0],r=e instanceof pv&&e.streetRect?e.streetRect.topLeft.y-t.y:this.height-this.getLength(this.leftRow),s=i instanceof pv&&i.streetRect?i.streetRect.topLeft.y-t.y:this.height-this.getLength(this.rightRow);return r>0&&s>0?Math.min(r,s):0}calculateBottomStreetOverhang(t){const e=this.leftRow.at(-1),i=this.rightRow.at(-1),r=t.y+this.height,s=e instanceof pv&&e.streetRect?r-e.streetRect.getBottomRight().y:this.height-this.getLength(this.leftRow),l=i instanceof pv&&i.streetRect?r-i.streetRect.getBottomRight().y:this.height-this.getLength(this.rightRow);return s>0&&l>0?Math.min(s,l):0}}class SAe extends T7{constructor(t){super(t)}calculateDimension(t){this.metricValue=px.calculateSize(this.mapNode,t);const e=Math.sqrt(this.metricValue);this.width=this.height=e}layout(t,e){return[{...this.mapNode,value:this.metricValue,rect:this.createMarginatedRectangle(e),zOffset:0}]}}class TAe extends T7{constructor(t){super(t),this.treeMapNodes=[]}calculateDimension(t){this.metricName=t,this.metricValue=Za.calculateSize(this.mapNode,t),this.width=Math.sqrt(this.metricValue),this.height=Math.sqrt(this.metricValue)}}class iX{constructor(t){this.nodes=[],this.nodes=t}totalScaledSize(t,e,i,r){return t.reduce((s,l)=>s+this.scaledSize(l,i,r,e),0)}totalSize(t){return this.nodes.reduce((e,i)=>e+Za.calculateSize(i,t),0)}min(t,e,i,r){return t.reduce((s,l)=>Math.min(s,this.scaledSize(l,i,r,e)),Number.MAX_VALUE)}max(t,e,i,r){return t.reduce((s,l)=>Math.max(s,this.scaledSize(l,i,r,e)),Number.MIN_VALUE)}populate(t,e,i,r){for(const s of t){const l=this.worstAspectRatio(this.nodes,e,i,r);if(!(this.worstAspectRatio([...this.nodes,s],e,i,r)0?F/_:0,T=new h0(new ft(u,t.topLeft.y),D,_);b.push({...w,value:"File"===w.type?e:0,rect:this.applyNodeMargin(T,s),zOffset:r}),u+=D}return b}worstAspectRatio(t,e,i,r){const s=e.width,l=e.area(),u=this.totalScaledSize(t,r,i,l),f=this.min(t,r,i,l),p=this.max(t,r,i,l),m=Math.pow(s,2),_=Math.pow(u,2);return Math.max(m*p/_,_/(m*f))}}var D7=function(n){return n[n.topToBottom=0]="topToBottom",n[n.bottomToTop=1]="bottomToTop",n}(D7||{});class IAe extends iX{constructor(t){super(t)}layout(t,e,i,r,s,l=D7.topToBottom){let u=t.topLeft.y;l!==D7.topToBottom&&this.nodes.reverse();const f=this.nodes,p=t.area(),m=t.height,_=this.totalScaledSize(f,i,e,p)/m,b=[];for(const w of f){const F=this.scaledSize(w,e,p,i),D=_>0?F/_:0,T=new h0(new ft(t.topLeft.x,u),_,D);b.push({...w,value:"File"===w.type?e:0,rect:this.applyNodeMargin(T,s),zOffset:r}),u+=D}return b}worstAspectRatio(t,e,i,r){const s=e.height,l=e.area(),u=this.totalScaledSize(t,r,i,l),f=this.min(t,r,i,l),p=this.max(t,r,i,l),m=s**2,_=u**2;return Math.max(m*p/_,_/(m*f))}}class FAe extends TAe{constructor(t){super(t)}layout(t,e=new ft(0,0)){const i=this.createMarginatedRectangle(e),r={...this.mapNode,value:this.metricValue,rect:i,zOffset:0},s=this.mapNode.children.filter(l=>Za.calculateSize(l,this.metricName)>0);return this.treeMapNodes.push(r),s.length>0&&this.createNodes(s,i,this.metricValue,1,t),this.treeMapNodes}createNodes(t,e,i,r,s){let l=0,u=new h0(new ft(e.topLeft.x,e.topLeft.y),e.width,e.height),f=i;const p=this.orderBySizeDescending(t);do{const m=this.createStrip(u,p.slice(l),f),_=m.totalSize(this.metricName);if(_>0){const b=this.createStripNodes(m,u,f,r,s);this.createChildrenNodes(b,r,s),u=this.remainingRectangle(u,m,f,u.area()),f-=_}l+=m.nodes.length}while(l0){const s=r.children.filter(l=>Za.calculateSize(l,this.metricName)>0);if(s.length>0){const l=Za.calculateSize(r,this.metricName);this.createNodes(s,r.rect,l,e+1,i)}}}orderBySizeDescending(t){return t.sort((e,i)=>Za.calculateSize(i,this.metricName)-Za.calculateSize(e,this.metricName))}}class Av{static createStreetLayoutNodes(t,e,i,r){const s=U_(e.files),l=i.find(F=>F.name===e.dynamicSettings.heightMetric).maxValue*s,u=e.dynamicSettings.areaMetric,f=px.mergeDirectories(t,u),m=this.createBoxes(f,u,e,I7.Vertical,1,e.appSettings.maxTreeMapFiles),_=new pv(f,m,0);return _.calculateDimension(u),_.layout(.02*e.dynamicSettings.margin,new ft(0,0)).map(F=>px.buildNodeFrom(F,this.calculateHeightScale(t,Is,l),l,e,r))}static createBoxes(t,e,i,r,s,l){const u=[],f=i.dynamicSettings.areaMetric;for(let p of t.children){if(Ro(p)){u.push(new SAe(p));continue}if(cu(p.path,i.fileSettings.blacklist,"exclude"))continue;const m=i.appSettings.layoutAlgorithm,_=Av.countFileDescendants(p);if(m===za.TreeMapStreet&&_<=l){const b=Av.createTreeMap(p);u.push(b)}else{p=px.mergeDirectories(p,f);const b=Av.createBoxes(p,e,i,1-r,s+1,l),w=Av.createStreet(p,r,b,s);u.push(w)}}return u}static createStreet(t,e,i,r){return e===I7.Horizontal?new pv(t,i,r):new Ax(t,i,r)}static createTreeMap(t){return new FAe(t)}static countFileDescendants(t){let e=0;for(const i of t.children)e+=Ro(i)?1:Av.countFileDescendants(i);return e}static calculateHeightScale(t,e,i){return 2*e/i*(1e-4*t.attributes.unary+.005*Math.sqrt(t.attributes.unary))}}const B7=sn(ko,n=>n.isLoadingFile);class BAe extends WU{constructor(t,e){super(t,e),this.screenSpacePanning=!1,this.mouseButtons={LEFT:2,MIDDLE:1,RIGHT:0},this.touches={ONE:1,TWO:3}}}let Rd=(()=>{class n{static{this.CAMERA_CHANGED_EVENT_NAME="camera-changed"}constructor(e,i,r){this.threeCameraService=e,this.threeSceneService=i,this.threeRendererService=r,this.MAX_ZOOM=200,this.MIN_ZOOM=10,this.eventEmitter=new GU,this.zoomPercentage$=new $d.t(100)}setControlTarget(e){this.controls.target.set(e.x,e.y,e.z)}updateControls(){this.controls.update()}rotateCameraInVectorDirection(e,i,r){const s=this.getZoom();this.lookAtDirectionFromTarget(e,i,r),this.applyOldZoom(s),this.threeRendererService.render(),this.onInput(this.threeCameraService.camera)}autoFitTo(){setTimeout(()=>{const e=this.getBoundingSphere();if(-1===e.radius)return;const i=this.cameraPerspectiveLengthCalculation(e);this.threeCameraService.camera.position.set(i,i,e.center.z),this.updateControls(),this.focusCameraViewToCenter(e),this.threeRendererService.render(),this.onInput(this.threeCameraService.camera),this.controls.maxDistance=4*i,this.controls.minDistance=e.radius/13,this.setZoomPercentage(140)})}cameraPerspectiveLengthCalculation(e){const s=this.threeCameraService.camera.fov*Math.PI/180*1.3,l=e.radius/Math.tan(s/2);return Math.sqrt(Math.pow(l,2)+Math.pow(l,2))}focusCameraViewToCenter(e){const i=e.center.clone();i.setY(0),this.controls.target.set(i.x,i.y,i.z),this.threeCameraService.camera.lookAt(i),this.threeCameraService.camera.updateProjectionMatrix()}getBoundingSphere(){return(new Ss).setFromObject(this.threeSceneService.mapGeometry).getBoundingSphere(new ha)}lookAtDirectionFromTarget(e,i,r){this.threeCameraService.camera.position.set(this.controls.target.x,this.controls.target.y,this.controls.target.z);const s=new dr(new jc(20,20,20),new Dz);this.threeSceneService.scene.add(s),s.position.set(this.controls.target.x,this.controls.target.y,this.controls.target.z),s.translateX(e),s.translateY(i),s.translateZ(r),this.threeCameraService.camera.lookAt(s.getWorldPosition(s.position)),this.threeSceneService.scene.remove(s)}getZoom(){return this.threeCameraService.camera.position.distanceTo(this.controls.target)}applyOldZoom(e){this.threeCameraService.camera.translateZ(e)}init(e){this.controls=new BAe(this.threeCameraService.camera,e),this.controls.mouseButtons={LEFT:0,MIDDLE:1,RIGHT:2},this.controls.zoomToCursor=!0;const i=r=>{this.controls.zoomToCursor=!r.altKey};window.addEventListener("keydown",i),window.addEventListener("keyup",i),window.addEventListener("mousemove",i),this.controls.minPolarAngle=0,this.controls.maxPolarAngle=Math.PI/2,this.controls.listenToKeyEvents(window),this.controls.addEventListener("change",()=>{this.onInput(this.threeCameraService.camera),this.updateZoomPercentage(),this.threeRendererService.render()}),this.updateZoomPercentage()}onInput(e){this.setControlTarget(this.controls.target),this.eventEmitter.emit("onCameraChanged",{camera:e})}subscribe(e,i){this.eventEmitter.on(e,r=>{i(r)})}getZoomPercentage(e){const i=this.controls.minDistance,r=this.controls.maxDistance;return e<=i?this.MAX_ZOOM:e>=r?this.MIN_ZOOM:this.MAX_ZOOM-(e-i)/(r-i)*(this.MAX_ZOOM-this.MIN_ZOOM)}getDistanceFromZoomPercentage(e){const i=this.controls.minDistance;return i+(this.MAX_ZOOM-e)/(this.MAX_ZOOM-this.MIN_ZOOM)*(this.controls.maxDistance-i)}updateZoomPercentage(){const e=this.threeCameraService.camera.position.distanceTo(this.controls.target),i=this.getZoomPercentage(e);this.zoomPercentage$.next(i)}setZoomPercentage(e){const i=this.getDistanceFromZoomPercentage(e),r=(new pe).subVectors(this.threeCameraService.camera.position,this.controls.target).normalize();this.threeCameraService.camera.position.copy(this.controls.target).add(r.multiplyScalar(i)),this.updateControls(),this.zoomPercentage$.next(e)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(jh),o.KVO(Dd),o.KVO(wr))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),oX=(()=>{class n{constructor(e,i,r,s){this.state=e,this.threeCameraService=i,this.threeSceneService=r,this.threeMapControlsService=s,this.mapLabelColors=$h.labelColorAndAlpha,this.LABEL_COLOR_RGB=Dr.convertHexToRgba(this.mapLabelColors.rgb),this.LABEL_WIDTH_DIVISOR=2100,this.LABEL_HEIGHT_DIVISOR=35,this.LABEL_CORNER_RADIUS=40,this.LABEL_SCALE_FACTOR=.7,this.LABEL_HEIGHT_COEFFICIENT=3.75,this.LABEL_HEIGHT_POSITION=60,this.previousScaling=new pe(1,1,1),this.lineCount=1,this.nodeHeight=0,this.labels=new Array,this.threeMapControlsService.subscribe("onCameraChanged",()=>this.onCameraChanged())}addLeafLabel(e,i,r=!1){const{appSettings:s,dynamicSettings:l}=this.state.getValue(),{scaling:u,layoutAlgorithm:f,showMetricLabelNodeName:p,showMetricLabelNameValue:m}=s,{margin:_,heightMetric:b}=l,w=new pe(u.x,u.y,u.z);let F="";if(p||r&&!m)F=`${e.name}`;else if(!m)return;m&&(""!==F&&(F+="\n"),F+=`${e.attributes[b]} ${b}`);const D=this.makeText(F,30,e);let T=e.height+Math.abs(e.heightDelta??0);T=T*w.y>i*w.y?T:i,this.nodeHeight=this.nodeHeight>T?this.nodeHeight:T;const O=e.z0,P=(e.x0-Is+e.width/2)*w.x,ee=(O+this.nodeHeight)*w.y,J=(O+e.height)*w.y,te=(e.y0-Is+e.length/2)*w.z,ie=this.LABEL_HEIGHT_COEFFICIENT*_*this.LABEL_SCALE_FACTOR;let W=ie+D.heightValue/2;switch(f){case za.StreetMap:case za.TreeMapStreet:W/=10,this.LABEL_HEIGHT_POSITION=0,D.line=this.makeLine(P,ee+W,J,te);break;default:D.line=this.makeLine(P,ee+ie/2,J,te)}D.sprite.position.set(P,ee+W,te),D.sprite.material.color=new vn(this.mapLabelColors.rgb),D.sprite.material.opacity=this.mapLabelColors.alpha,D.sprite.userData={node:e},this.threeSceneService.labels.add(D.sprite),this.threeSceneService.labels.add(D.line),this.labels.push(D)}clearLabels(){this.threeSceneService.resetLabel(),this.threeSceneService.resetLineHighlight(),this.dispose(this.labels),this.labels=[],this.nodeHeight=0,this.LABEL_HEIGHT_POSITION=60,this.dispose(this.threeSceneService.labels.children),this.threeSceneService.labels.children=[]}disposeSprite(e){e.material.dispose(),e.material.map.dispose(),e.geometry.dispose()}disposeLine(e){e.material.dispose(),e.geometry.dispose()}dispose(e){for(const i of e)i instanceof $5&&this.disposeSprite(i),i instanceof ku&&this.disposeLine(i),void 0!==i.sprite&&this.disposeSprite(i.sprite),void 0!==i.line&&this.disposeLine(i.line)}clearTemporaryLabel(e){const i=this.labels.findIndex(({node:r})=>r===e);i>-1&&(this.labels.splice(i,1),this.dispose(this.threeSceneService.labels.children),this.threeSceneService.labels.children.length-=2,this.threeSceneService.resetLineHighlight())}scale(){const{scaling:e}=this.state.getValue().appSettings,i=new pe(e.x,e.y,e.z),{margin:r}=this.state.getValue().dynamicSettings,s=new pe(0,this.LABEL_HEIGHT_COEFFICIENT*r*this.LABEL_SCALE_FACTOR,0);for(const l of this.labels){const u=i.clone();l.sprite.position.sub(s).divide(this.previousScaling).multiply(u).add(s),u.y>1&&(u.y=1);const p=l.line.geometry.attributes.position;p.setX(0,p.getX(0)*u.x),p.setY(0,p.getY(0)*u.y),p.setZ(0,p.getZ(0)*u.z),p.setX(1,l.sprite.position.x),p.setY(1,l.sprite.position.y),p.setZ(1,l.sprite.position.z),p.needsUpdate=!0}this.previousScaling.copy(i)}onCameraChanged(){for(const e of this.labels)this.setLabelSize(e.sprite,e,e.sprite.material.map.image.width)}makeText(e,i,r){const s=document.createElement("canvas"),l=s.getContext("2d");l.font=`${i}px Roboto`;const f=e.split("\n"),p=l.measureText(f[0]).width,m=l.measureText(f[1]).width;s.width=p>m?p+25:m+25,s.height=25+i*f.length,l.font=`${i}px Roboto`,l.fillStyle="rgba(255,255,255,1)",l.lineJoin="round",l.lineCap="round",l.lineWidth=5,n.drawRectangleWithRoundedCorners(l,0,0,s.width,s.height,this.LABEL_CORNER_RADIUS),l.fillStyle="rgba(0,0,0,1)",l.textAlign="center",l.textBaseline="middle";for(const[F,D]of f.entries())l.fillText(D,s.width/2,s.height*(F+1)/(f.length+1));const _=new Wa(s);_.minFilter=_s,_.needsUpdate=!0;const b=new G5({map:_}),w=new $5(b);return this.lineCount=f.length,this.setLabelSize(w,null,s.width),{sprite:w,heightValue:s.height,line:null,lineCount:f.length,node:r}}static drawRectangleWithRoundedCorners(e,i,r,s,l,u){s<2*u&&(u=s/2),l<2*u&&(u=l/2),e.beginPath(),e.moveTo(i+u,r),e.arcTo(i+s,r,i+s,r+l,u),e.arcTo(i+s,r+l,i,r+l,u),e.arcTo(i,r+l,i,r,u),e.arcTo(i,r,i+s,r,u),e.closePath(),e.fill()}setLabelSize(e,i,r=e.material.map.image.width){const s=(new Ss).setFromObject(this.threeSceneService.mapGeometry).getBoundingSphere(new ha).center;if(this.threeCameraService.camera){const l=this.threeCameraService.camera.position.distanceTo(s);null!==i&&(this.lineCount=i.lineCount),e.scale.set(l/this.LABEL_WIDTH_DIVISOR*r,this.lineCount>1?l/25:l/this.LABEL_HEIGHT_DIVISOR,1)}}makeLine(e,i,r,s){const l=new Ya({color:this.LABEL_COLOR_RGB,linewidth:2}),u=(new Yi).setFromPoints([new pe(e,r,s),new pe(e,i+this.LABEL_HEIGHT_POSITION,s)]);return new ku(u,l)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Vi),o.KVO(jh),o.KVO(Dd),o.KVO(Rd))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const sX=sn(ko,n=>n.amountOfEdgePreviews),kAe=sn(uc,Ru,(n,t)=>{const{nodeEdgeMetricsMap:e}=SG(n,t),i=new Map;for(const[r,s]of e){const l=new Map([...s.entries()].sort((u,f)=>f[1].incoming+f[1].outgoing-(u[1].incoming+u[1].outgoing)));i.set(r,l)}return i}),RAe=sn(kAe,Xp,sX,(n,t,e)=>new Set(PAe(n,t,e))),PAe=(n,t,e)=>{const i=[];if(0===e)return i;const r=n.get(t);if(void 0===r)return i;for(const s of r.keys())if(i.push(s),i.length===e)break;return i},OAe=sn(kS,n=>n.edges),LAe=sn(RAe,OAe,Xp,(n,t,e)=>{const i=C(t);return((n,t,e)=>{for(const i of t)if(i.visible=jl.none,void 0!==i.attributes[e]){const r=n.has(i.fromNodeName),s=n.has(i.toNodeName);r&&s?i.visible=jl.both:r?i.visible=jl.from:s&&(i.visible=jl.to)}})(n,i,e),i});let UAe=(()=>{class n{constructor(e,i,r,s){this.store=e,this.state=i,this.threeSceneService=r,this.idToBuildingService=s,this.VERTICES_PER_LINE=5,this.arrows=new Array,this.HIGHLIGHT_BUILDING_DELAY=1,this.debounceCalculation=Zh(l=>this.resetEdgesOfBuildings(l),this.HIGHLIGHT_BUILDING_DELAY),this.subscription=this.store.select(md).pipe(ro(l=>{if(null!==l){const u=this.idToBuildingService.get(l);this.onBuildingHovered(u)}else this.onBuildingUnhovered()})).subscribe(),this.resetEdgesOfBuildings=l=>{this.isEdgeApplicableForBuilding(l)&&(this.clearArrows(),this.showEdgesOfBuildings(l)),this.scale()},this.onBuildingSelected=l=>{this.isEdgeApplicableForBuilding(l.building)&&(this.clearArrows(),this.showEdgesOfBuildings()),this.scale()},this.onBuildingDeselected=()=>{this.clearArrows(),this.addEdgePreview()},this.threeSceneService.subscribe("onBuildingSelected",this.onBuildingSelected),this.threeSceneService.subscribe("onBuildingDeselected",this.onBuildingDeselected)}ngOnDestroy(){this.subscription.unsubscribe()}onBuildingHovered(e){this.debounceCalculation(e)}onBuildingUnhovered(){const{isEdgeMetricVisible:e}=this.state.getValue().appSettings;e&&(this.clearArrows(),this.showEdgesOfBuildings()),this.scale()}clearArrows(){this.arrows=[],this.threeSceneService.edgeArrows.children.length=0}addArrow(e,i,r){const{appSettings:s,dynamicSettings:l}=this.state.getValue(),u=100*s.edgeHeight;if(e.attributes?.[l.heightMetric]&&i.attributes?.[l.heightMetric]){const f=this.createCurve(i,e,u),p=Dr.getNumber(s.mapColors[r?"outgoingEdge":"incomingEdge"]);this.highlightBuilding(r?e:i),this.setCurveColor(f,p)}}addEdgePreview(){const e=LAe(this.state.getValue());for(const i of e){const r=this.map.get(i.fromNodeName),s=this.map.get(i.toNodeName);if(r&&s&&i.visible!==jl.none&&i.visible){const l=100*this.state.getValue().appSettings.edgeHeight,u=this.createCurve(r,s,l);this.previewMode(u,i.visible)}}}addEdgeMapBasedOnNodes(e){this.map=this.getNodesAsMap(e)}scale(){const{scaling:e}=this.state.getValue().appSettings;for(const i of this.arrows)i.scale.x=e.x,i.scale.y=e.y,i.scale.z=e.z}isEdgeApplicableForBuilding(e){return this.state.getValue().appSettings.isEdgeMetricVisible&&e&&!e.node.flat}showEdgesOfBuildings(e){const i=new Map,r=this.threeSceneService.getSelectedBuilding();if(r){const{node:s}=r;i.set(s.path,s)}if(e){const{node:s}=e;i.set(s.path,s)}i.size>0?this.buildPairingEdges(i):this.addEdgePreview()}buildPairingEdges(e){const{edges:i}=this.state.getValue().fileSettings;for(const r of i){const s=this.map.get(r.fromNodeName);if(void 0===s)continue;const l=this.map.get(r.toNodeName);void 0!==l&&(e.has(s.path)?(this.addArrow(l,s,!0),this.threeSceneService.highlightBuildings()):e.has(l.path)&&(this.addArrow(l,s,!1),this.threeSceneService.highlightBuildings()))}}createCurve(e,i,r){const s=e.outgoingEdgePoint.clone(),l=i.incomingEdgePoint.clone(),u=Math.max(s.y+i.height,l.y+1)+r;return s.setY(u),l.setY(u),new gz(e.outgoingEdgePoint,s,l,i.incomingEdgePoint)}highlightBuilding(e){const i=this.threeSceneService.getMapMesh().getMeshDescription().getBuildingByPath(e.path);this.threeSceneService.addBuildingToHighlightingList(i)}setCurveColor(e,i,r=50){const s=e.getPoints(r),l=this.buildLine(s,i);l.add(this.buildArrow(s)),this.threeSceneService.edgeArrows.add(l),this.arrows.push(l)}previewMode(e,i){if(i===jl.both||i===jl.from){const r=this.makeArrowFromBezier(e,!1);this.threeSceneService.edgeArrows.add(r),this.arrows.push(r)}if(i===jl.both||i===jl.to){const r=this.makeArrowFromBezier(e,!0);this.threeSceneService.edgeArrows.add(r),this.arrows.push(r)}}getNodesAsMap(e){const i=new Map;for(const r of e)i.set(r.path,r);return i}makeArrowFromBezier(e,i,r=50){const s=e.getPoints(r),{incomingEdge:l,outgoingEdge:u}=this.state.getValue().appSettings.mapColors,f=i?l:u,p=i?s.slice(r+1-this.VERTICES_PER_LINE):s.slice(0,s.length-(r+1-this.VERTICES_PER_LINE));return this.buildEdge(p,Dr.getNumber(f))}buildEdge(e,i){const r=this.buildLine(e,i);return r.add(this.buildArrow(e)),r}buildLine(e,i=0){const r=new Yi;r.setFromPoints(e);const s=new Ya({color:i,linewidth:1});return new ku(r,s)}buildArrow(e,i=0,r=10,s=10){const l=e.at(-1).clone().sub(e.at(-2).clone()).normalize(),u=e.at(-1).clone();return l.y<0&&(u.y+=r+1),new bre(l,u,r+1,i,r,s)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(Dd),o.KVO(PS))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var T2=function(){var n=0,t=document.createElement("div");function e(m){return t.appendChild(m.dom),m}function i(m){for(var _=0;_=s+1e3&&(u.update(1e3*l/(m-s),100),s=m,l=0,p)){var _=performance.memory;p.update(_.usedJSHeapSize/1048576,_.jsHeapSizeLimit/1048576)}return m},update:function(){r=this.end()},domElement:t,setMode:i}};T2.Panel=function(n,t,e){var i=1/0,r=0,s=Math.round,l=s(window.devicePixelRatio||1),u=80*l,f=48*l,p=3*l,m=2*l,_=3*l,b=15*l,w=74*l,F=30*l,D=document.createElement("canvas");D.width=u,D.height=f,D.style.cssText="width:80px;height:48px";var T=D.getContext("2d");return T.font="bold "+9*l+"px Helvetica,Arial,sans-serif",T.textBaseline="top",T.fillStyle=e,T.fillRect(0,0,u,f),T.fillStyle=t,T.fillText(n,p,m),T.fillRect(_,b,w,F),T.fillStyle=e,T.globalAlpha=.9,T.fillRect(_,b,w,F),{dom:D,update:function(I,O){i=Math.min(i,I),r=Math.max(r,I),T.fillStyle=e,T.globalAlpha=1,T.fillRect(0,0,u,b),T.fillStyle=t,T.fillText(s(I)+" "+n+" ("+s(i)+"-"+s(r)+")",p,m),T.drawImage(D,_+l,b,w-l,F,_,b,w-l,F),T.fillRect(_+w-l,b,l,F),T.fillStyle=e,T.globalAlpha=.9,T.fillRect(_+w-l,b,l,s((1-I/O)*F))}}};const I2=T2;let aX=(()=>{class n{constructor(e){this.threeRendererService=e,this.isDevelopmentMode=(0,o.naY)(),this.init=i=>{this.isDevelopmentMode&&(this.stats=new I2,this.stats.dom.style.position="absolute",this.stats.dom.style.left="0",this.stats.dom.style.top="0",i.append(this.stats.dom),this.generateStatPanels(),this.prevTime=this.getTimeFunctor().now())},this.getTimeFunctor=()=>typeof performance>"u"?Date:performance,this.generateStatPanels=()=>{this.trianglesPanel={panel:this.stats.addPanel(new I2.Panel("triangles","#ff8","#221")),maxHeight:0},this.glCallsPanel={panel:this.stats.addPanel(new I2.Panel("calls","#f8f","#212")),maxHeight:0},this.geometryMemoryPanel={panel:this.stats.addPanel(new I2.Panel("geo. mem","#f08","#221")),maxHeight:0},this.textureMemoryPanel={panel:this.stats.addPanel(new I2.Panel("tex. mem","#0f8","#221")),maxHeight:0},this.stats.showPanel(3)},this.updateStats=()=>{if(this.isDevelopmentMode){const i=this.getTimeFunctor().now();if(i>=this.prevTime+1e3){this.prevTime=i;const r=this.threeRendererService.getInfo(),s=this.threeRendererService.getMemoryInfo();this.processPanel(this.trianglesPanel,r.triangles),this.processPanel(this.glCallsPanel,r.calls),this.processPanel(this.geometryMemoryPanel,s.geometries),this.processPanel(this.textureMemoryPanel,s.textures)}this.stats.update()}},this.resetPanels=()=>{if(this.isDevelopmentMode)for(const i of[this.trianglesPanel,this.glCallsPanel,this.geometryMemoryPanel,this.textureMemoryPanel])void 0!==i&&(i.maxHeight=0)},this.processPanel=(i,r)=>{i.maxHeight=Math.max(i.maxHeight,r),i.panel.update(r,1.3*i.maxHeight)},this.destroy=()=>{this.isDevelopmentMode&&this.stats.dom.remove()}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(wr))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),lX=(()=>{class n{constructor(e){this.threeMapControlsService=e,this.eventEmitter=new GU,this.currentlyHovered=null,this.isDragging=!1}init(e,i,r){this.cubeGroup=e,this.camera=i,this.renderer=r,this.initOrbitalControl(i,r),this.initRendererEventListeners(r)}resetIsDragging(){this.isDragging=!1}initOrbitalControl(e,i){this.controls=new WU(e,i.domElement),this.controls.maxPolarAngle=Math.PI/2,this.controls.enableZoom=!1,this.controls.enablePan=!1,this.controls.rotateSpeed=1}initRendererEventListeners(e){e.domElement.addEventListener("mousemove",i=>this.onDocumentMouseMove(i)),e.domElement.addEventListener("mouseup",i=>this.onDocumentMouseUp(i)),e.domElement.addEventListener("mousedown",i=>this.onDocumentMouseClick(i,"mousedown")),e.domElement.addEventListener("dblclick",i=>this.onDocumentMouseClick(i,"dblclick")),e.domElement.addEventListener("mouseleave",i=>this.onWindowMouseLeave(i)),e.domElement.addEventListener("mouseenter",()=>this.onDocumentMouseEnter())}onDocumentMouseClick(e,i){this.isDragging=!0,this.checkMouseIntersection(e,i)}onWindowMouseLeave(e){(null==e.relatedTarget||!(e.relatedTarget instanceof HTMLCanvasElement))&&this.enableRotation(!1)}onDocumentMouseEnter(){this.enableRotation(!0)}enableRotation(e){this.controls.enableRotate=e}checkMouseIntersection(e,i){this.getCubeIntersectedByMouse(e)||this.eventEmitter.emit("viewCubeEventPropagation",{type:i,event:e})}getCubeIntersectedByMouse(e){const i=this.transformIntoCanvasVector(e),r=new Zz;r.setFromCamera(i,this.camera);const s=[];for(const u of oo(this.cubeGroup))Ro(u)&&s.push(u.data);const[l]=r.intersectObjects(s);return l?l.object:null}transformIntoCanvasVector(e){const{domElement:i}=this.renderer,r=this.renderer.getPixelRatio(),s=i.getBoundingClientRect();return new ft((e.clientX-s.left)/i.width*r*2-1,-(e.clientY-s.top)/i.height*r*2+1)}propagateMovement(){if(this.isDragging){const e=this.camera.position;this.threeMapControlsService.rotateCameraInVectorDirection(-e.x,-e.y,-e.z)}return this.isDragging}onDocumentMouseMove(e){if(this.propagateMovement())return;const i=this.getCubeIntersectedByMouse(e);i?this.currentlyHovered&&i.uuid!==this.currentlyHovered.uuid?this.triggerViewCubeUnhoverEvent():this.currentlyHovered||this.triggerViewCubeHoverEvent(i):(this.currentlyHovered&&this.triggerViewCubeUnhoverEvent(),this.eventEmitter.emit("viewCubeEventPropagation",{type:"mousemove",event:e}))}onDocumentMouseUp(e){this.isDragging=!1;const i=this.getCubeIntersectedByMouse(e);i?this.eventEmitter.emit("viewCubeClicked",{cube:i}):this.eventEmitter.emit("viewCubeEventPropagation",{type:"mouseup",event:e})}triggerViewCubeHoverEvent(e){this.currentlyHovered=e,F2.changeCursorIndicator(Kp.Pointer),this.eventEmitter.emit("viewCubeHoveredEvent",{cube:e})}triggerViewCubeUnhoverEvent(){this.currentlyHovered=null,F2.changeCursorIndicator(Kp.Default),this.eventEmitter.emit("viewCubeUnHoveredEvent")}subscribe(e,i){this.eventEmitter.on(e,r=>{i(r)})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Rd))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),cX=(()=>{class n{constructor(e,i,r,s,l){this.threeSceneService=e,this.threeCameraService=i,this.threeMapControlsService=r,this.threeRendererService=s,this.threeStatsService=l,this.onWindowResize=()=>{this.threeSceneService.scene.updateMatrixWorld(!1),this.threeRendererService.renderer.setSize(window.innerWidth,window.innerHeight),this.threeCameraService.camera.aspect=window.innerWidth/window.innerHeight,this.threeCameraService.camera.updateProjectionMatrix(),this.animate()},this.onFocusIn=u=>{"INPUT"===u.target.nodeName&&this.threeMapControlsService.controls.stopListenToKeyEvents()},this.onFocusOut=u=>{"INPUT"===u.target.nodeName&&this.threeMapControlsService.controls.listenToKeyEvents(window)}}init(e){this.threeCameraService.init(window.innerWidth,window.innerHeight);const i=this.threeCameraService.camera,r=this.threeSceneService.scene;i.lookAt(r.position),r.add(i),this.threeRendererService.init(window.innerWidth,window.innerHeight,r,i),this.threeStatsService.init(e),this.threeMapControlsService.init(this.threeRendererService.renderer.domElement),e.append(this.threeRendererService.renderer.domElement),window.addEventListener("resize",this.onWindowResize),window.addEventListener("focusin",this.onFocusIn),window.addEventListener("focusout",this.onFocusOut),this.animate(),this.animateStats()}restart(e){this.stopAnimate(),this.destroy(),this.init(e),this.autoFitTo(),this.animate(),this.animateStats()}enableRotation(e){this.threeMapControlsService.controls.enableRotate=e}animate(){this.threeMapControlsService.controls.update(),this.threeRendererService.render()}animateStats(){this.animationFrameId=requestAnimationFrame(()=>this.animateStats()),this.threeStatsService.updateStats()}getRenderCanvas(){return this.threeRendererService.renderer.domElement}getRenderLoseExtention(){return this.threeRendererService.renderer.getContext().getExtension("WEBGL_lose_context")}autoFitTo(){this.threeMapControlsService.autoFitTo()}stopAnimate(){cancelAnimationFrame(this.animationFrameId)}dispose(){this.threeRendererService?.composer?.dispose(),this.threeRendererService?.renderer?.dispose()}destroy(){window.removeEventListener("resize",this.onWindowResize),window.removeEventListener("focusin",this.onFocusIn),window.removeEventListener("focusout",this.onFocusOut),this.dispose(),this.threeStatsService.destroy(),this.getRenderCanvas().remove(),this.dispose()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Dd),o.KVO(jh),o.KVO(Rd),o.KVO(wr),o.KVO(aX))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var KR=function(n){return n[n.LeftClick=0]="LeftClick",n[n.RightClick=2]="RightClick",n}(KR||{}),Kp=function(n){return n.Default="default",n.Grabbing="grabbing",n.Pointer="pointer",n.Moving="move",n}(Kp||{});let F2=(()=>{class n{constructor(e,i,r,s,l,u,f,p,m){this.threeCameraService=e,this.threeRendererService=i,this.threeSceneService=r,this.store=s,this.state=l,this.codeMapLabelService=u,this.viewCubeMouseEvents=f,this.threeViewerService=p,this.idToBuilding=m,this.THRESHOLD_FOR_MOUSE_MOVEMENT_TRACKING=3,this.mouse={x:0,y:0},this.oldMouse={x:0,y:0},this.mouseOnLastClick={x:0,y:0},this.isGrabbing=!1,this.isMoving=!1,this.raycaster=new Zz,this.labelHoveredBuilding=null,this.labelSelectedBuilding=null,this.subscriptions=[this.store.select(uc).pipe(ro(()=>this.onFilesSelectionChanged())).subscribe(),this.store.select(Ru).pipe(ro(_=>this.onBlacklistChanged(_))).subscribe(),this.store.select(md).pipe(ro(_=>{null!==_?this.hoverNode(_):this.unhoverNode(!1)})).subscribe()],this.onViewCubeEventPropagation=_=>{switch(_.type){case"mousemove":this.onDocumentMouseMove(_.event);break;case"mouseup":this.onDocumentMouseUp(_.event);break;case"mousedown":this.onDocumentMouseDown(_.event);break;case"dblclick":this.onDocumentDoubleClick()}},this.onDocumentMouseMove=_=>{this.mouse.x=_.clientX,this.mouse.y=_.clientY,this.updateHovering(),this.viewCubeMouseEvents.propagateMovement()}}ngOnDestroy(){for(const e of this.subscriptions)e.unsubscribe()}static changeCursorIndicator(e){document.body.style.cursor=e}start(){this.threeRendererService.renderer.domElement.addEventListener("mousemove",Zh(this.onDocumentMouseMove,1)),this.threeRendererService.renderer.domElement.addEventListener("mouseup",e=>this.onDocumentMouseUp(e)),this.threeRendererService.renderer.domElement.addEventListener("mousedown",e=>this.onDocumentMouseDown(e)),this.threeRendererService.renderer.domElement.addEventListener("dblclick",()=>this.onDocumentDoubleClick()),this.threeRendererService.renderer.domElement.addEventListener("mouseleave",e=>this.onDocumentMouseLeave(e)),this.threeRendererService.renderer.domElement.addEventListener("mouseenter",()=>this.onDocumentMouseEnter()),this.threeRendererService.renderer.domElement.addEventListener("wheel",Zh(()=>this.threeRendererService.render())),this.viewCubeMouseEvents.subscribe("viewCubeEventPropagation",this.onViewCubeEventPropagation)}hoverNode(e){if(this.isGrabbingOrMoving())return;const{buildings:i}=this.threeSceneService.getMapMesh().getMeshDescription();for(const r of i)if(r.node.id===e){this.hoverBuilding(r,!1);break}this.threeRendererService.render()}unhoverNode(e=!0){this.unhoverBuilding(e),this.threeRendererService.render()}onFilesSelectionChanged(){this.threeSceneService.clearSelection(),this.threeSceneService.clearConstantHighlight(),this.clearLabelHoveredBuilding()}onBlacklistChanged(e){const i=this.threeSceneService.getSelectedBuilding();this.clearLabelHoveredBuilding(),i&&function CN(n,t){return cu(n,t,"exclude")||cu(n,t,"flatten")}(i.node.path,e)&&this.threeSceneService.clearSelection(),this.unhoverBuilding()}updateHovering(){if(this.hasMouseMoved(this.oldMouse)){const e=this.threeSceneService.labels?.children;if(this.isGrabbingOrMoving())return this.threeSceneService.resetLabel(),this.clearLabelHoveredBuilding(),void this.threeRendererService.render();this.oldMouse.x=this.mouse.x,this.oldMouse.y=this.mouse.y;const i=this.threeSceneService.getMapMesh();if(i){this.threeCameraService.camera.updateMatrixWorld(!1);let r="";const s=this.transformHTMLToSceneCoordinates(),l=this.threeCameraService.camera;l.isPerspectiveCamera&&this.raycaster.setFromCamera(s,l);const u=this.calculateHoveredLabel(e);u&&(this.threeSceneService.animateLabel(u.object,this.raycaster,e),r=u.object.userData.node.path),this.intersectedBuilding=""!==r?i.getBuildingByPath(r):i.checkMouseRayMeshIntersection(s,l);const f=this.threeSceneService.getHighlightedBuilding(),p=this.intersectedBuilding;f?.id!==p?.id&&(this.clearLabelHoveredBuilding(),this.threeSceneService.resetLabel(),this.unhoverBuilding(),p&&!this.isGrabbingOrMoving()&&(this.setLabelHoveredLeaf(p,e),this.hoverBuilding(p)))}}}setLabelHoveredLeaf(e,i){if(e?.node?.isLeaf){const r=this.threeSceneService.getLabelForHoveredNode(e,i)??this.drawLabelHoveredBuilding(e);this.threeSceneService.animateLabel(r,this.raycaster,i)}}drawLabelHoveredBuilding(e){this.codeMapLabelService.addLeafLabel(e.node,0,!0);const r=this.threeSceneService.labels?.children,s=this.threeSceneService.getLabelForHoveredNode(e,r);return this.labelHoveredBuilding=e.node,s}drawLabelSelectedBuilding(e){if(this.clearLabelHoveredBuilding(),null!==this.labelSelectedBuilding&&this.codeMapLabelService.clearTemporaryLabel(this.labelSelectedBuilding),!e.node.isLeaf)return;this.codeMapLabelService.addLeafLabel(e.node,0,!0);const i=this.threeSceneService.labels?.children,r=this.threeSceneService.getLabelForHoveredNode(e,i);return this.threeSceneService.animateLabel(r,this.raycaster,i),this.labelSelectedBuilding=e.node,r}clearLabelHoveredBuilding(){null!==this.labelHoveredBuilding&&(this.codeMapLabelService.clearTemporaryLabel(this.labelHoveredBuilding),this.labelHoveredBuilding=null)}clearLabelSelectedBuilding(){null!==this.labelSelectedBuilding&&(this.codeMapLabelService.clearTemporaryLabel(this.labelSelectedBuilding),this.labelSelectedBuilding=null)}EnableOrbitalsRotation(e){this.threeViewerService.enableRotation(e),this.viewCubeMouseEvents.enableRotation(e)}onDocumentMouseEnter(){this.EnableOrbitalsRotation(!0)}onDocumentMouseLeave(e){e.relatedTarget instanceof HTMLCanvasElement||this.EnableOrbitalsRotation(!1)}onDocumentDoubleClick(){const e=this.threeSceneService.getHighlightedBuilding(),i=this.threeSceneService.getSelectedBuilding(),r=e?.node.link;if(r&&!this.hasMouseMoved(this.mouseOnLastClick)&&window.open(r,"_blank"),i?.node.isLeaf){const s=i.node.link;if(s)return void window.open(s,"_blank")}}onDocumentMouseDown(e){e.button===KR.RightClick&&(this.isMoving=!0,n.changeCursorIndicator(Kp.Moving)),e.button===KR.LeftClick&&(this.isGrabbing=!0,n.changeCursorIndicator(Kp.Grabbing)),this.mouseOnLastClick={x:e.clientX,y:e.clientY},document.activeElement.blur()}onDocumentMouseUp(e){this.viewCubeMouseEvents.resetIsDragging(),e.button===KR.LeftClick?this.onLeftClick():this.onRightClick(),n.changeCursorIndicator(void 0!==this.intersectedBuilding?Kp.Pointer:Kp.Default)}calculateHoveredLabel(e){let i=null;for(let r=0;r0&&(i=null===i?s[0]:i.distancethis.THRESHOLD_FOR_MOUSE_MOVEMENT_TRACKING||Math.abs(this.mouse.y-i)>this.THRESHOLD_FOR_MOUSE_MOVEMENT_TRACKING}hasMouseMoved({x:e,y:i}){return this.mouse.x!==e||this.mouse.y!==i}isGrabbingOrMoving(){return this.isGrabbing||this.isMoving}hoverBuilding(e,i=!0){n.changeCursorIndicator(Kp.Pointer);const s=jw(this.state.getValue()).get(e.node.id);for(const{data:l}of oo(s)){const u=this.idToBuilding.get(l.id);u&&this.threeSceneService.addBuildingToHighlightingList(u)}this.threeSceneService.highlightBuildings(),i&&this.store.dispatch(ux({value:e.node.id}))}transformHTMLToSceneCoordinates(){const{renderer:e,renderer:{domElement:i}}=this.threeRendererService,r=e.getPixelRatio(),s=i.getBoundingClientRect();return{x:this.mouse.x/i.width*r*2-1,y:-(this.mouse.y-s.top)/i.height*r*2+1}}unhoverBuilding(e=!0){this.isGrabbingOrMoving()||n.changeCursorIndicator(Kp.Default),this.threeSceneService.getConstantHighlight().size>0?this.threeSceneService.clearHoverHighlight():this.threeSceneService.clearHighlight(),e&&this.store.dispatch(ux({value:null}))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(jh),o.KVO(wr),o.KVO(Dd),o.KVO(Yt),o.KVO(Vi),o.KVO(oX),o.KVO(lX),o.KVO(cX),o.KVO(PS))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),dX=(()=>{class n{constructor(e,i,r,s,l,u,f){this.store=e,this.state=i,this.threeSceneService=r,this.codeMapLabelService=s,this.codeMapArrowService=l,this.threeStatsService=u,this.codeMapMouseEventService=f,this.nodesByColor={positive:[],neutral:[],negative:[]},this.onIsLoadingFileChanged=p=>{p?this.threeSceneService?.dispose():this.threeStatsService?.resetPanels()},this.subscription=this.store.select(B7).pipe(ro(this.onIsLoadingFileChanged)).subscribe()}ngOnDestroy(){this.subscription.unsubscribe()}render(e){const i=this.getNodes(e),r=this.sortVisibleNodesByHeightDescending(i);this.unflattenedNodes=r.filter(({flat:s})=>!s),this.setNewMapMesh(i,r),this.getNodesMatchingColorSelector(this.unflattenedNodes),this.setLabels(this.unflattenedNodes),this.setArrows(r)}setNewMapMesh(e,i){const r=this.state.getValue(),s=new CAe(i,r,dc(r.files));this.threeSceneService.setMapMesh(e,s)}scaleMap(){this.codeMapMouseEventService.unhoverNode(),this.codeMapLabelService.scale(),this.codeMapArrowService.scale(),this.threeSceneService.scaleHeight(),this.codeMapLabelService.clearLabels(),this.setLabels(this.unflattenedNodes)}getNodes(e){const i=this.state.getValue(),r=ka(i).nodeMetricData,{appSettings:{layoutAlgorithm:s},files:l}=i,u=dc(l);switch(s){case za.StreetMap:case za.TreeMapStreet:return Av.createStreetLayoutNodes(e,i,r,u);case za.SquarifiedTreeMap:return function loe(n,t,e,i){const r=U_(t.files),s=e.find(m=>m.name===t.dynamicSettings.heightMetric)?.maxValue*r,l=e.find(m=>m.name===t.dynamicSettings.areaMetric)?.maxValue*r,u=2*Is/s;if(HG(n)){const m=oo(n),_=[Za.buildRootFolderForFixedFolders(m.data,u,t,i)],b=2*Is+zG(m)*(t.dynamicSettings.margin/NG),w=b/_[0].width,F=b/_[0].length;return function coe(n,t,e){n.x0*=e,n.y0*=t,n.width*=e,n.length*=t}(_[0],w,F),[..._,...VG(m,t,w,F,0,0,u,s,l,i,r)]}const f=QG(n,t,r,l),p=[];for(const m of f.treeMap)p.push(Za.buildNodeFrom(m,u,s,t,i));return p}(e,i,r,u);default:return[]}}sortVisibleNodesByHeightDescending(e){return this.state.getValue().appSettings.experimentalFeaturesEnabled?(this.setMinBuildingLength(e),e.filter(r=>r.visible&&r.width>0).sort((r,s)=>s.height-r.height)):e.filter(r=>r.visible&&r.length>0&&r.width>0).sort((r,s)=>s.height-r.height)}setMinBuildingLength(e){for(const i of e)i.length<=0&&(i.length=2)}getNodesMatchingColorSelector(e){const i=this.state.getValue().dynamicSettings;this.nodesByColor={positive:[],negative:[],neutral:[]};for(const r of e)if(r.isLeaf){const s=r.attributes[i.colorMetric];"unary"===i.colorMetric?this.nodesByColor.positive.push(r):null!==s&&(sp.isLeaf).slice(0,l);this.setBuildingLabel(f,u)}}}setArrows(e){this.codeMapArrowService.clearArrows(),this.codeMapArrowService.addEdgeMapBasedOnNodes(e),this.codeMapArrowService.addEdgePreview()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(Dd),o.KVO(oX),o.KVO(UAe),o.KVO(aX),o.KVO(F2))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),k7=(()=>{class n{constructor(e,i){this.store=e,this.codeMapRenderService=i}createNodeObservable(){return d0([this.store.select(GW),this.store.select(u0),this.createTopLevelNodeObservable()]).pipe((0,Xn.T)(([s,l,u])=>s??l??u))}createTopLevelNodeObservable(){return d0([this.store.select(Fd),this.store.select($c)]).pipe(hr(([e])=>!!e.unifiedMapNode),(0,Xn.T)(([e])=>this.findTopLevelNode(e)))}findTopLevelNode(e){const i=this.codeMapRenderService.getNodes(e.unifiedMapNode),r=this.codeMapRenderService.sortVisibleNodesByHeightDescending(i);return r.reduce((s,l)=>s.attributes.unary>l.attributes.unary?s:l,r[0])}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(dX))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),uX=(()=>{class n{constructor(e,i){this.store=e,this.nodeSelectionService=i,this.attributeType="nodes",this.isNodeALeaf=r=>{if(r)return this.isNode(r)?r.isLeaf:Ro(r)}}ngOnInit(){this.isNodeALeaf$=this.nodeSelectionService.createNodeObservable().pipe((0,Xn.T)(e=>this.isNodeALeaf(e))),this.attributeType$=this.store.select(((n,t)=>sn(qR,OU,(e,i)=>"relative"===i[n][e[t]]?"x\u0342":"\u03a3"))(this.attributeType,this.metricFor))}isNode(e){return"isLeaf"in e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(k7))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-chooser-type"]],inputs:{metricFor:"metricFor",attributeType:"attributeType"},standalone:!0,features:[o.aNF],decls:4,vars:6,consts:[[3,"hidden"]],template:function(i,r){1&i&&(o.j41(0,"span",0),o.nI1(1,"async"),o.EFF(2),o.nI1(3,"async"),o.k0s()),2&i&&(o.Y8G("hidden",o.bMT(1,2,r.isNodeALeaf$)),o.R7$(2),o.SpI(" ",o.bMT(3,4,r.attributeType$),"\n"))},dependencies:[zn],encapsulation:2})}}return n})();function QAe(n,t){if(1&n&&(o.j41(0,"cc-rounded-box",1),o.nI1(1,"async"),o.EFF(2),o.nI1(3,"async"),o.k0s()),2&n){let e;const i=o.XpG(),r=o.XpG();o.Y8G("backgroundColor",r.calculateBackgroundColor(i.deltas[o.bMT(1,2,r.primaryMetricNames$)[r.metricFor]])),o.R7$(2),o.SpI(" \u0394",null==(e=i.deltas[o.bMT(3,4,r.primaryMetricNames$)[r.metricFor]])?null:e.toLocaleString()," ")}}function zAe(n,t){if(1&n&&(o.j41(0,"cc-rounded-box"),o.nrm(1,"cc-metric-chooser-type",0),o.j41(2,"span"),o.EFF(3),o.nI1(4,"async"),o.k0s()(),o.DNE(5,QAe,4,6,"cc-rounded-box",1)),2&n){let e;const i=t,r=o.XpG();o.R7$(),o.Y8G("metricFor",r.metricFor),o.R7$(2),o.JRh(null==(e=i.attributes[o.bMT(4,3,r.primaryMetricNames$)[r.metricFor]])?null:e.toLocaleString()),o.R7$(2),o.vxM(i.deltas?5:-1)}}let GAe=(()=>{class n{constructor(e,i){this.nodeSelectionService=e,this.store=i,this.node$=this.nodeSelectionService.createNodeObservable(),this.primaryMetricNames$=this.store.select(qR)}calculateBackgroundColor(e){return"heightMetric"===this.metricFor&&e>0?"#b1d8a8":e<0?"#ffcccc":"#e6e6e6"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(k7),o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-chooser-value"]],inputs:{metricFor:"metricFor"},standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"metricFor"],[3,"backgroundColor"]],template:function(i,r){if(1&i&&(o.DNE(0,zAe,6,5),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.node$))?0:-1,s)}},dependencies:[ZW,uX,zn],styles:["[_nghost-%COMP%]{display:flex;gap:2px}"]})}}return n})(),YR=(()=>{class n{transform(e,i){if(null==e)return qw.get(i)??"";const r=e.title?`${e.title} (${i})`:`${i}`;let s=e.description?`\n${e.description}`:"";return s+=e.hintHighValue?`\nHigh Values: ${e.hintHighValue}`:"",s+=e.hintLowValue?`\nLow Values: ${e.hintLowValue}`:"",s.length>0?`${r}:${s}`:r}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"attributeDescriptorTooltip",type:n,pure:!0,standalone:!0})}}return n})(),jAe=(()=>{class n{transform(e,i){const r=i.toLocaleLowerCase();return e.filter(s=>{let l=s.name;return("complexity"===s.name||"sonar_complexity"===s.name)&&(l+=" (formerly mcc)"),l.toLocaleLowerCase().includes(r)})}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"filterMetricDataBySearchTerm",type:n,pure:!0,standalone:!0})}}return n})();const $Ae=["searchTermInput"],qAe=["matSelect"],WAe=["*"];function XAe(n,t){if(1&n&&o.nrm(0,"i"),2&n){const e=o.XpG(2);o.HbH("fa "+e.icon)}}function KAe(n,t){1&n&&o.EFF(0," (formerly mcc) ")}function YAe(n,t){1&n&&(o.j41(0,"span",11),o.EFF(1),o.k0s()),2&n&&(o.R7$(),o.SpI(" ",t," "))}function ZAe(n,t){if(1&n&&(o.j41(0,"mat-option",9),o.nI1(1,"attributeDescriptorTooltip"),o.EFF(2),o.DNE(3,KAe,1,0),o.j41(4,"span",10),o.EFF(5),o.k0s(),o.nrm(6,"br"),o.DNE(7,YAe,2,1,"span",11),o.k0s()),2&n){let e;const i=t.$implicit,r=o.XpG();o.Y8G("value",i.name)("title",o.i5U(1,6,r[i.name],i.name)),o.R7$(2),o.SpI(" ",i.name," "),o.R7$(),o.vxM("complexity"==i.name||"sonar_complexity"==i.name?3:-1),o.R7$(2),o.SpI("(",i.maxValue,")"),o.R7$(2),o.vxM((e=null==r[i.name]?null:r[i.name].description)?7:-1,e)}}function JAe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-select",3,0),o.bIt("selectionChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleMetricChanged(r.value))})("openedChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleOpenedChanged(r))}),o.j41(2,"mat-select-trigger"),o.DNE(3,XAe,1,2,"i",4),o.EFF(4),o.k0s(),o.j41(5,"mat-form-field",5),o.nrm(6,"i",6),o.j41(7,"input",7,1),o.mxI("ngModelChange",function(r){o.eBV(e);const s=o.XpG();return o.DH7(s.searchTerm,r)||(s.searchTerm=r),o.Njj(r)}),o.bIt("keydown",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleKeyDown(r))}),o.k0s()(),o.j41(9,"div",8),o.Z7z(10,ZAe,8,9,"mat-option",9,o.fX1),o.nI1(12,"async"),o.nI1(13,"filterMetricDataBySearchTerm"),o.k0s()()}if(2&n){const e=o.XpG();o.Y8G("value",e.selectedMetricName)("disabled",e.isDisabled),o.R7$(3),o.Y8G("ngIf",e.icon),o.R7$(),o.JRh(e.selectedMetricName),o.R7$(3),o.Y8G("placeholder",e.searchPlaceholder),o.R50("ngModel",e.searchTerm),o.R7$(3),o.Dyx(o.i5U(13,8,o.bMT(12,6,e.metricData$),e.searchTerm))}}function eme(n,t){if(1&n&&o.nrm(0,"cc-metric-chooser-value",12),2&n){const e=o.XpG(2);o.Y8G("metricFor",e.metricFor)}}function tme(n,t){1&n&&o.SdG(0)}function nme(n,t){if(1&n&&o.DNE(0,eme,1,1,"cc-metric-chooser-value",12)(1,tme,1,0),2&n){const e=o.XpG();o.vxM(e.metricFor?0:1)}}let D2=(()=>{class n{constructor(e){this.store=e,this.type="node",this.isDisabled=!1,this.searchTerm="",this.attributeDescriptors$=this.store.select($R),this.hideMetricSum=!1}ngOnInit(){this.metricData$=this.store.select(ka).pipe((0,Xn.T)(e=>"node"===this.type?e.nodeMetricData:e.edgeMetricData))}ngAfterViewInit(){this.matOptions.changes.subscribe(e=>{this.setFirstItemActiveOnSearch(e)})}setFirstItemActiveOnSearch(e){const i=e.filter(l=>l._selected),r=e.filter(l=>l.value.toLowerCase().startsWith(this.searchTerm.toLowerCase())).sort((l,u)=>l.value.localeCompare(u.value)),s=this.searchTerm.trim().length>0;setTimeout(()=>{s&&0===i.length&&0===r.length?this.matSelect._keyManager.setActiveItem(0):s&&0===i.length&&r.length>0&&this.matSelect._keyManager.setActiveItem(r[0]);try{document.querySelector(".mdc-list-item--selected").scrollIntoView()}catch{}})}handleOpenedChanged(e){e?(this.searchTermInput.nativeElement.focus(),this.hideMetricSum=!0):(this.searchTerm="",this.hideMetricSum=!1)}handleKeyDown(e){const{key:i}=e;"ArrowDown"!==i&&"ArrowUp"!==i&&"Enter"!==i&&"Escape"!==i&&e.stopPropagation()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-chooser"]],viewQuery:function(i,r){if(1&i&&(o.GBs($Ae,5),o.GBs(qAe,5),o.GBs(yd,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.searchTermInput=s.first),o.mGM(s=o.lsd())&&(r.matSelect=s.first),o.mGM(s=o.lsd())&&(r.matOptions=s)}},hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("hide-metric-value",r.hideMetricSum)},inputs:{metricFor:"metricFor",icon:"icon",selectedMetricName:"selectedMetricName",searchPlaceholder:"searchPlaceholder",handleMetricChanged:"handleMetricChanged",type:"type",isDisabled:"isDisabled"},standalone:!0,features:[o.aNF],ngContentSelectors:WAe,decls:3,vars:4,consts:[["matSelect",""],["searchTermInput",""],["panelClass","cc-metric-chooser",3,"value","disabled"],["panelClass","cc-metric-chooser",3,"selectionChange","openedChange","value","disabled"],[3,"class",4,"ngIf"],[1,"cc-metric-chooser-search-field"],["matPrefix","",1,"fa","fa-search","search-icon"],["matInput","","type","text",3,"ngModelChange","keydown","placeholder","ngModel"],[1,"cc-metric-chooser-option-container"],[3,"value","title"],[1,"metric-max-value"],[1,"metric-subtitle"],[3,"metricFor"]],template:function(i,r){if(1&i&&(o.NAR(),o.DNE(0,JAe,14,11,"mat-select",2),o.nI1(1,"async"),o.DNE(2,nme,2,1)),2&i){let s;o.vxM((s=o.bMT(1,2,r.attributeDescriptors$))?0:-1,s),o.R7$(2),o.vxM(r.hideMetricSum?-1:2)}},dependencies:[e0,tq,Gn,Lu,Q$,t0,ZS,Wg,Jw,nx,yd,GAe,zn,YR,jAe],styles:["[_nghost-%COMP%]{display:flex;width:100%}[_nghost-%COMP%]:hover cc-metric-chooser-value[_ngcontent-%COMP%]{display:none}i.fa[_ngcontent-%COMP%]{padding-right:8px}cc-metric-chooser-value[_ngcontent-%COMP%]{position:absolute;top:10%;right:28px}.mat-mdc-select-placeholder[_ngcontent-%COMP%]{color:#000!important}"]})}}return n})(),ime=(()=>{class n{constructor(e){this.store=e,this.distributionMetric$=this.store.select(YW)}handleDistributionMetricChanged(e){this.store.dispatch(g2({value:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-distribution-metric-chooser"]],standalone:!0,features:[o.aNF],decls:3,vars:5,consts:[[1,"fa","fa-pie-chart"],[3,"selectedMetricName","searchPlaceholder","handleMetricChanged"]],template:function(i,r){1&i&&(o.nrm(0,"i",0)(1,"cc-metric-chooser",1),o.nI1(2,"async")),2&i&&(o.R7$(),o.Y8G("selectedMetricName",o.bMT(2,3,r.distributionMetric$))("searchPlaceholder","Distribution Metric (highest value)")("handleMetricChanged",r.handleDistributionMetricChanged))},dependencies:[D2,zn],styles:["[_nghost-%COMP%]{width:210px;display:flex;align-items:center;font-size:12px;gap:6px;margin-left:5px;margin-right:5px}"]})}}return n})();function rme(n,t){if(1&n){const e=o.RV6();o.j41(0,"span",7),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.toggleShowAbsoluteValues())}),o.j41(1,"div",8),o.bIt("mouseover",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.onHoverFileExtensionBar(r.fileExtension))})("mouseleave",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.onUnhoverFileExtensionBar())}),o.EFF(2),o.k0s()()}if(2&n){const e=t.$implicit,i=o.XpG();o.xc7("width",e.relativeMetricValue+"%")("background",e.color),o.R7$(),o.FS9("title",e.fileExtension.toString()+" "+(i.showAbsoluteValues?e.absoluteMetricValue.toFixed(0):e.relativeMetricValue.toFixed(2)+"%")),o.R7$(),o.Lme(" ",e.relativeMetricValue>=e.fileExtension.length/2+1?e.fileExtension:""," ",i.showAbsoluteValues?e.absoluteMetricValue.toLocaleString():e.relativeMetricValue.toFixed(2)+"%"," ")}}function ome(n,t){if(1&n&&(o.j41(0,"div",6),o.nrm(1,"span",9),o.EFF(2),o.j41(3,"span",10),o.EFF(4),o.k0s()()),2&n){const e=t.$implicit,i=o.XpG();o.R7$(),o.xc7("background",e.color),o.R7$(),o.SpI("",e.fileExtension," : "),o.R7$(2),o.SpI(" ",i.showAbsoluteValues?e.absoluteMetricValue.toLocaleString():e.relativeMetricValue.toFixed(2)+"%"," ")}}let sme=(()=>{class n{constructor(e,i){this.store=e,this.threeSceneService=i,this.showAbsoluteValues=!1,this.showDetails=!1,this.store.select(uAe).subscribe(r=>{this.metricDistribution=r})}onHoverFileExtensionBar(e){const i=new Set;for(const r of this.metricDistribution)"other"!==r.fileExtension&&i.add(r.fileExtension);for(const r of this.threeSceneService.getMapMesh().getMeshDescription().buildings)if(r.node.isLeaf){const s=KW.estimateFileExtension(r.node.name);(s===e||"other"===e&&!i.has(s))&&this.threeSceneService.addBuildingToHighlightingList(r)}this.threeSceneService.highlightBuildings()}onUnhoverFileExtensionBar(){this.threeSceneService.clearHighlight()}toggleShowDetails(){this.showDetails=!this.showDetails}toggleShowAbsoluteValues(){this.showAbsoluteValues=!this.showAbsoluteValues}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Dd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-extension-bar"]],standalone:!0,features:[o.aNF],decls:10,vars:5,consts:[[1,"cc-distribution"],["title","Distribution metric"],[1,"cc-bar"],[1,"cc-bar-section",3,"width","background"],[1,"cc-show-details-button",3,"click"],[1,"cc-distribution-details",3,"click"],[1,"cc-distribution-details-entry"],[1,"cc-bar-section",3,"click"],[1,"cc-bar-section-text",3,"mouseover","mouseleave","title"],[1,"cc-dot"],[1,"cc-detail-metric-value"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nrm(1,"cc-distribution-metric-chooser",1),o.j41(2,"div",2),o.Z7z(3,rme,3,7,"span",3,o.fX1),o.k0s(),o.j41(5,"button",4),o.bIt("click",function(){return r.toggleShowDetails()}),o.nrm(6,"i"),o.k0s()(),o.j41(7,"div",5),o.bIt("click",function(){return r.toggleShowAbsoluteValues()}),o.Z7z(8,ome,5,4,"div",6,o.fX1),o.k0s()),2&i&&(o.R7$(3),o.Dyx(r.metricDistribution),o.R7$(3),o.ZvI("fa ",r.showDetails?"fa-caret-up":"fa-caret-down",""),o.R7$(),o.AVh("cc-hidden",!r.showDetails),o.R7$(),o.Dyx(r.metricDistribution))},dependencies:[ime],styles:['#mat-select-2-panel[_ngcontent-%COMP%]{left:-24px;top:98px}[_nghost-%COMP%]{z-index:30;background-color:#fff}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%]{display:flex;height:17px}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%] .cc-bar[_ngcontent-%COMP%]{flex:1}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%] .cc-bar[_ngcontent-%COMP%] .cc-bar-section[_ngcontent-%COMP%]{height:100%;display:inline-block;overflow:hidden;color:#fff;text-align:center;cursor:pointer;outline:none}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%] .cc-bar[_ngcontent-%COMP%] .cc-bar-section[_ngcontent-%COMP%]:not(:last-child){border-right:1px solid white}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%] .cc-bar[_ngcontent-%COMP%] .cc-bar-section[_ngcontent-%COMP%] .cc-bar-section-text[_ngcontent-%COMP%]{font-size:10px;margin:2px 0;white-space:nowrap;padding:0 10px;text-overflow:""}[_nghost-%COMP%] .cc-show-details-button[_ngcontent-%COMP%]{line-height:10px;width:45px;margin:0;padding:0;background-color:#e6e6e6f5}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%]{border-top:1px solid #cdcdcd;height:25px;transition:all linear .2s}[_nghost-%COMP%] .cc-distribution-details.cc-hidden[_ngcontent-%COMP%]{height:0;border-top:0 solid #cdcdcd}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%]:hover{cursor:pointer}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%] .cc-distribution-details-entry[_ngcontent-%COMP%]{display:inline-block;font-size:15px;color:#000;margin:3px 0 3px 30px}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%] .cc-distribution-details-entry[_ngcontent-%COMP%] .cc-dot[_ngcontent-%COMP%]{height:10px;width:10px;border-radius:50%;display:inline-block;margin-right:8px}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%] .cc-distribution-details-entry[_ngcontent-%COMP%] .cc-detail-metric-value[_ngcontent-%COMP%]{color:gray}']})}}return n})();const hX=sn(ko,n=>n.isSearchPanelPinned),ame=["*"];let R7=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-ribbon-bar-panel-settings"]],standalone:!0,features:[o.aNF],ngContentSelectors:ame,decls:1,vars:0,template:function(i,r){1&i&&(o.NAR(),o.SdG(0))},styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;padding:6px;position:absolute;left:6px;top:45px;background:#fff;border:1px solid #b5b5b5;box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}"]})}}return n})();const lme=["toggle"],cme=["toggleHeader"],dme=[[["cc-ribbon-bar-panel-settings"]],[["",8,"toggleheader"]],"*"],ume=["cc-ribbon-bar-panel-settings",".toggleHeader","*"];function hme(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",6,0),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.toggleSettings())}),o.SdG(2,1),o.k0s()}}function fme(n,t){1&n&&(o.j41(0,"div",4),o.SdG(1,2),o.k0s())}function pme(n,t){if(1&n&&o.nrm(0,"i"),2&n){const e=o.XpG(2);o.HbH("fa fa-angle-"+(e.isExpanded?"up":"down"))}}function Ame(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",7,1),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.toggleSettings())}),o.EFF(2),o.DNE(3,pme,1,2,"i",8),o.k0s()}if(2&n){const e=o.XpG();o.R7$(2),o.SpI(" ",e.title," "),o.R7$(),o.vxM(e.hasSettings?3:-1)}}let P7=(()=>{class n{get hasSettings(){return!!this.settingsRef}constructor(e){this.viewReference=e,this.collapseOnPanelClick=!0,this.separator=!1,this.isExpanded=!1,this.isHeaderExpandable=!1,this.isPinned=!1,this.onToggleSettings=new o.bkB}ngOnInit(){this.mouseDownListener=e=>this.collapseOnOutsideClick(e),document.addEventListener("mousedown",this.mouseDownListener)}ngOnDestroy(){this.mouseDownListener&&document.removeEventListener("mousedown",this.mouseDownListener)}toggleSettings(){this.isExpanded=!this.isExpanded,this.onToggleSettings.emit(this.isExpanded)}collapseOnOutsideClick(e){if(this.isPinned)return;const i=e.target,r=document.querySelector(".cdk-overlay-container"),s=this.viewReference.element.nativeElement.contains(i),l=!!r&&r.contains(i),u=this.settingsRef?.nativeElement?.contains(i)??!1,f=this.toggleSettingsRef.nativeElement.contains(i),p=this.toggleHeaderRef?.nativeElement.contains(i)??!1;!l&&!u&&!f&&!p&&(!s||this.collapseOnPanelClick)&&(this.isExpanded=!1)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.c1b))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-ribbon-bar-panel"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,R7,5,o.aKT),2&i){let l;o.mGM(l=o.lsd())&&(r.settingsRef=l.first)}},viewQuery:function(i,r){if(1&i&&(o.GBs(lme,5),o.GBs(cme,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.toggleSettingsRef=s.first),o.mGM(s=o.lsd())&&(r.toggleHeaderRef=s.first)}},hostVars:6,hostBindings:function(i,r){2&i&&o.AVh("separator",r.separator)("expanded",r.isExpanded)("expandable",r.hasSettings)},inputs:{title:"title",collapseOnPanelClick:"collapseOnPanelClick",separator:"separator",isHeaderExpandable:"isHeaderExpandable",isPinned:"isPinned"},outputs:{onToggleSettings:"onToggleSettings"},standalone:!0,features:[o.aNF],ngContentSelectors:ume,decls:6,vars:2,consts:[["toggleHeader",""],["toggle",""],["appearance","outlined"],[1,"section"],[1,"section-header"],[1,"section-title"],[1,"section-header",3,"click"],[1,"section-title",3,"click"],[3,"class"]],template:function(i,r){1&i&&(o.NAR(dme),o.j41(0,"mat-card",2)(1,"div",3),o.DNE(2,hme,3,0,"div",4)(3,fme,2,0,"div",4)(4,Ame,4,2,"div",5),o.k0s(),o.SdG(5),o.k0s()),2&i&&(o.R7$(2),o.vxM(r.isHeaderExpandable?2:3),o.R7$(2),o.vxM(r.title||r.hasSettings?4:-1))},dependencies:[e2],styles:["mat-card[_ngcontent-%COMP%]{padding:0;height:46px;border-radius:0;border-top:1px solid #cdcdcd;flex:1 1 0}[_nghost-%COMP%]:not(.expanded) mat-card[_ngcontent-%COMP%]{overflow:hidden}.section[_ngcontent-%COMP%] .section-header[_ngcontent-%COMP%]{margin:0 5px;height:31px;color:#444;overflow:hidden;padding:5px}.section[_ngcontent-%COMP%] .section-title[_ngcontent-%COMP%]{font-size:8pt;color:gray;text-align:center;transition:background-color .4s;border-bottom:1px solid transparent;white-space:nowrap;margin:0 5px}.separator[_nghost-%COMP%] .section[_ngcontent-%COMP%] .section-title[_ngcontent-%COMP%]{border-top:1px solid rgba(0,0,0,.12)}.expandable[_nghost-%COMP%] .section[_ngcontent-%COMP%] .section-title[_ngcontent-%COMP%]:hover{background-color:#e0e0e0;cursor:pointer}"]})}}return n})();const O7=sn(zw,n=>""===n||"!"===n||","===n),ZR=n=>(n=n.trim()).startsWith("*")||n.endsWith("*")||n.startsWith("/")||n.startsWith("./")||n.startsWith('"')||n.endsWith('"')||n.startsWith("!")?n:`*${n}*`,fX=(n,t,e)=>{const i=e.trim().split(",");if(e.trim().startsWith("!")){i[0]=i[0].slice(1);for(const r of i){const s=`!${ZR(r)}`;if(n.some(l=>s===l.path&&t===l.type))return!0}return!1}for(const r of i)if(n.some(s=>ZR(r)===s.path&&t===s.type))return!0;return!1},mme=sn(zw,O7,Ru,(n,t,e)=>!!t||fX(e,"flatten",n)),gme=sn(zw,O7,Ru,(n,t,e)=>!!t||fX(e,"exclude",n)),_me=(n,t)=>{const e=[],i=t.split(",");if(i[0].startsWith("!")){i[0]=i[0].slice(1);for(const r of i)r.length>0&&e.push({path:`!${ZR(r)}`,type:n})}else for(let r of i)if(r.length>0){if(r.startsWith("!"))break;r=ZR(r),e.push({path:r,type:n})}return e},bme=(n,t,e)=>{const i=[...t,...e];for(const{file:r}of n)if(!vme(r,i))return!1;return!0},vme=(n,t)=>{for(const e of oo(n.map))if(yme(e,t))return!1;return!0},yme=(n,t)=>Ro(n)&&n.data.path&&!cu(n.data.path,t,"exclude");let pX=(()=>{class n{constructor(e,i,r){this.actions$=e,this.store=i,this.dialog=r,this.doBlacklistItemsResultInEmptyMap$=this.actions$.pipe(qp(d6),ul(this.store.select(uc),this.store.select(Ru)),(0,Xn.T)(([s,l,u])=>({items:s.items,resultsInEmptyMap:bme(l,u,s.items)})),lR()),this.showErrorDialogIfBlacklistItemsResultInEmptyMap$=vs(()=>this.doBlacklistItemsResultInEmptyMap$.pipe(hr(s=>s.resultsInEmptyMap),ro(()=>{this.dialog.open(lu,{data:{title:"Blacklist Error",message:"Excluding all buildings is not possible."}})})),{dispatch:!1}),this.addBlacklistItems$=vs(()=>this.doBlacklistItemsResultInEmptyMap$.pipe(hr(s=>!s.resultsInEmptyMap),(0,Xn.T)(s=>ER({items:s.items}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO($p),o.KVO(Yt),o.KVO(Es))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),xme=(()=>{class n{constructor(e,i,r){this.actions$=e,this.store=i,this.addBlacklistItemsIfNotResultsInEmptyMapEffect=r,this.searchPattern2BlacklistItems$=this.actions$.pipe(qp("BlacklistSearchPatternAction"),ul(this.store.select(zw)),(0,Xn.T)(([s,l])=>({type:s.action.type,blacklistItems:_me(s.action.type,l)})),lR()),this.flattenSearchPattern$=vs(()=>this.searchPattern2BlacklistItems$.pipe(hr(s=>"flatten"===s.type),ro(s=>{this.store.dispatch(ER({items:s.blacklistItems})),this.store.dispatch(o0({value:""}))})),{dispatch:!1}),this.excludeSearchPattern$=vs(()=>this.searchPattern2BlacklistItems$.pipe(hr(s=>"exclude"===s.type),ro(()=>{this.addBlacklistItemsIfNotResultsInEmptyMapEffect.doBlacklistItemsResultInEmptyMap$.pipe(Ms(1),hr(s=>!s.resultsInEmptyMap),ro(()=>{this.store.dispatch(o0({value:""}))})).subscribe()}),(0,Xn.T)(s=>d6({items:s.blacklistItems}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO($p),o.KVO(Yt),o.KVO(pX))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),N7=(()=>{class n{constructor(){this._vertical=!1,this._inset=!1}get vertical(){return this._vertical}set vertical(e){this._vertical=gi(e)}get inset(){return this._inset}set inset(e){this._inset=gi(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(i,r){2&i&&(o.BMQ("aria-orientation",r.vertical?"vertical":"horizontal"),o.AVh("mat-divider-vertical",r.vertical)("mat-divider-horizontal",!r.vertical)("mat-divider-inset",r.inset))},inputs:{vertical:"vertical",inset:"inset"},standalone:!0,features:[o.aNF],decls:0,vars:0,template:function(i,r){},styles:[".mat-divider{display:block;margin:0;border-top-style:solid;border-top-color:var(--mat-divider-color, var(--mat-app-outline));border-top-width:var(--mat-divider-width)}.mat-divider.mat-divider-vertical{border-top:0;border-right-style:solid;border-right-color:var(--mat-divider-color, var(--mat-app-outline));border-right-width:var(--mat-divider-width)}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}"],encapsulation:2,changeDetection:0})}}return n})();function Cme(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",12),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.resetSearchPattern())}),o.nrm(1,"i",13),o.k0s()}}let Mme=(()=>{class n{constructor(e){this.store=e,this.searchPattern$=this.store.select(zw),this.isSearchPatternEmpty$=this.store.select(O7),this.isFlattenPatternDisabled$=this.store.select(mme),this.isExcludePatternDisabled$=this.store.select(gme),this.setSearchPatternDebounced=Zh(i=>this.setSearchPattern(i),400)}setSearchPattern(e){this.store.dispatch(o0({value:e.target.value}))}resetSearchPattern(){this.store.dispatch(o0({value:""}))}blacklistSearchPattern(e){this.store.dispatch((n=>({type:"BlacklistSearchPatternAction",action:{type:n}}))(e))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-search-bar"]],standalone:!0,features:[o.aNF],decls:21,vars:13,consts:[["menu","matMenu"],[1,"fa","fa-search","cc-search-icon"],[1,"cc-search-input"],["type","text","placeholder","Search: *.js, **/app/*",3,"input","value"],["data-testid","search-bar-clear-button",1,"cc-small-action-button","cc-clear-icon"],["title","Add to Blacklist",1,"cc-small-action-button",3,"matMenuTriggerFor"],[1,"fa","fa-ellipsis-h"],["mat-menu-item","","disabled",""],["mat-menu-item","","data-testid","search-bar-flatten-button",3,"click","disabled"],[1,"fa","fa-eye-slash"],["mat-menu-item","","data-testid","search-bar-exclude-button",3,"click","disabled"],[1,"fa","fa-ban"],["data-testid","search-bar-clear-button",1,"cc-small-action-button","cc-clear-icon",3,"click"],[1,"fa","fa-times"]],template:function(i,r){if(1&i){const s=o.RV6();o.nrm(0,"i",1),o.j41(1,"div",2)(2,"input",3),o.nI1(3,"async"),o.bIt("input",function(u){return o.eBV(s),o.Njj(r.setSearchPatternDebounced(u))}),o.k0s(),o.DNE(4,Cme,2,0,"button",4),o.nI1(5,"async"),o.k0s(),o.j41(6,"button",5),o.nrm(7,"i",6),o.k0s(),o.j41(8,"mat-menu",null,0)(10,"button",7),o.EFF(11,"Add Pattern to Blacklist"),o.k0s(),o.nrm(12,"mat-divider"),o.j41(13,"button",8),o.nI1(14,"async"),o.bIt("click",function(){return o.eBV(s),o.Njj(r.blacklistSearchPattern("flatten"))}),o.nrm(15,"i",9),o.EFF(16," Flatten "),o.k0s(),o.j41(17,"button",10),o.nI1(18,"async"),o.bIt("click",function(){return o.eBV(s),o.Njj(r.blacklistSearchPattern("exclude"))}),o.nrm(19,"i",11),o.EFF(20," Exclude "),o.k0s()()}if(2&i){const s=o.sdS(9);o.R7$(2),o.Y8G("value",o.bMT(3,5,r.searchPattern$)),o.R7$(2),o.vxM(o.bMT(5,7,r.isSearchPatternEmpty$)?-1:4),o.R7$(2),o.Y8G("matMenuTriggerFor",s),o.R7$(7),o.Y8G("disabled",o.bMT(14,9,r.isFlattenPatternDisabled$)),o.R7$(4),o.Y8G("disabled",o.bMT(18,11,r.isExcludePatternDisabled$))}},dependencies:[rx,Kh,fR,N7,zn],styles:["[_nghost-%COMP%]{display:inline-block;text-wrap:nowrap}[_nghost-%COMP%] .cc-search-icon[_ngcontent-%COMP%]{margin-right:8px;min-width:16px}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%]{display:inline-block;position:relative}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:204px;border-width:0 0 1px;border-color:#d3d3d3;outline:0;font-size:11pt;height:24px}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{border-color:#0374c9;box-shadow:0 1px #0374c9}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{vertical-align:middle;display:inline-block;position:relative;height:30px}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%] .cc-clear-icon[_ngcontent-%COMP%]{position:absolute;right:0;margin:0;height:24px;width:24px;display:flex;justify-content:center;align-items:center;top:0}[_nghost-%COMP%] button[_ngcontent-%COMP%]{background-color:transparent;box-shadow:none;margin-top:2px;font-size:14px}[_nghost-%COMP%] button.cc-small-action-button[_ngcontent-%COMP%]{margin:0 5px;display:inline-block;height:24px;width:24px;vertical-align:top}[_nghost-%COMP%] button[_ngcontent-%COMP%]:hover{background-color:#d3d3d3;border-radius:50%}"]})}}return n})();const Eme=sn(Ru,n=>0===n.length),Sme=["button"],Tme=["*"];function Ime(n,t){if(1&n&&o.nrm(0,"mat-pseudo-checkbox",3),2&n){const e=o.XpG();o.Y8G("disabled",e.disabled)}}function Fme(n,t){if(1&n&&o.nrm(0,"mat-pseudo-checkbox",3),2&n){const e=o.XpG();o.Y8G("disabled",e.disabled)}}const AX=new o.nKC("MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS",{providedIn:"root",factory:function Dme(){return{hideSingleSelectionIndicator:!1,hideMultipleSelectionIndicator:!1,disabledInteractive:!1}}}),mX=new o.nKC("MatButtonToggleGroup"),Bme={provide:Aa,useExisting:(0,o.Rfq)(()=>L7),multi:!0};let gX=0;class _X{constructor(t,e){this.source=t,this.value=e}}let L7=(()=>{class n{get name(){return this._name}set name(e){this._name=e,this._markButtonsForCheck()}get value(){const e=this._selectionModel?this._selectionModel.selected:[];return this.multiple?e.map(i=>i.value):e[0]?e[0].value:void 0}set value(e){this._setSelectionByValue(e),this.valueChange.emit(this.value)}get selected(){const e=this._selectionModel?this._selectionModel.selected:[];return this.multiple?e:e[0]||null}get multiple(){return this._multiple}set multiple(e){this._multiple=e,this._markButtonsForCheck()}get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._markButtonsForCheck()}get disabledInteractive(){return this._disabledInteractive}set disabledInteractive(e){this._disabledInteractive=e,this._markButtonsForCheck()}get dir(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._markButtonsForCheck()}get hideMultipleSelectionIndicator(){return this._hideMultipleSelectionIndicator}set hideMultipleSelectionIndicator(e){this._hideMultipleSelectionIndicator=e,this._markButtonsForCheck()}constructor(e,i,r){this._changeDetector=e,this._dir=r,this._multiple=!1,this._disabled=!1,this._disabledInteractive=!1,this._controlValueAccessorChangeFn=()=>{},this._onTouched=()=>{},this._name="mat-button-toggle-group-"+gX++,this.valueChange=new o.bkB,this.change=new o.bkB,this.appearance=i&&i.appearance?i.appearance:"standard",this.hideSingleSelectionIndicator=i?.hideSingleSelectionIndicator??!1,this.hideMultipleSelectionIndicator=i?.hideMultipleSelectionIndicator??!1}ngOnInit(){this._selectionModel=new dR(this.multiple,void 0,!1)}ngAfterContentInit(){this._selectionModel.select(...this._buttonToggles.filter(e=>e.checked)),this.multiple||this._initializeTabIndex()}writeValue(e){this.value=e,this._changeDetector.markForCheck()}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}_keydown(e){if(this.multiple||this.disabled)return;const r=e.target.id,s=this._buttonToggles.toArray().findIndex(u=>u.buttonId===r);let l=null;switch(e.keyCode){case 32:case 13:l=this._buttonToggles.get(s)||null;break;case 38:l=this._getNextButton(s,-1);break;case 37:l=this._getNextButton(s,"ltr"===this.dir?-1:1);break;case 40:l=this._getNextButton(s,1);break;case 39:l=this._getNextButton(s,"ltr"===this.dir?1:-1);break;default:return}l&&(e.preventDefault(),l._onButtonClick(),l.focus())}_emitChangeEvent(e){const i=new _X(e,this.value);this._rawValue=i.value,this._controlValueAccessorChangeFn(i.value),this.change.emit(i)}_syncButtonToggle(e,i,r=!1,s=!1){!this.multiple&&this.selected&&!e.checked&&(this.selected.checked=!1),this._selectionModel?i?this._selectionModel.select(e):this._selectionModel.deselect(e):s=!0,s?Promise.resolve().then(()=>this._updateModelValue(e,r)):this._updateModelValue(e,r)}_isSelected(e){return this._selectionModel&&this._selectionModel.isSelected(e)}_isPrechecked(e){return!(typeof this._rawValue>"u")&&(this.multiple&&Array.isArray(this._rawValue)?this._rawValue.some(i=>null!=e.value&&i===e.value):e.value===this._rawValue)}_initializeTabIndex(){if(this._buttonToggles.forEach(e=>{e.tabIndex=-1}),this.selected)this.selected.tabIndex=0;else for(let e=0;ethis._selectValue(i))):(this._clearSelection(),this._selectValue(e)))}_clearSelection(){this._selectionModel.clear(),this._buttonToggles.forEach(e=>{e.checked=!1,this.multiple||(e.tabIndex=-1)})}_selectValue(e){const i=this._buttonToggles.find(r=>null!=r.value&&r.value===e);i&&(i.checked=!0,this._selectionModel.select(i),this.multiple||(i.tabIndex=0))}_updateModelValue(e,i){i&&this._emitChangeEvent(e),this.valueChange.emit(this.value)}_markButtonsForCheck(){this._buttonToggles?.forEach(e=>e._markForCheck())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc),o.rXU(AX,8),o.rXU(Ks,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-button-toggle-group"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,JR,5),2&i){let l;o.mGM(l=o.lsd())&&(r._buttonToggles=l)}},hostAttrs:[1,"mat-button-toggle-group"],hostVars:6,hostBindings:function(i,r){1&i&&o.bIt("keydown",function(l){return r._keydown(l)}),2&i&&(o.BMQ("role",r.multiple?"group":"radiogroup")("aria-disabled",r.disabled),o.AVh("mat-button-toggle-vertical",r.vertical)("mat-button-toggle-group-appearance-standard","standard"===r.appearance))},inputs:{appearance:"appearance",name:"name",vertical:[2,"vertical","vertical",o.L39],value:"value",multiple:[2,"multiple","multiple",o.L39],disabled:[2,"disabled","disabled",o.L39],disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",o.L39],hideMultipleSelectionIndicator:[2,"hideMultipleSelectionIndicator","hideMultipleSelectionIndicator",o.L39]},outputs:{valueChange:"valueChange",change:"change"},exportAs:["matButtonToggleGroup"],standalone:!0,features:[o.Jv_([Bme,{provide:mX,useExisting:n}]),o.GFd]})}}return n})(),JR=(()=>{class n{get buttonId(){return`${this.id}-button`}get tabIndex(){return this._tabIndex}set tabIndex(e){this._tabIndex=e,this._markForCheck()}get appearance(){return this.buttonToggleGroup?this.buttonToggleGroup.appearance:this._appearance}set appearance(e){this._appearance=e}get checked(){return this.buttonToggleGroup?this.buttonToggleGroup._isSelected(this):this._checked}set checked(e){e!==this._checked&&(this._checked=e,this.buttonToggleGroup&&this.buttonToggleGroup._syncButtonToggle(this,this._checked),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled||this.buttonToggleGroup&&this.buttonToggleGroup.disabled}set disabled(e){this._disabled=e}get disabledInteractive(){return this._disabledInteractive||null!==this.buttonToggleGroup&&this.buttonToggleGroup.disabledInteractive}set disabledInteractive(e){this._disabledInteractive=e}constructor(e,i,r,s,l,u){this._changeDetectorRef=i,this._elementRef=r,this._focusMonitor=s,this._checked=!1,this.ariaLabelledby=null,this._disabled=!1,this.change=new o.bkB;const f=Number(l);this.tabIndex=f||0===f?f:null,this.buttonToggleGroup=e,this.appearance=u&&u.appearance?u.appearance:"standard",this.disabledInteractive=u?.disabledInteractive??!1}ngOnInit(){const e=this.buttonToggleGroup;this.id=this.id||"mat-button-toggle-"+gX++,e&&(e._isPrechecked(this)?this.checked=!0:e._isSelected(this)!==this._checked&&e._syncButtonToggle(this,this._checked))}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){const e=this.buttonToggleGroup;this._focusMonitor.stopMonitoring(this._elementRef),e&&e._isSelected(this)&&e._syncButtonToggle(this,!1,!1,!0)}focus(e){this._buttonElement.nativeElement.focus(e)}_onButtonClick(){if(this.disabled)return;const e=!!this.isSingleSelector()||!this._checked;if(e!==this._checked&&(this._checked=e,this.buttonToggleGroup&&(this.buttonToggleGroup._syncButtonToggle(this,this._checked,!0),this.buttonToggleGroup._onTouched())),this.isSingleSelector()){const i=this.buttonToggleGroup._buttonToggles.find(r=>0===r.tabIndex);i&&(i.tabIndex=-1),this.tabIndex=0}this.change.emit(new _X(this,this.value))}_markForCheck(){this._changeDetectorRef.markForCheck()}_getButtonName(){return this.isSingleSelector()?this.buttonToggleGroup.name:this.name||null}isSingleSelector(){return this.buttonToggleGroup&&!this.buttonToggleGroup.multiple}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(mX,8),o.rXU(o.gRc),o.rXU(o.aKT),o.rXU(Yl),o.kS0("tabindex"),o.rXU(AX,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-button-toggle"]],viewQuery:function(i,r){if(1&i&&o.GBs(Sme,5),2&i){let s;o.mGM(s=o.lsd())&&(r._buttonElement=s.first)}},hostAttrs:["role","presentation",1,"mat-button-toggle"],hostVars:14,hostBindings:function(i,r){1&i&&o.bIt("focus",function(){return r.focus()}),2&i&&(o.BMQ("aria-label",null)("aria-labelledby",null)("id",r.id)("name",null),o.AVh("mat-button-toggle-standalone",!r.buttonToggleGroup)("mat-button-toggle-checked",r.checked)("mat-button-toggle-disabled",r.disabled)("mat-button-toggle-disabled-interactive",r.disabledInteractive)("mat-button-toggle-appearance-standard","standard"===r.appearance))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],id:"id",name:"name",value:"value",tabIndex:"tabIndex",disableRipple:[2,"disableRipple","disableRipple",o.L39],appearance:"appearance",checked:[2,"checked","checked",o.L39],disabled:[2,"disabled","disabled",o.L39],disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39]},outputs:{change:"change"},exportAs:["matButtonToggle"],standalone:!0,features:[o.GFd,o.aNF],ngContentSelectors:Tme,decls:8,vars:14,consts:[["button",""],["type","button",1,"mat-button-toggle-button","mat-focus-indicator",3,"click","id","disabled"],[1,"mat-button-toggle-label-content"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"mat-button-toggle-focus-overlay"],["matRipple","",1,"mat-button-toggle-ripple",3,"matRippleTrigger","matRippleDisabled"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(),o.j41(0,"button",1,0),o.bIt("click",function(){return o.eBV(s),o.Njj(r._onButtonClick())}),o.j41(2,"span",2),o.DNE(3,Ime,1,1,"mat-pseudo-checkbox",3)(4,Fme,1,1,"mat-pseudo-checkbox",3),o.SdG(5),o.k0s()(),o.nrm(6,"span",4)(7,"span",5)}if(2&i){const s=o.sdS(1);o.Y8G("id",r.buttonId)("disabled",r.disabled&&!r.disabledInteractive||null),o.BMQ("role",r.isSingleSelector()?"radio":"button")("tabindex",r.disabled&&!r.disabledInteractive?-1:r.tabIndex)("aria-pressed",r.isSingleSelector()?null:r.checked)("aria-checked",r.isSingleSelector()?r.checked:null)("name",r._getButtonName())("aria-label",r.ariaLabel)("aria-labelledby",r.ariaLabelledby)("aria-disabled",r.disabled&&r.disabledInteractive?"true":null),o.R7$(3),o.vxM(r.buttonToggleGroup&&r.checked&&!r.buttonToggleGroup.multiple&&!r.buttonToggleGroup.hideSingleSelectionIndicator?3:-1),o.R7$(),o.vxM(r.buttonToggleGroup&&r.checked&&r.buttonToggleGroup.multiple&&!r.buttonToggleGroup.hideMultipleSelectionIndicator?4:-1),o.R7$(3),o.Y8G("matRippleTrigger",s)("matRippleDisabled",r.disableRipple||r.disabled)}},dependencies:[ml,vI],styles:[".mat-button-toggle-standalone,.mat-button-toggle-group{position:relative;display:inline-flex;flex-direction:row;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);transform:translateZ(0);border-radius:var(--mat-legacy-button-toggle-shape)}.mat-button-toggle-standalone:not([class*=mat-elevation-z]),.mat-button-toggle-group:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}.cdk-high-contrast-active .mat-button-toggle-standalone,.cdk-high-contrast-active .mat-button-toggle-group{outline:solid 1px}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full));border:solid 1px var(--mat-standard-button-toggle-divider-color, var(--mat-app-outline))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard .mat-pseudo-checkbox,.mat-button-toggle-group-appearance-standard .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-standard-button-toggle-selected-state-text-color, var(--mat-app-on-secondary-container))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard:not([class*=mat-elevation-z]),.mat-button-toggle-group-appearance-standard:not([class*=mat-elevation-z]){box-shadow:none}.cdk-high-contrast-active .mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.cdk-high-contrast-active .mat-button-toggle-group-appearance-standard{outline:0}.mat-button-toggle-vertical{flex-direction:column}.mat-button-toggle-vertical .mat-button-toggle-label-content{display:block}.mat-button-toggle{white-space:nowrap;position:relative;color:var(--mat-legacy-button-toggle-text-color);font-family:var(--mat-legacy-button-toggle-label-text-font);font-size:var(--mat-legacy-button-toggle-label-text-size);line-height:var(--mat-legacy-button-toggle-label-text-line-height);font-weight:var(--mat-legacy-button-toggle-label-text-weight);letter-spacing:var(--mat-legacy-button-toggle-label-text-tracking);--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-legacy-button-toggle-selected-state-text-color)}.mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-legacy-button-toggle-focus-state-layer-opacity)}.mat-button-toggle .mat-icon svg{vertical-align:top}.mat-button-toggle .mat-pseudo-checkbox{margin-right:12px}[dir=rtl] .mat-button-toggle .mat-pseudo-checkbox{margin-right:0;margin-left:12px}.mat-button-toggle-checked{color:var(--mat-legacy-button-toggle-selected-state-text-color);background-color:var(--mat-legacy-button-toggle-selected-state-background-color)}.mat-button-toggle-disabled{pointer-events:none;color:var(--mat-legacy-button-toggle-disabled-state-text-color);background-color:var(--mat-legacy-button-toggle-disabled-state-background-color);--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: var(--mat-legacy-button-toggle-disabled-state-text-color)}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:var(--mat-legacy-button-toggle-disabled-selected-state-background-color)}.mat-button-toggle-disabled-interactive{pointer-events:auto}.mat-button-toggle-appearance-standard{color:var(--mat-standard-button-toggle-text-color, var(--mat-app-on-surface));background-color:var(--mat-standard-button-toggle-background-color);font-family:var(--mat-standard-button-toggle-label-text-font, var(--mat-app-label-large-font));font-size:var(--mat-standard-button-toggle-label-text-size, var(--mat-app-label-large-size));line-height:var(--mat-standard-button-toggle-label-text-line-height, var(--mat-app-label-large-line-height));font-weight:var(--mat-standard-button-toggle-label-text-weight, var(--mat-app-label-large-weight));letter-spacing:var(--mat-standard-button-toggle-label-text-tracking, var(--mat-app-label-large-tracking))}.mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:solid 1px var(--mat-standard-button-toggle-divider-color, var(--mat-app-outline))}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:solid 1px var(--mat-standard-button-toggle-divider-color, var(--mat-app-outline))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:none;border-top:solid 1px var(--mat-standard-button-toggle-divider-color, var(--mat-app-outline))}.mat-button-toggle-appearance-standard.mat-button-toggle-checked{color:var(--mat-standard-button-toggle-selected-state-text-color, var(--mat-app-on-secondary-container));background-color:var(--mat-standard-button-toggle-selected-state-background-color, var(--mat-app-secondary-container))}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled{color:var(--mat-standard-button-toggle-disabled-state-text-color);background-color:var(--mat-standard-button-toggle-disabled-state-background-color)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: var(--mat-standard-button-toggle-disabled-selected-state-text-color)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled.mat-button-toggle-checked{color:var(--mat-standard-button-toggle-disabled-selected-state-text-color);background-color:var(--mat-standard-button-toggle-disabled-selected-state-background-color)}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:var(--mat-standard-button-toggle-state-layer-color, var(--mat-app-on-surface))}.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{opacity:var(--mat-standard-button-toggle-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-button-toggle-appearance-standard.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-standard-button-toggle-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}@media(hover: none){.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{display:none}}.mat-button-toggle-label-content{-webkit-user-select:none;user-select:none;display:inline-block;padding:0 16px;line-height:var(--mat-legacy-button-toggle-height);position:relative}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{padding:0 12px;line-height:var(--mat-standard-button-toggle-height)}.mat-button-toggle-label-content>*{vertical-align:middle}.mat-button-toggle-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;pointer-events:none;opacity:0;background-color:var(--mat-legacy-button-toggle-state-layer-color)}.cdk-high-contrast-active .mat-button-toggle-checked .mat-button-toggle-focus-overlay{border-bottom:solid 500px;opacity:.5;height:0}.cdk-high-contrast-active .mat-button-toggle-checked:hover .mat-button-toggle-focus-overlay{opacity:.6}.cdk-high-contrast-active .mat-button-toggle-checked.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{border-bottom:solid 500px}.mat-button-toggle .mat-button-toggle-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-toggle-button{border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;outline:none;width:100%;cursor:pointer}.mat-button-toggle-disabled .mat-button-toggle-button{cursor:default}.mat-button-toggle-button::-moz-focus-inner{border:0}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard{--mat-focus-indicator-border-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full))}.mat-button-toggle-group-appearance-standard .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full));border-bottom-right-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full))}.mat-button-toggle-group-appearance-standard .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-left-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full));border-bottom-left-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full))}"],encapsulation:2,changeDetection:0})}}return n})(),kme=(()=>{class n{constructor(e){this.hideBlacklistItemsIndicator$=e.select(Eme)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-search-panel-mode-selector"]],inputs:{searchPanelMode:"searchPanelMode",updateSearchPanelMode:"updateSearchPanelMode"},standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[["id","blacklist","value","blacklist",3,"click"],[1,"fa","fa-eye-slash"],[1,"has-blacklist-items-indicator",3,"hidden"]],template:function(i,r){1&i&&(o.j41(0,"mat-button-toggle",0),o.bIt("click",function(){return r.updateSearchPanelMode("blacklist")}),o.nrm(1,"i",1)(2,"div",2),o.nI1(3,"async"),o.k0s()),2&i&&(o.R7$(2),o.Y8G("hidden",o.bMT(3,1,r.hideBlacklistItemsIndicator$)))},dependencies:[JR,zn],styles:["[_nghost-%COMP%] mat-button-toggle[_ngcontent-%COMP%]{height:100%;align-items:center}[_nghost-%COMP%] .has-blacklist-items-indicator[_ngcontent-%COMP%]{position:absolute;margin-left:18px;margin-top:-32px;border-radius:50%;background-color:red;width:5px;height:5px}[_nghost-%COMP%] .mat-button-toggle-checked[_ngcontent-%COMP%] .mat-pseudo-checkbox[_ngcontent-%COMP%]{display:none}"]})}}return n})();const bX=n=>sn(Ru,t=>Rme(n,t)),Rme=(n,t)=>{const e=t.filter(i=>i.type===n);return e.sort((i,r)=>i.path.localeCompare(r.path)),e};let Ome=(()=>{class n{create(e){return typeof MutationObserver>"u"?null:new MutationObserver(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),Nme=(()=>{class n{constructor(e){this._mutationObserverFactory=e,this._observedElements=new Map,this._ngZone=(0,o.WQX)(o.SKi)}ngOnDestroy(){this._observedElements.forEach((e,i)=>this._cleanupObserver(i))}observe(e){const i=Mi(e);return new qr.c(r=>{const l=this._observeElement(i).pipe((0,Xn.T)(u=>u.filter(f=>!function Pme(n){if("characterData"===n.type&&n.target instanceof Comment)return!0;if("childList"===n.type){for(let t=0;t!!u.length)).subscribe(u=>{this._ngZone.run(()=>{r.next(u)})});return()=>{l.unsubscribe(),this._unobserveElement(i)}})}_observeElement(e){return this._ngZone.runOutsideAngular(()=>{if(this._observedElements.has(e))this._observedElements.get(e).count++;else{const i=new mi.B,r=this._mutationObserverFactory.create(s=>i.next(s));r&&r.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:r,stream:i,count:1})}return this._observedElements.get(e).stream})}_unobserveElement(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}_cleanupObserver(e){if(this._observedElements.has(e)){const{observer:i,stream:r}=this._observedElements.get(e);i&&i.disconnect(),r.complete(),this._observedElements.delete(e)}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Ome))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),vX=(()=>{class n{get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(e){this._debounce=jn(e),this._subscribe()}constructor(e,i){this._contentObserver=e,this._elementRef=i,this.event=new o.bkB,this._disabled=!1,this._currentSubscription=null}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const e=this._contentObserver.observe(this._elementRef);this._currentSubscription=(this.debounce?e.pipe(x_(this.debounce)):e).subscribe(this.event)}_unsubscribe(){this._currentSubscription?.unsubscribe()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Nme),o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdkObserveContent",""]],inputs:{disabled:[2,"cdkObserveContentDisabled","disabled",o.L39],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"],standalone:!0,features:[o.GFd]})}}return n})();const yX=["*"],xX=["unscopedContent"],Lme=["text"],Ume=[[["","matListItemAvatar",""],["","matListItemIcon",""]],[["","matListItemTitle",""]],[["","matListItemLine",""]],"*",[["","matListItemMeta",""]],[["mat-divider"]]],Vme=["[matListItemAvatar],[matListItemIcon]","[matListItemTitle]","[matListItemLine]","*","[matListItemMeta]","mat-divider"],CX=new o.nKC("ListOption");let MX=(()=>{class n{constructor(e){this._elementRef=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemTitle",""]],hostAttrs:[1,"mat-mdc-list-item-title","mdc-list-item__primary-text"],standalone:!0})}}return n})(),EX=(()=>{class n{constructor(e){this._elementRef=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemLine",""]],hostAttrs:[1,"mat-mdc-list-item-line","mdc-list-item__secondary-text"],standalone:!0})}}return n})(),rge=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemMeta",""]],hostAttrs:[1,"mat-mdc-list-item-meta","mdc-list-item__end"],standalone:!0})}}return n})(),SX=(()=>{class n{constructor(e){this._listOption=e}_isAlignedAtStart(){return!this._listOption||"after"===this._listOption?._getTogglePosition()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(CX,8))}}static{this.\u0275dir=o.FsC({type:n,hostVars:4,hostBindings:function(i,r){2&i&&o.AVh("mdc-list-item__start",r._isAlignedAtStart())("mdc-list-item__end",!r._isAlignedAtStart())},standalone:!0})}}return n})(),oge=(()=>{class n extends SX{static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemAvatar",""]],hostAttrs:[1,"mat-mdc-list-item-avatar"],standalone:!0,features:[o.Vt3]})}}return n})(),sge=(()=>{class n extends SX{static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemIcon",""]],hostAttrs:[1,"mat-mdc-list-item-icon"],standalone:!0,features:[o.Vt3]})}}return n})();const age=new o.nKC("MAT_LIST_CONFIG");let mx=(()=>{class n{constructor(){this._isNonInteractive=!0,this._disableRipple=!1,this._disabled=!1,this._defaultOptions=(0,o.WQX)(age,{optional:!0})}get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=gi(e)}get disabled(){return this._disabled}set disabled(e){this._disabled=gi(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,hostVars:1,hostBindings:function(i,r){2&i&&o.BMQ("aria-disabled",r.disabled)},inputs:{disableRipple:"disableRipple",disabled:"disabled"},standalone:!0})}}return n})(),U7=(()=>{class n{set lines(e){this._explicitLines=jn(e,null),this._updateItemLines(!1)}get disableRipple(){return this.disabled||this._disableRipple||this._noopAnimations||!!this._listBase?.disableRipple}set disableRipple(e){this._disableRipple=gi(e)}get disabled(){return this._disabled||!!this._listBase?.disabled}set disabled(e){this._disabled=gi(e)}get rippleDisabled(){return this.disableRipple||!!this.rippleConfig.disabled}constructor(e,i,r,s,l,u){this._elementRef=e,this._ngZone=i,this._listBase=r,this._platform=s,this._explicitLines=null,this._disableRipple=!1,this._disabled=!1,this._subscriptions=new un.yU,this._rippleRenderer=null,this._hasUnscopedTextContent=!1,this.rippleConfig=l||{},this._hostElement=this._elementRef.nativeElement,this._isButtonElement="button"===this._hostElement.nodeName.toLowerCase(),this._noopAnimations="NoopAnimations"===u,r&&!r._isNonInteractive&&this._initInteractiveListItem(),this._isButtonElement&&!this._hostElement.hasAttribute("type")&&this._hostElement.setAttribute("type","button")}ngAfterViewInit(){this._monitorProjectedLinesAndTitle(),this._updateItemLines(!0)}ngOnDestroy(){this._subscriptions.unsubscribe(),null!==this._rippleRenderer&&this._rippleRenderer._removeTriggerEvents()}_hasIconOrAvatar(){return!(!this._avatars.length&&!this._icons.length)}_initInteractiveListItem(){this._hostElement.classList.add("mat-mdc-list-item-interactive"),this._rippleRenderer=new Im(this,this._ngZone,this._hostElement,this._platform),this._rippleRenderer.setupTriggerEvents(this._hostElement)}_monitorProjectedLinesAndTitle(){this._ngZone.runOutsideAngular(()=>{this._subscriptions.add(ql(this._lines.changes,this._titles.changes).subscribe(()=>this._updateItemLines(!1)))})}_updateItemLines(e){if(!this._lines||!this._titles||!this._unscopedContent)return;e&&this._checkDomForUnscopedTextContent();const i=this._explicitLines??this._inferLinesFromContent(),r=this._unscopedContent.nativeElement;if(this._hostElement.classList.toggle("mat-mdc-list-item-single-line",i<=1),this._hostElement.classList.toggle("mdc-list-item--with-one-line",i<=1),this._hostElement.classList.toggle("mdc-list-item--with-two-lines",2===i),this._hostElement.classList.toggle("mdc-list-item--with-three-lines",3===i),this._hasUnscopedTextContent){const s=0===this._titles.length&&1===i;r.classList.toggle("mdc-list-item__primary-text",s),r.classList.toggle("mdc-list-item__secondary-text",!s)}else r.classList.remove("mdc-list-item__primary-text"),r.classList.remove("mdc-list-item__secondary-text")}_inferLinesFromContent(){let e=this._titles.length+this._lines.length;return this._hasUnscopedTextContent&&(e+=1),e}_checkDomForUnscopedTextContent(){this._hasUnscopedTextContent=Array.from(this._unscopedContent.nativeElement.childNodes).filter(e=>e.nodeType!==e.COMMENT_NODE).some(e=>!(!e.textContent||!e.textContent.trim()))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi),o.rXU(mx,8),o.rXU(Io),o.rXU(Fm,8),o.rXU(o.bc$,8))}}static{this.\u0275dir=o.FsC({type:n,contentQueries:function(i,r,s){if(1&i&&(o.wni(s,oge,4),o.wni(s,sge,4)),2&i){let l;o.mGM(l=o.lsd())&&(r._avatars=l),o.mGM(l=o.lsd())&&(r._icons=l)}},hostVars:4,hostBindings:function(i,r){2&i&&(o.BMQ("aria-disabled",r.disabled)("disabled",r._isButtonElement&&r.disabled||null),o.AVh("mdc-list-item--disabled",r.disabled))},inputs:{lines:"lines",disableRipple:"disableRipple",disabled:"disabled"},standalone:!0})}}return n})(),TX=(()=>{class n extends mx{static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-list"]],hostAttrs:[1,"mat-mdc-list","mat-mdc-list-base","mdc-list"],exportAs:["matList"],standalone:!0,features:[o.Jv_([{provide:mx,useExisting:n}]),o.Vt3,o.aNF],ngContentSelectors:yX,decls:1,vars:0,template:function(i,r){1&i&&(o.NAR(),o.SdG(0))},styles:['.mdc-list{margin:0;padding:8px 0;list-style-type:none}.mdc-list:focus{outline:none}.mdc-list-item{display:flex;position:relative;justify-content:flex-start;overflow:hidden;padding:0;align-items:stretch;cursor:pointer;padding-left:16px;padding-right:16px;background-color:var(--mdc-list-list-item-container-color);border-radius:var(--mdc-list-list-item-container-shape, var(--mat-app-corner-none))}.mdc-list-item.mdc-list-item--selected{background-color:var(--mdc-list-list-item-selected-container-color)}.mdc-list-item:focus{outline:0}.mdc-list-item.mdc-list-item--disabled{cursor:auto}.mdc-list-item.mdc-list-item--with-one-line{height:var(--mdc-list-list-item-one-line-container-height)}.mdc-list-item.mdc-list-item--with-one-line .mdc-list-item__start{align-self:center;margin-top:0}.mdc-list-item.mdc-list-item--with-one-line .mdc-list-item__end{align-self:center;margin-top:0}.mdc-list-item.mdc-list-item--with-two-lines{height:var(--mdc-list-list-item-two-line-container-height)}.mdc-list-item.mdc-list-item--with-two-lines .mdc-list-item__start{align-self:flex-start;margin-top:16px}.mdc-list-item.mdc-list-item--with-two-lines .mdc-list-item__end{align-self:center;margin-top:0}.mdc-list-item.mdc-list-item--with-three-lines{height:var(--mdc-list-list-item-three-line-container-height)}.mdc-list-item.mdc-list-item--with-three-lines .mdc-list-item__start{align-self:flex-start;margin-top:16px}.mdc-list-item.mdc-list-item--with-three-lines .mdc-list-item__end{align-self:flex-start;margin-top:16px}.mdc-list-item.mdc-list-item--selected::before,.mdc-list-item.mdc-list-item--selected:focus::before,.mdc-list-item:not(.mdc-list-item--selected):focus::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.cdk-high-contrast-active .mdc-list-item.mdc-list-item--selected::before,.cdk-high-contrast-active .mdc-list-item.mdc-list-item--selected:focus::before,.cdk-high-contrast-active .mdc-list-item:not(.mdc-list-item--selected):focus::before{border-color:CanvasText}.mdc-list-item.mdc-list-item--selected:focus::before,.mdc-list-item.mdc-list-item--selected::before{border-width:3px;border-style:double}a.mdc-list-item{color:inherit;text-decoration:none}.mdc-list-item__start{fill:currentColor;flex-shrink:0;pointer-events:none}.mdc-list-item--with-leading-icon .mdc-list-item__start{color:var(--mdc-list-list-item-leading-icon-color, var(--mat-app-on-surface-variant));width:var(--mdc-list-list-item-leading-icon-size);height:var(--mdc-list-list-item-leading-icon-size);margin-left:16px;margin-right:32px}[dir=rtl] .mdc-list-item--with-leading-icon .mdc-list-item__start{margin-left:32px;margin-right:16px}.mdc-list-item--with-leading-icon:hover .mdc-list-item__start{color:var(--mdc-list-list-item-hover-leading-icon-color)}.mdc-list-item--with-leading-avatar .mdc-list-item__start{width:var(--mdc-list-list-item-leading-avatar-size);height:var(--mdc-list-list-item-leading-avatar-size);margin-left:16px;margin-right:16px;border-radius:50%}.mdc-list-item--with-leading-avatar .mdc-list-item__start,[dir=rtl] .mdc-list-item--with-leading-avatar .mdc-list-item__start{margin-left:16px;margin-right:16px;border-radius:50%}.mdc-list-item__end{flex-shrink:0;pointer-events:none}.mdc-list-item--with-trailing-meta .mdc-list-item__end{font-family:var(--mdc-list-list-item-trailing-supporting-text-font, var(--mat-app-label-small-font));line-height:var(--mdc-list-list-item-trailing-supporting-text-line-height, var(--mat-app-label-small-line-height));font-size:var(--mdc-list-list-item-trailing-supporting-text-size, var(--mat-app-label-small-size));font-weight:var(--mdc-list-list-item-trailing-supporting-text-weight, var(--mat-app-label-small-weight));letter-spacing:var(--mdc-list-list-item-trailing-supporting-text-tracking, var(--mat-app-label-small-tracking))}.mdc-list-item--with-trailing-icon .mdc-list-item__end{color:var(--mdc-list-list-item-trailing-icon-color, var(--mat-app-on-surface-variant));width:var(--mdc-list-list-item-trailing-icon-size);height:var(--mdc-list-list-item-trailing-icon-size)}.mdc-list-item--with-trailing-icon:hover .mdc-list-item__end{color:var(--mdc-list-list-item-hover-trailing-icon-color)}.mdc-list-item.mdc-list-item--with-trailing-meta .mdc-list-item__end{color:var(--mdc-list-list-item-trailing-supporting-text-color, var(--mat-app-on-surface-variant))}.mdc-list-item--selected.mdc-list-item--with-trailing-icon .mdc-list-item__end{color:var(--mdc-list-list-item-selected-trailing-icon-color, var(--mat-app-primary))}.mdc-list-item__content{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;align-self:center;flex:1;pointer-events:none}.mdc-list-item--with-two-lines .mdc-list-item__content,.mdc-list-item--with-three-lines .mdc-list-item__content{align-self:stretch}.mdc-list-item__primary-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:var(--mdc-list-list-item-label-text-color, var(--mat-app-on-surface));font-family:var(--mdc-list-list-item-label-text-font, var(--mat-app-body-large-font));line-height:var(--mdc-list-list-item-label-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mdc-list-list-item-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-list-list-item-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-list-list-item-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-list-item:hover .mdc-list-item__primary-text{color:var(--mdc-list-list-item-hover-label-text-color, var(--mat-app-on-surface))}.mdc-list-item:focus .mdc-list-item__primary-text{color:var(--mdc-list-list-item-focus-label-text-color, var(--mat-app-on-surface))}.mdc-list-item--with-two-lines .mdc-list-item__primary-text,.mdc-list-item--with-three-lines .mdc-list-item__primary-text{display:block;margin-top:0;line-height:normal;margin-bottom:-20px}.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before,.mdc-list-item--with-three-lines .mdc-list-item__primary-text::before{display:inline-block;width:0;height:28px;content:"";vertical-align:0}.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after,.mdc-list-item--with-three-lines .mdc-list-item__primary-text::after{display:inline-block;width:0;height:20px;content:"";vertical-align:-20px}.mdc-list-item__secondary-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:block;margin-top:0;color:var(--mdc-list-list-item-supporting-text-color, var(--mat-app-on-surface-variant));font-family:var(--mdc-list-list-item-supporting-text-font, var(--mat-app-body-medium-font));line-height:var(--mdc-list-list-item-supporting-text-line-height, var(--mat-app-body-medium-line-height));font-size:var(--mdc-list-list-item-supporting-text-size, var(--mat-app-body-medium-size));font-weight:var(--mdc-list-list-item-supporting-text-weight, var(--mat-app-body-medium-weight));letter-spacing:var(--mdc-list-list-item-supporting-text-tracking, var(--mat-app-body-medium-tracking))}.mdc-list-item__secondary-text::before{display:inline-block;width:0;height:20px;content:"";vertical-align:0}.mdc-list-item--with-three-lines .mdc-list-item__secondary-text{white-space:normal;line-height:20px}.mdc-list-item--with-overline .mdc-list-item__secondary-text{white-space:nowrap;line-height:auto}.mdc-list-item--with-leading-radio.mdc-list-item,.mdc-list-item--with-leading-checkbox.mdc-list-item,.mdc-list-item--with-leading-icon.mdc-list-item,.mdc-list-item--with-leading-avatar.mdc-list-item{padding-left:0;padding-right:16px}[dir=rtl] .mdc-list-item--with-leading-radio.mdc-list-item,[dir=rtl] .mdc-list-item--with-leading-checkbox.mdc-list-item,[dir=rtl] .mdc-list-item--with-leading-icon.mdc-list-item,[dir=rtl] .mdc-list-item--with-leading-avatar.mdc-list-item{padding-left:16px;padding-right:0}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines .mdc-list-item__primary-text,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines .mdc-list-item__primary-text,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines .mdc-list-item__primary-text,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines .mdc-list-item__primary-text{display:block;margin-top:0;line-height:normal;margin-bottom:-20px}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before{display:inline-block;width:0;height:32px;content:"";vertical-align:0}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after{display:inline-block;width:0;height:20px;content:"";vertical-align:-20px}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end{display:block;margin-top:0;line-height:normal}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end::before,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end::before,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end::before,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end::before{display:inline-block;width:0;height:32px;content:"";vertical-align:0}.mdc-list-item--with-trailing-icon.mdc-list-item,[dir=rtl] .mdc-list-item--with-trailing-icon.mdc-list-item{padding-left:0;padding-right:0}.mdc-list-item--with-trailing-icon .mdc-list-item__end{margin-left:16px;margin-right:16px}.mdc-list-item--with-trailing-meta.mdc-list-item{padding-left:16px;padding-right:0}[dir=rtl] .mdc-list-item--with-trailing-meta.mdc-list-item{padding-left:0;padding-right:16px}.mdc-list-item--with-trailing-meta .mdc-list-item__end{-webkit-user-select:none;user-select:none;margin-left:28px;margin-right:16px}[dir=rtl] .mdc-list-item--with-trailing-meta .mdc-list-item__end{margin-left:16px;margin-right:28px}.mdc-list-item--with-trailing-meta.mdc-list-item--with-three-lines .mdc-list-item__end,.mdc-list-item--with-trailing-meta.mdc-list-item--with-two-lines .mdc-list-item__end{display:block;line-height:normal;align-self:flex-start;margin-top:0}.mdc-list-item--with-trailing-meta.mdc-list-item--with-three-lines .mdc-list-item__end::before,.mdc-list-item--with-trailing-meta.mdc-list-item--with-two-lines .mdc-list-item__end::before{display:inline-block;width:0;height:28px;content:"";vertical-align:0}.mdc-list-item--with-leading-radio .mdc-list-item__start,.mdc-list-item--with-leading-checkbox .mdc-list-item__start{margin-left:8px;margin-right:24px}[dir=rtl] .mdc-list-item--with-leading-radio .mdc-list-item__start,[dir=rtl] .mdc-list-item--with-leading-checkbox .mdc-list-item__start{margin-left:24px;margin-right:8px}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines .mdc-list-item__start,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines .mdc-list-item__start{align-self:flex-start;margin-top:8px}.mdc-list-item--with-trailing-radio.mdc-list-item,.mdc-list-item--with-trailing-checkbox.mdc-list-item{padding-left:16px;padding-right:0}[dir=rtl] .mdc-list-item--with-trailing-radio.mdc-list-item,[dir=rtl] .mdc-list-item--with-trailing-checkbox.mdc-list-item{padding-left:0;padding-right:16px}.mdc-list-item--with-trailing-radio.mdc-list-item--with-leading-icon,.mdc-list-item--with-trailing-radio.mdc-list-item--with-leading-avatar,.mdc-list-item--with-trailing-checkbox.mdc-list-item--with-leading-icon,.mdc-list-item--with-trailing-checkbox.mdc-list-item--with-leading-avatar{padding-left:0}[dir=rtl] .mdc-list-item--with-trailing-radio.mdc-list-item--with-leading-icon,[dir=rtl] .mdc-list-item--with-trailing-radio.mdc-list-item--with-leading-avatar,[dir=rtl] .mdc-list-item--with-trailing-checkbox.mdc-list-item--with-leading-icon,[dir=rtl] .mdc-list-item--with-trailing-checkbox.mdc-list-item--with-leading-avatar{padding-right:0}.mdc-list-item--with-trailing-radio .mdc-list-item__end,.mdc-list-item--with-trailing-checkbox .mdc-list-item__end{margin-left:24px;margin-right:8px}[dir=rtl] .mdc-list-item--with-trailing-radio .mdc-list-item__end,[dir=rtl] .mdc-list-item--with-trailing-checkbox .mdc-list-item__end{margin-left:8px;margin-right:24px}.mdc-list-item--with-trailing-radio.mdc-list-item--with-three-lines .mdc-list-item__end,.mdc-list-item--with-trailing-checkbox.mdc-list-item--with-three-lines .mdc-list-item__end{align-self:flex-start;margin-top:8px}.mdc-list-group__subheader{margin:.75rem 16px}.mdc-list-item--disabled .mdc-list-item__start,.mdc-list-item--disabled .mdc-list-item__content,.mdc-list-item--disabled .mdc-list-item__end{opacity:1}.mdc-list-item--disabled .mdc-list-item__primary-text,.mdc-list-item--disabled .mdc-list-item__secondary-text{opacity:var(--mdc-list-list-item-disabled-label-text-opacity)}.mdc-list-item--disabled.mdc-list-item--with-leading-icon .mdc-list-item__start{color:var(--mdc-list-list-item-disabled-leading-icon-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-disabled-leading-icon-opacity)}.mdc-list-item--disabled.mdc-list-item--with-trailing-icon .mdc-list-item__end{color:var(--mdc-list-list-item-disabled-trailing-icon-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-disabled-trailing-icon-opacity)}.mat-mdc-list-item.mat-mdc-list-item-both-leading-and-trailing,[dir=rtl] .mat-mdc-list-item.mat-mdc-list-item-both-leading-and-trailing{padding-left:0;padding-right:0}.mdc-list-item.mdc-list-item--disabled .mdc-list-item__primary-text{color:var(--mdc-list-list-item-disabled-label-text-color, var(--mat-app-on-surface))}.mdc-list-item:hover::before{background-color:var(--mdc-list-list-item-hover-state-layer-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mdc-list-item.mdc-list-item--disabled::before{background-color:var(--mdc-list-list-item-disabled-state-layer-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-disabled-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mdc-list-item:focus::before{background-color:var(--mdc-list-list-item-focus-state-layer-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mdc-list-item--disabled .mdc-radio,.mdc-list-item--disabled .mdc-checkbox{opacity:var(--mdc-list-list-item-disabled-label-text-opacity)}.mdc-list-item--with-leading-avatar .mat-mdc-list-item-avatar{border-radius:var(--mdc-list-list-item-leading-avatar-shape, var(--mat-app-corner-full));background-color:var(--mdc-list-list-item-leading-avatar-color, var(--mat-app-primary-container))}.mat-mdc-list-item-icon{font-size:var(--mdc-list-list-item-leading-icon-size)}.cdk-high-contrast-active a.mdc-list-item--activated::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}.cdk-high-contrast-active a.mdc-list-item--activated [dir=rtl]::after{right:auto;left:16px}.mat-mdc-list-base{display:block}.mat-mdc-list-base .mdc-list-item__start,.mat-mdc-list-base .mdc-list-item__end,.mat-mdc-list-base .mdc-list-item__content{pointer-events:auto}.mat-mdc-list-item,.mat-mdc-list-option{width:100%;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-list-item:not(.mat-mdc-list-item-interactive),.mat-mdc-list-option:not(.mat-mdc-list-item-interactive){cursor:default}.mat-mdc-list-item .mat-divider-inset,.mat-mdc-list-option .mat-divider-inset{position:absolute;left:0;right:0;bottom:0}.mat-mdc-list-item .mat-mdc-list-item-avatar~.mat-divider-inset,.mat-mdc-list-option .mat-mdc-list-item-avatar~.mat-divider-inset{margin-left:72px}[dir=rtl] .mat-mdc-list-item .mat-mdc-list-item-avatar~.mat-divider-inset,[dir=rtl] .mat-mdc-list-option .mat-mdc-list-item-avatar~.mat-divider-inset{margin-right:72px}.mat-mdc-list-item-interactive::before{top:0;left:0;right:0;bottom:0;position:absolute;content:"";opacity:0;pointer-events:none}.mat-mdc-list-item>.mat-mdc-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-list-item:focus>.mat-mdc-focus-indicator::before{content:""}.mat-mdc-list-item.mdc-list-item--with-three-lines .mat-mdc-list-item-line.mdc-list-item__secondary-text{white-space:nowrap;line-height:normal}.mat-mdc-list-item.mdc-list-item--with-three-lines .mat-mdc-list-item-unscoped-content.mdc-list-item__secondary-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}mat-action-list button{background:none;color:inherit;border:none;font:inherit;outline:inherit;-webkit-tap-highlight-color:rgba(0,0,0,0);text-align:start}mat-action-list button::-moz-focus-inner{border:0}.mdc-list-item--with-leading-icon .mdc-list-item__start{margin-inline-start:var(--mat-list-list-item-leading-icon-start-space);margin-inline-end:var(--mat-list-list-item-leading-icon-end-space)}.mat-mdc-nav-list .mat-mdc-list-item{border-radius:var(--mat-list-active-indicator-shape, var(--mat-app-corner-full));--mat-mdc-focus-indicator-border-radius:var(--mat-list-active-indicator-shape, var(--mat-app-corner-full))}.mat-mdc-nav-list .mat-mdc-list-item.mdc-list-item--activated{background-color:var(--mat-list-active-indicator-color, var(--mat-app-secondary-container))}'],encapsulation:2,changeDetection:0})}}return n})(),IX=(()=>{class n extends U7{get activated(){return this._activated}set activated(e){this._activated=gi(e)}constructor(e,i,r,s,l,u){super(e,i,r,s,l,u),this._activated=!1}_getAriaCurrent(){return"A"===this._hostElement.nodeName&&this._activated?"page":null}_hasBothLeadingAndTrailing(){return 0!==this._meta.length&&(0!==this._avatars.length||0!==this._icons.length)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi),o.rXU(mx,8),o.rXU(Io),o.rXU(Fm,8),o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-list-item"],["a","mat-list-item",""],["button","mat-list-item",""]],contentQueries:function(i,r,s){if(1&i&&(o.wni(s,EX,5),o.wni(s,MX,5),o.wni(s,rge,5)),2&i){let l;o.mGM(l=o.lsd())&&(r._lines=l),o.mGM(l=o.lsd())&&(r._titles=l),o.mGM(l=o.lsd())&&(r._meta=l)}},viewQuery:function(i,r){if(1&i&&(o.GBs(xX,5),o.GBs(Lme,5)),2&i){let s;o.mGM(s=o.lsd())&&(r._unscopedContent=s.first),o.mGM(s=o.lsd())&&(r._itemText=s.first)}},hostAttrs:[1,"mat-mdc-list-item","mdc-list-item"],hostVars:13,hostBindings:function(i,r){2&i&&(o.BMQ("aria-current",r._getAriaCurrent()),o.AVh("mdc-list-item--activated",r.activated)("mdc-list-item--with-leading-avatar",0!==r._avatars.length)("mdc-list-item--with-leading-icon",0!==r._icons.length)("mdc-list-item--with-trailing-meta",0!==r._meta.length)("mat-mdc-list-item-both-leading-and-trailing",r._hasBothLeadingAndTrailing())("_mat-animation-noopable",r._noopAnimations))},inputs:{activated:"activated"},exportAs:["matListItem"],standalone:!0,features:[o.Vt3,o.aNF],ngContentSelectors:Vme,decls:10,vars:0,consts:[["unscopedContent",""],[1,"mdc-list-item__content"],[1,"mat-mdc-list-item-unscoped-content",3,"cdkObserveContent"],[1,"mat-mdc-focus-indicator"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(Ume),o.SdG(0),o.j41(1,"span",1),o.SdG(2,1),o.SdG(3,2),o.j41(4,"span",2,0),o.bIt("cdkObserveContent",function(){return o.eBV(s),o.Njj(r._updateItemLines(!0))}),o.SdG(6,3),o.k0s()(),o.SdG(7,4),o.SdG(8,5),o.nrm(9,"div",3)}},dependencies:[vX],encapsulation:2,changeDetection:0})}}return n})();function hge(n,t){1&n&&(o.j41(0,"mat-list-item"),o.EFF(1,"Add pattern via search or node context-menu"),o.k0s())}function fge(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-list-item",4)(1,"button",5),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(2);return o.Njj(s.removeBlacklistEntry(r))}),o.nrm(2,"em",6),o.EFF(3),o.k0s()()}if(2&n){const e=t.$implicit;o.Y8G("title",e.path),o.R7$(3),o.SpI(" ",e.path," ")}}function pge(n,t){if(1&n&&(o.j41(0,"div"),o.DNE(1,hge,2,0,"mat-list-item"),o.Z7z(2,fge,4,2,"mat-list-item",4,o.fX1),o.k0s()),2&n){const e=t;o.R7$(),o.vxM(0===e.length?1:-1),o.R7$(),o.Dyx(e)}}function Age(n,t){1&n&&(o.j41(0,"mat-list-item"),o.EFF(1,"Add pattern via search or node context-menu"),o.k0s())}function mge(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-list-item",4)(1,"button",5),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(2);return o.Njj(s.removeBlacklistEntry(r))}),o.nrm(2,"em",6),o.EFF(3),o.k0s()()}if(2&n){const e=t.$implicit;o.Y8G("title",e.path),o.R7$(3),o.SpI(" ",e.path," ")}}function gge(n,t){if(1&n&&(o.j41(0,"div"),o.DNE(1,Age,2,0,"mat-list-item"),o.Z7z(2,mge,4,2,"mat-list-item",4,o.fX1),o.k0s()),2&n){const e=t;o.R7$(),o.vxM(0===e.length?1:-1),o.R7$(),o.Dyx(e)}}let _ge=(()=>{class n{constructor(e){this.store=e,this.flattenedItems$=this.store.select(bX("flatten")),this.excludedItems$=this.store.select(bX("exclude"))}removeBlacklistEntry(e){this.store.dispatch(SR({item:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-blacklist-panel"]],standalone:!0,features:[o.aNF],decls:14,vars:6,consts:[[1,"cc-blacklist-panel-list"],[1,"cc-header-text"],["matTooltip","Flattened nodes are shown as flat/short buildings and are included in folder metrics",1,"fa","fa-question-circle-o"],["matTooltip","Excluded buildings are not shown in the map and are not included in folder metrics",1,"fa","fa-question-circle-o"],[3,"title"],["mat-button","",3,"click"],["title","Remove list item",1,"fa","fa-minus-square"]],template:function(i,r){if(1&i&&(o.j41(0,"mat-list",0)(1,"div")(2,"h3",1),o.EFF(3,"Flattened"),o.k0s(),o.nrm(4,"em",2),o.k0s(),o.DNE(5,pge,4,1,"div"),o.nI1(6,"async"),o.k0s(),o.j41(7,"mat-list",0)(8,"div")(9,"h3",1),o.EFF(10,"Excluded"),o.k0s(),o.nrm(11,"em",3),o.k0s(),o.DNE(12,gge,4,1,"div"),o.nI1(13,"async"),o.k0s()),2&i){let s,l;o.R7$(5),o.vxM((s=o.bMT(6,2,r.flattenedItems$))?5:-1,s),o.R7$(7),o.vxM((l=o.bMT(13,4,r.excludedItems$))?12:-1,l)}},dependencies:[TX,y7,IX,ns,zn],styles:["[_nghost-%COMP%] .cc-header-text[_ngcontent-%COMP%]{display:inline-block;margin:0 .25em 0 0}"]})}}return n})();const eP=(n,t,e)=>t.reduce((i,r)=>cu(r.path,e,n)?i+1:i,0),bge=sn(FG,Ru,jR,(n,t,e)=>{const i=n.filter(r=>Ro(r));return{fileCount:`${i.length}/${e.length}`,flattenCount:`${eP("flatten",i,t)}/${eP("flatten",e,t)}`,excludeCount:`${eP("exclude",i,t)}/${eP("exclude",e,t)}`}});let vge=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.isSearchPanelPinned$=this.store.select(hX)}onClick(){this.store.dispatch(t7())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-thumb-tack-button"]],standalone:!0,features:[o.aNF],decls:3,vars:3,consts:[["title","Pin file explorer",1,"box-rounded",3,"click","ngClass"],[1,"fa","fa-thumb-tack"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"async"),o.bIt("click",function(){return r.onClick()}),o.nrm(2,"i",1),o.k0s()),2&i&&o.Y8G("ngClass",o.bMT(1,1,r.isSearchPanelPinned$)?"pinned":"")},dependencies:[Sn,zn],styles:[".pinned[_ngcontent-%COMP%]{background-color:#979797}button[_ngcontent-%COMP%]{height:25px;background:#e6e6e6;padding:1px 8px}.box-rounded[_ngcontent-%COMP%]{display:inline-block;font-weight:400;line-height:17px;font-size:10pt;margin-top:2px;min-width:20px;border-radius:4px;text-align:center}"]})}}return n})();const DX=sn(ko,n=>n.sortingOrderAscending);let yge=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.sortingOrderAscending$=this.store.select(DX)}onClick(){this.store.dispatch(U6())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-sorting-button"]],standalone:!0,features:[o.aNF],decls:4,vars:7,consts:[[1,"box-rounded",3,"click","title"],[3,"className"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"async"),o.bIt("click",function(){return r.onClick()}),o.nrm(2,"i",1),o.nI1(3,"async"),o.k0s()),2&i&&(o.Mz_("title","Toggle sort order (currently ",o.bMT(1,3,r.sortingOrderAscending$)?"ascending":"descending",")"),o.R7$(2),o.Y8G("className",o.bMT(3,5,r.sortingOrderAscending$)?"fa fa-sort-amount-asc":"fa fa-sort-amount-desc"))},dependencies:[zn],styles:["button[_ngcontent-%COMP%]{height:25px;background:#e6e6e6;padding:1px 8px}.box-rounded[_ngcontent-%COMP%]{display:inline-block;font-weight:400;line-height:17px;font-size:10pt;margin-top:2px;min-width:20px;border-radius:4px;text-align:center}"]})}}return n})();const BX=sn($c,n=>n.sortingOption);function wge(n,t){if(1&n&&(o.j41(0,"mat-option",1),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e),o.R7$(),o.SpI(" ",e," ")}}let xge=(()=>{class n{constructor(e){this.store=e,this.sortingOptions=Object.values(_d),this.selectedSortingOption$=e.select(BX)}handleSelectedSortingOptionChanged(e){this.store.dispatch(MR(e.value))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-sorting-option"]],standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[["title","Sort by","panelClass","cc-sorting-option",1,"sorting-option-select",3,"selectionChange","value"],[3,"value"]],template:function(i,r){1&i&&(o.j41(0,"mat-select",0),o.nI1(1,"async"),o.bIt("selectionChange",function(l){return r.handleSelectedSortingOptionChanged(l)}),o.Z7z(2,wge,2,2,"mat-option",1,o.fX1),o.k0s()),2&i&&(o.Y8G("value",o.bMT(1,1,r.selectedSortingOption$)),o.R7$(2),o.Dyx(r.sortingOptions))},dependencies:[e0,yd,zn],styles:[".sorting-option-select[_ngcontent-%COMP%]{max-width:88px}"]})}}return n})();function Cge(n,t){if(1&n&&(o.j41(0,"span",0),o.EFF(1),o.nrm(2,"i",1),o.k0s(),o.j41(3,"span",2),o.EFF(4),o.nrm(5,"img",3),o.k0s(),o.j41(6,"span",4),o.EFF(7),o.nrm(8,"i",5),o.k0s(),o.j41(9,"div",6),o.nrm(10,"cc-thumb-tack-button"),o.k0s(),o.j41(11,"div",6),o.nrm(12,"cc-sorting-button")(13,"cc-sorting-option"),o.k0s()),2&n){const e=t;o.R7$(),o.JRh(e.fileCount),o.R7$(3),o.JRh(e.flattenCount),o.R7$(3),o.JRh(e.excludeCount)}}let Mge=(()=>{class n{constructor(e){this.matchingFileCounters$=e.select(bge)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-matching-files-counter"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[["title","Files matching search pattern",1,"box-rounded","node-count"],[1,"fa","fa-file"],["title","Files flattened",1,"box-rounded","node-count",2,"display","inline-flex"],["alt","flattenIcon","src","codeCharta/assets/flatten.png",1,"fa","png-icon-files-counter"],["title","Files excluded",1,"box-rounded","node-count"],[1,"fa","fa-ban"],[1,"clickable-component"]],template:function(i,r){if(1&i&&(o.DNE(0,Cge,14,3),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.matchingFileCounters$))?0:-1,s)}},dependencies:[vge,yge,xge,zn],styles:["[_nghost-%COMP%] .node-count[_ngcontent-%COMP%]{background:#eee;color:#000;padding:4px 8px;margin-right:8px}[_nghost-%COMP%] .node-count[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-left:6px}[_nghost-%COMP%] .box-rounded[_ngcontent-%COMP%]{display:inline-block;font-weight:400;line-height:17px;font-size:10pt;margin-top:2px;min-width:20px;border-radius:4px;text-align:center}[_nghost-%COMP%] .png-icon-files-counter[_ngcontent-%COMP%]{width:19px;height:16px;margin-left:6px}[_nghost-%COMP%] .clickable-component[_ngcontent-%COMP%]{display:inline-block;color:#000;margin-left:-9px}"]})}}return n})();function Yp(n){if("object"!=typeof n)return n;var t,e,i=Object.prototype.toString.call(n);if("[object Object]"===i){if(n.constructor!==Object&&"function"==typeof n.constructor)for(t in e=new n.constructor,n)n.hasOwnProperty(t)&&e[t]!==n[t]&&(e[t]=Yp(n[t]));else for(t in e={},n)"__proto__"===t?Object.defineProperty(e,t,{value:Yp(n[t]),configurable:!0,enumerable:!0,writable:!0}):e[t]=Yp(n[t]);return e}if("[object Array]"===i){for(t=n.length,e=Array(t);t--;)e[t]=Yp(n[t]);return e}return"[object Set]"===i?(e=new Set,n.forEach(function(r){e.add(Yp(r))}),e):"[object Map]"===i?(e=new Map,n.forEach(function(r,s){e.set(Yp(s),Yp(r))}),e):"[object Date]"===i?new Date(+n):"[object RegExp]"===i?((e=new RegExp(n.source,n.flags)).lastIndex=n.lastIndex,e):"[object DataView]"===i?new n.constructor(Yp(n.buffer)):"[object ArrayBuffer]"===i?n.slice(0):"Array]"===i.slice(-6)?new n.constructor(n):n}const Ege=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}),Sge=(n,t)=>Ege.compare(n.name,t.name),Tge=(n,t)=>n.attributes.unary-t.attributes.unary,kX=(n,t,e)=>{if(!n)return;for(let r=0;r{const e=n===_d.NUMBER_OF_FILES?Tge:Sge;return t?e:(i,r)=>-1*e(i,r)})(t,e);return n.children=((n,t)=>{const e=[],i=[];for(const r of t.children)r.type===ts.FOLDER?e.push(r):i.push(r);return e.sort(n),i.sort(n),[...e,...i]})(i,n),n},Dge=sn(Fd,BX,DX,(n,t,e)=>kX(Yp(n.unifiedMapNode),t,e)),RX=sn(c_,n=>n.rightClickedNodeData);let PX=(()=>{class n{transform(e,i){return V7(e,i)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"areaMetricValid",type:n,pure:!0,standalone:!0})}}return n})();function V7(n,t){return n.deltas?.[t]<0||n.attributes?.[t]>0}let Bge=(()=>{class n{transform(e,i){return Ro(e)?"fa fa-file-o":i?"fa fa-folder-open":"fa fa-folder"}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"mapTreeViewItemIconClass",type:n,pure:!0,standalone:!0})}}return n})(),kge=(()=>{class n{static{this.defaultColor="#000000"}static{this.areMetricZeroColor="#BDBDBD"}constructor(e){this.state=e}transform(e){const{areaMetric:i}=this.state.getValue().dynamicSettings;return V7(e,i)?Ro(e)?void 0:l1(e,this.state.getValue().fileSettings.markedPackages)||n.defaultColor:n.areMetricZeroColor}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi,16))}}static{this.\u0275pipe=o.EJ8({name:"mapTreeViewItemIconColor",type:n,pure:!1,standalone:!0})}}return n})(),Rge=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view-item-icon"]],inputs:{node:"node",isOpen:"isOpen"},standalone:!0,features:[o.aNF],decls:3,vars:9,consts:[["role","img","aria-hidden","true"]],template:function(i,r){1&i&&(o.nrm(0,"span",0),o.nI1(1,"mapTreeViewItemIconClass"),o.nI1(2,"mapTreeViewItemIconColor")),2&i&&(o.HbH(o.i5U(1,4,r.node,r.isOpen)),o.xc7("color",o.bMT(2,7,r.node)))},dependencies:[Bge,kge],encapsulation:2})}}return n})();const Pge=sn(Fd,n=>n.unifiedMapNode?.attributes.unary);let OX=(()=>{class n{transform(e){return Ro(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"isNodeLeaf",type:n,pure:!0,standalone:!0})}}return n})();function Oge(n,t){if(1&n&&(o.j41(0,"span"),o.EFF(1),o.nI1(2,"async"),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.SpI("",(100*e.unaryValue/o.bMT(2,1,e.rootUnary$)).toFixed(0),"%")}}function Nge(n,t){1&n&&o.EFF(0,"File")}function Lge(n,t){1&n&&o.EFF(0,"Files")}function Uge(n,t){if(1&n&&(o.j41(0,"span",2),o.EFF(1),o.DNE(2,Nge,1,0,"ng-template",3)(3,Lge,1,0,"ng-template",4),o.k0s()),2&n){const e=o.XpG(2);o.Y8G("ngPlural",e.unaryValue),o.R7$(),o.SpI(" ",e.unaryValue," ")}}function Vge(n,t){if(1&n&&(o.j41(0,"span",1),o.DNE(1,Oge,3,3,"span")(2,Uge,4,2,"span",2),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.vxM(e.isHovered?2:1)}}let Hge=(()=>{class n{constructor(e){this.searchedNodePaths$=e.select(NU),this.rootUnary$=e.select(Pge),this.areaMetric$=e.select(hv)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view-item-name"]],inputs:{node:"node",isHovered:"isHovered",unaryValue:"unaryValue",unaryPercentage:"unaryPercentage"},standalone:!0,features:[o.aNF],decls:7,vars:17,consts:[[1,"node-name"],[1,"unary-number"],[3,"ngPlural"],["ngPluralCase","=1"],["ngPluralCase","other"]],template:function(i,r){1&i&&(o.j41(0,"span",0),o.nI1(1,"async"),o.nI1(2,"areaMetricValid"),o.nI1(3,"async"),o.EFF(4),o.k0s(),o.DNE(5,Vge,3,1,"span",1),o.nI1(6,"isNodeLeaf")),2&i&&(o.AVh("flattened",r.node.isFlattened)("noAreaMetric",!o.i5U(2,10,r.node,o.bMT(1,8,r.areaMetric$)))("tree-search-result",o.bMT(3,13,r.searchedNodePaths$).has(r.node.path)),o.R7$(4),o.SpI(" ",r.node.name,"\n"),o.R7$(),o.vxM(o.bMT(6,15,r.node)?-1:5))},dependencies:[No,ia,zn,PX,OX],styles:[".unary-number[_ngcontent-%COMP%]{color:#a3a3a3;font-size:.8em;margin-top:1px}.node-name.flattened[_ngcontent-%COMP%]{color:gray}.node-name.noAreaMetric[_ngcontent-%COMP%]{color:#bdbdbd}.tree-search-result[_ngcontent-%COMP%]{background-color:#fc801bab}"]})}}return n})();function Qge(n,t){1&n&&o.nrm(0,"i",1)}let zge=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view-item-option-buttons"]],inputs:{isFlattened:"isFlattened",openNodeContextMenu:"openNodeContextMenu"},standalone:!0,features:[o.aNF],decls:5,vars:1,consts:[["role","button","aria-hidden","true",1,"right-aligned"],["title","Flattened",1,"flattened","fa","fa-eye-slash"],[1,"small-action-button"],["title","Open Node-Context-Menu",3,"click"],[1,"fa","fa-ellipsis-h"]],template:function(i,r){1&i&&(o.j41(0,"span",0),o.DNE(1,Qge,1,0,"i",1),o.j41(2,"div",2)(3,"button",3),o.bIt("click",function(l){return r.openNodeContextMenu(l)}),o.nrm(4,"i",4),o.k0s()()()),2&i&&(o.R7$(),o.vxM(r.isFlattened?1:-1))},styles:["button[_ngcontent-%COMP%]{display:inline-block;height:19px;width:24px;min-height:0;margin:0;background-color:transparent;box-shadow:none;vertical-align:top}button[_ngcontent-%COMP%]:hover{background-color:#ddd;color:#000000de}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{position:absolute;top:2px;left:6px}.right-aligned[_ngcontent-%COMP%]{position:absolute;right:6px}.right-aligned[_ngcontent-%COMP%] i.flattened[_ngcontent-%COMP%]{color:gray}"]})}}return n})();function Gge(n,t){if(1&n&&o.nrm(0,"cc-map-tree-view-item-option-buttons",4),2&n){const e=o.XpG(2);o.Y8G("isFlattened",e.node.isFlattened)("openNodeContextMenu",e.openNodeContextMenu)}}function jge(n,t){if(1&n&&(o.j41(0,"div"),o.nrm(1,"cc-map-tree-view-level",5),o.k0s()),2&n){const e=t.$implicit,i=o.XpG(3);o.R7$(),o.Y8G("node",e)("depth",i.depth+1)}}function $ge(n,t){if(1&n&&o.Z7z(0,jge,2,2,"div",null,o.fX1),2&n){const e=o.XpG(2);o.Dyx(e.node.children)}}function qge(n,t){if(1&n){const e=o.RV6();o.j41(0,"div"),o.nI1(1,"isNodeLeaf"),o.j41(2,"div",1),o.nI1(3,"async"),o.nI1(4,"async"),o.nI1(5,"async"),o.nI1(6,"areaMetricValid"),o.bIt("mouseenter",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.onMouseEnter())})("mouseleave",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.onMouseLeave())})("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.onClick())})("contextmenu",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.openNodeContextMenu(r))}),o.nrm(7,"cc-map-tree-view-item-icon",2)(8,"cc-map-tree-view-item-name",3),o.nI1(9,"async"),o.DNE(10,Gge,1,2,"cc-map-tree-view-item-option-buttons",4),o.nI1(11,"async"),o.nI1(12,"async"),o.nI1(13,"areaMetricValid"),o.k0s(),o.j41(14,"div"),o.DNE(15,$ge,2,0),o.k0s()()}if(2&n){let e;const i=o.XpG();o.STu("tree-element-",i.depth," ",o.bMT(1,23,i.node)?"tree-leaf":"tree-parent",""),o.R7$(2),o.ZvI("tree-element-label-",i.depth," tree-element-label"),o.AVh("hovered",o.bMT(3,25,i.hoveredNodeId$)===i.node.id)("marked",(null==(e=o.bMT(4,27,i.rightClickedNodeData$))?null:e.nodeId)===i.node.id),o.FS9("id",i.node.path),o.Y8G("title",o.i5U(6,31,i.node,o.bMT(5,29,i.areaMetric$))?"":"No Node Area for Chosen Metric"),o.R7$(5),o.Y8G("node",i.node)("isOpen",i.isOpen),o.R7$(),o.Y8G("node",i.node)("isHovered",o.bMT(9,34,i.hoveredNodeId$)===i.node.id)("unaryValue",i.node.attributes.unary),o.R7$(2),o.vxM(o.bMT(11,36,i.hoveredNodeId$)===i.node.id&&o.i5U(13,40,i.node,o.bMT(12,38,i.areaMetric$))?10:-1),o.R7$(4),o.ZvI("tree-element-children tree-element-children-",i.depth,""),o.R7$(),o.vxM(i.isOpen?15:-1)}}let Wge=(()=>{class n{constructor(e,i,r,s,l){this.store=e,this.threeSceneService=i,this.idToBuildingService=r,this.threeRendererService=s,this.codeMapMouseEventService=l,this.hoveredNodeId$=this.store.select(md),this.rightClickedNodeData$=this.store.select(RX),this.areaMetric$=this.store.select(hv),this.isOpen=!1,this.areMetricValid=!1,this.openNodeContextMenu=u=>{u.preventDefault(),u.stopPropagation(),this.areaMetric$.subscribe(f=>this.areMetricValid=V7(this.node,f)).unsubscribe(),this.areMetricValid&&(this.store.dispatch(hx({value:{nodeId:this.node.id,xPositionOfRightClickEvent:u.clientX,yPositionOfRightClickEvent:u.clientY}})),document.querySelector(".tree-element-0").addEventListener("scroll",this.scrollFunction))},this.scrollFunction=()=>{this.store.dispatch(hx({value:null})),document.querySelector(".tree-element-0").removeEventListener("scroll",this.scrollFunction)}}ngOnInit(){this.isOpen=0===this.depth}onMouseEnter(){const e=this.idToBuildingService.get(this.node.id),i=this.threeSceneService.labels?.children;this.codeMapMouseEventService.setLabelHoveredLeaf(e,i),this.codeMapMouseEventService.hoverNode(this.node.id),this.store.dispatch(ux({value:this.node.id}))}onMouseLeave(){this.threeSceneService.resetLabel(),this.codeMapMouseEventService.unhoverNode(),this.codeMapMouseEventService.clearLabelHoveredBuilding(),this.store.dispatch(ux({value:null}))}onClick(){this.isOpen=!this.isOpen;const e=this.idToBuildingService.get(this.node.id);this.codeMapMouseEventService.drawLabelSelectedBuilding(e),this.threeSceneService.selectBuilding(e),this.threeSceneService.clearConstantHighlight(),this.threeRendererService.render()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Dd),o.rXU(PS),o.rXU(wr),o.rXU(F2))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view-level"]],inputs:{node:"node",depth:"depth"},standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[3,"class"],[3,"mouseenter","mouseleave","click","contextmenu","id","title"],[3,"node","isOpen"],[3,"node","isHovered","unaryValue"],[3,"isFlattened","openNodeContextMenu"],[3,"node","depth"]],template:function(i,r){1&i&&o.DNE(0,qge,16,43,"div",0),2&i&&o.vxM(r.node.isExcluded?-1:0)},dependencies:[n,Rge,Hge,zge,zn,PX,OX],styles:["[_nghost-%COMP%]{white-space:nowrap}.tree-element-label[_ngcontent-%COMP%]{cursor:default}.tree-element-label[_ngcontent-%COMP%]:focus{outline:none}.tree-element-label[_ngcontent-%COMP%]:hover, .tree-element-label.hovered[_ngcontent-%COMP%]{background-color:#efefef;border-radius:2px;cursor:pointer}.tree-element-label.marked[_ngcontent-%COMP%]{background-color:#efefef;border-radius:2px}.tree-element-0[_ngcontent-%COMP%]{overflow-y:auto;max-height:400px;margin-left:3px;margin-top:10px}.tree-element-0[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{margin:0;padding:0;position:relative}.tree-element-0[_ngcontent-%COMP%] .tree-element-children[_ngcontent-%COMP%]{margin-left:19px;margin-right:4px}"]})}}return n})();function Xge(n,t){1&n&&o.nrm(0,"cc-map-tree-view-level",0),2&n&&o.Y8G("node",t)("depth",0)}let Kge=(()=>{class n{constructor(e){this.mapTreeViewNode$=e.select(Dge)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"node","depth"]],template:function(i,r){if(1&i&&(o.DNE(0,Xge,1,2,"cc-map-tree-view-level",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.mapTreeViewNode$))?0:-1,s)}},dependencies:[Wge,zn],encapsulation:2})}}return n})(),Yge=(()=>{class n{constructor(e){this.store=e,this.searchPanelMode="minimized",this.updateSearchPanelMode=i=>{this.searchPanelMode=this.searchPanelMode===i?"minimized":i,this.panelRef.isExpanded="minimized"!==this.searchPanelMode}}ngOnInit(){this.isSearchPanelPinnedSubscription=this.store.select(hX).subscribe(e=>{this.isSearchPanelPinned=e})}ngOnDestroy(){this.isSearchPanelPinnedSubscription.unsubscribe()}openSearchPanel(){this.searchPanelMode="treeView",this.panelRef.isExpanded=!0}onToggleSettings(e){this.searchPanelMode=e?"treeView":"minimized"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-search-panel"]],viewQuery:function(i,r){if(1&i&&o.GBs(P7,5),2&i){let s;o.mGM(s=o.lsd())&&(r.panelRef=s.first)}},standalone:!0,features:[o.aNF],decls:7,vars:7,consts:[["title","File/Node Explorer",3,"onToggleSettings","isPinned","collapseOnPanelClick"],[3,"click"],[3,"searchPanelMode","updateSearchPanelMode"],[3,"hidden"]],template:function(i,r){1&i&&(o.j41(0,"cc-ribbon-bar-panel",0),o.bIt("onToggleSettings",function(l){return r.onToggleSettings(l)}),o.j41(1,"cc-search-bar",1),o.bIt("click",function(){return r.openSearchPanel()}),o.k0s(),o.nrm(2,"cc-search-panel-mode-selector",2),o.j41(3,"cc-ribbon-bar-panel-settings"),o.nrm(4,"cc-blacklist-panel",3)(5,"cc-matching-files-counter",3)(6,"cc-map-tree-view",3),o.k0s()()),2&i&&(o.Y8G("isPinned",r.isSearchPanelPinned)("collapseOnPanelClick",!1),o.R7$(2),o.Y8G("searchPanelMode",r.searchPanelMode)("updateSearchPanelMode",r.updateSearchPanelMode),o.R7$(2),o.Y8G("hidden","blacklist"!==r.searchPanelMode),o.R7$(),o.Y8G("hidden","treeView"!==r.searchPanelMode),o.R7$(),o.Y8G("hidden","treeView"!==r.searchPanelMode))},dependencies:[P7,Mme,kme,R7,_ge,Mge,Kge],styles:["cc-search-panel[_ngcontent-%COMP%] .search-panel-card[_ngcontent-%COMP%]{border-left:none;width:100%}cc-search-panel[_ngcontent-%COMP%] .search-panel-card[_ngcontent-%COMP%] .section-body[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:6px;position:absolute;top:45px;background:#fff;border:1px solid #b5b5b5;box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}cc-search-panel[_ngcontent-%COMP%] .search-panel-card[_ngcontent-%COMP%] .section-body.hidden[_ngcontent-%COMP%]{display:none;pointer-events:none}"]})}}return n})();const Zge=["*"];let tP=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-ribbon-bar-menu-button"]],inputs:{icon:"icon",title:"title"},standalone:!0,features:[o.aNF],ngContentSelectors:Zge,decls:3,vars:3,consts:[[3,"title"]],template:function(i,r){1&i&&(o.NAR(),o.j41(0,"button",0),o.nrm(1,"i"),o.SdG(2),o.k0s()),2&i&&(o.Y8G("title",r.title),o.R7$(),o.HbH("fa "+r.icon))},styles:["button[_ngcontent-%COMP%]{height:22px;line-height:22px;min-width:45px;margin:0;padding:0;font-size:9pt;background-color:#e6e6e6f5;color:#444}button[_ngcontent-%COMP%]:hover{background-color:#c8c8c8}"]})}}return n})();const Jge=JSON.parse('[{"name":"Complexity","settings":{"appSettings":{},"dynamicSettings":{"areaMetric":"rloc","heightMetric":"sonar_complexity","colorMetric":"sonar_complexity","distributionMetric":"rloc"}}},{"name":"Average Complexity*","settings":{"appSettings":{},"dynamicSettings":{"areaMetric":"unary","heightMetric":"Average Complexity*","colorMetric":"Average Complexity*","distributionMetric":"unary"}}},{"name":"Coverage","settings":{"appSettings":{},"dynamicSettings":{"areaMetric":"rloc","heightMetric":"sonar_complexity","colorMetric":"line_coverage","distributionMetric":"rloc"}}},{"name":"Code Churn","settings":{"appSettings":{},"dynamicSettings":{"areaMetric":"rloc","heightMetric":"abs_code_churn","colorMetric":"weeks_with_commits","distributionMetric":"rloc"}}}]');class Zp{static{this.SCENARIOS_LOCAL_STORAGE_VERSION="1.0.0"}static{this.SCENARIOS_LOCAL_STORAGE_ELEMENT="scenarios"}static{this.scenarios=Zp.loadScenarios()}static getScenarioItems(t){const e=[];for(const i of this.scenarios.values())e.push({scenarioName:i.name,isScenarioApplicable:this.isScenarioApplicable(i,t),icons:[{faIconClass:"fa-video-camera",isSaved:!!i.camera,tooltip:"Camera angle"},{faIconClass:"fa-arrows-alt",isSaved:!!i.area,tooltip:"Area metric"},{faIconClass:"fa-arrows-v",isSaved:!!i.height,tooltip:"Height metric"},{faIconClass:"fa-paint-brush",isSaved:!!i.color,tooltip:"Color metric"},{faIconClass:"fa-exchange",isSaved:!!i.edge,tooltip:"Edge metric"}]});return e}static isScenarioApplicable(t,e){const{area:i,color:r,height:s,edge:l}=t;if(i||r||s){const u=new Set(e.nodeMetricData.map(f=>f.name));if(i&&!u.has(i.areaMetric)||r&&!u.has(r.colorMetric)||s&&!u.has(s.heightMetric))return!1}return!(l&&!e.edgeMetricData.some(u=>u.name===l.edgeMetric))}static getPreLoadScenarios(){const t=this.importScenarios(Jge),e=new Map;for(const i of t)e.set(i.name,this.transformScenarioAsSettingsToScenario(i));return e}static transformScenarioAsSettingsToScenario(t){const e={name:t.name},{dynamicSettings:i,appSettings:r}=t.settings;return void 0!==i.areaMetric&&(e.area={areaMetric:i.areaMetric,margin:i.margin}),void 0!==i.heightMetric&&(e.height={heightMetric:i.heightMetric,labelSlider:r.amountOfTopLabels,heightSlider:r.scaling}),void 0!==i.colorMetric&&(e.color={colorMetric:i.colorMetric,colorRange:i.colorRange,mapColors:r.mapColors}),void 0!==i.edgeMetric&&(e.edge={edgeMetric:i.edgeMetric,edgeHeight:r.edgeHeight,edgePreview:r.amountOfEdgePreviews}),e}static setScenariosToLocalStorage(t){const e={version:this.SCENARIOS_LOCAL_STORAGE_VERSION,scenarios:[...t]};localStorage.setItem(this.SCENARIOS_LOCAL_STORAGE_ELEMENT,JSON.stringify(e))}static loadScenarios(){const t=JSON.parse(localStorage.getItem(this.SCENARIOS_LOCAL_STORAGE_ELEMENT));if(t)return new Map(t.scenarios);const e=this.getPreLoadScenarios();return this.setScenariosToLocalStorage(e),e}static addScenario(t,e){const i=Zp.createNewScenario(t,e);this.scenarios.set(i.name,i),this.setScenariosToLocalStorage(this.scenarios)}static createNewScenario(t,e){const i={name:t};for(const r of e.filter(s=>s.isSelected))switch(r.metricType){case"Camera-Position":i.camera={camera:r.savedValues.camera,cameraTarget:r.savedValues.cameraTarget};break;case"Area-Metric":i.area={areaMetric:r.metricName,margin:r.savedValues};break;case"Height-Metric":i.height={heightMetric:r.metricName,heightSlider:r.savedValues.heightSlider,labelSlider:r.savedValues.labelSlider};break;case"Color-Metric":i.color={colorMetric:r.metricName,colorRange:r.savedValues.colorRange,mapColors:r.savedValues.mapColors};break;case"Edge-Metric":i.edge={edgeMetric:r.metricName,edgePreview:r.savedValues.edgePreview,edgeHeight:r.savedValues.edgeHeight};break;default:throw new Error(`Unknown metric type "${r.metricType}" detected`)}return i}static deleteScenario(t){this.scenarios.delete(t),this.setScenariosToLocalStorage(this.scenarios)}static getScenarioSettings(t){const e={},i={};return t&&(t.area&&(e.areaMetric=t.area.areaMetric,e.margin=t.area.margin),t.height&&(e.heightMetric=t.height.heightMetric,i.amountOfTopLabels=t.height.labelSlider,i.scaling=t.height.heightSlider),t.color&&(e.colorMetric=t.color.colorMetric,e.colorRange=t.color.colorRange,i.mapColors=t.color.mapColors),t.edge&&(e.edgeMetric=t.edge.edgeMetric,i.edgeHeight=t.edge.edgeHeight,i.amountOfEdgePreviews=t.edge.edgePreview)),{appSettings:i,dynamicSettings:e}}static importScenarios(t){for(const e of t)C7(e.settings),e.camera&&(e.camera.camera=new pe(e.camera.camera.x,e.camera.camera.y,e.camera.camera.z),e.camera.cameraTarget=new pe(e.camera.camera.x,e.camera.camera.y,e.camera.camera.z));return t}static isScenarioExisting(t){return this.scenarios.has(t)}}function n0e(n,t){if(1&n&&(o.j41(0,"mat-error"),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.JRh(e.scenarioName.getError("Error"))}}function i0e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-slide-toggle",6),o.bIt("change",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.handleScenarioMetricPropertySelectionChange(r))}),o.EFF(1),o.k0s()}if(2&n){const e=t.$implicit;o.Y8G("checked",e.isSelected),o.R7$(),o.SpI(" ",e.metricName?e.metricType+" ("+e.metricName+")":e.metricType," ")}}function r0e(n,t){1&n&&(o.j41(0,"mat-error"),o.EFF(1,"You cannot create an empty Scenario."),o.k0s())}let o0e=(()=>{class n{constructor(e,i,r){this.state=e,this.scenarioName=new g$("",[n=>0===n.value.length?{Error:"Scenario name is required"}:Zp.isScenarioExisting(n.value)?{Error:"A Scenario with this name already exists"}:null]),this.areAnyScenarioMetricPropertiesSelected=!0,this.scenarioContent=((n,t)=>{const{dynamicSettings:e,appSettings:i,fileSettings:r}=n,s=[{metricType:"Camera-Position",metricName:"",savedValues:{...t},isSelected:!0,isDisabled:!1},{metricType:"Area-Metric",metricName:e.areaMetric,savedValues:e.margin,isSelected:!0,isDisabled:!1},{metricType:"Height-Metric",metricName:e.heightMetric,savedValues:{heightSlider:i.scaling,labelSlider:i.amountOfTopLabels},isSelected:!0,isDisabled:!1},{metricType:"Color-Metric",metricName:e.colorMetric,savedValues:{colorRange:e.colorRange,mapColors:i.mapColors},isSelected:!0,isDisabled:!1}];return r.edges.length>0&&s.push({metricType:"Edge-Metric",metricName:e.edgeMetric,savedValues:{edgePreview:i.amountOfEdgePreviews,edgeHeight:i.edgeHeight},isSelected:!0,isDisabled:!1}),s})(this.state.getValue(),{camera:i.camera.position.clone(),cameraTarget:r.controls.target.clone()})}handleScenarioMetricPropertySelectionChange(e){e.isSelected=!e.isSelected,this.areAnyScenarioMetricPropertiesSelected=this.scenarioContent.some(i=>i.isSelected)}addCustomScenario(){Zp.addScenario(this.scenarioName.value,this.scenarioContent)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi),o.rXU(jh),o.rXU(Rd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-add-custom-scenario-dialog"]],standalone:!0,features:[o.aNF],decls:19,vars:4,consts:[["xmlns","http://www.w3.org/1999/html",1,"header"],["subscriptSizing","dynamic"],["matInput","",3,"formControl"],[1,"cc-add-custom-scenario-toggles"],[3,"checked"],["mat-flat-button","","mat-dialog-close","",3,"click","disabled"],[3,"change","checked"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0)(1,"h2"),o.EFF(2,"Add Scenario"),o.k0s()(),o.j41(3,"mat-dialog-content")(4,"p")(5,"mat-form-field",1)(6,"mat-label"),o.EFF(7,"Scenario Name"),o.k0s(),o.nrm(8,"input",2),o.DNE(9,n0e,2,1,"mat-error"),o.k0s()(),o.j41(10,"p"),o.EFF(11,"The scenario includes:"),o.k0s(),o.j41(12,"div",3),o.Z7z(13,i0e,2,2,"mat-slide-toggle",4,o.fX1),o.DNE(15,r0e,2,0,"mat-error"),o.k0s()(),o.j41(16,"mat-dialog-actions")(17,"button",5),o.bIt("click",function(){return r.addCustomScenario()}),o.EFF(18," ADD "),o.k0s()()),2&i&&(o.R7$(8),o.Y8G("formControl",r.scenarioName),o.R7$(),o.vxM(r.scenarioName.invalid?9:-1),o.R7$(4),o.Dyx(r.scenarioContent),o.R7$(2),o.vxM(r.areAnyScenarioMetricPropertiesSelected?-1:15),o.R7$(2),o.Y8G("disabled",r.scenarioName.invalid||!r.areAnyScenarioMetricPropertiesSelected))},dependencies:[Yg,Al,Lu,Nu,t0,ZS,Wg,Jw,N$,oR,V$,JS,Zl,ns,Ta],styles:[".cc-add-custom-scenario-toggles[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}mat-slide-toggle[_ngcontent-%COMP%]{display:block}"]})}}return n})();const H7=n=>{const e=Math.round((n.maxValue-n.minValue)/3);return{from:e+n.minValue,to:2*e+n.minValue}};let NX=(()=>{class n{constructor(e,i,r,s,l){this.state=e,this.store=i,this.dialog=r,this.threeCameraService=s,this.threeOrbitControlsService=l}getScenarios(){return Zp.getScenarioItems(ka(this.state.getValue()))}applyScenario(e){const i=Zp.scenarios.get(e),r=Zp.getScenarioSettings(i);this.store.dispatch(hu({value:r})),r.appSettings.amountOfTopLabels||this.store.select(jR).pipe(r2()).subscribe(s=>{const l=M7(s);this.store.dispatch(r0({value:l}))}),r.appSettings.mapColors||this.store.dispatch(Lp({value:$h})),r.appSettings.edgeHeight||this.store.dispatch(ax({value:4})),r.appSettings.amountOfEdgePreviews||this.store.dispatch(M2({value:1})),r.appSettings.scaling||this.store.dispatch(lx({value:UR})),r.dynamicSettings.colorRange||this.store.select(Qg).pipe(r2()).subscribe(s=>{this.store.dispatch(Qp({value:H7(s)}))}),r.dynamicSettings.margin||this.store.dispatch(cx({value:50})),r.dynamicSettings.edgeMetric||this.store.select(ka).pipe(r2()).subscribe(s=>{this.store.dispatch(zp({value:s.edgeMetricData[0]?.name}))}),i.camera&&(this.threeCameraService.setPosition(i.camera.camera),this.threeOrbitControlsService.setControlTarget(i.camera.cameraTarget),this.threeOrbitControlsService.updateControls())}removeScenario(e){"Complexity"!==e?(Zp.deleteScenario(e),this.dialog.open(lu,{data:{title:"Info",message:`${e} deleted.`}})):this.dialog.open(lu,{data:{title:"Error",message:`${e} cannot be deleted as it is the default Scenario.`}})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Vi),o.KVO(Yt),o.KVO(Es),o.KVO(jh),o.KVO(Rd))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function s0e(n,t){if(1&n&&(o.j41(0,"span",5),o.nrm(1,"i"),o.k0s()),2&n){const e=t.$implicit;o.Y8G("title",e.tooltip),o.R7$(),o.ZvI("fa ",e.faIconClass,""),o.AVh("cc-is-saved",e.isSaved)}}function a0e(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",0)(1,"button",4),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.scenarioService.applyScenario(r.scenarioName))}),o.EFF(2),o.k0s(),o.Z7z(3,s0e,2,6,"span",5,o.fX1),o.j41(5,"button",6),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.scenarioService.removeScenario(r.scenarioName))}),o.nrm(6,"i",7),o.k0s()()}if(2&n){const e=t.$implicit;o.R7$(),o.Y8G("disabled",!e.isScenarioApplicable),o.R7$(),o.SpI(" ",e.scenarioName," "),o.R7$(),o.Dyx(e.icons)}}let l0e=(()=>{class n{constructor(e,i){this.scenarioService=e,this.dialog=i,this.scenarios=[]}addScenario(){this.dialog.open(o0e,{panelClass:"cc-add-custom-scenario"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(NX),o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-scenarios"]],inputs:{scenarios:"scenarios"},standalone:!0,features:[o.aNF],decls:8,vars:0,consts:[[1,"cc-row"],["disabled","",1,"cc-apply-scenario-button"],["title","Create a custom scenario",1,"cc-action-button","cc-add",3,"click"],[1,"fa","fa-plus"],["title","Apply scenario",1,"cc-apply-scenario-button",3,"click","disabled"],[1,"cc-scenario-content-icons",3,"title"],["title","Remove custom scenario",1,"cc-action-button","cc-remove",3,"click"],[1,"fa","fa-minus-square"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"button",1),o.EFF(2,"Metric Scenarios"),o.k0s(),o.j41(3,"button",2),o.bIt("click",function(){return r.addScenario()}),o.nrm(4,"i",3),o.k0s()(),o.nrm(5,"mat-divider"),o.Z7z(6,a0e,7,2,"div",0,o.fX1)),2&i&&(o.R7$(6),o.Dyx(r.scenarios))},dependencies:[N7],styles:[".cc-row[_ngcontent-%COMP%]{display:flex;height:48px;align-items:center}.cc-row[_ngcontent-%COMP%] [disabled][_ngcontent-%COMP%]{color:#00000061}.cc-row[_ngcontent-%COMP%] .cc-apply-scenario-button[_ngcontent-%COMP%]{padding-left:16px;padding-right:16px;height:100%;flex:1;text-align:left;background-color:unset}.cc-row[_ngcontent-%COMP%] .cc-apply-scenario-button[_ngcontent-%COMP%]:hover:not([disabled]){background-color:#9e9e9e33}.cc-row[_ngcontent-%COMP%] .cc-action-button[_ngcontent-%COMP%]{width:52px;height:100%;display:inline-flex;justify-content:center;align-items:center}.cc-row[_ngcontent-%COMP%] .cc-action-button.cc-add[_ngcontent-%COMP%]{background-color:#1b9cfc}.cc-row[_ngcontent-%COMP%] .cc-action-button.cc-remove[_ngcontent-%COMP%]{border-left:1px solid rgba(0,0,0,.12);color:#b30000;background-color:unset}.cc-row[_ngcontent-%COMP%] .cc-action-button.cc-remove[_ngcontent-%COMP%]:hover:not([disabled]){background-color:#9e9e9e33}.cc-row[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:x-small}.cc-row[_ngcontent-%COMP%] .cc-scenario-content-icons[_ngcontent-%COMP%]{padding:0 8px;color:#d3d3d3}.cc-row[_ngcontent-%COMP%] .cc-scenario-content-icons[_ngcontent-%COMP%] i.fa.cc-is-saved[_ngcontent-%COMP%]{color:#000}"]})}}return n})(),c0e=(()=>{class n{constructor(e){this.scenarioService=e,this.scenarios=[]}loadScenarios(){this.scenarios=this.scenarioService.getScenarios()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(NX))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-show-scenarios-button"]],standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[["menu","matMenu"],["icon","fa-star",3,"click","title","matMenuTriggerFor"],[1,"cc-scenarios-menu"],[3,"scenarios"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"cc-ribbon-bar-menu-button",1),o.bIt("click",function(){return o.eBV(s),o.Njj(r.loadScenarios())}),o.k0s(),o.j41(1,"mat-menu",2,0),o.nrm(3,"cc-scenarios",3),o.k0s()}if(2&i){const s=o.sdS(2);o.Y8G("title","Open the scenario list")("matMenuTriggerFor",s),o.R7$(3),o.Y8G("scenarios",r.scenarios)}},dependencies:[tP,rx,Kh,l0e],styles:["[_nghost-%COMP%]{display:flex;justify-content:center}"]})}}return n})(),d0e=(()=>{class n{upload(){const e=fM();e.addEventListener("change",()=>{this.uploadOnEvent(e)}),e.click()}uploadOnEvent(e){return Mn(function*(){const i=yield Promise.all(L1(e.files));for(const r of i)try{mr.importCustomConfigs(r)}catch{}})()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-upload-custom-config-button"]],standalone:!0,features:[o.aNF],decls:2,vars:0,consts:[["title","Upload Custom View (.cc.config.json file).",1,"action-button",3,"click"],[1,"fa","fa-folder-open"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.upload()}),o.nrm(1,"i",1),o.k0s())},styles:["button[_ngcontent-%COMP%]{margin:0 3px;min-width:12%;height:48px;width:48px;border-radius:100%;line-height:48px;background-color:#fff;color:#1b9cfc}button[_ngcontent-%COMP%]:disabled, button[disabled][_ngcontent-%COMP%]{background-color:#e6e6e6;color:#ccc}button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12px;margin-left:0}"]})}}return n})();function A0e(n,t){return[...n.keys()].some(i=>t.has(i))}var nP=function(n){return n.MULTIPLE="STANDARD",n.DELTA="DELTA",n}(nP||{});const B2=sn(uc,n=>{const t=new Map;let e;for(const{selectedAs:i,file:r}of n)e=i===At.Partial?nP.MULTIPLE:nP.DELTA,t.set(r.fileMeta.fileChecksum,r.fileMeta.fileName);return{mapSelectionMode:e,assignedMaps:t}});let LX=(()=>{class n{constructor(e){this.store=e,this.downloadableCustomConfigs$=d0([this.store.select(B2),mr.customConfigChange$]).pipe((0,Xn.T)(([i])=>(({assignedMaps:n})=>{const t=new Map,e=mr.getCustomConfigs();for(const[i,r]of e.entries())A0e(r.assignedMaps,n)&&t.set(i,mr.createExportCustomConfigFromConfig(r));return t})(i))),this.customConfigItemGroups$=d0([this.store.select(B2),mr.customConfigChange$]).pipe((0,Xn.T)(([i])=>function m0e({assignedMaps:n}){const t={applicableItems:new Map,nonApplicableItems:new Map},e=new Map;for(const i of mr.loadCustomConfigsFromLocalStorage().values()){const r=[...i.assignedMaps.values()],s=`${r.join("_")}_${i.mapSelectionMode}`,l=[...i.assignedMaps.keys()].some(I=>n.has(I));e.has(s)||e.set(s,{mapNames:r.join(" "),mapSelectionMode:i.mapSelectionMode,hasApplicableItems:l,customConfigItems:[]});const{positive:u,neutral:f,negative:p,selected:m,positiveDelta:_,negativeDelta:b}=i.stateSettings.appSettings.mapColors,{areaMetric:w,heightMetric:F,colorMetric:D,edgeMetric:T}=i.stateSettings.dynamicSettings;e.get(s).customConfigItems.push({id:i.id,name:i.name,assignedMaps:i.assignedMaps,mapSelectionMode:i.mapSelectionMode,metrics:{areaMetric:w,heightMetric:F,colorMetric:D,edgeMetric:T},mapColors:{positive:u,neutral:f,negative:p,selected:m,positiveDelta:_,negativeDelta:b},isApplicable:l,...i.note&&{note:i.note}}),e.get(s).hasApplicableItems?t.applicableItems.set(s,e.get(s)):t.nonApplicableItems.set(s,e.get(s))}return t}(i)))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),g0e=(()=>{class n{constructor(e){this.downloadCustomConfigService=e}ngOnInit(){this.subscription=this.downloadCustomConfigService.downloadableCustomConfigs$.subscribe(e=>{this.downloadableConfigs=e})}ngOnDestroy(){this.subscription.unsubscribe()}downloadPreloadedCustomConfigs(){!function f0e(n){const t={downloadApiVersion:"1.0.1",timestamp:Date.now(),customConfigs:n},e=uu.getNewTimestamp()+".cc.config.json";Om.downloadData(JSON.stringify(t,tm),e)}(this.downloadableConfigs)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(LX))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-download-custom-configs-button"]],standalone:!0,features:[o.aNF],decls:2,vars:1,consts:[["title","Download Custom View related to currently uploaded maps, if any.",3,"click","disabled"],[1,"fa","fa-download"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.downloadPreloadedCustomConfigs()}),o.nrm(1,"i",1),o.k0s()),2&i&&o.Y8G("disabled",0===r.downloadableConfigs.size)},styles:["button[_ngcontent-%COMP%]{margin:0 3px;min-width:12%;height:48px;width:48px;border-radius:100%;line-height:48px;background-color:#fff;color:#1b9cfc}button[_ngcontent-%COMP%]:disabled, button[disabled][_ngcontent-%COMP%]{background-color:#e6e6e6;color:#ccc}button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12px;margin-left:0}"]})}}return n})();function b0e(n,t,e,i){const{mapSelectionMode:r,assignedMaps:s}=B2(t),l={id:"",name:n,creationTime:Date.now(),mapSelectionMode:r,assignedMaps:s,customConfigVersion:"1.0.0",stateSettings:{appSettings:void 0,dynamicSettings:void 0,fileSettings:void 0},camera:e,...i&&{note:i}};return function v0e(n){n.stateSettings.appSettings={showMetricLabelNameValue:!1,showMetricLabelNodeName:!1,colorLabels:{positive:!1,negative:!1,neutral:!1},amountOfEdgePreviews:0,amountOfTopLabels:0,edgeHeight:0,hideFlatBuildings:!1,invertHeight:!1,invertArea:!1,isLoadingFile:!1,isLoadingMap:!1,isPresentationMode:!1,isWhiteBackground:!1,resetCameraIfNewFileIsLoaded:!1,scaling:void 0,showOnlyBuildingsWithEdges:!1,isEdgeMetricVisible:!0,sortingOrderAscending:!1,isSearchPanelPinned:!1,experimentalFeaturesEnabled:!1,screenshotToClipboardEnabled:!1,layoutAlgorithm:void 0,maxTreeMapFiles:0,sharpnessMode:void 0,isColorMetricLinkedToHeightMetric:!1,enableFloorLabels:!0,mapColors:{labelColorAndAlpha:{alpha:0,rgb:""},base:"",flat:"",incomingEdge:"",markingColors:[],negative:"",negativeDelta:"",neutral:"",outgoingEdge:"",positive:"",positiveDelta:"",selected:""}}}(l),function y0e(n){n.stateSettings.dynamicSettings={areaMetric:"",colorMetric:"",distributionMetric:"",edgeMetric:"",focusedNodePath:[],heightMetric:"",margin:0,searchPattern:"",sortingOption:void 0,colorRange:{from:0,to:0},colorMode:void 0}}(l),function w0e(n){n.stateSettings.fileSettings={blacklist:void 0,edges:[],attributeDescriptors:{},markedPackages:[]}}(l),UX(t,l.stateSettings),l.id=O_()(JSON.stringify(l,tm)),l}function UX(n,t){for(const[e,i]of Object.entries(n))Object.prototype.hasOwnProperty.call(t,e)&&("object"!=typeof i||Array.isArray(i)||null===i||void 0===t[e]?t[e]=i:UX(i,t[e]))}let x0e=(()=>{class n{constructor(e){this.data=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Jf))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-confirmation-dialog"]],standalone:!0,features:[o.aNF],decls:10,vars:4,consts:[[1,"confirmation-message"],["mat-dialog-title",""],["mat-dialog-content",""],["mat-dialog-actions",""],["mat-button","",3,"mat-dialog-close"],["mat-button","","cdkFocusInitial","",1,"submit-button",3,"mat-dialog-close"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"h1",1),o.EFF(2),o.k0s(),o.j41(3,"div",2),o.EFF(4),o.k0s()(),o.j41(5,"div",3)(6,"button",4),o.EFF(7,"CANCEL"),o.k0s(),o.j41(8,"button",5),o.EFF(9,"OK"),o.k0s()()),2&i&&(o.R7$(2),o.JRh(r.data.title),o.R7$(2),o.JRh(r.data.message),o.R7$(2),o.Y8G("mat-dialog-close",!1),o.R7$(2),o.Y8G("mat-dialog-close",!0))},dependencies:[Zy,Al,Zl,ns,Ta],encapsulation:2})}}return n})();function S0e(n,t){if(1&n){const e=o.RV6();o.j41(0,"span",0),o.EFF(1,"Do you want to download and then purge old unused Configs to make space for new ones?"),o.k0s(),o.j41(2,"button",1),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.showPurgeConfirmDialog())}),o.EFF(3," DOWNLOAD & PURGE... "),o.k0s()}}let T0e=(()=>{class n{constructor(e){this.dialog=e,this.isLocalStorageSizeValid=!0}ngOnInit(){this.isLocalStorageSizeValid=(()=>{let t="";for(const[i,r]of Object.entries(localStorage))t+=i+r;return 3+16*t.length/8/1024<=768})()}showPurgeConfirmDialog(){const e=function E0e(){const n=new Set,t=mr.getCustomConfigs(),e=new Map;for(const[r,s]of t.entries())void 0===s?.creationTime&&(s.creationTime=Date.now()),(Date.now()-s.creationTime)/2592e6>=6&&(e.set(r,mr.createExportCustomConfigFromConfig(s)),n.add(s));return e.size>0&&mr.downloadCustomConfigs(e),n}();0!==e.size?this.dialog.open(x0e,{panelClass:"cc-confirmation-dialog",data:{title:"Confirm to purge old Configs",message:"Are you sure to delete old Configs now?"}}).afterClosed().subscribe(r=>{r&&mr.deleteCustomConfigs([...e])}):this.dialog.open(lu,{data:{title:"Download Error",message:"Could not download and purge old configs automatically! Please try it by yourself."}})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-download-and-purge-configs"]],standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[1,"exceed-local-storage-message"],["mat-flat-button","","title","Download old unused Custom Views as a backup file and then delete them in the browser.",1,"exceed-local-storage-button",3,"click"]],template:function(i,r){1&i&&o.DNE(0,S0e,4,0),2&i&&o.vxM(r.isLocalStorageSizeValid?-1:0)},dependencies:[ns],styles:["[_nghost-%COMP%]{text-align:right;display:flex;flex-wrap:wrap;justify-content:center}.exceed-local-storage-message[_ngcontent-%COMP%]{display:block;text-align:left;padding:0 16px;color:#b02929}.exceed-local-storage-button[_ngcontent-%COMP%]{color:#fff;background-color:#b02929}.exceed-local-storage-button[_ngcontent-%COMP%]:hover{background-color:#8c1f1f}"]})}}return n})();function I0e(n,t){if(1&n&&(o.j41(0,"mat-error"),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.JRh(e.getErrorMessage())}}let VX=(()=>{class n{constructor(e,i,r){this.state=e,this.threeCameraService=i,this.threeOrbitControlsService=r}ngOnInit(){const e=B2(this.state.getValue());this.customConfigName=new g$("",[b8.required,F0e(e)]),this.customConfigName.setValue(mr.getConfigNameSuggestionByFileState(e))}getErrorMessage(){return this.customConfigName.hasError("required")?"Please enter a view name.":this.customConfigName.hasError("Error")?this.customConfigName.getError("Error"):""}addCustomConfig(){const e=b0e(this.customConfigName.value,this.state.getValue(),{camera:this.threeCameraService.camera.position,cameraTarget:this.threeOrbitControlsService.controls.target},this.customConfigNote);mr.addCustomConfig(e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi),o.rXU(jh),o.rXU(Rd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-add-custom-config-dialog"]],standalone:!0,features:[o.aNF],decls:24,vars:4,consts:[["xmlns","http://www.w3.org/1999/html",1,"header"],["matInput","","required","",1,"cc-custom-config-input",3,"formControl"],["cdkAutosizeMinRows","8","cdkTextareaAutosize","","matInput","","required","",1,"cc-custom-config-input",3,"ngModelChange","ngModel"],[1,"cc-add-custom-config"],["mat-flat-button","","mat-dialog-close","",3,"click","disabled"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0)(1,"h2"),o.EFF(2,"Add Custom View"),o.k0s()(),o.j41(3,"mat-dialog-content")(4,"p")(5,"mat-form-field")(6,"mat-label"),o.EFF(7,"Save individual configurations for your map."),o.k0s(),o.nrm(8,"input",1),o.j41(9,"mat-hint"),o.EFF(10,"Config View Name"),o.k0s(),o.DNE(11,I0e,2,1,"mat-error"),o.k0s()(),o.j41(12,"p")(13,"mat-form-field")(14,"mat-label"),o.EFF(15,"Provide custom note for configuration (optional)"),o.k0s(),o.j41(16,"textarea",2),o.mxI("ngModelChange",function(l){return o.DH7(r.customConfigNote,l)||(r.customConfigNote=l),l}),o.EFF(17," "),o.k0s(),o.j41(18,"mat-hint"),o.EFF(19,"Config Note"),o.k0s()()()(),o.j41(20,"mat-dialog-actions",3),o.nrm(21,"cc-download-and-purge-configs"),o.j41(22,"button",4),o.bIt("click",function(){return r.addCustomConfig()}),o.EFF(23,"ADD"),o.k0s()()),2&i&&(o.R7$(8),o.Y8G("formControl",r.customConfigName),o.R7$(3),o.vxM(r.customConfigName.invalid?11:-1),o.R7$(5),o.R50("ngModel",r.customConfigNote),o.R7$(6),o.Y8G("disabled",r.customConfigName.invalid))},dependencies:[Yg,Al,Lu,Nu,t0,ZS,Wg,Jw,sR,nx,N$,oR,z8,V$,cq,Zl,T0e,ns,Ta],encapsulation:2})}}return n})();function F0e(n){return t=>mr.hasCustomConfigByName(n.mapSelectionMode,n.assignedMaps,t.value)?{Error:"A Custom View with this name already exists."}:null}let D0e=(()=>{class n{constructor(e){this.dialog=e}showAddCustomConfigDialog(){this.dialog.open(VX,{panelClass:"cc-add-custom-config-dialog"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-add-custom-config-button"]],standalone:!0,features:[o.aNF],decls:2,vars:0,consts:[["title","Create new Custom View",3,"click"],[1,"fa","fa-plus"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.showAddCustomConfigDialog()}),o.nrm(1,"i",1),o.k0s())},styles:["button[_ngcontent-%COMP%]{margin:0 3px;min-width:12%;height:48px;width:48px;border-radius:100%;line-height:48px;background-color:#fff;color:#1b9cfc}button[_ngcontent-%COMP%]:disabled, button[disabled][_ngcontent-%COMP%]{background-color:#e6e6e6;color:#ccc}button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12px;margin-left:0}"]})}}return n})(),B0e=0;const Q7=new o.nKC("CdkAccordion");let k0e=(()=>{class n{constructor(){this._stateChanges=new mi.B,this._openCloseAllActions=new mi.B,this.id="cdk-accordion-"+B0e++,this.multi=!1}openAll(){this.multi&&this._openCloseAllActions.next(!0)}closeAll(){this._openCloseAllActions.next(!1)}ngOnChanges(e){this._stateChanges.next(e)}ngOnDestroy(){this._stateChanges.complete(),this._openCloseAllActions.complete()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["cdk-accordion"],["","cdkAccordion",""]],inputs:{multi:[2,"multi","multi",o.L39]},exportAs:["cdkAccordion"],standalone:!0,features:[o.Jv_([{provide:Q7,useExisting:n}]),o.GFd,o.OA$]})}}return n})(),R0e=0,P0e=(()=>{class n{get expanded(){return this._expanded}set expanded(e){this._expanded!==e&&(this._expanded=e,this.expandedChange.emit(e),e?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}constructor(e,i,r){this.accordion=e,this._changeDetectorRef=i,this._expansionDispatcher=r,this._openCloseAllSubscription=un.yU.EMPTY,this.closed=new o.bkB,this.opened=new o.bkB,this.destroyed=new o.bkB,this.expandedChange=new o.bkB,this.id="cdk-accordion-child-"+R0e++,this._expanded=!1,this.disabled=!1,this._removeUniqueSelectionListener=()=>{},this._removeUniqueSelectionListener=r.listen((s,l)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===l&&this.id!==s&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Q7,12),o.rXU(o.gRc),o.rXU(Y$))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:[2,"expanded","expanded",o.L39],disabled:[2,"disabled","disabled",o.L39]},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],standalone:!0,features:[o.Jv_([{provide:Q7,useValue:void 0}]),o.GFd]})}}return n})();const O0e=["body"],N0e=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],L0e=["mat-expansion-panel-header","*","mat-action-row"];function U0e(n,t){}const V0e=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],H0e=["mat-panel-title","mat-panel-description","*"];function Q0e(n,t){if(1&n&&(o.j41(0,"span",1),o.qSk(),o.j41(1,"svg",2),o.nrm(2,"path",3),o.k0s()()),2&n){const e=o.XpG();o.Y8G("@indicatorRotate",e._getExpandedState())}}const z7=new o.nKC("MAT_ACCORDION"),HX="225ms cubic-bezier(0.4,0.0,0.2,1)",QX={indicatorRotate:(0,Nn.hZ)("indicatorRotate",[(0,Nn.wk)("collapsed, void",(0,Nn.iF)({transform:"rotate(0deg)"})),(0,Nn.wk)("expanded",(0,Nn.iF)({transform:"rotate(180deg)"})),(0,Nn.kY)("expanded <=> collapsed, void => collapsed",(0,Nn.i0)(HX))]),bodyExpansion:(0,Nn.hZ)("bodyExpansion",[(0,Nn.wk)("collapsed, void",(0,Nn.iF)({height:"0px",visibility:"hidden"})),(0,Nn.wk)("expanded",(0,Nn.iF)({height:"*",visibility:""})),(0,Nn.kY)("expanded <=> collapsed, void => collapsed",(0,Nn.i0)(HX))])},zX=new o.nKC("MAT_EXPANSION_PANEL");let z0e=(()=>{class n{constructor(e,i){this._template=e,this._expansionPanel=i}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.C4Q),o.rXU(zX,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["ng-template","matExpansionPanelContent",""]],standalone:!0})}}return n})(),G0e=0;const GX=new o.nKC("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS");let jX=(()=>{class n extends P0e{get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=e}get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}constructor(e,i,r,s,l,u,f){super(e,i,r),this._viewContainerRef=s,this._animationMode=u,this._hideToggle=!1,this.afterExpand=new o.bkB,this.afterCollapse=new o.bkB,this._inputChanges=new mi.B,this._headerId="mat-expansion-panel-header-"+G0e++,this.accordion=e,this._document=l,this._animationsDisabled="NoopAnimations"===u,f&&(this.hideToggle=f.hideToggle)}_hasSpacing(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this._lazyContent._expansionPanel===this&&this.opened.pipe(su(null),hr(()=>this.expanded&&!this._portal),Ms(1)).subscribe(()=>{this._portal=new A_(this._lazyContent._template,this._viewContainerRef)})}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._inputChanges.complete()}_containsFocus(){if(this._body){const e=this._document.activeElement,i=this._body.nativeElement;return e===i||i.contains(e)}return!1}_animationStarted(e){!$X(e)&&!this._animationsDisabled&&this._body&&this._body?.nativeElement.setAttribute("inert","")}_animationDone(e){$X(e)||("expanded"===e.toState?this.afterExpand.emit():"collapsed"===e.toState&&this.afterCollapse.emit(),!this._animationsDisabled&&this._body&&this._body.nativeElement.removeAttribute("inert"))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(z7,12),o.rXU(o.gRc),o.rXU(Y$),o.rXU(o.c1b),o.rXU(V),o.rXU(o.bc$,8),o.rXU(GX,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-expansion-panel"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,z0e,5),2&i){let l;o.mGM(l=o.lsd())&&(r._lazyContent=l.first)}},viewQuery:function(i,r){if(1&i&&o.GBs(O0e,5),2&i){let s;o.mGM(s=o.lsd())&&(r._body=s.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(i,r){2&i&&o.AVh("mat-expanded",r.expanded)("_mat-animation-noopable",r._animationsDisabled)("mat-expansion-panel-spacing",r._hasSpacing())},inputs:{hideToggle:[2,"hideToggle","hideToggle",o.L39],togglePosition:"togglePosition"},outputs:{afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],standalone:!0,features:[o.Jv_([{provide:z7,useValue:void 0},{provide:zX,useExisting:n}]),o.GFd,o.Vt3,o.OA$,o.aNF],ngContentSelectors:L0e,decls:7,vars:4,consts:[["body",""],["role","region",1,"mat-expansion-panel-content",3,"id"],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(N0e),o.SdG(0),o.j41(1,"div",1,0),o.bIt("@bodyExpansion.start",function(u){return o.eBV(s),o.Njj(r._animationStarted(u))})("@bodyExpansion.done",function(u){return o.eBV(s),o.Njj(r._animationDone(u))}),o.j41(3,"div",2),o.SdG(4,1),o.DNE(5,U0e,0,0,"ng-template",3),o.k0s(),o.SdG(6,2),o.k0s()}2&i&&(o.R7$(),o.Y8G("@bodyExpansion",r._getExpandedState())("id",r.id),o.BMQ("aria-labelledby",r._headerId),o.R7$(4),o.Y8G("cdkPortalOutlet",r._portal))},dependencies:[m_],styles:['.mat-expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative;background:var(--mat-expansion-container-background-color, var(--mat-app-surface));color:var(--mat-expansion-container-text-color, var(--mat-app-on-surface));border-radius:var(--mat-expansion-container-shape)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:var(--mat-expansion-container-shape);border-top-left-radius:var(--mat-expansion-container-shape)}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:var(--mat-expansion-container-shape);border-bottom-left-radius:var(--mat-expansion-container-shape)}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible;font-family:var(--mat-expansion-container-text-font, var(--mat-app-body-large-font));font-size:var(--mat-expansion-container-text-size, var(--mat-app-body-large-size));font-weight:var(--mat-expansion-container-text-weight, var(--mat-app-body-large-weight));line-height:var(--mat-expansion-container-text-line-height, var(--mat-app-body-large-line-height));letter-spacing:var(--mat-expansion-container-text-tracking, var(--mat-app-body-large-tracking))}.mat-expansion-panel-content[style*="visibility: hidden"] *{visibility:hidden !important}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px;border-top-color:var(--mat-expansion-actions-divider-color, var(--mat-app-outline))}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}'],encapsulation:2,data:{animation:[QX.bodyExpansion]},changeDetection:0})}}return n})();function $X(n){return"void"===n.fromState}let qX=(()=>{class n{constructor(e,i,r,s,l,u,f){this.panel=e,this._element=i,this._focusMonitor=r,this._changeDetectorRef=s,this._animationMode=u,this._parentChangeSubscription=un.yU.EMPTY,this.tabIndex=0;const p=e.accordion?e.accordion._stateChanges.pipe(hr(m=>!(!m.hideToggle&&!m.togglePosition))):mh;this.tabIndex=parseInt(f||"")||0,this._parentChangeSubscription=ql(e.opened,e.closed,p,e._inputChanges.pipe(hr(m=>!!(m.hideToggle||m.disabled||m.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),e.closed.pipe(hr(()=>e._containsFocus())).subscribe(()=>r.focusVia(i,"program")),l&&(this.expandedHeight=l.expandedHeight,this.collapsedHeight=l.collapsedHeight)}get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){const e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}_keydown(e){switch(e.keyCode){case 32:case 13:Kl(e)||(e.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e))}}focus(e,i){e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(e=>{e&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(jX,1),o.rXU(o.aKT),o.rXU(Yl),o.rXU(o.gRc),o.rXU(GX,8),o.rXU(o.bc$,8),o.kS0("tabindex"))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(i,r){1&i&&o.bIt("click",function(){return r._toggle()})("keydown",function(l){return r._keydown(l)}),2&i&&(o.BMQ("id",r.panel._headerId)("tabindex",r.disabled?-1:r.tabIndex)("aria-controls",r._getPanelId())("aria-expanded",r._isExpanded())("aria-disabled",r.panel.disabled),o.xc7("height",r._getHeaderHeight()),o.AVh("mat-expanded",r._isExpanded())("mat-expansion-toggle-indicator-after","after"===r._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===r._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===r._animationMode))},inputs:{expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight",tabIndex:[2,"tabIndex","tabIndex",e=>null==e?0:(0,o.Udg)(e)]},standalone:!0,features:[o.GFd,o.aNF],ngContentSelectors:H0e,decls:5,vars:3,consts:[[1,"mat-content"],[1,"mat-expansion-indicator"],["xmlns","http://www.w3.org/2000/svg","viewBox","0 -960 960 960","aria-hidden","true","focusable","false"],["d","M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"]],template:function(i,r){1&i&&(o.NAR(V0e),o.j41(0,"span",0),o.SdG(1),o.SdG(2,1),o.SdG(3,2),o.k0s(),o.DNE(4,Q0e,3,1,"span",1)),2&i&&(o.AVh("mat-content-hide-toggle",!r._showToggle()),o.R7$(4),o.vxM(r._showToggle()?4:-1))},styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-expansion-header-collapsed-state-height);font-family:var(--mat-expansion-header-text-font, var(--mat-app-title-medium-font));font-size:var(--mat-expansion-header-text-size, var(--mat-app-title-medium-size));font-weight:var(--mat-expansion-header-text-weight, var(--mat-app-title-medium-weight));line-height:var(--mat-expansion-header-text-line-height, var(--mat-app-title-medium-line-height));letter-spacing:var(--mat-expansion-header-text-tracking, var(--mat-app-title-medium-tracking))}.mat-expansion-panel-header.mat-expanded{height:var(--mat-expansion-header-expanded-state-height)}.mat-expansion-panel-header[aria-disabled=true]{color:var(--mat-expansion-header-disabled-state-text-color)}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-header-hover-state-layer-color)}@media(hover: none){.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-container-background-color, var(--mat-app-surface))}}.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-program-focused{background:var(--mat-expansion-header-focus-state-layer-color)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-content.mat-content-hide-toggle{margin-right:8px}[dir=rtl] .mat-content.mat-content-hide-toggle{margin-right:0;margin-left:8px}.mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-left:24px;margin-right:0}[dir=rtl] .mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-right:24px;margin-left:0}.mat-expansion-panel-header-title{color:var(--mat-expansion-header-text-color, var(--mat-app-on-surface))}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;flex-basis:0;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header-description{flex-grow:2;color:var(--mat-expansion-header-description-color, var(--mat-app-on-surface-variant))}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle;color:var(--mat-expansion-header-indicator-color, var(--mat-app-on-surface-variant));display:var(--mat-expansion-legacy-header-indicator-display, inline-block)}.mat-expansion-indicator svg{width:24px;height:24px;margin:0 -8px;vertical-align:middle;fill:var(--mat-expansion-header-indicator-color, var(--mat-app-on-surface-variant));display:var(--mat-expansion-header-indicator-display, none)}.cdk-high-contrast-active .mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}'],encapsulation:2,data:{animation:[QX.indicatorRotate]},changeDetection:0})}}return n})(),j0e=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"],standalone:!0})}}return n})(),$0e=(()=>{class n extends k0e{constructor(){super(...arguments),this._ownHeaders=new o.rOR,this.hideToggle=!1,this.displayMode="default",this.togglePosition="after"}ngAfterContentInit(){this._headers.changes.pipe(su(this._headers)).subscribe(e=>{this._ownHeaders.reset(e.filter(i=>i.panel.accordion===this)),this._ownHeaders.notifyOnChanges()}),this._keyManager=new ou(this._ownHeaders).withWrap().withHomeAndEnd()}_handleHeaderKeydown(e){this._keyManager.onKeydown(e)}_handleHeaderFocus(e){this._keyManager.updateActiveItem(e)}ngOnDestroy(){super.ngOnDestroy(),this._keyManager?.destroy(),this._ownHeaders.destroy()}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-accordion"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,qX,5),2&i){let l;o.mGM(l=o.lsd())&&(r._headers=l)}},hostAttrs:[1,"mat-accordion"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mat-accordion-multi",r.multi)},inputs:{hideToggle:[2,"hideToggle","hideToggle",o.L39],displayMode:"displayMode",togglePosition:"togglePosition"},exportAs:["matAccordion"],standalone:!0,features:[o.Jv_([{provide:z7,useExisting:n}]),o.GFd,o.Vt3]})}}return n})(),q0e=(()=>{class n{constructor(e){this.data=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Jf))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-config-note-dialog"]],standalone:!0,features:[o.aNF],decls:11,vars:2,consts:[[1,"cc-custom-config-note-dialog-container"],["mat-dialog-content","",1,"cc-note-input-container"],["appearance","fill",1,"note-input"],["matInput","","cdkAutosizeMinRows","10","cdkTextareaAutosize","",3,"ngModelChange","ngModel"],["mat-dialog-actions","",1,"cc-note-dialog-action-buttons"],["mat-flat-button","",3,"mat-dialog-close"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"div",1)(2,"mat-form-field",2)(3,"mat-label"),o.EFF(4,"Custom Note"),o.k0s(),o.j41(5,"textarea",3),o.mxI("ngModelChange",function(l){return o.DH7(r.data,l)||(r.data=l),l}),o.k0s()()(),o.j41(6,"div",4)(7,"button",5),o.EFF(8,"Cancel"),o.k0s(),o.j41(9,"button",5),o.EFF(10,"Ok"),o.k0s()()()),2&i&&(o.R7$(5),o.R50("ngModel",r.data),o.R7$(4),o.Y8G("mat-dialog-close",r.data))},dependencies:[Al,Lu,Nu,t0,cq,ZS,Wg,Jw,nx,Zl,ns,Ta],styles:["[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%]{padding:20px 24px}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] .cc-note-input-container[_ngcontent-%COMP%]{padding:0}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] .cc-note-input-container[_ngcontent-%COMP%] .note-input[_ngcontent-%COMP%]{width:100%}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] .cc-note-dialog-action-buttons[_ngcontent-%COMP%]{justify-content:flex-end;padding:0}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{padding:12px;margin:0 0 0 10px;color:#1b9cfc;background-color:#8a848414}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover{background-color:#0000000d;color:#1b9cfc}"]})}}return n})(),W0e=(()=>{class n{constructor(e){this.dialog=e}openDialog(){this.customConfigNote=this.customConfigItem.note,this.dialog.open(q0e,{width:"600px",data:this.customConfigNote}).afterClosed().subscribe(i=>{void 0!==i&&this.customConfigNote!==i&&(this.customConfigNote=i,mr.editCustomConfigNote(this.customConfigItem.id,i))})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-config-note-dialog-button"]],inputs:{customConfigItem:"customConfigItem"},standalone:!0,features:[o.aNF],decls:2,vars:0,consts:[["title","Edit/View Note",1,"custom-config-note-dialog-button",3,"click"],[1,"fa","fa-pencil"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.openDialog()}),o.nrm(1,"i",1),o.k0s())},styles:["button[_ngcontent-%COMP%]{font-size:16px;padding:8px 10px;margin:0;background-color:transparent}button[_ngcontent-%COMP%]:hover{background-color:#0000000d;color:#1b9cfc;border-radius:50%}"]})}}return n})();function WX(n,t){const{mapSelectionMode:e,assignedMaps:i}=B2(t),r=[];for(const s of n.assignedMaps.keys())i.has(s)||r.push(n.assignedMaps.get(s));return{mapSelectionMode:n.mapSelectionMode!==e?n.mapSelectionMode:"",mapNames:r}}let X0e=(()=>{class n{constructor(e){this.state=e}transform(e){const{mapSelectionMode:i,mapNames:r}=WX(e,this.state.getValue());return r.length>0||i.length>0?"rgb(204, 204, 204)":"rgba(0, 0, 0, 0.87)"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi,16))}}static{this.\u0275pipe=o.EJ8({name:"customConfig2ApplicableColor",type:n,pure:!0,standalone:!0})}}return n})(),K0e=(()=>{class n{transform(e){const{mapColors:i,mapSelectionMode:r}=e;return r===nP.MULTIPLE?[i.positive,i.neutral,i.negative,i.selected]:[i.positiveDelta,i.negativeDelta,i.selected]}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"customConfigColorSchemaBySelectionMode",type:n,pure:!0,standalone:!0})}}return n})();function Y0e(n,t){if(1&n&&(o.j41(0,"p",2),o.nrm(1,"i",8),o.EFF(2),o.k0s()),2&n){const e=o.XpG();o.R7$(2),o.SpI(" ",e.customConfigItem.metrics.edgeMetric,"")}}function Z0e(n,t){if(1&n&&(o.j41(0,"div",7),o.nrm(1,"span",9),o.k0s()),2&n){const e=t.$implicit,i=o.XpG();o.R7$(),o.xc7("background-color",i.customConfigItem.isApplicable?e:"rgb(204, 204, 204)")}}let J0e=(()=>{class n{constructor(e,i,r,s){this.store=e,this.threeCameraService=i,this.threeOrbitControlsService=r,this.threeRendererService=s}applyCustomConfig(){mr.applyCustomConfig(this.customConfigItem.id,this.store,this.threeCameraService,this.threeOrbitControlsService,this.threeRendererService)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(jh),o.rXU(Rd),o.rXU(wr))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-apply-custom-config-button"]],inputs:{customConfigItem:"customConfigItem"},standalone:!0,features:[o.aNF],decls:17,vars:12,consts:[["mat-dialog-close","",3,"click","disabled","title"],[1,"config-metric-list"],[1,"config-metric"],[1,"fa","fa-arrows-alt"],[1,"fa","fa-arrows-v"],[1,"fa","fa-paint-brush"],[1,"color-schema-container"],[1,"color-swatch-container"],[1,"fa","fa-exchange"],[1,"color-swatch"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"customConfig2ApplicableColor"),o.bIt("click",function(){return r.applyCustomConfig()}),o.j41(2,"div",1)(3,"p",2),o.nrm(4,"i",3),o.EFF(5),o.k0s(),o.j41(6,"p",2),o.nrm(7,"i",4),o.EFF(8),o.k0s(),o.j41(9,"p",2),o.nrm(10,"i",5),o.EFF(11),o.k0s(),o.DNE(12,Y0e,3,1,"p",2),o.j41(13,"div",6),o.Z7z(14,Z0e,2,2,"div",7,o.fX1),o.nI1(16,"customConfigColorSchemaBySelectionMode"),o.k0s()()()),2&i&&(o.xc7("color",o.bMT(1,8,r.customConfigItem)),o.FS9("title",r.customConfigItem.name),o.Y8G("disabled",!r.customConfigItem.isApplicable),o.R7$(5),o.SpI(" ",r.customConfigItem.metrics.areaMetric,""),o.R7$(3),o.SpI(" ",r.customConfigItem.metrics.heightMetric,""),o.R7$(3),o.SpI(" ",r.customConfigItem.metrics.colorMetric,""),o.R7$(),o.vxM(r.customConfigItem.metrics.edgeMetric?12:-1),o.R7$(2),o.Dyx(o.bMT(16,10,r.customConfigItem)))},dependencies:[Ta,X0e,K0e],styles:["[_nghost-%COMP%]{display:flex;flex:1}[_nghost-%COMP%] button[_ngcontent-%COMP%]{flex-direction:row;width:100%;margin:0;background-color:transparent}[_nghost-%COMP%] button[_ngcontent-%COMP%]:disabled{cursor:default}[_nghost-%COMP%] button[_ngcontent-%COMP%] .config-metric-list[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:10px}[_nghost-%COMP%] button[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:15px;margin:0;text-align:left}[_nghost-%COMP%] button[_ngcontent-%COMP%] p.config-name[_ngcontent-%COMP%]{flex:1 1 auto;width:100%}[_nghost-%COMP%] button[_ngcontent-%COMP%] p.config-metric[_ngcontent-%COMP%]{flex:0 0 9em}[_nghost-%COMP%] button[_ngcontent-%COMP%] .color-schema-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:2px}[_nghost-%COMP%] button[_ngcontent-%COMP%] .color-schema-container[_ngcontent-%COMP%] .color-swatch-container[_ngcontent-%COMP%] .color-swatch[_ngcontent-%COMP%]{display:inline-block;width:16px;height:16px}"]})}}return n})(),XX=(()=>{class n{transform(e,i,r="..."){return e.length>i?e.slice(0,i)+r:e}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"truncateText",type:n,pure:!0,standalone:!0})}}return n})(),e_e=(()=>{class n{constructor(e){this.state=e}transform(e){const{mapSelectionMode:i,mapNames:r}=WX(e,this.state.getValue());return r.length>0&&i.length>0?`This view is partially applicable. To complete your view, please switch to the ${i} mode and select the following map(s): ${r.join(", ")}.`:r.length>0?`To fulfill your view, please select the following map(s): ${r.join(", ")}.`:i.length>0?`This view is partially applicable. To complete your view, please switch to the ${i} mode.`:"Apply Custom View"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi,16))}}static{this.\u0275pipe=o.EJ8({name:"customConfig2ApplicableMessage",type:n,pure:!0,standalone:!0})}}return n})(),t_e=(()=>{class n{transform(e,i){const r=i.toLocaleLowerCase().trimEnd();return e.filter(s=>this.isItemMatchingSearchTerm(s,r))}isItemMatchingSearchTerm(e,i){const r=e.name.toLocaleLowerCase().includes(i),s=e.mapSelectionMode.toLocaleLowerCase().includes(i),l=Object.values(e.metrics).some(u=>u?.toLocaleLowerCase().includes(i));return r||s||l}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"filterCustomConfigDataBySearchTerm",type:n,pure:!0,standalone:!0})}}return n})();const n_e=["matExpansionPanel"];function i_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-list-item",5),o.nI1(1,"customConfig2ApplicableMessage"),o.j41(2,"div",6)(3,"p",7)(4,"strong")(5,"span",8),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(4);return o.Njj(s.applyCustomConfig(r.id))}),o.EFF(6),o.nI1(7,"truncateText"),o.k0s()()()(),o.j41(8,"div",9)(9,"p",10)(10,"span",8),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(4);return o.Njj(s.applyCustomConfig(r.id))}),o.EFF(11),o.nI1(12,"truncateText"),o.k0s()(),o.nrm(13,"cc-custom-config-note-dialog-button",11),o.k0s(),o.j41(14,"div",12),o.nrm(15,"cc-apply-custom-config-button",11),o.j41(16,"button",13),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(3).$implicit,l=o.XpG();return o.Njj(l.removeCustomConfig(r.id,s.key))}),o.nrm(17,"i",14),o.k0s()()()}if(2&n){const e=t.$implicit;o.FS9("title",o.bMT(1,6,e)),o.R7$(3),o.FS9("title",e.name),o.R7$(3),o.SpI(" ",o.i5U(7,8,e.name,75)," "),o.R7$(5),o.SpI(" ",e.note?o.i5U(12,11,e.note,95):"Add Note"," "),o.R7$(2),o.Y8G("customConfigItem",e),o.R7$(2),o.Y8G("customConfigItem",e)}}function r_e(n,t){if(1&n&&(o.j41(0,"mat-list"),o.Z7z(1,i_e,18,14,"mat-list-item",5,o.fX1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.Dyx(e)}}function o_e(n,t){1&n&&(o.j41(0,"div",4)(1,"p"),o.EFF(2,"No configurations found."),o.k0s()())}function s_e(n,t){if(1&n&&o.DNE(0,r_e,3,0,"mat-list")(1,o_e,3,0,"div",4),2&n){const e=t;o.vxM(e.length>0?0:-1),o.R7$(),o.vxM(0===e.length?1:-1)}}function a_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-expansion-panel",1,0)(2,"mat-expansion-panel-header",2),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.toggleGroupExpansion(r.key))}),o.j41(3,"mat-panel-title",3),o.EFF(4," Custom View(s) in "),o.j41(5,"strong"),o.EFF(6),o.nI1(7,"titlecase"),o.k0s(),o.EFF(8),o.k0s()(),o.DNE(9,s_e,2,2),o.nI1(10,"filterCustomConfigDataBySearchTerm"),o.k0s()}if(2&n){let e;const i=t.$implicit,r=o.XpG();o.Y8G("expanded",r.isGroupExpanded(i.key)||r.searchTerm.length>0),o.R7$(6),o.SpI(" ",o.bMT(7,4,i.value.mapSelectionMode)," "),o.R7$(2),o.SpI(" mode for ",i.value.mapNames," "),o.R7$(),o.vxM((e=o.i5U(10,6,i.value.customConfigItems,r.searchTerm))?9:-1,e)}}let l_e=(()=>{class n{constructor(e,i,r,s){this.store=e,this.threeCameraService=i,this.threeOrbitControlsService=r,this.threeRendererService=s,this.searchTerm="",this.expandedStates={},this.manuallyToggled=new Set}ngOnChanges(e){if(e.searchTerm)if(e.searchTerm.currentValue.length>0)for(const i of Object.keys(this.expandedStates))this.expandedStates[i]=!0;else for(const i of Object.keys(this.expandedStates))this.manuallyToggled.has(i)||(this.expandedStates[i]=!1)}isGroupExpanded(e){return this.searchTerm.length>0?!this.manuallyToggled.has(e)||this.expandedStates[e]:this.expandedStates[e]||!1}toggleGroupExpansion(e){this.expandedStates[e]=!this.isGroupExpanded(e),this.manuallyToggled.add(e)}removeCustomConfig(e,i){mr.deleteCustomConfig(e),this.expandedStates[i]=!0}applyCustomConfig(e){mr.applyCustomConfig(e,this.store,this.threeCameraService,this.threeOrbitControlsService,this.threeRendererService)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(jh),o.rXU(Rd),o.rXU(wr))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-config-item-group"]],viewQuery:function(i,r){if(1&i&&o.GBs(n_e,5),2&i){let s;o.mGM(s=o.lsd())&&(r.matExpansionPanel=s.first)}},inputs:{customConfigItemGroups:"customConfigItemGroups",searchTerm:"searchTerm"},standalone:!0,features:[o.OA$,o.aNF],decls:3,vars:2,consts:[["matExpansionPanel",""],[1,"custom-config-item-group",3,"expanded"],[3,"click"],[1,"custom-config-item-group-title"],[1,"no-configs-found-message"],[3,"title"],[1,"metrics-box"],[1,"config-item-name",3,"title"],["mat-dialog-close","",3,"click"],[1,"custom-config-note"],[1,"custom-config-note-content"],[3,"customConfigItem"],[1,"custom-config-action-buttons"],["title","Remove Custom View",1,"remove-button",3,"click"],[1,"fa","fa-trash"]],template:function(i,r){1&i&&(o.Z7z(0,a_e,11,9,"mat-expansion-panel",1,o.fX1),o.nI1(2,"keyvalue")),2&i&&o.Dyx(o.bMT(2,0,r.customConfigItemGroups))},dependencies:[jX,qX,j0e,TX,IX,Ta,W0e,J0e,af,lf,XX,e_e,t_e],styles:[".custom-config-item-group-title[_ngcontent-%COMP%]{color:#000000de;display:inline-block}.metrics-box[_ngcontent-%COMP%]{margin-top:10px}.custom-config-note[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;margin-top:5px}.custom-config-action-buttons[_ngcontent-%COMP%]{display:flex;align-items:center;margin-bottom:5px}p[_ngcontent-%COMP%]{font-size:15px;margin:0;white-space:pre-line}p.custom-config-note-content[_ngcontent-%COMP%]{margin-right:7px;font-size:13px}button[_ngcontent-%COMP%]{background-color:transparent}button.remove-button[_ngcontent-%COMP%]{font-size:16px;padding:8px 10px;margin:0}button.remove-button[_ngcontent-%COMP%]:hover{background-color:#0000000d;color:#1b9cfc;border-radius:50%}"]})}}return n})();function c_e(n,t){1&n&&(o.j41(0,"div",7),o.EFF(1,"It is time to add your first Custom View!"),o.k0s())}function d_e(n,t){if(1&n&&o.nrm(0,"cc-custom-config-item-group",12),2&n){const e=o.XpG(2),i=o.XpG();o.Y8G("customConfigItemGroups",e.nonApplicableItems)("searchTerm",i.searchTerm)}}function u_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",14),o.bIt("click",function(){o.eBV(e);const r=o.XpG(3);return o.Njj(r.toggleNonApplicableCustomConfigsList())}),o.EFF(1),o.nrm(2,"i",15),o.k0s()}if(2&n){const e=o.XpG(3);o.R7$(),o.SpI(" ",e.isNonApplicableListCollapsed?"Show non-applicable Custom Views":"Hide non-applicable Custom Views"," "),o.R7$(),o.Y8G("ngClass",e.isNonApplicableListCollapsed?"fa fa-angle-down":"fa fa-angle-up")}}function h_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-accordion",8)(1,"mat-form-field",9),o.nrm(2,"i",10),o.j41(3,"mat-label"),o.EFF(4),o.k0s(),o.j41(5,"input",11),o.bIt("input",function(r){o.eBV(e);const s=o.XpG(2);return o.Njj(s.setSearchTermDebounced(r))}),o.k0s()(),o.nrm(6,"cc-custom-config-item-group",12),o.DNE(7,d_e,1,2,"cc-custom-config-item-group",12)(8,u_e,3,2,"button",13),o.k0s()}if(2&n){const e=o.XpG(),i=o.XpG();o.Y8G("multi",!0),o.R7$(4),o.JRh(i.searchPlaceholder),o.R7$(),o.Y8G("value",i.searchTerm),o.R7$(),o.Y8G("customConfigItemGroups",e.applicableItems)("searchTerm",i.searchTerm),o.R7$(),o.vxM(i.isNonApplicableListCollapsed?-1:7),o.R7$(),o.vxM(e.nonApplicableItems.size>0?8:-1)}}function f_e(n,t){if(1&n&&(o.j41(0,"mat-dialog-content",4)(1,"p",5),o.EFF(2," Custom Views allow you to save and upload your individual configurations for certain maps. Find out more about Custom Views in the "),o.j41(3,"a",6),o.EFF(4,"documentation"),o.k0s(),o.EFF(5,". "),o.k0s(),o.DNE(6,c_e,2,0,"div",7)(7,h_e,9,7,"mat-accordion",8),o.k0s()),2&n){const e=t;o.R7$(6),o.vxM(0===e.applicableItems.size&&0===e.nonApplicableItems.size?6:-1),o.R7$(),o.vxM(0!==e.applicableItems.size||0!==e.nonApplicableItems.size?7:-1)}}let p_e=(()=>{class n{constructor(e){this.customConfigService=e,this.searchTerm="",this.isNonApplicableListCollapsed=!0,this.searchPlaceholder="Search by name, mode and metrics...",this.setSearchTermDebounced=Zh(i=>this.searchTerm=i.target.value,400)}toggleNonApplicableCustomConfigsList(){this.isNonApplicableListCollapsed=!this.isNonApplicableListCollapsed}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(LX))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-config-list"]],standalone:!0,features:[o.aNF],decls:9,vars:3,consts:[["color","primary"],[1,"row"],[1,"action-buttons"],[1,"custom-configs-button-in-custom-views"],[1,"content"],[1,"custom-config-documentation-hint"],["href","https://codecharta.com/docs/visualization/custom-views","target","_blank","rel","noopener noreferrer"],[1,"no-custom-configs-box"],[1,"custom-config-container",3,"multi"],[1,"cc-custom-configs-search-field"],["matPrefix","",1,"fa","fa-search","custom-config-search-icon"],["matInput","","type","text",3,"input","value"],[3,"customConfigItemGroups","searchTerm"],[1,"toggle-non-applicable-configs-button"],[1,"toggle-non-applicable-configs-button",3,"click"],[3,"ngClass"]],template:function(i,r){if(1&i&&(o.j41(0,"mat-toolbar",0),o.EFF(1,"Custom Views "),o.j41(2,"div",1)(3,"div",2),o.nrm(4,"cc-upload-custom-config-button")(5,"cc-download-custom-configs-button")(6,"cc-add-custom-config-button",3),o.k0s()()(),o.DNE(7,f_e,8,2,"mat-dialog-content",4),o.nI1(8,"async")),2&i){let s;o.R7$(7),o.vxM((s=o.bMT(8,1,r.customConfigService.customConfigItemGroups$))?7:-1,s)}},dependencies:[Yg,d0e,g0e,D0e,Al,$0e,Lu,Q$,Nu,t0,l_e,Sn,zn],styles:[".row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-left:auto}.custom-config-documentation-hint[_ngcontent-%COMP%]{margin:10px 0 20px;font-size:1.4em;line-height:1.4em;color:#000000de}.no-custom-configs-box[_ngcontent-%COMP%]{text-align:center;padding:50px 0}.toggle-non-applicable-configs-button[_ngcontent-%COMP%]{width:100%;height:30px;margin:5px 0}"]})}}return n})(),A_e=(()=>{class n{constructor(e){this.dialog=e}openCustomConfigDialog(){this.dialog.open(p_e,{panelClass:"cc-custom-config-list"})}showAddCustomConfigDialog(){this.dialog.open(VX,{panelClass:"cc-add-custom-config-dialog"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-configs"]],standalone:!0,features:[o.aNF],decls:3,vars:2,consts:[[1,"custom-configs-panel-buttons"],["icon","fa-cogs",3,"click","title"],["icon","fa-plus",3,"click","title"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"cc-ribbon-bar-menu-button",1),o.bIt("click",function(){return r.openCustomConfigDialog()}),o.k0s(),o.j41(2,"cc-ribbon-bar-menu-button",2),o.bIt("click",function(){return r.showAddCustomConfigDialog()}),o.k0s()()),2&i&&(o.R7$(),o.Y8G("title","Open your saved Custom Views"),o.R7$(),o.Y8G("title","Create new Custom View"))},dependencies:[tP],styles:["[_nghost-%COMP%] .custom-configs-panel-buttons[_ngcontent-%COMP%]{display:flex;justify-content:center;gap:4px}"]})}}return n})();function G7(n,t){if(t||(t=0),!Array.isArray(n))throw new Error("percentRound input should be an Array");const e=n.slice(),i=n.length,r=new Array(i);let s=0;for(let l=i-1;l>=0;l--)"string"==typeof e[l]&&(e[l]=Number.parseFloat(e[l])),s+=1*e[l];if(isNaN(s))throw new Error("percentRound invalid input");if(0===s)r.fill(0);else{const l=Math.pow(10,t),u=100*l;let f=0;for(let p=i-1;p>=0;p--)e[p]=100*e[p]/s,f+=r[p]=Math.round(e[p]*l);if(f!==u){const m=1;let _=Math.abs(f-u);const b=new Array(i);for(let w=0;w0;){let w=0,F=b[0];for(let D=1;Du&&r[D]-m<0)continue;w=D,F=b[D]}f>u?r[w]-=m:r[w]+=m,b[w]-=m,_--}}if(l>1)for(let p=0;pvoid 0!==n.attributes[f]),s=YX(e)[i],l=n.attributes[i],u=n.attributes[iP];l<=s.percentile70?t.lowRisk+=u:l<=s.percentile80?t.moderateRisk+=u:l<=s.percentile90?t.highRisk+=u:t.veryHighRisk+=u}function y_e(n,t,e){for(const[i,r]of Object.entries(n.attributes))0!==r&&(t[e]??={},t[e][i]??=[],t[e][i].push(r))}function w_e(n,t){return n.isOutlier&&!t.isOutlier?-1:!n.isOutlier&&t.isOutlier?1:0}function x_e(n){const t=qw.get(n);return t?`${n} (${t})`:`${n}`}function S_e(n){return n.includes(".")?n.slice(n.lastIndexOf(".")+1):void 0}function T_e(n,t){return j7.some(e=>void 0!==n.attributes[e])&&void 0!==n.attributes[iP]&&!g_e.has(t)}const I_e=sn(Fd,Ru,(n,t)=>{if(!n.unifiedMapNode)return;const e={analyzedProgrammingLanguage:void 0,suspiciousMetricSuggestionLinks:[],unsuspiciousMetrics:[],untrackedMetrics:[],riskProfile:void 0},i=new Map,r={lowRisk:0,moderateRisk:0,highRisk:0,veryHighRisk:0};let s=0,l=0;const u={};for(const{data:p}of oo(n.unifiedMapNode)){const m=S_e(p.name);if(p.type===ts.FILE&&void 0!==m&&!cu(p.path,t,"exclude")){const _=i.get(m)??0;if(i.set(m,_+1),y_e(p,u,m),T_e(p,m)){const b=j7.find(w=>void 0!==p.attributes[w]);l+=p.attributes[b],s+=p.attributes[iP],__e(p,r,m)}}}s>0&&l>0&&(e.riskProfile=function b_e(n){const[t,e,i,r]=m_e([n.lowRisk,n.moderateRisk,n.highRisk,n.veryHighRisk]);return{lowRisk:t,moderateRisk:e,highRisk:i,veryHighRisk:r}}(r));const f=function M_e(n){let t,e=-1;for(const[i,r]of n)el.percentile70&&(e.suspiciousMetrics.set(r,{from:l.percentile70,to:l.percentile80}),u>l.percentile90&&e.outliersThresholds.set(r,l.percentile90))}for(const r in n[t])!Object.keys(i).includes(r)&&!e.untrackedMetrics.includes(r)&&e.untrackedMetrics.push(r);return e}(u,f);e.unsuspiciousMetrics=p.unsuspiciousMetrics,e.untrackedMetrics=p.untrackedMetrics,e.suspiciousMetricSuggestionLinks=function v_e(n){const t=new Map;for(const[e,i]of n.suspiciousMetrics)t.set(e,{metric:e,...i}),n.outliersThresholds.has(e)&&(t.get(e).isOutlier=!0,t.get(e).outlierThreshold=n.outliersThresholds.get(e));return[...t.values()].sort(w_e)}(p)}return e});let F_e=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-suspicious-metric-dialog"]],inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:12,vars:0,consts:[["id","suspiciousMetricPopover","data-testid","suspiciousMetricPopover",1,"cc-dialog","suspicious-metric-dialog"],["mat-dialog-title","",1,"title"],[1,"info-text"],["target","_blank","rel","noopener","href","https://codecharta.com/docs/visualization/suspicious-metrics"],[1,"fa","fa-external-link"],[2,"display","flex","justify-content","center"],["mat-stroked-button","","mat-dialog-close","",1,"button-mat-dialog"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"h2",1),o.EFF(2,"Suspicious Metrics Information"),o.k0s(),o.j41(3,"mat-dialog-content",2),o.EFF(4," This feature compares the values of certain metrics from the loaded cc.json file with metric values of 241 Open Source Java projects. Based on this data suspicious and inconspicuous metrics are identified and corresponding suggestions can be clicked to view them. Be aware that metrics for other programming languages might not be comparable to Java Reference metric values. More information can be found in the "),o.j41(5,"a",3),o.EFF(6,"How-To Article "),o.nrm(7,"i",4),o.k0s(),o.EFF(8,". "),o.k0s(),o.j41(9,"mat-dialog-actions",5)(10,"button",6),o.EFF(11,"Close"),o.k0s()()())},dependencies:[Zy,Al,Zl,ns,Ta],encapsulation:2})}}return n})();const D_e=(n,t)=>({"fa-caret-right":n,"fa-caret-down":t});function B_e(n,t){if(1&n&&(o.nrm(0,"br"),o.j41(1,"span",13),o.EFF(2),o.k0s()),2&n){const e=o.XpG().$implicit,i=o.XpG(3);o.R7$(2),o.JRh(i.getDescriptionOfMetric(e.metric))}}function k_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-button-toggle",14),o.bIt("click",function(){o.eBV(e);const r=o.XpG().$implicit,s=o.XpG(3);return o.Njj(s.applySuspiciousMetric(r,!0))}),o.EFF(1," High-Risk\xa0"),o.nrm(2,"i",15),o.k0s()}}function R_e(n,t){1&n&&(o.j41(0,"mat-button-toggle",12),o.EFF(1," High-Risk\xa0"),o.nrm(2,"i",16),o.k0s())}function P_e(n,t){if(1&n){const e=o.RV6();o.nrm(0,"div",6),o.j41(1,"div",7)(2,"b"),o.EFF(3),o.nI1(4,"truncateText"),o.k0s(),o.DNE(5,B_e,3,1),o.k0s(),o.j41(6,"div")(7,"mat-button-toggle-group")(8,"mat-button-toggle",8),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(3);return o.Njj(s.applySuspiciousMetric(r,!1))}),o.EFF(9," Apply preset\xa0"),o.nrm(10,"i",9),o.EFF(11,"\xa0"),o.nrm(12,"i",10),o.k0s(),o.DNE(13,k_e,3,0,"mat-button-toggle",11)(14,R_e,3,0,"mat-button-toggle",12),o.k0s()()}if(2&n){const e=t.$implicit,i=o.XpG(3);o.R7$(),o.FS9("title",i.getNameAndDescriptionOfMetric(e.metric)),o.R7$(2),o.JRh(o.i5U(4,6,e.metric,40)),o.R7$(2),o.vxM(i.getDescriptionOfMetric(e.metric)?5:-1),o.R7$(3),o.Mz_("title","Apply Map Configuration to show files with suspicious metric ",e.metric," and high risk or very high risk depending on selection"),o.R7$(5),o.vxM(e.isOutlier?13:14)}}function O_e(n,t){if(1&n&&(o.j41(0,"div",5),o.Z7z(1,P_e,15,9,null,null,o.fX1),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.Dyx(e.data.suspiciousMetricSuggestionLinks)}}function N_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",1)(1,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.toggleSuspiciousMetricsVisibility())}),o.j41(2,"span",3),o.nrm(3,"i",4),o.k0s(),o.EFF(4," Suspicious Metrics in "),o.j41(5,"code"),o.EFF(6),o.k0s(),o.EFF(7," code "),o.k0s()(),o.DNE(8,O_e,3,0,"div",5)}if(2&n){const e=o.XpG();o.Mz_("title","Suspicious Metrics in .",e.data.analyzedProgrammingLanguage," code"),o.R7$(3),o.Y8G("ngClass",o.l_i(5,D_e,!e.isSuspiciuosMetricsVisible,e.isSuspiciuosMetricsVisible)),o.R7$(3),o.SpI(".",e.data.analyzedProgrammingLanguage,""),o.R7$(2),o.vxM(e.isSuspiciuosMetricsVisible?8:-1)}}function L_e(n,t){if(1&n&&(o.j41(0,"div",0),o.EFF(1," No Suspicious Metrics found in "),o.j41(2,"code"),o.EFF(3),o.k0s(),o.EFF(4,"! "),o.k0s()),2&n){const e=o.XpG();o.Mz_("title","Suspicious Metrics in this .",e.data.analyzedProgrammingLanguage," code"),o.R7$(3),o.SpI(".",e.data.analyzedProgrammingLanguage,"")}}let U_e=(()=>{class n{constructor(e,i){this.store=e,this.dialog=i,this.isSuspiciuosMetricsVisible=!0}toggleSuspiciousMetricsVisibility(){this.isSuspiciuosMetricsVisible=!this.isSuspiciuosMetricsVisible}applySuspiciousMetric(e,i){this.store.dispatch(Hp({value:iP})),this.store.dispatch(Gp({value:e.metric})),this.store.dispatch(Yh({value:e.metric})),this.store.dispatch(Qp({value:{from:e.from,to:i?e.outlierThreshold:e.to}})),this.store.dispatch(Lp({value:{positive:i?"#ffffff":$h.positive,neutral:i?"#ffffff":$h.neutral,negative:i?"#A900C0":$h.negative}})),this.matMenuTriggerReference.closeMenu()}getNameAndDescriptionOfMetric(e){const i=qw.get(e);return i?`${e.toUpperCase()} (${i.toLowerCase()})`:e.toUpperCase()}getDescriptionOfMetric(e){const i=qw.get(e);return i?`${i.toLowerCase()}`:""}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-suspicious-metrics-list"]],inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:2,vars:1,consts:[[1,"sub-title-not-text-content","sub-title",3,"title"],[1,"sub-title",3,"title"],["data-testid","Suspicious Metrics",1,"show-metrics-button",3,"click"],[1,"caret-icon-span"],[1,"fa",3,"ngClass"],[1,"text-content","grid-container-suspicious"],["id","spacer"],[3,"title"],[3,"click","title"],[1,"fa","fa-arrows-v"],[1,"fa","fa-paint-brush"],["title","Show very high risk files (90th percentile)"],["title","No high risk profile detected","disabled",""],[1,"sub-sub-title"],["title","Show very high risk files (90th percentile)",3,"click"],[1,"fa","fa-exclamation-triangle","risk-button-active"],[1,"fa","fa-exclamation-triangle"]],template:function(i,r){1&i&&o.DNE(0,N_e,9,8)(1,L_e,5,3,"div",0),2&i&&o.vxM(r.data.suspiciousMetricSuggestionLinks.length?0:1)},dependencies:[Sn,L7,JR,XX],styles:[".grid-container-suspicious[_ngcontent-%COMP%]{display:grid;column-gap:4px;row-gap:8px;grid-template-columns:auto auto auto;place-items:center left}.grid-container-suspicious[_ngcontent-%COMP%] #spacer[_ngcontent-%COMP%]{width:14px}.grid-container-suspicious.text-content[_ngcontent-%COMP%]{padding-top:16px}.grid-container-suspicious[_ngcontent-%COMP%] .fa-exclamation-triangle.risk-button-active[_ngcontent-%COMP%]{color:#9c0e6a}.sub-sub-title[_ngcontent-%COMP%]{font-size:11px;color:#999;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sub-title-not-text-content[_ngcontent-%COMP%]{padding-bottom:8px}"]})}}return n})();const V_e=(n,t)=>({"fa-caret-right":n,"fa-caret-down":t});function H_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",0)(1,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG(2);return o.Njj(r.toggleUnsuspiciousMetricsVisibility())}),o.j41(2,"span",3),o.nrm(3,"i",4),o.k0s(),o.EFF(4," Unsuspicious metrics in "),o.j41(5,"code"),o.EFF(6),o.k0s(),o.EFF(7," code "),o.k0s()()}if(2&n){const e=o.XpG(2);o.R7$(3),o.Y8G("ngClass",o.l_i(2,V_e,!e.isUnsuspiciuosMetricsVisible,e.isUnsuspiciuosMetricsVisible)),o.R7$(3),o.SpI(".",e.data.analyzedProgrammingLanguage,"")}}function Q_e(n,t){if(1&n&&(o.j41(0,"li"),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.R7$(),o.JRh(e)}}function z_e(n,t){if(1&n&&(o.j41(0,"ul",1),o.Z7z(1,Q_e,2,1,"li",null,o.fX1),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.Dyx(e.data.unsuspiciousMetrics)}}function G_e(n,t){if(1&n&&o.DNE(0,H_e,8,5,"div",0)(1,z_e,3,0,"ul",1),2&n){const e=o.XpG();o.vxM(e.data.analyzedProgrammingLanguage.length?0:-1),o.R7$(),o.vxM(e.isUnsuspiciuosMetricsVisible?1:-1)}}let j_e=(()=>{class n{constructor(){this.isUnsuspiciuosMetricsVisible=!1}toggleUnsuspiciousMetricsVisibility(){this.isUnsuspiciuosMetricsVisible=!this.isUnsuspiciuosMetricsVisible}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-unsuspicious-metrics-list"]],inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[1,"sub-title"],["data-testid","List of Unsuspicious Metrics in ts Code",1,"text-content"],["data-testid","Unsuspicious Metrics","title","Show/Hide Unsuspicious Metrics",1,"show-metrics-button",3,"click"],[1,"caret-icon-span"],[1,"fa",3,"ngClass"]],template:function(i,r){1&i&&o.DNE(0,G_e,2,2),2&i&&o.vxM(r.data.unsuspiciousMetrics.length?0:-1)},dependencies:[Sn],encapsulation:2})}}return n})();const $_e=(n,t)=>({"fa-caret-right":n,"fa-caret-down":t});function q_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",0)(1,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG(2);return o.Njj(r.toggleUntrackedMetricsVisibility())}),o.j41(2,"span",3),o.nrm(3,"i",4),o.k0s(),o.EFF(4," Untracked metrics in "),o.j41(5,"code"),o.EFF(6),o.k0s(),o.EFF(7," code "),o.k0s()()}if(2&n){const e=o.XpG(2);o.R7$(3),o.Y8G("ngClass",o.l_i(2,$_e,!e.isUntrackedMetricsVisible,e.isUntrackedMetricsVisible)),o.R7$(3),o.SpI(".",e.data.analyzedProgrammingLanguage,"")}}function W_e(n,t){if(1&n&&(o.j41(0,"li"),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.R7$(),o.JRh(e)}}function X_e(n,t){if(1&n&&(o.j41(0,"ul",1),o.Z7z(1,W_e,2,1,"li",null,o.fX1),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.Dyx(e.data.untrackedMetrics)}}function K_e(n,t){1&n&&(o.j41(0,"div"),o.EFF(1,"No programming language was found for analyzing suspicious metrics."),o.k0s())}function Y_e(n,t){if(1&n&&o.DNE(0,q_e,8,5,"div",0)(1,X_e,3,0,"ul",1)(2,K_e,2,0,"div"),2&n){const e=o.XpG();o.vxM(e.data.analyzedProgrammingLanguage.length?0:-1),o.R7$(),o.vxM(e.isUntrackedMetricsVisible?1:-1),o.R7$(),o.vxM(void 0===e.data.analyzedProgrammingLanguage?2:-1)}}let Z_e=(()=>{class n{constructor(){this.isUntrackedMetricsVisible=!1}toggleUntrackedMetricsVisibility(){this.isUntrackedMetricsVisible=!this.isUntrackedMetricsVisible}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-untracked-metrics-list"]],inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[1,"sub-title"],["data-testid","List of Untracked Metrics in ts Code",1,"text-content"],["data-testid","Untracked Metrics","title","Show/Hide Untracked Metrics",1,"show-metrics-button",3,"click"],[1,"caret-icon-span"],[1,"fa",3,"ngClass"]],template:function(i,r){1&i&&o.DNE(0,Y_e,3,3),2&i&&o.vxM(r.data.untrackedMetrics.length?0:-1)},dependencies:[Sn],encapsulation:2})}}return n})(),ZX=(()=>{class n{constructor(e){this.dialog=e}openDialog(){this.dialog.open(F_e,{width:"500px"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-suspicious-metrics-menu"]],viewQuery:function(i,r){if(1&i&&(o.GBs(rx,5),o.GBs(Kh,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.menuTrigger=s.first),o.mGM(s=o.lsd())&&(r.menu=s.first)}},inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:9,vars:6,consts:[[3,"click"],[1,"title"],["icon","fa fa-question-circle-o","title","Open Information about Suspicious Metrics",3,"click"],[1,"suspicious-menu-content-wrapper"],[3,"data","matMenuTriggerReference"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.bIt("click",function(l){return l.stopPropagation()}),o.j41(1,"div")(2,"div",1),o.EFF(3,"Suspicious Metrics"),o.k0s(),o.j41(4,"cc-action-icon",2),o.bIt("click",function(){return r.openDialog()}),o.k0s()(),o.j41(5,"div",3),o.nrm(6,"cc-suspicious-metrics-list",4)(7,"cc-unsuspicious-metrics-list",4)(8,"cc-untracked-metrics-list",4),o.k0s()()),2&i&&(o.R7$(6),o.Y8G("data",r.data)("matMenuTriggerReference",r.matMenuTriggerReference),o.R7$(),o.Y8G("data",r.data)("matMenuTriggerReference",r.matMenuTriggerReference),o.R7$(),o.Y8G("data",r.data)("matMenuTriggerReference",r.matMenuTriggerReference))},dependencies:[pl,U_e,j_e,Z_e],styles:[".suspicious-menu-content-wrapper[_ngcontent-%COMP%]{padding:8px}"]})}}return n})();const J_e=["matMenuTrigger"];function ebe(n,t){if(1&n&&(o.j41(0,"span",3),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.SpI(" ",e.data.suspiciousMetricSuggestionLinks.length," ")}}let tbe=(()=>{class n{constructor(){this.hideBadge=!1}ngOnChanges(e){e.data&&!Vg(e.data.previousValue,e.data.currentValue)&&(this.hideBadge=!1)}ngAfterViewInit(){this.menuComponent&&(this.menu=this.menuComponent.menu)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-suspicious-metrics"]],viewQuery:function(i,r){if(1&i&&(o.GBs(ZX,5),o.GBs(J_e,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.menuComponent=s.first),o.mGM(s=o.lsd())&&(r.matMenuTrigger=s.first)}},inputs:{data:"data",menu:"menu"},standalone:!0,features:[o.OA$,o.aNF],decls:6,vars:5,consts:[["matMenuTrigger","matMenuTrigger"],["menu","matMenu"],["icon","fa-exclamation-triangle",3,"click","title","matMenuTriggerFor"],[1,"cc-suspicious-metrics-badge"],[1,"cc-ai-drop-down","cc-suspicious-metric-panel"],[3,"data","matMenuTriggerReference"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"cc-ribbon-bar-menu-button",2,0),o.bIt("click",function(){return o.eBV(s),o.Njj(r.hideBadge=!0)}),o.DNE(2,ebe,2,1,"span",3),o.k0s(),o.j41(3,"mat-menu",4,1),o.nrm(5,"cc-suspicious-metrics-menu",5),o.k0s()}if(2&i){const s=o.sdS(1),l=o.sdS(4);o.Y8G("title","Open Suspicious Metrics Panel")("matMenuTriggerFor",l),o.R7$(2),o.vxM(r.hideBadge||void 0===r.data.analyzedProgrammingLanguage&&!r.data.suspiciousMetricSuggestionLinks.length&&!r.data.unsuspiciousMetrics.length?-1:2),o.R7$(3),o.Y8G("data",r.data)("matMenuTriggerReference",s)}},dependencies:[tP,rx,Kh,ZX],styles:[".cc-suspicious-metrics-badge[_ngcontent-%COMP%]{position:absolute;bottom:10px;padding:4px 6px;border-radius:50%;background:red;color:#fff;font-size:10px;line-height:10px}"]})}}return n})(),nbe=(()=>{class n{constructor(e){this.element=e,this.ccRiskProfileBar=0}ngOnChanges(e){e.ccRiskProfileBar&&(this.element.nativeElement.style.display=this.ccRiskProfileBar>0?"flex":"none",this.element.nativeElement.style.width=`${this.ccRiskProfileBar}%`,this.element.nativeElement.style.color=this.ccRiskProfileBar>5?"black":"rgba(0,0,0,0)")}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ccRiskProfileBar",""]],inputs:{ccRiskProfileBar:"ccRiskProfileBar"},standalone:!0,features:[o.OA$]})}}return n})();function ibe(n,t){if(1&n&&(o.j41(0,"div",3),o.EFF(1,"Risk Profile"),o.k0s(),o.j41(2,"div",4),o.EFF(3," The Risk Profile gives a quick overview about the complexity and risk structure of the code base. It tells you how much of the code is placed in files associated with low/high risk in means of maintainability. The separation of code in risk classes like low or high complexity is based on Java reference metric values and therefore may be inaccurate for other programming languages. More information can be found in the "),o.j41(4,"a",5),o.EFF(5,"How-To Article "),o.nrm(6,"i",6),o.k0s(),o.EFF(7,". "),o.k0s(),o.j41(8,"div",7)(9,"div"),o.nrm(10,"i",8),o.EFF(11," Calculations are based on an available complexity metric"),o.k0s()(),o.j41(12,"div",4)(13,"ul")(14,"li"),o.EFF(15),o.k0s(),o.j41(16,"li"),o.EFF(17),o.k0s(),o.j41(18,"li"),o.EFF(19),o.k0s(),o.j41(20,"li"),o.EFF(21),o.k0s()()(),o.j41(22,"div",9)(23,"div",10),o.EFF(24),o.k0s(),o.j41(25,"div",11),o.EFF(26),o.k0s(),o.j41(27,"div",12),o.EFF(28),o.k0s(),o.j41(29,"div",13),o.EFF(30),o.k0s()()),2&n){const e=o.XpG();o.R7$(15),o.SpI("",e.data.riskProfile.lowRisk,"% of overall code is in files with low complexity"),o.R7$(2),o.SpI("",e.data.riskProfile.moderateRisk,"% of overall code is in files with moderate complexity"),o.R7$(2),o.SpI("",e.data.riskProfile.highRisk,"% of overall code is in files with high complexity"),o.R7$(2),o.SpI("",e.data.riskProfile.veryHighRisk,"% of overall code is in files with extreme complexity"),o.R7$(2),o.Mz_("title","Low Risk (",e.data.riskProfile.lowRisk,"% of code)"),o.Y8G("ccRiskProfileBar",e.data.riskProfile.lowRisk),o.R7$(),o.SpI(" ",e.data.riskProfile.lowRisk,"% "),o.R7$(),o.Mz_("title","Moderate Risk (",e.data.riskProfile.moderateRisk,"% of code)"),o.Y8G("ccRiskProfileBar",e.data.riskProfile.moderateRisk),o.R7$(),o.SpI(" ",e.data.riskProfile.moderateRisk,"% "),o.R7$(),o.Mz_("title","High Risk (",e.data.riskProfile.highRisk,"% of code)"),o.Y8G("ccRiskProfileBar",e.data.riskProfile.highRisk),o.R7$(),o.SpI(" ",e.data.riskProfile.highRisk,"% "),o.R7$(),o.Mz_("title","Very High Risk (",e.data.riskProfile.veryHighRisk,"% of code)"),o.Y8G("ccRiskProfileBar",e.data.riskProfile.veryHighRisk),o.R7$(),o.SpI(" ",e.data.riskProfile.veryHighRisk,"% ")}}function rbe(n,t){1&n&&(o.j41(0,"span"),o.EFF(1," Could not calculate Risk Profile. At least one of the metrics rloc (real lines of code) or complexity (cyclomatic complexity) is not available. "),o.k0s(),o.nrm(2,"br")(3,"br"),o.j41(4,"span"),o.EFF(5," Be aware that complexity was previously named mcc. Old maps which still contain mcc instead of complexity need to be regenerated for the risk profile to work. "),o.k0s())}let obe=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-high-risk-profile"]],inputs:{data:"data"},standalone:!0,features:[o.aNF],decls:5,vars:4,consts:[["menu","matMenu"],["icon","fa-bar-chart",3,"title","matMenuTriggerFor"],[1,"cc-ai-drop-down","cc-high-risk-profile"],[1,"title"],[1,"text-content"],["target","_blank","rel","noopener","href","https://codecharta.com/docs/visualization/risk-profile"],[1,"fa","fa-external-link"],[1,"sub-title"],[1,"fa","fa-lightbulb-o"],[1,"cc-risk-profiles"],[1,"cc-risk-profile","cc-low-risk",3,"ccRiskProfileBar","title"],[1,"cc-risk-profile","cc-moderate-risk",3,"ccRiskProfileBar","title"],[1,"cc-risk-profile","cc-high-risk",3,"ccRiskProfileBar","title"],[1,"cc-risk-profile","cc-very-high-risk",3,"ccRiskProfileBar","title"]],template:function(i,r){if(1&i&&(o.nrm(0,"cc-ribbon-bar-menu-button",1),o.j41(1,"mat-menu",2,0),o.DNE(3,ibe,31,20)(4,rbe,6,0),o.k0s()),2&i){const s=o.sdS(2);o.Y8G("title","Open High Risk Profile")("matMenuTriggerFor",s),o.R7$(3),o.vxM(void 0!==r.data.riskProfile?3:-1),o.R7$(),o.vxM(void 0===r.data.riskProfile?4:-1)}},dependencies:[tP,rx,Kh,nbe],styles:["ul[_ngcontent-%COMP%]{margin:0}.cc-risk-profiles[_ngcontent-%COMP%]{margin:0 -10px -10px;display:flex}.cc-risk-profile[_ngcontent-%COMP%]{height:36px;text-align:center;justify-content:center;align-items:center;overflow:hidden}.cc-risk-profile.cc-low-risk[_ngcontent-%COMP%]{background-color:#5cb34d}.cc-risk-profile.cc-moderate-risk[_ngcontent-%COMP%]{background-color:#eef432}.cc-risk-profile.cc-high-risk[_ngcontent-%COMP%]{background-color:#cc2900}.cc-risk-profile.cc-very-high-risk[_ngcontent-%COMP%]{background-color:#9c0e6a}.sub-title[_ngcontent-%COMP%]{font-size:16px}"]})}}return n})();function sbe(n,t){if(1&n&&o.nrm(0,"cc-suspicious-metrics",0)(1,"cc-high-risk-profile",0),2&n){const e=t;o.Y8G("data",e),o.R7$(),o.Y8G("data",e)}}let abe=(()=>{class n{constructor(e){this.store=e,this.data$=this.store.select(I_e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-artificial-intelligence"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"data"]],template:function(i,r){if(1&i&&(o.DNE(0,sbe,2,2),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.data$))?0:-1,s)}},dependencies:[tbe,obe,zn],styles:["[_nghost-%COMP%]{display:flex;justify-content:center;gap:4px}"]})}}return n})(),lbe=(()=>{class n{constructor(e){this.store=e,this.areaMetric$=this.store.select(hv)}handleAreaMetricChanged(e){this.store.dispatch(Hp({value:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-area-metric-chooser"]],standalone:!0,features:[o.aNF],decls:2,vars:4,consts:[["icon","fa-arrows-alt","metricFor","areaMetric","searchPlaceholder","Area Metric (highest value)","title","Change area metric",3,"selectedMetricName","handleMetricChanged"]],template:function(i,r){1&i&&(o.nrm(0,"cc-metric-chooser",0),o.nI1(1,"async")),2&i&&o.Y8G("selectedMetricName",o.bMT(1,2,r.areaMetric$))("handleMetricChanged",r.handleAreaMetricChanged)},dependencies:[D2,zn],encapsulation:2})}}return n})();const JX=sn($c,n=>n.margin),eK=sn(ko,n=>n.enableFloorLabels),tK=sn(ko,n=>n.invertArea),cbe=()=>["dynamicSettings.margin","appSettings.invertArea","appSettings.enableFloorLabels"];let dbe=(()=>{class n{static{this.DEBOUNCE_TIME=400}constructor(e){this.store=e,this.margin$=this.store.select(JX),this.enableFloorLabels$=this.store.select(eK),this.isInvertedArea$=this.store.select(tK),this.applyDebouncedMargin=Zh(i=>{this.store.dispatch(cx({value:i}))},n.DEBOUNCE_TIME)}setEnableFloorLabel(e){this.store.dispatch(s2({value:e.checked}))}toggleInvertingArea(e){this.store.dispatch(l2({value:e.checked}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-area-settings-panel"]],standalone:!0,features:[o.aNF],decls:10,vars:14,consts:[[1,"options"],["title","Amount of space between buildings in percent","label","Margin",3,"value","onChange","min","max"],[3,"change","checked"],["tooltip","Reset area metric settings to their defaults","label","Reset area metric settings",3,"settingsKeys"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nrm(1,"cc-slider",1),o.nI1(2,"async"),o.j41(3,"mat-checkbox",2),o.nI1(4,"async"),o.bIt("change",function(l){return r.setEnableFloorLabel(l)}),o.EFF(5,"Enable Floor Labels"),o.k0s(),o.j41(6,"mat-checkbox",2),o.nI1(7,"async"),o.bIt("change",function(l){return r.toggleInvertingArea(l)}),o.EFF(8,"Invert Area"),o.k0s(),o.nrm(9,"cc-reset-settings-button",3),o.k0s()),2&i&&(o.R7$(),o.Y8G("value",o.bMT(2,7,r.margin$))("onChange",r.applyDebouncedMargin)("min",1)("max",100),o.R7$(2),o.Y8G("checked",o.bMT(4,9,r.enableFloorLabels$)),o.R7$(3),o.Y8G("checked",o.bMT(7,11,r.isInvertedArea$)),o.R7$(3),o.Y8G("settingsKeys",o.lJ4(13,cbe)))},dependencies:[GR,fv,S2,zn],styles:["[_nghost-%COMP%]{text-align:left;max-height:300px}[_nghost-%COMP%] .options[_ngcontent-%COMP%]{display:flex;flex-direction:column}"]})}}return n})(),ube=(()=>{class n{constructor(e){this.store=e,this.heightMetric$=this.store.select(C2)}handleHeightMetricChanged(e){this.store.dispatch(Gp({value:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-height-metric-chooser"]],standalone:!0,features:[o.aNF],decls:2,vars:4,consts:[["icon","fa-arrows-v","metricFor","heightMetric","searchPlaceholder","Height Metric (highest value)","title","Change height metric",3,"selectedMetricName","handleMetricChanged"]],template:function(i,r){1&i&&(o.nrm(0,"cc-metric-chooser",0),o.nI1(1,"async")),2&i&&o.Y8G("selectedMetricName",o.bMT(1,2,r.heightMetric$))("handleMetricChanged",r.handleHeightMetricChanged)},dependencies:[D2,zn],encapsulation:2})}}return n})();const hbe=sn(ko,n=>n.amountOfTopLabels),nK=sn(ko,n=>n.colorLabels),fbe=sn(nK,n=>n.negative||n.neutral||n.positive),pbe=sn(ko,n=>n.showMetricLabelNodeName),Abe=sn(ko,n=>n.showMetricLabelNameValue),mbe=sn(ko,n=>n.scaling),gbe=sn(ko,n=>n.invertHeight),_be=()=>["appSettings.amountOfTopLabels","appSettings.scaling.y","appSettings.invertHeight"];function bbe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-checkbox",1),o.nI1(1,"async"),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.setInvertHeight(r))}),o.EFF(2," Invert Height "),o.k0s()}if(2&n){const e=o.XpG();o.Y8G("checked",o.bMT(1,1,e.invertHeight$))}}let vbe=(()=>{class n{static{this.DEBOUNCE_TIME=400}constructor(e){this.store=e,this.amountOfTopLabels$=this.store.select(hbe),this.isLabelsSliderDisabled$=this.store.select(fbe),this.showMetricLabelNodeName$=this.store.select(pbe),this.showMetricLabelNodeValue$=this.store.select(Abe),this.scaling$=this.store.select(mbe),this.invertHeight$=this.store.select(gbe),this.isDeltaState$=this.store.select(Wp),this.applyDebouncedTopLabels=Zh(i=>{this.store.dispatch(r0({value:i}))},n.DEBOUNCE_TIME),this.applyDebouncedScalingY=Zh(i=>{this.store.dispatch(lx({value:{y:i}}))},n.DEBOUNCE_TIME)}setShowMetricLabelNodeName(e){this.store.dispatch(A2({value:e.checked}))}setShowMetricLabelNameValue(e){this.store.dispatch(p2({value:e.checked}))}setInvertHeight(e){this.store.dispatch(c2({value:e.checked}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-height-settings-panel"]],standalone:!0,features:[o.aNF],decls:16,vars:32,consts:[["label","Labels",1,"cc-height-settings-panel-row",3,"disabled","title","min","max","value","onChange"],[3,"change","checked"],["title","Height","label","Height",1,"cc-height-settings-panel-row",3,"step","min","max","value","onChange"],[3,"checked"],["tooltip","Reset height metric settings to their defaults","label","Reset height metric settings",3,"settingsKeys"]],template:function(i,r){1&i&&(o.nrm(0,"cc-slider",0),o.nI1(1,"async"),o.nI1(2,"async"),o.nI1(3,"async"),o.nI1(4,"async"),o.j41(5,"mat-checkbox",1),o.nI1(6,"async"),o.bIt("change",function(l){return r.setShowMetricLabelNodeName(l)}),o.EFF(7,"Show label node names\n"),o.k0s(),o.j41(8,"mat-checkbox",1),o.nI1(9,"async"),o.bIt("change",function(l){return r.setShowMetricLabelNameValue(l)}),o.EFF(10,"Show label node metrics\n"),o.k0s(),o.nrm(11,"cc-slider",2),o.nI1(12,"async"),o.DNE(13,bbe,3,3,"mat-checkbox",3),o.nI1(14,"async"),o.nrm(15,"cc-reset-settings-button",4)),2&i&&(o.Y8G("disabled",o.bMT(1,15,r.isLabelsSliderDisabled$))("title",o.bMT(2,17,r.isLabelsSliderDisabled$)?"Disabled because color labels are used":"Display the labels of the "+o.bMT(3,19,r.amountOfTopLabels$)+" highest buildings")("min",0)("max",50)("value",o.bMT(4,21,r.amountOfTopLabels$))("onChange",r.applyDebouncedTopLabels),o.R7$(5),o.Y8G("checked",o.bMT(6,23,r.showMetricLabelNodeName$)),o.R7$(3),o.Y8G("checked",o.bMT(9,25,r.showMetricLabelNodeValue$)),o.R7$(3),o.Y8G("step",1)("min",1)("max",5)("value",o.bMT(12,27,r.scaling$).y)("onChange",r.applyDebouncedScalingY),o.R7$(2),o.vxM(o.bMT(14,29,r.isDeltaState$)?-1:13),o.R7$(2),o.Y8G("settingsKeys",o.lJ4(31,_be)))},dependencies:[GR,fv,S2,zn],encapsulation:2})}}return n})();const $7=sn(ko,n=>n.isColorMetricLinkedToHeightMetric);let ybe=(()=>{class n{constructor(e){this.store=e,this.isColorMetricLinkedToHeightMetric$=this.store.select($7)}toggleIsColorMetricLinkedToHeightMetric(){this.store.dispatch(r6())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-link-color-metric-to-height-metric-button"]],standalone:!0,features:[o.aNF],decls:4,vars:6,consts:[[1,"cc-link-metrics-button",3,"click","title"],[3,"ngClass"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"async"),o.bIt("click",function(){return r.toggleIsColorMetricLinkedToHeightMetric()}),o.nrm(2,"i",1),o.nI1(3,"async"),o.k0s()),2&i&&(o.FS9("title",o.bMT(1,2,r.isColorMetricLinkedToHeightMetric$)?"Unlink Height and Color Metric":"Link Height and Color Metric"),o.R7$(2),o.Y8G("ngClass",o.bMT(3,4,r.isColorMetricLinkedToHeightMetric$)?"fa fa-chain-broken":"fa fa-link"))},dependencies:[Sn,zn],styles:["[_nghost-%COMP%]{display:flex;justify-content:center;height:100%}[_nghost-%COMP%] .cc-link-metrics-button[_ngcontent-%COMP%]{width:50px;height:100%;padding:0;margin:0;background-color:transparent}[_nghost-%COMP%] .cc-link-metrics-button[_ngcontent-%COMP%] .fa[_ngcontent-%COMP%]{color:#444}[_nghost-%COMP%] .cc-link-metrics-button[_ngcontent-%COMP%]:hover{background-color:#c8c8c8}"]})}}return n})(),wbe=(()=>{class n{constructor(e){this.store=e,this.colorMetric$=this.store.select(Hg),this.isColorMetricLinkedToHeightMetric$=this.store.select($7)}handleColorMetricChanged(e){this.store.dispatch(Yh({value:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-color-metric-chooser"]],standalone:!0,features:[o.aNF],decls:4,vars:10,consts:[["icon","fa-paint-brush","metricFor","colorMetric","searchPlaceholder","Color Metric (highest value)",3,"selectedMetricName","handleMetricChanged","isDisabled"]],template:function(i,r){1&i&&(o.nrm(0,"cc-metric-chooser",0),o.nI1(1,"async"),o.nI1(2,"async"),o.nI1(3,"async")),2&i&&(o.Y8G("selectedMetricName",o.bMT(1,4,r.colorMetric$))("handleMetricChanged",r.handleColorMetricChanged)("isDisabled",o.bMT(2,6,r.isColorMetricLinkedToHeightMetric$)),o.BMQ("title",o.bMT(3,8,r.isColorMetricLinkedToHeightMetric$)?"Currently linked to height metric":"Change color metric"))},dependencies:[D2,zn],encapsulation:2})}}return n})();const Cbe=({thumbX:n,minValue:t,maxValue:e,sliderWidth:i})=>Math.round(t+n*((e-t)/i)),iK=({newThumbScreenX:n,sliderBoundingClientRectX:t,thumbRadius:e,sliderWidth:i,minValue:r,maxValue:s})=>{const l=n-t+e;return{updatedThumbX:l,upcomingValue:Cbe({thumbX:l,minValue:r,maxValue:s,sliderWidth:i})}},Sbe=["minLabel"],Tbe=["maxLabel"],Ibe=["currentLeftLabel"],Fbe=["currentRightLabel"],Dbe=["combinedCurrentLeftRightLabel"];let Bbe=(()=>{class n{constructor(e){this.changeDetector=e,this.hideMinLabel=!1,this.hideMaxLabel=!1,this.doLeftRightLabelOverlap=!1}ngAfterViewChecked(){this.updateLabelDisplays()}updateLabelDisplays(){const e=this.minLabel.nativeElement.getBoundingClientRect().width,i=this.currentLeftLabel.nativeElement.getBoundingClientRect().width;this.currentLeftLabelLeftPosition=this.sliderRangePosition.leftEnd-i/2;const r=this.currentRightLabel.nativeElement.getBoundingClientRect().width,s=this.sliderWidth-this.maxLabel.nativeElement.getBoundingClientRect().width;this.currentRightLabelLeftPosition=this.sliderRangePosition.rightStart-r/2,this.hideMinLabel=this.currentLeftLabelLeftPosition<=e+4,this.hideMaxLabel=this.currentRightLabelLeftPosition+r+4>=s;const l=this.currentLeftLabelLeftPosition+i;this.doLeftRightLabelOverlap=l+4>=this.currentRightLabelLeftPosition;const u=(l+this.currentRightLabelLeftPosition)/2,f=this.combinedCurrentLeftRightLabel.nativeElement.getBoundingClientRect().width;this.combinedCurrentLeftRightLabelLeftPosition=u-f/2,this.changeDetector.detectChanges()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-range-slider-labels"]],viewQuery:function(i,r){if(1&i&&(o.GBs(Sbe,5),o.GBs(Tbe,5),o.GBs(Ibe,5),o.GBs(Fbe,5),o.GBs(Dbe,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.minLabel=s.first),o.mGM(s=o.lsd())&&(r.maxLabel=s.first),o.mGM(s=o.lsd())&&(r.currentLeftLabel=s.first),o.mGM(s=o.lsd())&&(r.currentRightLabel=s.first),o.mGM(s=o.lsd())&&(r.combinedCurrentLeftRightLabel=s.first)}},inputs:{minValue:"minValue",maxValue:"maxValue",leftValueLabel:"leftValueLabel",rightValueLabel:"rightValueLabel",sliderRangePosition:"sliderRangePosition",sliderWidth:"sliderWidth"},standalone:!0,features:[o.aNF],decls:15,vars:26,consts:[["minLabel",""],["currentLeftLabel",""],["currentRightLabel",""],["combinedCurrentLeftRightLabel",""],["maxLabel",""],[1,"cc-range-slider-label"]],template:function(i,r){1&i&&(o.j41(0,"div",5,0),o.EFF(2),o.k0s(),o.j41(3,"div",5,1),o.EFF(5),o.k0s(),o.j41(6,"div",5,2),o.EFF(8),o.k0s(),o.j41(9,"div",5,3),o.EFF(11),o.k0s(),o.j41(12,"div",5,4),o.EFF(14),o.k0s()),2&i&&(o.xc7("left",0,"px")("visibility",r.hideMinLabel?"hidden":"visible"),o.R7$(2),o.SpI(" ",r.minValue,"\n"),o.R7$(),o.xc7("left",r.currentLeftLabelLeftPosition,"px")("visibility",r.doLeftRightLabelOverlap?"hidden":"visible"),o.R7$(2),o.SpI(" ",r.leftValueLabel,"\n"),o.R7$(),o.xc7("left",r.currentRightLabelLeftPosition,"px")("visibility",r.doLeftRightLabelOverlap?"hidden":"visible"),o.R7$(2),o.SpI(" ",r.rightValueLabel,"\n"),o.R7$(),o.xc7("left",r.combinedCurrentLeftRightLabelLeftPosition,"px")("visibility",r.doLeftRightLabelOverlap?"visible":"hidden"),o.R7$(2),o.Lme(" ",r.leftValueLabel," - ",r.rightValueLabel,"\n"),o.R7$(),o.xc7("right",0,"px")("visibility",r.hideMaxLabel?"hidden":"visible"),o.R7$(2),o.SpI(" ",r.maxValue,"\n"))},styles:["[_nghost-%COMP%] .cc-range-slider-label[_ngcontent-%COMP%]{position:absolute;top:-25px;line-height:24px;font-size:14px;color:#aeaeae}"],changeDetection:0})}}return n})();const kbe=["rangeSliderContainer"],Rbe=["leftThumb"],Pbe=["rightThumb"];let Obe=(()=>{class n{constructor(){this.sliderWidth=150,this.sliderRangePosition={leftEnd:0,rightStart:0},this.thumbRadius=7,this.currentlySliding=void 0,this.resetCurrentlySlidingOnNextMouseUp=e=>{const i=()=>{this.currentlySliding=void 0,document.removeEventListener("mouseup",i),document.removeEventListener("mousemove",e)};document.addEventListener("mouseup",i)},this.handleLeftThumbMoved=e=>{const i=(({deltaX:n,thumbScreenX:t,thumbRadius:e,otherThumbScreenX:i,sliderBoundingClientRectX:r,sliderWidth:s,minValue:l,maxValue:u})=>{let f=t+n;return fi&&(f=i),iK({newThumbScreenX:f,sliderBoundingClientRectX:r,thumbRadius:e,sliderWidth:s,minValue:l,maxValue:u})})({deltaX:e.movementX,thumbScreenX:this.leftThumb.nativeElement.getBoundingClientRect().x,thumbRadius:this.thumbRadius,otherThumbScreenX:this.rightThumb.nativeElement.getBoundingClientRect().x,sliderBoundingClientRectX:this.sliderContainer.nativeElement.getBoundingClientRect().x,sliderWidth:this.sliderWidth,minValue:this.minValue,maxValue:this.maxValue});this.sliderRangePosition={leftEnd:i.updatedThumbX,rightStart:this.sliderRangePosition.rightStart},this.upcomingLeftValue=i.upcomingValue,this.handleValueChange({newLeftValue:i.upcomingValue})},this.handleRightThumbMoved=e=>{const i=(({deltaX:n,thumbScreenX:t,thumbRadius:e,otherThumbScreenX:i,sliderBoundingClientRectX:r,sliderWidth:s,minValue:l,maxValue:u})=>{let f=t+n;return f>r+s-e&&(f=r+s-e),f{const s=t-n;return s<=0?{leftEnd:r,rightStart:r}:{leftEnd:(e-n)/s*r,rightStart:(i-n)/s*r}})({minValue:this.minValue,maxValue:this.maxValue,currentLeftValue:this.currentLeftValue,currentRightValue:this.currentRightValue,sliderWidth:this.sliderWidth}),e.currentLeftValue&&(this.upcomingLeftValue=this.currentLeftValue),e.currentRightValue&&(this.upcomingRightValue=this.currentRightValue))}setCurrentlySliding(e){switch(this.currentlySliding=e,this.currentlySliding){case"leftThumb":document.addEventListener("mousemove",this.handleLeftThumbMoved),this.rightThumb.nativeElement.style.zIndex="0",this.leftThumb.nativeElement.style.zIndex="1",this.resetCurrentlySlidingOnNextMouseUp(this.handleLeftThumbMoved);break;case"rightThumb":document.addEventListener("mousemove",this.handleRightThumbMoved),this.leftThumb.nativeElement.style.zIndex="0",this.rightThumb.nativeElement.style.zIndex="1",this.resetCurrentlySlidingOnNextMouseUp(this.handleRightThumbMoved)}}handleCurrentLeftInputChanged(e){const i=x7(e,this.minValue,this.currentRightValue);i!==this.currentLeftValue&&this.handleValueChange({newLeftValue:i})}handleCurrentRightInputChanged(e){const i=x7(e,this.currentLeftValue,this.maxValue);i!==this.currentRightValue&&this.handleValueChange({newRightValue:i})}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-color-range-slider"]],viewQuery:function(i,r){if(1&i&&(o.GBs(kbe,5),o.GBs(Rbe,5),o.GBs(Pbe,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.sliderContainer=s.first),o.mGM(s=o.lsd())&&(r.leftThumb=s.first),o.mGM(s=o.lsd())&&(r.rightThumb=s.first)}},inputs:{minValue:"minValue",maxValue:"maxValue",currentLeftValue:"currentLeftValue",currentRightValue:"currentRightValue",leftColor:"leftColor",middleColor:"middleColor",rightColor:"rightColor",handleValueChange:"handleValueChange",sliderWidth:"sliderWidth",isAttributeDirectionInversed:"isAttributeDirectionInversed"},standalone:!0,features:[o.OA$,o.aNF],decls:15,vars:28,consts:[["rangeSliderContainer",""],["leftThumb",""],["rightThumb",""],[1,"cc-range-slider-container"],["appearance","outline"],["matInput","","type","number",3,"input","value","min","max"],[1,"cc-range-slider-slider"],[1,"cc-range-slider-bar"],[1,"cc-range-slider-slider-thumb",3,"mousedown"],[3,"minValue","maxValue","leftValueLabel","rightValueLabel","sliderRangePosition","sliderWidth"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"div",3)(1,"mat-form-field",4)(2,"input",5),o.bIt("input",function(u){return o.eBV(s),o.Njj(r.handleCurrentLeftInputChanged(u))}),o.k0s()(),o.j41(3,"div",6,0),o.nrm(5,"span",7)(6,"span",7)(7,"span",7),o.j41(8,"div",8,1),o.bIt("mousedown",function(){return o.eBV(s),o.Njj(r.setCurrentlySliding("leftThumb"))}),o.k0s(),o.j41(10,"div",8,2),o.bIt("mousedown",function(){return o.eBV(s),o.Njj(r.setCurrentlySliding("rightThumb"))}),o.k0s(),o.nrm(12,"cc-range-slider-labels",9),o.k0s(),o.j41(13,"mat-form-field",4)(14,"input",5),o.bIt("input",function(u){return o.eBV(s),o.Njj(r.handleCurrentRightInputChanged(u))}),o.k0s()()()}2&i&&(o.R7$(2),o.Y8G("value",r.currentLeftValue)("min",r.minValue)("max",r.upcomingRightValue),o.R7$(3),o.xc7("width",r.sliderRangePosition.leftEnd,"px")("border-bottom-color",r.leftColor),o.R7$(),o.xc7("width",r.sliderRangePosition.rightStart-r.sliderRangePosition.leftEnd,"px")("border-bottom-color",r.middleColor),o.R7$(),o.xc7("width",r.sliderWidth-r.sliderRangePosition.rightStart,"px")("border-bottom-color",r.rightColor),o.R7$(),o.xc7("left",r.sliderRangePosition.leftEnd-r.thumbRadius,"px"),o.R7$(2),o.xc7("left",r.sliderRangePosition.rightStart-r.thumbRadius,"px"),o.R7$(2),o.Y8G("minValue",r.minValue)("maxValue",r.maxValue)("leftValueLabel",r.upcomingLeftValue)("rightValueLabel",r.upcomingRightValue)("sliderRangePosition",r.sliderRangePosition)("sliderWidth",r.sliderWidth),o.R7$(2),o.Y8G("value",r.currentRightValue)("min",r.upcomingLeftValue)("max",r.maxValue))},dependencies:[Lu,t0,Bbe],styles:["[_nghost-%COMP%] .cc-range-slider-slider[_ngcontent-%COMP%]{display:flex;flex:1;margin:0 8px;position:relative;line-height:48px}[_nghost-%COMP%] .cc-range-slider-slider[_ngcontent-%COMP%] .cc-range-slider-bar[_ngcontent-%COMP%]{display:inline-block;border-bottom-width:4px;border-bottom-style:solid}[_nghost-%COMP%] .cc-range-slider-slider[_ngcontent-%COMP%] .cc-range-slider-slider-thumb[_ngcontent-%COMP%]{cursor:pointer;position:absolute;top:-4px;border-radius:100%;border:7px solid #1b9cfc}"]})}}return n})();const Nbe=sn($w,Wp,n=>({leftColor:n.positive,middleColor:n.neutral,rightColor:n.negative})),rK=sn($c,n=>n.colorRange),Lbe=sn(Qg,rK,(n,t)=>({values:n.values,min:n.minValue,max:n.maxValue,from:t.from,to:t.to}));function oK(n,t){let e;if(void 0===t)for(const i of n)null!=i&&(e=i)&&(e=i);else{let i=-1;for(let r of n)null!=(r=t(r,++i,n))&&(e=r)&&(e=r)}return e}function Vbe(n){return n}function Hbe(n){return"translate("+n+",0)"}function Qbe(n){return"translate(0,"+n+")"}function zbe(n){return t=>+n(t)}function Gbe(n,t){return t=Math.max(0,n.bandwidth()-2*t)/2,n.round()&&(t=Math.round(t)),e=>+n(e)+t}function jbe(){return!this.__axis}function sP(n,t){var e=[],i=null,r=null,s=6,l=6,u=3,f=typeof window<"u"&&window.devicePixelRatio>1?0:.5,p=1===n||4===n?-1:1,m=4===n||2===n?"x":"y",_=1===n||3===n?Hbe:Qbe;function b(w){var F=i??(t.ticks?t.ticks.apply(t,e):t.domain()),D=r??(t.tickFormat?t.tickFormat.apply(t,e):Vbe),T=Math.max(s,0)+u,I=t.range(),O=+I[0]+f,R=+I[I.length-1]+f,P=(t.bandwidth?Gbe:zbe)(t.copy(),f),ee=w.selection?w.selection():w,J=ee.selectAll(".domain").data([null]),te=ee.selectAll(".tick").data(F,t).order(),ie=te.exit(),W=te.enter().append("g").attr("class","tick"),q=te.select("line"),ce=te.select("text");J=J.merge(J.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),te=te.merge(W),q=q.merge(W.append("line").attr("stroke","currentColor").attr(m+"2",p*s)),ce=ce.merge(W.append("text").attr("fill","currentColor").attr(m,p*T).attr("dy",1===n?"0em":3===n?"0.71em":"0.32em")),w!==ee&&(J=J.transition(w),te=te.transition(w),q=q.transition(w),ce=ce.transition(w),ie=ie.transition(w).attr("opacity",1e-6).attr("transform",function(ke){return isFinite(ke=P(ke))?_(ke+f):this.getAttribute("transform")}),W.attr("opacity",1e-6).attr("transform",function(ke){var Ue=this.parentNode.__axis;return _((Ue&&isFinite(Ue=Ue(ke))?Ue:P(ke))+f)})),ie.remove(),J.attr("d",4===n||2===n?l?"M"+p*l+","+O+"H"+f+"V"+R+"H"+p*l:"M"+f+","+O+"V"+R:l?"M"+O+","+p*l+"V"+f+"H"+R+"V"+p*l:"M"+O+","+f+"H"+R),te.attr("opacity",1).attr("transform",function(ke){return _(P(ke)+f)}),q.attr(m+"2",p*s),ce.attr(m,p*T).text(D),ee.filter(jbe).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===n?"start":4===n?"end":"middle"),ee.each(function(){this.__axis=P})}return b.scale=function(w){return arguments.length?(t=w,b):t},b.ticks=function(){return e=Array.from(arguments),b},b.tickArguments=function(w){return arguments.length?(e=null==w?[]:Array.from(w),b):e.slice()},b.tickValues=function(w){return arguments.length?(i=null==w?null:Array.from(w),b):i&&i.slice()},b.tickFormat=function(w){return arguments.length?(r=w,b):r},b.tickSize=function(w){return arguments.length?(s=l=+w,b):s},b.tickSizeInner=function(w){return arguments.length?(s=+w,b):s},b.tickSizeOuter=function(w){return arguments.length?(l=+w,b):l},b.tickPadding=function(w){return arguments.length?(u=+w,b):u},b.offset=function(w){return arguments.length?(f=+w,b):f},b}function Wbe(){}function X7(n){return null==n?Wbe:function(){return this.querySelector(n)}}function Ybe(){return[]}function aK(n){return null==n?Ybe:function(){return this.querySelectorAll(n)}}function lK(n){return function(){return this.matches(n)}}function cK(n){return function(t){return t.matches(n)}}var eve=Array.prototype.find;function nve(){return this.firstElementChild}var rve=Array.prototype.filter;function ove(){return Array.from(this.children)}function dK(n){return new Array(n.length)}function aP(n,t){this.ownerDocument=n.ownerDocument,this.namespaceURI=n.namespaceURI,this._next=null,this._parent=n,this.__data__=t}function uve(n,t,e,i,r,s){for(var u,l=0,f=t.length,p=s.length;lt?1:n>=t?0:NaN}aP.prototype={constructor:aP,appendChild:function(n){return this._parent.insertBefore(n,this._next)},insertBefore:function(n,t){return this._parent.insertBefore(n,t)},querySelector:function(n){return this._parent.querySelector(n)},querySelectorAll:function(n){return this._parent.querySelectorAll(n)}};var K7="http://www.w3.org/1999/xhtml";const uK={svg:"http://www.w3.org/2000/svg",xhtml:K7,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function lP(n){var t=n+="",e=t.indexOf(":");return e>=0&&"xmlns"!==(t=n.slice(0,e))&&(n=n.slice(e+1)),uK.hasOwnProperty(t)?{space:uK[t],local:n}:n}function Tve(n){return function(){this.removeAttribute(n)}}function Ive(n){return function(){this.removeAttributeNS(n.space,n.local)}}function Fve(n,t){return function(){this.setAttribute(n,t)}}function Dve(n,t){return function(){this.setAttributeNS(n.space,n.local,t)}}function Bve(n,t){return function(){var e=t.apply(this,arguments);null==e?this.removeAttribute(n):this.setAttribute(n,e)}}function kve(n,t){return function(){var e=t.apply(this,arguments);null==e?this.removeAttributeNS(n.space,n.local):this.setAttributeNS(n.space,n.local,e)}}function hK(n){return n.ownerDocument&&n.ownerDocument.defaultView||n.document&&n||n.defaultView}function Pve(n){return function(){this.style.removeProperty(n)}}function Ove(n,t,e){return function(){this.style.setProperty(n,t,e)}}function Nve(n,t,e){return function(){var i=t.apply(this,arguments);null==i?this.style.removeProperty(n):this.style.setProperty(n,i,e)}}function gx(n,t){return n.style.getPropertyValue(t)||hK(n).getComputedStyle(n,null).getPropertyValue(t)}function Uve(n){return function(){delete this[n]}}function Vve(n,t){return function(){this[n]=t}}function Hve(n,t){return function(){var e=t.apply(this,arguments);null==e?delete this[n]:this[n]=e}}function fK(n){return n.trim().split(/^|\s+/)}function Y7(n){return n.classList||new pK(n)}function pK(n){this._node=n,this._names=fK(n.getAttribute("class")||"")}function AK(n,t){for(var e=Y7(n),i=-1,r=t.length;++i=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(n){return this._names.indexOf(n)>=0}};var bK=[null];function Xc(n,t){this._groups=n,this._parents=t}function vK(){return new Xc([[document.documentElement]],bK)}Xc.prototype=vK.prototype={constructor:Xc,select:function Xbe(n){"function"!=typeof n&&(n=X7(n));for(var t=this._groups,e=t.length,i=new Array(e),r=0;r=R&&(R=O+1);!(ee=T[R])&&++R=0;)(l=i[r])&&(s&&4^l.compareDocumentPosition(s)&&s.parentNode.insertBefore(l,s),s=l);return this},sort:function vve(n){function t(_,b){return _&&b?n(_.__data__,b.__data__):!_-!b}n||(n=yve);for(var e=this._groups,i=e.length,r=new Array(i),s=0;s1?this.each((null==t?Pve:"function"==typeof t?Nve:Ove)(n,t,e??"")):gx(this.node(),n)},property:function Qve(n,t){return arguments.length>1?this.each((null==t?Uve:"function"==typeof t?Hve:Vve)(n,t)):this.node()[n]},classed:function $ve(n,t){var e=fK(n+"");if(arguments.length<2){for(var i=Y7(this.node()),r=-1,s=e.length;++r=0&&(e=t.slice(i+1),t=t.slice(0,i)),{type:t,name:e}})}(n+""),s=i.length;if(!(arguments.length<2)){for(u=t?bye:_ye,r=0;r{}};function yK(){for(var i,n=0,t=arguments.length,e={};n=0&&(i=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:i}})}(n+"",e),s=-1,l=i.length;if(!(arguments.length<2)){if(null!=t&&"function"!=typeof t)throw new Error("invalid callback: "+t);for(;++s0)for(var r,s,e=new Array(r),i=0;i=0&&n._call.call(void 0,t),n=n._next;--_x}()}finally{_x=0,function kye(){for(var n,e,t=dP,i=1/0;t;)t._call?(i>t._time&&(i=t._time),n=t,t=t._next):(e=t._next,t._next=null,t=n?n._next=e:dP=e);N2=n,J7(i)}(),mv=0}}function Bye(){var n=L2.now(),t=n-uP;t>xK&&(hP-=t,uP=n)}function J7(n){_x||(P2&&(P2=clearTimeout(P2)),n-mv>24?(n<1/0&&(P2=setTimeout(EK,n-L2.now()-hP)),O2&&(O2=clearInterval(O2))):(O2||(uP=L2.now(),O2=setInterval(Bye,xK)),_x=1,CK(EK)))}function SK(n,t,e){var i=new fP;return i.restart(r=>{i.stop(),n(r+t)},t=null==t?0:+t,e),i}fP.prototype=MK.prototype={constructor:fP,restart:function(n,t,e){if("function"!=typeof n)throw new TypeError("callback is not a function");e=(null==e?Z7():+e)+(null==t?0:+t),!this._next&&N2!==this&&(N2?N2._next=this:dP=this,N2=this),this._call=n,this._time=e,J7()},stop:function(){this._call&&(this._call=null,this._time=1/0,J7())}};var Rye=Iye("start","end","cancel","interrupt"),Pye=[],TK=0,pP=3;function mP(n,t,e,i,r,s){var l=n.__transition;if(l){if(e in l)return}else n.__transition={};!function Oye(n,t,e){var r,i=n.__transition;function l(p){var m,_,b,w;if(1!==e.state)return f();for(m in i)if((w=i[m]).name===e.name){if(w.state===pP)return SK(l);4===w.state?(w.state=6,w.timer.stop(),w.on.call("interrupt",n,n.__data__,w.index,w.group),delete i[m]):+mTK)throw new Error("too late; already scheduled");return e}function Jh(n,t){var e=Hu(n,t);if(e.state>pP)throw new Error("too late; already running");return e}function Hu(n,t){var e=n.__transition;if(!e||!(e=e[t]))throw new Error("transition not found");return e}function Qu(n,t){return n=+n,t=+t,function(e){return n*(1-e)+t*e}}var gP,DK=180/Math.PI,iV={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function BK(n,t,e,i,r,s){var l,u,f;return(l=Math.sqrt(n*n+t*t))&&(n/=l,t/=l),(f=n*e+t*i)&&(e-=n*f,i-=t*f),(u=Math.sqrt(e*e+i*i))&&(e/=u,i/=u,f/=u),n*i180?m+=360:m-p>180&&(p+=360),b.push({i:_.push(r(_)+"rotate(",null,i)-2,x:Qu(p,m)})):m&&_.push(r(_)+"rotate("+m+i)}(p.rotate,m.rotate,_,b),function u(p,m,_,b){p!==m?b.push({i:_.push(r(_)+"skewX(",null,i)-2,x:Qu(p,m)}):m&&_.push(r(_)+"skewX("+m+i)}(p.skewX,m.skewX,_,b),function f(p,m,_,b,w,F){if(p!==_||m!==b){var D=w.push(r(w)+"scale(",null,",",null,")");F.push({i:D-4,x:Qu(p,_)},{i:D-2,x:Qu(m,b)})}else(1!==_||1!==b)&&w.push(r(w)+"scale("+_+","+b+")")}(p.scaleX,p.scaleY,m.scaleX,m.scaleY,_,b),p=m=null,function(w){for(var T,F=-1,D=b.length;++F>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===e?bP(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===e?bP(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=qye.exec(n))?new pc(t[1],t[2],t[3],1):(t=Wye.exec(n))?new pc(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=Xye.exec(n))?bP(t[1],t[2],t[3],t[4]):(t=Kye.exec(n))?bP(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=Yye.exec(n))?HK(t[1],t[2]/100,t[3]/100,1):(t=Zye.exec(n))?HK(t[1],t[2]/100,t[3]/100,t[4]):PK.hasOwnProperty(n)?LK(PK[n]):"transparent"===n?new pc(NaN,NaN,NaN,0):null}function LK(n){return new pc(n>>16&255,n>>8&255,255&n,1)}function bP(n,t,e,i){return i<=0&&(n=t=e=NaN),new pc(n,t,e,i)}function vP(n,t,e,i){return 1===arguments.length?function t1e(n){return n instanceof U2||(n=gv(n)),n?new pc((n=n.rgb()).r,n.g,n.b,n.opacity):new pc}(n):new pc(n,t,e,i??1)}function pc(n,t,e,i){this.r=+n,this.g=+t,this.b=+e,this.opacity=+i}function UK(){return`#${bv(this.r)}${bv(this.g)}${bv(this.b)}`}function VK(){const n=yP(this.opacity);return`${1===n?"rgb(":"rgba("}${_v(this.r)}, ${_v(this.g)}, ${_v(this.b)}${1===n?")":`, ${n})`}`}function yP(n){return isNaN(n)?1:Math.max(0,Math.min(1,n))}function _v(n){return Math.max(0,Math.min(255,Math.round(n)||0))}function bv(n){return((n=_v(n))<16?"0":"")+n.toString(16)}function HK(n,t,e,i){return i<=0?n=t=e=NaN:e<=0||e>=1?n=t=NaN:t<=0&&(n=NaN),new zu(n,t,e,i)}function QK(n){if(n instanceof zu)return new zu(n.h,n.s,n.l,n.opacity);if(n instanceof U2||(n=gv(n)),!n)return new zu;if(n instanceof zu)return n;var t=(n=n.rgb()).r/255,e=n.g/255,i=n.b/255,r=Math.min(t,e,i),s=Math.max(t,e,i),l=NaN,u=s-r,f=(s+r)/2;return u?(l=t===s?(e-i)/u+6*(e0&&f<1?0:l,new zu(l,u,f,n.opacity)}function zu(n,t,e,i){this.h=+n,this.s=+t,this.l=+e,this.opacity=+i}function zK(n){return(n=(n||0)%360)<0?n+360:n}function wP(n){return Math.max(0,Math.min(1,n||0))}function sV(n,t,e){return 255*(n<60?t+(e-t)*n/60:n<180?e:n<240?t+(e-t)*(240-n)/60:t)}function GK(n,t,e,i,r){var s=n*n,l=s*n;return((1-3*n+3*s-l)*t+(4-6*s+3*l)*e+(1+3*n+3*s-3*l)*i+l*r)/6}oV(U2,gv,{copy(n){return Object.assign(new this.constructor,this,n)},displayable(){return this.rgb().displayable()},hex:OK,formatHex:OK,formatHex8:function Jye(){return this.rgb().formatHex8()},formatHsl:function e1e(){return QK(this).formatHsl()},formatRgb:NK,toString:NK}),oV(pc,vP,RK(U2,{brighter(n){return n=null==n?_P:Math.pow(_P,n),new pc(this.r*n,this.g*n,this.b*n,this.opacity)},darker(n){return n=null==n?.7:Math.pow(.7,n),new pc(this.r*n,this.g*n,this.b*n,this.opacity)},rgb(){return this},clamp(){return new pc(_v(this.r),_v(this.g),_v(this.b),yP(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:UK,formatHex:UK,formatHex8:function n1e(){return`#${bv(this.r)}${bv(this.g)}${bv(this.b)}${bv(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:VK,toString:VK})),oV(zu,function i1e(n,t,e,i){return 1===arguments.length?QK(n):new zu(n,t,e,i??1)},RK(U2,{brighter(n){return n=null==n?_P:Math.pow(_P,n),new zu(this.h,this.s,this.l*n,this.opacity)},darker(n){return n=null==n?.7:Math.pow(.7,n),new zu(this.h,this.s,this.l*n,this.opacity)},rgb(){var n=this.h%360+360*(this.h<0),t=isNaN(n)||isNaN(this.s)?0:this.s,e=this.l,i=e+(e<.5?e:1-e)*t,r=2*e-i;return new pc(sV(n>=240?n-240:n+120,r,i),sV(n,r,i),sV(n<120?n+240:n-120,r,i),this.opacity)},clamp(){return new zu(zK(this.h),wP(this.s),wP(this.l),yP(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const n=yP(this.opacity);return`${1===n?"hsl(":"hsla("}${zK(this.h)}, ${100*wP(this.s)}%, ${100*wP(this.l)}%${1===n?")":`, ${n})`}`}}));const aV=n=>()=>n;function $K(n,t){var e=t-n;return e?function jK(n,t){return function(e){return n+e*t}}(n,e):aV(isNaN(n)?t:n)}const xP=function n(t){var e=function a1e(n){return 1==(n=+n)?$K:function(t,e){return e-t?function s1e(n,t,e){return n=Math.pow(n,e),t=Math.pow(t,e)-n,e=1/e,function(i){return Math.pow(n+i*t,e)}}(t,e,n):aV(isNaN(t)?e:t)}}(t);function i(r,s){var l=e((r=vP(r)).r,(s=vP(s)).r),u=e(r.g,s.g),f=e(r.b,s.b),p=$K(r.opacity,s.opacity);return function(m){return r.r=l(m),r.g=u(m),r.b=f(m),r.opacity=p(m),r+""}}return i.gamma=n,i}(1);function qK(n){return function(t){var l,u,e=t.length,i=new Array(e),r=new Array(e),s=new Array(e);for(l=0;l=1?(e=1,t-1):Math.floor(e*t),r=n[i],s=n[i+1];return GK((e-i/t)*t,i>0?n[i-1]:2*r-s,r,s,ie&&(s=t.slice(e,s),u[l]?u[l]+=s:u[++l]=s),(i=i[0])===(r=r[0])?u[l]?u[l]+=r:u[++l]=r:(u[++l]=null,f.push({i:l,x:Qu(i,r)})),e=cV.lastIndex;return e=0&&(t=t.slice(0,e)),!t||"start"===t})}(t)?nV:Jh;return function(){var l=s(this,n),u=l.on;u!==i&&(r=(i=u).copy()).on(t,e),l.on=r}}(e,n,t))},attr:function m1e(n,t){var e=lP(n),i="transform"===e?Qye:XK;return this.attrTween(n,"function"==typeof t?(e.local?A1e:p1e)(e,i,rV(this,"attr."+n,t)):null==t?(e.local?u1e:d1e)(e):(e.local?f1e:h1e)(e,i,t))},attrTween:function y1e(n,t){var e="attr."+n;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw new Error;var i=lP(n);return this.tween(e,(i.local?b1e:v1e)(i,t))},style:function q1e(n,t,e){var i="transform"==(n+="")?Hye:XK;return null==t?this.styleTween(n,function z1e(n,t){var e,i,r;return function(){var s=gx(this,n),l=(this.style.removeProperty(n),gx(this,n));return s===l?null:s===e&&l===i?r:r=t(e=s,i=l)}}(n,i)).on("end.style."+n,KK(n)):"function"==typeof t?this.styleTween(n,function j1e(n,t,e){var i,r,s;return function(){var l=gx(this,n),u=e(this),f=u+"";return null==u&&(this.style.removeProperty(n),f=u=gx(this,n)),l===f?null:l===i&&f===r?s:(r=f,s=t(i=l,u))}}(n,i,rV(this,"style."+n,t))).each(function $1e(n,t){var e,i,r,u,s="style."+t,l="end."+s;return function(){var f=Jh(this,n),p=f.on,m=null==f.value[s]?u||(u=KK(t)):void 0;(p!==e||r!==m)&&(i=(e=p).copy()).on(l,r=m),f.on=i}}(this._id,n)):this.styleTween(n,function G1e(n,t,e){var i,s,r=e+"";return function(){var l=gx(this,n);return l===r?null:l===i?s:s=t(i=l,e)}}(n,i,t),e).on("end.style."+n,null)},styleTween:function K1e(n,t,e){var i="style."+(n+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(null==t)return this.tween(i,null);if("function"!=typeof t)throw new Error;return this.tween(i,function X1e(n,t,e){var i,r;function s(){var l=t.apply(this,arguments);return l!==r&&(i=(r=l)&&function W1e(n,t,e){return function(i){this.style.setProperty(n,t.call(this,i),e)}}(n,l,e)),i}return s._value=t,s}(n,t,e??""))},text:function J1e(n){return this.tween("text","function"==typeof n?function Z1e(n){return function(){var t=n(this);this.textContent=t??""}}(rV(this,"text",n)):function Y1e(n){return function(){this.textContent=n}}(null==n?"":n+""))},textTween:function nwe(n){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==n)return this.tween(t,null);if("function"!=typeof n)throw new Error;return this.tween(t,function twe(n){var t,e;function i(){var r=n.apply(this,arguments);return r!==e&&(t=(e=r)&&function ewe(n){return function(t){this.textContent=n.call(this,t)}}(r)),t}return i._value=n,i}(n))},remove:function L1e(){return this.on("end.remove",function N1e(n){return function(){var t=this.parentNode;for(var e in this.__transition)if(+e!==n)return;t&&t.removeChild(this)}}(this._id))},tween:function jye(n,t){var e=this._id;if(n+="",arguments.length<2){for(var l,i=Hu(this.node(),e).tween,r=0,s=i.length;r2&&i.state<5,i.state=6,i.timer.stop(),i.on.call(r?"interrupt":"cancel",n,n.__data__,i.index,i.group),delete e[l]):s=!1;s&&delete n.__transition}}(this,n)})},R2.prototype.transition=function dwe(n){var t,e;n instanceof Jp?(t=n._id,n=n._name):(t=YK(),(e=lwe).time=Z7(),n=null==n?null:n+"");for(var i=this._groups,r=i.length,s=0;s1?i[0]+i.slice(2):i,+n.slice(e+1)]}function wx(n){return(n=EP(Math.abs(n)))?n[1]:NaN}["w","e"].map(Q2),["n","s"].map(Q2),["n","w","e","s","nw","ne","sw","se"].map(Q2);var iY,ywe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function SP(n){if(!(t=ywe.exec(n)))throw new Error("invalid format: "+n);var t;return new pV({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function pV(n){this.fill=void 0===n.fill?" ":n.fill+"",this.align=void 0===n.align?">":n.align+"",this.sign=void 0===n.sign?"-":n.sign+"",this.symbol=void 0===n.symbol?"":n.symbol+"",this.zero=!!n.zero,this.width=void 0===n.width?void 0:+n.width,this.comma=!!n.comma,this.precision=void 0===n.precision?void 0:+n.precision,this.trim=!!n.trim,this.type=void 0===n.type?"":n.type+""}function rY(n,t){var e=EP(n,t);if(!e)return n+"";var i=e[0],r=e[1];return r<0?"0."+new Array(-r).join("0")+i:i.length>r+1?i.slice(0,r+1)+"."+i.slice(r+1):i+new Array(r-i.length+2).join("0")}SP.prototype=pV.prototype,pV.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const oY={"%":(n,t)=>(100*n).toFixed(t),b:n=>Math.round(n).toString(2),c:n=>n+"",d:function _we(n){return Math.abs(n=Math.round(n))>=1e21?n.toLocaleString("en").replace(/,/g,""):n.toString(10)},e:(n,t)=>n.toExponential(t),f:(n,t)=>n.toFixed(t),g:(n,t)=>n.toPrecision(t),o:n=>Math.round(n).toString(8),p:(n,t)=>rY(100*n,t),r:rY,s:function xwe(n,t){var e=EP(n,t);if(!e)return n+"";var i=e[0],r=e[1],s=r-(iY=3*Math.max(-8,Math.min(8,Math.floor(r/3))))+1,l=i.length;return s===l?i:s>l?i+new Array(s-l+1).join("0"):s>0?i.slice(0,s)+"."+i.slice(s):"0."+new Array(1-s).join("0")+EP(n,Math.max(0,t+s-1))[0]},X:n=>Math.round(n).toString(16).toUpperCase(),x:n=>Math.round(n).toString(16)};function sY(n){return n}var TP,IP,cY,aY=Array.prototype.map,lY=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];!function Mwe(n){TP=function Cwe(n){var t=void 0===n.grouping||void 0===n.thousands?sY:function bwe(n,t){return function(e,i){for(var r=e.length,s=[],l=0,u=n[0],f=0;r>0&&u>0&&(f+u+1>i&&(u=Math.max(1,i-f)),s.push(e.substring(r-=u,r+u)),!((f+=u+1)>i));)u=n[l=(l+1)%n.length];return s.reverse().join(t)}}(aY.call(n.grouping,Number),n.thousands+""),e=void 0===n.currency?"":n.currency[0]+"",i=void 0===n.currency?"":n.currency[1]+"",r=void 0===n.decimal?".":n.decimal+"",s=void 0===n.numerals?sY:function vwe(n){return function(t){return t.replace(/[0-9]/g,function(e){return n[+e]})}}(aY.call(n.numerals,String)),l=void 0===n.percent?"%":n.percent+"",u=void 0===n.minus?"\u2212":n.minus+"",f=void 0===n.nan?"NaN":n.nan+"";function p(_){var b=(_=SP(_)).fill,w=_.align,F=_.sign,D=_.symbol,T=_.zero,I=_.width,O=_.comma,R=_.precision,P=_.trim,ee=_.type;"n"===ee?(O=!0,ee="g"):oY[ee]||(void 0===R&&(R=12),P=!0,ee="g"),(T||"0"===b&&"="===w)&&(T=!0,b="0",w="=");var J="$"===D?e:"#"===D&&/[boxX]/.test(ee)?"0"+ee.toLowerCase():"",te="$"===D?i:/[%p]/.test(ee)?l:"",ie=oY[ee],W=/[defgprs%]/.test(ee);function q(ce){var de,ze,Ce,ke=J,Ue=te;if("c"===ee)Ue=ie(ce)+Ue,ce="";else{var Oe=(ce=+ce)<0||1/ce<0;if(ce=isNaN(ce)?f:ie(Math.abs(ce),R),P&&(ce=function wwe(n){e:for(var r,t=n.length,e=1,i=-1;e0&&(i=0)}return i>0?n.slice(0,i)+n.slice(r+1):n}(ce)),Oe&&0==+ce&&"+"!==F&&(Oe=!1),ke=(Oe?"("===F?F:u:"-"===F||"("===F?"":F)+ke,Ue=("s"===ee?lY[8+iY/3]:"")+Ue+(Oe&&"("===F?")":""),W)for(de=-1,ze=ce.length;++de(Ce=ce.charCodeAt(de))||Ce>57){Ue=(46===Ce?r+ce.slice(de+1):ce.slice(de))+Ue,ce=ce.slice(0,de);break}}O&&!T&&(ce=t(ce,1/0));var Fe=ke.length+ce.length+Ue.length,ht=Fe>1)+ke+ce+Ue+ht.slice(Fe);break;default:ce=ht+ke+ce+Ue}return s(ce)}return R=void 0===R?6:/[gprs]/.test(ee)?Math.max(1,Math.min(21,R)):Math.max(0,Math.min(20,R)),q.toString=function(){return _+""},q}return{format:p,formatPrefix:function m(_,b){var w=p(((_=SP(_)).type="f",_)),F=3*Math.max(-8,Math.min(8,Math.floor(wx(b)/3))),D=Math.pow(10,-F),T=lY[8+F/3];return function(I){return w(D*I)+T}}}}(n),IP=TP.format,cY=TP.formatPrefix}({thousands:",",grouping:[3],currency:["$",""]});const Ewe=Math.sqrt(50),Swe=Math.sqrt(10),Twe=Math.sqrt(2);function FP(n,t,e){const i=(t-n)/Math.max(0,e),r=Math.floor(Math.log10(i)),s=i/Math.pow(10,r),l=s>=Ewe?10:s>=Swe?5:s>=Twe?2:1;let u,f,p;return r<0?(p=Math.pow(10,-r)/l,u=Math.round(n*p),f=Math.round(t*p),u/pt&&--f,p=-p):(p=Math.pow(10,r)*l,u=Math.round(n/p),f=Math.round(t/p),u*pt&&--f),ft?1:n>=t?0:NaN}function Dwe(n,t){return null==n||null==t?NaN:tn?1:t>=n?0:NaN}function dY(n){let t,e,i;function r(u,f,p=0,m=u.length){if(p>>1;e(u[_],f)<0?p=_+1:m=_}while(pDP(n(u),f),i=(u,f)=>n(u)-f):(t=n===DP||n===Dwe?n:Bwe,e=n,i=n),{left:r,center:function l(u,f,p=0,m=u.length){const _=r(u,f,p,m-1);return _>p&&i(u[_-1],f)>-i(u[_],f)?_-1:_},right:function s(u,f,p=0,m=u.length){if(p>>1;e(u[_],f)<=0?p=_+1:m=_}while(p0))return[];if((n=+n)==(t=+t))return[n];const i=t=r))return[];const u=s-r+1,f=new Array(u);if(i)if(l<0)for(let p=0;p0;){if((p=AV(l,u,e))===f)return i[r]=l,i[s]=u,t(i);if(p>0)l=Math.floor(l/p)*p,u=Math.ceil(u/p)*p;else{if(!(p<0))break;l=Math.ceil(l*p)/p,u=Math.floor(u*p)/p}f=p}return n},n}function _V(){var n=function Wwe(){return function qwe(){var i,r,s,u,f,p,n=fY,t=fY,e=mV,l=xx;function m(){var b=Math.min(n.length,t.length);return l!==xx&&(l=function zwe(n,t){var e;return n>t&&(e=n,n=t,t=e),function(i){return Math.max(n,Math.min(t,i))}}(n[0],n[b-1])),u=b>2?jwe:Gwe,f=p=null,_}function _(b){return null==b||isNaN(b=+b)?s:(f||(f=u(n.map(i),t,e)))(i(l(b)))}return _.invert=function(b){return l(r((p||(p=u(t,n.map(i),Qu)))(b)))},_.domain=function(b){return arguments.length?(n=Array.from(b,Qwe),m()):n.slice()},_.range=function(b){return arguments.length?(t=Array.from(b),m()):t.slice()},_.rangeRound=function(b){return t=Array.from(b),e=Vwe,m()},_.clamp=function(b){return arguments.length?(l=!!b||xx,m()):l!==xx},_.interpolate=function(b){return arguments.length?(e=b,m()):e},_.unknown=function(b){return arguments.length?(s=b,_):s},function(b,w){return i=b,r=w,m()}}()(xx,xx)}();return n.copy=function(){return function $we(n,t){return t.domain(n.domain()).range(n.range()).interpolate(n.interpolate()).clamp(n.clamp()).unknown(n.unknown())}(n,_V())},Xwe.apply(n,arguments),exe(n)}function pY(n){return"string"==typeof n?new Xc([[document.querySelector(n)]],[document.documentElement]):new Xc([[n]],bK)}function Cx(n){return function(){return n}}function AY(n){this._context=n}function rxe(n){return new AY(n)}AY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(n,t){switch(n=+n,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(n,t):this._context.moveTo(n,t);break;case 1:this._point=2;default:this._context.lineTo(n,t)}}};const bV=Math.PI,vV=2*bV,vv=1e-6,oxe=vV-vv;function mY(n){this._+=n[0];for(let t=1,e=n.length;t=0))throw new Error(`invalid digits: ${n}`);if(t>15)return mY;const e=10**t;return function(i){this._+=i[0];for(let r=1,s=i.length;rvv)if(Math.abs(_*f-p*m)>vv&&s){let w=i-l,F=r-u,D=f*f+p*p,T=w*w+F*F,I=Math.sqrt(D),O=Math.sqrt(b),R=s*Math.tan((bV-Math.acos((D+b-T)/(2*I*O)))/2),P=R/O,ee=R/I;Math.abs(P-1)>vv&&this._append`L${t+P*m},${e+P*_}`,this._append`A${s},${s},0,0,${+(_*w>m*F)},${this._x1=t+ee*f},${this._y1=e+ee*p}`}else this._append`L${this._x1=t},${this._y1=e}`}arc(t,e,i,r,s,l){if(t=+t,e=+e,l=!!l,(i=+i)<0)throw new Error(`negative radius: ${i}`);let u=i*Math.cos(r),f=i*Math.sin(r),p=t+u,m=e+f,_=1^l,b=l?r-s:s-r;null===this._x1?this._append`M${p},${m}`:(Math.abs(this._x1-p)>vv||Math.abs(this._y1-m)>vv)&&this._append`L${p},${m}`,i&&(b<0&&(b=b%vV+vV),b>oxe?this._append`A${i},${i},0,1,${_},${t-u},${e-f}A${i},${i},0,1,${_},${this._x1=p},${this._y1=m}`:b>vv&&this._append`A${i},${i},0,${+(b>=bV)},${_},${this._x1=t+i*Math.cos(s)},${this._y1=e+i*Math.sin(s)}`)}rect(t,e,i,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${i=+i}v${+r}h${-i}Z`}toString(){return this._}}function cxe(n){return n[0]}function dxe(n){return n[1]}function kP(n,t){this._context=n,this._t=t}function hxe(n){return new kP(n,0)}function Mx(n,t,e){this.k=n,this.x=t,this.y=e}kP.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(n,t){switch(n=+n,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(n,t):this._context.moveTo(n,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(n,t);else{var e=this._x*(1-this._t)+n*this._t;this._context.lineTo(e,this._y),this._context.lineTo(e,t)}}this._x=n,this._y=t}},Mx.prototype={constructor:Mx,scale:function(n){return 1===n?this:new Mx(this.k*n,this.x,this.y)},translate:function(n,t){return 0===n&0===t?this:new Mx(this.k,this.x+this.k*n,this.y+this.k*t)},apply:function(n){return[n[0]*this.k+this.x,n[1]*this.k+this.y]},applyX:function(n){return n*this.k+this.x},applyY:function(n){return n*this.k+this.y},invert:function(n){return[(n[0]-this.x)/this.k,(n[1]-this.y)/this.k]},invertX:function(n){return(n-this.x)/this.k},invertY:function(n){return(n-this.y)/this.k},rescaleX:function(n){return n.copy().domain(n.range().map(this.invertX,this).map(n.invert,n))},rescaleY:function(n){return n.copy().domain(n.range().map(this.invertY,this).map(n.invert,n))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},new Mx(1,0,0);let vxe=(()=>{class n{ngOnChanges(){this.values.length>0&&(this.percentileRanks=this.isAttributeDirectionInverted?this.calculateReversedPercentileRanks(this.values):this.calculatePercentileRanks(this.values),this.updatePercentileToMetricValueMap(),this.renderDiagram())}updatePercentileToMetricValueMap(){this.percentileToMetricValueMap=new Map;let e=0;for(let i=0;i<=100;i++){for(;i>this.percentileRanks[e].x&&e=1e4?`${IP(".0f")(s/1e3)}k`:s>=1e3?`${IP(".1f")(s/1e3)}k`:s.toString()})).attr("font-size","13px").attr("color","#888")}createXScale(){return _V().domain(function Ube(n,t){let e,i;if(void 0===t)for(const r of n)null!=r&&(void 0===e?r>=r&&(e=i=r):(e>r&&(e=r),i=s&&(e=i=s):(e>s&&(e=s),ie.x)).range([0,this.frameWidth-2*this.framePadding])}createYScale(){const e=[0,oK(this.percentileRanks,r=>r.y)],i=[oK(this.percentileRanks,r=>r.y),0];return _V().domain(this.isAttributeDirectionInverted?i:e).range([this.frameHeight-2*this.framePadding,0])}drawLabels(e){e.append("text").attr("id","y-label").attr("class","y label").attr("text-anchor","middle").attr("transform","rotate(-90)").attr("x",-this.frameHeight/2-this.frameMarginTop).attr("y",this.frameMarginLeft-this.yLabelXOffset).attr("fill","#888").text(`${this.colorMetric}`),e.append("text").attr("id","x-label").attr("class","x label").attr("text-anchor","middle").attr("x",this.frameWidth/2).attr("y",this.frameHeight+this.frameMarginTop+this.xLabelYOffset).attr("fill","#888").text(`Quantiles (% of ${this.colorMetric})`)}drawAreas(e,i){const r=i(this.isAttributeDirectionInverted?this.calculateReversedPercentileFromMetricValue(this.currentRightValue):this.calculatePercentileFromMetricValue(this.currentLeftValue)),s=i(this.isAttributeDirectionInverted?this.calculateReversedPercentileFromMetricValue(this.currentLeftValue):this.calculatePercentileFromMetricValue(this.currentRightValue));e.append("rect").attr("class","left-area").attr("x",this.framePadding).attr("width",r).attr("height",this.frameHeight).style("fill",this.isAttributeDirectionInverted?this.rightColor:this.leftColor).style("fill-opacity","0.3"),e.append("rect").attr("class","middle-area").attr("x",r+this.framePadding).attr("width",s-r).attr("height",this.frameHeight).style("fill",this.middleColor).style("fill-opacity","0.3"),e.append("rect").attr("class","right-area").attr("x",s+this.framePadding).attr("width",this.frameWidth-2*this.framePadding-s).attr("height",this.frameHeight).style("fill",this.isAttributeDirectionInverted?this.leftColor:this.rightColor).style("fill-opacity","0.3")}drawLine(e){e.append("path").attr("id","diagram-path").datum(this.percentileRanks).attr("fill","none").attr("stroke","#888").attr("stroke-width",1).attr("d",function uxe(n,t){var e=Cx(!0),i=null,r=rxe,s=null,l=function lxe(n){let t=3;return n.digits=function(e){if(!arguments.length)return t;if(null==e)t=null;else{const i=Math.floor(e);if(!(i>=0))throw new RangeError(`invalid digits: ${e}`);t=i}return n},()=>new BP(t)}(u);function u(f){var p,_,w,m=(f=function ixe(n){return"object"==typeof n&&"length"in n?n:Array.from(n)}(f)).length,b=!1;for(null==i&&(s=r(w=l())),p=0;p<=m;++p)!(pthis.createXScale()(i.x)).y(i=>this.createYScale()(i.y))).attr("transform",`translate(${this.framePadding}, ${this.framePadding})`)}calculatePercentileRanks(e){const i=[...new Set(e)].sort((l,u)=>l-u),r=e.length,s=[{x:0,y:i[0]}];for(const l of i){const f=e.filter(p=>p<=l).length/r*100;s.push({x:f,y:l})}return s}calculateReversedPercentileRanks(e){const i=[...new Set(e)].sort((l,u)=>l-u).reverse(),r=e.length,s=[{x:0,y:i[0]}];for(const l of i){const f=e.filter(p=>p>=l).length/r*100;s.push({x:f,y:l})}return s.sort((l,u)=>l.x-u.x)}calculatePercentileFromMetricValue(e){if(e===this.minValue)return 0;if(e===this.maxValue)return 100;let i=null;for(const r of this.percentileRanks){if(!(r.ye))return i;i=r.x}}addCrossHair(e,i,r){const s=e.append("text").attr("class","cross-tooltip").attr("fill","#000").attr("font-size","13px").style("display","none"),l=e.append("line").attr("class","dashed-vertical-line").attr("stroke","#000").attr("stroke-width","0.7px").attr("stroke-dasharray","4").style("display","none"),u=e.append("line").attr("class","straight-vertical-line").attr("stroke","#000").attr("stroke-width","0.7px").style("display","none"),f=e.append("line").attr("class","horizontal-line").attr("stroke","#000").attr("stroke-width","0.7px").style("display","none"),p=e.append("rect").attr("class","mouse-event-rect").attr("width",this.frameWidth).attr("height",this.frameHeight+this.frameMarginBottom/2).attr("fill","none").attr("pointer-events","all");this.addOnMouseMoveEvent(p,i,r,s,l,u,f),this.addOnMouseOutEvent(p,s,l,u,f)}addOnMouseMoveEvent(e,i,r,s,l,u,f){e.on("mousemove",p=>{const m=function nxe(n,t){if(n=function txe(n){let t;for(;t=n.sourceEvent;)n=t;return n}(n),void 0===t&&(t=n.currentTarget),t){var e=t.ownerSVGElement||t;if(e.createSVGPoint){var i=e.createSVGPoint();return i.x=n.clientX,i.y=n.clientY,[(i=i.matrixTransform(t.getScreenCTM().inverse())).x,i.y]}if(t.getBoundingClientRect){var r=t.getBoundingClientRect();return[n.clientX-r.left-t.clientLeft,n.clientY-r.top-t.clientTop]}}return[n.pageX,n.pageY]}(p)[0];let _=Math.round(i.invert(m-this.framePadding));_=Math.max(0,Math.min(_,100));const b=this.percentileToMetricValueMap.get(_),w=r(b)+this.framePadding,F=m{i.style("display","none"),r.style("display","none"),s.style("display","none"),l.style("display","none")})}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-color-range-diagram"]],inputs:{minValue:"minValue",maxValue:"maxValue",colorMetric:"colorMetric",values:"values",currentLeftValue:"currentLeftValue",currentRightValue:"currentRightValue",leftColor:"leftColor",middleColor:"middleColor",rightColor:"rightColor",isAttributeDirectionInverted:"isAttributeDirectionInverted"},standalone:!0,features:[o.OA$,o.aNF],decls:1,vars:0,consts:[["id","cc-range-diagram-container",1,"cc-range-diagram-container"]],template:function(i,r){1&i&&o.nrm(0,"div",0)},styles:["[_nghost-%COMP%]{display:flex;justify-content:center}"]})}}return n})(),yxe=(()=>{class n{transform(e,i,r,s){switch(e){case"positive":return"unary"===s?`${r.minValue} - ${r.maxValue}`:r.minValue===i.from?"-":r.maxValue===i.from?`${r.minValue} to ${this.formatNumber(i.from)}`:`${r.minValue} to ${this.formatNumber(i.from-1)}`;case"neutral":return i.from===i.to?"-":i.to===r.maxValue?`${this.formatNumber(i.from)} to ${this.formatNumber(i.to)}`:`${this.formatNumber(i.from)} to ${this.formatNumber(i.to-1)}`;case"negative":return r.maxValue===i.to?"-":`${this.formatNumber(i.to)} to ${this.formatNumber(r.maxValue)}`;case"positiveDelta":return"+\u0394 positive delta";case"negativeDelta":return"\u2013\u0394 negative delta";case"selected":return"selected";case"outgoingEdge":return"Outgoing Edge";case"incomingEdge":return"Incoming Edge"}}formatNumber(e){return(e||0).toLocaleString()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"mapColorLabel",type:n,pure:!0,standalone:!0})}}return n})();const wxe=n=>[n];let yV=(()=>{class n{constructor(e){this.store=e,this.colorMetric$=this.store.select(Hg),this.mapColors$=this.store.select($w),this.colorRange$=this.store.select(rK),this.nodeMetricRange$=this.store.select(Qg)}handleColorChange(e){this.store.dispatch(Lp({value:{[this.mapColorFor]:e}}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-color-picker-for-map-color"]],inputs:{mapColorFor:"mapColorFor"},standalone:!0,features:[o.aNF],decls:6,vars:17,consts:[[3,"onColorChange","hexColor","labels"]],template:function(i,r){1&i&&(o.j41(0,"cc-labelled-color-picker",0),o.nI1(1,"async"),o.nI1(2,"async"),o.nI1(3,"async"),o.nI1(4,"async"),o.nI1(5,"mapColorLabel"),o.bIt("onColorChange",function(l){return r.handleColorChange(l)}),o.k0s()),2&i&&o.Y8G("hexColor",o.bMT(1,2,r.mapColors$)[r.mapColorFor])("labels",o.eq3(15,wxe,o.ii3(5,10,r.mapColorFor,o.bMT(2,4,r.colorRange$),o.bMT(3,6,r.nodeMetricRange$),o.bMT(4,8,r.colorMetric$))))},dependencies:[e6,zn,yxe],encapsulation:2})}}return n})();const xxe=()=>["appSettings.mapColors.positiveDelta","appSettings.mapColors.negativeDelta","appSettings.mapColors.selected"],Cxe=()=>["appSettings.mapColors.positive","appSettings.mapColors.negative","appSettings.mapColors.neutral","appSettings.mapColors.selected"],Mxe=()=>["appSettings.mapColors.positiveDelta","appSettings.mapColors.negativeDelta"];function Exe(n,t){if(1&n){const e=o.RV6();o.j41(0,"div"),o.nrm(1,"cc-metric-color-range-slider",4),o.nI1(2,"async"),o.nI1(3,"async"),o.nI1(4,"async"),o.nI1(5,"async"),o.nI1(6,"async"),o.nI1(7,"async"),o.nI1(8,"async"),o.nI1(9,"async"),o.nrm(10,"cc-reset-settings-button",5)(11,"cc-metric-color-range-diagram",6),o.nI1(12,"async"),o.nI1(13,"async"),o.nI1(14,"async"),o.nI1(15,"async"),o.nI1(16,"async"),o.nI1(17,"async"),o.nI1(18,"async"),o.nI1(19,"async"),o.nI1(20,"async"),o.nI1(21,"async"),o.j41(22,"mat-form-field",7)(23,"mat-label"),o.EFF(24,"Gradient Mode"),o.k0s(),o.j41(25,"mat-select",8),o.nI1(26,"async"),o.bIt("selectionChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleColorModeChange(r.value))}),o.j41(27,"div",9),o.bIt("mousedown",function(r){return o.eBV(e),o.Njj(r.stopPropagation())}),o.j41(28,"mat-option",10),o.EFF(29,"Absolute"),o.k0s(),o.j41(30,"mat-option",11),o.EFF(31,"Focused Gradient"),o.k0s(),o.j41(32,"mat-option",12),o.EFF(33,"Weighted Gradient"),o.k0s(),o.j41(34,"mat-option",13),o.EFF(35,"True Gradient"),o.k0s()()()()()}if(2&n){const e=o.XpG();o.R7$(),o.Y8G("minValue",o.bMT(2,22,e.sliderValues$).min)("maxValue",o.bMT(3,24,e.sliderValues$).max)("currentLeftValue",o.bMT(4,26,e.sliderValues$).from)("currentRightValue",o.bMT(5,28,e.sliderValues$).to)("leftColor",o.bMT(6,30,e.sliderColors$).leftColor)("middleColor",o.bMT(7,32,e.sliderColors$).middleColor)("rightColor",o.bMT(8,34,e.sliderColors$).rightColor)("handleValueChange",e.handleValueChange)("isAttributeDirectionInversed",o.bMT(9,36,e.isAttributeDescriptionInversed$)),o.R7$(9),o.Y8G("settingsKeys",o.lJ4(60,Mxe))("callback",e.resetColorRange),o.R7$(),o.Y8G("minValue",o.bMT(12,38,e.sliderValues$).min)("maxValue",o.bMT(13,40,e.sliderValues$).max)("currentLeftValue",o.bMT(14,42,e.sliderValues$).from)("currentRightValue",o.bMT(15,44,e.sliderValues$).to)("leftColor",o.bMT(16,46,e.sliderColors$).leftColor)("middleColor",o.bMT(17,48,e.sliderColors$).middleColor)("rightColor",o.bMT(18,50,e.sliderColors$).rightColor)("colorMetric",o.bMT(19,52,e.colorMetric$))("values",o.bMT(20,54,e.sliderValues$).values)("isAttributeDirectionInverted",o.bMT(21,56,e.isAttributeDescriptionInversed$)),o.R7$(14),o.Y8G("value",o.bMT(26,58,e.colorMode$))}}function Sxe(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",1),o.nrm(1,"cc-color-picker-for-map-color",0),o.j41(2,"mat-checkbox",14),o.nI1(3,"async"),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.toggleColorLabel(r,"positive"))}),o.EFF(4,"Show labels"),o.k0s()(),o.j41(5,"div",1),o.nrm(6,"cc-color-picker-for-map-color",0),o.j41(7,"mat-checkbox",14),o.nI1(8,"async"),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.toggleColorLabel(r,"neutral"))}),o.EFF(9,"Show labels"),o.k0s()(),o.j41(10,"div",1),o.nrm(11,"cc-color-picker-for-map-color",0),o.j41(12,"mat-checkbox",14),o.nI1(13,"async"),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.toggleColorLabel(r,"negative"))}),o.EFF(14,"Show labels"),o.k0s()()}if(2&n){const e=o.XpG();o.R7$(),o.Y8G("mapColorFor","positive"),o.R7$(),o.Y8G("checked",o.bMT(3,6,e.colorLabels$).positive),o.R7$(4),o.Y8G("mapColorFor","neutral"),o.R7$(),o.Y8G("checked",o.bMT(8,8,e.colorLabels$).neutral),o.R7$(4),o.Y8G("mapColorFor","negative"),o.R7$(),o.Y8G("checked",o.bMT(13,10,e.colorLabels$).negative)}}function Txe(n,t){1&n&&o.nrm(0,"cc-color-picker-for-map-color",0)(1,"cc-color-picker-for-map-color",0),2&n&&(o.Y8G("mapColorFor","positiveDelta"),o.R7$(),o.Y8G("mapColorFor","negativeDelta"))}function Ixe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-checkbox",14),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleIsColorRangeInvertedChange(r.checked))}),o.EFF(1,"Invert Colors"),o.k0s()}if(2&n){const e=o.XpG();o.Y8G("checked",e.isColorRangeInverted)}}function Fxe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-checkbox",14),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleAreDeltaColorsInverted(r.checked))}),o.EFF(1,"Invert Colors"),o.k0s()}if(2&n){const e=o.XpG();o.Y8G("checked",e.areDeltaColorsInverted)}}let Dxe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.colorMode$=this.store.select(Sq),this.colorLabels$=this.store.select(nK),this.colorMetric$=this.store.select(Hg),this.isDeltaState$=this.store.select(Wp),this.sliderValues$=this.store.select(Lbe),this.sliderColors$=this.store.select(Nbe),this.isAttributeDescriptionInversed$=this.checkIsAttributeDirectionReversed(),this.isColorRangeInverted=!1,this.areDeltaColorsInverted=!1,this.newLeftValue=null,this.newRightValue=null,this.handleValueChange=({newLeftValue:r,newRightValue:s})=>{this.newLeftValue=r??this.newLeftValue,this.newRightValue=s??this.newRightValue,this.updateColorRangeDebounced()},this.updateColorRangeDebounced=Zh(()=>{const r={};null!==this.newLeftValue&&(r.from=this.newLeftValue),null!==this.newRightValue&&(r.to=this.newRightValue),this.store.dispatch(Qp({value:r})),this.newLeftValue=null,this.newRightValue=null},400),this.resetInvertColorCheckboxes=()=>{this.isColorRangeInverted=!1,this.areDeltaColorsInverted=!1},this.resetColorRange=()=>{const r=Qg(this.state.getValue());this.store.dispatch(Qp({value:H7(r)}))}}checkIsAttributeDirectionReversed(){return this.colorMetric$.pipe((0,Xn.T)(e=>1===this.state.getValue().fileSettings.attributeDescriptors[e]?.direction))}handleColorModeChange(e){this.store.dispatch(sx({value:e}))}toggleColorLabel(e,i){this.store.dispatch(o2({value:{[i]:e.checked}}))}handleIsColorRangeInvertedChange(e){this.isColorRangeInverted=e,this.store.dispatch(F3())}handleAreDeltaColorsInverted(e){this.areDeltaColorsInverted=e,this.store.dispatch(D3())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Vi))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-color-settings-panel"]],standalone:!0,features:[o.aNF],decls:13,vars:18,consts:[[3,"mapColorFor"],[1,"color-row"],["tooltip","Reset color values to default","label","Reset colors",3,"settingsKeys","callback"],[3,"checked"],[3,"minValue","maxValue","currentLeftValue","currentRightValue","leftColor","middleColor","rightColor","handleValueChange","isAttributeDirectionInversed"],["tooltip","Reset slider thresholds to default","label","Reset thresholds",3,"settingsKeys","callback"],[3,"minValue","maxValue","currentLeftValue","currentRightValue","leftColor","middleColor","rightColor","colorMetric","values","isAttributeDirectionInverted"],["appearance","outline","subscriptSizing","dynamic",1,"gradient-mode-selector"],[3,"selectionChange","value"],[3,"mousedown"],["value","absolute"],["value","focusedGradient"],["value","weightedGradient"],["value","trueGradient"],[3,"change","checked"]],template:function(i,r){1&i&&(o.DNE(0,Exe,36,61,"div"),o.nI1(1,"async"),o.nI1(2,"async"),o.DNE(3,Sxe,15,12),o.nI1(4,"async"),o.DNE(5,Txe,2,2),o.nrm(6,"cc-color-picker-for-map-color",0),o.j41(7,"div",1),o.nrm(8,"cc-reset-settings-button",2),o.nI1(9,"async"),o.DNE(10,Ixe,2,1,"mat-checkbox",3),o.nI1(11,"async"),o.DNE(12,Fxe,2,1,"mat-checkbox",3),o.k0s()),2&i&&(o.vxM(o.bMT(1,6,r.isDeltaState$)||"unary"===o.bMT(2,8,r.colorMetric$)?-1:0),o.R7$(3),o.vxM(o.bMT(4,10,r.isDeltaState$)?5:3),o.R7$(3),o.Y8G("mapColorFor","selected"),o.R7$(2),o.Y8G("settingsKeys",o.bMT(9,12,r.isDeltaState$)?o.lJ4(16,xxe):o.lJ4(17,Cxe))("callback",r.resetInvertColorCheckboxes),o.R7$(2),o.vxM(o.bMT(11,14,r.isDeltaState$)?12:10))},dependencies:[Obe,S2,vxe,Lu,Nu,e0,yd,yV,fv,zn],styles:[".gradient-mode-selector[_ngcontent-%COMP%]{--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-height: 16px;margin:5px 10px;width:93%}.color-row[_ngcontent-%COMP%]{display:flex;align-items:center}cc-color-picker-for-map-color[_ngcontent-%COMP%]{width:50%}cc-reset-settings-button[_ngcontent-%COMP%]{width:50%}"]})}}return n})();const wV=sn(ko,n=>n.isEdgeMetricVisible);function Bxe(n,t){1&n&&(o.j41(0,"cc-rounded-box"),o.nrm(1,"cc-metric-chooser-type",3),o.EFF(2),o.k0s()),2&n&&(o.R7$(),o.Y8G("metricFor","edgeMetric"),o.R7$(),o.SpI(" ",t," "))}function kxe(n,t){if(1&n&&(o.j41(0,"cc-metric-chooser",1),o.nI1(1,"async"),o.j41(2,"div",2),o.DNE(3,Bxe,3,2,"cc-rounded-box"),o.nI1(4,"async"),o.k0s()()),2&n){let e;const i=o.XpG();o.AVh("is-edge-metric-disabled",!o.bMT(1,6,i.isEdgeMetricVisible$)),o.Y8G("selectedMetricName",t)("searchPlaceholder","Edge Metric (highest value)")("handleMetricChanged",i.handleEdgeMetricChanged),o.R7$(3),o.vxM((e=o.bMT(4,8,i.edgeValue$))?3:-1,e)}}let Rxe=(()=>{class n{constructor(e,i){this.store=e,this.nodeSelectionService=i,this.edgeValue$=this.createEdgeValue(),this.edgeMetric$=this.store.select(Xp),this.isEdgeMetricVisible$=this.store.select(wV),this.formatHoveredEdgeValue=(r,s)=>{if(!s)return null;const l=s.edgeAttributes[r];return l?`${this.formatValue(l.incoming)} / ${this.formatValue(l.outgoing)}`:null},this.formatValue=r=>"number"==typeof r?r.toLocaleString():"-"}handleEdgeMetricChanged(e){this.store.dispatch(zp({value:e}))}createEdgeValue(){return d0([this.store.select(Xp),this.nodeSelectionService.createNodeObservable()]).pipe((0,Xn.T)(([e,i])=>this.formatHoveredEdgeValue(e,i)))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(k7))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-edge-metric-chooser"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[["icon","fa-exchange","type","edge","title","Change edge metric",3,"is-edge-metric-disabled","selectedMetricName","searchPlaceholder","handleMetricChanged"],["icon","fa-exchange","type","edge","title","Change edge metric",3,"selectedMetricName","searchPlaceholder","handleMetricChanged"],["hoveredInformation","",1,"cc-metric-chooser-container"],["attributeType","edges",3,"metricFor"]],template:function(i,r){if(1&i&&(o.DNE(0,kxe,5,10,"cc-metric-chooser",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.edgeMetric$))?0:-1,s)}},dependencies:[D2,ZW,uX,zn],styles:["cc-rounded-box[_ngcontent-%COMP%]{position:absolute;top:10%;right:28px}"]})}}return n})();const Pxe=sn(ko,n=>n.edgeHeight),Oxe=sn(ko,n=>n.showOnlyBuildingsWithEdges),Nxe=sn(ka,Xp,(n,t)=>n.nodeEdgeMetricsMap.get(t)?.size??0);let Lxe=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.isEdgeMetricVisible$=this.store.select(wV)}toggleEdgeMetric(){this.store.dispatch(bR())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-edge-metric-toggle"]],standalone:!0,features:[o.aNF],decls:3,vars:3,consts:[[1,"edgeMetricCheckbox",3,"change","checked"]],template:function(i,r){1&i&&(o.j41(0,"mat-checkbox",0),o.nI1(1,"async"),o.bIt("change",function(){return r.toggleEdgeMetric()}),o.EFF(2," Disable edge metric\n"),o.k0s()),2&i&&o.Y8G("checked",!o.bMT(1,1,r.isEdgeMetricVisible$))},dependencies:[fv,zn],encapsulation:2})}}return n})();const Uxe=()=>["appSettings.showOnlyBuildingsWithEdges","appSettings.amountOfEdgePreviews","appSettings.edgeHeight"];let Vxe=(()=>{class n{constructor(e){this.store=e,this.amountOfBuildingsWithSelectedEdgeMetric$=this.store.select(Nxe),this.edgePreviewLabel$=this.amountOfBuildingsWithSelectedEdgeMetric$.pipe((0,Xn.T)(i=>`Preview the edges of up to ${i} buildings with the highest amount of incoming and outgoing edges`)),this.amountOfEdgePreviews$=this.store.select(sX),this.edgeHeight$=this.store.select(Pxe),this.showOnlyBuildingsWithEdges$=this.store.select(Oxe),this.applySettingsAmountOfEdgePreviews=i=>{this.store.dispatch(M2({value:i}))},this.applySettingsEdgeHeight=i=>{this.store.dispatch(ax({value:i}))}}applyShowOnlyBuildingsWithEdges(e){this.store.dispatch(m2({value:e.checked}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-edge-settings-panel"]],standalone:!0,features:[o.aNF],decls:17,vars:35,consts:[[3,"title","label","value","onChange","min","max","disabled"],["title","Adjust the curve height",3,"label","value","onChange","min","max","disabled"],[1,"wrapper"],[3,"mapColorFor"],[3,"change","checked","disabled"],["tooltip","Reset edge metric settings to their defaults","label","Reset edge metric settings",3,"settingsKeys"]],template:function(i,r){1&i&&(o.nrm(0,"cc-slider",0),o.nI1(1,"async"),o.nI1(2,"async"),o.nI1(3,"async"),o.nI1(4,"async"),o.nrm(5,"cc-slider",1),o.nI1(6,"async"),o.nI1(7,"async"),o.j41(8,"div",2),o.nrm(9,"cc-color-picker-for-map-color",3)(10,"cc-color-picker-for-map-color",3),o.k0s(),o.j41(11,"mat-checkbox",4),o.nI1(12,"async"),o.nI1(13,"async"),o.bIt("change",function(l){return r.applyShowOnlyBuildingsWithEdges(l)}),o.EFF(14," Only show nodes with edges\n"),o.k0s(),o.nrm(15,"cc-edge-metric-toggle")(16,"cc-reset-settings-button",5)),2&i&&(o.Y8G("title",o.bMT(1,18,r.edgePreviewLabel$))("label","Preview")("value",o.bMT(2,20,r.amountOfEdgePreviews$))("onChange",r.applySettingsAmountOfEdgePreviews)("min",0)("max",o.bMT(3,22,r.amountOfBuildingsWithSelectedEdgeMetric$))("disabled",0===o.bMT(4,24,r.amountOfBuildingsWithSelectedEdgeMetric$)),o.R7$(5),o.Y8G("label","Height")("value",o.bMT(6,26,r.edgeHeight$))("onChange",r.applySettingsEdgeHeight)("min",1)("max",9)("disabled",0===o.bMT(7,28,r.amountOfBuildingsWithSelectedEdgeMetric$)),o.R7$(4),o.Y8G("mapColorFor","outgoingEdge"),o.R7$(),o.Y8G("mapColorFor","incomingEdge"),o.R7$(),o.Y8G("checked",o.bMT(12,30,r.showOnlyBuildingsWithEdges$))("disabled",0===o.bMT(13,32,r.amountOfBuildingsWithSelectedEdgeMetric$)),o.R7$(5),o.Y8G("settingsKeys",o.lJ4(34,Uxe)))},dependencies:[GR,yV,fv,Lxe,S2,zn],encapsulation:2})}}return n})();function Hxe(n,t){1&n&&(o.j41(0,"mat-card",8),o.nrm(1,"cc-link-color-metric-to-height-metric-button"),o.k0s(),o.j41(2,"cc-ribbon-bar-panel",9),o.nrm(3,"cc-color-metric-chooser"),o.j41(4,"cc-ribbon-bar-panel-settings"),o.nrm(5,"cc-color-settings-panel",4),o.k0s()()),2&n&&(o.R7$(2),o.Y8G("separator",!0))}function Qxe(n,t){1&n&&(o.j41(0,"cc-ribbon-bar-panel",6),o.nrm(1,"cc-edge-metric-chooser"),o.j41(2,"cc-ribbon-bar-panel-settings"),o.nrm(3,"cc-edge-settings-panel",4),o.k0s()()),2&n&&o.Y8G("separator",!0)}function zxe(n,t){1&n&&(o.j41(0,"cc-ribbon-bar-panel",7)(1,"div",10),o.nrm(2,"i",11),o.j41(3,"span"),o.EFF(4,"Color Settings"),o.k0s()(),o.j41(5,"cc-ribbon-bar-panel-settings"),o.nrm(6,"cc-color-settings-panel",4),o.k0s()()),2&n&&o.Y8G("separator",!0)("isHeaderExpandable",!0)}let Gxe=(()=>{class n{constructor(e){this.store=e,this.isDeltaState$=this.store.select(Wp),this.hasEdgeMetric$=this.store.select(ka).pipe((0,Xn.T)(i=>i.edgeMetricData.length>0))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-ribbon-bar"]],standalone:!0,features:[o.aNF],decls:21,vars:11,consts:[["id","scenario-card","title","Metric Scenarios"],["id","custom-configs-card","title","Custom Views"],["id","ai-card","title","Suspicious Metrics"],["id","area-metric-card","title","Area Metric Options",1,"ribbon-bar-panel-wide",3,"separator"],[1,"cc-metric-settings-panel"],["id","height-metric-card","title","Height Metric Options",1,"ribbon-bar-panel-wide",3,"separator"],["id","edge-metric-card","title","Edge Metric Options",1,"ribbon-bar-panel-wide",3,"separator"],["id","color-settings-card",1,"ribbon-bar-panel-wide",3,"separator","isHeaderExpandable"],["appearance","outlined",1,"color-height-metric-link"],["id","color-metric-card","title","Color Metric Options",1,"ribbon-bar-panel-wide",3,"separator"],[1,"color-settings-header","toggleHeader"],[1,"fa","fa-paint-brush","color-icon"]],template:function(i,r){1&i&&(o.nrm(0,"cc-search-panel"),o.j41(1,"cc-ribbon-bar-panel",0),o.nrm(2,"cc-show-scenarios-button"),o.k0s(),o.j41(3,"cc-ribbon-bar-panel",1),o.nrm(4,"cc-custom-configs"),o.k0s(),o.j41(5,"cc-ribbon-bar-panel",2),o.nrm(6,"cc-artificial-intelligence"),o.k0s(),o.j41(7,"cc-ribbon-bar-panel",3),o.nrm(8,"cc-area-metric-chooser"),o.j41(9,"cc-ribbon-bar-panel-settings"),o.nrm(10,"cc-area-settings-panel",4),o.k0s()(),o.j41(11,"cc-ribbon-bar-panel",5),o.nrm(12,"cc-height-metric-chooser"),o.j41(13,"cc-ribbon-bar-panel-settings"),o.nrm(14,"cc-height-settings-panel",4),o.k0s()(),o.DNE(15,Hxe,6,1),o.nI1(16,"async"),o.DNE(17,Qxe,4,1,"cc-ribbon-bar-panel",6),o.nI1(18,"async"),o.DNE(19,zxe,7,2,"cc-ribbon-bar-panel",7),o.nI1(20,"async")),2&i&&(o.R7$(7),o.Y8G("separator",!0),o.R7$(4),o.Y8G("separator",!0),o.R7$(4),o.vxM(o.bMT(16,5,r.isDeltaState$)?-1:15),o.R7$(2),o.vxM(o.bMT(18,7,r.hasEdgeMetric$)?17:-1),o.R7$(2),o.vxM(o.bMT(20,9,r.isDeltaState$)?19:-1))},dependencies:[Yge,P7,c0e,A_e,abe,lbe,R7,dbe,ube,vbe,e2,ybe,wbe,Dxe,Rxe,Vxe,zn],styles:["[_nghost-%COMP%]{position:fixed;z-index:10;width:100%;display:flex;flex-wrap:nowrap}cc-ribbon-bar-panel[_ngcontent-%COMP%]{flex:0}cc-ribbon-bar-panel.ribbon-bar-panel-wide[_ngcontent-%COMP%]{flex-grow:1}cc-ribbon-bar-panel[_ngcontent-%COMP%] cc-ribbon-bar-panel-settings[_ngcontent-%COMP%]{font-size:.9em;left:0;right:auto}cc-ribbon-bar-panel[_ngcontent-%COMP%]:last-child cc-ribbon-bar-panel-settings[_ngcontent-%COMP%]{left:auto;right:0}mat-card.color-height-metric-link[_ngcontent-%COMP%]{display:flex;justify-content:center;flex-grow:0;padding:0;height:46px;border-radius:0;border-top:1px solid #cdcdcd}.color-settings-header[_ngcontent-%COMP%]{display:flex;gap:8px;line-height:24px;align-items:baseline}"]})}}return n})();const yv=()=>new d3({color:16580095}),Ex=()=>new d3({color:16580095}),RP=()=>new d3({color:16580095});class z2{static buildCube(t){const e=1/t,i=(1-e)/2,r=new jc(e,i,i),s=new jc(i,e+i,i),l=new jc(i,i,i),u=new jc(e,e,i),f=new jc(e,e+i,i);return z2.newBuildCubeGroup(r,s,l,u,f)}static newBuildCubeGroup(t,e,i,r,s){const l=new lc,{group:u,frontLeft:f,frontCenter:p,frontRight:m,middleLeft:_,middleCenter:b,middleRight:w,backLeft:F,backCenter:D,backRight:T}=z2.buildCubeTopFace(t,i,r);l.add(u);const{group:I,frontLeftEdge:O,frontCenterFace:R,frontRightEdge:P,middleLeftFace:ee,middleRightFace:J,backLeftEdge:te,backCenterFace:ie,backRightEdge:W}=z2.buildCubeSides(e,s);return l.add(I),{group:l,top:{front:{left:f,center:p,right:m},middle:{left:_,center:b,right:w},back:{left:F,center:D,right:T}},sides:{front:{left:O,center:R,right:P},middle:{left:ee,right:J},back:{left:te,center:ie,right:W}}}}static buildCubeTopFace(t,e,i){const r=new dr(e,RP()),s=new dr(t,yv()),l=new dr(e,RP()),u=new dr(t,yv()),f=new dr(i,Ex()),p=new dr(t,Ex()),m=new dr(e,RP()),_=new dr(t,yv()),b=new dr(e,RP()),w=i.parameters.height/2+e.parameters.height/2;r.position.x-=w,r.position.y-=w,s.position.y-=w,l.position.x+=w,l.position.y-=w,u.position.x-=w,u.rotation.z=Math.PI/2,p.position.x+=w,p.rotation.z=Math.PI/2,m.position.x-=w,m.position.y+=w,_.position.y+=w,b.position.x+=w,b.position.y+=w;const F=new lc;return F.rotation.x=Math.PI/2,F.position.y+=w,F.add(r),F.add(s),F.add(l),F.add(u),F.add(f),F.add(p),F.add(m),F.add(_),F.add(b),{group:F,frontLeft:r,frontCenter:s,frontRight:l,middleLeft:u,middleCenter:f,middleRight:p,backLeft:m,backCenter:_,backRight:b}}static buildCubeSides(t,e){const i=new dr(t,yv()),r=new dr(e,Ex()),s=new dr(t,yv()),l=new dr(e,Ex()),u=new dr(e,Ex()),f=new dr(t,yv()),p=new dr(e,Ex()),m=new dr(t,yv()),_=e.parameters.width/2+t.parameters.width/2,b=t.parameters.width/2;i.position.x-=_,i.position.z+=_,r.position.z+=_,s.position.x+=_,s.position.z+=_,l.position.x-=_,l.rotation.y=Math.PI/2,u.position.x+=_,u.rotation.y=Math.PI/2,f.position.x-=_,f.position.z-=_,p.position.z-=_,m.position.x+=_,m.position.z-=_;const w=new lc;return w.position.y-=b,w.add(i),w.add(r),w.add(s),w.add(l),w.add(u),w.add(f),w.add(p),w.add(m),{group:w,frontLeftEdge:i,frontCenterFace:r,frontRightEdge:s,middleLeftFace:l,middleRightFace:u,backLeftEdge:f,backCenterFace:p,backRightEdge:m}}}let jxe=(()=>{class n{constructor(e){this.threeMapControlsService=e}centerMap(){this.threeMapControlsService.autoFitTo()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Rd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-center-map-button"]],standalone:!0,features:[o.aNF],decls:2,vars:0,consts:[["aria-label","Center map in View","title","Center map",1,"cc-shadow",3,"click"],[1,"fa","fa-compass"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.centerMap()}),o.nrm(1,"i",1),o.k0s())},styles:["button[_ngcontent-%COMP%]{position:absolute;right:15px;width:36px;height:36px;font-size:28px;border-radius:100%;color:#fff;background-color:#1b9cfc}button.cc-shadow[_ngcontent-%COMP%]{box-shadow:0 1px 5px #0003!important}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-top:2px}button[_ngcontent-%COMP%]:hover{cursor:pointer;background-color:#0374c9}"]})}}return n})(),$xe=(()=>{class n{constructor(e,i){this.threeMapControlsService=e,this.cdr=i}ngOnInit(){this.maxZoom=this.threeMapControlsService.MAX_ZOOM,this.minZoom=this.threeMapControlsService.MIN_ZOOM,this.threeMapControlsService.zoomPercentage$.subscribe(e=>{this.zoomPercentage=e,this.cdr.detectChanges()})}onInput(e){const r=Number.parseFloat(e.target.value);this.threeMapControlsService.setZoomPercentage(r)}zoomIn(){this.threeMapControlsService.setZoomPercentage(Math.min(this.zoomPercentage+10,this.maxZoom))}zoomOut(){this.threeMapControlsService.setZoomPercentage(Math.max(this.zoomPercentage-10,this.minZoom))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Rd),o.rXU(o.gRc))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-zoom-slider"]],standalone:!0,features:[o.aNF],decls:8,vars:4,consts:[[1,"zoom-slider"],["data-testid","zoomOut",1,"zoom-button",3,"click"],["type","range","id","zoomRange","data-testid","zoomRange",3,"input","min","max","value"],["data-testid","zoomIn",1,"zoom-button",3,"click"],["id","zoomValue"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"button",1),o.bIt("click",function(){return r.zoomOut()}),o.EFF(2,"-"),o.k0s(),o.j41(3,"input",2),o.bIt("input",function(l){return r.onInput(l)}),o.k0s(),o.j41(4,"button",3),o.bIt("click",function(){return r.zoomIn()}),o.EFF(5,"+"),o.k0s(),o.j41(6,"span",4),o.EFF(7),o.k0s()()),2&i&&(o.R7$(3),o.Y8G("min",r.minZoom)("max",r.maxZoom)("value",r.zoomPercentage),o.R7$(4),o.SpI("",null==r.zoomPercentage?null:r.zoomPercentage.toFixed(0),"%"))},styles:['.mat-ripple[_ngcontent-%COMP%]{overflow:hidden;position:relative}.mat-ripple[_ngcontent-%COMP%]:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded[_ngcontent-%COMP%]{overflow:visible}.mat-ripple-element[_ngcontent-%COMP%]{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0,0,.2,1);transform:scale3d(0,0,0);background-color:var(--mat-ripple-color, rgba(0, 0, 0, .1))}.cdk-high-contrast-active[_ngcontent-%COMP%] .mat-ripple-element[_ngcontent-%COMP%], .cdk-drag-preview[_ngcontent-%COMP%] .mat-ripple-element[_ngcontent-%COMP%], .cdk-drag-placeholder[_ngcontent-%COMP%] .mat-ripple-element[_ngcontent-%COMP%]{display:none}.cdk-visually-hidden[_ngcontent-%COMP%]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl][_ngcontent-%COMP%] .cdk-visually-hidden[_ngcontent-%COMP%]{left:auto;right:0}.cdk-overlay-container[_ngcontent-%COMP%], .cdk-global-overlay-wrapper[_ngcontent-%COMP%]{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container[_ngcontent-%COMP%]{position:fixed;z-index:1000}.cdk-overlay-container[_ngcontent-%COMP%]:empty{display:none}.cdk-global-overlay-wrapper[_ngcontent-%COMP%]{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane[_ngcontent-%COMP%]{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing[_ngcontent-%COMP%]{opacity:1}.cdk-high-contrast-active[_ngcontent-%COMP%] .cdk-overlay-backdrop.cdk-overlay-backdrop-showing[_ngcontent-%COMP%]{opacity:.6}.cdk-overlay-dark-backdrop[_ngcontent-%COMP%]{background:#00000052}.cdk-overlay-transparent-backdrop[_ngcontent-%COMP%]{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing[_ngcontent-%COMP%]{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation[_ngcontent-%COMP%]{transition:none}.cdk-overlay-connected-position-bounding-box[_ngcontent-%COMP%]{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock[_ngcontent-%COMP%]{position:fixed;width:100%;overflow-y:scroll}textarea.cdk-textarea-autosize[_ngcontent-%COMP%]{resize:none}textarea.cdk-textarea-autosize-measuring[_ngcontent-%COMP%]{padding:2px 0!important;box-sizing:content-box!important;height:auto!important;overflow:hidden!important}textarea.cdk-textarea-autosize-measuring-firefox[_ngcontent-%COMP%]{padding:2px 0!important;box-sizing:content-box!important;height:0!important}@keyframes _ngcontent-%COMP%_cdk-text-field-autofill-start{}@keyframes _ngcontent-%COMP%_cdk-text-field-autofill-end{}.cdk-text-field-autofill-monitored[_ngcontent-%COMP%]:-webkit-autofill{animation:_ngcontent-%COMP%_cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored[_ngcontent-%COMP%]:not(:-webkit-autofill){animation:_ngcontent-%COMP%_cdk-text-field-autofill-end 0s 1ms}.mat-focus-indicator[_ngcontent-%COMP%]{position:relative}.mat-focus-indicator[_ngcontent-%COMP%]:before{inset:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border:var(--mat-focus-indicator-border-width, 3px) var(--mat-focus-indicator-border-style, solid) var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator[_ngcontent-%COMP%]:focus:before{content:""}.cdk-high-contrast-active[_ngcontent-%COMP%]{--mat-focus-indicator-display: block}.mat-mdc-focus-indicator[_ngcontent-%COMP%]{position:relative}.mat-mdc-focus-indicator[_ngcontent-%COMP%]:before{inset:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-mdc-focus-indicator-display, none);border:var(--mat-mdc-focus-indicator-border-width, 3px) var(--mat-mdc-focus-indicator-border-style, solid) var(--mat-mdc-focus-indicator-border-color, transparent);border-radius:var(--mat-mdc-focus-indicator-border-radius, 4px)}.mat-mdc-focus-indicator[_ngcontent-%COMP%]:focus:before{content:""}.cdk-high-contrast-active[_ngcontent-%COMP%]{--mat-mdc-focus-indicator-display: block}.mat-app-background[_ngcontent-%COMP%]{background-color:var(--mat-app-background-color, var(--mat-app-background, transparent));color:var(--mat-app-text-color, var(--mat-app-on-background, inherit))}.mat-elevation-z0[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z0[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-0, none)}.mat-elevation-z1[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z1[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-1, none)}.mat-elevation-z2[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z2[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-2, none)}.mat-elevation-z3[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z3[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-3, none)}.mat-elevation-z4[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z4[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-4, none)}.mat-elevation-z5[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z5[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-5, none)}.mat-elevation-z6[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z6[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-6, none)}.mat-elevation-z7[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z7[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-7, none)}.mat-elevation-z8[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z8[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-8, none)}.mat-elevation-z9[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z9[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-9, none)}.mat-elevation-z10[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z10[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-10, none)}.mat-elevation-z11[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z11[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-11, none)}.mat-elevation-z12[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z12[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-12, none)}.mat-elevation-z13[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z13[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-13, none)}.mat-elevation-z14[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z14[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-14, none)}.mat-elevation-z15[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z15[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-15, none)}.mat-elevation-z16[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z16[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-16, none)}.mat-elevation-z17[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z17[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-17, none)}.mat-elevation-z18[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z18[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-18, none)}.mat-elevation-z19[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z19[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-19, none)}.mat-elevation-z20[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z20[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-20, none)}.mat-elevation-z21[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z21[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-21, none)}.mat-elevation-z22[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z22[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-22, none)}.mat-elevation-z23[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z23[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-23, none)}.mat-elevation-z24[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z24[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-24, none)}[_ngcontent-%COMP%]:root{--mat-dialog-container-min-width: 500px;--mat-dialog-actions-alignment: flex-end;--mat-toolbar-container-background-color: #1b9cfc;--mat-toolbar-container-text-color: #fff;--mat-text-button-horizontal-padding: 8px}[_ngcontent-%COMP%]:root .mat-mdc-checkbox.mat-accent[_ngcontent-%COMP%]{--mdc-checkbox-selected-checkmark-color: #fff !important}[_ngcontent-%COMP%]:root .cdk-overlay-pane.cc-incompatible-maps-dialog[_ngcontent-%COMP%]{--mdc-dialog-supporting-text-color: $cc-font-color}.zoom-slider[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;width:150px;position:absolute;top:190px;right:26px;margin:10px}.zoom-slider[_ngcontent-%COMP%] .zoom-button[_ngcontent-%COMP%], .zoom-slider[_ngcontent-%COMP%] #zoomValue[_ngcontent-%COMP%]{font-size:10px;color:#737373}.zoom-slider[_ngcontent-%COMP%] .zoom-button.zoom-button[_ngcontent-%COMP%], .zoom-slider[_ngcontent-%COMP%] #zoomValue.zoom-button[_ngcontent-%COMP%]{background:none;border:none;font-size:16px;cursor:pointer;padding:0;margin:0}input[type=range][_ngcontent-%COMP%]{-webkit-appearance:none;color:#737373;width:100px;height:3px;background:#737373;outline:none;opacity:.7;transition:opacity .2s}input[type=range][_ngcontent-%COMP%]::-webkit-slider-thumb{appearance:none;width:3px;height:10px;background:#737373;cursor:pointer}input[type=range][_ngcontent-%COMP%]::-moz-range-thumb{width:3px;height:10px;background:#737373;cursor:pointer}'],changeDetection:0})}}return n})(),qxe=(()=>{class n{constructor(e,i,r){this.elementReference=e,this.threeMapControlsService=i,this.viewCubeMouseEvents=r,this.WIDTH=200,this.HEIGHT=200,this.LENGTH_VIEWCUBE=1,this.hoverInfo={cube:null,originalMaterial:null},this.cubeDefinition={top:null,sides:null},this.onCameraChanged=s=>{const l=this.calculateCameraPosition(s.camera);this.setCameraPosition(l),this.renderer.render(this.scene,this.camera)},this.onCubeHovered=s=>{this.hoverInfo={cube:s.cube,originalMaterial:s.cube.material},this.hoverInfo.cube.material.emissive=new vn(16777215),this.renderer.render(this.scene,this.camera)},this.onCubeUnhovered=()=>{this.hoverInfo.cube.material.emissive=new vn(0),this.hoverInfo.cube=null,this.renderer.render(this.scene,this.camera)},this.onCubeClicked=s=>{switch(s.cube){case this.cubeDefinition.top.front.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,-1,1);break;case this.cubeDefinition.top.front.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,-1,1);break;case this.cubeDefinition.top.front.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,-1,1);break;case this.cubeDefinition.top.middle.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,-1,0);break;case this.cubeDefinition.top.middle.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,-1,0);break;case this.cubeDefinition.top.middle.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,-1,0);break;case this.cubeDefinition.top.back.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,-1,-1);break;case this.cubeDefinition.top.back.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,-1,-1);break;case this.cubeDefinition.top.back.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,-1,-1);break;case this.cubeDefinition.sides.front.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,0,-1);break;case this.cubeDefinition.sides.front.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,0,0);break;case this.cubeDefinition.sides.front.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,0,-1);break;case this.cubeDefinition.sides.middle.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,0,0);break;case this.cubeDefinition.sides.middle.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,0,0);break;case this.cubeDefinition.sides.back.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,0,1);break;case this.cubeDefinition.sides.back.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,0,1);break;case this.cubeDefinition.sides.back.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,0,1)}}}ngOnInit(){this.initScene(),this.initLights(),this.initRenderer(this.elementReference.nativeElement),this.initCube(),this.initAxesHelper(),this.initCamera(),this.viewCubeMouseEvents.init(this.cubeGroup,this.camera,this.renderer),this.threeMapControlsService.subscribe("onCameraChanged",this.onCameraChanged),this.viewCubeMouseEvents.subscribe("viewCubeHoveredEvent",this.onCubeHovered),this.viewCubeMouseEvents.subscribe("viewCubeUnHoveredEvent",this.onCubeUnhovered),this.viewCubeMouseEvents.subscribe("viewCubeClicked",this.onCubeClicked)}initAxesHelper(){const e=new vre(1.3),i=-this.LENGTH_VIEWCUBE/2+.01;e.position.x+=i,e.position.y+=i,e.position.z+=i,this.scene.add(e)}initCube(){const{group:e,top:i,sides:r}=z2.buildCube(1.9);this.cubeGroup=e,this.cubeDefinition.top=i,this.cubeDefinition.sides=r;const s=new _re(this.cubeGroup,new vn(0));this.scene.add(this.cubeGroup),this.scene.add(s)}setCameraPosition(e){this.camera.position.set(e.x,e.y,e.z),this.camera.lookAt(0,0,0),this.camera.updateProjectionMatrix()}calculateCameraPosition(e){const i=this.threeMapControlsService.controls.target.clone();return e.position.clone().sub(i).normalize().multiplyScalar(3)}initScene(){this.scene=new Nk}initRenderer(e){this.renderer=new V5({alpha:!0,antialias:!0}),this.renderer.setSize(this.WIDTH,this.HEIGHT),this.renderer.setPixelRatio(window.devicePixelRatio),e.appendChild(this.renderer.domElement)}initCamera(){this.camera=new Js(45,this.WIDTH/this.HEIGHT,.1,1e3),this.camera.position.z=4}initLights(){this.lights=new lc;const e=new EU(7368816,2.8),i=new IS(14737632,1.8);i.position.set(50,10,8).normalize();const r=new IS(14737632,1.8);r.position.set(-50,10,-8).normalize(),this.lights.add(e),this.lights.add(i),this.lights.add(r),this.scene.add(this.lights)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Rd),o.rXU(lX))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-view-cube"]],standalone:!0,features:[o.aNF],decls:2,vars:0,template:function(i,r){1&i&&o.nrm(0,"cc-center-map-button")(1,"cc-zoom-slider")},dependencies:[jxe,$xe],styles:["[_nghost-%COMP%]{transition:right .3s ease;position:absolute;z-index:11;right:0;top:10px}.sideBarVisible[_nghost-%COMP%]{right:350px}"]})}}return n})();const Wxe=sn(u0,n=>{if(n)return{all:n.attributes?.unary??0,added:n.fileCount?.added??0,removed:n.fileCount?.removed??0,changed:n.fileCount?.changed??0}});function Xxe(n,t){if(1&n&&(o.j41(0,"span",2),o.EFF(1," | "),o.j41(2,"span",3),o.EFF(3),o.k0s(),o.EFF(4," | "),o.j41(5,"span",4),o.EFF(6),o.k0s(),o.EFF(7," | "),o.j41(8,"span",5),o.EFF(9),o.k0s()()),2&n){const e=o.XpG();o.R7$(3),o.SpI(" \u0394",e.added,""),o.R7$(3),o.SpI(" \u0394",e.removed>0?-e.removed:0,""),o.R7$(3),o.SpI(" \u0394",e.changed,"")}}function Kxe(n,t){if(1&n&&(o.j41(0,"span",2),o.EFF(1),o.DNE(2,Xxe,10,3,"span",2),o.nI1(3,"async"),o.EFF(4," ) "),o.k0s()),2&n){const e=t,i=o.XpG(2);o.R7$(),o.Lme(" ( ",e.all," ",1===e.all?"file":"files"," "),o.R7$(),o.vxM(null!=i.node.children&&i.node.children.length&&o.bMT(3,3,i.isDeltaMode$)?2:-1)}}function Yxe(n,t){if(1&n&&(o.j41(0,"span",1),o.EFF(1),o.DNE(2,Kxe,5,5,"span",2),o.nI1(3,"async"),o.k0s()),2&n){let e;const i=o.XpG();o.R7$(),o.SpI(" ",i.node.path," "),o.R7$(),o.vxM((e=o.bMT(3,2,(null==i.node.children?null:i.node.children.length)&&i.fileCount$))?2:-1,e)}}let Zxe=(()=>{class n{constructor(e){this.fileCount$=e.select(Wxe),this.isDeltaMode$=e.select(Wp)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-node-path"]],inputs:{node:"node"},standalone:!0,features:[o.aNF],decls:2,vars:1,consts:[[1,"cc-node-path"],[1,"file-path"],[1,"cc-node-file-count"],["title","Number of added files",1,"added-files"],["title","Number of removed files",1,"removed-files"],["title","Number of files with metric changes",1,"files-with-metric-changes"]],template:function(i,r){1&i&&(o.j41(0,"p",0),o.DNE(1,Yxe,4,4,"span",1),o.k0s()),2&i&&(o.R7$(),o.vxM(r.node?1:-1))},dependencies:[zn],styles:[".cc-node-path[_ngcontent-%COMP%]{color:gray;margin:5px 0}.cc-node-path[_ngcontent-%COMP%] .file-path[_ngcontent-%COMP%]{word-wrap:break-word}.cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%]{background:#f0f0f0;border-radius:3px;padding:1px 3px;color:#000}.cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .added-files[_ngcontent-%COMP%]{color:#64d051}.cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .removed-files[_ngcontent-%COMP%]{color:#ff0e0e}.cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .changed-files[_ngcontent-%COMP%]{color:#0e2eff}"]})}}return n})(),PP=(()=>{class n{constructor(e){this.threeSceneService=e,this.isOpen=!1,this.threeSceneService.subscribe("onBuildingSelected",()=>{this.isOpen=!0}),this.threeSceneService.subscribe("onBuildingDeselected",()=>{this.isOpen=!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Dd))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function Jxe(n,t){if(1&n&&(o.j41(0,"div",1)(1,"a",4)(2,"h2"),o.EFF(3),o.k0s(),o.nrm(4,"i",5),o.k0s()()),2&n){const e=o.XpG(2);o.FS9("matTooltip",e.node.link),o.Y8G("matTooltipShowDelay",200),o.R7$(),o.FS9("href",e.node.link,o.B4B),o.R7$(2),o.SpI("",e.node.name,"\xa0")}}function eCe(n,t){if(1&n){const e=o.RV6();o.j41(0,"i",0),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.closeSideBar())}),o.k0s(),o.DNE(1,Jxe,5,4,"div",1),o.j41(2,"p",2),o.EFF(3),o.nI1(4,"removeExtension"),o.k0s(),o.nrm(5,"cc-node-path",3)}if(2&n){const e=o.XpG();o.R7$(),o.vxM(e.node.link?1:-1),o.R7$(2),o.JRh(o.bMT(4,3,e.fileName)),o.R7$(2),o.Y8G("node",e.node)}}let tCe=(()=>{class n{constructor(e){this.isAttributeSideBarVisibleService=e}closeSideBar(){this.isAttributeSideBarVisibleService.isOpen=!1}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(PP))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar-header-section"]],inputs:{node:"node",fileName:"fileName"},standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[1,"close-icon","fa","fa-times",3,"click"],["data-testid","file-link",1,"node-name",3,"matTooltip","matTooltipShowDelay"],[1,"node-origin"],[3,"node"],["target","_blank","rel","noopener noreferrer",1,"node-link",3,"href"],[1,"fa","fa-external-link"]],template:function(i,r){1&i&&o.DNE(0,eCe,6,5),2&i&&o.vxM(r.node?0:-1)},dependencies:[y7,Zxe,v7],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}[_nghost-%COMP%] .close-icon[_ngcontent-%COMP%], [_nghost-%COMP%] .node-link[_ngcontent-%COMP%]{color:gray;padding:0;cursor:pointer;outline:none;transition:.2s}[_nghost-%COMP%] .close-icon[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .node-link[_ngcontent-%COMP%]:hover{color:#444}[_nghost-%COMP%] .close-icon[_ngcontent-%COMP%]{align-self:flex-end;font-size:20px}[_nghost-%COMP%] .node-name[_ngcontent-%COMP%]{width:90%;cursor:pointer}[_nghost-%COMP%] .node-name[_ngcontent-%COMP%] .node-link[_ngcontent-%COMP%]{font-size:11pt}[_nghost-%COMP%] .node-name[_ngcontent-%COMP%] .node-link[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{color:#000;display:inline}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%]{color:gray;margin:5px 0}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .file-path[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .file-path[_ngcontent-%COMP%]{word-wrap:break-word}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%]{background:#f0f0f0;border-radius:3px;padding:1px 3px;color:#000}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .added-files[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .added-files[_ngcontent-%COMP%]{color:#64d051}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .removed-files[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .removed-files[_ngcontent-%COMP%]{color:#ff0e0e}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .changed-files[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .changed-files[_ngcontent-%COMP%]{color:#0e2eff}"]})}}return n})();const xV=sn(u0,n=>n&&!Ro(n)),nCe=sn(u0,qR,(n,t)=>{if(n)return{area:{name:t.areaMetric,value:n.attributes[t.areaMetric]},height:{name:t.heightMetric,value:n.attributes[t.heightMetric]},color:{name:t.colorMetric,value:n.attributes[t.colorMetric]},edge:iCe(t.edgeMetric,n)}});function iCe(n,t){return null==n?null:{name:n,incoming:t.edgeAttributes[n]?t.edgeAttributes[n].incoming??0:0,outgoing:t.edgeAttributes[n]?t.edgeAttributes[n].outgoing??0:0}}let CV=(()=>{class n{constructor(e){this.store=e,this.attributeTypes$=this.store.select(OU)}setToAbsolute(){this.setAttributeType(Fc.absolute)}setToRelative(){this.setAttributeType(Fc.relative)}setAttributeType(e){this.store.dispatch(a6({category:this.metricType,name:this.metricName,attributeType:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-type-selector"]],inputs:{metricName:"metricName",metricType:"metricType"},standalone:!0,features:[o.aNF],decls:6,vars:3,consts:[[3,"value"],["title","Select Sum","value","absolute",3,"click"],["title","Select Median","value","relative",3,"click"]],template:function(i,r){if(1&i&&(o.j41(0,"mat-button-toggle-group",0),o.nI1(1,"async"),o.j41(2,"mat-button-toggle",1),o.bIt("click",function(){return r.setToAbsolute()}),o.EFF(3,"\u03a3"),o.k0s(),o.j41(4,"mat-button-toggle",2),o.bIt("click",function(){return r.setToRelative()}),o.EFF(5,"x\u0342"),o.k0s()()),2&i){let s;o.Y8G("value",null!==(s=o.bMT(1,1,r.attributeTypes$)[r.metricType][r.metricName])&&void 0!==s?s:"absolute")}},dependencies:[L7,JR,zn],encapsulation:2})}}return n})();function rCe(n,t){if(1&n&&(o.j41(0,"span"),o.nI1(1,"async"),o.EFF(2),o.nI1(3,"number"),o.k0s()),2&n){const e=t,i=o.XpG();o.xc7("color",o.bMT(1,3,i.mapColors$)[e>0?"positiveDelta":"negativeDelta"]),o.R7$(2),o.SpI(" \u0394",o.i5U(3,5,e,"1.1-2")," ")}}let _Y=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.selectedNode$=this.store.select(u0),this.mapColors$=this.store.select($w)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-delta-selected"]],inputs:{metricName:"metricName"},standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"color"]],template:function(i,r){if(1&i&&(o.DNE(0,rCe,4,8,"span",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=null==(s=o.bMT(1,1,r.selectedNode$))||null==s.deltas?null:s.deltas[r.metricName])?0:-1,s)}},dependencies:[zn,qu],styles:["[_nghost-%COMP%]:has(span){margin-top:5px}"]})}}return n})();function oCe(n,t){if(1&n&&o.nrm(0,"cc-attribute-type-selector",2),2&n){const e=o.XpG();o.Y8G("metricName",e.metric.name)("metricType","nodes")}}function sCe(n,t){if(1&n&&(o.j41(0,"a",5),o.EFF(1),o.nrm(2,"i",7),o.k0s()),2&n){const e=o.XpG();o.Y8G("href",t,o.B4B),o.R7$(),o.SpI(" ",e.metric.name," ")}}function aCe(n,t){if(1&n&&(o.j41(0,"span",6),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.JRh(e.metric.name)}}let lCe=(()=>{class n{constructor(e){this.showAttributeTypeSelector$=e.select(xV)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar-primary-metric"]],inputs:{iconName:"iconName",metric:"metric",metricLink:"metricLink"},standalone:!0,features:[o.aNF],decls:11,vars:11,consts:[[1,"primary-metric-box"],[1,"primary-metric-row"],[1,"attribute-type-select",3,"metricName","metricType"],[1,"primary-metric-value"],[3,"metricName"],["target","_blank",1,"metric-name",3,"href"],[1,"metric-name"],[1,"fa","fa-external-link"]],template:function(i,r){if(1&i&&(o.j41(0,"div",0)(1,"div",1),o.nrm(2,"i"),o.DNE(3,oCe,1,2,"cc-attribute-type-selector",2),o.nI1(4,"async"),o.j41(5,"span",3),o.EFF(6),o.nI1(7,"number"),o.k0s()(),o.nrm(8,"cc-metric-delta-selected",4),o.DNE(9,sCe,3,2,"a",5)(10,aCe,2,1,"span",6),o.k0s()),2&i){let s;o.R7$(2),o.HbH(r.iconName),o.R7$(),o.vxM(o.bMT(4,6,r.showAttributeTypeSelector$)?3:-1),o.R7$(3),o.JRh(o.i5U(7,8,r.metric.value,"1.0-0")),o.R7$(2),o.Y8G("metricName",r.metric.name),o.R7$(),o.vxM((s=r.metricLink)?9:10,s)}},dependencies:[CV,_Y,zn,qu],styles:[".primary-metric-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%}.primary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.metric-name[_ngcontent-%COMP%]{margin-top:5px;color:gray;word-break:break-word;vertical-align:middle}.primary-metric-value[_ngcontent-%COMP%]{margin-right:-5px}i.fa[_ngcontent-%COMP%]{font-size:12pt;min-width:17px;text-align:center}"]})}}return n})();function cCe(n,t){if(1&n&&o.nrm(0,"cc-attribute-type-selector",8),2&n){const e=o.XpG();o.Y8G("metricName",e.name)("metricType","edges")}}function dCe(n,t){if(1&n&&(o.j41(0,"a",10),o.EFF(1),o.nrm(2,"i",12),o.k0s()),2&n){const e=o.XpG();o.Y8G("href",t,o.B4B),o.R7$(),o.SpI(" ",e.name," (in/out) ")}}function uCe(n,t){if(1&n&&(o.j41(0,"span",11),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.SpI("",e.name," (in/out)")}}function hCe(n,t){if(1&n&&(o.j41(0,"td",3),o.nI1(1,"attributeDescriptorTooltip"),o.j41(2,"div",5)(3,"div",6),o.nrm(4,"i",7),o.DNE(5,cCe,1,2,"cc-attribute-type-selector",8),o.nI1(6,"async"),o.j41(7,"span",9),o.EFF(8),o.nI1(9,"number"),o.j41(10,"span"),o.EFF(11,"/"),o.k0s(),o.EFF(12),o.nI1(13,"number"),o.k0s()(),o.DNE(14,dCe,3,2,"a",10)(15,uCe,2,1,"span",11),o.k0s()()),2&n){let e;const i=t,r=o.XpG(2),s=o.XpG();o.Y8G("title",o.i5U(1,5,r[i.name],i.name)),o.R7$(5),o.vxM(o.bMT(6,8,s.showAttributeTypeSelector$)?5:-1),o.R7$(3),o.SpI(" ",o.i5U(9,10,i.incoming,"1.0-0")," "),o.R7$(4),o.SpI(" ",o.i5U(13,13,i.outgoing,"1.0-0")," "),o.R7$(2),o.vxM((e=null==r[i.name]?null:r[i.name].link)?14:15,e)}}function fCe(n,t){1&n&&(o.j41(0,"td")(1,"span",11),o.EFF(2,"No edge metric available"),o.k0s()())}function pCe(n,t){if(1&n&&(o.j41(0,"table",1)(1,"th",2),o.EFF(2,"Primary Metrics"),o.k0s(),o.j41(3,"tr")(4,"td",3),o.nI1(5,"attributeDescriptorTooltip"),o.nrm(6,"cc-attribute-side-bar-primary-metric",4),o.k0s(),o.j41(7,"td",3),o.nI1(8,"attributeDescriptorTooltip"),o.nrm(9,"cc-attribute-side-bar-primary-metric",4),o.k0s()(),o.j41(10,"tr")(11,"td",3),o.nI1(12,"attributeDescriptorTooltip"),o.nrm(13,"cc-attribute-side-bar-primary-metric",4),o.k0s(),o.DNE(14,hCe,16,16,"td",3)(15,fCe,3,0,"td"),o.k0s()()),2&n){let e;const i=t,r=o.XpG();o.R7$(4),o.Y8G("title",o.i5U(5,13,r[i.area.name],i.area.name)),o.R7$(2),o.Y8G("iconName","fa fa-arrows-alt")("metric",i.area)("metricLink",null==r[i.area.name]?null:r[i.area.name].link),o.R7$(),o.Y8G("title",o.i5U(8,16,r[i.height.name],i.height.name)),o.R7$(2),o.Y8G("iconName","fa fa-arrows-v")("metric",i.height)("metricLink",null==r[i.height.name]?null:r[i.height.name].link),o.R7$(2),o.Y8G("title",o.i5U(12,19,r[i.color.name],i.color.name)),o.R7$(2),o.Y8G("iconName","fa fa-paint-brush")("metric",i.color)("metricLink",null==r[i.color.name]?null:r[i.color.name].link),o.R7$(),o.vxM((e=i.edge)?14:15,e)}}function ACe(n,t){if(1&n&&(o.j41(0,"div",0),o.DNE(1,pCe,16,22,"table",1),o.nI1(2,"async"),o.k0s()),2&n){let e;const i=o.XpG();o.R7$(),o.vxM((e=o.bMT(2,1,i.primaryMetrics$))?1:-1,e)}}let mCe=(()=>{class n{constructor(e){this.store=e,this.primaryMetrics$=this.store.select(nCe),this.showAttributeTypeSelector$=this.store.select(xV),this.attributeDescriptors$=this.store.select($R)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar-primary-metrics"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[1,"metric-box"],["aria-hidden","true",1,"primary-metrics"],["scope","col"],[3,"title"],[3,"iconName","metric","metricLink"],[1,"primary-metric-box"],[1,"primary-metric-row"],[1,"fa","fa-exchange"],[1,"attribute-type-select",3,"metricName","metricType"],[1,"text-content"],["target","_blank",1,"metric-name",3,"href"],[1,"metric-name"],[1,"fa","fa-external-link"]],template:function(i,r){if(1&i&&(o.DNE(0,ACe,3,3,"div",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.attributeDescriptors$))?0:-1,s)}},dependencies:[lCe,CV,zn,qu,YR],styles:["[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%], [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%]{font-size:10px;min-width:10px;text-align:center}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:visited{text-decoration:none}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#00f;-webkit-text-decoration:solid;text-decoration:solid;text-decoration-line:underline}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:active, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:active{color:red}.metric-box[_ngcontent-%COMP%]{border-radius:5px;background-color:#f0f0f0;padding:5px}.metric-box.scrollable-content[_ngcontent-%COMP%]{max-height:100%;overflow:auto}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{text-align:left}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%]{table-layout:fixed;width:100%;border-collapse:collapse}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:not(:last-child) td[_ngcontent-%COMP%]{border-bottom:3px solid white}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:5px}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child{border-right:3px solid white}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] .primary-metric-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] .primary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12pt;min-width:17px;text-align:center}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding-left:5px}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child{padding-left:4px}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] .secondary-metric-box[_ngcontent-%COMP%]{border-radius:3px;padding:4px;vertical-align:middle;background:#d5d5d5}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] .secondary-metric-row[_ngcontent-%COMP%]{flex-wrap:nowrap}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] .metric-name[_ngcontent-%COMP%]{color:gray;word-break:break-word;vertical-align:middle;margin-top:5px}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] .delta-value-box[_ngcontent-%COMP%]{vertical-align:middle}.secondary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}"]})}}return n})();const gCe=sn(u0,n=>!!n?.deltas),_Ce=sn(qR,u0,(n,t)=>{if(!t)return[];const e=Object.values(n);return Object.keys(t.attributes).filter(r=>"unary"!==r&&!e.includes(r)).sort((r,s)=>r.localeCompare(s)).map(r=>({name:r,value:t.attributes[r]}))});function bCe(n,t){if(1&n&&o.nrm(0,"cc-attribute-type-selector",8),2&n){const e=o.XpG().$implicit;o.Y8G("metricName",e.name)("metricType","nodes")}}function vCe(n,t){if(1&n&&(o.j41(0,"a",12),o.EFF(1),o.nrm(2,"i",14),o.k0s()),2&n){const e=o.XpG().$implicit;o.Y8G("href",t,o.B4B),o.R7$(),o.SpI(" ",e.name," ")}}function yCe(n,t){if(1&n&&(o.j41(0,"span",13),o.EFF(1),o.k0s()),2&n){const e=o.XpG().$implicit;o.R7$(),o.JRh(e.name)}}function wCe(n,t){if(1&n&&(o.j41(0,"tr",5),o.nI1(1,"attributeDescriptorTooltip"),o.j41(2,"td",6)(3,"div",7),o.DNE(4,bCe,1,2,"cc-attribute-type-selector",8),o.nI1(5,"async"),o.j41(6,"span",9),o.EFF(7),o.nI1(8,"number"),o.k0s()()(),o.j41(9,"td",10),o.nI1(10,"async"),o.nrm(11,"cc-metric-delta-selected",11),o.k0s(),o.j41(12,"td"),o.DNE(13,vCe,3,2,"a",12)(14,yCe,2,1,"span",13),o.k0s()()),2&n){let e;const i=t.$implicit,r=o.XpG(),s=o.XpG();o.Y8G("title",o.i5U(1,6,r[i.name],i.name)),o.R7$(4),o.vxM(o.bMT(5,9,s.showAttributeTypeSelector$)?4:-1),o.R7$(3),o.JRh(o.i5U(8,11,i.value,"1.0-0")),o.R7$(2),o.Y8G("hidden",!o.bMT(10,14,s.showDeltaValue$)),o.R7$(2),o.Y8G("metricName",i.name),o.R7$(2),o.vxM((e=null==r[i.name]?null:r[i.name].link)?13:14,e)}}function xCe(n,t){if(1&n&&(o.j41(0,"div",2)(1,"table",3)(2,"tr")(3,"th",4),o.EFF(4,"Secondary Metrics"),o.k0s()(),o.Z7z(5,wCe,15,16,"tr",5,o.fX1),o.nI1(7,"async"),o.k0s()()),2&n){const e=o.XpG();o.R7$(5),o.Dyx(o.bMT(7,0,e.secondaryMetrics$))}}let CCe=(()=>{class n{constructor(e){this.store=e,this.secondaryMetrics$=this.store.select(_Ce),this.showAttributeTypeSelector$=this.store.select(xV),this.showDeltaValue$=this.store.select(gCe),this.attributeDescriptors$=this.store.select($R)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar-secondary-metrics"]],standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[[1,"secondary-metrics-wrapper"],[1,"metrics-wrapper"],[1,"metric-box","scrollable-content"],["aria-hidden","true",1,"secondary-metrics"],["scope","col","colspan","2"],[3,"title"],[1,"secondary-metric-box"],[1,"secondary-metric-row"],[1,"attribute-type-select",3,"metricName","metricType"],[1,"metric-value"],[1,"delta-value-box",3,"hidden"],[3,"metricName"],["target","_blank",1,"metric-name",3,"href"],[1,"metric-name"],[1,"fa","fa-external-link"]],template:function(i,r){if(1&i&&(o.j41(0,"div",0)(1,"div",1),o.DNE(2,xCe,8,2,"div",2),o.nI1(3,"async"),o.k0s()()),2&i){let s;o.R7$(2),o.vxM((s=o.bMT(3,1,r.attributeDescriptors$))?2:-1,s)}},dependencies:[CV,_Y,zn,qu,YR],styles:["[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%], [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%]{font-size:10px;min-width:10px;text-align:center}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:visited{text-decoration:none}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#00f;-webkit-text-decoration:solid;text-decoration:solid;text-decoration-line:underline}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:active, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:active{color:red}.metric-box[_ngcontent-%COMP%]{border-radius:5px;background-color:#f0f0f0;padding:5px}.metric-box.scrollable-content[_ngcontent-%COMP%]{max-height:100%;overflow:auto}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{text-align:left}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%]{table-layout:fixed;width:100%;border-collapse:collapse}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:not(:last-child) td[_ngcontent-%COMP%]{border-bottom:3px solid white}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:5px}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child{border-right:3px solid white}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] .primary-metric-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] .primary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12pt;min-width:17px;text-align:center}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding-left:5px}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child{padding-left:4px}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] .secondary-metric-box[_ngcontent-%COMP%]{border-radius:3px;padding:4px;vertical-align:middle;background:#d5d5d5}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] .secondary-metric-row[_ngcontent-%COMP%]{flex-wrap:nowrap}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] .metric-name[_ngcontent-%COMP%]{color:gray;word-break:break-word;vertical-align:middle;margin-top:5px}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] .delta-value-box[_ngcontent-%COMP%]{vertical-align:middle}.secondary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}",'.secondary-metrics-wrapper[_ngcontent-%COMP%]{position:relative}.secondary-metrics-wrapper[_ngcontent-%COMP%]:after{content:"";clear:both;display:block}.secondary-metrics-wrapper[_ngcontent-%COMP%] .metrics-wrapper[_ngcontent-%COMP%]{position:absolute;width:100%;height:100%;padding-top:12px}']})}}return n})(),MCe=(()=>{class n{constructor(e,i){this.isAttributeSideBarVisibleService=e,this.store=i,this.selectedNode$=this.store.select(u0),this.fileName$=this.store.select(Fd).pipe((0,Xn.T)(r=>r.unifiedFileMeta?.fileName??""))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(PP),o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar"]],standalone:!0,features:[o.aNF],decls:6,vars:8,consts:[[1,"side-bar-container","cc-shadow"],[3,"node","fileName"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nrm(1,"cc-attribute-side-bar-header-section",1),o.nI1(2,"async"),o.nI1(3,"async"),o.nrm(4,"cc-attribute-side-bar-primary-metrics")(5,"cc-attribute-side-bar-secondary-metrics"),o.k0s()),2&i&&(o.AVh("expanded",r.isAttributeSideBarVisibleService.isOpen),o.R7$(),o.Y8G("node",o.bMT(2,4,r.selectedNode$))("fileName",o.bMT(3,6,r.fileName$)))},dependencies:[tCe,mCe,CCe,zn],styles:['[_nghost-%COMP%] .side-bar-container[_ngcontent-%COMP%]{transition:right .3s ease;width:350px;height:calc(100% - 98px);padding:8px;font-size:11pt;position:absolute;right:-355px;background:#fff}[_nghost-%COMP%] .side-bar-container.expanded[_ngcontent-%COMP%]{display:block;right:0}[_nghost-%COMP%] .side-bar-container.cc-shadow[_ngcontent-%COMP%]{box-shadow:0 1px 5px #0003!important}[_nghost-%COMP%] .side-bar-container[_ngcontent-%COMP%]:before{content:"";height:100%;float:left}']})}}return n})(),ECe=(()=>{class n{constructor(e,i,r,s,l){this.isAttributeSideBarVisibleService=e,this.store=i,this.threeViewerService=r,this.codeMapMouseEventService=s,this.elementReference=l,this.isLoadingFile$=this.store.select(B7),this.restartOnSharpnessModeChangesSubscription=this.store.select(XW).pipe(C_(1),ro(()=>{this.threeViewerService.restart(this.elementReference.nativeElement.querySelector("#codeMap")),this.codeMapMouseEventService.start()})).subscribe()}ngAfterViewInit(){this.threeViewerService.init(this.elementReference.nativeElement.querySelector("#codeMap")),this.codeMapMouseEventService.start()}ngOnDestroy(){this.restartOnSharpnessModeChangesSubscription.unsubscribe()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(PP),o.rXU(Yt),o.rXU(cX),o.rXU(F2),o.rXU(o.aKT))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-code-map"]],standalone:!0,features:[o.aNF],decls:4,vars:6,consts:[["id","codeMap"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nI1(1,"async"),o.nrm(2,"cc-view-cube")(3,"cc-attribute-side-bar"),o.k0s()),2&i&&(o.AVh("hidden",o.bMT(1,4,r.isLoadingFile$)),o.R7$(2),o.AVh("sideBarVisible",r.isAttributeSideBarVisibleService.isOpen))},dependencies:[qxe,MCe,zn],styles:["[_nghost-%COMP%] .hidden[_ngcontent-%COMP%]{display:none}[_nghost-%COMP%] #codeMap[_ngcontent-%COMP%]{position:fixed;z-index:0;top:98px;left:0;width:100%;height:100%}"]})}}return n})();function SCe(n,t){if(1&n&&(o.j41(0,"a",2)(1,"span",3),o.EFF(2),o.k0s(),o.EFF(3),o.nrm(4,"i",4),o.k0s()),2&n){const e=o.XpG(),i=o.XpG(2);o.Y8G("href",t,o.B4B),o.R7$(2),o.JRh(e),o.R7$(),o.SpI(" (",i.metricName,") ")}}function TCe(n,t){if(1&n&&(o.j41(0,"span",3),o.EFF(1),o.k0s(),o.EFF(2)),2&n){const e=o.XpG(),i=o.XpG(2);o.R7$(),o.JRh(e),o.R7$(),o.SpI(" (",i.metricName,") ")}}function ICe(n,t){if(1&n&&(o.qex(0,0),o.j41(1,"div",1),o.nI1(2,"attributeDescriptorTooltip"),o.EFF(3),o.DNE(4,SCe,5,3,"a",2)(5,TCe,3,2),o.k0s(),o.bVm()),2&n){let e;const i=o.XpG(),r=o.XpG();o.R7$(),o.Y8G("title",o.i5U(2,3,i[r.metricName],r.metricName)),o.R7$(2),o.SpI(" ",r.metricSpecification," metric: "),o.R7$(),o.vxM((e=i[r.metricName].link)?4:5,e)}}function FCe(n,t){if(1&n&&(o.j41(0,"span",3),o.EFF(1),o.k0s(),o.EFF(2)),2&n){const e=o.XpG(3);o.R7$(),o.JRh(t),o.R7$(),o.SpI(" (",e.metricName,") ")}}function DCe(n,t){if(1&n&&(o.j41(0,"span",3),o.EFF(1),o.k0s()),2&n){const e=o.XpG(3);o.R7$(),o.SpI(" ",e.metricName," ")}}function BCe(n,t){if(1&n&&(o.j41(0,"div"),o.EFF(1),o.DNE(2,FCe,3,2)(3,DCe,2,1,"span",3),o.k0s()),2&n){let e;const i=o.XpG(2);o.R7$(),o.SpI(" ",i.metricSpecification," metric: "),o.R7$(),o.vxM((e=i.fallbackTitles.get(i.metricName))?2:3,e)}}function kCe(n,t){if(1&n&&o.DNE(0,ICe,6,6,"ng-container",0)(1,BCe,4,2,"div"),2&n){let e;const i=t,r=o.XpG();o.vxM((e=null==i[r.metricName]?null:i[r.metricName].title)?0:1,e)}}let RCe=(()=>{class n{constructor(e){this.store=e,this.attributeDescriptors$=this.store.select($R),this.fallbackTitles=qw}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-legend-block"]],inputs:{metricName:"metricName",metricSpecification:"metricSpecification"},standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[1,"legend-block"],[3,"title"],["target","_blank",3,"href"],[1,"bold"],[1,"fa","fa-external-link"]],template:function(i,r){if(1&i&&(o.DNE(0,kCe,2,1),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.attributeDescriptors$))?0:-1,s)}},dependencies:[zn,YR],styles:["[_nghost-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] a[_ngcontent-%COMP%]:visited{text-decoration:none;color:#000}[_nghost-%COMP%] a[_ngcontent-%COMP%]:hover{color:#00f;-webkit-text-decoration:solid;text-decoration:solid;text-decoration-line:underline}[_nghost-%COMP%] a[_ngcontent-%COMP%]:active{color:red}[_nghost-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%]{font-size:10px;min-width:10px;text-align:center}[_nghost-%COMP%] span[_ngcontent-%COMP%]{display:inline-block}[_nghost-%COMP%] span.bold[_ngcontent-%COMP%]{font-weight:600}"]})}}return n})();const bY=sn(kS,n=>n.markedPackages),PCe=sn(bY,n=>n.reduce((t,{color:e,path:i})=>(Object.prototype.hasOwnProperty.call(t,e)||(t[e]=[]),t[e].push(i),t),{}));function OCe(n,t){if(1&n){const e=o.RV6();o.j41(0,"cc-labelled-color-picker",1),o.bIt("onColorChange",function(r){const s=o.eBV(e).$implicit,l=o.XpG(2);return o.Njj(l.handleColorChange(r,s.value))}),o.k0s()}if(2&n){const e=t.$implicit;o.Y8G("hexColor",e.key)("labels",e.value)}}function NCe(n,t){if(1&n&&(o.nrm(0,"hr"),o.Z7z(1,OCe,1,2,"cc-labelled-color-picker",0,o.BUC().trackMarkedPackage,!0),o.nI1(3,"async"),o.nI1(4,"keyvalue")),2&n){const e=o.XpG();o.R7$(),o.Dyx(o.i5U(4,2,o.bMT(3,0,e.markedPackagesMap$),e.sortMarkedPackagesMap))}}let LCe=(()=>{class n{constructor(e){this.store=e,this.markedPackagesMap$=e.select(PCe),this.hasMarkedPackages$=this.markedPackagesMap$.pipe((0,Xn.T)(i=>Object.keys(i).length>0))}handleColorChange(e,i){this.store.dispatch(b2({packages:i.map(r=>({color:e,path:r}))}))}trackMarkedPackage(e,{value:i}){return i.join(",")}sortMarkedPackagesMap(e,i){return e.value[0].localeCompare(i.value[0])}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-legend-marked-packages"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"hexColor","labels"],[3,"onColorChange","hexColor","labels"]],template:function(i,r){1&i&&(o.DNE(0,NCe,5,5),o.nI1(1,"async")),2&i&&o.vxM(o.bMT(1,1,r.hasMarkedPackages$)?0:-1)},dependencies:[e6,zn,lf],styles:["[_nghost-%COMP%] cc-labelled-color-picker[_ngcontent-%COMP%]{display:block}"]})}}return n})();function UCe(n,t){1&n&&o.nrm(0,"cc-legend-block",5),2&n&&o.Y8G("metricName",t)}function VCe(n,t){if(1&n&&(o.j41(0,"div"),o.nrm(1,"cc-legend-block",3),o.nI1(2,"async"),o.nrm(3,"cc-legend-block",4),o.nI1(4,"async"),o.DNE(5,UCe,1,1,"cc-legend-block",5),o.nI1(6,"async"),o.nrm(7,"hr")(8,"cc-legend-block",6),o.nI1(9,"async"),o.nrm(10,"cc-color-picker-for-map-color",1)(11,"cc-color-picker-for-map-color",1)(12,"cc-color-picker-for-map-color",1),o.k0s()),2&n){let e;const i=o.XpG();o.R7$(),o.Y8G("metricName",o.bMT(2,7,i.areaMetric$)),o.R7$(2),o.Y8G("metricName",o.bMT(4,9,i.heightMetric$)),o.R7$(2),o.vxM((e=o.bMT(6,11,i.edgeMetric$))?5:-1,e),o.R7$(3),o.Y8G("metricName",o.bMT(9,13,i.colorMetric$)),o.R7$(2),o.Y8G("mapColorFor","positive"),o.R7$(),o.Y8G("mapColorFor","neutral"),o.R7$(),o.Y8G("mapColorFor","negative")}}function HCe(n,t){1&n&&(o.j41(0,"div"),o.nrm(1,"cc-color-picker-for-map-color",1)(2,"cc-color-picker-for-map-color",1),o.k0s()),2&n&&(o.R7$(),o.Y8G("mapColorFor","positiveDelta"),o.R7$(),o.Y8G("mapColorFor","negativeDelta"))}function QCe(n,t){1&n&&o.nrm(0,"hr")(1,"cc-color-picker-for-map-color",1)(2,"cc-color-picker-for-map-color",1),2&n&&(o.R7$(),o.Y8G("mapColorFor","outgoingEdge"),o.R7$(),o.Y8G("mapColorFor","incomingEdge"))}let zCe=(()=>{class n{constructor(e,i,r){this.store=e,this.isAttributeSideBarVisibleService=i,this.viewReference=r,this.isLegendVisible=!1,this.isDeltaState$=this.store.select(Wp),this.heightMetric$=this.store.select(C2),this.areaMetric$=this.store.select(hv),this.colorMetric$=this.store.select(Hg),this.edgeMetric$=this.store.select(Xp)}ngOnInit(){this.mouseDownListener=e=>this.collapseOnOutsideClick(e),document.addEventListener("mousedown",this.mouseDownListener)}ngOnDestroy(){this.mouseDownListener&&document.removeEventListener("mousedown",this.mouseDownListener)}toggleIsLegendVisible(){this.isLegendVisible=!this.isLegendVisible}collapseOnOutsideClick(e){const i=e.target;if(this.isLegendVisible){const r=this.viewReference.element.nativeElement.contains(i),s=document.querySelector(".cdk-overlay-container"),l=!!s&&s.contains(i);!r&&!l&&(this.isLegendVisible=!1)}}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(PP),o.rXU(o.c1b))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-legend-panel"]],standalone:!0,features:[o.aNF],decls:11,vars:14,consts:[["id","legend-panel",1,"block-wrapper"],[3,"mapColorFor"],["mat-button","","id","legend-panel-button",1,"panel-button",3,"click","title"],["metricSpecification","Area",3,"metricName"],["metricSpecification","Height",3,"metricName"],["metricSpecification","Edge",3,"metricName"],["metricSpecification","Color",3,"metricName"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.DNE(1,VCe,13,15,"div"),o.nI1(2,"async"),o.DNE(3,HCe,3,2,"div"),o.nrm(4,"hr")(5,"cc-color-picker-for-map-color",1),o.DNE(6,QCe,3,2),o.nI1(7,"async"),o.nrm(8,"cc-legend-marked-packages"),o.k0s(),o.j41(9,"button",2),o.bIt("click",function(){return r.toggleIsLegendVisible()}),o.EFF(10," LEGEND\n"),o.k0s()),2&i&&(o.AVh("visible",r.isLegendVisible)("isAttributeSideBarVisible",r.isAttributeSideBarVisibleService.isOpen),o.R7$(),o.vxM(o.bMT(2,10,r.isDeltaState$)?3:1),o.R7$(4),o.Y8G("mapColorFor","selected"),o.R7$(),o.vxM(o.bMT(7,12,r.edgeMetric$)?6:-1),o.R7$(3),o.AVh("isAttributeSideBarVisible",r.isAttributeSideBarVisibleService.isOpen),o.FS9("title",r.isLegendVisible?"Hide panel":"Show panel"))},dependencies:[RCe,yV,LCe,ns,zn],styles:["[_nghost-%COMP%] .rotated-button[_ngcontent-%COMP%], [_nghost-%COMP%] .panel-button[_ngcontent-%COMP%]{position:fixed;transform:rotate(90deg);border-radius:0 0 5px 5px;height:36px;right:-35px;color:#fff;-webkit-user-select:none;user-select:none;background-color:#1b9cfc}[_nghost-%COMP%] .rotated-button[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .panel-button[_ngcontent-%COMP%]:hover{background-color:#0374c9}[_nghost-%COMP%] .rotated-button.isAttributeSideBarVisible[_ngcontent-%COMP%], [_nghost-%COMP%] .isAttributeSideBarVisible.panel-button[_ngcontent-%COMP%]{right:316px}[_nghost-%COMP%] .panel-button[_ngcontent-%COMP%]{margin:6px 8px;bottom:55px;width:88px;font-size:10pt;transition:right .3s ease}[_nghost-%COMP%] .block-wrapper[_ngcontent-%COMP%]{background-color:#fff;border:1px solid #cdcdcd;position:fixed;bottom:35px;padding:10px;right:40px;visibility:hidden;border-radius:5px;min-width:200px;max-width:30%;transition:right .3s ease}[_nghost-%COMP%] .block-wrapper.isAttributeSideBarVisible[_ngcontent-%COMP%]{right:390px}[_nghost-%COMP%] .block-wrapper.visible[_ngcontent-%COMP%]{visibility:visible}[_nghost-%COMP%] .block-wrapper[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{border-right-style:none;border-left-style:none;border-bottom-style:none;color:#000}"]})}}return n})(),GCe=(()=>{class n{constructor(e){this.isLoadingFile$=e.select(B7)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-loading-file-progress-spinner"]],standalone:!0,features:[o.aNF],decls:3,vars:4,consts:[["id","loading-gif-file"],["mode","indeterminate","diameter","96"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nI1(1,"async"),o.nrm(2,"mat-progress-spinner",1),o.k0s()),2&i&&o.xc7("visibility",o.bMT(1,2,r.isLoadingFile$)?"visible":"hidden")},dependencies:[$W,zn],styles:["#loading-gif-file[_ngcontent-%COMP%]{position:fixed;left:0;top:0;width:100%;height:100%;z-index:40;background-color:#fffc;display:inline-block;text-align:center}#loading-gif-file[_ngcontent-%COMP%] mat-progress-spinner.mat-mdc-progress-spinner[_ngcontent-%COMP%]{display:inline-block;margin:22% auto 0}"]})}}return n})(),jCe=(()=>{class n{constructor(){this.version=s1.rE}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-logo"]],standalone:!0,features:[o.aNF],decls:9,vars:1,consts:[[1,"logo"],["href","https://github.com/MaibornWolff/codecharta","target","_blank","rel","noopener noreferrer"],["src","codeCharta/assets/codecharta_logo.svg","alt","CodeCharta","rel","noopener noreferrer"],["id","logo-version"],["target","_blank","href","https://www.maibornwolff.de/en/"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"a",1),o.nrm(2,"img",2),o.k0s(),o.j41(3,"p",3),o.EFF(4),o.k0s(),o.j41(5,"p"),o.EFF(6,"Made with \u2764 by "),o.j41(7,"a",4),o.EFF(8,"MaibornWolff"),o.k0s()()()),2&i&&(o.R7$(4),o.SpI("Version ",r.version,""))},styles:[".logo[_ngcontent-%COMP%]{position:absolute;left:2em;bottom:1em;z-index:1;flex-direction:column;display:flex;align-items:flex-start}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{object-fit:contain;width:5em;height:auto}.logo[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:#5a585a;font-weight:700;font-size:10px;text-align:center;margin:0;z-index:-1}"]})}}return n})(),$Ce=(()=>{class n{constructor(e,i){this.store=e,this.loadInitialFileService=i,this.isInitialized=!1}ngOnInit(){var e=this;return Mn(function*(){e.store.dispatch(Ic({value:!0})),yield e.loadInitialFileService.loadFilesOrSampleFiles(),e.isInitialized=!0})()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(P6))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-code-charta"]],standalone:!0,features:[o.aNF],decls:8,vars:2,template:function(i,r){1&i&&(o.j41(0,"div"),o.nrm(1,"cc-tool-bar")(2,"cc-file-extension-bar")(3,"cc-ribbon-bar")(4,"cc-code-map")(5,"cc-legend-panel")(6,"cc-loading-file-progress-spinner")(7,"cc-logo"),o.k0s()),2&i&&o.xc7("visibility",r.isInitialized?"visible":"hidden")},dependencies:[dAe,sme,Gxe,ECe,zCe,GCe,jCe],encapsulation:2})}}return n})(),qCe=(()=>{class n{constructor(e){this.store=e,this.unfocusNodes$=vs(()=>this.store.select(uc).pipe((0,Xn.T)(()=>_2())))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();let A0={async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,hooks:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1};function vY(n){A0=n}const yY=/[&<>"']/,XCe=new RegExp(yY.source,"g"),wY=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,KCe=new RegExp(wY.source,"g"),YCe={"&":"&","<":"<",">":">",'"':""","'":"'"},xY=n=>YCe[n];function nl(n,t){if(t){if(yY.test(n))return n.replace(XCe,xY)}else if(wY.test(n))return n.replace(KCe,xY);return n}const ZCe=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function CY(n){return n.replace(ZCe,(t,e)=>"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):"")}const JCe=/(^|[^\[])\^/g;function lo(n,t){n="string"==typeof n?n:n.source,t=t||"";const e={replace:(i,r)=>(r=(r=r.source||r).replace(JCe,"$1"),n=n.replace(i,r),e),getRegex:()=>new RegExp(n,t)};return e}const eMe=/[^\w:]/g,tMe=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function MY(n,t,e){if(n){let i;try{i=decodeURIComponent(CY(e)).replace(eMe,"").toLowerCase()}catch{return null}if(0===i.indexOf("javascript:")||0===i.indexOf("vbscript:")||0===i.indexOf("data:"))return null}t&&!tMe.test(e)&&(e=function oMe(n,t){OP[" "+n]||(OP[" "+n]=nMe.test(n)?n+"/":LP(n,"/",!0));const e=-1===(n=OP[" "+n]).indexOf(":");return"//"===t.substring(0,2)?e?t:n.replace(iMe,"$1")+t:"/"===t.charAt(0)?e?t:n.replace(rMe,"$1")+t:n+t}(t,e));try{e=encodeURI(e).replace(/%25/g,"%")}catch{return null}return e}const OP={},nMe=/^[^:]+:\/*[^/]*$/,iMe=/^([^:]+:)[\s\S]*$/,rMe=/^([^:]+:\/*[^/]*)[\s\S]*$/,NP={exec:function(){}};function EY(n,t){const i=n.replace(/\|/g,(s,l,u)=>{let f=!1,p=l;for(;--p>=0&&"\\"===u[p];)f=!f;return f?"|":" |"}).split(/ \|/);let r=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),i.length>t)i.splice(t);else for(;i.length0)return{type:"space",raw:e[0]}}code(t){const e=this.rules.block.code.exec(t);if(e){const i=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?i:LP(i,"\n")}}}fences(t){const e=this.rules.block.fences.exec(t);if(e){const i=e[0],r=function lMe(n,t){const e=n.match(/^(\s+)(?:```)/);if(null===e)return t;const i=e[1];return t.split("\n").map(r=>{const s=r.match(/^\s+/);if(null===s)return r;const[l]=s;return l.length>=i.length?r.slice(i.length):r}).join("\n")}(i,e[3]||"");return{type:"code",raw:i,lang:e[2]?e[2].trim().replace(this.rules.inline._escapes,"$1"):e[2],text:r}}}heading(t){const e=this.rules.block.heading.exec(t);if(e){let i=e[2].trim();if(/#$/.test(i)){const r=LP(i,"#");(this.options.pedantic||!r||/ $/.test(r))&&(i=r.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:i,tokens:this.lexer.inline(i)}}}hr(t){const e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:e[0]}}blockquote(t){const e=this.rules.block.blockquote.exec(t);if(e){const i=e[0].replace(/^ *>[ \t]?/gm,""),r=this.lexer.state.top;this.lexer.state.top=!0;const s=this.lexer.blockTokens(i);return this.lexer.state.top=r,{type:"blockquote",raw:e[0],tokens:s,text:i}}}list(t){let e=this.rules.block.list.exec(t);if(e){let i,r,s,l,u,f,p,m,_,b,w,F,D=e[1].trim();const T=D.length>1,I={type:"list",raw:"",ordered:T,start:T?+D.slice(0,-1):"",loose:!1,items:[]};D=T?`\\d{1,9}\\${D.slice(-1)}`:`\\${D}`,this.options.pedantic&&(D=T?D:"[*+-]");const O=new RegExp(`^( {0,3}${D})((?:[\t ][^\\n]*)?(?:\\n|$))`);for(;t&&(F=!1,(e=O.exec(t))&&!this.rules.block.hr.test(t));){if(i=e[0],t=t.substring(i.length),m=e[2].split("\n",1)[0].replace(/^\t+/,P=>" ".repeat(3*P.length)),_=t.split("\n",1)[0],this.options.pedantic?(l=2,w=m.trimLeft()):(l=e[2].search(/[^ ]/),l=l>4?1:l,w=m.slice(l),l+=e[1].length),f=!1,!m&&/^ *$/.test(_)&&(i+=_+"\n",t=t.substring(_.length+1),F=!0),!F){const P=new RegExp(`^ {0,${Math.min(3,l-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),ee=new RegExp(`^ {0,${Math.min(3,l-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),J=new RegExp(`^ {0,${Math.min(3,l-1)}}(?:\`\`\`|~~~)`),te=new RegExp(`^ {0,${Math.min(3,l-1)}}#`);for(;t&&(b=t.split("\n",1)[0],_=b,this.options.pedantic&&(_=_.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),!(J.test(_)||te.test(_)||P.test(_)||ee.test(t)));){if(_.search(/[^ ]/)>=l||!_.trim())w+="\n"+_.slice(l);else{if(f||m.search(/[^ ]/)>=4||J.test(m)||te.test(m)||ee.test(m))break;w+="\n"+_}!f&&!_.trim()&&(f=!0),i+=b+"\n",t=t.substring(b.length+1),m=_.slice(l)}}I.loose||(p?I.loose=!0:/\n *\n *$/.test(i)&&(p=!0)),this.options.gfm&&(r=/^\[[ xX]\] /.exec(w),r&&(s="[ ] "!==r[0],w=w.replace(/^\[[ xX]\] +/,""))),I.items.push({type:"list_item",raw:i,task:!!r,checked:s,loose:!1,text:w}),I.raw+=i}I.items[I.items.length-1].raw=i.trimRight(),I.items[I.items.length-1].text=w.trimRight(),I.raw=I.raw.trimRight();const R=I.items.length;for(u=0;u"space"===J.type),ee=P.length>0&&P.some(J=>/\n.*\n/.test(J.raw));I.loose=ee}if(I.loose)for(u=0;u$/,"$1").replace(this.rules.inline._escapes,"$1"):"",s=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline._escapes,"$1"):e[3];return{type:"def",tag:i,raw:e[0],href:r,title:s}}}table(t){const e=this.rules.block.table.exec(t);if(e){const i={type:"table",header:EY(e[1]).map(r=>({text:r})),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:e[3]&&e[3].trim()?e[3].replace(/\n[ \t]*$/,"").split("\n"):[]};if(i.header.length===i.align.length){i.raw=e[0];let s,l,u,f,r=i.align.length;for(s=0;s({text:p}));for(r=i.header.length,l=0;l/i.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(e[0]):nl(e[0]):e[0]}}link(t){const e=this.rules.inline.link.exec(t);if(e){const i=e[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;const l=LP(i.slice(0,-1),"\\");if((i.length-l.length)%2==0)return}else{const l=function sMe(n,t){if(-1===n.indexOf(t[1]))return-1;const e=n.length;let i=0,r=0;for(;r-1){const f=(0===e[0].indexOf("!")?5:4)+e[1].length+l;e[2]=e[2].substring(0,l),e[0]=e[0].substring(0,f).trim(),e[3]=""}}let r=e[2],s="";if(this.options.pedantic){const l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);l&&(r=l[1],s=l[3])}else s=e[3]?e[3].slice(1,-1):"";return r=r.trim(),/^$/.test(i)?r.slice(1):r.slice(1,-1)),SY(e,{href:r&&r.replace(this.rules.inline._escapes,"$1"),title:s&&s.replace(this.rules.inline._escapes,"$1")},e[0],this.lexer)}}reflink(t,e){let i;if((i=this.rules.inline.reflink.exec(t))||(i=this.rules.inline.nolink.exec(t))){let r=(i[2]||i[1]).replace(/\s+/g," ");if(r=e[r.toLowerCase()],!r){const s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return SY(i,r,i[0],this.lexer)}}emStrong(t,e,i=""){let r=this.rules.inline.emStrong.lDelim.exec(t);if(!(!r||r[3]&&i.match(/[\p{L}\p{N}]/u))&&(!r[1]&&!r[2]||!i||this.rules.inline.punctuation.exec(i))){const l=r[0].length-1;let u,f,p=l,m=0;const _="*"===r[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(_.lastIndex=0,e=e.slice(-1*t.length+l);null!=(r=_.exec(e));){if(u=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!u)continue;if(f=u.length,r[3]||r[4]){p+=f;continue}if((r[5]||r[6])&&l%3&&!((l+f)%3)){m+=f;continue}if(p-=f,p>0)continue;f=Math.min(f,f+p+m);const b=t.slice(0,l+r.index+f+1);if(Math.min(l,f)%2){const F=b.slice(1,-1);return{type:"em",raw:b,text:F,tokens:this.lexer.inlineTokens(F)}}const w=b.slice(2,-2);return{type:"strong",raw:b,text:w,tokens:this.lexer.inlineTokens(w)}}}}codespan(t){const e=this.rules.inline.code.exec(t);if(e){let i=e[2].replace(/\n/g," ");const r=/[^ ]/.test(i),s=/^ /.test(i)&&/ $/.test(i);return r&&s&&(i=i.substring(1,i.length-1)),i=nl(i,!0),{type:"codespan",raw:e[0],text:i}}}br(t){const e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}del(t){const e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(t,e){const i=this.rules.inline.autolink.exec(t);if(i){let r,s;return"@"===i[2]?(r=nl(this.options.mangle?e(i[1]):i[1]),s="mailto:"+r):(r=nl(i[1]),s=r),{type:"link",raw:i[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}url(t,e){let i;if(i=this.rules.inline.url.exec(t)){let r,s;if("@"===i[2])r=nl(this.options.mangle?e(i[0]):i[0]),s="mailto:"+r;else{let l;do{l=i[0],i[0]=this.rules.inline._backpedal.exec(i[0])[0]}while(l!==i[0]);r=nl(i[0]),s="www."===i[1]?"http://"+i[0]:i[0]}return{type:"link",raw:i[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(t,e){const i=this.rules.inline.text.exec(t);if(i){let r;return r=this.lexer.state.inRawBlock?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):nl(i[0]):i[0]:nl(this.options.smartypants?e(i[0]):i[0]),{type:"text",raw:i[0],text:r}}}}const ki={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:NP,lheading:/^((?:(?!^bull ).|\n(?!\n|bull ))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\.|[^\[\]\\])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};ki.def=lo(ki.def).replace("label",ki._label).replace("title",ki._title).getRegex(),ki.bullet=/(?:[*+-]|\d{1,9}[.)])/,ki.listItemStart=lo(/^( *)(bull) */).replace("bull",ki.bullet).getRegex(),ki.list=lo(ki.list).replace(/bull/g,ki.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+ki.def.source+")").getRegex(),ki._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",ki._comment=/|$)/,ki.html=lo(ki.html,"i").replace("comment",ki._comment).replace("tag",ki._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),ki.lheading=lo(ki.lheading).replace(/bull/g,ki.bullet).getRegex(),ki.paragraph=lo(ki._paragraph).replace("hr",ki.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ki._tag).getRegex(),ki.blockquote=lo(ki.blockquote).replace("paragraph",ki.paragraph).getRegex(),ki.normal={...ki},ki.gfm={...ki.normal,table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"},ki.gfm.table=lo(ki.gfm.table).replace("hr",ki.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ki._tag).getRegex(),ki.gfm.paragraph=lo(ki._paragraph).replace("hr",ki.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",ki.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ki._tag).getRegex(),ki.pedantic={...ki.normal,html:lo("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",ki._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:NP,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:lo(ki.normal._paragraph).replace("hr",ki.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",ki.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()};const qn={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:NP,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,rDelimAst:/^[^_*]*?__[^_*]*?\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\*)[punct](\*+)(?=[\s]|$)|[^punct\s](\*+)(?!\*)(?=[punct\s]|$)|(?!\*)[punct\s](\*+)(?=[^punct\s])|[\s](\*+)(?!\*)(?=[punct])|(?!\*)[punct](\*+)(?!\*)(?=[punct])|[^punct\s](\*+)(?=[^punct\s])/,rDelimUnd:/^[^_*]*?\*\*[^_*]*?_[^_*]*?(?=\*\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\s]|$)|[^punct\s](_+)(?!_)(?=[punct\s]|$)|(?!_)[punct\s](_+)(?=[^punct\s])|[\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:NP,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\.5&&(i="x"+i.toString(16)),t+="&#"+i+";";return t}qn._punctuation="\\p{P}$+<=>`^|~",qn.punctuation=lo(qn.punctuation,"u").replace(/punctuation/g,qn._punctuation).getRegex(),qn.blockSkip=/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,qn.anyPunctuation=/\\[punct]/g,qn._escapes=/\\([punct])/g,qn._comment=lo(ki._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),qn.emStrong.lDelim=lo(qn.emStrong.lDelim,"u").replace(/punct/g,qn._punctuation).getRegex(),qn.emStrong.rDelimAst=lo(qn.emStrong.rDelimAst,"gu").replace(/punct/g,qn._punctuation).getRegex(),qn.emStrong.rDelimUnd=lo(qn.emStrong.rDelimUnd,"gu").replace(/punct/g,qn._punctuation).getRegex(),qn.anyPunctuation=lo(qn.anyPunctuation,"gu").replace(/punct/g,qn._punctuation).getRegex(),qn._escapes=lo(qn._escapes,"gu").replace(/punct/g,qn._punctuation).getRegex(),qn._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,qn._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,qn.autolink=lo(qn.autolink).replace("scheme",qn._scheme).replace("email",qn._email).getRegex(),qn._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,qn.tag=lo(qn.tag).replace("comment",qn._comment).replace("attribute",qn._attribute).getRegex(),qn._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,qn._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,qn._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,qn.link=lo(qn.link).replace("label",qn._label).replace("href",qn._href).replace("title",qn._title).getRegex(),qn.reflink=lo(qn.reflink).replace("label",qn._label).replace("ref",ki._label).getRegex(),qn.nolink=lo(qn.nolink).replace("ref",ki._label).getRegex(),qn.reflinkSearch=lo(qn.reflinkSearch,"g").replace("reflink",qn.reflink).replace("nolink",qn.nolink).getRegex(),qn.normal={...qn},qn.pedantic={...qn.normal,strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:lo(/^!?\[(label)\]\((.*?)\)/).replace("label",qn._label).getRegex(),reflink:lo(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",qn._label).getRegex()},qn.gfm={...qn.normal,escape:lo(qn.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\f+" ".repeat(p.length));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(u=>!!(i=u.call({lexer:this},t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)))){if(i=this.tokenizer.space(t)){t=t.substring(i.raw.length),1===i.raw.length&&e.length>0?e[e.length-1].raw+="\n":e.push(i);continue}if(i=this.tokenizer.code(t)){t=t.substring(i.raw.length),r=e[e.length-1],!r||"paragraph"!==r.type&&"text"!==r.type?e.push(i):(r.raw+="\n"+i.raw,r.text+="\n"+i.text,this.inlineQueue[this.inlineQueue.length-1].src=r.text);continue}if(i=this.tokenizer.fences(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.heading(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.hr(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.blockquote(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.list(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.html(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.def(t)){t=t.substring(i.raw.length),r=e[e.length-1],!r||"paragraph"!==r.type&&"text"!==r.type?this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title}):(r.raw+="\n"+i.raw,r.text+="\n"+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=r.text);continue}if(i=this.tokenizer.table(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.lheading(t)){t=t.substring(i.raw.length),e.push(i);continue}if(s=t,this.options.extensions&&this.options.extensions.startBlock){let u=1/0;const f=t.slice(1);let p;this.options.extensions.startBlock.forEach(function(m){p=m.call({lexer:this},f),"number"==typeof p&&p>=0&&(u=Math.min(u,p))}),u<1/0&&u>=0&&(s=t.substring(0,u+1))}if(this.state.top&&(i=this.tokenizer.paragraph(s))){r=e[e.length-1],l&&"paragraph"===r.type?(r.raw+="\n"+i.raw,r.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):e.push(i),l=s.length!==t.length,t=t.substring(i.raw.length);continue}if(i=this.tokenizer.text(t)){t=t.substring(i.raw.length),r=e[e.length-1],r&&"text"===r.type?(r.raw+="\n"+i.raw,r.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):e.push(i);continue}if(t){const u="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(u);break}throw new Error(u)}}return this.state.top=!0,e}inline(t,e=[]){return this.inlineQueue.push({src:t,tokens:e}),e}inlineTokens(t,e=[]){let i,r,s,u,f,p,l=t;if(this.tokens.links){const m=Object.keys(this.tokens.links);if(m.length>0)for(;null!=(u=this.tokenizer.rules.inline.reflinkSearch.exec(l));)m.includes(u[0].slice(u[0].lastIndexOf("[")+1,-1))&&(l=l.slice(0,u.index)+"["+"a".repeat(u[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(u=this.tokenizer.rules.inline.blockSkip.exec(l));)l=l.slice(0,u.index)+"["+"a".repeat(u[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(u=this.tokenizer.rules.inline.anyPunctuation.exec(l));)l=l.slice(0,u.index)+"++"+l.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;t;)if(f||(p=""),f=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(m=>!!(i=m.call({lexer:this},t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)))){if(i=this.tokenizer.escape(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.tag(t)){t=t.substring(i.raw.length),r=e[e.length-1],r&&"text"===i.type&&"text"===r.type?(r.raw+=i.raw,r.text+=i.text):e.push(i);continue}if(i=this.tokenizer.link(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(i.raw.length),r=e[e.length-1],r&&"text"===i.type&&"text"===r.type?(r.raw+=i.raw,r.text+=i.text):e.push(i);continue}if(i=this.tokenizer.emStrong(t,l,p)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.codespan(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.br(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.del(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.autolink(t,TY)){t=t.substring(i.raw.length),e.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(t,TY))){t=t.substring(i.raw.length),e.push(i);continue}if(s=t,this.options.extensions&&this.options.extensions.startInline){let m=1/0;const _=t.slice(1);let b;this.options.extensions.startInline.forEach(function(w){b=w.call({lexer:this},_),"number"==typeof b&&b>=0&&(m=Math.min(m,b))}),m<1/0&&m>=0&&(s=t.substring(0,m+1))}if(i=this.tokenizer.inlineText(s,cMe)){t=t.substring(i.raw.length),"_"!==i.raw.slice(-1)&&(p=i.raw.slice(-1)),f=!0,r=e[e.length-1],r&&"text"===r.type?(r.raw+=i.raw,r.text+=i.text):e.push(i);continue}if(t){const m="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(m);break}throw new Error(m)}}return e}}class VP{constructor(t){this.options=t||A0}code(t,e,i){const r=(e||"").match(/\S*/)[0];if(this.options.highlight){const s=this.options.highlight(t,r);null!=s&&s!==t&&(i=!0,t=s)}return t=t.replace(/\n$/,"")+"\n",r?'

'+(i?t:nl(t,!0))+"
\n":"
"+(i?t:nl(t,!0))+"
\n"}blockquote(t){return`
\n${t}
\n`}html(t,e){return t}heading(t,e,i,r){return this.options.headerIds?`${t}\n`:`${t}\n`}hr(){return this.options.xhtml?"
\n":"
\n"}list(t,e,i){const r=e?"ol":"ul";return"<"+r+(e&&1!==i?' start="'+i+'"':"")+">\n"+t+"\n"}listitem(t){return`
  • ${t}
  • \n`}checkbox(t){return" "}paragraph(t){return`

    ${t}

    \n`}table(t,e){return e&&(e=`${e}`),"\n\n"+t+"\n"+e+"
    \n"}tablerow(t){return`\n${t}\n`}tablecell(t,e){const i=e.header?"th":"td";return(e.align?`<${i} align="${e.align}">`:`<${i}>`)+t+`\n`}strong(t){return`${t}`}em(t){return`${t}`}codespan(t){return`${t}`}br(){return this.options.xhtml?"
    ":"
    "}del(t){return`${t}`}link(t,e,i){if(null===(t=MY(this.options.sanitize,this.options.baseUrl,t)))return i;let r='",r}image(t,e,i){if(null===(t=MY(this.options.sanitize,this.options.baseUrl,t)))return i;let r=`${i}":">",r}text(t){return t}}class EV{strong(t){return t}em(t){return t}codespan(t){return t}del(t){return t}html(t){return t}text(t){return t}link(t,e,i){return""+i}image(t,e,i){return""+i}br(){return""}}class SV{constructor(){this.seen={}}serialize(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}getNextSafeSlug(t,e){let i=t,r=0;if(this.seen.hasOwnProperty(i)){r=this.seen[t];do{r++,i=t+"-"+r}while(this.seen.hasOwnProperty(i))}return e||(this.seen[t]=r,this.seen[i]=0),i}slug(t,e={}){const i=this.serialize(t);return this.getNextSafeSlug(i,e.dryrun)}}class nf{constructor(t){this.options=t||A0,this.options.renderer=this.options.renderer||new VP,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new EV,this.slugger=new SV}static parse(t,e){return new nf(e).parse(t)}static parseInline(t,e){return new nf(e).parseInline(t)}parse(t,e=!0){let r,s,l,u,f,p,m,_,b,w,F,D,T,I,O,R,P,ee,J,i="";const te=t.length;for(r=0;r0&&"paragraph"===O.tokens[0].type?(O.tokens[0].text=ee+" "+O.tokens[0].text,O.tokens[0].tokens&&O.tokens[0].tokens.length>0&&"text"===O.tokens[0].tokens[0].type&&(O.tokens[0].tokens[0].text=ee+" "+O.tokens[0].tokens[0].text)):O.tokens.unshift({type:"text",text:ee}):I+=ee),I+=this.parse(O.tokens,T),b+=this.renderer.listitem(I,P,R);i+=this.renderer.list(b,F,D);continue;case"html":i+=this.renderer.html(w.text,w.block);continue;case"paragraph":i+=this.renderer.paragraph(this.parseInline(w.tokens));continue;case"text":for(b=w.tokens?this.parseInline(w.tokens):w.text;r+1{i=i.concat(this.walkTokens(r[s],e))}):r.tokens&&(i=i.concat(this.walkTokens(r.tokens,e)))}return i}use(...t){const e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(i=>{const r={...i};if(r.async=this.defaults.async||r.async||!1,i.extensions&&(i.extensions.forEach(s=>{if(!s.name)throw new Error("extension name required");if(s.renderer){const l=e.renderers[s.name];e.renderers[s.name]=l?function(...u){let f=s.renderer.apply(this,u);return!1===f&&(f=l.apply(this,u)),f}:s.renderer}if(s.tokenizer){if(!s.level||"block"!==s.level&&"inline"!==s.level)throw new Error("extension level must be 'block' or 'inline'");e[s.level]?e[s.level].unshift(s.tokenizer):e[s.level]=[s.tokenizer],s.start&&("block"===s.level?e.startBlock?e.startBlock.push(s.start):e.startBlock=[s.start]:"inline"===s.level&&(e.startInline?e.startInline.push(s.start):e.startInline=[s.start]))}s.childTokens&&(e.childTokens[s.name]=s.childTokens)}),r.extensions=e),i.renderer){const s=this.defaults.renderer||new VP(this.defaults);for(const l in i.renderer){const u=s[l];s[l]=(...f)=>{let p=i.renderer[l].apply(s,f);return!1===p&&(p=u.apply(s,f)),p}}r.renderer=s}if(i.tokenizer){const s=this.defaults.tokenizer||new UP(this.defaults);for(const l in i.tokenizer){const u=s[l];s[l]=(...f)=>{let p=i.tokenizer[l].apply(s,f);return!1===p&&(p=u.apply(s,f)),p}}r.tokenizer=s}if(i.hooks){const s=this.defaults.hooks||new HP;for(const l in i.hooks){const u=s[l];s[l]=HP.passThroughHooks.has(l)?f=>{if(this.defaults.async)return Promise.resolve(i.hooks[l].call(s,f)).then(m=>u.call(s,m));const p=i.hooks[l].call(s,f);return u.call(s,p)}:(...f)=>{let p=i.hooks[l].apply(s,f);return!1===p&&(p=u.apply(s,f)),p}}r.hooks=s}if(i.walkTokens){const s=this.defaults.walkTokens;r.walkTokens=function(l){let u=[];return u.push(i.walkTokens.call(this,l)),s&&(u=u.concat(s.call(this,l))),u}}this.defaults={...this.defaults,...r}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}#e(t,e){return(i,r,s)=>{"function"==typeof r&&(s=r,r=null);const l={...r};r={...this.defaults,...l};const u=this.#t(r.silent,r.async,s);if(typeof i>"u"||null===i)return u(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof i)return u(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(i)+", string expected"));if(function aMe(n,t){!n||n.silent||(t&&console.warn("marked(): callback is deprecated since version 5.0.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/using_pro#async"),(n.sanitize||n.sanitizer)&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options"),(n.highlight||"language-"!==n.langPrefix)&&console.warn("marked(): highlight and langPrefix parameters are deprecated since version 5.0.0, should not be used and will be removed in the future. Instead use https://www.npmjs.com/package/marked-highlight."),n.mangle&&console.warn("marked(): mangle parameter is enabled by default, but is deprecated since version 5.0.0, and will be removed in the future. To clear this warning, install https://www.npmjs.com/package/marked-mangle, or disable by setting `{mangle: false}`."),n.baseUrl&&console.warn("marked(): baseUrl parameter is deprecated since version 5.0.0, should not be used and will be removed in the future. Instead use https://www.npmjs.com/package/marked-base-url."),n.smartypants&&console.warn("marked(): smartypants parameter is deprecated since version 5.0.0, should not be used and will be removed in the future. Instead use https://www.npmjs.com/package/marked-smartypants."),n.xhtml&&console.warn("marked(): xhtml parameter is deprecated since version 5.0.0, should not be used and will be removed in the future. Instead use https://www.npmjs.com/package/marked-xhtml."),(n.headerIds||n.headerPrefix)&&console.warn("marked(): headerIds and headerPrefix parameters enabled by default, but are deprecated since version 5.0.0, and will be removed in the future. To clear this warning, install https://www.npmjs.com/package/marked-gfm-heading-id, or disable by setting `{headerIds: false}`."))}(r,s),r.hooks&&(r.hooks.options=r),s){const f=r.highlight;let p;try{r.hooks&&(i=r.hooks.preprocess(i)),p=t(i,r)}catch(b){return u(b)}const m=b=>{let w;if(!b)try{r.walkTokens&&this.walkTokens(p,r.walkTokens),w=e(p,r),r.hooks&&(w=r.hooks.postprocess(w))}catch(F){b=F}return r.highlight=f,b?u(b):s(null,w)};if(!f||f.length<3||(delete r.highlight,!p.length))return m();let _=0;return this.walkTokens(p,b=>{"code"===b.type&&(_++,setTimeout(()=>{f(b.text,b.lang,(w,F)=>{if(w)return m(w);null!=F&&F!==b.text&&(b.text=F,b.escaped=!0),_--,0===_&&m()})},0))}),void(0===_&&m())}if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(i):i).then(f=>t(f,r)).then(f=>r.walkTokens?Promise.all(this.walkTokens(f,r.walkTokens)).then(()=>f):f).then(f=>e(f,r)).then(f=>r.hooks?r.hooks.postprocess(f):f).catch(u);try{r.hooks&&(i=r.hooks.preprocess(i));const f=t(i,r);r.walkTokens&&this.walkTokens(f,r.walkTokens);let p=e(f,r);return r.hooks&&(p=r.hooks.postprocess(p)),p}catch(f){return u(f)}}}#t(t,e,i){return r=>{if(r.message+="\nPlease report this to https://github.com/markedjs/marked.",t){const s="

    An error occurred:

    "+nl(r.message+"",!0)+"
    ";return e?Promise.resolve(s):i?void i(null,s):s}if(e)return Promise.reject(r);if(!i)throw r;i(r)}}}(A0);function co(n,t,e){return wv.parse(n,t,e)}function uMe(n,t){if(1&n&&(o.j41(0,"div")(1,"h2"),o.EFF(2),o.k0s(),o.nrm(3,"ul",6),o.k0s()),2&n){const e=t.$implicit;o.R7$(2),o.JRh(e.key),o.R7$(),o.Y8G("innerHTML",e.value,o.npT)}}co.options=co.setOptions=function(n){return wv.setOptions(n),vY(co.defaults=wv.defaults),co},co.getDefaults=function MV(){return{async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,hooks:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}},co.defaults=A0,co.use=function(...n){return wv.use(...n),vY(co.defaults=wv.defaults),co},co.walkTokens=function(n,t){return wv.walkTokens(n,t)},co.parseInline=wv.parseInline,co.Parser=nf,co.parser=nf.parse,co.Renderer=VP,co.TextRenderer=EV,co.Lexer=tf,co.lexer=tf.lex,co.Tokenizer=UP,co.Slugger=SV,co.Hooks=HP,co.parse=co;let hMe=(()=>{class n{constructor(e){this.data=e,this.changes=this.getChangelogChanges()}getChangelogChanges(){let i=co.parse('# Change Log - Visualization\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](http://keepachangelog.com/)\nand this project adheres to [Semantic Versioning](http://semver.org/)\n\n## [unreleased] (Added \u{1f680} | Changed | Removed | Fixed \u{1f41e} | Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb})\n\n### Fixed \u{1f41e}\n\n- Fix resetting colors in color metrics [#3943](https://github.com/MaibornWolff/codecharta/pull/3943)\n\n## [1.133.1] - 2025-02-13\n\n### Fixed \u{1f41e}\n\n- Fixed changelog not displaying changes [#3925](https://github.com/MaibornWolff/codecharta/pull/3925)\n- Fixed camera not updating when metric scenario is applied [#3920](https://github.com/MaibornWolff/codecharta/pull/3920)\n\n## [1.133.0] - 2025-02-11\n\n### Added \u{1f680}\n\n- Updated the preview slider of the edge metric options to prioritize buildings with higher number of edges [#3918](https://github.com/MaibornWolff/codecharta/pull/3918)\n\n## [1.132.0] - 2025-02-04\n\n### Added \u{1f680}\n\n- Add a cross-hair when hovering over the color quantile diagram [#3827](https://github.com/MaibornWolff/codecharta/pull/3827)\n- Maps are always shown and rendered in alphabetical order [#3905](https://github.com/MaibornWolff/codecharta/pull/3905)\n\n### Changed\n\n- Increased the size of the color quantile diagram [#3827](https://github.com/MaibornWolff/codecharta/pull/3827)\n- Rename the "Reset camera..."-settings-button and add tooltip to make it more clear what it does [#3906](https://github.com/MaibornWolff/codecharta/pull/3906) [#3908](https://github.com/MaibornWolff/codecharta/pull/3908)\n\n### Fixed \u{1f41e}\n\n- Fix loading cc.json files that contain the \'authors\' attribute [#3848](https://github.com/MaibornWolff/codecharta/pull/3897)\n- Fix applying Custom Views [#3898](https://github.com/MaibornWolff/codecharta/pull/3898)\n- The camera is now only reset when the area or the height of the map is changed [#3896](https://github.com/MaibornWolff/codecharta/pull/3896)\n- Fix freezing app on uploading already loaded files [#3901](https://github.com/MaibornWolff/codecharta/pull/3901)\n- Fix switching maps in delta view [#3903](https://github.com/MaibornWolff/codecharta/pull/3903)\n\n## [1.131.2] - 2024-12-04\n\n### Fixed \u{1f41e}\n\n- Fix Custom View menu not working due to missing its provider [#3842](https://github.com/MaibornWolff/codecharta/pull/3842)\n\n## [1.131.1] - 2024-11-28\n\n### Fixed \u{1f41e}\n\n- Set default scroll behaviour to zoom to cursor.\n\n## [1.131.0] - 2024-11-28\n\n### Added \u{1f680}\n\n- Add alternative center-focused zoom option via the `ALT`-key [#3815](https://github.com/MaibornWolff/codecharta/pull/3815)\n- Add an apply button when selecting maps [#3637](https://github.com/MaibornWolff/codecharta/pull/3637)\n\n### Fixed \u{1f41e}\n\n- Fix that the map is reloaded when switching from delta to standard view [#3825](https://github.com/MaibornWolff/codecharta/pull/3825)\n\n## [1.130.0] - 2024-11-04\n\n### Added \u{1f680}\n\n- Add experimental feature: show buildings with an area metric value of 0 [#3789](https://github.com/MaibornWolff/codecharta/pull/3789)\n- Add further functionality for nested data to show popup when comparing files with different complexity metrics [#3791](https://github.com/MaibornWolff/codecharta/pull/3791)\n- Add improvements to the migration script for old mcc maps [#3803](https://github.com/MaibornWolff/codecharta/pull/3803)\n\n### Changed\n\n- Revert focus behaviour to old one for stability [#3793](https://github.com/MaibornWolff/codecharta/pull/3793)\n\n### Fixed \u{1f41e}\n\n- Fix that default sample files are not removed when a new file is loaded by the user [#3768](https://github.com/MaibornWolff/codecharta/pull/3768)\n- When an invisible file is deleted, the shown map is not reloaded anymore [#3788](https://github.com/MaibornWolff/codecharta/pull/3788)\n\n## [1.129.1] - 2024-10-18\n\n### Fixed \u{1f41e}\n\n- Fix an issue which caused the web demo files to be incomplete [#3790](https://github.com/MaibornWolff/codecharta/pull/3790)\n\n## [1.129.0] - 2024-10-17\n\n### Added \u{1f680}\n\n- Add thousands separation for big numbers [#3758](https://github.com/MaibornWolff/codecharta/pull/3758)\n- Add popup when comparing files with different complexity metrics [#3773](https://github.com/MaibornWolff/codecharta/pull/3773)\n- Add experimental feature: dynamic floor lable height for large maps [#3778](https://github.com/MaibornWolff/codecharta/pull/3778)\n\n### Fixed \u{1f41e}\n\n- Remove horizontal scrollbar in the File/ Node Explorer dropdown and styling fixes [#3765](https://github.com/MaibornWolff/codecharta/pull/3765)\n- Fix issue when multiple files are selected then the edge metrics in the primary metrics section are not displayed correctly. [#3753](https://github.com/MaibornWolff/codecharta/pull/3753)\n- Metric Scenarios (before Metric Templates) are available again [#3762](https://github.com/MaibornWolff/codecharta/pull/3762)\n- Legend Panel closes on outside click [#3770](https://github.com/MaibornWolff/codecharta/pull/3770)\n\n### Changed\n\n- Renaming of Metric Templates to Metric Scenarios [#3656](https://github.com/MaibornWolff/codecharta/pull/3656)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Enable View Encapsulation for components in the ribbon bar [#3779](https://github.com/MaibornWolff/codecharta/pull/3779)\n\n## [1.128.0] - 2024-09-18\n\n### Added \u{1f680}\n\n- Add feature to zoom at the mouse cursor [#3693](https://github.com/MaibornWolff/codecharta/pull/3693)\n- Add a zoom slider under the cube, allowing to zoom in and out while always displaying the current zoom factor. [#3697](https://github.com/MaibornWolff/codecharta/pull/3697)\n\n### Fixed \u{1f41e}\n\n- Fix breaking map selection layout by setting automatic line extension. [#3764](https://github.com/orgs/MaibornWolff/projects/11/views/3?pane=issue&itemId=80844170)\n- Fix issue where zooming out too much makes the map disappear and zooming in too much causes you to go through the map. [#3697](https://github.com/MaibornWolff/codecharta/pull/3697)\n- Camera perspective is correctly adopted from the custom configuration[#3698](https://github.com/MaibornWolff/codecharta/pull/3698)\n- Fix camera behavior when `Reset Camera when changing map` option is deactivated [#3699](https://github.com/MaibornWolff/codecharta/pull/3699)\n\n### Changed\n\n- Change OrbitControls to MapControls for improved map navigation [#3693](https://github.com/MaibornWolff/codecharta/pull/3693)\n- Remove unnecessary button that opened and closed the file explorer [#3647](https://github.com/MaibornWolff/codecharta/pull/3748)\n- Overhaul Focus and Unfocus functionality[#3706](https://github.com/MaibornWolff/codecharta/pull/3706)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Bump node version from 18 to 20 [#3690](https://github.com/MaibornWolff/codecharta/pull/3690)\n- Enabled view encapsulation for Global Configuration dialog, Ribbon Bar and File Panel [#3712](https://github.com/MaibornWolff/codecharta/pull/3712)\n- Enabled view encapsulation for Slider [#3713](https://github.com/MaibornWolff/codecharta/pull/3713)\n- Enabled view encapsulation for the Toolbar [#3717](https://github.com/MaibornWolff/codecharta/pull/3717)\n- Enabled view encapsulation for the Legend Panel [#3720](https://github.com/MaibornWolff/codecharta/pull/3720)\n- Enabled view encapsulation for the Attribute Side Bar [#3726](https://github.com/MaibornWolff/codecharta/pull/3726)\n- Enabled view encapsulation for Buttons [#3729](https://github.com/MaibornWolff/codecharta/pull/3729)\n- Enabled view encapsulation for the Export 3D Map Dialog [#3732](https://github.com/MaibornWolff/codecharta/pull/3732)\n- Enabled view encapsulation for Dialogs [#3736](https://github.com/MaibornWolff/codecharta/pull/3736)\n\n## [1.127.1] - 2024-08-12\n\n### Fixed \u{1f41e}\n\n- Revert [#3655](https://github.com/MaibornWolff/codecharta/pull/3665) as we implement new navigation methods\n\n## [1.127.0] - 2024-08-12\n\n### Fixed \u{1f41e}\n\n- Zooming doesn\'t affect the camera position [#3655](https://github.com/MaibornWolff/codecharta/pull/3665)\n- Fix the issue where the map disappears after excessive zooming out.[#3655](https://github.com/MaibornWolff/codecharta/pull/3665)\n- Fix visualization standalone electron build by bumping the version to 29 [#3681](https://github.com/MaibornWolff/codecharta/pull/3681)\n\n### Added \u{1f680}\n\n- Export multi-material 3MF for 3D printing of maps in color [#3616](https://github.com/MaibornWolff/codecharta/pull/3616)\n\n### Changed\n\n- IMPORTANT: The sonar complexity will no longer be renamed to MCC! [#3456](https://github.com/MaibornWolff/codecharta/pull/3606)\n\n## [1.126.0] - 2024-06-03\n\n### Added \u{1f680}\n\n- Overhaul the Suspicious Metrics menu [#3612](https://github.com/MaibornWolff/codecharta/pull/3612)\n\n## [1.125.0] - 2024-04-24\n\n### Added \u{1f680}\n\n- Add search bar for custom configs [#3529](https://github.com/MaibornWolff/codecharta/pull/3529)\n- Automatically reverse the metric direction for those where higher values indicate better codequality, such as `branch_coverage` [#3518](https://github.com/MaibornWolff/codecharta/pull/3518)\n- Display summary metrics for root node as default [#3525](https://github.com/MaibornWolff/codecharta/pull/3525)\n- Remove whitespace on screenshots [#3527](https://github.com/MaibornWolff/codecharta/pull/3527)\n\n### Fixed \u{1f41e}\n\n- Fix small style issues [#3544](https://github.com/MaibornWolff/codecharta/pull/3544)\n- Fix key handling for selection metrics [#3546](https://github.com/MaibornWolff/codecharta/pull/3546)\n- Fix applying default metric templates to ensure options reset correctly [#3560](https://github.com/MaibornWolff/codecharta/pull/3560)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update angular to v17\n\n## [1.124.1] - 2024-03-18\n\n### Fixed \u{1f41e}\n\n- Fix metrics being reset on excluding / flattening buildings [#3524](https://github.com/MaibornWolff/codecharta/pull/3524)\n- Take direction of attributes into account when creating the list with highest metrics [#3526](https://github.com/MaibornWolff/codecharta/pull/3526)\n\n## [1.124.0] - 2024-03-18\n\n### Added \u{1f680}\n\n- Display diagram of color distribution [#3511](https://github.com/MaibornWolff/codecharta/pull/3511)\n
    \n color-metric-diagram\n
    \n- Persist uploaded files and applied configuration accross page-reloads [#3486](https://github.com/MaibornWolff/codecharta/pull/3486)\n- Height, color, edge and area metric can be selected via query parameters [#3513](https://github.com/MaibornWolff/codecharta/pull/3513)\n- Capturing a screenshot of the map also captures the legend [#3520](https://github.com/MaibornWolff/codecharta/pull/3520)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Bump node version from 16 to 18 [#3452](https://github.com/MaibornWolff/codecharta/pull/3452)\n\n## [1.123.0] - 2024-02-26\n\n### Changed\n\n- CodeCharta Analysis and Visualization now have separate changelogs and releases [#3499](https://github.com/MaibornWolff/codecharta/pull/3499)\n\n### Added \u{1f680}\n\n- Highlight building on-click of file in explorer [#3488](https://github.com/MaibornWolff/codecharta/pull/3488)\n\n### Fixed \u{1f41e}\n\n- Fix buildings inability to be completely red in delta mode [#3439](https://github.com/MaibornWolff/codecharta/pull/3439)\n- Fix edge preview in visualization [#3439](https://github.com/MaibornWolff/codecharta/pull/3439)\n- Fix edges start/end intersecting with building in delta mode [#3439](https://github.com/MaibornWolff/codecharta/pull/3439)\n- Fix style issues in the node/file explorer of visualization [#3439](https://github.com/MaibornWolff/codecharta/pull/3439)\n\n## [1.122.0] - 2024-01-16\n\n### Added \u{1f680}\n\n- File explorer can be pinned while analyzing the code-map [#3459](https://github.com/MaibornWolff/codecharta/pull/3459)\n- Validate input file during interactive parser configuration [#3460](https://github.com/MaibornWolff/codecharta/pull/3460)\n- Add functionality to screenshot legend [#3471](https://github.com/MaibornWolff/codecharta/pull/3471)\n\n### Changed\n\n- Multiple values for options need to be separated by comma [#3434](https://github.com/MaibornWolff/codecharta/pull/3434)\n- Changed the short-form of the `--no-issues` flag in the SourceCodeParser from `-i` to `-ni` [#3434](https://github.com/MaibornWolff/codecharta/pull/3434)\n- Clarify sonar user token question [#3445](https://github.com/MaibornWolff/codecharta/pull/3445)\n- Changed the `--user` flag to `--user-token` in SonarImporter [#3445](https://github.com/MaibornWolff/codecharta/pull/3445)\n- Changed the interactive dialog of `modify` to prompt user for single action to perform [#3448](https://github.com/MaibornWolff/codecharta/pull/3448)\n- Selected buildings now keep their label until they are unselected [#3465](https://github.com/MaibornWolff/codecharta/pull/3465)\n\n### Fixed \u{1f41e}\n\n- Fix saving the number of top-labels in custom configs [#3461](https://github.com/MaibornWolff/codecharta/pull/3461)\n- Fix parsers crashing after printing output to stdout [#3442](https://github.com/MaibornWolff/codecharta/pull/3442)\n- Fix removal of nodes with identical names in `modify` [#3446](https://github.com/MaibornWolff/codecharta/pull/3446)\n- Fix the highlighting of very high risk metrics to highlight only matching files [#3454](https://github.com/MaibornWolff/codecharta/pull/3454)\n\n## [1.121.1] - 2023-12-08\n\n### Fixed \u{1f41e}\n\n- Fix github-pages not showing documentation [#3436](https://github.com/MaibornWolff/codecharta/pull/3436)\n\n## [1.121.0] - 2023-12-07\n\n### Added \u{1f680}\n\n- Add logging of absolute file paths of output files [#3414](https://github.com/MaibornWolff/codecharta/pull/3414)\n\n### Changed\n\n- Changed short form of parameter `--file-extensions` of RawTextParser from `-f` to `-fe` [#3405](https://github.com/MaibornWolff/codecharta/pull/3405)\n- Update readme and gh-pages for RawTextParser [#3405](https://github.com/MaibornWolff/codecharta/pull/3405)\n- Changed the `--format` flag for csv-output in SourceCodeParser from `table` to `csv` [#3414](https://github.com/MaibornWolff/codecharta/pull/3414)\n\n### Fixed \u{1f41e}\n\n- Fix RawTextParser producing incorrect output when no (or multiple) file extensions were specified in interactive mode [#3405](https://github.com/MaibornWolff/codecharta/pull/3405)\n- Fix handling of empty inputs for the `--metrics`, `--exclude`, `--file-extensions` flags in the RawTextParser [#3415](https://github.com/MaibornWolff/codecharta/pull/3415)\n- Fix RawTextParser incorrectly setting max indentation level to a predefined value [#3419](https://github.com/MaibornWolff/codecharta/pull/3419)\n- Fix the csv-exporter so that it exports multiple projects instead of just one when multiple projects are specified [#3414](https://github.com/MaibornWolff/codecharta/pull/3414)\n- Fix file extensions of output files for merged projects [#3421](https://github.com/MaibornWolff/codecharta/pull/3421)\n- Fix the ability for users to accidentally pass invalid metrics to the RawTextParser without it crashing [#3424](https://github.com/MaibornWolff/codecharta/pull/3424)\n- Fix deselected buildings with green/red roof in delta mode do not reset their color roof [#3426](https://github.com/MaibornWolff/codecharta/pull/3426)\n- Fix parser hang issue in interactive mode caused by unintentional "enter" input after the last question [#3422](https://github.com/MaibornWolff/codecharta/pull/3422)\n\n### Chore \u200d\u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Upgraded to angular 16 [#3408](https://github.com/MaibornWolff/codecharta/pull/3408)\n\n## [1.120.1] - 2023-11-17\n\n### Removed \u{1f5d1}\n\n- Deprecated download button removed (functionality has been replaced by custom views) [#3398](https://github.com/MaibornWolff/codecharta/pull/3398)\n- Remove the \'new\' badges from the \'Custom Views\' and \'Suspicious Metrics\' features as these features are no longer new [#3393](https://github.com/MaibornWolff/codecharta/pull/3399)\n\n### Fixed \u{1f41e}\n\n- Fix an issue with web demo on Safari showing a white screen and not loading [#3396](https://github.com/MaibornWolff/codecharta/pull/3396)\n- Fix the ability for users to skip the value for tab-width when configuring the rawtextparser and estimate its value [#3404](https://github.com/MaibornWolff/codecharta/pull/3404)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Add documentation for the installation requirements for metric-gardener [#3395](https://github.com/MaibornWolff/codecharta/pull/3395)\n- Add hints to README (visualization and package) about MacOS arm64 standalone execution [#3395](https://github.com/MaibornWolff/codecharta/pull/3395)\n\n## [1.120.0] - 2023-11-02\n\n### Added \u{1f680}\n\n- Only ask to merge results after parser suggestion execution when more than one parser was executed [#3384](https://github.com/MaibornWolff/codecharta/pull/3384)\n- Add the description of each parser to the list of suggested parsers [#3387](https://github.com/MaibornWolff/codecharta/pull/3387)\n\n### Changed\n\n- Adjust console output of metric gardener importer to no longer include one line for each processed node [#3386](https://github.com/MaibornWolff/codecharta/pull/3390)\n\n### Fixed \u{1f41e}\n\n- Fix command not found issue for --version and --help in the analysis [#3377](https://github.com/MaibornWolff/codecharta/pull/3377)\n- Fix metric gardener importer getting stuck for large inputs [#3382](https://github.com/MaibornWolff/codecharta/pull/3382)\n- Update docs for ccsh to remove outdated parameters and unify the pages structure [#3333](https://github.com/MaibornWolff/codecharta/pull/3388)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Raise minimum required Java Version from 8 to 11 [#3359](https://github.com/MaibornWolff/codecharta/pull/3359)\n- Swap nw.js to electron for standalone execution [#3373](https://github.com/MaibornWolff/codecharta/pull/3373)\n\n## [1.119.1] - 2023-08-03\n\n### Fixed \u{1f41e}\n\n- Fix ccsh execution under windows via cmd-terminal [#3354](https://github.com/MaibornWolff/codecharta/pull/3354)\n\n## [1.119.0] - 2023-07-13\n\n### Added \u{1f680}\n\n- Add message outputting which parser is being configured during parser suggestions [#3335](https://github.com/MaibornWolff/codecharta/pull/3335)\n- Add basic validity checking for all input resources (files/folders, url for SonarImporter) [#3325](https://github.com/MaibornWolff/codecharta/pull/3325)\n- Automatically start specific interactive parser when calling parser without args [#3332](https://github.com/MaibornWolff/codecharta/pull/3332)\n\n## [1.118.0] - 2023-06-15\n\n### Added \u{1f680}\n\n- Add metric tooltips that display attribute descriptors and provide hyperlinks in the sidebar to the metric\'s documentation [#3273](https://github.com/MaibornWolff/codecharta/pull/3273)
    \n \n- Expand and restructure documentation regarding Docker usage [#3312](https://github.com/MaibornWolff/codecharta/pull/3312)\n- Add current working directories as hint or default value to interactive parser and parser suggestions when asking for input [#3319](https://github.com/MaibornWolff/codecharta/pull/3319)\n- Add helpful status messages when calculating parser suggestions [#3329](https://github.com/MaibornWolff/codecharta/pull/3329)\n\n### Fixed \u{1f41e}\n\n- Speed up parser suggestions significantly [#3329](https://github.com/MaibornWolff/codecharta/pull/3329)\n- Fix color range reset not triggering on color metric change [#3311](https://github.com/MaibornWolff/codecharta/pull/3311)\n\n## [1.117.0] - 2023-05-19\n\n### Added \u{1f680}\n\n- Add support for parser suggestions to SVN-, MetricGardener-, RawText- and SourceCodeParser [#3287](https://github.com/MaibornWolff/codecharta/pull/3287)\n- Add semi automatic merging feature after executing multiple parsers [#3287](https://github.com/MaibornWolff/codecharta/pull/3287)\n- Expand developer documentation to include common problems and solutions for them [#3289](https://github.com/MaibornWolff/codecharta/pull/3289)\n\n### Fixed \u{1f41e}\n\n- Fix entrypoint for analysis docker image [#3259](https://github.com/MaibornWolff/codecharta/pull/3259)\n- Show again delta of a building which have nothing in common in red or green [#3271](https://github.com/MaibornWolff/codecharta/pull/3271)\n- Always show description of suspicious metrics [#3285](https://github.com/MaibornWolff/codecharta/pull/3285)\n- Show suspicious metrics and risk profile documentation pages in navigation bar [#3290](https://github.com/MaibornWolff/codecharta/pull/3290)\n- Merge filter will now abort execution when an invalid file is specified as input [#3305](https://github.com/MaibornWolff/codecharta/pull/3305)\n- Fix formatting issues in docs turning `--` to `\u2013` [#3301](https://github.com/MaibornWolff/codecharta/pull/3301)\n\n### Changed\n\n- Adjusted documentation for parser suggestions [#3287](https://github.com/MaibornWolff/codecharta/pull/3287)\n- Make the size of the CodeCharta logo more suitable for any screen size and remove MaibornWolff logo [#3302](https://github.com/MaibornWolff/codecharta/pull/3302)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Replace custom Redux adapter through real NgRx [#3271](https://github.com/MaibornWolff/codecharta/pull/3271)\n\n## [1.116.0] - 2023-04-28\n\n### Added \u{1f680}\n\n- Add automatic parser suggestions to recommend usable parsers for a codebase (supports GitLogParser and SonarImporter) when running `ccsh` command [#3275](https://github.com/MaibornWolff/codecharta/pull/3275)
    \n ![image](https://user-images.githubusercontent.com/129938897/234309117-c9edd4e7-7c53-4ba7-b849-ec9c3f8f3215.png)\n- Add documentation subsections for interactive shell and parser suggestions\n\n### Changed\n\n- Changed default behavior when launching ccsh without arguments to parser suggestions [#3275](https://github.com/MaibornWolff/codecharta/pull/3275)\n- Old interactive parser selection now reachable by passing `-i` or `--interactive` as arguments [#3275](https://github.com/MaibornWolff/codecharta/pull/3275)\n\n### Fixed \u{1f41e}\n\n- Fix suspicious metrics and risk profile docs not loading [#3272](https://github.com/MaibornWolff/codecharta/pull/3272)\n\n## [1.115.1] - 2023-04-06\n\n### Removed \u{1f5d1}\n\n- Support for Custom Views created before CodeCharta version 1.110.0 or older is no longer be maintained [#3265](https://github.com/MaibornWolff/codecharta/pull/3265)\n\n### Fixed \u{1f41e}\n\n- Fix the disappearance of the suspicious metrics labels [#3263](https://github.com/MaibornWolff/codecharta/pull/3263)\n- Fix UI components that look different since version 1.115.0 [#3260](https://github.com/MaibornWolff/codecharta/pull/3260)\n- Show latest release notes in changelog dialog [#3264](https://github.com/MaibornWolff/codecharta/pull/3264)\n\n## [1.115.0] - 2023-03-30\n\n### Added \u{1f680}\n\n- Display the CodeCharta logo next to the MaibornWolff logo [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Tooltip for primary and secondary metrics that displays AttributeDescriptor information in the sidebar [#3239](https://github.com/MaibornWolff/codecharta/pull/3239)
    \n ![image](https://user-images.githubusercontent.com/65733509/227218468-b7d1e1ae-b847-40ab-8513-f3762b8787bb.png)\n- Supports adding note to a custom view, provides a preview and an edit option for notes from the selection menu [#3234](https://github.com/MaibornWolff/codecharta/pull/3234)
    \n ![image](https://user-images.githubusercontent.com/72517530/226942610-9e08d39c-324d-4de3-81d0-4e5da4e589aa.png)\n ![image](https://user-images.githubusercontent.com/72517530/226943152-1bb339bb-c39f-4bf6-a32d-ee8476249f98.png)\n\n### Changed\n\n- The Suspicious metrics and Risk profile Feature is now also available outside the Experimental Feature Mode [#2963](https://github.com/MaibornWolff/codecharta/pull/2963)
    \n ![image](https://user-images.githubusercontent.com/47224279/222686442-05d4b83c-04d7-4275-b1eb-4339e8906130.jpg)\n- Made the background color a bit lighter [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Saturate the distribution bar colors [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Improve the layout of all metric menus [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Improve the layout of the global configuration dialog [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Improve the layout of the metric chooser panel [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Change the primary color to match the color of the CodeCharta logo [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Improve the docs for suspicious metrics and risk profile feature [#3238](https://github.com/MaibornWolff/codecharta/pull/3238)\n- Improve Custom Views Dialog [#3238](https://github.com/MaibornWolff/codecharta/pull/3248)\n\n### Fixed \u{1f41e}\n\n- Unselecting a folder in Presentation Mode leads to console error [#3215](https://github.com/MaibornWolff/codecharta/pull/3215)\n- Fix Shrunken FileExplorer\'s file list on small displays [#3235](https://github.com/MaibornWolff/codecharta/pull/3235)\n- Fix various margin problems in the UI [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Fix bumpy animations when moving/turning the map, hover buildings (showing labels and edges) [#3244](https://github.com/MaibornWolff/codecharta/pull/3244)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Upgrade all material UI components to MDC (not using the UI legacy components any more) [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n\n## [1.114.0] - 2023-01-13\n\n### Added \u{1f680}\n\n- Add an option to hide floor labels under the Area Metric Options. This recalculates the map. [#3175](https://github.com/MaibornWolff/codecharta/pull/3175)\n\n### Removed \u{1f5d1}\n\n- Camera settings for custom views generated with version 1.101.1 and earlier are now ignored. [#3196](https://github.com/MaibornWolff/codecharta/pull/3196)\n\n### Fixed \u{1f41e}\n\n- Reposition legend panel button again, when attribute sidebar is open [#3183](https://github.com/MaibornWolff/codecharta/pull/3183)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Add attribute descriptors (metric descriptions) to TokeiImporter and SVNlogParser [#3176](https://github.com/MaibornWolff/codecharta/pull/3176)\n\n## [1.113.0] - 2022-12-15\n\n### Changed\n\n- The Custom Views Feature is now also available outside the Experimental Feature Mode [#3079](https://github.com/MaibornWolff/codecharta/pull/3076)
    \n ![image](https://user-images.githubusercontent.com/72517530/204557970-0ba31f3b-5209-4707-a2d0-55cc45509f8a.png)\n- Please note that the functionality of downloading cc.json maps will no longer be supported from April 2023. Instead, use the Custom View feature to create and share configurations for different views of your map. [#3079](https://github.com/MaibornWolff/codecharta/pull/3076)\n- Change tooltips in the legend to show the metric description [#3162](https://github.com/MaibornWolff/codecharta/pull/3162)
    \n ![image](https://user-images.githubusercontent.com/27358421/205251507-100b1e1a-d86e-44f3-89cf-f32bf295aabd.png)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Improve metric titles by loading them from cc.json [#3162](https://github.com/MaibornWolff/codecharta/pull/3162)\n- Add attribute descriptors to SoureCodeParser [#3166](https://github.com/MaibornWolff/codecharta/pull/3166)\n\n## [1.112.1] - 2022-12-01\n\n### Fixed \u{1f41e}\n\n- Reverted PR [#3077](https://github.com/MaibornWolff/codecharta/pull/3077) that introduced a rendering bug, where buildings sizes were not proportional to their area value [#3159](https://github.com/MaibornWolff/codecharta/pull/3159)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Add attribute descriptors to SonarImporter [#3149](https://github.com/MaibornWolff/codecharta/pull/3149)\n- Add title field to attribute descriptors [#3158](https://github.com/MaibornWolff/codecharta/pull/3158)\n\n## [1.112.0] - 2022-11-25\n\n### Added \u{1f680}\n\n- New calculation algorithm for treeMap that accounts for paddings and floor labels [#3077](https://github.com/MaibornWolff/codecharta/pull/3077)\n\n### Fixed \u{1f41e}\n\n- Fix ribbon-bar shadow moving down when search is expanded [#3138](https://github.com/MaibornWolff/codecharta/pull/3138)\n- Fix loading errors of maps containing no programming-language-info [#3144](https://github.com/MaibornWolff/codecharta/pull/3144)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Documentation for new treeMap calculation algorithm [#3077](https://github.com/MaibornWolff/codecharta/pull/3077)\n- Add attribute descriptors (metric descriptions) to some filters and importers [#3091](https://github.com/MaibornWolff/codecharta/pull/3091)\n\n## [1.111.0] - 2022-11-17\n\n### Added \u{1f680}\n\n- Add description to every Custom View [#3119](https://github.com/MaibornWolff/codecharta/pull/3119)
    \n ![image](https://user-images.githubusercontent.com/72517530/201381274-a9a913d5-8f9d-4da6-9f26-6476e194ce3b.png)\n- Highlight files and folders with no area metric or an area metric value of zero in the search panel [#3126](https://github.com/MaibornWolff/codecharta/pull/3126)\n\n### Changed\n\n- Be aware, that all Custom Views generated with version 1.110.0 or older will be unusable by April 2023 [#3119](https://github.com/MaibornWolff/codecharta/pull/3119)\n\n### Fixed \u{1f41e}\n\n- Fix Node Context-Menu in Map Tree View opening multiple times [#3135](https://github.com/MaibornWolff/codecharta/pull/3135)\n- Fix crashing on focusing or hovering un-rendered buildings [#3123](https://github.com/MaibornWolff/codecharta/pull/3123)\n- Fix showing changelog entries in the dialog when a new version is available [#3123](https://github.com/MaibornWolff/codecharta/pull/3129)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update supported latest browsers [#3125](https://github.com/MaibornWolff/codecharta/pull/3125)\n- Split e2e and unit test configs [#3128](https://github.com/MaibornWolff/codecharta/pull/3128)\n\n## [1.110.0] - 2022-11-04\n\n### Changed\n\n- Custom Views are now applicable even if maps or mode are different. Missing maps or map selection mode is displayed in the tooltip [#3090](https://github.com/MaibornWolff/codecharta/pull/3090)\n- Be aware, that all Custom Views generated with version 1.109.1 or older will be unusable by April 2023 [#3105](https://github.com/MaibornWolff/codecharta/pull/3105)\n\n### Fixed \u{1f41e}\n\n- Fix broken link to Custom View documentation [#3101](https://github.com/MaibornWolff/codecharta/pull/3101)\n- Don\'t re-center map after every state change like changing area metric [#3109](https://github.com/MaibornWolff/codecharta/pull/3109)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Adjust Custom View API and maintain old Custom Views until April 2023 [#3105](https://github.com/MaibornWolff/codecharta/pull/3105)\n- Migrate codeMap.render.service, codeMap.label.service, codeMap.mouseEvent.service, codeMap.arrow.service, codeCharta.service, sharpnessMode.service, isLoadingFile.service, scaling.service and experimentalFeaturesEnabled.service to Angular [#3094](https://github.com/MaibornWolff/codecharta/pull/3094)\n- Extract tree map size into a const as this is never changed [3098](https://github.com/MaibornWolff/codecharta/pull/3098)\n- Migrate markedPackages.service, edges.service, blacklist.service, files.service and injector.service [3106](https://github.com/MaibornWolff/codecharta/pull/3106)\n- Refactor out `LoadInitialFileService` and fix with it loose Promise in tests [#3110](https://github.com/MaibornWolff/codecharta/pull/3110)\n- Migrate codeCharta.component, storeService.service and remove AngularJS dual boot from bootstrapping [#3114](https://github.com/MaibornWolff/codecharta/pull/3114)\n- Remove obsolete AngularJS dependencies [#3115](https://github.com/MaibornWolff/codecharta/pull/3115)\n\n## [1.109.1] - 2022-10-12\n\n### Fixed \u{1f41e}\n\n- Fix broken links on new GitHub Page \'Docker Containers\' [#3089](https://github.com/MaibornWolff/codecharta/pull/3089)\n\n## [1.109.0] - 2022-10-12\n\n### Added \u{1f680}\n\n- Add description and documentation to Custom View modal [#3085](https://github.com/MaibornWolff/codecharta/pull/3085)\n- Add a new button that links the height metric to the color metric so that the colour metric is automatically set to\n the selected height metric [#3058](https://github.com/MaibornWolff/codecharta/pull/3058)
    \n ![image](https://user-images.githubusercontent.com/72517530/193291144-fdc73a15-2087-47e2-845b-05c666aec71d.png)
    \n ![image](https://user-images.githubusercontent.com/72517530/194300920-60ce9fcd-0dd5-46ef-a90b-01d9a29205e6.png)\n\n### Fixed \u{1f41e}\n\n- Fix interactive GitLogParser using wrong dialogue with repo-scan subcommand [#3073](https://github.com/MaibornWolff/codecharta/pull/3073)\n- Fix CodeCharta Analysis container exiting when detached [#3062](https://github.com/MaibornWolff/codecharta/pull/3062)\n- Fix CodeCharta Analysis container not coming with the sonar-scanner pre-installed [#3062](https://github.com/MaibornWolff/codecharta/pull/3062)\n- Rerender immediately after marking a folder with a color [#3067](https://github.com/MaibornWolff/codecharta/pull/3067)\n- Clicking the \'reset height metric settings\' button resets the number of top labels to the dynamic default value [#3066](https://github.com/MaibornWolff/codecharta/pull/3066)\n- Unfocus nodes when changing selected files, which prevents the app from crashing [#3072](https://github.com/MaibornWolff/codecharta/pull/3072)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update Docker Publish Action in Release Pipeline [#3060](https://github.com/MaibornWolff/codecharta/pull/3060)\n- Write documentation for docker containers [#3063](https://github.com/MaibornWolff/codecharta/pull/3063)\n- Migrate isAttributeSideBarVisible.service, threeScene.service, threeCamera.service and threeStats.service to Angular [#3068](https://github.com/MaibornWolff/codecharta/pull/3068)\n- Migrate dialog.service to Angular [#3072](https://github.com/MaibornWolff/codecharta/pull/3072)\n- Add documentation for new treeMap algorithm [#3077](https://github.com/MaibornWolff/codecharta/pull/3077)\n- Migrate dialog.service to Angular [#3070](https://github.com/MaibornWolff/codecharta/pull/3070)\n- Migrate FocusedNodePathService, LayoutAlgorithmService, ThreeOrbitControlsService and ThreeViewerService to Angular [#3072](https://github.com/MaibornWolff/codecharta/pull/3072)\n- Migrate updateAttributeTypes.service to Angular [#3082](https://github.com/MaibornWolff/codecharta/pull/3082)\n\n## [1.108.1] - 2022-09-29\n\n## Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update formatting in Docker Release Pipeline [#3059](https://github.com/MaibornWolff/codecharta/pull/3059)\n\n## [1.108.0] - 2022-09-28\n\n### Added \u{1f680}\n\n- Add new Analysis docker container, together with a docker-compose file that contains analysis, visualization and a\n SonarQube instance [#3057](https://github.com/MaibornWolff/codecharta/pull/3057)\n\n### Removed \u{1f5d1}\n\n- remove outdated Crococosmo, Understand and Jasome Importer from Analysis including its documentation [#3053](https://github.com/MaibornWolff/codecharta/pull/3053)\n\n## [1.107.0] - 2022-09-27\n\n### Added \u{1f680}\n\n- Add subcommand to GitLogParser to run necessary git commands automatically [#3041](https://github.com/MaibornWolff/codecharta/pull/3041)\n\n### Changed\n\n- Change default behaviour of GitLogParser to use new subcommands [#3041](https://github.com/MaibornWolff/codecharta/pull/3041)\n- Set default value for displaying labels 1 per 100 buildings with a maximum of 10 labels [#3046](https://github.com/MaibornWolff/codecharta/pull/3046)\n\n### Fixed \u{1f41e}\n\n- Uncheck the box when \'reset invert height\' icon is clicked [#3048](https://github.com/MaibornWolff/codecharta/pull/3048)\n- Update ReadMe and GitHub pages for MetricGardener [#3045](https://github.com/MaibornWolff/codecharta/pull/3045)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate codeMap.component to Angular with minor internal improvements [#3049](https://github.com/MaibornWolff/codecharta/pull/3049)\n- Remove threeUpdateCycle.service [#3050](https://github.com/MaibornWolff/codecharta/pull/3050)\n- Migrate metricData.service, edgeMetric.service, nodeMetricData.service and edgeMetricData.service to Angular [#3051](https://github.com/MaibornWolff/codecharta/pull/3051)\n- Migrate threeRenderer.service to Angular [#3052](https://github.com/MaibornWolff/codecharta/pull/3052)\n\n## [1.106.1] - 2022-09-20\n\n### Fixed \u{1f41e}\n\n- CC-JSON Files not loaded on Safari browser [#3042](https://github.com/MaibornWolff/codecharta/pull/3042)\n- Show loading spinners while loading a file [#2980](https://github.com/MaibornWolff/codecharta/pull/2980)\n- Prevent clicking on not opened metric options in ribbon bar [#3029](https://github.com/MaibornWolff/codecharta/pull/3029)\n- Set cursor to pointer on color settings panel of delta mode [#3029](https://github.com/MaibornWolff/codecharta/pull/3029)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Throttle rendering and migrate codeMap.preRender.service to Angular [#2980](https://github.com/MaibornWolff/codecharta/pull/2980)\n\n## [1.106.0] - 2022-09-13\n\n### Added \u{1f680}\n\n- Add option to CSVImporter to specify the path column name [#3026](https://github.com/MaibornWolff/codecharta/pull/3026)\n\n### Changed\n\n- Stop asking the user to compress a file when printing to stdOut [#3024](https://github.com/MaibornWolff/codecharta/pull/3024)\n\n### Fixed \u{1f41e}\n\n- Fix anongit script using the wrong whitespace, causing gitlogparser to fail [#3030](https://github.com/MaibornWolff/codecharta/pull/3030)\n- Reshow suspicious metrics badge when calculated data has changed [#2997](https://github.com/MaibornWolff/codecharta/pull/2997)\n\n## [1.105.0] - 2022-09-06\n\n### Added \u{1f680}\n\n- Add an option to run MetricGardener before its parser if requested [#3015](https://github.com/MaibornWolff/codecharta/pull/3015)\n- Add missing documentation for MetricGardener importer [#3016](https://github.com/MaibornWolff/codecharta/pull/3016)\n\n### Changed\n\n- Increase the size of the close button to simplify closing the attribute sidebar [#3014](https://github.com/MaibornWolff/codecharta/pull/3014)\n\n### Fixed \u{1f41e}\n\n- Fix console error when clicking switch button in delta mode [#3023](https://github.com/MaibornWolff/codecharta/pull/3023)\n- Fix broken images to new document pages about how using SonarQube [#3012](https://github.com/MaibornWolff/codecharta/pull/3012)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate tool bar component to Angular [#3020](https://github.com/MaibornWolff/codecharta/pull/3020)\n- Remove obsolete AngularJS IsPresentationModeService and ShowOnlyBuildingsWithEdgesService [#3005](https://github.com/MaibornWolff/codecharta/pull/3005)\n\n## [1.104.1] - 2022-08-31\n\n### Fixed \u{1f41e}\n\n- Fix broken links to new document pages about how using SonarQube [#3009](https://github.com/MaibornWolff/codecharta/pull/3009)\n\n## [1.104.0] - 2022-08-31\n\n### Added \u{1f680}\n\n- Copy-to-Clipboard-Button to paste the top 10 files with highest metric values [#2942](https://github.com/MaibornWolff/codecharta/pull/2942), [#2996](https://github.com/MaibornWolff/codecharta/pull/2995)
    \n ![image](https://user-images.githubusercontent.com/46388280/184089603-ecfa8e31-8241-42a2-9954-2de554347381.png)
    \n ![image](https://user-images.githubusercontent.com/46388280/184089577-5cd2eec0-5293-4083-b629-0e3c5621047c.png)\n\n### Fixed \u{1f41e}\n\n- Correct file types now get appended to the name of the output file when using the interactive ccsh [#2914](https://github.com/MaibornWolff/codecharta/pull/2914)\n- Fix exit code handling and update integrationTest\'s golden_test.sh to cover all modules [#2988](https://github.com/MaibornWolff/codecharta/pull/2988)\n- Fix missing color pickers within edge metric options [#2993](https://github.com/MaibornWolff/codecharta/pull/2993)\n- Fix labels being displayed at an incorrect height and lines being disconnected from labels [#2991](https://github.com/MaibornWolff/codecharta/pull/2991)\n- Provides a list of metrics where no calculation could be performed in relation to a suspicion [#2996](https://github.com/MaibornWolff/codecharta/pull/2996)
    \n ![missing_values_suspicious_metrics](https://user-images.githubusercontent.com/31436472/187439165-77eda080-ceba-4bab-b077-4f6a2d6162b5.png)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate view cube component and its service to Angular [#2998](https://github.com/MaibornWolff/codecharta/pull/2998)\n\n## [1.104.0] - 2022-08-29\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate presentation mode button to Angular [#2938](https://github.com/MaibornWolff/codecharta/pull/2938)\n\n## [1.103.6] - 2022-08-17\n\n### Fixed \u{1f41e}\n\n- Fix bug in CompressionStreamHandler\'s input stream validation, that caused endless blocking reads from System.In [#2987](https://github.com/MaibornWolff/codecharta/pull/2987)\n\n## [1.103.5] - 2022-08-12\n\n### Changed\n\n- Update visualization readme file [#2932](https://github.com/MaibornWolff/codecharta/pull/2932)\n- Update the documentation for the usage of SonarQube [#2965](https://github.com/MaibornWolff/codecharta/pull/2965)\n\n### Fixed \u{1f41e}\n\n- Add permission to upload-assets action [#2979](https://github.com/MaibornWolff/codecharta/pull/2979), [#2982](https://github.com/MaibornWolff/codecharta/pull/2982)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate download button to Angular [#2973](https://github.com/MaibornWolff/codecharta/pull/2973)\n\n## [1.103.3] - 2022-08-10\n\n### Fixed \u{1f41e}\n\n- Update Ubuntu images package list as part of the wine action [#2976](https://github.com/MaibornWolff/codecharta/pull/2976)\n\n## [1.103.2] - 2022-08-10\n\n### Fixed \u{1f41e}\n\n- Highlight buildings on hover of file extension bar [#2969](https://github.com/MaibornWolff/codecharta/pull/2969)\n- Fix of the npm visualization installation under MacOS by version bumping nwjs [#2974](https://github.com/MaibornWolff/codecharta/pull/2974)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate file extension bar to Angular [#2968](https://github.com/MaibornWolff/codecharta/pull/2968)\n\n## [1.103.1] - 2022-08-09\n\n### Fixed \u{1f41e}\n\n- Change release action script in order to show changelog in release notes [#2970](https://github.com/MaibornWolff/codecharta/pull/2970)\n\n## [1.103.0] - 2022-08-09\n\n### Changed\n\n- Update links to demo website [#2961](https://github.com/MaibornWolff/codecharta/pull/2961)\n\n### Added \u{1f680}\n\n- Show tooltip with explanation for some metrics [#2957](https://github.com/MaibornWolff/codecharta/pull/2957)\n\n### Fixed \u{1f41e}\n\n- Fix installation instructions for Apple Silicon [#2956](https://github.com/MaibornWolff/codecharta/pull/2956)\n- Fix release tag [#2954](https://github.com/MaibornWolff/codecharta/pull/2954)\n- Prevent dark map on unhover [#2959](https://github.com/MaibornWolff/codecharta/pull/2959)\n- Zoom in/out time [#2959](https://github.com/MaibornWolff/codecharta/pull/2959)\n- Fix webpack build package being corrupt if zipped under linux by changing the compression path [#2934](https://github.com/MaibornWolff/codecharta/pull/2934)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Load metric templates lazily and migrate them to Angular [#2960](https://github.com/MaibornWolff/codecharta/pull/2960)\n\n## [1.102] - 2022-08-04\n\n### Changed\n\n- Changed storing format for camera position within custom views and scenarios. Loading of created custom views or scenarios in old format will stop working in 2023 [2880](https://github.com/MaibornWolff/codecharta/pull/2880)\n- Add error messages for the user to "Add Scenario Dialog" [#2928](https://github.com/MaibornWolff/codecharta/pull/2928)\n\n### Added \u{1f680}\n\n- Switch reference and comparison file by button click in delta mode [#2933](https://github.com/MaibornWolff/codecharta/pull/2933)\n ![image](https://user-images.githubusercontent.com/72517530/182630368-2d2b177d-8b4b-4850-8486-8d9afc7153c5.png)\n- Add display of changed files in delta mode (changed := metric values changed or list of applied metrics\n changed) [#2890](https://github.com/MaibornWolff/codecharta/pull/2890)\n ![image](https://user-images.githubusercontent.com/72517530/182631857-6192dea1-7a01-4684-90a6-d5da8615434a.png)\n- Load compressed files (cc.json.gz) via URL parameter [#2917](https://github.com/MaibornWolff/codecharta/pull/2917)\n\n### Fixed \u{1f41e}\n\n- Fix SonarImporter requesting no metrics from SonarQube when the list of metrics was left empty [#2913](https://github.com/MaibornWolff/codecharta/pull/2913)\n- Exclude edge metrics from custom scenarios, when there are no edge metrics available. Before it was impossible to apply those custom configs [#2928](https://github.com/MaibornWolff/codecharta/pull/2928)\n- Fix of NoSuchMethodException due to a call of method `readNBytes()` that is not available in Java 9 with replacement call `read()` [#2930](https://github.com/MaibornWolff/codecharta/pull/2930)\n- Keep selected metrics when excluding buildings [#2935](https://github.com/MaibornWolff/codecharta/pull/2935)\n- Update UI correctly when toggling between standard and delta mode [#2937](https://github.com/MaibornWolff/codecharta/pull/2937)\n\n## [1.101.1] - 2022-07-27\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Modify build script for GitHub pages in order to provide zipped maps.\n\n## [1.101.0] - 2022-07-26\n\n### Added \u{1f680}\n\n- Transform a metric gardener json file into a code charta json file, that can be correctly visualized [#2675](https://github.com/MaibornWolff/codecharta/pull/2875)\n\n### Changed\n\n- Restore previous selected files when switching back from delta to standard mode [#2891](https://github.com/MaibornWolff/codecharta/pull/2891)\n- Add more metrics that can be preselected when opening a cc.json file [#2907](https://github.com/MaibornWolff/codecharta/pull/2907) [#2908](https://github.com/MaibornWolff/codecharta/pull/2908)\n\n### Fixed \u{1f41e}\n\n- Let file selection always show what is actual rendered within the map [#2891](https://github.com/MaibornWolff/codecharta/pull/2891)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Improve performance by slightly delaying node-name popups and removing unused functionality [#2897](https://github.com/MaibornWolff/codecharta/pull/2897)\n\n## [1.100.0] - 2022-07-12\n\n### Added \u{1f680}\n\n- Add a description for the statements metric [#2883](https://github.com/MaibornWolff/codecharta/pull/2883)\n\n### Changed\n\n- Select matching metric combination based on available metrics [#2862](https://github.com/MaibornWolff/codecharta/pull/2862)\n- Unify UI of buttons in toolbar [#2857](https://github.com/MaibornWolff/codecharta/pull/2857)\n\n### Fixed \u{1f41e}\n\n- Fix resetting of color range within color settings panel [#2877](https://github.com/MaibornWolff/codecharta/pull/2877)\n- Fix resetting of colors in delta mode within color settings panel [#2873](https://github.com/MaibornWolff/codecharta/pull/2873)\n- Restore global settings on page load again [#2878](https://github.com/MaibornWolff/codecharta/pull/2878)\n- Fix \'undefinded\' being displayed as a metric description when no description was available [#2883](https://github.com/MaibornWolff/codecharta/pull/2883)\n- Fix windows standalone builds [#2881](https://github.com/MaibornWolff/codecharta/pull/2881)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate color settings panel to Angular [#2873](https://github.com/MaibornWolff/codecharta/pull/2873)\n\n## [1.99.1] - 2022-06-22\n\n### Fixed \u{1f41e}\n\n- Fix packaging of standalone app for macOS and Windows [#2847](https://github.com/MaibornWolff/codecharta/pull/2847)\n- Fix dialogparser test of sourcecode parser[#2860](https://github.com/MaibornWolff/codecharta/pull/2860)\n\n## [1.99.0] - 2022-06-21\n\n### Added \u{1f680}\n\n- Add interactive dialog support for the remaining parsers [#2833](https://github.com/MaibornWolff/codecharta/pull/2833) [#2836](https://github.com/MaibornWolff/codecharta/pull/2836) [#2842](https://github.com/MaibornWolff/codecharta/pull/2842) [#2843](https://github.com/MaibornWolff/codecharta/pull/2843) [#2846](https://github.com/MaibornWolff/codecharta/pull/2846)\n\n### Fixed \u{1f41e}\n\n- Fix analysis bug where importers would get stuck before file output [#2854](https://github.com/MaibornWolff/codecharta/pull/2854)\n- Use correct icon for height metric chooser again [#2851](https://github.com/MaibornWolff/codecharta/pull/2851)\n- Close height metric option instead of making it only invisible on close [#2853](https://github.com/MaibornWolff/codecharta/pull/2853)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate changelog dialog to Angular [#2849](https://github.com/MaibornWolff/codecharta/pull/2849)\n- Migrate node path panel to Angular [#2855](https://github.com/MaibornWolff/codecharta/pull/2855)\n\n## [1.98.0] - 2022-06-14\n\n### Added \u{1f680}\n\n- Add missing documentation for ccsh filters and csv exporter [#2831](https://github.com/MaibornWolff/codecharta/pull/2831)\n- Add support for compressed files to all analysis filters and to `check` validation [#2820](https://github.com/MaibornWolff/codecharta/pull/2820)\n\n### Changed\n\n- Update Readme file [#2837](https://github.com/MaibornWolff/codecharta/pull/2837)\n\n### Fixed \u{1f41e}\n\n- Default selected metrics on file changes when default scenario is not applicable [#2828](https://github.com/MaibornWolff/codecharta/pull/2828)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Remove old references to single mode states and actions [#2574](https://github.com/MaibornWolff/codecharta/pull/2841)\n- Rename multiple mode references to standard [#2574](https://github.com/MaibornWolff/codecharta/pull/2848)\n\n## [1.97.0] - 2022-05-31\n\n### Added \u{1f680}\n\n- Add interactive dialog support for the parsers [#2737](https://github.com/MaibornWolff/codecharta/pull/2737) [#2822](https://github.com/MaibornWolff/codecharta/pull/2822)
    \n ![m](https://user-images.githubusercontent.com/48621967/161549546-1463914e-c223-4912-acb1-db4e357e76c5.png)\n\n### Changed\n\n- Hide color metric range-slider in color metric options of ribbon bar in delta mode instead of disabling it [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n- Display max value of selected distribution metric in file extension bar [#2824](https://github.com/MaibornWolff/codecharta/pull/2824)\n- Display max value of selected metric in all metric chooser of ribbon bar [#2825](https://github.com/MaibornWolff/codecharta/pull/2825)\n\n### Fixed \u{1f41e}\n\n- Handle invalid input of range-slider correctly [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n- Use real color range min value instead of 0 and take color range min value into account for calculating initial first third of positive color [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n- Fix range-slider in case of min value equal to max value [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Track not only changes to color metric options by slider but also by related input field [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n- Migrate center-map-button-component to Angular [#2809](https://github.com/MaibornWolff/codecharta/pull/2809)\n- Migrate the following components to Angular: globalSettingsButton.component, dialog.globalSettings.component, layoutSelection.component, sharpnessModeSelector.component, maxTreeMapFiles.component, maxTreeMapFiles.service, hideFlatBuildings.service, resetCameraIfNewFileIsLoaded.service [#2815](https://github.com/MaibornWolff/codecharta/pull/2815)\n- Migrate area-settings-panel-component to Angular [#2821](https://github.com/MaibornWolff/codecharta/pull/2821)\n\n## [1.96.0] - 2022-05-17\n\n### Changed\n\n- Remove all mentions of regular `.cc` `.json` `.gz` file extensions from file panel and sidebar [#2793](https://github.com/MaibornWolff/codecharta/pull/2793)\n\n### Fixed \u{1f41e}\n\n- Update slider of area metric options correctly on changes of related input field [#2787](https://github.com/MaibornWolff/codecharta/pull/2787)\n- Limit length of labels in legend panel [#2804](https://github.com/MaibornWolff/codecharta/pull/2804)\n- Prevent invalid input for margin in area metric options to be submitted [#2799](https://github.com/MaibornWolff/codecharta/pull/2799)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Introduce custom angular material theme [#2784](https://github.com/MaibornWolff/codecharta/pull/2784)\n- Migrate height-settings-panel-component [#2790](https://github.com/MaibornWolff/codecharta/pull/2790)\n- Fully migrate custom-config-component [#2760](https://github.com/MaibornWolff/codecharta/pull/2760)\n\n## [1.95.2] - 2022-04-19\n\n### Changed\n\n- Restrict upload in custom views menu to custom views. Custom views uploaded in the custom views menu are now allowed to have an arbitrary file suffix [#2773](https://github.com/MaibornWolff/codecharta/pull/2773)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate reset-settings-button-component to Angular [#2774](https://github.com/MaibornWolff/codecharta/pull/2774)\n\n### Fixed \u{1f41e}\n\n- Set files loaded via URL to multiple mode by default when delta mode is not selected [#2769](https://github.com/MaibornWolff/codecharta/pull/2769)\n\n## [1.95.1] - 2022-04-01\n\n### Changed\n\n- Display project name as file name (if not empty or blank) for loaded files via URL [#2767](https://github.com/MaibornWolff/codecharta/pull/2767)\n\n### Fixed \u{1f41e}\n\n- Fixes floor labels being drawn next to the map if margin was changed after map height is unequal to 1 [#2763](https://github.com/MaibornWolff/codecharta/pull/2763)\n- Fixes floor labels being stuck inside folder geometry when scaling [#2766](https://github.com/MaibornWolff/codecharta/pull/2766)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate metric-hovered-value-component to Angular [#2752](https://github.com/MaibornWolff/codecharta/pull/2752)\n\n## [1.95.0] - 2022-03-28\n\n### Added \u{1f680}\n\n- Focused gradient option for color metric. Only applies a gradient between the two set borders. [#2750](https://github.com/MaibornWolff/codecharta/pull/2750)\n\n### Changed\n\n- Mark SCMLogParserV2 as stable and deprecate SCMLogParser for Git [2725](https://github.com/MaibornWolff/codecharta/pull/2725)\n - Rename SCMLogParserV2 to GitLogParser\n - Rename SCMLogParser to SVNLogParser and remove git parsing\n\n### Fixed \u{1f41e}\n\n- Set initially correct attribute type of primary edge metric in attribute sidebar [#2731](https://github.com/MaibornWolff/codecharta/issues/2731)\n- Fix switching secondary metrics to median aggregation in attribute sidebar [#2630](https://github.com/MaibornWolff/codecharta/issues/2630)\n\n## [1.94.0] - 2022-03-21\n\n### Changed\n\n- Improve sonarimport help message [#2717](https://github.com/MaibornWolff/codecharta/pull/2717)\n- Remove blacklist entry on click of name as well [#2712](https://github.com/MaibornWolff/codecharta/pull/2712)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate add `custom config button` in ribbonbar to Angular [#2736](https://github.com/MaibornWolff/codecharta/pull/2736)\n\n## [1.93.0] - 2022-03-14\n\n### Added \u{1f680}\n\n- Show amount of added and removed files in attribute sidebar when delta mode is enabled and a folder is selected [#2701](https://github.com/MaibornWolff/codecharta/pull/2701/files)
    \n ![xs](https://user-images.githubusercontent.com/72517530/157468180-4e2d052b-63b8-4040-bb22-b633a24d3b8a.png)\n\n### Changed\n\n- Suspicious metrics and risk profile are calculated for all selected maps [#2721](https://github.com/MaibornWolff/codecharta/pull/2721)\n- Close search panel and ribbon bar dropdowns on every outside click [#2692](https://github.com/MaibornWolff/codecharta/issues/2692)\n\n### Fixed \u{1f41e}\n\n- Fix GameObjects importer edge cases [#2705](https://github.com/MaibornWolff/codecharta/pull/2705)\n\n## [1.92.1] - 2022-03-07\n\n### Fixed \u{1f41e}\n\n- Fix removing maps with long file names [#2696](https://github.com/MaibornWolff/codecharta/pull/2697)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate search-bar-component to Angular [#2686](https://github.com/MaibornWolff/codecharta/pull/2686)\n\n## [1.92.0] - 2022-03-01\n\n### Changed\n\n- Design and add a new CodeChara Logo [#2682](https://github.com/MaibornWolff/codecharta/pull/2682)
    \n ![xs](https://user-images.githubusercontent.com/48621967/155682925-ecc9fe5d-77de-4927-9c6a-b1059ae9eead.png)\n- Risk profile is now calculated for every occurring programming languages in selected file(s)[#2679](https://github.com/MaibornWolff/codecharta/pull/2679)\n\n## [1.91.1] - 2022-02-25\n\n### Fixed \u{1f41e}\n\n- Fix loading of files without edge metric never finished [#2680](https://github.com/MaibornWolff/codecharta/issues/2680)\n\n## [1.91.0] - 2022-02-21\n\n### Changed\n\n- Refactor edge metric panel [#2670](https://github.com/MaibornWolff/codecharta/pull/2670)\n - Remove edge metric option \'none\'\n - By default, the first edge metric is enabled when map has edge metrics\n - Disable edge metric panel when loaded map has no edge metrics\n\n### Fixed \u{1f41e}\n\n- Improve loading times by reducing the size of JavaScript files [#2667](https://github.com/MaibornWolff/codecharta/pull/2667)\n- Fix loading of files without edge metric never finished [#2680](https://github.com/MaibornWolff/codecharta/issues/2680)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate loading gifs to Angular and remove now unused `isLoadingMap.service` [#2668](https://github.com/MaibornWolff/codecharta/pull/2668)\n\n## [1.90.0] - 2022-02-15\n\n### Added \u{1f680}\n\n- Parse and import GameObjects file structure into cc.json on upload [#2646](https://github.com/MaibornWolff/codecharta/pull/2646)\n\n### Fixed \u{1f41e}\n\n- Fix flaky string comparison possibly due to puppeteer update [#2659](https://github.com/MaibornWolff/codecharta/pull/2659)\n- Fix show garbage bin next to the loaded maps [#2647](https://github.com/MaibornWolff/codecharta/pull/2647)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Run standalone version of CodeCharta in Node.js web target (and disable [#1314](https://github.com/MaibornWolff/codecharta/issues/1314)), so that local storage is available [#2637](https://github.com/MaibornWolff/codecharta/pull/2637)\n\n## [1.89.0] - 2022-02-07\n\n### Added \u{1f680}\n\n- Add area metric option to invert the amount of area, which is used for the nodes [#2626](https://github.com/MaibornWolff/codecharta/pull/2626)\n- Add button to clear search field [#2638](https://github.com/MaibornWolff/codecharta/pull/2638)
    \n ![xs](https://user-images.githubusercontent.com/48218172/151999974-3b8a7cca-52b2-4757-b3c0-e3b2e36ad237.png)\n\n### Changed\n\n- New buttons for selecting attribute types [#2631](https://github.com/MaibornWolff/codecharta/pull/2631)\n ![xs](https://user-images.githubusercontent.com/72517530/151762455-07e47bf5-18aa-4721-a60a-6dfee057e1e5.png)\n- Migrate context menu with slightly new layout touch to Angular. Migrated version prevents rendering outside of view [#1661](https://github.com/MaibornWolff/codecharta/issues/1661)\n\n### Fixed \u{1f41e}\n\n- Remove delay of keeping a building highlight permanently [#2641](https://github.com/MaibornWolff/codecharta/issues/2641)\n\n## [1.88.0] - 2022-01-24\n\n### Changed\n\n- Rename custom configs to custom view [#2625](https://github.com/MaibornWolff/codecharta/pull/2625)\n- Combine single and multiple mode into standard mode [#2578](https://github.com/MaibornWolff/codecharta/pull/2578)\n ![xs](https://user-images.githubusercontent.com/72517530/150765617-2d66eb78-2c26-45c5-b63b-f84994ed88ab.png)\n- Improve file validation handling and provide more descriptive import messages [#2604](https://github.com/MaibornWolff/codecharta/pull/2604)\n ![xs](https://user-images.githubusercontent.com/48621967/150532207-f3b482ed-3a14-43c0-b1a3-80ac4c25d5e0.png)\n\n### Fixed \u{1f41e}\n\n- Fix Image not shown in what is new dialog [#2610](https://github.com/MaibornWolff/codecharta/pull/2610)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n - Unfocus focused node only when map starts to load and not also when map has finished loading. This shouldn\'t change any behavior for the user [#2614](https://github.com/MaibornWolff/codecharta/pull/2614)\n\n## [1.87.1] - 2022-01-17\n\n### Changed\n\n- User-friendly renaming for display quality options [#2601](https://github.com/MaibornWolff/codecharta/pull/2601)\n\n### Fixed \u{1f41e}\n\n- Fix color of selected building in delta mode [#2603](https://github.com/MaibornWolff/codecharta/pull/2603)\n- Fix link to news page when clicking \'Know more\' button changelog dialog [#2602](https://github.com/MaibornWolff/codecharta/pull/2602)\n- Fix Image not shown in what is new dialog [#2610](https://github.com/MaibornWolff/codecharta/pull/2610)\n\n## [1.87.0] - 2022-01-11\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate `unfocus-button-component` to Angular.\n\n### Changed\n\n- Remove suspicious metrics from custom map configurations [#2564](https://github.com/MaibornWolff/codecharta/pull/2564).\n- Add \'show/hide non-applicable CustomConfigs\' button to Custom Configs menu [#2591](https://github.com/MaibornWolff/codecharta/pull/2591).\n\n## [1.86.0] - 2021-12-20\n\n### Added \u{1f680}\n\n- Add 3D export feature for 3D printing [#2561](https://github.com/MaibornWolff/codecharta/pull/2561).
    \n ![xs](https://user-images.githubusercontent.com/48621967/146173663-e0ea177e-6ed8-4ddb-bd11-410415541e9f.png)\n ![l](https://user-images.githubusercontent.com/48621967/146174397-42a6e475-ed2f-47c0-ba9c-4f8304d53399.png)\n\n### Changed\n\n- Replace all color pickers in the context of ongoing Angular migration [#2560](https://github.com/MaibornWolff/codecharta/pull/2560).\n\n### Fixed \u{1f41e}\n\n- Fix showing names of custom configs properly [#2557](https://github.com/MaibornWolff/codecharta/pull/2557).\n- Fix minor memory leak in context menu for code map buildings [#2565](https://github.com/MaibornWolff/codecharta/issues/2565).\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate legend panel to Angular [#2560](https://github.com/MaibornWolff/codecharta/pull/2560).\n\n## [1.85.0] - 2021-12-13\n\n### Fixed \u{1f41e}\n\n- Fix delta values of secondary metrics not shown in delta mode within attribute side bar [#2539](https://github.com/MaibornWolff/codecharta/issues/2539).\n- Use icon tag instead of font awesome icon [#2537](https://github.com/MaibornWolff/codecharta/pull/2537).\n- Rename text for placeholder of metric chooser [#2547](https://github.com/MaibornWolff/codecharta/pull/2547)\n- Fix attribute type selector of primary edge metric not shown [#2528](https://github.com/MaibornWolff/codecharta/issues/2528).\n- Identical files and files with identical file names but different hashes can be loaded [#2548](https://github.com/MaibornWolff/codecharta/pull/2548)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Remove `secondaryMetrics` from store and remove `secondaryMetrics.service` as the data can be derived from selected node [#2527](https://github.com/MaibornWolff/codecharta/pull/2527).\n- Migrate `attribute-side-bar-component` to Angular [#2527](https://github.com/MaibornWolff/codecharta/pull/2527).\n- Switch from Webpack 4 Loaders to Asset Module to load icons properly with css-loader 6.x [#2542](https://github.com/MaibornWolff/codecharta/pull/2542).\n\n### Removed \u{1f5d1}\n\n- Remove notification dialog when deleting a custom config [#2553](https://github.com/MaibornWolff/codecharta/pull/2553)\n\n## [1.84.1] - 2021-11-29\n\n### Fixed \u{1f41e}\n\n- Fix compressed files not being loaded ([#2524](https://github.com/MaibornWolff/codecharta/pull/2525))\n\n## [1.84.0] - 2021-11-22\n\n### Changed\n\n- Improved the UI and usability of the Suspicious Metrics Feature ([#2376](https://github.com/MaibornWolff/codecharta/pull/2494))
    \n - The Metrics and the Analysis are now split in two menus
    \n ![xs](https://user-images.githubusercontent.com/48621967/141795078-bb856f53-1bc3-4c09-8be5-d031899835ae.png)\n - The Suspicious Metrics are now sorted with the Very High Risk on top
    \n ![m](https://user-images.githubusercontent.com/48621967/141793011-1bfc0e19-bd3a-4bd2-af70-c3dd472821b6.png)\n - The bar in the analysis shows the percentages
    \n ![m](https://user-images.githubusercontent.com/48621967/141791111-564778fa-b767-4ee4-b024-6856f1a79b4b.png)\n\n### Fixed \u{1f41e}\n\n- Fix showing labels when weighted gradient on yellow buildings in color metric options are enabled ([#2511](https://github.com/MaibornWolff/codecharta/pull/2511))\n- Fix rounding of the sum of percentages in risk profile ([#2393](https://github.com/MaibornWolff/codecharta/pull/2516))\n- Fix legend panel not having a background ([#2422](https://github.com/MaibornWolff/codecharta/pull/2510))\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Remove `nodeSearch.service.ts` and `searchedNodePaths` from store as they can be derived from `searchPattern` ([#2495](https://github.com/MaibornWolff/codecharta/pull/2495)).\n- Refactor where metric data are calculated ([#2514](https://github.com/MaibornWolff/codecharta/pull/2514)).\n- Migrate `attribute-type-selector-component` to Angular ([#2519](https://github.com/MaibornWolff/codecharta/pull/2519)).\n\n## [1.83.1] - 2021-11-10\n\n### Fixed \u{1f41e}\n\n- Fix loading files from URL in Web Demo ([#2494](https://github.com/MaibornWolff/codecharta/pull/2494))\n\n## [1.83.0] - 2021-11-09\n\n### Fixed \u{1f41e}\n\n- Fix unwanted calculations of suspicious metrics when experimental features are disabled ([#2471](https://github.com/MaibornWolff/codecharta/pull/2471))\n- Fix UI issues in the configuration panel ([#2322](https://github.com/maibornwolff/codecharta/issues/2322))\n- Fix tooltip of sorting order button in map tree view showing wrong sorting order ([#2473](https://github.com/maibornwolff/codecharta/issues/2473))\n\n### Changed\n\n- Calculate MD5 checksum when generating .cc.json files ([#2411](https://github.com/MaibornWolff/codecharta/pull/2450))\n\n## [1.82.0] - 2021-10-18\n\n### Fixed \u{1f41e}\n\n- Fix what\'s new section including the last opened version ([#2447](https://github.com/MaibornWolff/codecharta/pull/2453))\n- Fix unfocus button text not showing correctly ([#2439](https://github.com/MaibornWolff/codecharta/pull/2439))\n\n### Changed\n\n- Folders in the Folder structure view of the top left come now always before any files, regardless of the sort order.\n\n## [1.81.0] - 2021-10-11\n\n### Fixed \u{1f41e}\n\n- Fix color picker not being usable ([#2439](https://github.com/MaibornWolff/codecharta/pull/2439))\n- Fix Changelog inconsistencies ([#2425](https://github.com/MaibornWolff/codecharta/pull/2425))
    \n ![xl](https://user-images.githubusercontent.com/48621967/135866024-ee06119a-1a62-4912-90df-ac3aa9216608.PNG)\n- Fix memory and performance issues related to drawing labels on floors/folders ([#2348](https://github.com/MaibornWolff/codecharta/issues/2348)).\n- Hides legend block if label description is not available and adds new metric descriptions ([#2377](https://github.com/maibornwolff/codecharta/issues/2377)).\n\n## [1.80.0] - 2021-10-04\n\n### Added \u{1f680}\n\n- Adds feature to display building colors as a gradients ([#2327](https://github.com/MaibornWolff/codecharta/issues/2327)).\n - "Weighted Gradient" only mixes colors in a small interval around the preset values.\n - "True Gradient" mixes colors from the 0 to the highest value, the two preset color range values determine the balance.\n - "Absolute" represents the old behaviour without gradients.
    \n ![l](https://user-images.githubusercontent.com/42114276/134924267-245c65c9-2893-43a8-9a0a-17e3182bf15a.JPG)\n\n### Fixed \u{1f41e}\n\n- Fix broken file/node search #2389\n- Fix changelog inconsistencies ([#2425](https://github.com/MaibornWolff/codecharta/pull/2425))\n\n## [1.79.0] - 2021-09-20\n\n### Added \u{1f680}\n\n- Add metric descriptions to the frontend and show a translation next to the entry ([#2330](https://github.com/MaibornWolff/codecharta/issues/2330))
    \n \n- An option has been added to the global settings to enable copying screenshots to clipboard instead of saving them in a file ([#2326](https://github.com/MaibornWolff/codecharta/issues/2326))
    \n ![xl](https://user-images.githubusercontent.com/57844849/131342771-a3c637e3-8241-49aa-8d51-71e3a8d38aef.png)\n- Add changelog guidelines ([#2358](https://github.com/MaibornWolff/codecharta/pull/2358))\n- A changelog dialog with the latest additions to CodeCharta appears on version update ([#1315](https://github.com/MaibornWolff/codecharta/pull/2342))
    \n ![xl](https://user-images.githubusercontent.com/48621967/131360878-a8e1ef40-7f73-4de7-8b3f-4c8dc21448da.PNG)\n\n### Fixed \u{1f41e}\n\n- Fix broken method call in screenshot feature.\n- Improve changelog entries.\n\n### Changed\n\n- Changing the background color and remove "outgoing" and "incoming" edges from the legend, if not applicable ([#2330](https://github.com/MaibornWolff/codecharta/issues/2330))\n- Improve the user experience for the AI Feature "Suspicious Metrics and Risk Profiles" and enable it for any programming language ([#2362](https://github.com/MaibornWolff/codecharta/pull/2362))
    \n ![m](https://user-images.githubusercontent.com/26900540/133250867-adf4583d-9d0e-4f81-b8a7-1407b93d9f40.png)\n\n## [1.78.0] - 2021-09-06\n\n### Added \u{1f680}\n\n- A changelog dialog with the latest additions to CodeCharta appears on version update ([#1315](https://github.com/MaibornWolff/codecharta/issues/1315))\n- Add documentation for SCMLogParserV2 ([#1349](https://github.com/maibornwolff/codecharta/issues/1349))\n\n### Fixed \u{1f41e}\n\n- Empty temporary label during hovering ([#2328](https://github.com/maibornwolff/codecharta/issues/2328))\n- Show the screenshot hotkey in the screenshot title ([#2323](https://github.com/maibornwolff/codecharta/issues/2323))\n- Improved rendering performance ([#2345](https://github.com/MaibornWolff/codecharta/pull/2345))\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update GH-Pages and visualization dependencies ([#2356](https://github.com/maibornwolff/codecharta/issues/2356))\n\n## [1.77.0] - 2021-07-30\n\n### Added \u{1f680}\n\n- The "Color Metric Options" panel and "Legend" panel display the maximum value of the selected metric instead of infinite. ([#1520](https://github.com/maibornwolff/codecharta/issues/1520))\n- Mark color-section as unimportant in delta mode ([#769](https://github.com/maibornwolff/codecharta/issues/769))\n\n### Changed\n\n- Small ui improvements added. ([#1881](https://github.com/MaibornWolff/codecharta/issues/1881))\n- Numbers/Percentages always show in the distribution bar([#1540](https://github.com/MaibornWolff/codecharta/issues/1540))\n - Toggle between percentage and absolute numbers by clicking anywhere on the (expanded) distribution bar.\n - The old expanded distribution bar is now accessible through a button.\n\n### Fixed \u{1f41e}\n\n- It is no longer possible to exclude all files on the map ([#901](https://github.com/MaibornWolff/codecharta/issues/901))\n\n## [1.76.0] - 2021-07-13\n\n### Added \u{1f680}\n\n- Custom metric scenarios which include the \'Color-Metric\' (rloc) will now also save any changes made to the color scheme.\n\n### Fixed \u{1f41e}\n\n- Performance improvements when loading new files. ([#1312](https://github.com/maibornwolff/codecharta/issues/1312))\n\n## [1.75.0] - 2021-07-05\n\n### Added \u{1f680}\n\n- Imported files are now compressed by default. Use the -nc parameter to uncompress the files. ([#1702](https://github.com/maibornwolff/codecharta/issues/1702))\n- Export the current view as a png image by using "Ctrl+Alt+S" or clicking the corresponding button ([#674](https://github.com/MaibornWolff/codecharta/issues/674))\n- Show only labels of buildings according to a chosen color ([#1347](https://github.com/MaibornWolff/codecharta/issues/1347))\n- New buttons to reset the color hex values and color metric thresholds separately ([#1613](https://github.com/MaibornWolff/codecharta/issues/1613))
    \n ![l](https://user-images.githubusercontent.com/50167165/121889295-5b071780-cd19-11eb-87ef-aba0ab0c6c09.png)\n\n### Changed\n\n- Metric aggregations now work as intended and are available from the sidebar when selecting folders ([#1953](https://github.com/MaibornWolff/codecharta/issues/1953))\n- Opening new files does no longer remove old ones.\n - Already loaded files can be individually removed.\n - The \'Multiple\' view will select the latest files.
    \n ![l](https://user-images.githubusercontent.com/50167165/123071234-c6856f00-d414-11eb-8326-e25f614e75d7.png)\n\n### Fixed \u{1f41e}\n\n- It is now possible to rotate the map by rotating the view cube ([#353](https://github.com/MaibornWolff/codecharta/issues/353))\n\n## [1.74.0] - 2021-05-31\n\n### Added \u{1f680}\n\n- SonarImport: SonarQube 8.8 support. Older versions are still supported.\n\n### Fixed \u{1f41e}\n\n- Only show labels for building included in the search\n- Color slider not initialized correctly ([#1592](https://github.com/MaibornWolff/codecharta/issues/1592))\n\n## [1.73.0] - 2021-05-10\n\n### Added \u{1f680}\n\n- Improve descriptions ([#1879](https://github.com/MaibornWolff/codecharta/issues/1879))\n

    \n ![m](https://user-images.githubusercontent.com/57844849/115393175-b2897b00-a1e1-11eb-8601-d2128f3469a3.png)\n\n### Fixed \u{1f41e}\n\n- Excluding in delta mode is broken ([#1578](https://github.com/MaibornWolff/codecharta/issues/1578))\n (Inclusion and exclusion of files using wildcard searches in the flatten and exclude operations)\n- Fix labels and lines missing a connection in some cases([#1716](https://github.com/MaibornWolff/codecharta/issues/1716))\n- Ribbons resizing when expanding ([#1952](https://github.com/MaibornWolff/codecharta/issues/1952))\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Fix breaking changes with newest three-js version([#1877](https://github.com/MaibornWolff/codecharta/issues/1877))\n\n## [1.72.0] - 2021-04-22\n\n### Added \u{1f680}\n\n- Hints for Global Settings ([#1715](https://github.com/MaibornWolff/codecharta/issues/1715))\n- Indicate total nodes and excluded / flattened nodes in file explorer ([#1880](https://github.com/MaibornWolff/codecharta/issues/1880))\n- Add path to node context menu ([#1667](https://github.com/MaibornWolff/codecharta/issues/1667))\n\n### Fixed \u{1f41e}\n\n- Made the header semi responsive ([#1037](https://github.com/MaibornWolff/codecharta/issues/1037))\n\n## [1.71.2] - 2021-03-16\n\n### Fixed \u{1f41e}\n\n- DevOps pipeline changes\n- Fixed web visualization in github\n\n## [1.71.1] - 2021-03-16\n\n### Fixed \u{1f41e}\n\n- DevOps pipeline changes\n\n## [1.71.0] - 2021-03-16\n\n### Changed\n\n- Disable unready AI function\n- Fix linter errors\n- Fix editorconfig\n\n## [1.70.2] - 2021-03-12\n\n### Fixed \u{1f41e}\n\n- DevOps pipeline changes\n- Project naming for Docker deployment\n\n## [1.70.1] - 2021-03-12\n\n### Fixed \u{1f41e}\n\n- DevOps pipeline changes\n\n## [1.70.0] - 2021-03-09\n\n### Changed\n\n- Render on demand ([#1728](https://github.com/MaibornWolff/codecharta/issues/1728))\n\n### Fixed\n\n- Memory leaks\n\n## [1.69.0] - 2021-02-23\n\n### Added \u{1f680}\n\n- Added WebGL FXAA antialias & PixelRatio Options in order to achieve better resolution on high dpi displays(https://github.com/MaibornWolff/codecharta/pull/1551).

    \n ![option dialog](https://user-images.githubusercontent.com/74670211/106582136-f4404900-6543-11eb-8f5b-5e1ec47457c7.png)\n There are 4 available modes:\n - **standard mode**: the pixel density is only applied to the small cube with standard browser aliasing\n - **pixel ratio without aliasing**: no antialiasing is used\n - **pixel ration with FXAA**: Nvidia FXAA antialiasing shader is used as an alisaing technique. this has better perfromance the standard browser aliasing aliasing\n - **pixel ration with MSAA**: this is the best aliasing quality, slower then FXAA.\n- Added GPU Stats (only in dev mode)\n\n### Fixed \u{1f41e}\n\n- Unfocus now respects the focus depth ([#1099](https://github.com/MaibornWolff/codecharta/issues/1099))\n- Track anonymous usage data also for older CodeCharta API versions and fix some minor bugs.\n\n## [1.68.0] - 2021-02-08\n\n### Added \u{1f680}\n\n- A new experimental feature has been added to track anonymous metadata of a currently loaded map.\n - Neither the map name nor file names will be tracked but anonymous metric values and statistics like (average, min, max).\n - The tracked data will not be sent to a server yet. Instead, it can be downloaded as a json file in the Global Settings for now.\n - It is planned to send the anonymous data to a server in the future, so that we can collect tracking data automatically.\n - ![example of new feature](https://user-images.githubusercontent.com/26900540/106896300-ac5f2480-66f1-11eb-8096-246d1733c0ee.png)\n\n### Fixed \u{1f41e}\n\n- Errors occurred in delta mode if names of root folders were different\n- Switching maps in delta mode now shows the differences between the maps ([#1606](https://github.com/maibornwolff/codecharta/issues/1606))\n- Label over hovered building not shown for height Metric value of zero ([#1623](https://github.com/MaibornWolff/codecharta/issues/1623))\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- CodeChartaStorage class has been introduced to dynamically store values either on disk (standalone version) or in the localStorage (web version). This is the first step to solve [#684](https://github.com/MaibornWolff/codecharta/issues/684).\n\n## [1.67.0] - 2021-01-26\n\n### Added \u{1f680}\n\n- Allow opening files from local drive by double clicking on the buildings or clicking on their names ([#1314](https://github.com/MaibornWolff/codecharta/issues/1314))\n - Only available in the standalone version!\n - files are opened in associated third-party applications\n - web-links are opened in a browser window\n- Allow customized color in the node context menu ([#1556](https://github.com/MaibornWolff/codecharta/issues/1556)).\n\n [!example of new feature #1556](https://user-images.githubusercontent.com/3596742/104302048-a007f300-54c8-11eb-86c1-287483884783.png)\n\n### Fixed \u{1f41e}\n\n- fixed wrong max tree map visibility ([#1624](https://github.com/MaibornWolff/codecharta/issues/1624))\n- fixed incorrect label placement on delta maps that share no common nodes ([#1686](https://github.com/MaibornWolff/codecharta/issues/1686))\n\n## [1.66.0] - 2021-01-18\n\n### Added \u{1f680}\n\n- Allow color of buildings to be customizable in the ribbon bar and in the legend. Colors of edges are now customizable as well ([#1533](https://github.com/MaibornWolff/codecharta/issues/1533))

    \n ![example of new feature](https://user-images.githubusercontent.com/3596742/103547861-3c1c7380-4ea5-11eb-8df2-541caf65b9df.png)\n\n### Fixed \u{1f41e}\n\n- Global settings not reverting to default ones ([#1632](https://github.com/MaibornWolff/codecharta/issues/1632))\n- Maximum treemap files shown in squarified node ([#1624](https://github.com/MaibornWolff/codecharta/issues/1624))\n- Wrong folder names and colors in legend when using the highlight folder feature ([#1555](https://github.com/MaibornWolff/codecharta/issues/1555))\n- Temporary labels are placed at the wrong height for scaled buildings ([#1618](https://github.com/MaibornWolff/codecharta/issues/1618))\n- Visible labels will disappear or placed lower for scaled buildings ([#1619](https://github.com/MaibornWolff/codecharta/issues/1619))\n- Unnecessary break line for secondary metrics ([#1093](https://github.com/MaibornWolff/codecharta/issues/1093))\n\n## [1.65.0] - 2020-12-23\n\n### Added \u{1f680}\n\n- Highlight label while hovering over building, draw a temporary label for hovered buildings that have none ([#1529](https://github.com/MaibornWolff/codecharta/issues/1529))\n- Integrated streetlayout ([#904](https://github.com/MaibornWolff/codecharta/issues/904))\n ![cc_street_ccv](https://user-images.githubusercontent.com/63230711/78872405-87eed900-7a49-11ea-984a-c0ef738779b9.png)\n In street layout file nodes are displayed as buildings and directories are displayed as streets. A street layout has the advantage of a more apparent directory structure and stable positioning of nodes after metric changes.\n two different Street layout are integrated : - StreetLayout : as described above. - TMStreet : a combination of street layout and squarified layout.\n\n### Changed\n\n- The button to see excluded buildings is now merged into the flattened button. Excluded and flattened buildings can now be seen by opening the building with the eye slash icon ([#1543](https://github.com/MaibornWolff/codecharta/issues/1543))\n\n### Fixed \u{1f41e}\n\n- Height scaling not applied to buildings ([#1595](https://github.com/MaibornWolff/codecharta/issues/1595)))\n- Fixed multiple label positioning/scaling bugs\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- e2e flaky test ([#1322](https://github.com/MaibornWolff/codecharta/issues/1322))\n\n## [1.64.0] - 2020-12-15\n\n### Added \u{1f680}\n\n- Download and upload Custom Configurations is now possible ([#1472](https://github.com/MaibornWolff/codecharta/issues/1472))\n\n - Open the Custom Configs menu in the toolbar on top of the map\n - Next to the `plus` Button you can see two new buttons: Upload and download.\n - Download: If you already have added Custom Configs you can download them by clicking the download button.\n - Custom Configs which are applicable for the currently selected map(s) will be downloaded as `.cc.config.json` files.\n - Upload: Click the upload button and specify your Custom Config file (`.cc.config.json`)\n - Already existing Custom Configs will be skipped.\n - Different Custom Configs with same names will be renamed.\n - Another way to upload your Custom Configs is to upload a `.cc.json` file together with one or multiple `.cc.config.json` files using the default `Load .cc.json map` button in the upper left corner.\n - The Configs are stored to the local storage of your browser.\n - If a limit of `768KB` is exceeded you will see a warning when trying to add a new Custom Config.\n - You can click the displayed "download and purge" button to download/backup at least 6 months old Configs and then purge them from the local storage to make space for new ones.\n - If we cannot purge any Configs, you might have to do that by your own by deleting specific Configs manually.\n\n### Changed\n\n- Increase possible margin size ([#1490](https://github.com/MaibornWolff/codecharta/pull/1490))\n - change displayed margin value from % to pixel\n - change dynamic margin value to a default margin value that should fit the map\n\n### Fixed \u{1f41e}\n\n- Re-enabled color selection for folders and on hover ([#1544](https://github.com/MaibornWolff/codecharta/pull/1544))\n- Labels do not take delta height into account ([#1523](https://github.com/MaibornWolff/codecharta/issues/1523))\n- The calculation of the map resolution scale factor was wrong ([#1491](https://github.com/MaibornWolff/codecharta/issues/1491))\n - The factor is used to decrease the map resolution especially for big maps to avoid performance issues.\n - Now only the selected maps will be considered for the calculation. Unselected maps will be skipped.\n\n## [1.63.0] - 2020-11-30\n\n### Added \u{1f680}\n\n- Add the folder name onto the floor on the first 3 layers to get a better overview of the map ([#1491](https://github.com/MaibornWolff/codecharta/issues/1491))\n- UX Improvements related to labels allowing for user interaction #1404\n - Labels can be hovered, hovering their corresponding node\n - Selecting a label will select the corresponding node\n - Hovering a label will remove its transparency and move towards the user:\n - If other labels obstruct the hovered label it will move to the front\n - Increased the transparency of other labels; this makes it easier to distinguish the hovered label\n - Increase the amount of labels to 250.\n- Show file count of folders in Attribute-Side-Bar ([#1255](https://github.com/MaibornWolff/codecharta/issues/1255)):\n ![img showing file count of folder](https://user-images.githubusercontent.com/3596742/100371884-be915800-3008-11eb-89f5-ed57c62680cc.png)\n\n### Fixed \u{1f41e}\n\n- Buildings are flattened when delta is active #824.\n- Selected Building now stays highlighted when map is rotated #1498\n\n## [1.62.0] - 2020-11-12\n\n### Added \u{1f680}\n\n- A new option in the Global Settings allows to enable/disable experimental features #1318\n - Click on the settings button in the upper right corner to open the Global Settings dialog.\n - Activate/Deactivate the new option "Enable Experimental Features"\n - The features will be shown/hidden accordingly\n- "CustomViews", the first experimental feature has been added #1318\n\n - It must be enabled by activating the new option in the Global Settings dialog as mentioned before.\n - You can save your current map configurations to replay/restore them later.\n - A saved CustomView can only be applied for it\'s original map.\n - This will enable you to be more efficient in analizing projects by switching between different CustomViews.\n\n- NodeContextMenu now contains option to keep buildings highlighted #1323\n\n- Fixed Folder algorithm supports nested (parent-child) Fixed Folders #1431\n 1. Define children of a Fixed Folder also as Fixed Folders by adding the `fixedPosition` attribute manually in `.cc.json`.\n 1. All children of a parent Fixed Folder must be fixed.\n 1. Read the how-to guide for further information: https://maibornwolff.github.io/codecharta/how-to/fixate_folders_with_a_custom_cc_json/\n\n### Changed\n\n- Improved search\n\n 1. Not providing any star in the search bar from now on expects the input to\n be a wildcard search. Thus, files are going to match paths that have\n leading or following characters. E.g., `oo` is going to match\n `/root/foobar`.\n 1. To use the explicit former search mode, wrap the search entry in quotes as\n in: `"oo"`. This would only match filenames that are exactly `oo`.\n 1. The search field accepts multiple search entries at once, separated by\n commata. `foo,bar` is going to search for both `*foo*` and `*bar*` and\n marks all matched files accordingly.\n 1. It is possible to invert the search with a leading exclamation mark as in\n `!foobar`. That will match any file that does not match `*foobar*`. It is\n only possible to invert the complete input, not individual search entries.\n 1. Whitespace handling changed to ignore leading whitespace.\n\n- Distribution metric #1188\n\n 1. set rloc to default distribution metric, showing language percentages for real lines of code, if available. Else set to unary to show language distribution over files\n\n- Improved file sorting in the file overview of the search bar\n - Numbers are sorted naturally\n - Characters are compared with their base character (e.g., `a` is now next to `\xe1`).\n- Label metric not shown by default anymore\n\n## [1.61.0] - 2020-10-30\n\n### Changed\n\n- Disable highlighting buildings during map movement #1432\n\n### Fixed \u{1f41e}\n\n- File tree/flattened/excluded overlay visualization is buggy #1269\n- EdgePreview on Map broken when selecting zero #1276\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Schedules and merge retries of dependabot dependency updates changed\n\n## [1.60.2] - 2020-10-24\n\n### Fixed \u{1f41e}\n\n- Mouse cursor flickering #1170\n- Fix flipping map when clicking any option in the toolbar #1410\n- Fix edge metric not working correctly\n\n## [1.60.1] - 2020-10-20\n\n### Fixed \u{1f41e}\n\n- Issue with first start without an internet connection not working#1266\n- Issue with ribbon bar sizes for opened cards #1035\n\n## [1.60.0] - 2020-10-16\n\n### Added \u{1f680}\n\n- Parsing feedback with progressbar and probable ETA for parsers and SonarImporter #847\n- Mark node names and make the names clickable for nodes that have a link to them #1313\n- Indicate the metric name next to a shown value in a new line on labels #1035\n- Checkboxes to display metric names and values and to display node names on labels #1035\n- Mark node names and make the names clickable for nodes that have a link to them #1313\n\n### Changed\n\n- Label design #1035\n\n### Fixed \u{1f41e}\n\n- First start without an internet connection of standalone not working #1266\n- Comparing a map in delta mode shows the correct differences\n- This mainly applies to maps compared with itself while it also fixes some other minor miscalculations\n- File extensions detection is improved\n- Zooming in and out the map will now close the node context menu #1324\n - Improved and simplified event handling in NodeContextMenu component\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Improved performance of multiple operations (e.g., delta mode).\n\n## [1.59.0] - 2020-10-09\n\n### Added \u{1f680}\n\n- New EXPERIMENTAL SCMLogParser version\n- Improved performance around 300% when parsing CodeCharta\n- Improved memory usage\n- Fixed issue with old parser creating incorrect nodes in CodeCharta #871\n- ATTENTION: the parser is experimental, therefore some potential issues might remain, e.g. potentially an unhandled edge case when parsing node\n- To use the new parser a reversed git log is needed, as well as a git file list, refer to `ccsh scmlogparserv2 -h` for additional information\n\n### Fixed \u{1f41e}\n\n- Color-Metric slider is set and activated in the map accordingly to the released sliderbutton #1319\n- Deselcting a building will instantly dehighlight the buildings which were connected through edges #890\n\n## [1.58.1] - 2020-10-02\n\n### Fixed \u{1f41e}\n\n- Showing wrong edges when hovering a building after selecting one #1137\n\n## [1.58.0] - 2020-10-02\n\n### Added \u{1f680}\n\n- Add active color metric to the top of the legend panel #1278\n- SourceCodeParser: Java 14 Support #1277\n\n## [1.57.4] - 2020-09-25\n\n### Fixed \u{1f41e}\n\n- Metric-Settings-Panels closed when clicking an option inside the panel #1258\n- Improve loading and rendering maps performance\n\n## [1.57.3] - 2020-09-18\n\n### Fixed \u{1f41e}\n\n- Improve overall performance for loading and rendering maps\n- Improve error messages when a file can\'t be loaded with the URL parameters\n\n## [1.57.2] - 2020-09-11\n\n### Fixed \u{1f41e}\n\n- New API version 1.2 not set correctly in analysis\n\n## [1.57.1] - 2020-09-11\n\n### Fixed \u{1f41e}\n\n- Validation of unique filenames not checking for the complete path and instead throwing an error on duplicate filename\n\n## [1.57.0] - 2020-09-11\n\n### Added \u{1f680}\n\n- `fixedPosition` as a new property in the `cc.json` that allows to fixate folders in the map\n\n### Changed\n\n- `cc.json` version updated to `1.2`\n\n### Fixed \u{1f41e}\n\n- Compressed `cc.jsons (.gz) not marked as accepted when selecting a file in the file chooser\n\n### Docs \u{1f50e}\n\n- [How-To: Fixate Folders in the `cc.json`](https://maibornwolff.github.io//codecharta/how-to/fixate_folders_with_a_custom_cc_json/)\n- CC-Json-API changes\n\n## [1.56.0] - 2020-09-04\n\n### Fixed \u{1f41e}\n\n- Improve performance when switching to multiple or delta mode when edges are available\n- Scenario with EdgeMetric is only appliable when EdgeMetric is existing for the Map #1201\n- Starting standalone version results in infinite loading loop #1202\n- Expanded metric selection will close when clicking anywhere outside of that selection #1036\n\n## [1.55.0] - 2020-08-28\n\n### Added \u{1f680}\n\n- Cursor indicator for different mouse actions #1042\n\n### Changed\n\n- Edge-Metrics sorted by name now instead of number of incoming and outgoing edges\n\n### Fixed \u{1f41e}\n\n- Number of incoming and outgoing edges not visible when hovering over a node #1095\n- Highlighting buildings in multiple mode now works #956\n\n## [1.54.0] - 2020-08-21\n\n### Added \u{1f680}\n\n- Opening NodeContextMenu in the tree-view marks the node until it is closed #1068\n\n### Fixed \u{1f41e}\n\n- Missing Sonarcloud metrics in demo\n\n### Docs \u{1f50e}\n\n- Added note how to fix missing `sh` command issue when running integration tests on Windows\n\n## [1.53.0] - 2020-08-14\n\n### Changed\n\n- NodeContextMenu will show up when releasing the right-mouse-button now #1027\n\n### Fixed \u{1f41e}\n\n- NodeContextMenu showing up after moving the mouse while holding right-mouse-button #1027\n\n## [1.52.0] - 2020-08-07\n\n### Added \u{1f680}\n\n- Support for Tokei 12 new JSON schema #1103\n\n### Changed\n\n- Rename master branch to main for a more inclusive naming #1117\n\n### Fixed \u{1f41e}\n\n- After loading an invalid file the filechooser pops up again, so that the user can choose a valid file #1021\n- Quality gates on sonarcloud.io are red #879\n\n### Docs \u{1f50e}\n\n- Moved developer guides to our [gh-pages](https://maibornwolff.github.io/codecharta/) #986\n\n## [1.51.0] - 2020-07-24\n\n### Added \u{1f680}\n\n- File chooser now accept ".json" files only to avoid accidentally loading incorrect files #1094\n- Lots of tooltips #1030\n\n### Fixed \u{1f41e}\n\n- Blacklisting a building would sometimes not update the map #1098\n- Changes made after opening the filechooser and closing it won\'t be applied #875\n- Edge metric list not always updated correctly when loading a new file #1106\n\n## [1.50.0] - 2020-07-10\n\n### Added \u{1f680}\n\n- Line between scenario indicator and remove button #1069\n\n### Changed\n\n- Reduced transition time when opening or collapsing parts of the ribbon bar #1043\n- Search Panel will open now when clicking in the search field and collapse when clicking somewhere else #1071\n\n### Fixed \u{1f41e}\n\n- Opening the same file again will now reload the file and reset the application #1032\n- Improve render performance by persisting color conversions #1034\n- Sorting in tree-view not being applied #1040\n\n## [1.49.1] - 2020-07-03\n\n### Fixed \u{1f41e}\n\n- Improved performance significantly when switching between single, multiple and delta\n- Color-Range-Slider sometimes misbehaved when loading a new map or excluding buildings #926\n\n## [1.49.0] - 2020-06-19\n\n### Added \u{1f680}\n\n- Custom scenarios can be created and saved through the scenario menu #675\n- Importer and parser documentation can now be found on the github Website #954\n- Output of sourcemonitor can now be compressed with the compression flag\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- [Security] Bump angular from 1.7.9 to 1.8.0 in /visualization #995\n\n## [1.48.0] - 2020-06-12\n\n### Added \u{1f680}\n\n- Support of compressed cc.json files. Files can be compressed in the analysis #848\n\n### Fixed \u{1f41e}\n\n- Improved performance of several importers #846\n\n## [1.47.1] - 2020-05-08\n\n### Fixed \u{1f41e}\n\n- Attribute-Side-Bar being invisible\n\n## [1.47.0] - 2020-05-02\n\n### Added \u{1f680}\n\n- When hovering over a folder, all buildings inside it will be highlighted as well #694\n\n### Changed\n\n- Rename the button Show-Complete-Map button to Unfocus #642\n- Move the Unfocus button (visible when right-clicking a focused node) to the node-context-menu #948\n\n### Fixed \u{1f41e}\n\n- Generating a delta map with merged empty folders in between is now working correctly #730\n- Reduced time when opening a new file #932\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- [Security] Bump jquery from 3.4.0 to 3.5.0 in /visualization #944\n\n## [1.46.1] - 2020-04-24\n\n### Added \u{1f680}\n\n- Error dialogs in case of validation or api version issues #610\n\n### Fixed \u{1f41e}\n\n- Improved overall rendering performance of larger maps by roughly 40% #836\n\n## [1.45.5] - 2020-04-17\n\n### Added \u{1f680}\n\n- Median symbol for aggregated relative metrics #365\n- AttributeTypes for tokeiImporter and SCMLogParser #365\n- Ellipsis button in TreeView list when hovering a node to access context menu #780\n- Show gray eye-icon next to the ellipsis-button to indicate a flattened node #780\n- Attribute Type selector in the metric dropdowns for edges and nodes\n\n### Changed\n\n- Metrics with AttributeType relative are now aggregated using the median #365\n- Showing absolute number of files instead of relative number when hovering list item in TreeView #780\n- Clicking a hovered list item inside the TreeView opens folders #780\n- Color node name in gray when flattened #780\n\n### Removed \u{1f5d1}\n\n- Eye-icon in TreeView list to flatten a node #780\n- Option to focus a node when clicking the node name inside the TreeView #780\n\n### Fixed \u{1f41e}\n\n- Consistency of AttributeTypes representation #365\n- Wrong file description for tokeiimporter\n- Improved search performance #837\n\n## [1.44.0] - 2020-03-27\n\n### Added \u{1f680}\n\n- Dialog to select between different sorting options #388\n- Button to reverse the current selected sorting #388\n\n### Fixed \u{1f41e}\n\n- Show file selection in toolBar after excluding or hiding a node instead of an empty toolBar #896\n\n## [1.43.0] - 2020-03-20\n\n### Changed\n\n- Selectable metrics will only contain metrics from the visible maps\n- Closing the attribute-side-bar by clicking somewhere in the map will now be triggered on mouse up instead of mouse down\n\n### Fixed \u{1f41e}\n\n- Search-panel opening for a short duration when importing a new file\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Fix vulnerability with nokogiri <1.10.8\n\n## [1.42.3] - 2020-03-13\n\n### Fixed \u{1f41e}\n\n- Loading Gif not displayed when preparing to render a new map #857\n- Selecting zero files in Multiple mode will not trigger the 3D CodeMap creation\n- Metrics in the dropdown menu now show the correct max value for the visible maps #876\n\n## [1.42.2] - 2020-02-14\n\n### Fixed \u{1f41e}\n\n- Replaced non standard `[[` in sh scripts #849\n- Improved performance for loading a new file #836\n- Marked Packages are loaded from files #798\n\n## [1.42.1] - 2020-02-07\n\n### Fixed \u{1f41e}\n\n- GC Overhead Limit (OutOfMemory Exception) during analysis of large SCMLogs fixed #845\n\n## [1.42.0] - 2020-01-31\n\n### Added \u{1f680}\n\n- Support for camel and kebab-case for ccsh arguments #772\n- RawTextParser for analysis #660\n- IndentationLevel as metric for RawTextParser #660\n- Show additional Pairing Rate of Selected Building, simultaneously to the currently hovered Buildings #736\n\n### Changed\n\n- Options of the ccsh are now consistently in kebab-case #772\n\n### Fixed \u{1f41e}\n\n- Path prefix handling in tokeiimporter #841\n\n## [1.41.8] - 2020-01-17\n\n### Removed \u{1f5d1}\n\n- Project name parameters in the ccsh #773\n\n## [1.41.6] - 2020-01-10\n\n### Fixed \u{1f41e}\n\n- Deployment\n\n## [1.41.1] - 2020-01-10\n\n### Fixed \u{1f41e}\n\n- Performance of loading maps with edges improved #823\n- Calculation of other Group for fileExtensionBar #768\n- Remove focus of UI elements when they are not visible anymore\n\n## [1.41.0] - 2019-12-06\n\n### Added \u{1f680}\n\n- Show the relative number of files a folder includes compared to the project in the TreeView #380\n- Show the number of files a folder includes in the TreeView when hovering #380\n- When the File Extension Bar is hovered, all buildings corresponding to that extension are highlighted #545\n- Toggle between percentage and absolute values when clicking the file extension details section #545\n- Sum hovered delta values for folders #781\n\n## [1.40.0] - 2019-11-22\n\n### Changed\n\n- Replaced Blacklist Hide with Flatten option #691\n- Flattened buildings are not hidden by default #691\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Bump @types/three from 0.89.12 to 0.103.2 in /visualization #453\n- Bump angularjs-slider from 6.5.1 to 7.0.0 in /visualization #454\n- Bump webpack from 3.12.0 to 4.41.2 in /visualization #436\n- [Security] Bump angular from 1.7.7 to 1.7.9 in /visualization #800\n\n## [1.39.0] - 2019-11-15\n\n### Added\n\n- Progress indicator for SonarImporter #544\n\n### Changed\n\n- New style for hovered metric values #696\n- Redesigned slider labels in ribbonBar sections #696\n- Shortened ribbonBar sections #696\n\n### Fixed\n\n- Missing pictures and broken links in docs #785\n- SCMLogParser is now more resilient to unusual SVN commit messages #763\n\n## [1.38.1] - 2019-11-13\n\n### Added\n\n- New github-pages https://maibornwolff.github.io/codecharta/\n\n### Fixed\n\n- Sum symbol for hovered metric values only shows for folders #775\n\n## [1.38.0] - 2019-11-08\n\n### Added\n\n- Temporal coupling edges generated by SCMLogParser #622\n\n### Changed\n\n- Downloaded files are no longer formatted #679\n- Added highly and median coupled files metrics to non-churn metric list of SCMLogParser #622\n- Moved nodePathPanel to toolBar and updated style #607\n\n### Fixed\n\n- Removed attributes from downloaded files that should not be there #679\n\n## [1.37.0] - 2019-10-25\n\n### Added\n\n- Sidebar with information regarding the selected building #527\n- Sidebar closes when selected buildings is excluded #748\n\n### Changed\n\n- Animation to show or hide the legend panel #527\n\n### Removed\n\n- Expandable detail panel in lower left corner #527\n- Removed option to maximize/minimize detail panel #527\n\n### Fixed\n\n- Autofocus and label size for focused nodes #747\n- Selected buildings stays selected when settings are changed #748\n- IllegalStateException when scanning single file in SourceCodeParser #573\n- SourceCodeParser places files in the project root correctly into the hierarchy #574\n\n## [1.36.0] - 2019-10-18\n\n### Changed\n\n- Open and close the ribbonBar sections independently with an updated animation\n\n### Fixed\n\n- Camera is now resetted correctly, when unfocusing #634\n- Inputs of Color Range Slider now waits a second before it commits its values #676\n- Fixed root folder name in TreeView after new map after loading new map #649\n- Increased size of ribbonBar for big screens #644\n- File-Extension-Bar will not display excluded nodes anymore #725\n- Sanitize input for shelljs #600\n\n### Chore\n\n- Bump jacoco from 0.8.1 to 0.8.4 in /analysis\n\n## [1.35.0] - 2019-10-04\n\n### Added\n\n- Checkbox in global Settings for disabling camera reset, when new map is loaded #685\n- Pipe support for SourceCodeParser #716\n- Pipe support for SCMLogParser #717\n- Pipe support for SonarImporter #715\n\n### Fixed\n\n- Exclude and Hide options are disabled for empty and already existing search patterns #654\n\n## [1.34.0] - 2019-09-20\n\n### Added\n\n- Tokei Importer #538\n- Prominent Notice that we use Sonar-jar #713\n\n### Chore\n\n- Bump kotlin-reflect from 1.3.41 to 1.3.50 in /analysis\n- Bump json from 20180813 to 20190722 in /analysis\n- Bump rxjava from 2.2.9 to 2.2.12 in /analysis\n- Bump assertj-core from 3.12.2 to 3.13.2 in /analysis\n- Bump sonar-java-plugin from 5.12.1.17771 to 5.14.0.18788 in /analysis\n\n## [1.33.0] - 2019-09-10\n\n### Added\n\n- Edge Previews (Palm-Tree-Effect) #529\n- Dropdown to select Edge Metric, including Edge Counter #529\n- Edge Metric settings for Edge Height, Number of Previews & show only building with Edges #529\n\n### Changed\n\n- Edge Visualization to better distinguish between incoming and outgoing edges #529\n- Distribution metric is by default the same as area metric #689\n- MapTreeView below searchBar opens the first level by default #690\n- Focus metric search when opening metricChooser #693\n\n### Removed\n\n- Edge Options in Context menu #529\n\n### Fixed\n\n- SourceCodeParser now skips custom metrics for files, if the syntax tree cannot be created\n- Nodes with color metric equals 0 are colored correct again #677\n\n### Chore\n\n- [Security] Bump mixin-deep from 1.3.1 to 1.3.2 in /visualization\n\n## [1.32.0] - 2019-08-09\n\n### Added\n\n- Search for metrics and an indicator for the highest value in dropdown #575\n- Button to enable PresentationMode that uses Flashlight-Hovering #576\n- Clarifying information which file is which in the file bar when in delta mode #615\n\n### Changed\n\n- Replaced Scenario dropdown with button on the left of the metric sections #628\n\n## [1.31.0] - 2019-08-02\n\n### Added\n\n- New Metric in SourceCodeParser: Maximum-Nesting-Level #659\n\n### Fixed\n\n- Label hight adjustment now matches scaling of map #594\n- SCMLogParser now guesses the input file encoding #614\n\n## [1.30.0] - 2019-07-26\n\n### Added\n\n- New Search Bar #526\n- Number of Renames Metric to SCMLogParser #621\n- Age In Weeks Metric for SCMLogParser #620\n\n### Changed\n\n- ToolBar now shows partially cut-off controls if the window is too small #582\n- Position of the legendPanel was moved to the bottom-right corner #633\n- RibbonBar only opens the three metric section\n- Moved Scenario-select to the right in order to use less space\n- Moved loading-gif from ribbonBar to toolBar\n\n### Removed\n\n- RibbonBar toggle button\n\n### Fixed\n\n- FileExtensionBar height to not show a bottom-margin in Chrome\n- PointerEvents not being propagated when RibbonBar was extended\n- Reduced memory usage of SCMLogParser to avoid OutOfMemory Exception #631\n\n### Chore\n\n- [Security] Bump lodash.mergewith from 4.6.1 to 4.6.2 in /visualization\n- [Security] Bump lodash from 4.17.11 to 4.17.13 in /visualization\n- [Security] Bump fstream from 1.0.11 to 1.0.12 in /visualization\n\n## [1.29.0] - 2019-07-12\n\n### Changed\n\n- Moved Button to reset the map to the center next to the view-cube #606\n- Moved FileExtensionBar #527\n\n### Removed\n\n- Burger Menu / SideNav #526\n\n### Fixed\n\n- Colors in File-Extension-Bar will be displayed in MS Edge and Standlone now #584\n\n## [1.28.0] - 2019-06-28\n\n### Added\n\n- Releasing will now remind the developer to manually add the release notes #533\n- StructureModifier to remove and move nodes and set root of projects #547 / #181\n\n### Changed\n\n- More informative log messages regarding the success of project merging #547\n\n### Removed\n\n- Release Notes are not generated and added automatically to a release #533\n\n### Fixed\n\n- Margin will now be set correctly depending on whether dynamicMargin is enabled or not #602\n\n## [1.27.0] - 2019-06-25\n\n### Added\n\n- Automatically generates release notes from changelog and appends it to release #533\n- Adds global settings-menu with settings from options panel and weblinks #528\n\n### Changed\n\n- Moved File Settings from Ribbon Bar to new File Setting Bar #525\n- Rename sample file codemap-nodes #587\n- Hide checkbox to select white-positive-buildings in delta state #345\n\n### Removed\n\n- Removes Options panel from sidebar #528\n- Removes Weblinks panel from sidebar #528\n- Removed URL-parameter info from sidebar #525\n\n### Fixed\n\n- Unary Metric will no longer be auto-selected when a new map is loaded #579\n\n## [1.26.0] - 2019-06-14\n\n### Added\n\n- FileExtensionBar to show file-distribution of chosen metric #495\n- sum icon is now displayed on the left of the metric value #364\n- Added Pop-up dialog before downloading file to set filename and see what data will be stored #523\n\n### Fixed\n\n- Fix set default ColorRange when resetting color section #560\n\n## [1.25.1] - 2019-05-30\n\n### Added\n\n- SVN log parser keeps track of renaming of files for metric calculation #542\n\n### Fixed\n\n- Entries with renaming information in SVN logs are attributed to correct file #542\n- Unary metric will no longer be removed from the MetricChooser-Dropdown when a folder was excluded or hidden #548\n- Changing margin and then file or mode will no longer freeze the application #524\n\n### Chore\n\n- [Security] Bump tar from 2.2.1 to 2.2.2 in /visualization\n\n## [1.25.0] - 2019-05-17\n\n### Added\n\n- Added SonarJava to Source code parser #343\n- Added exclude and defaultExclude options to SourceCodeParser #508\n- Show loading-gif in ribbonBar when rerendering map\n\n### Changed\n\n- Using Sonar Plugins for Source code parser, giving the Sonar Metrics #343\n- Use debounced settings update instead of throttled\n- Filename of downloaded file now contains time #484\n\n### Fixed\n\n- Fixed issue with too long line in ccsh.bat #506\n- Prevent downloaded files from having multiple Timestamps #484\n- Do not show loadingGif when cancelling the fileChooser #498\n- Excluding a building now updates the maximum value of colorRange #355\n\n### Chore\n\n- Bump angular-material from 1.1.9 to 1.1.14 in /visualization\n- [Security] Bump jquery from 3.3.1 to 3.4.0 in /visualization\n\n## [1.24.0] - 2019-04-23\n\n### Removed\n\n- Settings as URL parameters #470\n\n### Fixed\n\n- Fixed issue with trailing slash in URL parameter of SonarImporter #356\n\n### Chore\n\n- Bump d3 from 4.13.0 to 5.9.2 in /visualization\n- Bump sinon from 4.5.0 to 7.3.1 in /visualization\n\n## [1.23.0] - 2019-03-22\n\n### Added\n\n- Project Name can be specified for merge filter #394\n\n### Changed\n\n- Throw a MergeException if project names do not match in MergeFilter #394\n\n### Fixed\n\n- Excluded buildings are no longer used for aggregated metric calculation #352\n\n### Chore\n\n- Bump browser-sync-webpack-plugin from 1.2.0 to 2.2.2 in /visualization\n- Bump @types/node from 8.10.19 to 11.11.3 in /visualization\n- Bump html-webpack-plugin from 2.30.1 to 3.2.0 in /visualization\n- Bump load-grunt-tasks from 3.5.2 to 4.0.0 in /visualization #444\n- Bump ajv from 5.5.2 to 6.10.0 in /visualization #447\n- Bump resolve-url-loader from 2.3.0 to 3.0.1 in /visualization #448\n\n## [1.22.0] - 2019-03-15\n\n### Added\n\n- Added buttons to select all/none/inversion of revisions/maps in multiple mode #391\n- Merge filter can merge all files of folders #392\n\n### Fixed\n\n- Fixed bug that code map was not re-loaded when changing from multiple to single revision mode #396\n- Fixed missing apiVersion in aggregated map #398\n- Input Fields of color sliders adjust width according to content #409\n\n### Chore\n\n- Bump nouislider from 11.1.0 to 13.1.1 in /visualization\n- Bump typescript from 2.7.2 to 3.3.3333 in /visualization\n- Bump @types/d3 from 4.13.0 to 5.7.1 in /visualization\n\n## [1.21.2] - 2019-02-26\n\n### Added\n\n- When entering Multiple Mode, all Maps/revisions are preselected\n\n### Fixed\n\n- Fixing non-existent metric aggregation on root-level when using multiple Files\n\n## [1.21.1] - 2019-02-22\n\n### Added\n\n- Hovering a node in the map also hovers it in the tree view #351\n\n### Fixed\n\n- Fixing sync between treeview hovering and map hovering #351\n- Folders can no longer be colored in the CodeMap or TreeView #359\n\n## [1.21.0] - 2019-02-16\n\n### Added\n\n- Color searched node names green in TreeView #225\n- Add option buttons (three dots) in TreeViewSearch to `Hide` or `Exclude` matching nodes #298\n- Show blacklist entry counter in blacklistPanel header #298\n- Option checkbox \'Hide Flattened Buildings\' #225\n- Hide/Flatten non-searched buildings #225\n- Hide/Flatten all buildings, if searchPattern can\'t find any matching nodes #225\n- Show maxValue of each metric in metricChooser select list #204\n- Colored color-slider inside the RibbonBar #318\n- Option to color positive buildings white #311\n- Clicking the ribbonBar section-titles toggles the ribbonBar #324\n- View-Cube displayed in top right corner #274\n- Adding prettier formatter\n- Adapt colorRange when changing colorMetric #330\n\n### Changed\n\n- Update TreeView filter with search field #225\n- Use \'gitignore\' style matching in TreeViewSearch #225\n- Reorder `Focus`, `Hide` and `Exclude` buttons in nodeContextMenu #298\n- Reorder sidebarPanels (BlacklistPanel beneath TreeViewSearchPanel) #298\n- Use `fa-ban`-icon as symbols for blacklistPanel (instead of `fa-list`) #298\n- Use `fa-ban`-icon as symbols for blacklistType `Exclude` (instead of `fa-times`) #298\n- Label size keeps readable for large maps or a high distance between camera and map #237\n- updated dependencies to fix vulnerabilities\n- Scenarios only update settings which exist in Scenario and not all #224\n- MergeFilter to merge unique blacklist entries #275\n- MergeFilter to only merge unique attributeType entries #275\n\n### Removed\n\n- Remove invertHeight checkbox in delta-view #306\n- Remove option to add blacklist entries from inside the blacklistPanel #298\n- Remove statistic functions in Experimental panel #308\n\n### Fixed\n\n- CodeMap does not move anymore when navigating in text-fields #307\n- Merge blacklist in multipleFile view and convert paths #275\n- Show logo in NW.js standalone application #233\n\n## [1.20.1] - 2018-12-19\n\nFixed release issues.\n\n## [1.20.0] - 2018-12-19\n\n### Added\n\n- button to unfocus node\n- NodeContextMenu: Option to only hide dependent edges\n- plop support\n\n### Changed\n\n- Renaming \'isolate node\' to \'focus node\'\n- Focusing a node does not remove the blacklist items of type Hide\n\n### Removed\n\n- NodeContextMenu: Option to \'show all\' nodes, which used to unhide all nodes\n\n### Fixed\n\n- Reshow hidden nodes from Treeview or Blacklist\n\n## [1.19.0] - 2018-11-02\n\n### Added\n\n- Deleted files in delta view use their previous area value in order to be visible #254\n\n### Fixed\n\n- Buildings in the delta view are not colored correctly #253\n- Reset Button in RibbonBar to reset \'Invert Colors\' #255\n- Remove lag of \'Invert Color\' checkboxes, when selecting single/delta mode #255\n\n## [1.18.1] - 2018-10-31\n\nFixed release issues\n\n## [1.18.0] - 2018-10-29\n\n### Added\n\n- Integration with Jasome through JasomeImporter #245\n- URL parameter \'mode\' with the values Single, Multiple or Delta\n- Blacklist to persist excluded or hidden nodes #205\n- Option to exclude nodes in nodeContextMenu #205\n- BlacklistPanel in SettingsSidebar to manage blacklist #205\n- Save-Button to download current CodeMap #205\n- Publishing visualization on Docker Hub #252\n\n### Changed\n\n- No longer fat jar of every subcomponent of analysis, baked into ccsh\n- Changed simple syserr write to logger call for analysis #243\n\n### Removed\n\n- URL parameter \'delta\' does not exist anymore\n\n### Fixed\n\n- Show delta of CodeMap when URL parameter mode=delta is set\n\n## [1.17.0] - 2018-09-28\n\n### Changed\n\n- Invert delta colors moved from color to heigh metric column in ribbon bar #220\n- Delta value now as kindOfMap shown #220\n- Aggreate maps as multiple rename #220\n\n### Fixed\n\n- Single/delta buttons now correctly activated when delta in ulr shown #220\n\n## [1.17.0] - 2018-09-21\n\n### Added\n\n- CodeMaatImport for temporal coupling dependencies #172\n- EdgeFilter to aggregate edge-attributes as node-attributes #222\n- Option to show and hide dependent edges from node-context-menu #218\n\n### Changed\n\n- MergeFilter merges edges #172\n\n## [1.16.2] - 2018-09-10\n\n### Fixed\n\n- missing event in firefox #232\n\n## [1.16.1] - 2018-08-31\n\n### Added\n\n- gitlab + dotnet manual\n\n## [1.16.0] - 2018-08-31\n\n### Added\n\n- add the option to add multiple files via url parameter (e.g. ?file=a&file=b...)\n\n## [1.15.1] - 2018-08-13\n\nFixed release issues\n\n## [1.15.0] - 2018-08-13\n\n### Added\n\n- e2e tests are running in CI Environment (headless)\n- pupeteer as e2e test framework\n- Show names of marked packages in legend\n- Added a source code importer that can analyse rloc,mcc for java source code\n- keep settings when the user changes a file\n- Added option to set white background\n\n### Removed\n\n- cypress\n\n## [1.14.2] - 2018-07-16\n\n### Changed\n\n- Changed folder detail metrics from mean to sum\n\n## [1.14.1] - 2018-07-13\n\nFixed release issues\n\n## [1.14.0] - 2018-07-13\n\n### Added\n\n- Added UnderstandImporter to Analysis\n- Packages can be highlighted in different colors #152\n- Adding a context menu with highlighting colors and convenience methods for the tree view and 3D view #155\n- Folders and files to highlight can be described in the cc.json #165\n- Dynamic/automatic margin computing de/activated by tick\n\n### Changed\n\n- Details panel: using the sum of the childrens metrics instead of the mean value\n\n### Fixed\n\n- Display buttons do not trigger map changes #185\n- Flickering surfaces when zooming out\n\n## [1.13.0] - 2018-06-08\n\n### Added\n\n- Layout switcher #141\n- Added CrococosmoImporter to Analysis\n- Added type, dirs, name to CSVExporter\n- Invert height of building checkbox\n- Aggregate multiple maps in visualization #110\n- Auto Focus selected map part\n- Timmer added to applySettings in SettingsService\n\n### Changed\n\n- Crococosmo xml files will now generate a cc.json file for each version\n- Suppressing ARIA warnings\n- Simplified gradle structure of analysis part\n- Deltas added in the metric quick access panel #138\n- Ticks and ResetValue Buttons call to onSettingsChange to avoid applySettings timer\n- compacting empty middle packages #150\n- Detail panel minimized by default\n\n### Fixed\n\n- filter by regex shows parent nodes #116\n- typo in scss file\n\n## [1.12.0] - 2018-04-27\n\n### Added\n\n- horizontal quick access metric chooser\n- Link behind filepath in detailPanel #84\n- Double click event-handler on Buildings #84\n- Detail Panel can be minimized and maximized\n- Settings option to minimize Detail Panel\n- cypress as an e2e test runner\n\n### Removed\n\n- metric details from legend\n- metric chooser from settings panel\n\n## [1.11.2] - 2018-04-13\n\n### Fixed\n\n- a sonar importer bug which prevented the importer to fetch the last page #122\n\n## [1.11.1] - 2018-04-11\n\nFixed release issues\n\n## [1.11.0] - 2018-04-11\n\n### Added\n\n- SASS support\n- simple regex filter\n- Reset Button\n- Dialog Service replaces console log calls and window.alert calls\n- linking tree view and map hover\n- auto fit scene button\n- anugularJS material\n- Scenarios are now filtered by compatibility for the given map\n- Link in visualization #84\n\n### Removed\n\n- materialize-css\n- grunt\n\n### Fixed\n\n- less flickering and artifacts\n\n## [1.10.0] - 2018-03-22\n\n### Changed\n\n- Clean up UI #86\n- Updated analysis dependencies\n\n### Fixed\n\n- Delta View shows Deltas of itself as non-trivial if nodes have same name #89: Compare deltas by path not name\n- Delta calculation performance boost #91\n- Problems when intermediate nodes missed metrics #92\n- removed unnecessary calculations\n- removed bug in SonarImporter that slowed up performance and missed out multiple metrics\n- minor bugs\n\n## [1.9.3] - 2018-02-23\n\n### Changed\n\n- sorting treeview by folders and names\n\n## [1.9.2] - 2018-02-20\n\n### Added\n\n- added preliminary CSVExporter for visualisation data\n\n### Changed\n\n- padding rendering\n- minimal building height is 1 to prevent clipping issues\n- fallback values for visualization when no metric is available (area = 1, height = 1, color = grey). Data in data structure will not be changed.\n\n## [1.9.1] - 2018-02-20\n\n### Fixed\n\n- detail panel bug fix\n\n## [1.9.0] - 2018-02-20\n\n### Changed\n\n- moved to unscoped npm packages\n\n## [1.8.2] - 2018-02-20\n\n### Changed\n\n- detail panel background is white now. better visibility\n\n## [1.8.1] - 2018-02-20\n\n### Changed\n\n- revision chooser moved to settings panel and uses now understandable dropdowns instead of links. Part of the #82 proposals\n\n## [1.8.0] - 2018-02-20\n\n### Added\n\n- Experimental dependency support\n- loading indicator\n- file path to detail panel\n- collapsible tree view and visibility/isolation per node toggles\n\n### Changed\n\n- added a ray-aabb intersection test before precise testing. Less time is spent in intersection methods.\n\n### Fixed\n\n- fixed a minor bug\n- canvas mouse event listener are now limited to the canvas dom element. UI events will not trigger the canvas listeners anymore\n- canvas mouse events distinguish now between click and drag. Dragging does not reset selection anymore\n- slider input #64\n- rz slider initialization bug\n- increasing test coverage\n- deltas where calculated on map loading even though, they were disabled\n\n## [1.7.2] - 2018-02-02\n\n### Fixed\n\n- url to homepage\n- analysis package\n\n## [1.7.1] - 2018-02-02\n\nFixed release issues\n\n## [1.7.0] - 2018-02-02\n\n### Changed\n\n- npm pachage scoped to @maibornwolff\n- Defined further scenarios via json file\n- Added description for metrics and scenarios\n- using fixed point values in detail panel (ui) to truncate infinite or long decimals\n- folders now use the mean attributes of their buildings(leaves)\n\n### Fixed\n\n- Bugfix: detail panel should be cleared before setting new details else old values may survive\n\n## [1.6.7] - 2018-02-01\n\nFixed release issues\n\n## [1.6.6] - 2018-02-01\n\n### Added\n\n- added anonymous git log generator anongit\n- browser demo shows codecharta-visualization sonar analysis\n\n### Changed\n\n- rewrote command line interface\n- linking ccsh to bin/ccsh will be deleted later\n\n### Fixed\n\n- No underscore for scenarios in tooltips #71\n\n## [1.6.5] - 2018-01-30\n\nFixed release issues\n\n## [1.6.4] - 2018-01-30\n\n### Fixed\n\n- fixed broken SonarImporter due to jdk9 migration\n\n## [1.6.3] - 2018-01-26\n\n### Added\n\n- added npm publish for analysis\n- simple release script for automatic changelog updates, commits, tags, version bumps\n\n## [1.6.2] - 2018-01-25\n\n### Added\n\n- added support for git log --raw and git log --numstat --raw\n- added support for git log --numstat and codechurn\n- added support for renames in SCMLogParser for git log --name-status\n- added support for renames in SCMLogParser for git log --numstat, git log --raw and git log --numstat --raw\n- added new SCM experimental metrics range_of_weeks_with_commits and successive_weeks_of_commits\n- the file origin of a node is displayed in the details now\n- sonarqube analysis on CI build\n- npm publish support in visualization\n\n### Changed\n\n- Deltas are no longer experimental\n- two selected delta maps now merge their nodes correctly. The map where\n a node was missing get\'s a copy of this node with metrics=0.\n File additions/deletions are therefore only visible when areaMetric is\n unary and deltas are activated.\n\n### Fixed\n\n- delta display bug for heights\n- going back from delta view now correctly removes deltas from node data\n- Delta shown although not in delta mode #60\n- Allow inversion of delta colors #57\n- npm binary error\n\n## [1.5.2] - 2018-01-04\n\n### Changed\n\n- scaling slider now has steps of 0.1. This allows the user to select precise values like 2.0\n- updated jdk to jdk9\n\n### Fixed\n\n- Opening the same file a second time does not work #53\n- added missing require declaration\n- added glsl loader in testing environment\n- Native Application support is bugged while building in Travis CI #48\n\n## [1.5.1] - 2017-11-14\n\n### Added\n\n- command line parameter to toggle "authors" attribute in SCMLogParser\n\n### Fixed\n\n- when passing a file through the "file" parameter in the URL, the map now renders correctly\n\n## [1.5.0] - 2017-10-24\n\n### Added\n\n- experimental delta functionality\n- loading multiple maps\n- experimental margin slider\n\n### Changed\n\n- faster rendering\n\n### Removed\n\n- nwjs packages and native apps due to a bug\n\n### Fixed\n\n- using color metric instead of height metric for color range slider ceil\n\n## [1.4.0] - 2017-09-14\n\n### Added\n\n- Typescript support\n- Browsersync\n- added advanced merging strategy "leaf" in MergeFilter\n- advanced merging with restructuring\n\n### Changed\n\n- Browserify replaced with Webpack\n- Better debugging\n- Karma instead of Mocha\n\n## [1.3.2] - 2017-08-18\n\n### Added\n\n- add slider controls for color thresholds #19\n- Added additional structuring in SonarImporter for multi-module projects\n- button to generate current url parameters\n- camera position is now a setting (e.g. in scenarios or url parameters)\n- margin slider: make it easier to find out to which package/folder a class belongs #20\n\n### Changed\n\n- better url parameter resolution (nested parameters are handled correctly)\n- changed hover color. Allows better distinction between hover and select\n\n### Removed\n\n- obsolete helper grid\n\n### Fixed\n\n- changing display or color settings resets scaling #18\n- scenario description #32\n- Scaling should not scale the labels #35\n\n## [1.3.1] - 2017-07-05\n\n### Fixed\n\n- Prevented override of URL-parameters by default scenario\n\n## [1.3.0] - 2017-07-05\n\n### Added\n\n- Adding simple merge functionality for multiple json files\n- Added CSVImporter\n- Added Translation for SonarQube metrics\n- Added descriptions for metrics\n\n### Changed\n\n- Changed uppercase metrics, e.g. RLOC, to lowercase metrics\n\n### Fixed\n\n- Simple cc.json does not display anything #17\n\n## [1.2.0] - 2017-06-19\n\n### Added\n\n- Adding Labels and UI\n- Support for links to source page of SonarQube in sonarimporter\n- Added SCMLogParser\n\n### Fixed\n\n- GitHub Issue: legend is wrong #21\n\n## [1.1.5] - 2017-05-31\n\n### Fixed\n\n- Wrong version numbers in analysis part\n\n## [1.1.4] - 2017-05-26\n\n### Added\n\n- Scenarios and default scenario\n- Translation API for Metrics\n- Metric tooltips in dropdown\n\n### Fixed\n\n- GitHub Issue: Sonarimporter crashes with null pointer exception when there is a component without path. #13\n\n## [1.1.3] - 2017-05-01\n\n### Added\n\n- Support for SonarQube Measures-API\n- Error logging for sonarqube errors\n\n### Changed\n\n- Standard Sonar metric is now complexity,ncloc,functions,duplicated_lines,classes,blocker_violations,generated_lines,bugs,commented_out_code_lines,lines,violations,comment_lines,duplicated_blocks\n\n## [1.1.2] - 2017-04-28\n\n### Added\n\n- Translation API for Metrics\n\n## [1.1.1] - 2017-04-07\n\n### Fixed\n\n- GitHub Issue: Flickering surfaces #3\n- GitHub Issue: Unable to install due to readlink error on macOS #4\n\n## [1.1.0] - 2017-03-27\n\n### Added\n\n- SourceMonitorImporter for importing projects from SourceMonitor.\n\n## [1.0.0] - 2017-03-17\n\n### Added\n\n- SonarImporter for importing projects from SonarQube.\n- ValidationTool for validating an existing json file.\n',{headerIds:!1}).split("\n");const r=this.findVersionLine(i,this.data.currentVersion),s=this.findVersionLine(i,this.data.previousVersion);i=i.slice(r,s+1);const l=["Added \u{1f680}","Fixed \u{1f41e}","Changed","Removed \u{1f5d1}","Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}"],u={};for(const f of l){const p=new RegExp(`

    ${f}

    `),m=this.getAllIndexes(i,p),_=[];for(const b of m){const w=b+2,F=this.findEndChangesLine(i,b);for(const D of i.slice(w,F))_.push(`${D}
    `)}_.length>0&&(u[f]=_.join("\n"))}return u}getAllIndexes(e,i){return e.reduce((r,s,l)=>(i.test(s)&&r.push(l),r),[])}findVersionLine(e,i){const r=new RegExp(`\\[${i}]`);return e.findIndex(s=>r.test(s))}findEndChangesLine(e,i){return i+e.slice(i+1).findIndex(r=>/

    /.test(r)||/

    /.test(r))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Jf))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-change-log-dialog"]],standalone:!0,features:[o.aNF],decls:16,vars:5,consts:[["color","primary"],["mat-dialog-content",""],[1,"content"],["mat-dialog-actions",""],["href","https://codecharta.com/news/","target","_blank","rel","noopener noreferrer"],["mat-button","","cdkFocusInitial","",3,"mat-dialog-close"],[3,"innerHTML"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0),o.EFF(1,"Changelog"),o.k0s(),o.j41(2,"div",1)(3,"h1"),o.EFF(4,"What is new in CodeCharta?"),o.k0s(),o.j41(5,"h2"),o.EFF(6),o.k0s(),o.j41(7,"div",2),o.Z7z(8,uMe,4,2,"div",null,o.fX1),o.nI1(10,"keyvalue"),o.k0s()(),o.j41(11,"div",3)(12,"a",4),o.EFF(13,"Know more"),o.k0s(),o.j41(14,"button",5),o.EFF(15,"CLOSE"),o.k0s()()),2&i&&(o.R7$(6),o.Lme("",r.data.previousVersion," \u2192 ",r.data.currentVersion,""),o.R7$(2),o.Dyx(o.bMT(10,3,r.changes)),o.R7$(6),o.Y8G("mat-dialog-close",!0))},dependencies:[Yg,Al,Zl,ns,Ta,lf],encapsulation:2})}}return n})();function IY(n){const t=n.split(".");return{major:Number.parseInt(t[0])||0,minor:Number.parseInt(t[1])||0,patch:Number.parseInt(t[2])||0}}let pMe=(()=>{class n{constructor(e){this.dialog=e,this.version=s1.rE}synchronizeLocalCodeChartaVersion(){const e=localStorage.getItem("codeChartaVersion");null!==e?function fMe(n,t){const e=IY(n),i=IY(t);return e.major===i.major&&e.minor===i.minor&&e.patch===i.patch?0:e.major>i.major?1:e.majori.minor?1:e.minori.patch?1:e.patch{class n{constructor(e,i,r,s,l){this.doc=e,this.delegate=i,this.zone=r,this.animationType=s,this.moduleImpl=l,this._rendererFactoryPromise=null,this.scheduler=(0,o.WQX)(o.An2,{optional:!0}),this.loadingSchedulerFn=(0,o.WQX)(_Me,{optional:!0})}ngOnDestroy(){this._engine?.flush()}loadImpl(){const e=()=>this.moduleImpl??v.e(8).then(v.bind(v,8008)).then(r=>r);let i;return i=this.loadingSchedulerFn?this.loadingSchedulerFn(e):e(),i.catch(r=>{throw new o.wOt(5300,!1)}).then(({\u0275createEngine:r,\u0275AnimationRendererFactory:s})=>{this._engine=r(this.animationType,this.doc);const l=new s(this.delegate,this._engine,this.zone);return this.delegate=l,l})}createRenderer(e,i){const r=this.delegate.createRenderer(e,i);if(0===r.\u0275type)return r;"boolean"==typeof r.throwOnSyntheticProps&&(r.throwOnSyntheticProps=!1);const s=new gMe(r);return i?.data?.animation&&!this._rendererFactoryPromise&&(this._rendererFactoryPromise=this.loadImpl()),this._rendererFactoryPromise?.then(l=>{const u=l.createRenderer(e,i);s.use(u),this.scheduler?.notify(10)}).catch(l=>{s.use(r)}),s}begin(){this.delegate.begin?.()}end(){this.delegate.end?.()}whenRenderingDone(){return this.delegate.whenRenderingDone?.()??Promise.resolve()}static{this.\u0275fac=function(i){o.QTQ()}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();class gMe{constructor(t){this.delegate=t,this.replay=[],this.\u0275type=1}use(t){if(this.delegate=t,null!==this.replay){for(const e of this.replay)e(t);this.replay=null}}get data(){return this.delegate.data}destroy(){this.replay=null,this.delegate.destroy()}createElement(t,e){return this.delegate.createElement(t,e)}createComment(t){return this.delegate.createComment(t)}createText(t){return this.delegate.createText(t)}get destroyNode(){return this.delegate.destroyNode}appendChild(t,e){this.delegate.appendChild(t,e)}insertBefore(t,e,i,r){this.delegate.insertBefore(t,e,i,r)}removeChild(t,e,i){this.delegate.removeChild(t,e,i)}selectRootElement(t,e){return this.delegate.selectRootElement(t,e)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setAttribute(t,e,i,r){this.delegate.setAttribute(t,e,i,r)}removeAttribute(t,e,i){this.delegate.removeAttribute(t,e,i)}addClass(t,e){this.delegate.addClass(t,e)}removeClass(t,e){this.delegate.removeClass(t,e)}setStyle(t,e,i,r){this.delegate.setStyle(t,e,i,r)}removeStyle(t,e,i){this.delegate.removeStyle(t,e,i)}setProperty(t,e,i){this.shouldReplay(e)&&this.replay.push(r=>r.setProperty(t,e,i)),this.delegate.setProperty(t,e,i)}setValue(t,e){this.delegate.setValue(t,e)}listen(t,e,i){return this.shouldReplay(e)&&this.replay.push(r=>r.listen(t,e,i)),this.delegate.listen(t,e,i)}shouldReplay(t){return null!==this.replay&&t.startsWith("@")}}const _Me=new o.nKC(""),TV=sn($c,n=>n.focusedNodePath),vMe=[uc,TV,WW,tK,JX,eK,hv,Wp];const FY=[o2,Lp,F3,D3,A2,p2,d2,l2,c2,a2,lx,ax,M2,r0,u2,h2,f2,sx,zp,Qp,cx,o0,wR,xR,_2,CR,Gp,Hp,Yh,m2,TR,b2,IR,s2,hu],xMe=1e3/60;let DY=(()=>{class n{constructor(e,i,r,s,l){this.store=e,this.actions$=i,this.uploadFilesService=r,this.threeRendererService=s,this.codeMapRenderService=l,this.actionsRequiringRender$=this.actions$.pipe(qp(...FY)),this.renderCodeMap$=vs(()=>d0([this.store.select(Fd),this.actionsRequiringRender$]).pipe(hr(([u])=>!!u.unifiedMapNode),function wMe(n,t=tu,e){const i=Qf(n,t);return function yMe(n,t){return(0,Ir.N)((e,i)=>{const{leading:r=!0,trailing:s=!1}=t??{};let l=!1,u=null,f=null,p=!1;const m=()=>{f?.unsubscribe(),f=null,s&&(w(),p&&i.complete())},_=()=>{f=null,p&&i.complete()},b=F=>f=Rr(n(F)).subscribe((0,lr._)(i,m,_)),w=()=>{if(l){l=!1;const F=u;u=null,i.next(F),!p&&b(F)}};e.subscribe((0,lr._)(i,F=>{l=!0,u=F,(!f||f.closed)&&(r?w():b(F))},()=>{p=!0,(!(s&&l&&f)||f.closed)&&i.complete()}))})}(()=>i,e)}(xMe,tu,{leading:!1,trailing:!0}),ro(([u])=>{this.codeMapRenderService.render(u.unifiedMapNode),this.codeMapRenderService.scaleMap(),this.threeRendererService.render()}),lR()),{dispatch:!1}),this.removeLoadingIndicatorAfterRender$=vs(()=>this.renderCodeMap$.pipe(hr(()=>!this.uploadFilesService.isUploading),ro(()=>{this.store.dispatch(Ic({value:!1})),this.store.dispatch(uh({value:!1}))})),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO($p),o.KVO(U1),o.KVO(wr),o.KVO(dX))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),CMe=(()=>{class n{constructor(e,i,r,s){this.store=e,this.renderCodeMapEffect=i,this.threeMapControlsService=r,this.actions$=s,this.autoFitTo$=vs(()=>d0(vMe.map(l=>this.store.select(l))).pipe(C_(1),ul(this.store.select(qW)),hr(([,l])=>l),Jg(()=>this.renderCodeMapEffect.renderCodeMap$.pipe(Ms(1))),ro(()=>{this.threeMapControlsService.autoFitTo()})),{dispatch:!1}),this.autoFitToWhenResetCameraIfNewFileIsLoadedSetToFalse$=vs(()=>this.actions$.pipe(qp("StartWithGlobalOption:resetCameraIfNewFileIsLoadedSetToFalse"),r2(),Jg(()=>this.renderCodeMapEffect.renderCodeMap$.pipe(Ms(1))),ro(()=>{this.threeMapControlsService.autoFitTo()})),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(DY),o.KVO(Rd),o.KVO($p))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),MMe=(()=>{class n{constructor(e){this.store=e,this.linkHeightAndColorMetric$=vs(()=>d0([this.store.select(C2),this.store.select($7)]).pipe(hr(([,i])=>i),(0,Xn.T)(([i])=>Yh({value:i}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const IV=sn(RX,jw,(n,t)=>n?t.get(n.nodeId):null),EMe=sn($w,n=>n.markingColors),SMe=sn(IV,EMe,bY,(n,t,e)=>{if(null===n)return t.map(r=>({color:r,isMarked:!1}));const i=IW(e,n.path);return t.map(r=>({color:r,isMarked:-1!==i&&r===e[i].color}))});function TMe(n,t){1&n&&o.nrm(0,"i",5)}function IMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",4),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(),l=o.XpG();return o.Njj(r.isMarked?l.unmarkFolder(s.path):l.markFolder(s.path,r.color))}),o.DNE(1,TMe,1,0,"i",5),o.k0s()}if(2&n){const e=t.$implicit;o.xc7("background-color",e.color),o.R7$(),o.vxM(e.isMarked?1:-1)}}function FMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",1),o.Z7z(1,IMe,2,3,"button",2,o.fX1),o.nI1(3,"async"),o.j41(4,"cc-color-picker",3),o.bIt("onColorChange",function(r){const s=o.eBV(e),l=o.XpG();return o.Njj(l.markFolder(s.path,r))}),o.k0s()()}if(2&n){const e=o.XpG(),i=o.sdS(3);o.R7$(),o.Dyx(o.bMT(3,2,e.markFolderItems$)),o.R7$(3),o.Y8G("hexColor","#ff0000")("triggerTemplate",i)}}function DMe(n,t){1&n&&o.nrm(0,"div",6)}let BMe=(()=>{class n{constructor(e){this.store=e,this.markFolderItems$=this.store.select(SMe),this.codeMapNode$=this.store.select(IV)}markFolder(e,i){this.store.dispatch(b2({packages:[{path:e,color:i}]}))}unmarkFolder(e){this.store.dispatch(IR({path:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-mark-folder-row"]],standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[["colorPickerTriggerTemplate",""],[1,"row"],["title","Colorize folder",1,"colorButton",3,"background-color"],[3,"onColorChange","hexColor","triggerTemplate"],["title","Colorize folder",1,"colorButton",3,"click"],[1,"fa","fa-times"],[1,"cc-color-picker-trigger","fa","fa-paint-brush"]],template:function(i,r){if(1&i&&(o.DNE(0,FMe,5,4,"div",1),o.nI1(1,"async"),o.DNE(2,DMe,1,0,"ng-template",null,0,o.C5r)),2&i){let s;o.vxM((s=o.bMT(1,1,r.codeMapNode$))?0:-1,s)}},dependencies:[Mq,zn],styles:["[_nghost-%COMP%] .row[_ngcontent-%COMP%]{display:flex}[_nghost-%COMP%] [_ngcontent-%COMP%]:hover{cursor:pointer}[_nghost-%COMP%] .colorButton[_ngcontent-%COMP%]{width:32px;height:32px}[_nghost-%COMP%] .colorButton[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:25px;display:block;color:red;text-shadow:-1px 0 white,0 1px white,1px 0 white,0 -1px white}[_nghost-%COMP%] cc-color-picker[_ngcontent-%COMP%]{width:32px;height:32px}[_nghost-%COMP%] cc-color-picker[_ngcontent-%COMP%] .cc-color-picker-trigger[_ngcontent-%COMP%]{font-size:25px;margin-top:8px}"]})}}return n})();const kMe=sn(TV,n=>n[0]);let RMe=(()=>{class n{transform(e,i){if(!e||!i)return{isNodeFocused:!1,isParentFocused:!1};const r=e===i.path;return{isNodeFocused:r,isParentFocused:!r&&i.path.startsWith(e)}}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"isNodeFocused",type:n,pure:!0,standalone:!0})}}return n})();function PMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",1),o.bIt("click",function(){o.eBV(e);const r=o.XpG(2);return o.Njj(r.handleFocusNodeClicked())}),o.nrm(1,"i",2),o.EFF(2," FOCUS "),o.k0s()}}function OMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",5),o.bIt("click",function(){o.eBV(e);const r=o.XpG(3);return o.Njj(r.handleUnfocusAllNodesClicked())}),o.nrm(1,"i",2),o.EFF(2," UNFOCUS ALL "),o.k0s()}}function NMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",3),o.bIt("click",function(){o.eBV(e);const r=o.XpG(2);return o.Njj(r.handleUnfocusNodeClicked())}),o.nrm(1,"i",2),o.EFF(2),o.k0s(),o.DNE(3,OMe,3,0,"button",4),o.nI1(4,"async")}if(2&n){const e=o.XpG(),i=o.XpG();o.R7$(2),o.SpI(" ",e.isParentFocused?"UNFOCUS PARENT":"UNFOCUS"," "),o.R7$(),o.vxM(o.bMT(4,2,i.hasPreviousFocusedNodePath$)?3:-1)}}function LMe(n,t){if(1&n&&o.DNE(0,PMe,3,0,"button",0)(1,NMe,5,4),2&n){const e=t;o.vxM(e.isNodeFocused?-1:0),o.R7$(),o.vxM(e.isNodeFocused||e.isParentFocused?1:-1)}}let UMe=(()=>{class n{constructor(e){this.store=e,this.currentFocusedNodePath$=this.store.select(kMe),this.hasPreviousFocusedNodePath$=this.store.select(TV).pipe((0,Xn.T)(i=>i.length>1))}handleFocusNodeClicked(){this.store.dispatch(xR({value:this.codeMapNode.path}))}handleUnfocusNodeClicked(){this.store.dispatch(CR())}handleUnfocusAllNodesClicked(){this.store.dispatch(_2())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-focus-buttons"]],inputs:{codeMapNode:"codeMapNode"},standalone:!0,features:[o.aNF],decls:3,vars:6,consts:[["mat-button","","id","focus-button","title","Only show selected nodes with children-nodes"],["mat-button","","id","focus-button","title","Only show selected nodes with children-nodes",3,"click"],[1,"fa","fa-bullseye"],["mat-button","","aria-label","Remove Focus from node","title","Show previous focused node",3,"click"],["mat-button","","aria-label","Remove Focus from all nodes","title","Show complete map"],["mat-button","","aria-label","Remove Focus from all nodes","title","Show complete map",3,"click"]],template:function(i,r){if(1&i&&(o.DNE(0,LMe,2,2),o.nI1(1,"async"),o.nI1(2,"isNodeFocused")),2&i){let s;o.vxM((s=o.i5U(2,3,o.bMT(1,1,r.currentFocusedNodePath$),r.codeMapNode))?0:-1,s)}},dependencies:[ns,zn,RMe],styles:["button[_ngcontent-%COMP%]{width:100%;text-align:left;margin:0;justify-content:left;line-height:30px;min-height:30px}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{min-width:15px}button[_ngcontent-%COMP%] .png-icon[_ngcontent-%COMP%]{width:17px;height:17px;margin:5px auto auto;padding:0;display:inline-block;background-repeat:no-repeat no-repeat;pointer-events:none}"]})}}return n})();function VMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.flattenNode())}),o.nrm(1,"img",3),o.EFF(2," FLATTEN "),o.k0s()}}function HMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",4),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.unFlattenNode())}),o.nrm(1,"img",3),o.EFF(2," SHOW "),o.k0s()}}let QMe=(()=>{class n{constructor(e){this.store=e}flattenNode(){this.store.dispatch(c6({item:{path:this.codeMapNode.path,type:"flatten",nodeType:this.codeMapNode.type}}))}unFlattenNode(){this.store.dispatch(SR({item:{path:this.codeMapNode.path,type:"flatten",nodeType:this.codeMapNode.type}}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-flatten-buttons"]],inputs:{codeMapNode:"codeMapNode"},standalone:!0,features:[o.aNF],decls:2,vars:1,consts:[["mat-button","","title","Flatten node and children-nodes, but keep an empty space"],["mat-button","","title","Show node and children-nodes"],["mat-button","","title","Flatten node and children-nodes, but keep an empty space",3,"click"],["alt","flattenIcon","src","codeCharta/assets/flatten.png",1,"png-icon"],["mat-button","","title","Show node and children-nodes",3,"click"]],template:function(i,r){1&i&&o.DNE(0,VMe,3,0,"button",0)(1,HMe,3,0,"button",1),2&i&&o.vxM(null!=r.codeMapNode&&r.codeMapNode.isFlattened?1:0)},dependencies:[ns],styles:["button[_ngcontent-%COMP%]{width:100%;text-align:left;margin:0;justify-content:left;line-height:30px;min-height:30px}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{min-width:15px}button[_ngcontent-%COMP%] .png-icon[_ngcontent-%COMP%]{width:17px;height:17px;margin:5px auto auto;padding:0;display:inline-block;background-repeat:no-repeat no-repeat;pointer-events:none}"]})}}return n})();function zMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.addNodeToConstantHighlight())}),o.nrm(1,"i",3),o.EFF(2," KEEP HIGHLIGHT "),o.k0s()}}function GMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",4),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.removeNodeFromConstantHighlight())}),o.nrm(1,"i",3),o.EFF(2," REMOVE HIGHLIGHT "),o.k0s()}}let jMe=(()=>{class n{constructor(e,i){this.threeSceneService=e,this.idToBuilding=i}ngOnChanges(e){e.codeMapNode&&(this.isHighlighted=this.calculateIsHighlighted())}addNodeToConstantHighlight(){this.threeSceneService.addNodeAndChildrenToConstantHighlight(this.codeMapNode)}removeNodeFromConstantHighlight(){this.threeSceneService.removeNodeAndChildrenFromConstantHighlight(this.codeMapNode)}calculateIsHighlighted(){if(!this.codeMapNode)return!1;const e=this.idToBuilding.get(this.codeMapNode.id);return!!e&&this.threeSceneService.getConstantHighlight().has(e.id)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Dd),o.rXU(PS))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-highlight-buttons"]],inputs:{codeMapNode:"codeMapNode"},standalone:!0,features:[o.OA$,o.aNF],decls:2,vars:1,consts:[["mat-button","","title","Highlight node constantly"],["mat-button","","title","Remove constant highlight"],["mat-button","","title","Highlight node constantly",3,"click"],[1,"fa","fa-cubes"],["mat-button","","title","Remove constant highlight",3,"click"]],template:function(i,r){1&i&&o.DNE(0,zMe,3,0,"button",0)(1,GMe,3,0,"button",1),2&i&&o.vxM(r.isHighlighted?1:0)},dependencies:[ns],styles:["button[_ngcontent-%COMP%]{width:100%;text-align:left;margin:0;justify-content:left;line-height:30px;min-height:30px}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{min-width:15px}button[_ngcontent-%COMP%] .png-icon[_ngcontent-%COMP%]{width:17px;height:17px;margin:5px auto auto;padding:0;display:inline-block;background-repeat:no-repeat no-repeat;pointer-events:none}"]})}}return n})(),$Me=(()=>{class n{constructor(e){this.store=e}excludeNode(){this.store.dispatch(d6({items:[{path:this.codeMapNode.path,type:"exclude",nodeType:this.codeMapNode.type}]}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-exclude-button"]],inputs:{codeMapNode:"codeMapNode"},standalone:!0,features:[o.aNF],decls:3,vars:0,consts:[["mat-button","","id","exclude-button","title","Exclude node and children-nodes and reorder the CodeMap",3,"click"],[1,"fa","fa-ban"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.excludeNode()}),o.nrm(1,"i",1),o.EFF(2," EXCLUDE\n"),o.k0s())},dependencies:[ns],styles:["button[_ngcontent-%COMP%]{width:100%;text-align:left;margin:0;justify-content:left;line-height:30px;min-height:30px}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{min-width:15px}button[_ngcontent-%COMP%] .png-icon[_ngcontent-%COMP%]{width:17px;height:17px;margin:5px auto auto;padding:0;display:inline-block;background-repeat:no-repeat no-repeat;pointer-events:none}"]})}}return n})(),qMe=(()=>{class n{transform(e){return`${0===e.lastIndexOf("/")?"":"..."}${e.slice(e.lastIndexOf("/"))}`}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"lastPartOfNodePath",type:n,pure:!0,standalone:!0})}}return n})();function WMe(n,t){1&n&&(o.j41(0,"div"),o.nrm(1,"cc-mark-folder-row")(2,"mat-divider"),o.k0s())}function XMe(n,t){if(1&n&&(o.j41(0,"mat-card",0),o.DNE(1,WMe,3,0,"div"),o.j41(2,"div",1)(3,"button",2),o.EFF(4),o.nI1(5,"lastPartOfNodePath"),o.k0s(),o.nrm(6,"cc-focus-buttons",3)(7,"cc-flatten-buttons",3)(8,"cc-highlight-buttons",3)(9,"cc-exclude-button",3),o.k0s()()),2&n){const e=t;o.R7$(),o.vxM((null==e||null==e.children?null:e.children.length)>0?1:-1),o.R7$(2),o.FS9("title",e.path),o.R7$(),o.SpI(" ",o.bMT(5,7,e.path)," "),o.R7$(2),o.Y8G("codeMapNode",e),o.R7$(),o.Y8G("codeMapNode",e),o.R7$(),o.Y8G("codeMapNode",e),o.R7$(),o.Y8G("codeMapNode",e)}}let KMe=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.codeMapNode$=this.store.select(IV)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-node-context-menu-card"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[["appearance","outlined","id","codemap-context-menu"],[1,"button-group"],["mat-button","","disabled","true",3,"title"],[3,"codeMapNode"]],template:function(i,r){if(1&i&&(o.DNE(0,XMe,10,9,"mat-card",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.codeMapNode$))?0:-1,s)}},dependencies:[e2,BMe,N7,ns,UMe,QMe,jMe,$Me,zn,qMe],styles:["#codemap-context-menu[_ngcontent-%COMP%]{padding:12px}#codemap-context-menu[_ngcontent-%COMP%] .button-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px;width:100%}"]})}}return n})(),YMe=(()=>{class n{constructor(e,i){this.overlay=e,this.store=i,this.overlayReference=null,this.close=()=>{document.removeEventListener("click",this.onLeftClickHideNodeContextMenu,!0),document.removeEventListener("mousedown",this.onRightClickHideNodeContextMenu,!0),document.getElementById("codeMap").removeEventListener("wheel",this.close,!0),this.store.dispatch(hx(null)),this.overlayReference&&this.resetOverlay()},this.onLeftClickHideNodeContextMenu=r=>{this.isEventFromColorPicker(r)||this.close()},this.onRightClickHideNodeContextMenu=r=>{2===r.button&&this.close()}}open(e,i){this.overlayReference&&this.resetOverlay();const r=this.overlay.position().flexibleConnectedTo({x:e,y:i}).withPositions([{originX:"end",originY:"bottom",overlayX:"start",overlayY:"top"}]);this.overlayReference=this.overlay.create({positionStrategy:r,scrollStrategy:this.overlay.scrollStrategies.close()}),this.overlayReference.attach(new am(KMe)),this.overlayReference.overlayElement.addEventListener("contextmenu",s=>{s.preventDefault()}),document.addEventListener("click",this.onLeftClickHideNodeContextMenu,!1),document.addEventListener("mousedown",this.onRightClickHideNodeContextMenu,!0),document.getElementById("codeMap").addEventListener("wheel",this.close,!0)}resetOverlay(){this.overlayReference.dispose(),this.overlayReference=null}isEventFromColorPicker(e){return e.composedPath().some(r=>"CC-COLOR-PICKER"===r?.nodeName||"COLOR-CHROME"===r?.nodeName)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Ns),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),ZMe=(()=>{class n{constructor(e,i){this.actions$=e,this.nodeContextMenu=i,this.openNodeContextMenu$=vs(()=>this.actions$.pipe(qp(hx),ro(r=>{r.value&&this.nodeContextMenu.open(r.value.xPositionOfRightClickEvent,r.value.yPositionOfRightClickEvent)})),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO($p),o.KVO(YMe))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),JMe=(()=>{class n{constructor(e){this.store=e,this.resetSelectedEdgeMetricWhenItDoesntExistAnymore$=vs(()=>this.store.select(ka).pipe(ul(this.store.select(Xp)),hr(([i,r])=>!i.edgeMetricData.some(s=>s.name===r)),(0,Xn.T)(([i])=>i.edgeMetricData[0]?.name),kr(),(0,Xn.T)(i=>zp({value:i}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const nEe=[[TR,b2,IR,u6,Iq,Fq,s6,a6,o6,l6,c6,ER,SR],[o2,A2,p2,MW,U6,TW,t7,Lp,F3,D3,yR,m2,n6,bR,d2,c2,l2,a2,lx,ax,M2,r0,vR,_R,gR,u2,h2,f2,i6,r6,s2],[sx,MR,zp,Qp,cx,o0,$,wR,_2,xR,CR,Gp,g2,Yh,Hp],[...mt]].flat();let iEe=(()=>{class n{constructor(e,i){var r=this;this.actions$=e,this.state=i,this.saveCcState$=vs(()=>this.actions$.pipe(hr(s=>s.type!==ux.type),qp(...nEe),x_(500),ro(Mn(function*(){const s=r.state.getValue();yield function sue(n){return y6.apply(this,arguments)}(s)}))),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO($p),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),rEe=(()=>{class n{constructor(e,i){this.actions$=e,this.store=i,this.setIsLoadingFile$=vs(()=>this.store.select(uc).pipe((0,Xn.T)(()=>Ic({value:!0})))),this.setIsLoadingMap$=vs(()=>this.actions$.pipe(qp(...FY),(0,Xn.T)(()=>uh({value:!0}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO($p),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),oEe=(()=>{class n{constructor(e){this.store=e,this.resetIsEdgeMetricVisible$=vs(()=>this.store.select(Xp).pipe(ul(this.store.select(wV)),hr(([,i])=>!i),(0,Xn.T)(()=>bR())))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function sEe(n,t){const e=new Map;if(1===n.length)return n[0].settings.fileSettings.edges;for(const i of n)if(i.settings.fileSettings.edges)for(const r of i.settings.fileSettings.edges){const s={fromNodeName:t?BS(i.fileMeta.fileName,r.fromNodeName):r.fromNodeName,toNodeName:t?BS(i.fileMeta.fileName,r.toNodeName):r.toNodeName,attributes:C(r.attributes),visible:r.visible},l=e.get(`${s.fromNodeName}|${s.toNodeName}`);if(void 0!==l)for(const u of Object.keys(s.attributes))l.attributes[u]=s.attributes[u];else e.set(`${s.fromNodeName}|${s.toNodeName}`,s)}return[...e.values()]}function aEe(n,t){if(1===n.length)return n[0].settings.fileSettings.markedPackages;const e=new Map;for(const i of n)if(i.settings.fileSettings.markedPackages)for(const r of i.settings.fileSettings.markedPackages){const s={path:t?_G(i.fileMeta.fileName,r.path):r.path,color:r.color};e.set(`${s.path}|${s.color}`,s)}return[...e.values()]}function lEe(n,t){const e=new Map;if(1===n.length)return n[0].settings.fileSettings.blacklist;for(const i of n)if(i.settings.fileSettings.blacklist)for(const r of i.settings.fileSettings.blacklist){const s={path:t?_G(i.fileMeta.fileName,r.path):r.path,type:r.type};e.set(`${s.path}|${s.type}`,s)}return[...e.values()]}function cEe(n){const t={},e={};for(const i of n){for(const r of Object.keys(i.nodes))t[r]||(t[r]=i.nodes[r]);for(const r of Object.keys(i.edges))e[r]||(e[r]=i.edges[r])}return{nodes:t,edges:e}}function dEe(n){const t={};for(const e of n)for(const i of Object.keys(e))t[i]||(t[i]=e[i]);return t}let uEe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.updateFileSettings$=vs(()=>this.store.select(uc).pipe((0,Xn.T)(()=>{const r=this.state.getValue(),s=function Ere(n){return M3(n).map(t=>t.file)}(r.files),l=pG(r.files),u=uc(r).map(({file:p})=>p.settings.fileSettings.attributeTypes),f=uc(r).map(({file:p})=>p.settings.fileSettings.attributeDescriptors);return hu({value:{fileSettings:{edges:sEe(s,l),markedPackages:aEe(s,l),blacklist:lEe(s,l),attributeTypes:cEe(u),attributeDescriptors:dEe(f)}}})})))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),hEe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.updateMapColors$=vs(()=>this.store.select(Hg).pipe((0,Xn.T)(r=>{const s=this.state.getValue(),l=s.fileSettings.attributeDescriptors,u=s.appSettings.mapColors;if(1===l[r]?.direction){const f=JSON.parse(Vu(u)),p=f.negative;return f.negative=f.positive,f.positive=p,Lp({value:f})}return Lp({value:u??$h})})))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),fEe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.updateVisibleTopLabels$=vs(()=>this.store.select(uc).pipe(NW(),ul(this.store.select(jR)),(0,Xn.T)(([[r,s],l])=>{const f=Vu(r)===Vu(s)?this.state.getValue().appSettings.amountOfTopLabels:M7(l);return r0({value:f})})))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),pEe=(()=>{class n{constructor(e,i){this.actions$=e,this.store=i,this.resetColorRange$=vs(()=>this.actions$.pipe(qp(...mt),ul(this.store.select(uc)),Jg(()=>this.store.select(Qg).pipe(C_(1),Ms(1))),(0,Xn.T)(r=>Qp({value:H7(r)}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO($p),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();!function Ua(n,t){(0,o.TL3)({rootComponent:n,...gA(t)})}($Ce,{providers:[function bMe(n="animations"){return(0,o.ngT)("NgAsyncAnimations"),(0,o.EmA)([{provide:o._9s,useFactory:(t,e,i)=>new mMe(t,e,i,n),deps:[V,La,o.SKi]},{provide:o.bc$,useValue:"noop"===n?"NoopAnimations":"BrowserAnimations"}])}(),function fhe(...n){const t=[D6,dW,lW,{provide:BR,useExisting:lW},{provide:kR,useFactory:()=>(0,o.WQX)(B6,{optional:!0})??(0,o.WQX)(dW)},{provide:x2,useValue:hhe,multi:!0},{provide:R6,useValue:!0},{provide:fW,useClass:uhe}];for(const e of n)t.push(...e.\u0275providers);return(0,o.EmA)(t)}(function phe(){return function uv(n,t){return{\u0275kind:n,\u0275providers:t}}(c0.LegacyInterceptors,[{provide:pW,useFactory:nhe},{provide:x2,useExisting:pW,multi:!0}])}()),function JA(n,t){return(0,o.EmA)([...ZA(n,t),uC])}(Gfe,{metaReducers:[n=>(t,e)=>{const i=function iF(n){return n.type===hu.type}(e)?OW({...t},e.value):t;return n(i,e)}]}),function Oue(...n){const t=n.flat(),e=function gue(n){return n.filter(S6)}(t);return(0,o.EmA)([e,{provide:o.Z63,multi:!0,useValue:()=>{(0,o.WQX)(ud),(0,o.WQX)(_o,{optional:!0});const i=(0,o.WQX)(Xq),r=(0,o.WQX)(Wq),s=!i.isStarted;s&&i.start();for(const l of t){const u=S6(l)?(0,o.WQX)(l):l;r.addEffects(u)}s&&(0,o.WQX)(Yt).dispatch(xue())}}])}([qCe,pX,ZMe,xme,pEe,Rhe,oEe,DY,CMe,fEe,MMe,JMe,uEe,rEe,iEe,Lue,hEe]),{provide:o.hnV,useFactory:n=>()=>n.synchronizeLocalCodeChartaVersion(),deps:[pMe],multi:!0}]})},7172:(nt,Ee,v)=>{"use strict";var j=v(6685),o=v(5841),y=v(8493),Z=v(2420),U=v(8861),L=v(7741),Y=v(8930),V=v(2615),X=v(1677);nt.exports=me,me.prototype.validate=function we(it,kt){var qt;if("string"==typeof it){if(!(qt=this.getSchema(it)))throw new Error('no schema with key or ref "'+it+'"')}else{var cn=this._addSchema(it);qt=cn.validate||this._compile(cn)}var Wt=qt(kt);return!0!==qt.$async&&(this.errors=qt.errors),Wt},me.prototype.compile=function Be(it,kt){var qt=this._addSchema(it,void 0,kt);return qt.validate||this._compile(qt)},me.prototype.addSchema=function Ie(it,kt,qt,cn){if(Array.isArray(it)){for(var Wt=0;Wt{"use strict";var Ee=nt.exports=function(){this._cache={}};Ee.prototype.put=function(j,o){this._cache[j]=o},Ee.prototype.get=function(j){return this._cache[j]},Ee.prototype.del=function(j){delete this._cache[j]},Ee.prototype.clear=function(){this._cache={}}},4442:(nt,Ee,v)=>{"use strict";var j=v(8892).MissingRef;nt.exports=function o(y,Z,U){var L=this;if("function"!=typeof this._opts.loadSchema)throw new Error("options.loadSchema should be a function");"function"==typeof Z&&(U=Z,Z=void 0);var Y=V(y).then(function(){var z=L._addSchema(y,void 0,Z);return z.validate||X(z)});return U&&Y.then(function(z){U(null,z)},U),Y;function V(z){var G=z.$schema;return G&&!L.getSchema(G)?o.call(L,{$ref:G},!0):Promise.resolve()}function X(z){try{return L._compile(z)}catch(Q){if(Q instanceof j)return function G(Q){var ne=Q.missingSchema;if(we(ne))throw new Error("Schema "+ne+" is loaded but "+Q.missingRef+" cannot be resolved");var re=L._loadingSchemas[ne];return re||(re=L._loadingSchemas[ne]=L._opts.loadSchema(ne)).then(me,me),re.then(function(Be){if(!we(ne))return V(Be).then(function(){we(ne)||L.addSchema(Be,ne,void 0,Z)})}).then(function(){return X(z)});function me(){delete L._loadingSchemas[ne]}function we(Be){return L._refs[Be]||L._schemas[Be]}}(Q);throw Q}}}},8892:(nt,Ee,v)=>{"use strict";var j=v(5841);function y(U,L,Y){this.message=Y||y.message(U,L),this.missingRef=j.url(U,L),this.missingSchema=j.normalizeId(j.fullPath(this.missingRef))}function Z(U){return U.prototype=Object.create(Error.prototype),U.prototype.constructor=U,U}nt.exports={Validation:Z(function o(U){this.message="validation failed",this.errors=U,this.ajv=this.validation=!0}),MissingRef:Z(y)},y.message=function(U,L){return"can't resolve reference "+L+" from id "+U}},7741:(nt,Ee,v)=>{"use strict";var j=v(1677),o=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,y=[0,31,28,31,30,31,30,31,31,30,31,30,31],Z=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,U=/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,L=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,V=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,X=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i,z=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,G=/^(?:\/(?:[^~/]|~0|~1)*)*$/,Q=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,ne=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;function re(Ge){return j.copy(re[Ge="full"==Ge?"full":"fast"])}function we(Ge){var st=Ge.match(o);if(!st)return!1;var ve=+st[2],fe=+st[3];return ve>=1&&ve<=12&&fe>=1&&fe<=(2==ve&&function me(Ge){return Ge%4==0&&(Ge%100!=0||Ge%400==0)}(+st[1])?29:y[ve])}function Be(Ge,st){var We=Ge.match(Z);if(!We)return!1;var ve=We[1],fe=We[2],Qe=We[3];return(ve<=23&&fe<=59&&Qe<=59||23==ve&&59==fe&&60==Qe)&&(!st||We[5])}nt.exports=re,re.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,"uri-template":V,url:X,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:U,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:$e,uuid:z,"json-pointer":G,"json-pointer-uri-fragment":Q,"relative-json-pointer":ne},re.full={date:we,time:Be,"date-time":function Ne(Ge){var st=Ge.split(Ie);return 2==st.length&&we(st[0])&&Be(st[1],!0)},uri:function He(Ge){return Je.test(Ge)&&L.test(Ge)},"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":V,url:X,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:U,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:$e,uuid:z,"json-pointer":G,"json-pointer-uri-fragment":Q,"relative-json-pointer":ne};var Ie=/t|\s/i,Je=/\/|:/,qe=/[^\\]\\Z/;function $e(Ge){if(qe.test(Ge))return!1;try{return new RegExp(Ge),!0}catch{return!1}}},6685:(nt,Ee,v)=>{"use strict";var j=v(5841),o=v(1677),y=v(8892),Z=v(8861),U=v(604),L=o.ucs2length,Y=v(362),V=y.Validation;function z(Ie,Ne,Je){var He=Q.call(this,Ie,Ne,Je);return He>=0?{index:He,compiling:!0}:(this._compilations[He=this._compilations.length]={schema:Ie,root:Ne,baseId:Je},{index:He,compiling:!1})}function G(Ie,Ne,Je){var He=Q.call(this,Ie,Ne,Je);He>=0&&this._compilations.splice(He,1)}function Q(Ie,Ne,Je){for(var He=0;He{"use strict";var j=v(5568),o=v(362),y=v(1677),Z=v(2420),U=v(4331);function L(He,qe,$e){var Ge=this._refs[$e];if("string"==typeof Ge){if(!this._refs[Ge])return L.call(this,He,qe,Ge);Ge=this._refs[Ge]}if((Ge=Ge||this._schemas[$e])instanceof Z)return Q(Ge.schema,this._opts.inlineRefs)?Ge.schema:Ge.validate||this._compile(Ge);var We,ve,fe,st=Y.call(this,qe,$e);return st&&(We=st.schema,qe=st.root,fe=st.baseId),We instanceof Z?ve=We.validate||He.call(this,We.schema,qe,void 0,fe):void 0!==We&&(ve=Q(We,this._opts.inlineRefs)?We:He.call(this,We,qe,void 0,fe)),ve}function Y(He,qe){var $e=j.parse(qe),Ge=we($e),st=me(this._getId(He.schema));if(0===Object.keys(He.schema).length||Ge!==st){var We=Ie(Ge),ve=this._refs[We];if("string"==typeof ve)return V.call(this,He,ve,$e);if(ve instanceof Z)ve.validate||this._compile(ve),He=ve;else{if(!((ve=this._schemas[We])instanceof Z))return;if(ve.validate||this._compile(ve),We==Ie(qe))return{schema:ve,root:He,baseId:st};He=ve}if(!He.schema)return;st=me(this._getId(He.schema))}return z.call(this,$e,st,He.schema,He)}function V(He,qe,$e){var Ge=Y.call(this,He,qe);if(Ge){var st=Ge.schema,We=Ge.baseId;He=Ge.root;var ve=this._getId(st);return ve&&(We=Ne(We,ve)),z.call(this,$e,We,st,He)}}nt.exports=L,L.normalizeId=Ie,L.fullPath=me,L.url=Ne,L.ids=function Je(He){var qe=Ie(this._getId(He)),$e={"":qe},Ge={"":me(qe,!1)},st={},We=this;return U(He,{allKeys:!0},function(ve,fe,Qe,Te,Le,pt,wt){if(""!==fe){var Nt=We._getId(ve),Rt=$e[Te],fn=Ge[Te]+"/"+Le;if(void 0!==wt&&(fn+="/"+("number"==typeof wt?wt:y.escapeFragment(wt))),"string"==typeof Nt){Nt=Rt=Ie(Rt?j.resolve(Rt,Nt):Nt);var $n=We._refs[Nt];if("string"==typeof $n&&($n=We._refs[$n]),$n&&$n.schema){if(!o(ve,$n.schema))throw new Error('id "'+Nt+'" resolves to more than one schema')}else if(Nt!=Ie(fn))if("#"==Nt[0]){if(st[Nt]&&!o(ve,st[Nt]))throw new Error('id "'+Nt+'" resolves to more than one schema');st[Nt]=ve}else We._refs[Nt]=fn}$e[fe]=Rt,Ge[fe]=fn}}),st},L.inlineRef=Q,L.schema=Y;var X=y.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function z(He,qe,$e,Ge){if(He.fragment=He.fragment||"","/"==He.fragment.slice(0,1)){for(var st=He.fragment.split("/"),We=1;We{"use strict";var j=v(2956),o=v(1677).toHash;nt.exports=function(){var Z=[{type:"number",rules:[{maximum:["exclusiveMaximum"]},{minimum:["exclusiveMinimum"]},"multipleOf","format"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","items","contains","uniqueItems"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","propertyNames",{properties:["additionalProperties","patternProperties"]}]},{rules:["$ref","const","enum","not","anyOf","oneOf","allOf","if"]}],U=["type","$comment"];return Z.all=o(U),Z.types=o(["number","integer","string","array","object","boolean","null"]),Z.forEach(function(V){V.rules=V.rules.map(function(X){var z;if("object"==typeof X){var G=Object.keys(X)[0];z=X[G],X=G,z.forEach(function(ne){U.push(ne),Z.all[ne]=!0})}return U.push(X),Z.all[X]={keyword:X,code:j[X],implements:z}}),Z.all.$comment={keyword:"$comment",code:j.$comment},V.type&&(Z.types[V.type]=V)}),Z.keywords=o(U.concat(["$schema","$id","id","$data","$async","title","description","default","definitions","examples","readOnly","writeOnly","contentMediaType","contentEncoding","additionalItems","then","else"])),Z.custom={},Z}},2420:(nt,Ee,v)=>{"use strict";var j=v(1677);nt.exports=function o(y){j.copy(y,this)}},1132:nt=>{"use strict";nt.exports=function(v){for(var Z,j=0,o=v.length,y=0;y=55296&&Z<=56319&&y{"use strict";function o(ve,fe,Qe,Te){var Le=Te?" !== ":" === ",pt=Te?" || ":" && ",wt=Te?"!":"",Nt=Te?"":"!";switch(ve){case"null":return fe+Le+"null";case"array":return wt+"Array.isArray("+fe+")";case"object":return"("+wt+fe+pt+"typeof "+fe+Le+'"object"'+pt+Nt+"Array.isArray("+fe+"))";case"integer":return"(typeof "+fe+Le+'"number"'+pt+Nt+"("+fe+" % 1)"+pt+fe+Le+fe+(Qe?pt+wt+"isFinite("+fe+")":"")+")";case"number":return"(typeof "+fe+Le+'"'+ve+'"'+(Qe?pt+wt+"isFinite("+fe+")":"")+")";default:return"typeof "+fe+Le+'"'+ve+'"'}}nt.exports={copy:function j(ve,fe){for(var Qe in fe=fe||{},ve)fe[Qe]=ve[Qe];return fe},checkDataType:o,checkDataTypes:function y(ve,fe,Qe){if(1===ve.length)return o(ve[0],fe,Qe,!0);var Te="",Le=L(ve);for(var pt in Le.array&&Le.object&&(Te=Le.null?"(":"(!"+fe+" || ",Te+="typeof "+fe+' !== "object")',delete Le.null,delete Le.array,delete Le.object),Le.number&&delete Le.integer,Le)Te+=(Te?" && ":"")+o(pt,fe,Qe,!0);return Te},coerceToTypes:function U(ve,fe){if(Array.isArray(fe)){for(var Qe=[],Te=0;Te=fe)throw new Error("Cannot access property/index "+Te+" levels up, current level is "+fe);return Qe[fe-Te]}if(Te>fe)throw new Error("Cannot access data "+Te+" levels up, current level is "+fe);if(pt="data"+(fe-Te||""),!Le)return pt}for(var Nt=pt,Rt=Le.split("/"),fn=0;fn{"use strict";var Ee=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","additionalItems","maxItems","minItems","uniqueItems","maxProperties","minProperties","required","additionalProperties","enum","format","const"];nt.exports=function(v,j){for(var o=0;o{"use strict";var j=v(8198);nt.exports={$id:"https://github.com/ajv-validator/ajv/blob/master/lib/definition_schema.js",definitions:{simpleTypes:j.definitions.simpleTypes},type:"object",dependencies:{schema:["validate"],$data:["validate"],statements:["inline"],valid:{not:{required:["macro"]}}},properties:{type:j.properties.type,schema:{type:"boolean"},statements:{type:"boolean"},dependencies:{type:"array",items:{type:"string"}},metaSchema:{type:"object"},modifying:{type:"boolean"},valid:{type:"boolean"},$data:{type:"boolean"},async:{type:"boolean"},errors:{anyOf:[{type:"boolean"},{const:"full"}]}}}},9402:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L;var ne="maximum"==j,re=ne?"exclusiveMaximum":"exclusiveMinimum",me=v.schema[re],we=v.opts.$data&&me&&me.$data,Be=ne?"<":">",Ie=ne?">":"<",Ne=void 0;if(!G&&"number"!=typeof L&&void 0!==L)throw new Error(j+" must be number");if(!we&&void 0!==me&&"number"!=typeof me&&"boolean"!=typeof me)throw new Error(re+" must be number or boolean");if(we){var We,Je=v.util.getData(me.$data,U,v.dataPathArr),He="exclusive"+Z,qe="exclType"+Z,$e="exclIsNumber"+Z,st="' + "+(Ge="op"+Z)+" + '";y+=" var schemaExcl"+Z+" = "+Je+"; ",Ne=re,(We=We||[]).push(y+=" var "+He+"; var "+qe+" = typeof "+(Je="schemaExcl"+Z)+"; if ("+qe+" != 'boolean' && "+qe+" != 'undefined' && "+qe+" != 'number') { "),y="",!1!==v.createErrors?(y+=" { keyword: '"+(Ne||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: '"+re+" should be boolean' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var ve=y;y=We.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+ve+"]); ":" validate.errors = ["+ve+"]; return false; ":" var err = "+ve+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } else if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || "),y+=" "+qe+" == 'number' ? ( ("+He+" = "+Q+" === undefined || "+Je+" "+Be+"= "+Q+") ? "+z+" "+Ie+"= "+Je+" : "+z+" "+Ie+" "+Q+" ) : ( ("+He+" = "+Je+" === true) ? "+z+" "+Ie+"= "+Q+" : "+z+" "+Ie+" "+Q+" ) || "+z+" !== "+z+") { var op"+Z+" = "+He+" ? '"+Be+"' : '"+Be+"='; ",void 0===L&&(Ne=re,V=v.errSchemaPath+"/"+re,Q=Je,G=we)}else if(st=Be,($e="number"==typeof me)&&G){var Ge="'"+st+"'";y+=" if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || "),y+=" ( "+Q+" === undefined || "+me+" "+Be+"= "+Q+" ? "+z+" "+Ie+"= "+me+" : "+z+" "+Ie+" "+Q+" ) || "+z+" !== "+z+") { "}else $e&&void 0===L?(He=!0,Ne=re,V=v.errSchemaPath+"/"+re,Q=me,Ie+="="):($e&&(Q=Math[ne?"min":"max"](me,L)),me===(!$e||Q)?(He=!0,Ne=re,V=v.errSchemaPath+"/"+re,Ie+="="):(He=!1,st+="=")),Ge="'"+st+"'",y+=" if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || "),y+=" "+z+" "+Ie+" "+Q+" || "+z+" !== "+z+") { ";return Ne=Ne||j,(We=We||[]).push(y),y="",!1!==v.createErrors?(y+=" { keyword: '"+(Ne||"_limit")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { comparison: "+Ge+", limit: "+Q+", exclusive: "+He+" } ",!1!==v.opts.messages&&(y+=" , message: 'should be "+st+" ",y+=G?"' + "+Q:Q+"'"),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",ve=y,y=We.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+ve+"]); ":" validate.errors = ["+ve+"]; return false; ":" var err = "+ve+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } ",X&&(y+=" else { "),y}},3792:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;if(G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L,!G&&"number"!=typeof L)throw new Error(j+" must be number");y+="if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || ");var re=j,me=me||[];me.push(y+=" "+z+".length "+("maxItems"==j?">":"<")+" "+Q+") { "),y="",!1!==v.createErrors?(y+=" { keyword: '"+(re||"_limitItems")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { limit: "+Q+" } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT have ",y+="maxItems"==j?"more":"fewer",y+=" than ",y+=G?"' + "+Q+" + '":""+L,y+=" items' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var we=y;return y=me.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},3226:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;if(G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L,!G&&"number"!=typeof L)throw new Error(j+" must be number");y+="if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || "),y+=!1===v.opts.unicode?" "+z+".length ":" ucs2length("+z+") ";var re=j,me=me||[];me.push(y+=" "+("maxLength"==j?">":"<")+" "+Q+") { "),y="",!1!==v.createErrors?(y+=" { keyword: '"+(re||"_limitLength")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { limit: "+Q+" } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT be ",y+="maxLength"==j?"longer":"shorter",y+=" than ",y+=G?"' + "+Q+" + '":""+L,y+=" characters' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var we=y;return y=me.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},2119:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;if(G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L,!G&&"number"!=typeof L)throw new Error(j+" must be number");y+="if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || ");var re=j,me=me||[];me.push(y+=" Object.keys("+z+").length "+("maxProperties"==j?">":"<")+" "+Q+") { "),y="",!1!==v.createErrors?(y+=" { keyword: '"+(re||"_limitProperties")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { limit: "+Q+" } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT have ",y+="maxProperties"==j?"more":"fewer",y+=" than ",y+=G?"' + "+Q+" + '":""+L,y+=" properties' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var we=y;return y=me.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},9218:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.schema[j],U=v.schemaPath+v.util.getProperty(j),L=v.errSchemaPath+"/"+j,Y=!v.opts.allErrors,V=v.util.copy(v),X="";V.level++;var z="valid"+V.level,G=V.baseId,Q=!0,ne=Z;if(ne)for(var re,me=-1,we=ne.length-1;me0||!1===re:v.util.schemaHasRules(re,v.RULES.all))&&(Q=!1,V.schema=re,V.schemaPath=U+"["+me+"]",V.errSchemaPath=L+"/"+me,y+=" "+v.validate(V)+" ",V.baseId=G,Y&&(y+=" if ("+z+") { ",X+="}"));return Y&&(y+=Q?" if (true) { ":" "+X.slice(0,-1)+" "),y}},3883:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v),re="";ne.level++;var me="valid"+ne.level;if(L.every(function($e){return v.opts.strictKeywords?"object"==typeof $e&&Object.keys($e).length>0||!1===$e:v.util.schemaHasRules($e,v.RULES.all)})){var Be=ne.baseId;y+=" var "+Q+" = errors; var "+G+" = false; ";var Ie=v.compositeRule;v.compositeRule=ne.compositeRule=!0;var Ne=L;if(Ne)for(var Je,He=-1,qe=Ne.length-1;He{"use strict";nt.exports=function(v,j,o){var y=" ",U=v.errSchemaPath+"/"+j,Y=v.util.toQuotedString(v.schema[j]);return!0===v.opts.$comment?y+=" console.log("+Y+");":"function"==typeof v.opts.$comment&&(y+=" self._opts.$comment("+Y+", "+v.util.toQuotedString(U)+", validate.root.schema);"),y}},439:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q=v.opts.$data&&L&&L.$data;Q&&(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; "),Q||(y+=" var schema"+Z+" = validate.schema"+Y+";");var re=re||[];re.push(y+="var "+G+" = equal("+z+", schema"+Z+"); if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'const' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { allowedValue: schema"+Z+" } ",!1!==v.opts.messages&&(y+=" , message: 'should be equal to constant' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var me=y;return y=re.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+me+"]); ":" validate.errors = ["+me+"]; return false; ":" var err = "+me+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" }",X&&(y+=" else { "),y}},7939:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v);ne.level++;var me="valid"+ne.level,we="i"+Z,Be=ne.dataLevel=v.dataLevel+1,Ie="data"+Be,Ne=v.baseId,Je=v.opts.strictKeywords?"object"==typeof L&&Object.keys(L).length>0||!1===L:v.util.schemaHasRules(L,v.RULES.all);if(y+="var "+Q+" = errors;var "+G+";",Je){var He=v.compositeRule;v.compositeRule=ne.compositeRule=!0,ne.schema=L,ne.schemaPath=Y,ne.errSchemaPath=V,y+=" var "+me+" = false; for (var "+we+" = 0; "+we+" < "+z+".length; "+we+"++) { ",ne.errorPath=v.util.getPathExpr(v.errorPath,we,v.opts.jsonPointers,!0);var qe=z+"["+we+"]";ne.dataPathArr[Be]=we;var $e=v.validate(ne);ne.baseId=Ne,v.util.varOccurences($e,Ie)<2?y+=" "+v.util.varReplace($e,Ie,qe)+" ":y+=" var "+Ie+" = "+qe+"; "+$e+" ",y+=" if ("+me+") break; } ",v.compositeRule=ne.compositeRule=He,y+=" if (!"+me+") {"}else y+=" if ("+z+".length == 0) {";var Ge=Ge||[];Ge.push(y),y="",!1!==v.createErrors?(y+=" { keyword: 'contains' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: 'should contain a valid item' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var st=y;return y=Ge.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+st+"]); ":" validate.errors = ["+st+"]; return false; ":" var err = "+st+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } else { ",Je&&(y+=" errors = "+Q+"; if (vErrors !== null) { if ("+Q+") vErrors.length = "+Q+"; else vErrors = null; } "),v.opts.allErrors&&(y+=" } "),y}},5237:nt=>{"use strict";nt.exports=function(v,j,o){var z,me,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,G="data"+(U||""),Q="valid"+Z,ne="errs__"+Z,re=v.opts.$data&&L&&L.$data;re?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",me="schema"+Z):me=L;var Je,He,qe,$e,Ge,we=this,Be="definition"+Z,Ie=we.definition,Ne="";if(re&&Ie.$data){var st=Ie.validateSchema;y+=" var "+Be+" = RULES.custom['"+j+"'].definition; var "+(Ge="keywordValidate"+Z)+" = "+Be+".validate;"}else{if(!($e=v.useCustomRule(we,L,v.schema,v)))return;me="validate.schema"+Y,Ge=$e.code,Je=Ie.compile,He=Ie.inline,qe=Ie.macro}var We=Ge+".errors",ve="i"+Z,fe="ruleErr"+Z,Qe=Ie.async;if(Qe&&!v.async)throw new Error("async keyword in sync schema");if(He||qe||(y+=We+" = null;"),y+="var "+ne+" = errors;var "+Q+";",re&&Ie.$data&&(Ne+="}",y+=" if ("+me+" === undefined) { "+Q+" = true; } else { ",st&&(Ne+="}",y+=" "+Q+" = "+Be+".validateSchema("+me+"); if ("+Q+") { ")),He)y+=Ie.statements?" "+$e.validate+" ":" "+Q+" = "+$e.validate+"; ";else if(qe){var Te=v.util.copy(v);Ne="",Te.level++;var Le="valid"+Te.level;Te.schema=$e.validate,Te.schemaPath="";var pt=v.compositeRule;v.compositeRule=Te.compositeRule=!0;var wt=v.validate(Te).replace(/validate\.schema/g,Ge);v.compositeRule=Te.compositeRule=pt,y+=" "+wt}else{(Nt=Nt||[]).push(y),y="",y+=" "+Ge+".call( ",y+=v.opts.passContext?"this":"self",y+=Je||!1===Ie.schema?" , "+G+" ":" , "+me+" , "+G+" , validate.schema"+v.schemaPath+" ",y+=" , (dataPath || '')",'""'!=v.errorPath&&(y+=" + "+v.errorPath);var Rt=U?"data"+(U-1||""):"parentData",fn=U?v.dataPathArr[U]:"parentDataProperty",$n=y+=" , "+Rt+" , "+fn+" , rootData ) ";y=Nt.pop(),!1===Ie.errors?(y+=" "+Q+" = ",Qe&&(y+="await "),y+=$n+"; "):y+=Qe?" var "+(We="customErrors"+Z)+" = null; try { "+Q+" = await "+$n+"; } catch (e) { "+Q+" = false; if (e instanceof ValidationError) "+We+" = e.errors; else throw e; } ":" "+We+" = null; "+Q+" = "+$n+"; "}if(Ie.modifying&&(y+=" if ("+Rt+") "+G+" = "+Rt+"["+fn+"];"),y+=""+Ne,Ie.valid)X&&(y+=" if (true) { ");else{var Nt;y+=" if ( ",void 0===Ie.valid?(y+=" !",y+=qe?""+Le:""+Q):y+=" "+!Ie.valid+" ",z=we.keyword,(Nt=Nt||[]).push(y+=") { "),(Nt=Nt||[]).push(y=""),y="",!1!==v.createErrors?(y+=" { keyword: '"+(z||"custom")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { keyword: '"+we.keyword+"' } ",!1!==v.opts.messages&&(y+=" , message: 'should pass \""+we.keyword+"\" keyword validation' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+G+" "),y+=" } "):y+=" {} ";var Qi=y;y=Nt.pop();var ui=y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+Qi+"]); ":" validate.errors = ["+Qi+"]; return false; ":" var err = "+Qi+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";y=Nt.pop(),He?Ie.errors?"full"!=Ie.errors&&(y+=" for (var "+ve+"="+ne+"; "+ve+"{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="errs__"+Z,Q=v.util.copy(v),ne="";Q.level++;var re="valid"+Q.level,me={},we={},Be=v.opts.ownProperties;for(He in L)if("__proto__"!=He){var Ie=L[He],Ne=Array.isArray(Ie)?we:me;Ne[He]=Ie}y+="var "+G+" = errors;";var Je=v.errorPath;for(var He in y+="var missing"+Z+";",we)if((Ne=we[He]).length){if(y+=" if ( "+z+v.util.getProperty(He)+" !== undefined ",Be&&(y+=" && Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(He)+"') "),X){y+=" && ( ";var qe=Ne;if(qe)for(var Ge=-1,st=qe.length-1;Ge0||!1===Ie:v.util.schemaHasRules(Ie,v.RULES.all))&&(y+=" "+re+" = true; if ( "+z+v.util.getProperty(He)+" !== undefined ",Be&&(y+=" && Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(He)+"') "),y+=") { ",Q.schema=Ie,Q.schemaPath=Y+v.util.getProperty(He),Q.errSchemaPath=V+"/"+v.util.escapeFragment(He),y+=" "+v.validate(Q)+" ",Q.baseId=Rt,y+=" } ",X&&(y+=" if ("+re+") { ",ne+="}"));return X&&(y+=" "+ne+" if ("+G+" == errors) {"),y}},4299:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q=v.opts.$data&&L&&L.$data;Q&&(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ");var re="i"+Z,me="schema"+Z;Q||(y+=" var "+me+" = validate.schema"+Y+";"),y+="var "+G+";",Q&&(y+=" if (schema"+Z+" === undefined) "+G+" = true; else if (!Array.isArray(schema"+Z+")) "+G+" = false; else {"),y+=G+" = false;for (var "+re+"=0; "+re+"<"+me+".length; "+re+"++) if (equal("+z+", "+me+"["+re+"])) { "+G+" = true; break; }",Q&&(y+=" } ");var we=we||[];we.push(y+=" if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { allowedValues: schema"+Z+" } ",!1!==v.opts.messages&&(y+=" , message: 'should be equal to one of the allowed values' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var Be=y;return y=we.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+Be+"]); ":" validate.errors = ["+Be+"]; return false; ":" var err = "+Be+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" }",X&&(y+=" else { "),y}},4097:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||"");if(!1===v.opts.format)return X&&(y+=" if (true) { "),y;var Q,G=v.opts.$data&&L&&L.$data;G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L;var ne=v.opts.unknownFormats,re=Array.isArray(ne);if(G)y+=" var "+(me="format"+Z)+" = formats["+Q+"]; var "+(we="isObject"+Z)+" = typeof "+me+" == 'object' && !("+me+" instanceof RegExp) && "+me+".validate; var "+(Be="formatType"+Z)+" = "+we+" && "+me+".type || 'string'; if ("+we+") { ",v.async&&(y+=" var async"+Z+" = "+me+".async; "),y+=" "+me+" = "+me+".validate; } if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'string') || "),y+=" (","ignore"!=ne&&(y+=" ("+Q+" && !"+me+" ",re&&(y+=" && self._opts.unknownFormats.indexOf("+Q+") == -1 "),y+=") || "),y+=" ("+me+" && "+Be+" == '"+o+"' && !(typeof "+me+" == 'function' ? ",y+=v.async?" (async"+Z+" ? await "+me+"("+z+") : "+me+"("+z+")) ":" "+me+"("+z+") ",y+=" : "+me+".test("+z+"))))) {";else{var me;if(!(me=v.formats[L])){if("ignore"==ne)return v.logger.warn('unknown format "'+L+'" ignored in schema at path "'+v.errSchemaPath+'"'),X&&(y+=" if (true) { "),y;if(re&&ne.indexOf(L)>=0)return X&&(y+=" if (true) { "),y;throw new Error('unknown format "'+L+'" is used in schema at path "'+v.errSchemaPath+'"')}var we,Be=(we="object"==typeof me&&!(me instanceof RegExp)&&me.validate)&&me.type||"string";if(we){var Ie=!0===me.async;me=me.validate}if(Be!=o)return X&&(y+=" if (true) { "),y;if(Ie){if(!v.async)throw new Error("async format in sync schema");y+=" if (!(await "+(Ne="formats"+v.util.getProperty(L)+".validate")+"("+z+"))) { "}else{y+=" if (! ";var Ne="formats"+v.util.getProperty(L);we&&(Ne+=".validate"),y+="function"==typeof me?" "+Ne+"("+z+") ":" "+Ne+".test("+z+") ",y+=") { "}}var Je=Je||[];Je.push(y),y="",!1!==v.createErrors?(y+=" { keyword: 'format' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { format: ",y+=G?""+Q:""+v.util.toQuotedString(L),y+=" } ",!1!==v.opts.messages&&(y+=" , message: 'should match format \"",y+=G?"' + "+Q+" + '":""+v.util.escapeQuotes(L),y+="\"' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+v.util.toQuotedString(L),y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var He=y;return y=Je.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+He+"]); ":" validate.errors = ["+He+"]; return false; ":" var err = "+He+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } ",X&&(y+=" else { "),y}},2061:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v);ne.level++;var re="valid"+ne.level,me=v.schema.then,we=v.schema.else,Be=void 0!==me&&(v.opts.strictKeywords?"object"==typeof me&&Object.keys(me).length>0||!1===me:v.util.schemaHasRules(me,v.RULES.all)),Ie=void 0!==we&&(v.opts.strictKeywords?"object"==typeof we&&Object.keys(we).length>0||!1===we:v.util.schemaHasRules(we,v.RULES.all)),Ne=ne.baseId;if(Be||Ie){var Je;ne.createErrors=!1,ne.schema=L,ne.schemaPath=Y,ne.errSchemaPath=V,y+=" var "+Q+" = errors; var "+G+" = true; ";var He=v.compositeRule;v.compositeRule=ne.compositeRule=!0,y+=" "+v.validate(ne)+" ",ne.baseId=Ne,ne.createErrors=!0,y+=" errors = "+Q+"; if (vErrors !== null) { if ("+Q+") vErrors.length = "+Q+"; else vErrors = null; } ",v.compositeRule=ne.compositeRule=He,Be?(y+=" if ("+re+") { ",ne.schema=v.schema.then,ne.schemaPath=v.schemaPath+".then",ne.errSchemaPath=v.errSchemaPath+"/then",y+=" "+v.validate(ne)+" ",ne.baseId=Ne,y+=" "+G+" = "+re+"; ",Be&&Ie?y+=" var "+(Je="ifClause"+Z)+" = 'then'; ":Je="'then'",y+=" } ",Ie&&(y+=" else { ")):y+=" if (!"+re+") { ",Ie&&(ne.schema=v.schema.else,ne.schemaPath=v.schemaPath+".else",ne.errSchemaPath=v.errSchemaPath+"/else",y+=" "+v.validate(ne)+" ",ne.baseId=Ne,y+=" "+G+" = "+re+"; ",Be&&Ie?y+=" var "+(Je="ifClause"+Z)+" = 'else'; ":Je="'else'",y+=" } "),y+=" if (!"+G+") { var err = ",!1!==v.createErrors?(y+=" { keyword: 'if' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { failingKeyword: "+Je+" } ",!1!==v.opts.messages&&(y+=" , message: 'should match \"' + "+Je+" + '\" schema' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",y+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!v.compositeRule&&X&&(y+=v.async?" throw new ValidationError(vErrors); ":" validate.errors = vErrors; return false; "),y+=" } ",X&&(y+=" else { ")}else X&&(y+=" if (true) { ");return y}},2956:(nt,Ee,v)=>{"use strict";nt.exports={$ref:v(3953),allOf:v(9218),anyOf:v(3883),$comment:v(757),const:v(439),contains:v(7939),dependencies:v(3899),enum:v(4299),format:v(4097),if:v(2061),items:v(9240),maximum:v(9402),minimum:v(9402),maxItems:v(3792),minItems:v(3792),maxLength:v(3226),minLength:v(3226),maxProperties:v(2119),minProperties:v(2119),multipleOf:v(9095),not:v(8457),oneOf:v(7681),pattern:v(9438),properties:v(6319),propertyNames:v(6611),required:v(5051),uniqueItems:v(5329),validate:v(604)}},9240:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v),re="";ne.level++;var me="valid"+ne.level,we="i"+Z,Be=ne.dataLevel=v.dataLevel+1,Ie="data"+Be,Ne=v.baseId;if(y+="var "+Q+" = errors;var "+G+";",Array.isArray(L)){var Je=v.schema.additionalItems;if(!1===Je){y+=" "+G+" = "+z+".length <= "+L.length+"; ";var He=V;V=v.errSchemaPath+"/additionalItems";var qe=qe||[];qe.push(y+=" if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { limit: "+L.length+" } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT have more than "+L.length+" items' "),v.opts.verbose&&(y+=" , schema: false , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var $e=y;y=qe.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+$e+"]); ":" validate.errors = ["+$e+"]; return false; ":" var err = "+$e+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } ",V=He,X&&(re+="}",y+=" else { ")}var Ge=L;if(Ge)for(var st,We=-1,ve=Ge.length-1;We0||!1===st:v.util.schemaHasRules(st,v.RULES.all)){y+=" "+me+" = true; if ("+z+".length > "+We+") { ";var fe=z+"["+We+"]";ne.schema=st,ne.schemaPath=Y+"["+We+"]",ne.errSchemaPath=V+"/"+We,ne.errorPath=v.util.getPathExpr(v.errorPath,We,v.opts.jsonPointers,!0),ne.dataPathArr[Be]=We;var Qe=v.validate(ne);ne.baseId=Ne,v.util.varOccurences(Qe,Ie)<2?y+=" "+v.util.varReplace(Qe,Ie,fe)+" ":y+=" var "+Ie+" = "+fe+"; "+Qe+" ",y+=" } ",X&&(y+=" if ("+me+") { ",re+="}")}"object"==typeof Je&&(v.opts.strictKeywords?"object"==typeof Je&&Object.keys(Je).length>0||!1===Je:v.util.schemaHasRules(Je,v.RULES.all))&&(ne.schema=Je,ne.schemaPath=v.schemaPath+".additionalItems",ne.errSchemaPath=v.errSchemaPath+"/additionalItems",y+=" "+me+" = true; if ("+z+".length > "+L.length+") { for (var "+we+" = "+L.length+"; "+we+" < "+z+".length; "+we+"++) { ",ne.errorPath=v.util.getPathExpr(v.errorPath,we,v.opts.jsonPointers,!0),fe=z+"["+we+"]",ne.dataPathArr[Be]=we,Qe=v.validate(ne),ne.baseId=Ne,v.util.varOccurences(Qe,Ie)<2?y+=" "+v.util.varReplace(Qe,Ie,fe)+" ":y+=" var "+Ie+" = "+fe+"; "+Qe+" ",X&&(y+=" if (!"+me+") break; "),y+=" } } ",X&&(y+=" if ("+me+") { ",re+="}"))}else(v.opts.strictKeywords?"object"==typeof L&&Object.keys(L).length>0||!1===L:v.util.schemaHasRules(L,v.RULES.all))&&(ne.schema=L,ne.schemaPath=Y,ne.errSchemaPath=V,y+=" for (var "+we+" = 0; "+we+" < "+z+".length; "+we+"++) { ",ne.errorPath=v.util.getPathExpr(v.errorPath,we,v.opts.jsonPointers,!0),fe=z+"["+we+"]",ne.dataPathArr[Be]=we,Qe=v.validate(ne),ne.baseId=Ne,v.util.varOccurences(Qe,Ie)<2?y+=" "+v.util.varReplace(Qe,Ie,fe)+" ":y+=" var "+Ie+" = "+fe+"; "+Qe+" ",X&&(y+=" if (!"+me+") break; "),y+=" }");return X&&(y+=" "+re+" if ("+Q+" == errors) {"),y}},9095:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;if(G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L,!G&&"number"!=typeof L)throw new Error(j+" must be number");y+="var division"+Z+";if (",G&&(y+=" "+Q+" !== undefined && ( typeof "+Q+" != 'number' || "),y+=" (division"+Z+" = "+z+" / "+Q+", ",y+=v.opts.multipleOfPrecision?" Math.abs(Math.round(division"+Z+") - division"+Z+") > 1e-"+v.opts.multipleOfPrecision+" ":" division"+Z+" !== parseInt(division"+Z+") ",y+=" ) ",G&&(y+=" ) ");var ne=ne||[];ne.push(y+=" ) { "),y="",!1!==v.createErrors?(y+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { multipleOf: "+Q+" } ",!1!==v.opts.messages&&(y+=" , message: 'should be multiple of ",y+=G?"' + "+Q:Q+"'"),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var re=y;return y=ne.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+re+"]); ":" validate.errors = ["+re+"]; return false; ":" var err = "+re+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},8457:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="errs__"+Z,Q=v.util.copy(v);Q.level++;var ne="valid"+Q.level;if(v.opts.strictKeywords?"object"==typeof L&&Object.keys(L).length>0||!1===L:v.util.schemaHasRules(L,v.RULES.all)){Q.schema=L,Q.schemaPath=Y,Q.errSchemaPath=V,y+=" var "+G+" = errors; ";var me,re=v.compositeRule;v.compositeRule=Q.compositeRule=!0,Q.createErrors=!1,Q.opts.allErrors&&(me=Q.opts.allErrors,Q.opts.allErrors=!1),y+=" "+v.validate(Q)+" ",Q.createErrors=!0,me&&(Q.opts.allErrors=me),v.compositeRule=Q.compositeRule=re;var we=we||[];we.push(y+=" if ("+ne+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'not' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: 'should NOT be valid' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var Be=y;y=we.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+Be+"]); ":" validate.errors = ["+Be+"]; return false; ":" var err = "+Be+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } else { errors = "+G+"; if (vErrors !== null) { if ("+G+") vErrors.length = "+G+"; else vErrors = null; } ",v.opts.allErrors&&(y+=" } ")}else y+=" var err = ",!1!==v.createErrors?(y+=" { keyword: 'not' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: 'should NOT be valid' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",y+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",X&&(y+=" if (false) { ");return y}},7681:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v),re="";ne.level++;var me="valid"+ne.level,we=ne.baseId,Be="prevValid"+Z,Ie="passingSchemas"+Z;y+="var "+Q+" = errors , "+Be+" = false , "+G+" = false , "+Ie+" = null; ";var Ne=v.compositeRule;v.compositeRule=ne.compositeRule=!0;var Je=L;if(Je)for(var He,qe=-1,$e=Je.length-1;qe<$e;)He=Je[qe+=1],(v.opts.strictKeywords?"object"==typeof He&&Object.keys(He).length>0||!1===He:v.util.schemaHasRules(He,v.RULES.all))?(ne.schema=He,ne.schemaPath=Y+"["+qe+"]",ne.errSchemaPath=V+"/"+qe,y+=" "+v.validate(ne)+" ",ne.baseId=we):y+=" var "+me+" = true; ",qe&&(y+=" if ("+me+" && "+Be+") { "+G+" = false; "+Ie+" = ["+Ie+", "+qe+"]; } else { ",re+="}"),y+=" if ("+me+") { "+G+" = "+Be+" = true; "+Ie+" = "+qe+"; }";return v.compositeRule=ne.compositeRule=Ne,y+=re+"if (!"+G+") { var err = ",!1!==v.createErrors?(y+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { passingSchemas: "+Ie+" } ",!1!==v.opts.messages&&(y+=" , message: 'should match exactly one schema in oneOf' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",y+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!v.compositeRule&&X&&(y+=v.async?" throw new ValidationError(vErrors); ":" validate.errors = vErrors; return false; "),y+="} else { errors = "+Q+"; if (vErrors !== null) { if ("+Q+") vErrors.length = "+Q+"; else vErrors = null; }",v.opts.allErrors&&(y+=" } "),y}},9438:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L;var ne=G?"(new RegExp("+Q+"))":v.usePattern(L);y+="if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'string') || ");var re=re||[];re.push(y+=" !"+ne+".test("+z+") ) { "),y="",!1!==v.createErrors?(y+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { pattern: ",y+=G?""+Q:""+v.util.toQuotedString(L),y+=" } ",!1!==v.opts.messages&&(y+=" , message: 'should match pattern \"",y+=G?"' + "+Q+" + '":""+v.util.escapeQuotes(L),y+="\"' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+v.util.toQuotedString(L),y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var me=y;return y=re.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+me+"]); ":" validate.errors = ["+me+"]; return false; ":" var err = "+me+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},6319:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="errs__"+Z,Q=v.util.copy(v),ne="";Q.level++;var re="valid"+Q.level,me="key"+Z,we="idx"+Z,Be=Q.dataLevel=v.dataLevel+1,Ie="data"+Be,Ne="dataProperties"+Z,Je=Object.keys(L||{}).filter(wt),He=v.schema.patternProperties||{},qe=Object.keys(He).filter(wt),$e=v.schema.additionalProperties,Ge=Je.length||qe.length,st=!1===$e,We="object"==typeof $e&&Object.keys($e).length,ve=v.opts.removeAdditional,fe=st||We||ve,Qe=v.opts.ownProperties,Te=v.baseId,Le=v.schema.required;if(Le&&(!v.opts.$data||!Le.$data)&&Le.length8)y+=" || validate.schema"+Y+".hasOwnProperty("+me+") ";else{var Nt=Je;if(Nt)for(var fn=-1,$n=Nt.length-1;fn<$n;)Rt=Nt[fn+=1],y+=" || "+me+" == "+v.util.toQuotedString(Rt)+" "}if(qe.length){var Qi=qe;if(Qi)for(var Bi=-1,ri=Qi.length-1;Bi0||!1===Ii:v.util.schemaHasRules(Ii,v.RULES.all)){var Jt=v.util.getProperty(Rt),xr=(_n=z+Jt,Zi&&void 0!==Ii.default);if(Q.schema=Ii,Q.schemaPath=Y+Jt,Q.errSchemaPath=V+"/"+v.util.escapeFragment(Rt),Q.errorPath=v.util.getPath(v.errorPath,Rt,v.opts.jsonPointers),Q.dataPathArr[Be]=v.util.toQuotedString(Rt),si=v.validate(Q),Q.baseId=Te,v.util.varOccurences(si,Ie)<2){si=v.util.varReplace(si,Ie,_n);var br=_n}else br=Ie,y+=" var "+Ie+" = "+_n+"; ";if(xr)y+=" "+si+" ";else{if(pt&&pt[Rt]){y+=" if ( "+br+" === undefined ",Qe&&(y+=" || ! Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(Rt)+"') "),y+=") { "+re+" = false; ",ci=v.errorPath,kt=V;var qt,Ur=v.util.escapeQuotes(Rt);v.opts._errorDataPathProperty&&(v.errorPath=v.util.getPath(ci,Rt,v.opts.jsonPointers)),V=v.errSchemaPath+"/required",(qt=qt||[]).push(y),y="",!1!==v.createErrors?(y+=" { keyword: 'required' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { missingProperty: '"+Ur+"' } ",!1!==v.opts.messages&&(y+=" , message: '",y+=v.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+Ur+"\\'",y+="' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",cn=y,y=qt.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+cn+"]); ":" validate.errors = ["+cn+"]; return false; ":" var err = "+cn+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",V=kt,v.errorPath=ci,y+=" } else { "}else X?(y+=" if ( "+br+" === undefined ",Qe&&(y+=" || ! Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(Rt)+"') "),y+=") { "+re+" = true; } else { "):(y+=" if ("+br+" !== undefined ",Qe&&(y+=" && Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(Rt)+"') "),y+=" ) { ");y+=" "+si+" } "}}X&&(y+=" if ("+re+") { ",ne+="}")}}if(qe.length){var Jr=qe;if(Jr)for(var ui,Il=-1,ss=Jr.length-1;Il0||!1===Ii:v.util.schemaHasRules(Ii,v.RULES.all))&&(Q.schema=Ii,Q.schemaPath=v.schemaPath+".patternProperties"+v.util.getProperty(ui),Q.errSchemaPath=v.errSchemaPath+"/patternProperties/"+v.util.escapeFragment(ui),y+=Qe?" "+Ne+" = "+Ne+" || Object.keys("+z+"); for (var "+we+"=0; "+we+"<"+Ne+".length; "+we+"++) { var "+me+" = "+Ne+"["+we+"]; ":" for (var "+me+" in "+z+") { ",y+=" if ("+v.usePattern(ui)+".test("+me+")) { ",Q.errorPath=v.util.getPathExpr(v.errorPath,me,v.opts.jsonPointers),_n=z+"["+me+"]",Q.dataPathArr[Be]=me,si=v.validate(Q),Q.baseId=Te,v.util.varOccurences(si,Ie)<2?y+=" "+v.util.varReplace(si,Ie,_n)+" ":y+=" var "+Ie+" = "+_n+"; "+si+" ",X&&(y+=" if (!"+re+") break; "),y+=" } ",X&&(y+=" else "+re+" = true; "),y+=" } ",X&&(y+=" if ("+re+") { ",ne+="}"))}return X&&(y+=" "+ne+" if ("+G+" == errors) {"),y}},6611:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="errs__"+Z,Q=v.util.copy(v);Q.level++;var re="valid"+Q.level;if(y+="var "+G+" = errors;",v.opts.strictKeywords?"object"==typeof L&&Object.keys(L).length>0||!1===L:v.util.schemaHasRules(L,v.RULES.all)){Q.schema=L,Q.schemaPath=Y,Q.errSchemaPath=V;var me="key"+Z,we="idx"+Z,Be="i"+Z,Ie="' + "+me+" + '",Je="data"+(Q.dataLevel=v.dataLevel+1),He="dataProperties"+Z,qe=v.opts.ownProperties,$e=v.baseId;qe&&(y+=" var "+He+" = undefined; "),y+=qe?" "+He+" = "+He+" || Object.keys("+z+"); for (var "+we+"=0; "+we+"<"+He+".length; "+we+"++) { var "+me+" = "+He+"["+we+"]; ":" for (var "+me+" in "+z+") { ",y+=" var startErrs"+Z+" = errors; ";var Ge=me,st=v.compositeRule;v.compositeRule=Q.compositeRule=!0;var We=v.validate(Q);Q.baseId=$e,v.util.varOccurences(We,Je)<2?y+=" "+v.util.varReplace(We,Je,Ge)+" ":y+=" var "+Je+" = "+Ge+"; "+We+" ",v.compositeRule=Q.compositeRule=st,y+=" if (!"+re+") { for (var "+Be+"=startErrs"+Z+"; "+Be+"{"use strict";nt.exports=function(v,j,o){var G,Q,y=" ",U=v.dataLevel,L=v.schema[j],Y=v.errSchemaPath+"/"+j,V=!v.opts.allErrors,X="data"+(U||""),z="valid"+v.level;if("#"==L||"#/"==L)v.isRoot?(G=v.async,Q="validate"):(G=!0===v.root.schema.$async,Q="root.refVal[0]");else{var ne=v.resolveRef(v.baseId,L,v.isRoot);if(void 0===ne){var re=v.MissingRefError.message(v.baseId,L);if("fail"==v.opts.missingRefs){v.logger.error(re),(me=me||[]).push(y),y="",!1!==v.createErrors?(y+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(Y)+" , params: { ref: '"+v.util.escapeQuotes(L)+"' } ",!1!==v.opts.messages&&(y+=" , message: 'can\\'t resolve reference "+v.util.escapeQuotes(L)+"' "),v.opts.verbose&&(y+=" , schema: "+v.util.toQuotedString(L)+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+X+" "),y+=" } "):y+=" {} ";var we=y;y=me.pop(),y+=!v.compositeRule&&V?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",V&&(y+=" if (false) { ")}else{if("ignore"!=v.opts.missingRefs)throw new v.MissingRefError(v.baseId,L,re);v.logger.warn(re),V&&(y+=" if (true) { ")}}else if(ne.inline){var Be=v.util.copy(v);Be.level++;var Ie="valid"+Be.level;Be.schema=ne.schema,Be.schemaPath="",Be.errSchemaPath=L,y+=" "+v.validate(Be).replace(/validate\.schema/g,ne.code)+" ",V&&(y+=" if ("+Ie+") { ")}else G=!0===ne.$async||v.async&&!1!==ne.$async,Q=ne.code}if(Q){var me;(me=me||[]).push(y),y="",y+=v.opts.passContext?" "+Q+".call(this, ":" "+Q+"( ",y+=" "+X+", (dataPath || '')",'""'!=v.errorPath&&(y+=" + "+v.errorPath);var qe=y+=" , "+(U?"data"+(U-1||""):"parentData")+" , "+(U?v.dataPathArr[U]:"parentDataProperty")+", rootData) ";if(y=me.pop(),G){if(!v.async)throw new Error("async schema referenced by sync schema");V&&(y+=" var "+z+"; "),y+=" try { await "+qe+"; ",V&&(y+=" "+z+" = true; "),y+=" } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; ",V&&(y+=" "+z+" = false; "),y+=" } ",V&&(y+=" if ("+z+") { ")}else y+=" if (!"+qe+") { if (vErrors === null) vErrors = "+Q+".errors; else vErrors = vErrors.concat("+Q+".errors); errors = vErrors.length; } ",V&&(y+=" else { ")}return y}},5051:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q=v.opts.$data&&L&&L.$data;Q&&(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ");var re="schema"+Z;if(!Q)if(L.length0||!1===Je:v.util.schemaHasRules(Je,v.RULES.all))||(me[me.length]=Be)}}else me=L;if(Q||me.length){var He=v.errorPath,qe=Q||me.length>=v.opts.loopRequired,$e=v.opts.ownProperties;if(X)if(y+=" var missing"+Z+"; ",qe){Q||(y+=" var "+re+" = validate.schema"+Y+"; ");var We="' + "+(st="schema"+Z+"["+(Ge="i"+Z)+"]")+" + '";v.opts._errorDataPathProperty&&(v.errorPath=v.util.getPathExpr(He,st,v.opts.jsonPointers)),y+=" var "+G+" = true; ",Q&&(y+=" if (schema"+Z+" === undefined) "+G+" = true; else if (!Array.isArray(schema"+Z+")) "+G+" = false; else {"),y+=" for (var "+Ge+" = 0; "+Ge+" < "+re+".length; "+Ge+"++) { "+G+" = "+z+"["+re+"["+Ge+"]] !== undefined ",$e&&(y+=" && Object.prototype.hasOwnProperty.call("+z+", "+re+"["+Ge+"]) "),y+="; if (!"+G+") break; } ",Q&&(y+=" } "),(ve=ve||[]).push(y+=" if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'required' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { missingProperty: '"+We+"' } ",!1!==v.opts.messages&&(y+=" , message: '",y+=v.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+We+"\\'",y+="' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var fe=y;y=ve.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+fe+"]); ":" validate.errors = ["+fe+"]; return false; ":" var err = "+fe+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } else { "}else{y+=" if ( ";var ve,Qe=me;if(Qe)for(var Ge=-1,Le=Qe.length-1;Ge{"use strict";nt.exports=function(v,j,o){var ne,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q=v.opts.$data&&L&&L.$data;if(Q?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",ne="schema"+Z):ne=L,(L||Q)&&!1!==v.opts.uniqueItems){Q&&(y+=" var "+G+"; if ("+ne+" === false || "+ne+" === undefined) "+G+" = true; else if (typeof "+ne+" != 'boolean') "+G+" = false; else { "),y+=" var i = "+z+".length , "+G+" = true , j; if (i > 1) { ";var re=v.schema.items&&v.schema.items.type,me=Array.isArray(re);!re||"object"==re||"array"==re||me&&(re.indexOf("object")>=0||re.indexOf("array")>=0)?y+=" outer: for (;i--;) { for (j = i; j--;) { if (equal("+z+"[i], "+z+"[j])) { "+G+" = false; break outer; } } } ":(y+=" var itemIndices = {}, item; for (;i--;) { var item = "+z+"[i]; ",y+=" if ("+v.util["checkDataType"+(me?"s":"")](re,"item",v.opts.strictNumbers,!0)+") continue; ",me&&(y+=" if (typeof item == 'string') item = '\"' + item; "),y+=" if (typeof itemIndices[item] == 'number') { "+G+" = false; j = itemIndices[item]; break; } itemIndices[item] = i; } "),y+=" } ",Q&&(y+=" } ");var Be=Be||[];Be.push(y+=" if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { i: i, j: j } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' "),v.opts.verbose&&(y+=" , schema: ",y+=Q?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var Ie=y;y=Be.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+Ie+"]); ":" validate.errors = ["+Ie+"]; return false; ":" var err = "+Ie+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } ",X&&(y+=" else { ")}else X&&(y+=" if (true) { ");return y}},604:nt=>{"use strict";nt.exports=function(v,j,o){var y="",Z=!0===v.schema.$async,U=v.util.schemaHasRulesExcept(v.schema,v.RULES.all,"$ref"),L=v.self._getId(v.schema);if(v.opts.strictKeywords){var Y=v.util.schemaUnknownRules(v.schema,v.RULES.keywords);if(Y){var V="unknown keyword: "+Y;if("log"!==v.opts.strictKeywords)throw new Error(V);v.logger.warn(V)}}if(v.isTop&&(y+=" var validate = ",Z&&(v.async=!0,y+="async "),y+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",L&&(v.opts.sourceCode||v.opts.processCode)&&(y+=" /*# sourceURL="+L+" */ ")),"boolean"==typeof v.schema||!U&&!v.schema.$ref){var X=v.level,z=v.dataLevel,G=v.schema[j="false schema"],Q=v.schemaPath+v.util.getProperty(j),ne=v.errSchemaPath+"/"+j,Je=!v.opts.allErrors,re="data"+(z||""),Ne="valid"+X;if(!1===v.schema){v.isTop?Je=!0:y+=" var "+Ne+" = false; ",(me=me||[]).push(y),y="",!1!==v.createErrors?(y+=" { keyword: 'false schema' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(ne)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: 'boolean schema is false' "),v.opts.verbose&&(y+=" , schema: false , parentSchema: validate.schema"+v.schemaPath+" , data: "+re+" "),y+=" } "):y+=" {} ";var we=y;y=me.pop(),y+=!v.compositeRule&&Je?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else y+=v.isTop?Z?" return data; ":" validate.errors = null; return true; ":" var "+Ne+" = true; ";return v.isTop&&(y+=" }; return validate; "),y}if(v.isTop){var Be=v.isTop;if(X=v.level=0,z=v.dataLevel=0,re="data",v.rootId=v.resolve.fullPath(v.self._getId(v.root.schema)),v.baseId=v.baseId||v.rootId,delete v.isTop,v.dataPathArr=[""],void 0!==v.schema.default&&v.opts.useDefaults&&v.opts.strictDefaults){var Ie="default is ignored in the schema root";if("log"!==v.opts.strictDefaults)throw new Error(Ie);v.logger.warn(Ie)}y+=" var vErrors = null; ",y+=" var errors = 0; ",y+=" if (rootData === undefined) rootData = data; "}else{if(X=v.level,re="data"+((z=v.dataLevel)||""),L&&(v.baseId=v.resolve.url(v.baseId,L)),Z&&!v.async)throw new Error("async schema in sync schema");y+=" var errs_"+X+" = errors;"}Ne="valid"+X,Je=!v.opts.allErrors;var He="",qe="",Ge=v.schema.type,st=Array.isArray(Ge);if(Ge&&v.opts.nullable&&!0===v.schema.nullable&&(st?-1==Ge.indexOf("null")&&(Ge=Ge.concat("null")):"null"!=Ge&&(Ge=[Ge,"null"],st=!0)),st&&1==Ge.length&&(Ge=Ge[0],st=!1),v.schema.$ref&&U){if("fail"==v.opts.extendRefs)throw new Error('$ref: validation keywords used in schema at path "'+v.errSchemaPath+'" (see option extendRefs)');!0!==v.opts.extendRefs&&(U=!1,v.logger.warn('$ref: keywords ignored in schema at path "'+v.errSchemaPath+'"'))}if(v.schema.$comment&&v.opts.$comment&&(y+=" "+v.RULES.all.$comment.code(v,"$comment")),Ge){if(v.opts.coerceTypes)var We=v.util.coerceToTypes(v.opts.coerceTypes,Ge);var ve=v.RULES.types[Ge];if(We||st||!0===ve||ve&&!Ii(ve)){if(Q=v.schemaPath+".type",ne=v.errSchemaPath+"/type",Q=v.schemaPath+".type",ne=v.errSchemaPath+"/type",y+=" if ("+v.util[st?"checkDataTypes":"checkDataType"](Ge,re,v.opts.strictNumbers,!0)+") { ",We){var Qe="dataType"+X,Te="coerced"+X;y+=" var "+Qe+" = typeof "+re+"; var "+Te+" = undefined; ","array"==v.opts.coerceTypes&&(y+=" if ("+Qe+" == 'object' && Array.isArray("+re+") && "+re+".length == 1) { "+re+" = "+re+"[0]; "+Qe+" = typeof "+re+"; if ("+v.util.checkDataType(v.schema.type,re,v.opts.strictNumbers)+") "+Te+" = "+re+"; } "),y+=" if ("+Te+" !== undefined) ; ";var Le=We;if(Le)for(var pt,wt=-1,Nt=Le.length-1;wt{"use strict";var j=/^[a-z_$][a-z0-9_$-]*$/i,o=v(5237),y=v(8606);nt.exports={add:function Z(V,X){var z=this.RULES;if(z.keywords[V])throw new Error("Keyword "+V+" is already defined");if(!j.test(V))throw new Error("Keyword "+V+" is not a valid identifier");if(X){this.validateKeyword(X,!0);var G=X.type;if(Array.isArray(G))for(var Q=0;Q{var Ee={utf8:{stringToBytes:function(v){return Ee.bin.stringToBytes(unescape(encodeURIComponent(v)))},bytesToString:function(v){return decodeURIComponent(escape(Ee.bin.bytesToString(v)))}},bin:{stringToBytes:function(v){for(var j=[],o=0;o{const j=v(4605),o={};for(const U of Object.keys(j))o[j[U]]=U;const y={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};nt.exports=y;for(const U of Object.keys(y)){if(!("channels"in y[U]))throw new Error("missing channels property: "+U);if(!("labels"in y[U]))throw new Error("missing channel labels property: "+U);if(y[U].labels.length!==y[U].channels)throw new Error("channel and label counts mismatch: "+U);const{channels:L,labels:Y}=y[U];delete y[U].channels,delete y[U].labels,Object.defineProperty(y[U],"channels",{value:L}),Object.defineProperty(y[U],"labels",{value:Y})}function Z(U,L){return(U[0]-L[0])**2+(U[1]-L[1])**2+(U[2]-L[2])**2}y.rgb.hsl=function(U){const L=U[0]/255,Y=U[1]/255,V=U[2]/255,X=Math.min(L,Y,V),z=Math.max(L,Y,V),G=z-X;let Q,ne;z===X?Q=0:L===z?Q=(Y-V)/G:Y===z?Q=2+(V-L)/G:V===z&&(Q=4+(L-Y)/G),Q=Math.min(60*Q,360),Q<0&&(Q+=360);const re=(X+z)/2;return ne=z===X?0:re<=.5?G/(z+X):G/(2-z-X),[Q,100*ne,100*re]},y.rgb.hsv=function(U){let L,Y,V,X,z;const G=U[0]/255,Q=U[1]/255,ne=U[2]/255,re=Math.max(G,Q,ne),me=re-Math.min(G,Q,ne),we=function(Be){return(re-Be)/6/me+.5};return 0===me?(X=0,z=0):(z=me/re,L=we(G),Y=we(Q),V=we(ne),G===re?X=V-Y:Q===re?X=1/3+L-V:ne===re&&(X=2/3+Y-L),X<0?X+=1:X>1&&(X-=1)),[360*X,100*z,100*re]},y.rgb.hwb=function(U){const L=U[0],Y=U[1];let V=U[2];const X=y.rgb.hsl(U)[0],z=1/255*Math.min(L,Math.min(Y,V));return V=1-1/255*Math.max(L,Math.max(Y,V)),[X,100*z,100*V]},y.rgb.cmyk=function(U){const L=U[0]/255,Y=U[1]/255,V=U[2]/255,X=Math.min(1-L,1-Y,1-V);return[100*((1-L-X)/(1-X)||0),100*((1-Y-X)/(1-X)||0),100*((1-V-X)/(1-X)||0),100*X]},y.rgb.keyword=function(U){const L=o[U];if(L)return L;let V,Y=1/0;for(const X of Object.keys(j)){const G=Z(U,j[X]);G.04045?((L+.055)/1.055)**2.4:L/12.92,Y=Y>.04045?((Y+.055)/1.055)**2.4:Y/12.92,V=V>.04045?((V+.055)/1.055)**2.4:V/12.92,[100*(.4124*L+.3576*Y+.1805*V),100*(.2126*L+.7152*Y+.0722*V),100*(.0193*L+.1192*Y+.9505*V)]},y.rgb.lab=function(U){const L=y.rgb.xyz(U);let Y=L[0],V=L[1],X=L[2];return Y/=95.047,V/=100,X/=108.883,Y=Y>.008856?Y**(1/3):7.787*Y+16/116,V=V>.008856?V**(1/3):7.787*V+16/116,X=X>.008856?X**(1/3):7.787*X+16/116,[116*V-16,500*(Y-V),200*(V-X)]},y.hsl.rgb=function(U){const L=U[0]/360,Y=U[1]/100,V=U[2]/100;let X,z,G;if(0===Y)return G=255*V,[G,G,G];X=V<.5?V*(1+Y):V+Y-V*Y;const Q=2*V-X,ne=[0,0,0];for(let re=0;re<3;re++)z=L+1/3*-(re-1),z<0&&z++,z>1&&z--,G=6*z<1?Q+6*(X-Q)*z:2*z<1?X:3*z<2?Q+(X-Q)*(2/3-z)*6:Q,ne[re]=255*G;return ne},y.hsl.hsv=function(U){const L=U[0];let Y=U[1]/100,V=U[2]/100,X=Y;const z=Math.max(V,.01);return V*=2,Y*=V<=1?V:2-V,X*=z<=1?z:2-z,[L,100*(0===V?2*X/(z+X):2*Y/(V+Y)),(V+Y)/2*100]},y.hsv.rgb=function(U){const L=U[0]/60,Y=U[1]/100;let V=U[2]/100;const X=Math.floor(L)%6,z=L-Math.floor(L),G=255*V*(1-Y),Q=255*V*(1-Y*z),ne=255*V*(1-Y*(1-z));switch(V*=255,X){case 0:return[V,ne,G];case 1:return[Q,V,G];case 2:return[G,V,ne];case 3:return[G,Q,V];case 4:return[ne,G,V];case 5:return[V,G,Q]}},y.hsv.hsl=function(U){const L=U[0],Y=U[1]/100,V=U[2]/100,X=Math.max(V,.01);let z,G;G=(2-Y)*V;const Q=(2-Y)*X;return z=Y*X,z/=Q<=1?Q:2-Q,z=z||0,G/=2,[L,100*z,100*G]},y.hwb.rgb=function(U){const L=U[0]/360;let Y=U[1]/100,V=U[2]/100;const X=Y+V;let z;X>1&&(Y/=X,V/=X);const G=Math.floor(6*L),Q=1-V;z=6*L-G,1&G&&(z=1-z);const ne=Y+z*(Q-Y);let re,me,we;switch(G){default:case 6:case 0:re=Q,me=ne,we=Y;break;case 1:re=ne,me=Q,we=Y;break;case 2:re=Y,me=Q,we=ne;break;case 3:re=Y,me=ne,we=Q;break;case 4:re=ne,me=Y,we=Q;break;case 5:re=Q,me=Y,we=ne}return[255*re,255*me,255*we]},y.cmyk.rgb=function(U){const Y=U[1]/100,V=U[2]/100,X=U[3]/100;return[255*(1-Math.min(1,U[0]/100*(1-X)+X)),255*(1-Math.min(1,Y*(1-X)+X)),255*(1-Math.min(1,V*(1-X)+X))]},y.xyz.rgb=function(U){const L=U[0]/100,Y=U[1]/100,V=U[2]/100;let X,z,G;return X=3.2406*L+-1.5372*Y+-.4986*V,z=-.9689*L+1.8758*Y+.0415*V,G=.0557*L+-.204*Y+1.057*V,X=X>.0031308?1.055*X**(1/2.4)-.055:12.92*X,z=z>.0031308?1.055*z**(1/2.4)-.055:12.92*z,G=G>.0031308?1.055*G**(1/2.4)-.055:12.92*G,X=Math.min(Math.max(0,X),1),z=Math.min(Math.max(0,z),1),G=Math.min(Math.max(0,G),1),[255*X,255*z,255*G]},y.xyz.lab=function(U){let L=U[0],Y=U[1],V=U[2];return L/=95.047,Y/=100,V/=108.883,L=L>.008856?L**(1/3):7.787*L+16/116,Y=Y>.008856?Y**(1/3):7.787*Y+16/116,V=V>.008856?V**(1/3):7.787*V+16/116,[116*Y-16,500*(L-Y),200*(Y-V)]},y.lab.xyz=function(U){let X,z,G;z=(U[0]+16)/116,X=U[1]/500+z,G=z-U[2]/200;const Q=z**3,ne=X**3,re=G**3;return z=Q>.008856?Q:(z-16/116)/7.787,X=ne>.008856?ne:(X-16/116)/7.787,G=re>.008856?re:(G-16/116)/7.787,X*=95.047,z*=100,G*=108.883,[X,z,G]},y.lab.lch=function(U){const L=U[0],Y=U[1],V=U[2];let X;return X=360*Math.atan2(V,Y)/2/Math.PI,X<0&&(X+=360),[L,Math.sqrt(Y*Y+V*V),X]},y.lch.lab=function(U){const Y=U[1],X=U[2]/360*2*Math.PI;return[U[0],Y*Math.cos(X),Y*Math.sin(X)]},y.rgb.ansi16=function(U,L=null){const[Y,V,X]=U;let z=null===L?y.rgb.hsv(U)[2]:L;if(z=Math.round(z/50),0===z)return 30;let G=30+(Math.round(X/255)<<2|Math.round(V/255)<<1|Math.round(Y/255));return 2===z&&(G+=60),G},y.hsv.ansi16=function(U){return y.rgb.ansi16(y.hsv.rgb(U),U[2])},y.rgb.ansi256=function(U){const L=U[0],Y=U[1],V=U[2];return L===Y&&Y===V?L<8?16:L>248?231:Math.round((L-8)/247*24)+232:16+36*Math.round(L/255*5)+6*Math.round(Y/255*5)+Math.round(V/255*5)},y.ansi16.rgb=function(U){let L=U%10;if(0===L||7===L)return U>50&&(L+=3.5),L=L/10.5*255,[L,L,L];const Y=.5*(1+~~(U>50));return[(1&L)*Y*255,(L>>1&1)*Y*255,(L>>2&1)*Y*255]},y.ansi256.rgb=function(U){if(U>=232){const z=10*(U-232)+8;return[z,z,z]}let L;return U-=16,[Math.floor(U/36)/5*255,Math.floor((L=U%36)/6)/5*255,L%6/5*255]},y.rgb.hex=function(U){const Y=(((255&Math.round(U[0]))<<16)+((255&Math.round(U[1]))<<8)+(255&Math.round(U[2]))).toString(16).toUpperCase();return"000000".substring(Y.length)+Y},y.hex.rgb=function(U){const L=U.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!L)return[0,0,0];let Y=L[0];3===L[0].length&&(Y=Y.split("").map(Q=>Q+Q).join(""));const V=parseInt(Y,16);return[V>>16&255,V>>8&255,255&V]},y.rgb.hcg=function(U){const L=U[0]/255,Y=U[1]/255,V=U[2]/255,X=Math.max(Math.max(L,Y),V),z=Math.min(Math.min(L,Y),V),G=X-z;let Q,ne;return Q=G<1?z/(1-G):0,ne=G<=0?0:X===L?(Y-V)/G%6:X===Y?2+(V-L)/G:4+(L-Y)/G,ne/=6,ne%=1,[360*ne,100*G,100*Q]},y.hsl.hcg=function(U){const L=U[1]/100,Y=U[2]/100,V=Y<.5?2*L*Y:2*L*(1-Y);let X=0;return V<1&&(X=(Y-.5*V)/(1-V)),[U[0],100*V,100*X]},y.hsv.hcg=function(U){const Y=U[2]/100,V=U[1]/100*Y;let X=0;return V<1&&(X=(Y-V)/(1-V)),[U[0],100*V,100*X]},y.hcg.rgb=function(U){const Y=U[1]/100,V=U[2]/100;if(0===Y)return[255*V,255*V,255*V];const X=[0,0,0],z=U[0]/360%1*6,G=z%1,Q=1-G;let ne=0;switch(Math.floor(z)){case 0:X[0]=1,X[1]=G,X[2]=0;break;case 1:X[0]=Q,X[1]=1,X[2]=0;break;case 2:X[0]=0,X[1]=1,X[2]=G;break;case 3:X[0]=0,X[1]=Q,X[2]=1;break;case 4:X[0]=G,X[1]=0,X[2]=1;break;default:X[0]=1,X[1]=0,X[2]=Q}return ne=(1-Y)*V,[255*(Y*X[0]+ne),255*(Y*X[1]+ne),255*(Y*X[2]+ne)]},y.hcg.hsv=function(U){const L=U[1]/100,V=L+U[2]/100*(1-L);let X=0;return V>0&&(X=L/V),[U[0],100*X,100*V]},y.hcg.hsl=function(U){const L=U[1]/100,V=U[2]/100*(1-L)+.5*L;let X=0;return V>0&&V<.5?X=L/(2*V):V>=.5&&V<1&&(X=L/(2*(1-V))),[U[0],100*X,100*V]},y.hcg.hwb=function(U){const L=U[1]/100,V=L+U[2]/100*(1-L);return[U[0],100*(V-L),100*(1-V)]},y.hwb.hcg=function(U){const V=1-U[2]/100,X=V-U[1]/100;let z=0;return X<1&&(z=(V-X)/(1-X)),[U[0],100*X,100*z]},y.apple.rgb=function(U){return[U[0]/65535*255,U[1]/65535*255,U[2]/65535*255]},y.rgb.apple=function(U){return[U[0]/255*65535,U[1]/255*65535,U[2]/255*65535]},y.gray.rgb=function(U){return[U[0]/100*255,U[0]/100*255,U[0]/100*255]},y.gray.hsl=function(U){return[0,0,U[0]]},y.gray.hsv=y.gray.hsl,y.gray.hwb=function(U){return[0,100,U[0]]},y.gray.cmyk=function(U){return[0,0,0,U[0]]},y.gray.lab=function(U){return[U[0],0,0]},y.gray.hex=function(U){const L=255&Math.round(U[0]/100*255),V=((L<<16)+(L<<8)+L).toString(16).toUpperCase();return"000000".substring(V.length)+V},y.rgb.gray=function(U){return[(U[0]+U[1]+U[2])/3/255*100]}},3205:(nt,Ee,v)=>{const j=v(2348),o=v(8236),y={};Object.keys(j).forEach(Y=>{y[Y]={},Object.defineProperty(y[Y],"channels",{value:j[Y].channels}),Object.defineProperty(y[Y],"labels",{value:j[Y].labels});const V=o(Y);Object.keys(V).forEach(z=>{const G=V[z];y[Y][z]=function L(Y){const V=function(...X){const z=X[0];if(null==z)return z;z.length>1&&(X=z);const G=Y(X);if("object"==typeof G)for(let Q=G.length,ne=0;ne1&&(X=z),Y(X))};return"conversion"in Y&&(V.conversion=Y.conversion),V}(G)})}),nt.exports=y},8236:(nt,Ee,v)=>{const j=v(2348);function Z(L,Y){return function(V){return Y(L(V))}}function U(L,Y){const V=[Y[L].parent,L];let X=j[Y[L].parent][L],z=Y[L].parent;for(;Y[z].parent;)V.unshift(Y[z].parent),X=Z(j[Y[z].parent][z],X),z=Y[z].parent;return X.conversion=V,X}nt.exports=function(L){const Y=function y(L){const Y=function o(){const L={},Y=Object.keys(j);for(let V=Y.length,X=0;X{"use strict";nt.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},9928:nt=>{var Ee,v;Ee="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",nt.exports=v={rotl:function(j,o){return j<>>32-o},rotr:function(j,o){return j<<32-o|j>>>o},endian:function(j){if(j.constructor==Number)return 16711935&v.rotl(j,8)|4278255360&v.rotl(j,24);for(var o=0;o0;j--)o.push(Math.floor(256*Math.random()));return o},bytesToWords:function(j){for(var o=[],y=0,Z=0;y>>5]|=j[y]<<24-Z%32;return o},wordsToBytes:function(j){for(var o=[],y=0;y<32*j.length;y+=8)o.push(j[y>>>5]>>>24-y%32&255);return o},bytesToHex:function(j){for(var o=[],y=0;y>>4).toString(16)),o.push((15&j[y]).toString(16));return o.join("")},hexToBytes:function(j){for(var o=[],y=0;y>>6*(3-U)&63):"=");return o.join("")},base64ToBytes:function(j){j=j.replace(/[^A-Z0-9+\/]/gi,"");for(var o=[],y=0,Z=0;y>>6-2*Z);return o}}},243:nt=>{"use strict";var Ee={single_source_shortest_paths:function(v,j,o){var y={},Z={};Z[j]=0;var L,Y,V,X,z,Q,U=Ee.PriorityQueue.make();for(U.push(j,0);!U.empty();)for(V in X=(L=U.pop()).cost,z=v[Y=L.value]||{})z.hasOwnProperty(V)&&(Q=X+z[V],(typeof Z[V]>"u"||Z[V]>Q)&&(Z[V]=Q,U.push(V,Q),y[V]=Y));if(typeof o<"u"&&typeof Z[o]>"u"){var me=["Could not find a path from ",j," to ",o,"."].join("");throw new Error(me)}return y},extract_shortest_path_from_predecessor_list:function(v,j){for(var o=[],y=j;y;)o.push(y),y=v[y];return o.reverse(),o},find_path:function(v,j,o){var y=Ee.single_source_shortest_paths(v,j,o);return Ee.extract_shortest_path_from_predecessor_list(y,o)},PriorityQueue:{make:function(v){var y,j=Ee.PriorityQueue,o={};for(y in v=v||{},j)j.hasOwnProperty(y)&&(o[y]=j[y]);return o.queue=[],o.sorter=v.sorter||j.default_sorter,o},default_sorter:function(v,j){return v.cost-j.cost},push:function(v,j){this.queue.push({value:v,cost:j}),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};nt.exports=Ee},362:nt=>{"use strict";nt.exports=function Ee(v,j){if(v===j)return!0;if(v&&j&&"object"==typeof v&&"object"==typeof j){if(v.constructor!==j.constructor)return!1;var o,y,Z;if(Array.isArray(v)){if((o=v.length)!=j.length)return!1;for(y=o;0!=y--;)if(!Ee(v[y],j[y]))return!1;return!0}if(v.constructor===RegExp)return v.source===j.source&&v.flags===j.flags;if(v.valueOf!==Object.prototype.valueOf)return v.valueOf()===j.valueOf();if(v.toString!==Object.prototype.toString)return v.toString()===j.toString();if((o=(Z=Object.keys(v)).length)!==Object.keys(j).length)return!1;for(y=o;0!=y--;)if(!Object.prototype.hasOwnProperty.call(j,Z[y]))return!1;for(y=o;0!=y--;){var U=Z[y];if(!Ee(v[U],j[U]))return!1}return!0}return v!=v&&j!=j}},8861:nt=>{"use strict";nt.exports=function(Ee,v){v||(v={}),"function"==typeof v&&(v={cmp:v});var j="boolean"==typeof v.cycles&&v.cycles,o=v.cmp&&function(Z){return function(U){return function(L,Y){return Z({key:L,value:U[L]},{key:Y,value:U[Y]})}}}(v.cmp),y=[];return function Z(U){if(U&&U.toJSON&&"function"==typeof U.toJSON&&(U=U.toJSON()),void 0!==U){if("number"==typeof U)return isFinite(U)?""+U:"null";if("object"!=typeof U)return JSON.stringify(U);var L,Y;if(Array.isArray(U)){for(Y="[",L=0;L0&&$[$.length-1])&&(6===Xe[0]||2===Xe[0])){S=0;continue}if(3===Xe[0]&&(!$||Xe[1]>$[0]&&Xe[1]<$[3])){S.label=Xe[1];break}if(6===Xe[0]&&S.label<$[1]){S.label=$[1],$=Xe;break}if($&&S.label<$[2]){S.label=$[2],S.ops.push(Xe);break}$[2]&&S.ops.pop(),S.trys.pop();continue}Xe=C.call(M,S)}catch(tt){Xe=[6,tt],N=0}finally{E=$=0}if(5&Xe[0])throw Xe[1];return{value:Xe[0]?Xe[1]:void 0,done:!0}}([Xe,tt])}}}function Z(M,C,S){if(S||2===arguments.length)for(var $,E=0,N=C.length;E=55296&&N<=56319&&S>10),se%1024+56320),(N+1===S||E.length>16384)&&($+=String.fromCharCode.apply(String,E),E.length=0)}return $},z="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",G=typeof Uint8Array>"u"?[]:new Uint8Array(256),Q=0;Q<64;Q++)G[z.charCodeAt(Q)]=Q;for(var ne="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",re=typeof Uint8Array>"u"?[]:new Uint8Array(256),me=0;me<64;me++)re[ne.charCodeAt(me)]=me;for(var Nt=function(M,C,S){return M.slice?M.slice(C,S):new Uint16Array(Array.prototype.slice.call(M,C,S))},$n=function(){function M(C,S,E,N,$,se){this.initialValue=C,this.errorValue=S,this.highStart=E,this.highValueIndex=N,this.index=$,this.data=se}return M.prototype.get=function(C){var S;if(C>=0){if(C<55296||C>56319&&C<=65535)return this.data[S=((S=this.index[C>>5])<<2)+(31&C)];if(C<=65535)return this.data[S=((S=this.index[2048+(C-55296>>5)])<<2)+(31&C)];if(C>11)],this.data[S=((S=this.index[S+=C>>5&63])<<2)+(31&C)];if(C<=1114111)return this.data[this.highValueIndex]}return this.errorValue},M}(),Qi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ui=typeof Uint8Array>"u"?[]:new Uint8Array(256),Bi=0;Bi<64;Bi++)ui[Qi.charCodeAt(Bi)]=Bi;var S,E,N,se,xe,fr=10,Ii=13,xr=15,Ur=17,Jr=18,Il=19,ss=20,Li=21,Fi=22,Yo=24,Xr=25,as=26,po=27,Ac=28,et=30,Tt=32,rt=33,Et=34,ln=35,ei=37,Qn=38,Xt=39,Rn=40,ji=42,Kr=[9001,65288],Ei="\xd7",De=(S=function(M){var E,$,se,xe,ge,C=.75*M.length,S=M.length,N=0;"="===M[M.length-1]&&(C--,"="===M[M.length-2]&&C--);var Xe=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(C):new Array(C),tt=Array.isArray(Xe)?Xe:new Uint8Array(Xe);for(E=0;E>4,tt[N++]=(15&se)<<4|xe>>2,tt[N++]=(3&xe)<<6|63≥return Xe}("KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA=="),E=Array.isArray(S)?function(M){for(var C=M.length,S=[],E=0;E0;){var xe=E[--$];if(Array.isArray(M)?-1!==M.indexOf(xe):M===xe)for(var ge=S;ge<=E.length;){var se;if((se=E[++ge])===C)return!0;if(se!==fr)break}if(xe!==fr)break}return!1},mn=function(M,C){for(var S=M;S>=0;){var E=C[S];if(E!==fr)return E;S--}return 0},Wn=function(M,C,S,E,N){if(0===S[E])return Ei;var $=E-1;if(Array.isArray(N)&&!0===N[$])return Ei;var se=$-1,xe=$+1,ge=C[$],Xe=se>=0?C[se]:0,tt=C[xe];if(2===ge&&3===tt)return Ei;if(-1!==Ve.indexOf(ge))return"!";if(-1!==Ve.indexOf(tt)||-1!==ct.indexOf(tt))return Ei;if(8===mn($,C))return"\xf7";if(11===De.get(M[$])||(ge===Tt||ge===rt)&&11===De.get(M[xe])||7===ge||7===tt||9===ge||-1===[fr,Ii,xr].indexOf(ge)&&9===tt||-1!==[Ur,Jr,Il,Yo,Ac].indexOf(tt)||mn($,C)===Fi||Un(23,Fi,$,C)||Un([Ur,Jr],Li,$,C)||Un(12,12,$,C))return Ei;if(ge===fr)return"\xf7";if(23===ge||23===tt)return Ei;if(16===tt||16===ge)return"\xf7";if(-1!==[Ii,xr,Li].indexOf(tt)||14===ge||36===Xe&&-1!==Gt.indexOf(ge)||ge===Ac&&36===tt||tt===ss||-1!==he.indexOf(tt)&&ge===Xr||-1!==he.indexOf(ge)&&tt===Xr||ge===po&&-1!==[ei,Tt,rt].indexOf(tt)||-1!==[ei,Tt,rt].indexOf(ge)&&tt===as||-1!==he.indexOf(ge)&&-1!==vt.indexOf(tt)||-1!==vt.indexOf(ge)&&-1!==he.indexOf(tt)||-1!==[po,as].indexOf(ge)&&(tt===Xr||-1!==[Fi,xr].indexOf(tt)&&C[xe+1]===Xr)||-1!==[Fi,xr].indexOf(ge)&&tt===Xr||ge===Xr&&-1!==[Xr,Ac,Yo].indexOf(tt))return Ei;if(-1!==[Xr,Ac,Yo,Ur,Jr].indexOf(tt))for(var mt=$;mt>=0;){if((At=C[mt])===Xr)return Ei;if(-1===[Ac,Yo].indexOf(At))break;mt--}if(-1!==[po,as].indexOf(tt))for(mt=-1!==[Ur,Jr].indexOf(ge)?se:$;mt>=0;){var At;if((At=C[mt])===Xr)return Ei;if(-1===[Ac,Yo].indexOf(At))break;mt--}if(Qn===ge&&-1!==[Qn,Xt,Et,ln].indexOf(tt)||-1!==[Xt,Et].indexOf(ge)&&-1!==[Xt,Rn].indexOf(tt)||-1!==[Rn,ln].indexOf(ge)&&tt===Rn||-1!==Qt.indexOf(ge)&&-1!==[ss,as].indexOf(tt)||-1!==Qt.indexOf(tt)&&ge===po||-1!==he.indexOf(ge)&&-1!==he.indexOf(tt)||ge===Yo&&-1!==he.indexOf(tt)||-1!==he.concat(Xr).indexOf(ge)&&tt===Fi&&-1===Kr.indexOf(M[xe])||-1!==he.concat(Xr).indexOf(tt)&&ge===Jr)return Ei;if(41===ge&&41===tt){for(var wn=S[$],An=1;wn>0&&41===C[--wn];)An++;if(An%2!=0)return Ei}return ge===Tt&&tt===rt?Ei:"\xf7"},Ar=function(M,C){C||(C={lineBreak:"normal",wordBreak:"normal"});var S=function(M,C){void 0===C&&(C="strict");var S=[],E=[],N=[];return M.forEach(function($,se){var xe=De.get($);if(xe>50?(N.push(!0),xe-=50):N.push(!1),-1!==["normal","auto","loose"].indexOf(C)&&-1!==[8208,8211,12316,12448].indexOf($))return E.push(se),S.push(16);if(4===xe||11===xe){if(0===se)return E.push(se),S.push(et);var ge=S[se-1];return-1===tn.indexOf(ge)?(E.push(E[se-1]),S.push(ge)):(E.push(se),S.push(et))}return E.push(se),31===xe?S.push("strict"===C?Li:ei):xe===ji||29===xe?S.push(et):43===xe?S.push($>=131072&&$<=196605||$>=196608&&$<=262141?ei:et):void S.push(xe)}),[E,S,N]}(M,C.lineBreak),E=S[0],N=S[1],$=S[2];return("break-all"===C.wordBreak||"break-word"===C.wordBreak)&&(N=N.map(function(xe){return-1!==[Xr,et,ji].indexOf(xe)?ei:xe})),[E,N,"keep-all"===C.wordBreak?$.map(function(xe,ge){return xe&&M[ge]>=19968&&M[ge]<=40959}):void 0]},En=function(){function M(C,S,E,N){this.codePoints=C,this.required="!"===S,this.start=E,this.end=N}return M.prototype.slice=function(){return X.apply(void 0,this.codePoints.slice(this.start,this.end))},M}(),On=function(M){return M>=48&&M<=57},ba=function(M){return On(M)||M>=65&&M<=70||M>=97&&M<=102},oA=function(M){return 10===M||9===M||32===M},cf=function(M){return function(M){return function(M){return M>=97&&M<=122}(M)||function(M){return M>=65&&M<=90}(M)}(M)||function(M){return M>=128}(M)||95===M},kx=function(M){return cf(M)||On(M)||45===M},v0=function(M){return M>=0&&M<=8||11===M||M>=14&&M<=31||127===M},Nd=function(M,C){return 92===M&&10!==C},rl=function(M,C,S){return 45===M?cf(C)||Nd(C,S):!!cf(M)||!(92!==M||!Nd(M,C))},Xu=function(M,C,S){return 43===M||45===M?!!On(C)||46===C&&On(S):On(46===M?C:M)},va=function(M){var C=0,S=1;(43===M[C]||45===M[C])&&(45===M[C]&&(S=-1),C++);for(var E=[];On(M[C]);)E.push(M[C++]);var N=E.length?parseInt(X.apply(void 0,E),10):0;46===M[C]&&C++;for(var $=[];On(M[C]);)$.push(M[C++]);var se=$.length,xe=se?parseInt(X.apply(void 0,$),10):0;(69===M[C]||101===M[C])&&C++;var ge=1;(43===M[C]||45===M[C])&&(45===M[C]&&(ge=-1),C++);for(var Xe=[];On(M[C]);)Xe.push(M[C++]);var tt=Xe.length?parseInt(X.apply(void 0,Xe),10):0;return S*(N+xe*Math.pow(10,-se))*Math.pow(10,ge*tt)},_c={type:2},Rx={type:3},df={type:4},sA={type:13},y0={type:8},aA={type:21},w0={type:9},GP={type:10},ya={type:11},x0={type:12},uf={type:14},Ev={type:23},Sv={type:1},Fl={type:25},Tr={type:24},bc={type:26},Px={type:27},C0={type:28},lA={type:29},cA={type:31},vc={type:32},Zc=function(){function M(){this._value=[]}return M.prototype.write=function(C){this._value=this._value.concat(V(C))},M.prototype.read=function(){for(var C=[],S=this.consumeToken();S!==vc;)C.push(S),S=this.consumeToken();return C},M.prototype.consumeToken=function(){var C=this.consumeCodePoint();switch(C){case 34:return this.consumeStringToken(34);case 35:var S=this.peekCodePoint(0),E=this.peekCodePoint(1),N=this.peekCodePoint(2);if(kx(S)||Nd(E,N)){var $=rl(S,E,N)?2:1;return{type:5,value:this.consumeName(),flags:$}}break;case 36:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),sA;break;case 39:return this.consumeStringToken(39);case 40:return _c;case 41:return Rx;case 42:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),uf;break;case 43:if(Xu(C,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(C),this.consumeNumericToken();break;case 44:return df;case 45:var xe=C,ge=this.peekCodePoint(0),Xe=this.peekCodePoint(1);if(Xu(xe,ge,Xe))return this.reconsumeCodePoint(C),this.consumeNumericToken();if(rl(xe,ge,Xe))return this.reconsumeCodePoint(C),this.consumeIdentLikeToken();if(45===ge&&62===Xe)return this.consumeCodePoint(),this.consumeCodePoint(),Tr;break;case 46:if(Xu(C,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(C),this.consumeNumericToken();break;case 47:if(42===this.peekCodePoint(0))for(this.consumeCodePoint();;){var tt=this.consumeCodePoint();if(42===tt&&47===(tt=this.consumeCodePoint()))return this.consumeToken();if(-1===tt)return this.consumeToken()}break;case 58:return bc;case 59:return Px;case 60:if(33===this.peekCodePoint(0)&&45===this.peekCodePoint(1)&&45===this.peekCodePoint(2))return this.consumeCodePoint(),this.consumeCodePoint(),Fl;break;case 64:var mt=this.peekCodePoint(0),At=this.peekCodePoint(1),wn=this.peekCodePoint(2);if(rl(mt,At,wn))return{type:7,value:this.consumeName()};break;case 91:return C0;case 92:if(Nd(C,this.peekCodePoint(0)))return this.reconsumeCodePoint(C),this.consumeIdentLikeToken();break;case 93:return lA;case 61:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),y0;break;case 123:return ya;case 125:return x0;case 117:case 85:var An=this.peekCodePoint(0),Tn=this.peekCodePoint(1);return 43===An&&(ba(Tn)||63===Tn)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(C),this.consumeIdentLikeToken();case 124:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),w0;if(124===this.peekCodePoint(0))return this.consumeCodePoint(),aA;break;case 126:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),GP;break;case-1:return vc}return oA(C)?(this.consumeWhiteSpace(),cA):On(C)?(this.reconsumeCodePoint(C),this.consumeNumericToken()):cf(C)?(this.reconsumeCodePoint(C),this.consumeIdentLikeToken()):{type:6,value:X(C)}},M.prototype.consumeCodePoint=function(){var C=this._value.shift();return typeof C>"u"?-1:C},M.prototype.reconsumeCodePoint=function(C){this._value.unshift(C)},M.prototype.peekCodePoint=function(C){return C>=this._value.length?-1:this._value[C]},M.prototype.consumeUnicodeRangeToken=function(){for(var C=[],S=this.consumeCodePoint();ba(S)&&C.length<6;)C.push(S),S=this.consumeCodePoint();for(var E=!1;63===S&&C.length<6;)C.push(S),S=this.consumeCodePoint(),E=!0;if(E)return{type:30,start:parseInt(X.apply(void 0,C.map(function(ge){return 63===ge?48:ge})),16),end:parseInt(X.apply(void 0,C.map(function(ge){return 63===ge?70:ge})),16)};var se=parseInt(X.apply(void 0,C),16);if(45===this.peekCodePoint(0)&&ba(this.peekCodePoint(1))){this.consumeCodePoint(),S=this.consumeCodePoint();for(var xe=[];ba(S)&&xe.length<6;)xe.push(S),S=this.consumeCodePoint();return{type:30,start:se,end:parseInt(X.apply(void 0,xe),16)}}return{type:30,start:se,end:se}},M.prototype.consumeIdentLikeToken=function(){var C=this.consumeName();return"url"===C.toLowerCase()&&40===this.peekCodePoint(0)?(this.consumeCodePoint(),this.consumeUrlToken()):40===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:19,value:C}):{type:20,value:C}},M.prototype.consumeUrlToken=function(){var C=[];if(this.consumeWhiteSpace(),-1===this.peekCodePoint(0))return{type:22,value:""};var S=this.peekCodePoint(0);if(39===S||34===S){var E=this.consumeStringToken(this.consumeCodePoint());return 0===E.type&&(this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0))?(this.consumeCodePoint(),{type:22,value:E.value}):(this.consumeBadUrlRemnants(),Ev)}for(;;){var N=this.consumeCodePoint();if(-1===N||41===N)return{type:22,value:X.apply(void 0,C)};if(oA(N))return this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:22,value:X.apply(void 0,C)}):(this.consumeBadUrlRemnants(),Ev);if(34===N||39===N||40===N||v0(N))return this.consumeBadUrlRemnants(),Ev;if(92===N){if(!Nd(N,this.peekCodePoint(0)))return this.consumeBadUrlRemnants(),Ev;C.push(this.consumeEscapedCodePoint())}else C.push(N)}},M.prototype.consumeWhiteSpace=function(){for(;oA(this.peekCodePoint(0));)this.consumeCodePoint()},M.prototype.consumeBadUrlRemnants=function(){for(;;){var C=this.consumeCodePoint();if(41===C||-1===C)return;Nd(C,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},M.prototype.consumeStringSlice=function(C){for(var E="";C>0;){var N=Math.min(5e4,C);E+=X.apply(void 0,this._value.splice(0,N)),C-=N}return this._value.shift(),E},M.prototype.consumeStringToken=function(C){for(var S="",E=0;;){var N=this._value[E];if(-1===N||void 0===N||N===C)return{type:0,value:S+=this.consumeStringSlice(E)};if(10===N)return this._value.splice(0,E),Sv;if(92===N){var $=this._value[E+1];-1!==$&&void 0!==$&&(10===$?(S+=this.consumeStringSlice(E),E=-1,this._value.shift()):Nd(N,$)&&(S+=this.consumeStringSlice(E),S+=X(this.consumeEscapedCodePoint()),E=-1))}E++}},M.prototype.consumeNumber=function(){var C=[],S=4,E=this.peekCodePoint(0);for((43===E||45===E)&&C.push(this.consumeCodePoint());On(this.peekCodePoint(0));)C.push(this.consumeCodePoint());E=this.peekCodePoint(0);var N=this.peekCodePoint(1);if(46===E&&On(N))for(C.push(this.consumeCodePoint(),this.consumeCodePoint()),S=8;On(this.peekCodePoint(0));)C.push(this.consumeCodePoint());E=this.peekCodePoint(0),N=this.peekCodePoint(1);var $=this.peekCodePoint(2);if((69===E||101===E)&&((43===N||45===N)&&On($)||On(N)))for(C.push(this.consumeCodePoint(),this.consumeCodePoint()),S=8;On(this.peekCodePoint(0));)C.push(this.consumeCodePoint());return[va(C),S]},M.prototype.consumeNumericToken=function(){var C=this.consumeNumber(),S=C[0],E=C[1],N=this.peekCodePoint(0),$=this.peekCodePoint(1),se=this.peekCodePoint(2);return rl(N,$,se)?{type:15,number:S,flags:E,unit:this.consumeName()}:37===N?(this.consumeCodePoint(),{type:16,number:S,flags:E}):{type:17,number:S,flags:E}},M.prototype.consumeEscapedCodePoint=function(){var C=this.consumeCodePoint();if(ba(C)){for(var S=X(C);ba(this.peekCodePoint(0))&&S.length<6;)S+=X(this.consumeCodePoint());oA(this.peekCodePoint(0))&&this.consumeCodePoint();var E=parseInt(S,16);return 0===E||function(M){return M>=55296&&M<=57343}(E)||E>1114111?65533:E}return-1===C?65533:C},M.prototype.consumeName=function(){for(var C="";;){var S=this.consumeCodePoint();if(kx(S))C+=X(S);else{if(!Nd(S,this.peekCodePoint(0)))return this.reconsumeCodePoint(S),C;C+=X(this.consumeEscapedCodePoint())}}},M}(),Tv=function(){function M(C){this._tokens=C}return M.create=function(C){var S=new Zc;return S.write(C),new M(S.read())},M.parseValue=function(C){return M.create(C).parseComponentValue()},M.parseValues=function(C){return M.create(C).parseComponentValues()},M.prototype.parseComponentValue=function(){for(var C=this.consumeToken();31===C.type;)C=this.consumeToken();if(32===C.type)throw new SyntaxError("Error parsing CSS component value, unexpected EOF");this.reconsumeToken(C);var S=this.consumeComponentValue();do{C=this.consumeToken()}while(31===C.type);if(32===C.type)return S;throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")},M.prototype.parseComponentValues=function(){for(var C=[];;){var S=this.consumeComponentValue();if(32===S.type)return C;C.push(S),C.push()}},M.prototype.consumeComponentValue=function(){var C=this.consumeToken();switch(C.type){case 11:case 28:case 2:return this.consumeSimpleBlock(C.type);case 19:return this.consumeFunction(C)}return C},M.prototype.consumeSimpleBlock=function(C){for(var S={type:C,values:[]},E=this.consumeToken();;){if(32===E.type||Iv(E,C))return S;this.reconsumeToken(E),S.values.push(this.consumeComponentValue()),E=this.consumeToken()}},M.prototype.consumeFunction=function(C){for(var S={name:C.value,values:[],type:18};;){var E=this.consumeToken();if(32===E.type||3===E.type)return S;this.reconsumeToken(E),S.values.push(this.consumeComponentValue())}},M.prototype.consumeToken=function(){var C=this._tokens.shift();return typeof C>"u"?vc:C},M.prototype.reconsumeToken=function(C){this._tokens.unshift(C)},M}(),Ld=function(M){return 15===M.type},Ud=function(M){return 17===M.type},$r=function(M){return 20===M.type},dA=function(M){return 0===M.type},uA=function(M,C){return $r(M)&&M.value===C},M0=function(M){return 31!==M.type},Ku=function(M){return 31!==M.type&&4!==M.type},ol=function(M){var C=[],S=[];return M.forEach(function(E){if(4===E.type){if(0===S.length)throw new Error("Error parsing function args, zero tokens for arg");return C.push(S),void(S=[])}31!==E.type&&S.push(E)}),S.length&&C.push(S),C},Iv=function(M,C){return 11===C&&12===M.type||28===C&&29===M.type||2===C&&3===M.type},Jc=function(M){return 17===M.type||15===M.type},wi=function(M){return 16===M.type||Jc(M)},Ox=function(M){return M.length>1?[M[0],M[1]]:[M[0]]},ws={type:17,number:0,flags:4},Fv={type:16,number:50,flags:4},Vd={type:16,number:100,flags:4},hA=function(M,C,S){var E=M[0],N=M[1];return[mo(E,C),mo(typeof N<"u"?N:E,S)]},mo=function(M,C){if(16===M.type)return M.number/100*C;if(Ld(M))switch(M.unit){case"rem":case"em":return 16*M.number;default:return M.number}return M.number},fA_parse=function(M,C){if(15===C.type)switch(C.unit){case"deg":return Math.PI*C.number/180;case"grad":return Math.PI/200*C.number;case"rad":return C.number;case"turn":return 2*Math.PI*C.number}throw new Error("Unsupported angle type")},E0=function(M){return 15===M.type&&("deg"===M.unit||"grad"===M.unit||"rad"===M.unit||"turn"===M.unit)},kv=function(M){switch(M.filter($r).map(function(S){return S.value}).join(" ")){case"to bottom right":case"to right bottom":case"left top":case"top left":return[ws,ws];case"to top":case"bottom":return ra(0);case"to bottom left":case"to left bottom":case"right top":case"top right":return[ws,Vd];case"to right":case"left":return ra(90);case"to top left":case"to left top":case"right bottom":case"bottom right":return[Vd,Vd];case"to bottom":case"top":return ra(180);case"to top right":case"to right top":case"left bottom":case"bottom left":return[Vd,ws];case"to left":case"right":return ra(270)}return 0},ra=function(M){return Math.PI*M/180},sl_parse=function(M,C){if(18===C.type){var S=Ux[C.name];if(typeof S>"u")throw new Error('Attempting to parse an unsupported color function "'+C.name+'"');return S(M,C.values)}if(5===C.type){if(3===C.value.length){var E=C.value.substring(0,1),N=C.value.substring(1,2),$=C.value.substring(2,3);return $i(parseInt(E+E,16),parseInt(N+N,16),parseInt($+$,16),1)}if(4===C.value.length){E=C.value.substring(0,1),N=C.value.substring(1,2),$=C.value.substring(2,3);var se=C.value.substring(3,4);return $i(parseInt(E+E,16),parseInt(N+N,16),parseInt($+$,16),parseInt(se+se,16)/255)}if(6===C.value.length)return E=C.value.substring(0,2),N=C.value.substring(2,4),$=C.value.substring(4,6),$i(parseInt(E,16),parseInt(N,16),parseInt($,16),1);if(8===C.value.length)return E=C.value.substring(0,2),N=C.value.substring(2,4),$=C.value.substring(4,6),se=C.value.substring(6,8),$i(parseInt(E,16),parseInt(N,16),parseInt($,16),parseInt(se,16)/255)}if(20===C.type){var xe=xa[C.value.toUpperCase()];if(typeof xe<"u")return xe}return xa.TRANSPARENT},wa=function(M){return!(255&M)},ds=function(M){var C=255&M,S=255&M>>8,E=255&M>>16,N=255&M>>24;return C<255?"rgba("+N+","+E+","+S+","+C/255+")":"rgb("+N+","+E+","+S+")"},$i=function(M,C,S,E){return(M<<24|C<<16|S<<8|Math.round(255*E))>>>0},Uo=function(M,C){if(17===M.type)return M.number;if(16===M.type){var S=3===C?1:255;return 3===C?M.number/100*S:Math.round(M.number/100*S)}return 0},Jo=function(M,C){var S=C.filter(Ku);if(3===S.length){var E=S.map(Uo);return $i(E[0],E[1],E[2],1)}if(4===S.length){var xe=S.map(Uo);return $i(xe[0],xe[1],xe[2],xe[3])}return 0};function ed(M,C,S){return S<0&&(S+=1),S>=1&&(S-=1),S<1/6?(C-M)*S*6+M:S<.5?C:S<2/3?6*(C-M)*(2/3-S)+M:M}var ks=function(M,C){var S=C.filter(Ku),E=S[0],N=S[1],$=S[2],se=S[3],xe=(17===E.type?ra(E.number):fA_parse(M,E))/(2*Math.PI),ge=wi(N)?N.number/100:0,Xe=wi($)?$.number/100:0,tt=typeof se<"u"&&wi(se)?mo(se,1):1;if(0===ge)return $i(255*Xe,255*Xe,255*Xe,1);var mt=Xe<=.5?Xe*(ge+1):Xe+ge-Xe*ge,At=2*Xe-mt,wn=ed(At,mt,xe+1/3),An=ed(At,mt,xe),Tn=ed(At,mt,xe-1/3);return $i(255*wn,255*An,255*Tn,tt)},Ux={hsl:ks,hsla:ks,rgb:Jo,rgba:Jo},td=function(M,C){return sl_parse(M,Tv.create(C).parseComponentValue())},xa={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},Rv={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:function(M,C){return C.map(function(S){if($r(S))switch(S.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},Vx={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},yc=function(M,C){var S=sl_parse(M,C[0]),E=C[1];return E&&wi(E)?{color:S,stop:E}:{color:S,stop:null}},Hd=function(M,C){var S=M[0],E=M[M.length-1];null===S.stop&&(S.stop=ws),null===E.stop&&(E.stop=Vd);for(var N=[],$=0,se=0;se$?ge:$),$=ge}else N.push(null)}var Xe=null;for(se=0;sese.optimumDistance)?{optimumCorner:xe,optimumDistance:tt}:se},{optimumDistance:N?1/0:-1/0,optimumCorner:null}).optimumCorner},hf=function(M,C){var S=ra(180),E=[];return ol(C).forEach(function(N,$){if(0===$){var se=N[0];if(20===se.type&&-1!==["top","left","right","bottom"].indexOf(se.value))return void(S=kv(N));if(E0(se))return void(S=(fA_parse(M,se)+ra(270))%ra(360))}var xe=yc(M,N);E.push(xe)}),{angle:S,stops:E,type:1}},S0="closest-side",nd="farthest-side",Nv="closest-corner",T0="farthest-corner",zx="ellipse",pf="contain",id=function(M,C){var S=0,E=3,N=[],$=[];return ol(C).forEach(function(se,xe){var ge=!0;if(0===xe?ge=se.reduce(function(tt,mt){if($r(mt))switch(mt.value){case"center":return $.push(Fv),!1;case"top":case"left":return $.push(ws),!1;case"right":case"bottom":return $.push(Vd),!1}else if(wi(mt)||Jc(mt))return $.push(mt),!1;return tt},ge):1===xe&&(ge=se.reduce(function(tt,mt){if($r(mt))switch(mt.value){case"circle":return S=0,!1;case zx:return S=1,!1;case pf:case S0:return E=0,!1;case nd:return E=1,!1;case Nv:return E=2,!1;case"cover":case T0:return E=3,!1}else if(Jc(mt)||wi(mt))return Array.isArray(E)||(E=[]),E.push(mt),!1;return tt},ge)),ge){var Xe=yc(M,se);N.push(Xe)}}),{size:E,shape:S,stops:N,position:$,type:2}},Uv_parse=function(M,C){if(22===C.type){var S={url:C.value,type:0};return M.cache.addImage(C.value),S}if(18===C.type){var E=Yu[C.name];if(typeof E>"u")throw new Error('Attempting to parse an unsupported image function "'+C.name+'"');return E(M,C.values)}throw new Error("Unsupported image type "+C.type)};for(var Yu={"linear-gradient":function(M,C){var S=ra(180),E=[];return ol(C).forEach(function(N,$){if(0===$){var se=N[0];if(20===se.type&&"to"===se.value)return void(S=kv(N));if(E0(se))return void(S=fA_parse(M,se))}var xe=yc(M,N);E.push(xe)}),{angle:S,stops:E,type:1}},"-moz-linear-gradient":hf,"-ms-linear-gradient":hf,"-o-linear-gradient":hf,"-webkit-linear-gradient":hf,"radial-gradient":function(M,C){var S=0,E=3,N=[],$=[];return ol(C).forEach(function(se,xe){var ge=!0;if(0===xe){var Xe=!1;ge=se.reduce(function(mt,At){if(Xe)if($r(At))switch(At.value){case"center":return $.push(Fv),mt;case"top":case"left":return $.push(ws),mt;case"right":case"bottom":return $.push(Vd),mt}else(wi(At)||Jc(At))&&$.push(At);else if($r(At))switch(At.value){case"circle":return S=0,!1;case zx:return S=1,!1;case"at":return Xe=!0,!1;case S0:return E=0,!1;case"cover":case nd:return E=1,!1;case pf:case Nv:return E=2,!1;case T0:return E=3,!1}else if(Jc(At)||wi(At))return Array.isArray(E)||(E=[]),E.push(At),!1;return mt},ge)}if(ge){var tt=yc(M,se);N.push(tt)}}),{size:E,shape:S,stops:N,position:$,type:2}},"-moz-radial-gradient":id,"-ms-radial-gradient":id,"-o-radial-gradient":id,"-webkit-radial-gradient":id,"-webkit-gradient":function(M,C){var S=ra(180),E=[],N=1;return ol(C).forEach(function(ge,Xe){var tt=ge[0];if(0===Xe){if($r(tt)&&"linear"===tt.value)return void(N=1);if($r(tt)&&"radial"===tt.value)return void(N=2)}if(18===tt.type)if("from"===tt.name){var mt=sl_parse(M,tt.values[0]);E.push({stop:ws,color:mt})}else if("to"===tt.name)mt=sl_parse(M,tt.values[0]),E.push({stop:Vd,color:mt});else if("color-stop"===tt.name){var At=tt.values.filter(Ku);if(2===At.length){mt=sl_parse(M,At[1]);var wn=At[0];Ud(wn)&&E.push({stop:{type:16,number:100*wn.number,flags:wn.flags},color:mt})}}}),1===N?{angle:(S+ra(180))%ra(360),stops:E,type:N}:{size:3,shape:0,stops:E,position:[],type:N}}},q2={name:"background-image",initialValue:"none",type:1,prefix:!1,parse:function(M,C){if(0===C.length)return[];var S=C[0];return 20===S.type&&"none"===S.value?[]:C.filter(function(E){return Ku(E)&&function Gx(M){return!(20===M.type&&"none"===M.value||18===M.type&&!Yu[M.name])}(E)}).map(function(E){return Uv_parse(M,E)})}},W2={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:function(M,C){return C.map(function(S){if($r(S))switch(S.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},X2={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:function(M,C){return ol(C).map(function(S){return S.filter(wi)}).map(Ox)}},Vv={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:function(M,C){return ol(C).map(function(S){return S.filter($r).map(function(E){return E.value}).join(" ")}).map(I0)}},I0=function(M){switch(M){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;default:return 0}},Af=function(M){return M.AUTO="auto",M.CONTAIN="contain",M.COVER="cover",M}(Af||{}),mf={name:"background-size",initialValue:"0",prefix:!1,type:1,parse:function(M,C){return ol(C).map(function(S){return S.filter(wc)})}},wc=function(M){return $r(M)||wi(M)},F0=function(M){return{name:"border-"+M+"-color",initialValue:"transparent",prefix:!1,type:3,format:"color"}},K2=F0("top"),es=F0("right"),AA=F0("bottom"),gf=F0("left"),rd=function(M){return{name:"border-radius-"+M,initialValue:"0 0",prefix:!1,type:1,parse:function(C,S){return Ox(S.filter(wi))}}},jx=rd("top-left"),$x=rd("top-right"),qx=rd("bottom-right"),D0=rd("bottom-left"),_f=function(M){return{name:"border-"+M+"-style",initialValue:"solid",prefix:!1,type:2,parse:function(C,S){switch(S){case"none":return 0;case"dashed":return 2;case"dotted":return 3;case"double":return 4}return 1}}},Hv=_f("top"),bf=_f("right"),vf=_f("bottom"),to=_f("left"),en=function(M){return{name:"border-"+M+"-width",initialValue:"0",type:0,prefix:!1,parse:function(C,S){return Ld(S)?S.number:0}}},xi=en("top"),$o=en("right"),ll=en("bottom"),xs=en("left"),Gs={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},Zu={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:function(M,C){return"rtl"===C?1:0}},no={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:function(M,C){return C.filter($r).reduce(function(S,E){return S|Vo(E.value)},0)}},Vo=function(M){switch(M){case"block":case"-webkit-box":return 2;case"inline":return 4;case"run-in":return 8;case"flow":return 16;case"flow-root":return 32;case"table":return 64;case"flex":case"-webkit-flex":return 128;case"grid":case"-ms-grid":return 256;case"ruby":return 512;case"subgrid":return 1024;case"list-item":return 2048;case"table-row-group":return 4096;case"table-header-group":return 8192;case"table-footer-group":return 16384;case"table-row":return 32768;case"table-cell":return 65536;case"table-column-group":return 131072;case"table-column":return 262144;case"table-caption":return 524288;case"ruby-base":return 1048576;case"ruby-text":return 2097152;case"ruby-base-container":return 4194304;case"ruby-text-container":return 8388608;case"contents":return 16777216;case"inline-block":return 33554432;case"inline-list-item":return 67108864;case"inline-table":return 134217728;case"inline-flex":return 268435456;case"inline-grid":return 536870912}return 0},La={name:"float",initialValue:"none",prefix:!1,type:2,parse:function(M,C){switch(C){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},Oi={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:function(M,C){return 20===C.type&&"normal"===C.value?0:17===C.type||15===C.type?C.number:0}},Qd=function(M){return M.NORMAL="normal",M.STRICT="strict",M}(Qd||{}),Wx={name:"line-break",initialValue:"normal",prefix:!1,type:2,parse:function(M,C){return"strict"===C?Qd.STRICT:Qd.NORMAL}},zd={name:"line-height",initialValue:"normal",prefix:!1,type:4},go=function(M,C){return $r(M)&&"normal"===M.value?1.2*C:17===M.type?C*M.number:wi(M)?mo(M,C):C},xc={name:"list-style-image",initialValue:"none",type:0,prefix:!1,parse:function(M,C){return 20===C.type&&"none"===C.value?null:Uv_parse(M,C)}},Gd={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:function(M,C){return"inside"===C?0:1}},cl={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:function(M,C){switch(C){case"disc":return 0;case"circle":return 1;case"square":return 2;case"decimal":return 3;case"cjk-decimal":return 4;case"decimal-leading-zero":return 5;case"lower-roman":return 6;case"upper-roman":return 7;case"lower-greek":return 8;case"lower-alpha":return 9;case"upper-alpha":return 10;case"arabic-indic":return 11;case"armenian":return 12;case"bengali":return 13;case"cambodian":return 14;case"cjk-earthly-branch":return 15;case"cjk-heavenly-stem":return 16;case"cjk-ideographic":return 17;case"devanagari":return 18;case"ethiopic-numeric":return 19;case"georgian":return 20;case"gujarati":return 21;case"gurmukhi":case"hebrew":return 22;case"hiragana":return 23;case"hiragana-iroha":return 24;case"japanese-formal":return 25;case"japanese-informal":return 26;case"kannada":return 27;case"katakana":return 28;case"katakana-iroha":return 29;case"khmer":return 30;case"korean-hangul-formal":return 31;case"korean-hanja-formal":return 32;case"korean-hanja-informal":return 33;case"lao":return 34;case"lower-armenian":return 35;case"malayalam":return 36;case"mongolian":return 37;case"myanmar":return 38;case"oriya":return 39;case"persian":return 40;case"simp-chinese-formal":return 41;case"simp-chinese-informal":return 42;case"tamil":return 43;case"telugu":return 44;case"thai":return 45;case"tibetan":return 46;case"trad-chinese-formal":return 47;case"trad-chinese-informal":return 48;case"upper-armenian":return 49;case"disclosure-open":return 50;case"disclosure-closed":return 51;default:return-1}}},Dl=function(M){return{name:"margin-"+M,initialValue:"0",prefix:!1,type:4}},Qv=Dl("top"),od=Dl("right"),mA=Dl("bottom"),Ua=Dl("left"),hi={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:function(M,C){return C.filter($r).map(function(S){switch(S.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;default:return 0}})}},gA={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:function(M,C){return"break-word"===C?"break-word":"normal"}},jd=function(M){return{name:"padding-"+M,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}},Bl=jd("top"),_A=jd("right"),Ju=jd("bottom"),Ho=jd("left"),B0={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:function(M,C){switch(C){case"right":return 2;case"center":case"justify":return 1;default:return 0}}},us={name:"position",initialValue:"static",prefix:!1,type:2,parse:function(M,C){switch(C){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},Rs={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:function(M,C){return 1===C.length&&uA(C[0],"none")?[]:ol(C).map(function(S){for(var E={color:xa.TRANSPARENT,offsetX:ws,offsetY:ws,blur:ws},N=0,$=0;$"u")throw new Error('Attempting to parse an unsupported transform function "'+C.name+'"');return S(C.values)}return null}},bA={matrix:function(M){var C=M.filter(function(S){return 17===S.type}).map(function(S){return S.number});return 6===C.length?C:null},matrix3d:function(M){var C=M.filter(function(ge){return 17===ge.type}).map(function(ge){return ge.number});return 16===C.length?[C[0],C[1],C[4],C[5],C[12],C[13]]:null}},vA={type:16,number:50,flags:4},Xx=[vA,vA],P0={name:"transform-origin",initialValue:"50% 50%",prefix:!0,type:1,parse:function(M,C){var S=C.filter(wi);return 2!==S.length?Xx:[S[0],S[1]]}},O0={name:"visible",initialValue:"none",prefix:!1,type:2,parse:function(M,C){switch(C){case"hidden":return 1;case"collapse":return 2;default:return 0}}},N0=function(M){return M.NORMAL="normal",M.BREAK_ALL="break-all",M.KEEP_ALL="keep-all",M}(N0||{}),zv={name:"word-break",initialValue:"normal",prefix:!1,type:2,parse:function(M,C){switch(C){case"break-all":return N0.BREAK_ALL;case"keep-all":return N0.KEEP_ALL;default:return N0.NORMAL}}},jP={name:"z-index",initialValue:"auto",prefix:!1,type:0,parse:function(M,C){if(20===C.type)return{auto:!0,order:0};if(Ud(C))return{auto:!1,order:C.number};throw new Error("Invalid z-index number parsed")}},Kx={name:"time",parse:function(M,C){if(15===C.type)switch(C.unit.toLowerCase()){case"s":return 1e3*C.number;case"ms":return C.number}throw new Error("Unsupported time type")}},$P={name:"opacity",initialValue:"1",type:0,prefix:!1,parse:function(M,C){return Ud(C)?C.number:1}},qP={name:"text-decoration-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},WP={name:"text-decoration-line",initialValue:"none",prefix:!1,type:1,parse:function(M,C){return C.filter($r).map(function(S){switch(S.value){case"underline":return 1;case"overline":return 2;case"line-through":return 3;case"none":return 4}return 0}).filter(function(S){return 0!==S})}},XP={name:"font-family",initialValue:"",prefix:!1,type:1,parse:function(M,C){var S=[],E=[];return C.forEach(function(N){switch(N.type){case 20:case 0:S.push(N.value);break;case 17:S.push(N.number.toString());break;case 4:E.push(S.join(" ")),S.length=0}}),S.length&&E.push(S.join(" ")),E.map(function(N){return-1===N.indexOf(" ")?N:"'"+N+"'"})}},KP={name:"font-size",initialValue:"0",prefix:!1,type:3,format:"length"},YP={name:"font-weight",initialValue:"normal",type:0,prefix:!1,parse:function(M,C){return Ud(C)?C.number:$r(C)&&"bold"===C.value?700:400}},ZP={name:"font-variant",initialValue:"none",type:1,prefix:!1,parse:function(M,C){return C.filter($r).map(function(S){return S.value})}},JP={name:"font-style",initialValue:"normal",prefix:!1,type:2,parse:function(M,C){switch(C){case"oblique":return"oblique";case"italic":return"italic";default:return"normal"}}},wo=function(M,C){return!!(M&C)},L0={name:"content",initialValue:"none",type:1,prefix:!1,parse:function(M,C){if(0===C.length)return[];var S=C[0];return 20===S.type&&"none"===S.value?[]:C}},Yx={name:"counter-increment",initialValue:"none",prefix:!0,type:1,parse:function(M,C){if(0===C.length)return null;var S=C[0];if(20===S.type&&"none"===S.value)return null;for(var E=[],N=C.filter(M0),$=0;$1?1:0],this.overflowWrap=un(C,gA,S.overflowWrap),this.paddingTop=un(C,Bl,S.paddingTop),this.paddingRight=un(C,_A,S.paddingRight),this.paddingBottom=un(C,Ju,S.paddingBottom),this.paddingLeft=un(C,Ho,S.paddingLeft),this.paintOrder=un(C,Z2,S.paintOrder),this.position=un(C,us,S.position),this.textAlign=un(C,B0,S.textAlign),this.textDecorationColor=un(C,qP,null!==(E=S.textDecorationColor)&&void 0!==E?E:S.color),this.textDecorationLine=un(C,WP,null!==(N=S.textDecorationLine)&&void 0!==N?N:S.textDecoration),this.textShadow=un(C,Rs,S.textShadow),this.textTransform=un(C,k0,S.textTransform),this.transform=un(C,eh,S.transform),this.transformOrigin=un(C,P0,S.transformOrigin),this.visibility=un(C,O0,S.visibility),this.webkitTextStrokeColor=un(C,U0,S.webkitTextStrokeColor),this.webkitTextStrokeWidth=un(C,Mn,S.webkitTextStrokeWidth),this.wordBreak=un(C,zv,S.wordBreak),this.zIndex=un(C,jP,S.zIndex)}return M.prototype.isVisible=function(){return this.display>0&&this.opacity>0&&0===this.visibility},M.prototype.isTransparent=function(){return wa(this.backgroundColor)},M.prototype.isTransformed=function(){return null!==this.transform},M.prototype.isPositioned=function(){return 0!==this.position},M.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},M.prototype.isFloating=function(){return 0!==this.float},M.prototype.isInlineLevel=function(){return wo(this.display,4)||wo(this.display,33554432)||wo(this.display,268435456)||wo(this.display,536870912)||wo(this.display,67108864)||wo(this.display,134217728)},M}(),qr=function(){return function M(C,S){this.content=un(C,L0,S.content),this.quotes=un(C,t4,S.quotes)}}(),mi=function(){return function M(C,S){this.counterIncrement=un(C,Yx,S.counterIncrement),this.counterReset=un(C,Zx,S.counterReset)}}(),un=function(M,C,S){var E=new Zc,N=null!==S&&typeof S<"u"?S.toString():C.initialValue;E.write(N);var $=new Tv(E.read());switch(C.type){case 2:var se=$.parseComponentValue();return C.parse(M,$r(se)?se.value:C.initialValue);case 0:return C.parse(M,$.parseComponentValue());case 1:return C.parse(M,$.parseComponentValues());case 4:return $.parseComponentValue();case 3:switch(C.format){case"angle":return fA_parse(M,$.parseComponentValue());case"color":return sl_parse(M,$.parseComponentValue());case"image":return Uv_parse(M,$.parseComponentValue());case"length":var xe=$.parseComponentValue();return Jc(xe)?xe:ws;case"length-percentage":var ge=$.parseComponentValue();return wi(ge)?ge:ws;case"time":return Kx.parse(M,$.parseComponentValue())}}},yf=function(M,C){var S=function(M){switch(M.getAttribute("data-html2canvas-debug")){case"all":return 1;case"clone":return 2;case"parse":return 3;case"render":return 4;default:return 0}}(M);return 1===S||C===S},Ma=function(){return function M(C,S){this.context=C,this.textNodes=[],this.elements=[],this.flags=0,yf(S,3),this.styles=new $d(C,window.getComputedStyle(S,null)),Bf(S)&&(this.styles.animationDuration.some(function(E){return E>0})&&(S.style.animationDuration="0s"),null!==this.styles.transform&&(S.style.transform="none")),this.bounds=L(this.context,S),yf(S,4)&&(this.flags|=16)}}(),wf="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Pl=typeof Uint8Array>"u"?[]:new Uint8Array(256),cr=0;cr<64;cr++)Pl[wf.charCodeAt(cr)]=cr;for(var Mf=function(M,C,S){return M.slice?M.slice(C,S):new Uint16Array(Array.prototype.slice.call(M,C,S))},CA=function(){function M(C,S,E,N,$,se){this.initialValue=C,this.errorValue=S,this.highStart=E,this.highValueIndex=N,this.index=$,this.data=se}return M.prototype.get=function(C){var S;if(C>=0){if(C<55296||C>56319&&C<=65535)return this.data[S=((S=this.index[C>>5])<<2)+(31&C)];if(C<=65535)return this.data[S=((S=this.index[2048+(C-55296>>5)])<<2)+(31&C)];if(C>11)],this.data[S=((S=this.index[S+=C>>5&63])<<2)+(31&C)];if(C<=1114111)return this.data[this.highValueIndex]}return this.errorValue},M}(),th="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",G0=typeof Uint8Array>"u"?[]:new Uint8Array(256),j0=0;j0<64;j0++)G0[th.charCodeAt(j0)]=j0;var Xv=8,q0=9,Kv=11,Pt=12,Yv=function(){for(var M=[],C=0;C>10),se%1024+56320),(N+1===S||E.length>16384)&&($+=String.fromCharCode.apply(String,E),E.length=0)}return $},SA=function(M){var S=function(M){var E,$,se,xe,ge,C=.75*M.length,S=M.length,N=0;"="===M[M.length-1]&&(C--,"="===M[M.length-2]&&C--);var Xe=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(C):new Array(C),tt=Array.isArray(Xe)?Xe:new Uint8Array(Xe);for(E=0;E>4,tt[N++]=(15&se)<<4|xe>>2,tt[N++]=(3&xe)<<6|63≥return Xe}(M),E=Array.isArray(S)?function(M){for(var C=M.length,S=[],E=0;E=55296&&N<=56319&&S=S)return{done:!0,value:null};for(var se="\xd7";Ese.x||tt.y>se.y;return se=tt,0===Xe||mt});return M.body.removeChild(C),xe}(document);return Object.defineProperty(hs,"SUPPORT_WORD_BREAKING",{value:M}),M},get SUPPORT_SVG_DRAWING(){var M=function(M){var C=new Image,S=M.createElement("canvas"),E=S.getContext("2d");if(!E)return!1;C.src="data:image/svg+xml,";try{E.drawImage(C,0,0),S.toDataURL()}catch{return!1}return!0}(document);return Object.defineProperty(hs,"SUPPORT_SVG_DRAWING",{value:M}),M},get SUPPORT_FOREIGNOBJECT_DRAWING(){var M="function"==typeof Array.from&&"function"==typeof window.fetch?function(M){var C=M.createElement("canvas"),S=100;C.width=S,C.height=S;var E=C.getContext("2d");if(!E)return Promise.reject(!1);E.fillStyle="rgb(0, 255, 0)",E.fillRect(0,0,S,S);var N=new Image,$=C.toDataURL();N.src=$;var se=Rr(S,S,0,0,N);return E.fillStyle="red",E.fillRect(0,0,S,S),Jv(se).then(function(xe){E.drawImage(xe,0,0);var ge=E.getImageData(0,0,S,S).data;E.fillStyle="red",E.fillRect(0,0,S,S);var Xe=M.createElement("div");return Xe.style.backgroundImage="url("+$+")",Xe.style.height=S+"px",IA(ge)?Jv(Rr(S,S,0,0,Xe)):Promise.reject(!1)}).then(function(xe){return E.drawImage(xe,0,0),IA(E.getImageData(0,0,S,S).data)}).catch(function(){return!1})}(document):Promise.resolve(!1);return Object.defineProperty(hs,"SUPPORT_FOREIGNOBJECT_DRAWING",{value:M}),M},get SUPPORT_CORS_IMAGES(){var M=typeof(new Image).crossOrigin<"u";return Object.defineProperty(hs,"SUPPORT_CORS_IMAGES",{value:M}),M},get SUPPORT_RESPONSE_TYPE(){var M="string"==typeof(new XMLHttpRequest).responseType;return Object.defineProperty(hs,"SUPPORT_RESPONSE_TYPE",{value:M}),M},get SUPPORT_CORS_XHR(){var M="withCredentials"in new XMLHttpRequest;return Object.defineProperty(hs,"SUPPORT_CORS_XHR",{value:M}),M},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var M=!!(typeof Intl<"u"&&Intl.Segmenter);return Object.defineProperty(hs,"SUPPORT_NATIVE_TEXT_SEGMENTATION",{value:M}),M}},Ef=function(){return function M(C,S){this.text=C,this.bounds=S}}(),FA=function(M,C){var S=C.ownerDocument;if(S){var E=S.createElement("html2canvaswrapper");E.appendChild(C.cloneNode(!0));var N=C.parentNode;if(N){N.replaceChild(E,C);var $=L(M,E);return E.firstChild&&N.replaceChild(E.firstChild,E),$}}return U.EMPTY},DA=function(M,C,S){var E=M.ownerDocument;if(!E)throw new Error("Node has no owner document");var N=E.createRange();return N.setStart(M,C),N.setEnd(M,C+S),N},Sf=function(M){if(hs.SUPPORT_NATIVE_TEXT_SEGMENTATION){var C=new Intl.Segmenter(void 0,{granularity:"grapheme"});return Array.from(C.segment(M)).map(function(S){return S.segment})}return function(M){for(var E,C=tC(M),S=[];!(E=C.next()).done;)E.value&&S.push(E.value.slice());return S}(M)},J0=function(M,C){return 0!==C.letterSpacing?Sf(M):function(M,C){if(hs.SUPPORT_NATIVE_TEXT_SEGMENTATION){var S=new Intl.Segmenter(void 0,{granularity:"word"});return Array.from(S.segment(M)).map(function(E){return E.segment})}return Tf(M,C)}(M,C)},e_=[32,160,4961,65792,65793,4153,4241],Tf=function(M,C){for(var N,S=function(M,C){var S=V(M),E=Ar(S,C),N=E[0],$=E[1],se=E[2],xe=S.length,ge=0,Xe=0;return{next:function(){if(Xe>=xe)return{done:!0,value:null};for(var tt=Ei;Xe0)if(hs.SUPPORT_RANGE_BOUNDS){var ge=DA(E,se,xe.length).getClientRects();if(ge.length>1){var Xe=Sf(xe),tt=0;Xe.forEach(function(At){$.push(new Ef(At,U.fromDOMRectList(M,DA(E,tt+se,At.length).getClientRects()))),tt+=At.length})}else $.push(new Ef(xe,U.fromDOMRectList(M,ge)))}else{var mt=E.splitText(xe.length);$.push(new Ef(xe,FA(M,E))),E=mt}else hs.SUPPORT_RANGE_BOUNDS||(E=E.splitText(xe.length));se+=xe.length}),$}(C,this.text,E,S)}}(),nh=function(M,C){switch(C){case 1:return M.toLowerCase();case 3:return M.replace(ey,ul);case 2:return M.toUpperCase();default:return M}},ey=/(^|\s|:|-|\(|\))([a-z])/g,ul=function(M,C,S){return M.length>0?C+S.toUpperCase():M},kA=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N.src=E.currentSrc||E.src,N.intrinsicWidth=E.naturalWidth,N.intrinsicHeight=E.naturalHeight,N.context.cache.addImage(N.src),N}return v(C,M),C}(Ma),ty=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N.canvas=E,N.intrinsicWidth=E.width,N.intrinsicHeight=E.height,N}return v(C,M),C}(Ma),Xn=function(M){function C(S,E){var N=M.call(this,S,E)||this,$=new XMLSerializer,se=L(S,E);return E.setAttribute("width",se.width+"px"),E.setAttribute("height",se.height+"px"),N.svg="data:image/svg+xml,"+encodeURIComponent($.serializeToString(E)),N.intrinsicWidth=E.width.baseVal.value,N.intrinsicHeight=E.height.baseVal.value,N.context.cache.addImage(N.svg),N}return v(C,M),C}(Ma),ad=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N.value=E.value,N}return v(C,M),C}(Ma),kr=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N.start=E.start,N.reversed="boolean"==typeof E.reversed&&!0===E.reversed,N}return v(C,M),C}(Ma),ny=[{type:15,flags:0,unit:"px",number:3}],iy=[{type:16,flags:0,number:50}],RA="checkbox",If="radio",ih="password",hl=707406591,qd=function(M){function C(S,E){var N=M.call(this,S,E)||this;switch(N.type=E.type.toLowerCase(),N.checked=E.checked,N.value=function(M){var C=M.type===ih?new Array(M.value.length+1).join("\u2022"):M.value;return 0===C.length?M.placeholder||"":C}(E),(N.type===RA||N.type===If)&&(N.styles.backgroundColor=3739148031,N.styles.borderTopColor=N.styles.borderRightColor=N.styles.borderBottomColor=N.styles.borderLeftColor=2779096575,N.styles.borderTopWidth=N.styles.borderRightWidth=N.styles.borderBottomWidth=N.styles.borderLeftWidth=1,N.styles.borderTopStyle=N.styles.borderRightStyle=N.styles.borderBottomStyle=N.styles.borderLeftStyle=1,N.styles.backgroundClip=[0],N.styles.backgroundOrigin=[0],N.bounds=function(M){return M.width>M.height?new U(M.left+(M.width-M.height)/2,M.top,M.height,M.height):M.width0)S.textNodes.push(new BA(M,N,S.styles));else if(ld(N))if(HA(N)&&N.assignedNodes)N.assignedNodes().forEach(function(xe){return Wd(M,xe,S,E)});else{var se=Ff(M,N);se.styles.isVisible()&&(Df(N,se,E)?se.flags|=4:OA(se.styles)&&(se.flags|=2),-1!==oy.indexOf(N.tagName)&&(se.flags|=8),S.elements.push(se),N.shadowRoot?Wd(M,N.shadowRoot,se,E):!dd(N)&&!kf(N)&&!VA(N)&&Wd(M,N,se,E))}},Ff=function(M,C){return NA(C)?new kA(M,C):Rf(C)?new ty(M,C):kf(C)?new Xn(M,C):rC(C)?new ad(M,C):ly(C)?new kr(M,C):oC(C)?new qd(M,C):VA(C)?new PA(M,C):dd(C)?new bn(M,C):Xd(C)?new Vn(M,C):new Ma(M,C)},sy=function(M,C){var S=Ff(M,C);return S.flags|=4,Wd(M,C,S,S),S},Df=function(M,C,S){return C.styles.isPositionedWithZIndex()||C.styles.opacity<1||C.styles.isTransformed()||Ul(M)&&S.styles.isTransparent()},OA=function(M){return M.isPositioned()||M.isFloating()},ay=function(M){return M.nodeType===Node.TEXT_NODE},ld=function(M){return M.nodeType===Node.ELEMENT_NODE},Bf=function(M){return ld(M)&&typeof M.style<"u"&&!Mc(M)},Mc=function(M){return"object"==typeof M.className},rC=function(M){return"LI"===M.tagName},ly=function(M){return"OL"===M.tagName},oC=function(M){return"INPUT"===M.tagName},kf=function(M){return"svg"===M.tagName},Ul=function(M){return"BODY"===M.tagName},Rf=function(M){return"CANVAS"===M.tagName},cd=function(M){return"VIDEO"===M.tagName},NA=function(M){return"IMG"===M.tagName},Xd=function(M){return"IFRAME"===M.tagName},LA=function(M){return"STYLE"===M.tagName},dd=function(M){return"TEXTAREA"===M.tagName},VA=function(M){return"SELECT"===M.tagName},HA=function(M){return"SLOT"===M.tagName},QA=function(M){return M.tagName.indexOf("-")>0},zA=function(){function M(){this.counters={}}return M.prototype.getCounterValue=function(C){var S=this.counters[C];return S&&S.length?S[S.length-1]:1},M.prototype.getCounterValues=function(C){return this.counters[C]||[]},M.prototype.pop=function(C){var S=this;C.forEach(function(E){return S.counters[E].pop()})},M.prototype.parse=function(C){var S=this,E=C.counterIncrement,N=C.counterReset,$=!0;null!==E&&E.forEach(function(xe){var ge=S.counters[xe.counter];ge&&0!==xe.increment&&($=!1,ge.length||ge.push(1),ge[Math.max(0,ge.length-1)]+=xe.increment)});var se=[];return $&&N.forEach(function(xe){var ge=S.counters[xe.counter];se.push(xe.counter),ge||(ge=S.counters[xe.counter]=[]),ge.push(xe.reset)}),se},M}(),Ha={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]},t_={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u0554","\u0553","\u0552","\u0551","\u0550","\u054f","\u054e","\u054d","\u054c","\u054b","\u054a","\u0549","\u0548","\u0547","\u0546","\u0545","\u0544","\u0543","\u0542","\u0541","\u0540","\u053f","\u053e","\u053d","\u053c","\u053b","\u053a","\u0539","\u0538","\u0537","\u0536","\u0535","\u0534","\u0533","\u0532","\u0531"]},Pf={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:["\u05d9\u05f3","\u05d8\u05f3","\u05d7\u05f3","\u05d6\u05f3","\u05d5\u05f3","\u05d4\u05f3","\u05d3\u05f3","\u05d2\u05f3","\u05d1\u05f3","\u05d0\u05f3","\u05ea","\u05e9","\u05e8","\u05e7","\u05e6","\u05e4","\u05e2","\u05e1","\u05e0","\u05de","\u05dc","\u05db","\u05d9\u05d8","\u05d9\u05d7","\u05d9\u05d6","\u05d8\u05d6","\u05d8\u05d5","\u05d9","\u05d8","\u05d7","\u05d6","\u05d5","\u05d4","\u05d3","\u05d2","\u05d1","\u05d0"]},Kd={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u10f5","\u10f0","\u10ef","\u10f4","\u10ee","\u10ed","\u10ec","\u10eb","\u10ea","\u10e9","\u10e8","\u10e7","\u10e6","\u10e5","\u10e4","\u10f3","\u10e2","\u10e1","\u10e0","\u10df","\u10de","\u10dd","\u10f2","\u10dc","\u10db","\u10da","\u10d9","\u10d8","\u10d7","\u10f1","\u10d6","\u10d5","\u10d4","\u10d3","\u10d2","\u10d1","\u10d0"]},Ec=function(M,C,S,E,N,$){return MS?Sc(M,N,$.length>0):E.integers.reduce(function(se,xe,ge){for(;M>=xe;)M-=xe,se+=E.values[ge];return se},"")+$},ud=function(M,C,S,E){var N="";do{S||M--,N=E(M)+N,M/=C}while(M*C>=C);return N},_o=function(M,C,S,E,N){var $=S-C+1;return(M<0?"-":"")+(ud(Math.abs(M),$,E,function(se){return X(Math.floor(se%$)+C)})+N)},Ea=function(M,C,S){void 0===S&&(S=". ");var E=C.length;return ud(Math.abs(M),E,!1,function(N){return C[Math.floor(N%E)]})+S},fl=function(M,C,S,E,N,$){if(M<-9999||M>9999)return Sc(M,4,N.length>0);var se=Math.abs(M),xe=N;if(0===se)return C[0]+xe;for(var ge=0;se>0&&ge<=4;ge++){var Xe=se%10;0===Xe&&wo($,1)&&""!==xe?xe=C[Xe]+xe:Xe>1||1===Xe&&0===ge||1===Xe&&1===ge&&wo($,2)||1===Xe&&1===ge&&wo($,4)&&M>100||1===Xe&&ge>1&&wo($,8)?xe=C[Xe]+(ge>0?S[ge-1]:"")+xe:1===Xe&&ge>0&&(xe=S[ge-1]+xe),se=Math.floor(se/10)}return(M<0?E:"")+xe},GA="\ub9c8\uc774\ub108\uc2a4",Sc=function(M,C,S){var E=S?". ":"",N=S?"\u3001":"",$=S?", ":"",se=S?" ":"";switch(C){case 0:return"\u2022"+se;case 1:return"\u25e6"+se;case 2:return"\u25fe"+se;case 5:var xe=_o(M,48,57,!0,E);return xe.length<4?"0"+xe:xe;case 4:return Ea(M,"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",N);case 6:return Ec(M,1,3999,Ha,3,E).toLowerCase();case 7:return Ec(M,1,3999,Ha,3,E);case 8:return _o(M,945,969,!1,E);case 9:return _o(M,97,122,!1,E);case 10:return _o(M,65,90,!1,E);case 11:return _o(M,1632,1641,!0,E);case 12:case 49:return Ec(M,1,9999,t_,3,E);case 35:return Ec(M,1,9999,t_,3,E).toLowerCase();case 13:return _o(M,2534,2543,!0,E);case 14:case 30:return _o(M,6112,6121,!0,E);case 15:return Ea(M,"\u5b50\u4e11\u5bc5\u536f\u8fb0\u5df3\u5348\u672a\u7533\u9149\u620c\u4ea5",N);case 16:return Ea(M,"\u7532\u4e59\u4e19\u4e01\u620a\u5df1\u5e9a\u8f9b\u58ec\u7678",N);case 17:case 48:return fl(M,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u842c","\u8ca0",N,14);case 47:return fl(M,"\u96f6\u58f9\u8cb3\u53c3\u8086\u4f0d\u9678\u67d2\u634c\u7396","\u62fe\u4f70\u4edf\u842c","\u8ca0",N,15);case 42:return fl(M,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u842c","\u8d1f",N,14);case 41:return fl(M,"\u96f6\u58f9\u8d30\u53c1\u8086\u4f0d\u9646\u67d2\u634c\u7396","\u62fe\u4f70\u4edf\u842c","\u8d1f",N,15);case 26:return fl(M,"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u4e07","\u30de\u30a4\u30ca\u30b9",N,0);case 25:return fl(M,"\u96f6\u58f1\u5f10\u53c2\u56db\u4f0d\u516d\u4e03\u516b\u4e5d","\u62fe\u767e\u5343\u4e07","\u30de\u30a4\u30ca\u30b9",N,7);case 31:return fl(M,"\uc601\uc77c\uc774\uc0bc\uc0ac\uc624\uc721\uce60\ud314\uad6c","\uc2ed\ubc31\ucc9c\ub9cc",GA,$,7);case 33:return fl(M,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u842c",GA,$,0);case 32:return fl(M,"\u96f6\u58f9\u8cb3\u53c3\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u62fe\u767e\u5343",GA,$,7);case 18:return _o(M,2406,2415,!0,E);case 20:return Ec(M,1,19999,Kd,3,E);case 21:return _o(M,2790,2799,!0,E);case 22:return _o(M,2662,2671,!0,E);case 22:return Ec(M,1,10999,Pf,3,E);case 23:return Ea(M,"\u3042\u3044\u3046\u3048\u304a\u304b\u304d\u304f\u3051\u3053\u3055\u3057\u3059\u305b\u305d\u305f\u3061\u3064\u3066\u3068\u306a\u306b\u306c\u306d\u306e\u306f\u3072\u3075\u3078\u307b\u307e\u307f\u3080\u3081\u3082\u3084\u3086\u3088\u3089\u308a\u308b\u308c\u308d\u308f\u3090\u3091\u3092\u3093");case 24:return Ea(M,"\u3044\u308d\u306f\u306b\u307b\u3078\u3068\u3061\u308a\u306c\u308b\u3092\u308f\u304b\u3088\u305f\u308c\u305d\u3064\u306d\u306a\u3089\u3080\u3046\u3090\u306e\u304a\u304f\u3084\u307e\u3051\u3075\u3053\u3048\u3066\u3042\u3055\u304d\u3086\u3081\u307f\u3057\u3091\u3072\u3082\u305b\u3059");case 27:return _o(M,3302,3311,!0,E);case 28:return Ea(M,"\u30a2\u30a4\u30a6\u30a8\u30aa\u30ab\u30ad\u30af\u30b1\u30b3\u30b5\u30b7\u30b9\u30bb\u30bd\u30bf\u30c1\u30c4\u30c6\u30c8\u30ca\u30cb\u30cc\u30cd\u30ce\u30cf\u30d2\u30d5\u30d8\u30db\u30de\u30df\u30e0\u30e1\u30e2\u30e4\u30e6\u30e8\u30e9\u30ea\u30eb\u30ec\u30ed\u30ef\u30f0\u30f1\u30f2\u30f3",N);case 29:return Ea(M,"\u30a4\u30ed\u30cf\u30cb\u30db\u30d8\u30c8\u30c1\u30ea\u30cc\u30eb\u30f2\u30ef\u30ab\u30e8\u30bf\u30ec\u30bd\u30c4\u30cd\u30ca\u30e9\u30e0\u30a6\u30f0\u30ce\u30aa\u30af\u30e4\u30de\u30b1\u30d5\u30b3\u30a8\u30c6\u30a2\u30b5\u30ad\u30e6\u30e1\u30df\u30b7\u30f1\u30d2\u30e2\u30bb\u30b9",N);case 34:return _o(M,3792,3801,!0,E);case 37:return _o(M,6160,6169,!0,E);case 38:return _o(M,4160,4169,!0,E);case 39:return _o(M,2918,2927,!0,E);case 40:return _o(M,1776,1785,!0,E);case 43:return _o(M,3046,3055,!0,E);case 44:return _o(M,3174,3183,!0,E);case 45:return _o(M,3664,3673,!0,E);case 46:return _o(M,3872,3881,!0,E);default:return _o(M,48,57,!0,E)}},Zd="data-html2canvas-ignore",fd=function(){function M(C,S,E){if(this.context=C,this.options=E,this.scrolledElements=[],this.referenceElement=S,this.counters=new zA,this.quoteDepth=0,!S.ownerDocument)throw new Error("Cloned element does not have an owner document");this.documentElement=this.cloneNode(S.ownerDocument.documentElement,!1)}return M.prototype.toIFrame=function(C,S){var E=this,N=sC(C,S);if(!N.contentWindow)return Promise.reject("Unable to find iframe window");var $=C.defaultView.pageXOffset,se=C.defaultView.pageYOffset,xe=N.contentWindow,ge=xe.document,Xe=aC(N).then(function(){return o(E,void 0,void 0,function(){var tt,mt;return y(this,function(At){switch(At.label){case 0:return this.scrolledElements.forEach(jA),xe&&(xe.scrollTo(S.left,S.top),/(iPad|iPhone|iPod)/g.test(navigator.userAgent)&&(xe.scrollY!==S.top||xe.scrollX!==S.left)&&(this.context.logger.warn("Unable to restore scroll position for cloned document"),this.context.windowBounds=this.context.windowBounds.add(xe.scrollX-S.left,xe.scrollY-S.top,0,0))),tt=this.options.onclone,typeof(mt=this.clonedReferenceElement)>"u"?[2,Promise.reject("Error finding the "+this.referenceElement.nodeName+" in the cloned document")]:ge.fonts&&ge.fonts.ready?[4,ge.fonts.ready]:[3,2];case 1:At.sent(),At.label=2;case 2:return/(AppleWebKit)/g.test(navigator.userAgent)?[4,Yt(ge)]:[3,4];case 3:At.sent(),At.label=4;case 4:return"function"==typeof tt?[2,Promise.resolve().then(function(){return tt(ge,mt)}).then(function(){return N})]:[2,N]}})})});return ge.open(),ge.write(hy(document.doctype)+""),n_(this.referenceElement.ownerDocument,$,se),ge.replaceChild(ge.adoptNode(this.documentElement),ge.documentElement),ge.close(),Xe},M.prototype.createElementClone=function(C){if(yf(C,2),Rf(C))return this.createCanvasClone(C);if(cd(C))return this.createVideoClone(C);if(LA(C))return this.createStyleClone(C);var S=C.cloneNode(!1);return NA(S)&&(NA(C)&&C.currentSrc&&C.currentSrc!==C.src&&(S.src=C.currentSrc,S.srcset=""),"lazy"===S.loading&&(S.loading="eager")),QA(S)?this.createCustomElementClone(S):S},M.prototype.createCustomElementClone=function(C){var S=document.createElement("html2canvascustomelement");return pd(C.style,S),S},M.prototype.createStyleClone=function(C){try{var S=C.sheet;if(S&&S.cssRules){var E=[].slice.call(S.cssRules,0).reduce(function($,se){return se&&"string"==typeof se.cssText?$+se.cssText:$},""),N=C.cloneNode(!1);return N.textContent=E,N}}catch($){if(this.context.logger.error("Unable to access cssRules property",$),"SecurityError"!==$.name)throw $}return C.cloneNode(!1)},M.prototype.createCanvasClone=function(C){var S;if(this.options.inlineImages&&C.ownerDocument){var E=C.ownerDocument.createElement("img");try{return E.src=C.toDataURL(),E}catch{this.context.logger.info("Unable to inline canvas contents, canvas is tainted",C)}}var N=C.cloneNode(!1);try{N.width=C.width,N.height=C.height;var $=C.getContext("2d"),se=N.getContext("2d");if(se)if(!this.options.allowTaint&&$)se.putImageData($.getImageData(0,0,C.width,C.height),0,0);else{var xe=null!==(S=C.getContext("webgl2"))&&void 0!==S?S:C.getContext("webgl");if(xe){var ge=xe.getContextAttributes();!1===ge?.preserveDrawingBuffer&&this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false",C)}se.drawImage(C,0,0)}return N}catch{this.context.logger.info("Unable to clone canvas as it is tainted",C)}return N},M.prototype.createVideoClone=function(C){var S=C.ownerDocument.createElement("canvas");S.width=C.offsetWidth,S.height=C.offsetHeight;var E=S.getContext("2d");try{return E&&(E.drawImage(C,0,0,S.width,S.height),this.options.allowTaint||E.getImageData(0,0,S.width,S.height)),S}catch{this.context.logger.info("Unable to clone video as it is tainted",C)}var N=C.ownerDocument.createElement("canvas");return N.width=C.offsetWidth,N.height=C.offsetHeight,N},M.prototype.appendChildNode=function(C,S,E){(!ld(S)||!function(M){return"SCRIPT"===M.tagName}(S)&&!S.hasAttribute(Zd)&&("function"!=typeof this.options.ignoreElements||!this.options.ignoreElements(S)))&&(!this.options.copyStyles||!ld(S)||!LA(S))&&C.appendChild(this.cloneNode(S,E))},M.prototype.cloneChildNodes=function(C,S,E){for(var N=this,$=C.shadowRoot?C.shadowRoot.firstChild:C.firstChild;$;$=$.nextSibling)if(ld($)&&HA($)&&"function"==typeof $.assignedNodes){var se=$.assignedNodes();se.length&&se.forEach(function(xe){return N.appendChildNode(S,xe,E)})}else this.appendChildNode(S,$,E)},M.prototype.cloneNode=function(C,S){if(ay(C))return document.createTextNode(C.data);if(!C.ownerDocument)return C.cloneNode(!1);var E=C.ownerDocument.defaultView;if(E&&ld(C)&&(Bf(C)||Mc(C))){var N=this.createElementClone(C);N.style.transitionProperty="none";var $=E.getComputedStyle(C),se=E.getComputedStyle(C,":before"),xe=E.getComputedStyle(C,":after");this.referenceElement===C&&Bf(N)&&(this.clonedReferenceElement=N),Ul(N)&&r_(N);var ge=this.counters.parse(new mi(this.context,$)),Xe=this.resolvePseudoContent(C,N,se,Vi.BEFORE);QA(C)&&(S=!0),cd(C)||this.cloneChildNodes(C,N,S),Xe&&N.insertBefore(Xe,N.firstChild);var tt=this.resolvePseudoContent(C,N,xe,Vi.AFTER);return tt&&N.appendChild(tt),this.counters.pop(ge),($&&(this.options.copyStyles||Mc(C))&&!Xd(C)||S)&&pd($,N),(0!==C.scrollTop||0!==C.scrollLeft)&&this.scrolledElements.push([N,C.scrollLeft,C.scrollTop]),(dd(C)||VA(C))&&(dd(N)||VA(N))&&(N.value=C.value),N}return C.cloneNode(!1)},M.prototype.resolvePseudoContent=function(C,S,E,N){var $=this;if(E){var se=E.content,xe=S.ownerDocument;if(xe&&se&&"none"!==se&&"-moz-alt-content"!==se&&"none"!==E.display){this.counters.parse(new mi(this.context,E));var ge=new qr(this.context,E),Xe=xe.createElement("html2canvaspseudoelement");pd(E,Xe),ge.content.forEach(function(mt){if(0===mt.type)Xe.appendChild(xe.createTextNode(mt.value));else if(22===mt.type){var At=xe.createElement("img");At.src=mt.value,At.style.opacity="1",Xe.appendChild(At)}else if(18===mt.type){if("attr"===mt.name){var wn=mt.values.filter($r);wn.length&&Xe.appendChild(xe.createTextNode(C.getAttribute(wn[0].value)||""))}else if("counter"===mt.name){var An=mt.values.filter(Ku),gi=An[1];if((Tn=An[0])&&$r(Tn)){var jn=$.counters.getCounterValue(Tn.value),ii=gi&&$r(gi)?cl.parse($.context,gi.value):3;Xe.appendChild(xe.createTextNode(Sc(jn,ii,!1)))}}else if("counters"===mt.name){var Tn,Fr=mt.values.filter(Ku),fi=Fr[1];if(gi=Fr[2],(Tn=Fr[0])&&$r(Tn)){var Mi=$.counters.getCounterValues(Tn.value),Hn=gi&&$r(gi)?cl.parse($.context,gi.value):3,gr=fi&&0===fi.type?fi.value:"",yr=Mi.map(function(qs){return Sc(qs,Hn,!1)}).join(gr);Xe.appendChild(xe.createTextNode(yr))}}}else if(20===mt.type)switch(mt.value){case"open-quote":Xe.appendChild(xe.createTextNode(Y2(ge.quotes,$.quoteDepth++,!0)));break;case"close-quote":Xe.appendChild(xe.createTextNode(Y2(ge.quotes,--$.quoteDepth,!1)));break;default:Xe.appendChild(xe.createTextNode(mt.value))}}),Xe.className=i_+" "+qA;var tt=N===Vi.BEFORE?" "+i_:" "+qA;return Mc(S)?S.className.baseValue+=tt:S.className+=tt,Xe}}},M.destroy=function(C){return!!C.parentNode&&(C.parentNode.removeChild(C),!0)},M}(),Vi=function(M){return M[M.BEFORE=0]="BEFORE",M[M.AFTER=1]="AFTER",M}(Vi||{}),sC=function(M,C){var S=M.createElement("iframe");return S.className="html2canvas-container",S.style.visibility="hidden",S.style.position="fixed",S.style.left="-10000px",S.style.top="0px",S.style.border="0",S.width=C.width.toString(),S.height=C.height.toString(),S.scrolling="no",S.setAttribute(Zd,"true"),M.body.appendChild(S),S},dy=function(M){return new Promise(function(C){M.complete?C():M.src?(M.onload=C,M.onerror=C):C()})},Yt=function(M){return Promise.all([].slice.call(M.images,0).map(dy))},aC=function(M){return new Promise(function(C,S){var E=M.contentWindow;if(!E)return S("No window assigned for iframe");var N=E.document;E.onload=M.onload=function(){E.onload=M.onload=null;var $=setInterval(function(){N.body.childNodes.length>0&&"complete"===N.readyState&&(clearInterval($),C(M))},50)}})},uy=["all","d","content"],pd=function(M,C){for(var S=M.length-1;S>=0;S--){var E=M.item(S);-1===uy.indexOf(E)&&C.style.setProperty(E,M.getPropertyValue(E))}return C},hy=function(M){var C="";return M&&(C+=""),C},n_=function(M,C,S){M&&M.defaultView&&(C!==M.defaultView.pageXOffset||S!==M.defaultView.pageYOffset)&&M.defaultView.scrollTo(C,S)},jA=function(M){var C=M[0],E=M[2];C.scrollLeft=M[1],C.scrollTop=E},i_="___html2canvas___pseudoelement_before",qA="___html2canvas___pseudoelement_after",py='{\n content: "" !important;\n display: none !important;\n}',r_=function(M){o_(M,"."+i_+":before"+py+"\n ."+qA+":after"+py)},o_=function(M,C){var S=M.ownerDocument;if(S){var E=S.createElement("style");E.textContent=C,M.appendChild(E)}},s_=function(){function M(){}return M.getOrigin=function(C){var S=M._link;return S?(S.href=C,S.href=S.href,S.protocol+S.hostname+S.port):"about:blank"},M.isSameOrigin=function(C){return M.getOrigin(C)===M._origin},M.setContext=function(C){M._link=C.document.createElement("a"),M._origin=M.getOrigin(C.location.href)},M._origin="about:blank",M}(),lC=function(){function M(C,S){this.context=C,this._options=S,this._cache={}}return M.prototype.addImage=function(C){var S=Promise.resolve();return this.has(C)||(sh(C)||WA(C))&&(this._cache[C]=this.loadImage(C)).catch(function(){}),S},M.prototype.match=function(C){return this._cache[C]},M.prototype.loadImage=function(C){return o(this,void 0,void 0,function(){var S,E,N,$,se=this;return y(this,function(xe){switch(xe.label){case 0:return S=s_.isSameOrigin(C),E=!fs(C)&&!0===this._options.useCORS&&hs.SUPPORT_CORS_IMAGES&&!S,N=!fs(C)&&!S&&!sh(C)&&"string"==typeof this._options.proxy&&hs.SUPPORT_CORS_XHR&&!E,S||!1!==this._options.allowTaint||fs(C)||sh(C)||N||E?($=C,N?[4,this.proxy($)]:[3,2]):[2];case 1:$=xe.sent(),xe.label=2;case 2:return this.context.logger.debug("Added image "+C.substring(0,256)),[4,new Promise(function(ge,Xe){var tt=new Image;tt.onload=function(){return ge(tt)},tt.onerror=Xe,(r4($)||E)&&(tt.crossOrigin="anonymous"),tt.src=$,!0===tt.complete&&setTimeout(function(){return ge(tt)},500),se._options.imageTimeout>0&&setTimeout(function(){return Xe("Timed out ("+se._options.imageTimeout+"ms) loading image")},se._options.imageTimeout)})];case 3:return[2,xe.sent()]}})})},M.prototype.has=function(C){return typeof this._cache[C]<"u"},M.prototype.keys=function(){return Promise.resolve(Object.keys(this._cache))},M.prototype.proxy=function(C){var S=this,E=this._options.proxy;if(!E)throw new Error("No proxy defined");var N=C.substring(0,256);return new Promise(function($,se){var xe=hs.SUPPORT_RESPONSE_TYPE?"blob":"text",ge=new XMLHttpRequest;ge.onload=function(){if(200===ge.status)if("text"===xe)$(ge.response);else{var mt=new FileReader;mt.addEventListener("load",function(){return $(mt.result)},!1),mt.addEventListener("error",function(At){return se(At)},!1),mt.readAsDataURL(ge.response)}else se("Failed to proxy resource "+N+" with status code "+ge.status)},ge.onerror=se;var Xe=E.indexOf("?")>-1?"&":"?";if(ge.open("GET",""+E+Xe+"url="+encodeURIComponent(C)+"&responseType="+xe),"text"!==xe&&ge instanceof XMLHttpRequest&&(ge.responseType=xe),S._options.imageTimeout){var tt=S._options.imageTimeout;ge.timeout=tt,ge.ontimeout=function(){return se("Timed out ("+tt+"ms) proxying "+N)}}ge.send()})},M}(),Ay=/^data:image\/svg\+xml/i,i4=/^data:image\/.*;base64,/i,my=/^data:image\/.*/i,WA=function(M){return hs.SUPPORT_SVG_DRAWING||!sn(M)},fs=function(M){return my.test(M)},r4=function(M){return i4.test(M)},sh=function(M){return"blob"===M.substr(0,4)},sn=function(M){return"svg"===M.substr(-3).toLowerCase()||Ay.test(M)},kn=function(){function M(C,S){this.type=0,this.x=C,this.y=S}return M.prototype.add=function(C,S){return new M(this.x+C,this.y+S)},M}(),ah=function(M,C,S){return new kn(M.x+(C.x-M.x)*S,M.y+(C.y-M.y)*S)},lh=function(){function M(C,S,E,N){this.type=1,this.start=C,this.startControl=S,this.endControl=E,this.end=N}return M.prototype.subdivide=function(C,S){var E=ah(this.start,this.startControl,C),N=ah(this.startControl,this.endControl,C),$=ah(this.endControl,this.end,C),se=ah(E,N,C),xe=ah(N,$,C),ge=ah(se,xe,C);return S?new M(this.start,E,se,ge):new M(ge,xe,$,this.end)},M.prototype.add=function(C,S){return new M(this.start.add(C,S),this.startControl.add(C,S),this.endControl.add(C,S),this.end.add(C,S))},M.prototype.reverse=function(){return new M(this.end,this.endControl,this.startControl,this.start)},M}(),Sa=function(M){return 1===M.type},ch=function(){return function M(C){var S=C.styles,E=C.bounds,N=hA(S.borderTopLeftRadius,E.width,E.height),$=N[0],se=N[1],xe=hA(S.borderTopRightRadius,E.width,E.height),ge=xe[0],Xe=xe[1],tt=hA(S.borderBottomRightRadius,E.width,E.height),mt=tt[0],At=tt[1],wn=hA(S.borderBottomLeftRadius,E.width,E.height),An=wn[0],Tn=wn[1],gi=[];gi.push(($+ge)/E.width),gi.push((An+mt)/E.width),gi.push((se+Tn)/E.height),gi.push((Xe+At)/E.height);var jn=Math.max.apply(Math,gi);jn>1&&($/=jn,se/=jn,ge/=jn,Xe/=jn,mt/=jn,At/=jn,An/=jn,Tn/=jn);var ii=E.width-ge,Fr=E.height-At,fi=E.width-mt,Mi=E.height-Tn,Hn=S.borderTopWidth,gr=S.borderRightWidth,yr=S.borderBottomWidth,Hi=S.borderLeftWidth,Qo=mo(S.paddingTop,C.bounds.width),qs=mo(S.paddingRight,C.bounds.width),Ws=mo(S.paddingBottom,C.bounds.width),zr=mo(S.paddingLeft,C.bounds.width);this.topLeftBorderDoubleOuterBox=$>0||se>0?Co(E.left+Hi/3,E.top+Hn/3,$-Hi/3,se-Hn/3,Wr.TOP_LEFT):new kn(E.left+Hi/3,E.top+Hn/3),this.topRightBorderDoubleOuterBox=$>0||se>0?Co(E.left+ii,E.top+Hn/3,ge-gr/3,Xe-Hn/3,Wr.TOP_RIGHT):new kn(E.left+E.width-gr/3,E.top+Hn/3),this.bottomRightBorderDoubleOuterBox=mt>0||At>0?Co(E.left+fi,E.top+Fr,mt-gr/3,At-yr/3,Wr.BOTTOM_RIGHT):new kn(E.left+E.width-gr/3,E.top+E.height-yr/3),this.bottomLeftBorderDoubleOuterBox=An>0||Tn>0?Co(E.left+Hi/3,E.top+Mi,An-Hi/3,Tn-yr/3,Wr.BOTTOM_LEFT):new kn(E.left+Hi/3,E.top+E.height-yr/3),this.topLeftBorderDoubleInnerBox=$>0||se>0?Co(E.left+2*Hi/3,E.top+2*Hn/3,$-2*Hi/3,se-2*Hn/3,Wr.TOP_LEFT):new kn(E.left+2*Hi/3,E.top+2*Hn/3),this.topRightBorderDoubleInnerBox=$>0||se>0?Co(E.left+ii,E.top+2*Hn/3,ge-2*gr/3,Xe-2*Hn/3,Wr.TOP_RIGHT):new kn(E.left+E.width-2*gr/3,E.top+2*Hn/3),this.bottomRightBorderDoubleInnerBox=mt>0||At>0?Co(E.left+fi,E.top+Fr,mt-2*gr/3,At-2*yr/3,Wr.BOTTOM_RIGHT):new kn(E.left+E.width-2*gr/3,E.top+E.height-2*yr/3),this.bottomLeftBorderDoubleInnerBox=An>0||Tn>0?Co(E.left+2*Hi/3,E.top+Mi,An-2*Hi/3,Tn-2*yr/3,Wr.BOTTOM_LEFT):new kn(E.left+2*Hi/3,E.top+E.height-2*yr/3),this.topLeftBorderStroke=$>0||se>0?Co(E.left+Hi/2,E.top+Hn/2,$-Hi/2,se-Hn/2,Wr.TOP_LEFT):new kn(E.left+Hi/2,E.top+Hn/2),this.topRightBorderStroke=$>0||se>0?Co(E.left+ii,E.top+Hn/2,ge-gr/2,Xe-Hn/2,Wr.TOP_RIGHT):new kn(E.left+E.width-gr/2,E.top+Hn/2),this.bottomRightBorderStroke=mt>0||At>0?Co(E.left+fi,E.top+Fr,mt-gr/2,At-yr/2,Wr.BOTTOM_RIGHT):new kn(E.left+E.width-gr/2,E.top+E.height-yr/2),this.bottomLeftBorderStroke=An>0||Tn>0?Co(E.left+Hi/2,E.top+Mi,An-Hi/2,Tn-yr/2,Wr.BOTTOM_LEFT):new kn(E.left+Hi/2,E.top+E.height-yr/2),this.topLeftBorderBox=$>0||se>0?Co(E.left,E.top,$,se,Wr.TOP_LEFT):new kn(E.left,E.top),this.topRightBorderBox=ge>0||Xe>0?Co(E.left+ii,E.top,ge,Xe,Wr.TOP_RIGHT):new kn(E.left+E.width,E.top),this.bottomRightBorderBox=mt>0||At>0?Co(E.left+fi,E.top+Fr,mt,At,Wr.BOTTOM_RIGHT):new kn(E.left+E.width,E.top+E.height),this.bottomLeftBorderBox=An>0||Tn>0?Co(E.left,E.top+Mi,An,Tn,Wr.BOTTOM_LEFT):new kn(E.left,E.top+E.height),this.topLeftPaddingBox=$>0||se>0?Co(E.left+Hi,E.top+Hn,Math.max(0,$-Hi),Math.max(0,se-Hn),Wr.TOP_LEFT):new kn(E.left+Hi,E.top+Hn),this.topRightPaddingBox=ge>0||Xe>0?Co(E.left+Math.min(ii,E.width-gr),E.top+Hn,ii>E.width+gr?0:Math.max(0,ge-gr),Math.max(0,Xe-Hn),Wr.TOP_RIGHT):new kn(E.left+E.width-gr,E.top+Hn),this.bottomRightPaddingBox=mt>0||At>0?Co(E.left+Math.min(fi,E.width-Hi),E.top+Math.min(Fr,E.height-yr),Math.max(0,mt-gr),Math.max(0,At-yr),Wr.BOTTOM_RIGHT):new kn(E.left+E.width-gr,E.top+E.height-yr),this.bottomLeftPaddingBox=An>0||Tn>0?Co(E.left+Hi,E.top+Math.min(Mi,E.height-yr),Math.max(0,An-Hi),Math.max(0,Tn-yr),Wr.BOTTOM_LEFT):new kn(E.left+Hi,E.top+E.height-yr),this.topLeftContentBox=$>0||se>0?Co(E.left+Hi+zr,E.top+Hn+Qo,Math.max(0,$-(Hi+zr)),Math.max(0,se-(Hn+Qo)),Wr.TOP_LEFT):new kn(E.left+Hi+zr,E.top+Hn+Qo),this.topRightContentBox=ge>0||Xe>0?Co(E.left+Math.min(ii,E.width+Hi+zr),E.top+Hn+Qo,ii>E.width+Hi+zr?0:ge-Hi+zr,Xe-(Hn+Qo),Wr.TOP_RIGHT):new kn(E.left+E.width-(gr+qs),E.top+Hn+Qo),this.bottomRightContentBox=mt>0||At>0?Co(E.left+Math.min(fi,E.width-(Hi+zr)),E.top+Math.min(Fr,E.height+Hn+Qo),Math.max(0,mt-(gr+qs)),At-(yr+Ws),Wr.BOTTOM_RIGHT):new kn(E.left+E.width-(gr+qs),E.top+E.height-(yr+Ws)),this.bottomLeftContentBox=An>0||Tn>0?Co(E.left+Hi+zr,E.top+Mi,Math.max(0,An-(Hi+zr)),Tn-(yr+Ws),Wr.BOTTOM_LEFT):new kn(E.left+Hi+zr,E.top+E.height-(yr+Ws))}}(),Wr=function(M){return M[M.TOP_LEFT=0]="TOP_LEFT",M[M.TOP_RIGHT=1]="TOP_RIGHT",M[M.BOTTOM_RIGHT=2]="BOTTOM_RIGHT",M[M.BOTTOM_LEFT=3]="BOTTOM_LEFT",M}(Wr||{}),Co=function(M,C,S,E,N){var $=(Math.sqrt(2)-1)/3*4,se=S*$,xe=E*$,ge=M+S,Xe=C+E;switch(N){case Wr.TOP_LEFT:return new lh(new kn(M,Xe),new kn(M,Xe-xe),new kn(ge-se,C),new kn(ge,C));case Wr.TOP_RIGHT:return new lh(new kn(M,C),new kn(M+se,C),new kn(ge,Xe-xe),new kn(ge,Xe));case Wr.BOTTOM_RIGHT:return new lh(new kn(ge,C),new kn(ge,C+xe),new kn(M+se,Xe),new kn(M,Xe));default:return new lh(new kn(ge,Xe),new kn(ge-se,Xe),new kn(M,C+xe),new kn(M,C))}},Ql=function(M){return[M.topLeftBorderBox,M.topRightBorderBox,M.bottomRightBorderBox,M.bottomLeftBorderBox]},XA=function(M){return[M.topLeftPaddingBox,M.topRightPaddingBox,M.bottomRightPaddingBox,M.bottomLeftPaddingBox]},zl=function(){return function M(C,S,E){this.offsetX=C,this.offsetY=S,this.matrix=E,this.type=0,this.target=6}}(),Ad=function(){return function M(C,S){this.path=C,this.target=S,this.type=1}}(),gy=function(){return function M(C){this.opacity=C,this.type=2,this.target=6}}(),cC=function(M){return 1===M.type},Lf=function(M,C){return M.length===C.length&&M.some(function(S,E){return S===C[E]})},io=function(){return function M(C){this.element=C,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}}(),by=function(){function M(C,S){if(this.container=C,this.parent=S,this.effects=[],this.curves=new ch(this.container),this.container.styles.opacity<1&&this.effects.push(new gy(this.container.styles.opacity)),null!==this.container.styles.transform&&this.effects.push(new zl(this.container.bounds.left+this.container.styles.transformOrigin[0].number,this.container.bounds.top+this.container.styles.transformOrigin[1].number,this.container.styles.transform)),0!==this.container.styles.overflowX){var se=Ql(this.curves),xe=XA(this.curves);Lf(se,xe)?this.effects.push(new Ad(se,6)):(this.effects.push(new Ad(se,2)),this.effects.push(new Ad(xe,4)))}}return M.prototype.getEffects=function(C){for(var S=-1===[2,3].indexOf(this.container.styles.position),E=this.parent,N=this.effects.slice(0);E;){var $=E.effects.filter(function(ge){return!cC(ge)});if(S||0!==E.container.styles.position||!E.parent){if(N.unshift.apply(N,$),S=-1===[2,3].indexOf(E.container.styles.position),0!==E.container.styles.overflowX){var se=Ql(E.curves),xe=XA(E.curves);Lf(se,xe)||N.unshift(new Ad(xe,6))}}else N.unshift.apply(N,$);E=E.parent}return N.filter(function(ge){return wo(ge.target,C)})},M}(),Uf=function(M,C,S,E){M.container.elements.forEach(function(N){var $=wo(N.flags,4),se=wo(N.flags,2),xe=new by(N,M);wo(N.styles.display,2048)&&E.push(xe);var ge=wo(N.flags,8)?[]:E;if($||se){var Xe=$||N.styles.isPositioned()?S:C,tt=new io(xe);if(N.styles.isPositioned()||N.styles.opacity<1||N.styles.isTransformed()){var mt=N.styles.zIndex.order;if(mt<0){var At=0;Xe.negativeZIndex.some(function(An,Tn){return mt>An.element.container.styles.zIndex.order?(At=Tn,!1):At>0}),Xe.negativeZIndex.splice(At,0,tt)}else if(mt>0){var wn=0;Xe.positiveZIndex.some(function(An,Tn){return mt>=An.element.container.styles.zIndex.order?(wn=Tn+1,!1):wn>0}),Xe.positiveZIndex.splice(wn,0,tt)}else Xe.zeroOrAutoZIndexOrTransformedOrOpacity.push(tt)}else N.styles.isFloating()?Xe.nonPositionedFloats.push(tt):Xe.nonPositionedInlineLevel.push(tt);Uf(xe,tt,$?tt:S,ge)}else N.styles.isInlineLevel()?C.inlineLevel.push(xe):C.nonInlineLevel.push(xe),Uf(xe,C,S,ge);wo(N.flags,8)&&vy(N,ge)})},vy=function(M,C){for(var S=M instanceof kr?M.start:1,E=M instanceof kr&&M.reversed,N=0;N"u"?M[0]:S},o4=function(M,C,S,E,N){var $=C[0],se=C[1],xe=S[0],ge=S[1];switch(M){case 2:return[new kn(Math.round(E.left),Math.round(E.top+se)),new kn(Math.round(E.left+E.width),Math.round(E.top+se)),new kn(Math.round(E.left+E.width),Math.round(ge+E.top+se)),new kn(Math.round(E.left),Math.round(ge+E.top+se))];case 3:return[new kn(Math.round(E.left+$),Math.round(E.top)),new kn(Math.round(E.left+$+xe),Math.round(E.top)),new kn(Math.round(E.left+$+xe),Math.round(E.height+E.top)),new kn(Math.round(E.left+$),Math.round(E.height+E.top))];case 1:return[new kn(Math.round(E.left+$),Math.round(E.top+se)),new kn(Math.round(E.left+$+xe),Math.round(E.top+se)),new kn(Math.round(E.left+$+xe),Math.round(E.top+se+ge)),new kn(Math.round(E.left+$),Math.round(E.top+se+ge))];default:return[new kn(Math.round(N.left),Math.round(N.top)),new kn(Math.round(N.left+N.width),Math.round(N.top)),new kn(Math.round(N.left+N.width),Math.round(N.height+N.top)),new kn(Math.round(N.left),Math.round(N.height+N.top))]}},yn="Hidden Text",Di=function(){function M(C){this._data={},this._document=C}return M.prototype.parseMetrics=function(C,S){var E=this._document.createElement("div"),N=this._document.createElement("img"),$=this._document.createElement("span"),se=this._document.body;E.style.visibility="hidden",E.style.fontFamily=C,E.style.fontSize=S,E.style.margin="0",E.style.padding="0",E.style.whiteSpace="nowrap",se.appendChild(E),N.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",N.width=1,N.height=1,N.style.margin="0",N.style.padding="0",N.style.verticalAlign="baseline",$.style.fontFamily=C,$.style.fontSize=S,$.style.margin="0",$.style.padding="0",$.appendChild(this._document.createTextNode(yn)),E.appendChild($),E.appendChild(N);var xe=N.offsetTop-$.offsetTop+2;E.removeChild($),E.appendChild(this._document.createTextNode(yn)),E.style.lineHeight="normal",N.style.verticalAlign="super";var ge=N.offsetTop-E.offsetTop+2;return se.removeChild(E),{baseline:xe,middle:ge}},M.prototype.getMetrics=function(C,S){var E=C+" "+S;return typeof this._data[E]>"u"&&(this._data[E]=this.parseMetrics(C,S)),this._data[E]},M}(),Ic=function(){return function M(C,S){this.context=C,this.options=S}}(),md=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N._activeEffects=[],N.canvas=E.canvas?E.canvas:document.createElement("canvas"),N.ctx=N.canvas.getContext("2d"),E.canvas||(N.canvas.width=Math.floor(E.width*E.scale),N.canvas.height=Math.floor(E.height*E.scale),N.canvas.style.width=E.width+"px",N.canvas.style.height=E.height+"px"),N.fontMetrics=new Di(document),N.ctx.scale(N.options.scale,N.options.scale),N.ctx.translate(-E.x,-E.y),N.ctx.textBaseline="bottom",N._activeEffects=[],N.context.logger.debug("Canvas renderer initialized ("+E.width+"x"+E.height+") with scale "+E.scale),N}return v(C,M),C.prototype.applyEffects=function(S){for(var E=this;this._activeEffects.length;)this.popEffect();S.forEach(function(N){return E.applyEffect(N)})},C.prototype.applyEffect=function(S){this.ctx.save(),function(M){return 2===M.type}(S)&&(this.ctx.globalAlpha=S.opacity),function(M){return 0===M.type}(S)&&(this.ctx.translate(S.offsetX,S.offsetY),this.ctx.transform(S.matrix[0],S.matrix[1],S.matrix[2],S.matrix[3],S.matrix[4],S.matrix[5]),this.ctx.translate(-S.offsetX,-S.offsetY)),cC(S)&&(this.path(S.path),this.ctx.clip()),this._activeEffects.push(S)},C.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},C.prototype.renderStack=function(S){return o(this,void 0,void 0,function(){return y(this,function(N){switch(N.label){case 0:return S.element.container.styles.isVisible()?[4,this.renderStackContent(S)]:[3,2];case 1:N.sent(),N.label=2;case 2:return[2]}})})},C.prototype.renderNode=function(S){return o(this,void 0,void 0,function(){return y(this,function(E){switch(E.label){case 0:return wo(S.container.flags,16),S.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(S)]:[3,3];case 1:return E.sent(),[4,this.renderNodeContent(S)];case 2:E.sent(),E.label=3;case 3:return[2]}})})},C.prototype.renderTextWithLetterSpacing=function(S,E,N){var $=this;0===E?this.ctx.fillText(S.text,S.bounds.left,S.bounds.top+N):Sf(S.text).reduce(function(xe,ge){return $.ctx.fillText(ge,xe,S.bounds.top+N),xe+$.ctx.measureText(ge).width},S.bounds.left)},C.prototype.createFontStyle=function(S){var E=S.fontVariant.filter(function(se){return"normal"===se||"small-caps"===se}).join(""),N=ts(S.fontFamily).join(", "),$=Ld(S.fontSize)?""+S.fontSize.number+S.fontSize.unit:S.fontSize.number+"px";return[[S.fontStyle,E,S.fontWeight,$,N].join(" "),N,$]},C.prototype.renderTextNode=function(S,E){return o(this,void 0,void 0,function(){var N,se,xe,ge,Xe,tt,mt,At=this;return y(this,function(wn){return N=this.createFontStyle(E),se=N[1],xe=N[2],this.ctx.font=N[0],this.ctx.direction=1===E.direction?"rtl":"ltr",this.ctx.textAlign="left",this.ctx.textBaseline="alphabetic",ge=this.fontMetrics.getMetrics(se,xe),Xe=ge.baseline,tt=ge.middle,mt=E.paintOrder,S.textBounds.forEach(function(An){mt.forEach(function(Tn){switch(Tn){case 0:At.ctx.fillStyle=ds(E.color),At.renderTextWithLetterSpacing(An,E.letterSpacing,Xe);var gi=E.textShadow;gi.length&&An.text.trim().length&&(gi.slice(0).reverse().forEach(function(jn){At.ctx.shadowColor=ds(jn.color),At.ctx.shadowOffsetX=jn.offsetX.number*At.options.scale,At.ctx.shadowOffsetY=jn.offsetY.number*At.options.scale,At.ctx.shadowBlur=jn.blur.number,At.renderTextWithLetterSpacing(An,E.letterSpacing,Xe)}),At.ctx.shadowColor="",At.ctx.shadowOffsetX=0,At.ctx.shadowOffsetY=0,At.ctx.shadowBlur=0),E.textDecorationLine.length&&(At.ctx.fillStyle=ds(E.textDecorationColor||E.color),E.textDecorationLine.forEach(function(jn){switch(jn){case 1:At.ctx.fillRect(An.bounds.left,Math.round(An.bounds.top+Xe),An.bounds.width,1);break;case 2:At.ctx.fillRect(An.bounds.left,Math.round(An.bounds.top),An.bounds.width,1);break;case 3:At.ctx.fillRect(An.bounds.left,Math.ceil(An.bounds.top+tt),An.bounds.width,1)}}));break;case 1:E.webkitTextStrokeWidth&&An.text.trim().length&&(At.ctx.strokeStyle=ds(E.webkitTextStrokeColor),At.ctx.lineWidth=E.webkitTextStrokeWidth,At.ctx.lineJoin=window.chrome?"miter":"round",At.ctx.strokeText(An.text,An.bounds.left,An.bounds.top+Xe)),At.ctx.strokeStyle="",At.ctx.lineWidth=0,At.ctx.lineJoin="miter"}})}),[2]})})},C.prototype.renderReplacedElement=function(S,E,N){if(N&&S.intrinsicWidth>0&&S.intrinsicHeight>0){var $=ZA(S),se=XA(E);this.path(se),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(N,0,0,S.intrinsicWidth,S.intrinsicHeight,$.left,$.top,$.width,$.height),this.ctx.restore()}},C.prototype.renderNodeContent=function(S){return o(this,void 0,void 0,function(){var E,N,$,se,xe,tt,mt,At,An,Tn,gi,jn,ii,Fr,fi,Mi;return y(this,function(Hn){switch(Hn.label){case 0:this.applyEffects(S.getEffects(4)),N=S.curves,$=(E=S.container).styles,se=0,xe=E.textNodes,Hn.label=1;case 1:return se0&&Bc>0&&(kc=$.ctx.createRadialGradient(qs+Mo,Ws+aa,0,qs+Mo,Ws+aa,Dc),Hd(tt.stops,2*Dc).forEach(function(Hf){return kc.addColorStop(Hf.stop,ds(Hf.color))}),$.path(Qo),$.ctx.fillStyle=kc,Dc!==Bc?(Jd=S.bounds.left+.5*S.bounds.width,bd=S.bounds.top+.5*S.bounds.height,Os=1/(eu=Bc/Dc),$.ctx.save(),$.ctx.translate(Jd,bd),$.ctx.transform(1,0,0,eu,0,0),$.ctx.translate(-Jd,-bd),$.ctx.fillRect(qs,Os*(Ws-bd)+bd,zr,Cs*Os),$.ctx.restore()):$.ctx.fill())):(An=JA(S,E,[null,null,null]),Qo=An[0],Mo=An[1],aa=An[2],Tn=Hx(tt.angle,zr=An[3],Cs=An[4]),gi=Tn[0],jn=Tn[1],ii=Tn[2],Fr=Tn[3],fi=Tn[4],(Mi=document.createElement("canvas")).width=zr,Mi.height=Cs,Hn=Mi.getContext("2d"),gr=Hn.createLinearGradient(jn,Fr,ii,fi),Hd(tt.stops,gi).forEach(function(Hf){return gr.addColorStop(Hf.stop,ds(Hf.color))}),Hn.fillStyle=gr,Hn.fillRect(0,0,zr,Cs),zr>0&&Cs>0&&(yr=$.ctx.createPattern(Mi,"repeat"),$.renderRepeat(Qo,yr,Mo,aa))),Rc.label=6;case 6:return E--,[2]}})},$=this,se=0,xe=S.styles.backgroundImage.slice(0).reverse(),Xe.label=1;case 1:return se0?2!==tt.style?[3,5]:[4,this.renderDashedDottedBorder(tt.color,tt.width,xe,S.curves,2)]:[3,11]:[3,13];case 4:return At.sent(),[3,11];case 5:return 3!==tt.style?[3,7]:[4,this.renderDashedDottedBorder(tt.color,tt.width,xe,S.curves,3)];case 6:return At.sent(),[3,11];case 7:return 4!==tt.style?[3,9]:[4,this.renderDoubleBorder(tt.color,tt.width,xe,S.curves)];case 8:return At.sent(),[3,11];case 9:return[4,this.renderSolidBorder(tt.color,xe,S.curves)];case 10:At.sent(),At.label=11;case 11:xe++,At.label=12;case 12:return ge++,[3,3];case 13:return[2]}})})},C.prototype.renderDashedDottedBorder=function(S,E,N,$,se){return o(this,void 0,void 0,function(){var xe,ge,Xe,tt,mt,At,wn,An,Tn,gi,jn,ii,Fr,fi,Mi,Hn;return y(this,function(gr){return this.ctx.save(),xe=function(M,C){switch(C){case 0:return YA(M.topLeftBorderStroke,M.topRightBorderStroke);case 1:return YA(M.topRightBorderStroke,M.bottomRightBorderStroke);case 2:return YA(M.bottomRightBorderStroke,M.bottomLeftBorderStroke);default:return YA(M.bottomLeftBorderStroke,M.topLeftBorderStroke)}}($,N),ge=dh($,N),2===se&&(this.path(ge),this.ctx.clip()),Sa(ge[0])?(Xe=ge[0].start.x,tt=ge[0].start.y):(Xe=ge[0].x,tt=ge[0].y),Sa(ge[1])?(mt=ge[1].end.x,At=ge[1].end.y):(mt=ge[1].x,At=ge[1].y),wn=0===N||2===N?Math.abs(Xe-mt):Math.abs(tt-At),this.ctx.beginPath(),this.formatPath(3===se?xe:ge.slice(0,2)),An=E<3?3*E:2*E,Tn=E<3?2*E:E,3===se&&(An=E,Tn=E),gi=!0,wn<=2*An?gi=!1:wn<=2*An+Tn?(An*=jn=wn/(2*An+Tn),Tn*=jn):(ii=Math.floor((wn+Tn)/(An+Tn)),Fr=(wn-ii*An)/(ii-1),Tn=(fi=(wn-(ii+1)*An)/ii)<=0||Math.abs(Tn-Fr){function Ee(Le){return Array.isArray(Le)?Le:[Le]}const y=/^\s+$/,Z=/(?:[^\\]|^)\\$/,U=/^\\!/,L=/^\\#/,Y=/\r?\n/g,V=/^\.*\/|^\.+$/;let z="node-ignore";typeof Symbol<"u"&&(z=Symbol.for("node-ignore"));const G=z,ne=/([0-z])-([0-z])/g,re=()=>!1,Be=[[/^\uFEFF/,()=>""],[/((?:\\\\)*?)(\\?\s+)$/,(Le,pt,wt)=>pt+(0===wt.indexOf("\\")?" ":"")],[/(\\+?)\s/g,(Le,pt)=>{const{length:wt}=pt;return pt.slice(0,wt-wt%2)+" "}],[/[\\$.|*+(){^]/g,Le=>`\\${Le}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(Le,pt,wt)=>pt+6pt+wt.replace(/\\\*/g,"[^\\/]*")],[/\\\\\\(?=[$.|*+(){^])/g,()=>"\\"],[/\\\\/g,()=>"\\"],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(Le,pt,wt,Nt,Rt)=>"\\"===pt?`\\[${wt}${(Le=>{const{length:pt}=Le;return Le.slice(0,pt-pt%2)})(Nt)}${Rt}`:"]"===Rt&&Nt.length%2==0?`[${(Le=>Le.replace(ne,(pt,wt,Nt)=>wt.charCodeAt(0)<=Nt.charCodeAt(0)?pt:""))(wt)}${Nt}]`:"[]"],[/(?:[^*])$/,Le=>/\/$/.test(Le)?`${Le}$`:`${Le}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(Le,pt)=>(pt?`${pt}[^/]+`:"[^/]*")+"(?=$|\\/$)"]],Ie=Object.create(null),Je=Le=>"string"==typeof Le;class $e{constructor(pt,wt,Nt,Rt){this.origin=pt,this.pattern=wt,this.negative=Nt,this.regex=Rt}}const st=(Le,pt)=>{throw new pt(Le)},We=(Le,pt,wt)=>Je(Le)?Le?!We.isNotRelative(Le)||wt(`path should be a \`path.relative()\`d string, but got "${pt}"`,RangeError):wt("path must not be empty",TypeError):wt(`path must be a string, but got \`${pt}\``,TypeError),ve=Le=>V.test(Le);We.isNotRelative=ve,We.convert=Le=>Le;class fe{constructor({ignorecase:pt=!0,ignoreCase:wt=pt,allowRelativePaths:Nt=!1}={}){((Le,pt)=>{Object.defineProperty(this,pt,{value:!0})})(0,G),this._rules=[],this._ignoreCase=wt,this._allowRelativePaths=Nt,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(pt){if(pt&&pt[G])return this._rules=this._rules.concat(pt._rules),void(this._added=!0);if((Le=pt)&&Je(Le)&&!y.test(Le)&&!Z.test(Le)&&0!==Le.indexOf("#")){const wt=((Le,pt)=>{const wt=Le;let Nt=!1;0===Le.indexOf("!")&&(Nt=!0,Le=Le.substr(1));const Rt=((Le,pt)=>{let wt=Ie[Le];return wt||(wt=Be.reduce((Nt,[Rt,fn])=>Nt.replace(Rt,fn.bind(Le)),Le),Ie[Le]=wt),pt?new RegExp(wt,"i"):new RegExp(wt)})(Le=Le.replace(U,"!").replace(L,"#"),pt);return new $e(wt,Le,Nt,Rt)})(pt,this._ignoreCase);this._added=!0,this._rules.push(wt)}var Le}add(pt){return this._added=!1,Ee(Je(pt)?(Le=pt,Le.split(Y)):pt).forEach(this._addPattern,this),this._added&&this._initCache(),this;var Le}addPattern(pt){return this.add(pt)}_testOne(pt,wt){let Nt=!1,Rt=!1;return this._rules.forEach(fn=>{const{negative:$n}=fn;Rt===$n&&Nt!==Rt||$n&&!Nt&&!Rt&&!wt||fn.regex.test(pt)&&(Nt=!$n,Rt=$n)}),{ignored:Nt,unignored:Rt}}_test(pt,wt,Nt,Rt){const fn=pt&&We.convert(pt);return We(fn,pt,this._allowRelativePaths?re:st),this._t(fn,wt,Nt,Rt)}_t(pt,wt,Nt,Rt){if(pt in wt)return wt[pt];if(Rt||(Rt=pt.split("/")),Rt.pop(),!Rt.length)return wt[pt]=this._testOne(pt,Nt);const fn=this._t(Rt.join("/")+"/",wt,Nt,Rt);return wt[pt]=fn.ignored?fn:this._testOne(pt,Nt)}ignores(pt){return this._test(pt,this._ignoreCache,!1).ignored}createFilter(){return pt=>!this.ignores(pt)}filter(pt){return Ee(pt).filter(this.createFilter())}test(pt){return this._test(pt,this._testCache,!0)}}const Qe=Le=>new fe(Le);if(Qe.isPathValid=Le=>We(Le&&We.convert(Le),Le,re),Qe.default=Qe,nt.exports=Qe,typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||"win32"===process.platform)){We.convert=wt=>/^\\\\\?\\/.test(wt)||/["<>|\u0000-\u001F]+/u.test(wt)?wt:wt.replace(/\\/g,"/");const pt=/^[a-z]:\//i;We.isNotRelative=wt=>pt.test(wt)||ve(wt)}},8749:nt=>{function Ee(j){return!!j.constructor&&"function"==typeof j.constructor.isBuffer&&j.constructor.isBuffer(j)}nt.exports=function(j){return null!=j&&(Ee(j)||function v(j){return"function"==typeof j.readFloatLE&&"function"==typeof j.slice&&Ee(j.slice(0,0))}(j)||!!j._isBuffer)}},4331:nt=>{"use strict";var Ee=nt.exports=function(o,y,Z){"function"==typeof y&&(Z=y,y={}),v(y,"function"==typeof(Z=y.cb||Z)?Z:Z.pre||function(){},Z.post||function(){},o,"",o)};function v(o,y,Z,U,L,Y,V,X,z,G){if(U&&"object"==typeof U&&!Array.isArray(U)){for(var Q in y(U,L,Y,V,X,z,G),U){var ne=U[Q];if(Array.isArray(ne)){if(Q in Ee.arrayKeywords)for(var re=0;re{var j,o,y,Z,U;j=v(9928),o=v(7468).utf8,y=v(8749),Z=v(7468).bin,(U=function(L,Y){L.constructor==String?L=Y&&"binary"===Y.encoding?Z.stringToBytes(L):o.stringToBytes(L):y(L)?L=Array.prototype.slice.call(L,0):!Array.isArray(L)&&L.constructor!==Uint8Array&&(L=L.toString());for(var V=j.bytesToWords(L),X=8*L.length,z=1732584193,G=-271733879,Q=-1732584194,ne=271733878,re=0;re>>24)|4278255360&(V[re]<<24|V[re]>>>8);V[X>>>5]|=128<>>9<<4)]=X;var me=U._ff,we=U._gg,Be=U._hh,Ie=U._ii;for(re=0;re>>0,G=G+Je>>>0,Q=Q+He>>>0,ne=ne+qe>>>0}return j.endian([z,G,Q,ne])})._ff=function(L,Y,V,X,z,G,Q){var ne=L+(Y&V|~Y&X)+(z>>>0)+Q;return(ne<>>32-G)+Y},U._gg=function(L,Y,V,X,z,G,Q){var ne=L+(Y&X|V&~X)+(z>>>0)+Q;return(ne<>>32-G)+Y},U._hh=function(L,Y,V,X,z,G,Q){var ne=L+(Y^V^X)+(z>>>0)+Q;return(ne<>>32-G)+Y},U._ii=function(L,Y,V,X,z,G,Q){var ne=L+(V^(Y|~X))+(z>>>0)+Q;return(ne<>>32-G)+Y},U._blocksize=16,U._digestsize=16,nt.exports=function(L,Y){if(null==L)throw new Error("Illegal argument "+L);var V=j.wordsToBytes(U(L,Y));return Y&&Y.asBytes?V:Y&&Y.asString?Z.bytesToString(V):j.bytesToHex(V)}},8314:(nt,Ee,v)=>{const o=v(2836),y=v(9460),Z=v(7030),U=v(6511);function L(Y,V,X,z,G){const Q=[].slice.call(arguments,1),ne=Q.length,re="function"==typeof Q[ne-1];if(!re&&!o())throw new Error("Callback required as last argument");if(!re){if(ne<1)throw new Error("Too few arguments provided");return 1===ne?(X=V,V=z=void 0):2===ne&&!V.getContext&&(z=X,X=V,V=void 0),new Promise(function(me,we){try{const Be=y.create(X,z);me(Y(Be,V,z))}catch(Be){we(Be)}})}if(ne<2)throw new Error("Too few arguments provided");2===ne?(G=X,X=V,V=z=void 0):3===ne&&(V.getContext&&typeof G>"u"?(G=z,z=void 0):(G=z,z=X,X=V,V=void 0));try{const me=y.create(X,z);G(null,Y(me,V,z))}catch(me){G(me)}}Ee.mo=L.bind(null,Z.render),L.bind(null,Z.renderToDataURL),L.bind(null,function(Y,V,X){return U.render(Y,X)})},2836:nt=>{nt.exports=function(){return"function"==typeof Promise&&Promise.prototype&&Promise.prototype.then}},6214:(nt,Ee,v)=>{const j=v(9089).getSymbolSize;Ee.getRowColCoords=function(y){if(1===y)return[];const Z=Math.floor(y/7)+2,U=j(y),L=145===U?26:2*Math.ceil((U-13)/(2*Z-2)),Y=[U-7];for(let V=1;V{const j=v(4058),o=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function y(Z){this.mode=j.ALPHANUMERIC,this.data=Z}y.getBitsLength=function(U){return 11*Math.floor(U/2)+U%2*6},y.prototype.getLength=function(){return this.data.length},y.prototype.getBitsLength=function(){return y.getBitsLength(this.data.length)},y.prototype.write=function(U){let L;for(L=0;L+2<=this.data.length;L+=2){let Y=45*o.indexOf(this.data[L]);Y+=o.indexOf(this.data[L+1]),U.put(Y,11)}this.data.length%2&&U.put(o.indexOf(this.data[L]),6)},nt.exports=y},4662:nt=>{function Ee(){this.buffer=[],this.length=0}Ee.prototype={get:function(v){const j=Math.floor(v/8);return 1==(this.buffer[j]>>>7-v%8&1)},put:function(v,j){for(let o=0;o>>j-o-1&1))},getLengthInBits:function(){return this.length},putBit:function(v){const j=Math.floor(this.length/8);this.buffer.length<=j&&this.buffer.push(0),v&&(this.buffer[j]|=128>>>this.length%8),this.length++}},nt.exports=Ee},5941:nt=>{function Ee(v){if(!v||v<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=v,this.data=new Uint8Array(v*v),this.reservedBit=new Uint8Array(v*v)}Ee.prototype.set=function(v,j,o,y){const Z=v*this.size+j;this.data[Z]=o,y&&(this.reservedBit[Z]=!0)},Ee.prototype.get=function(v,j){return this.data[v*this.size+j]},Ee.prototype.xor=function(v,j,o){this.data[v*this.size+j]^=o},Ee.prototype.isReserved=function(v,j){return this.reservedBit[v*this.size+j]},nt.exports=Ee},4969:(nt,Ee,v)=>{const j=v(4058);function o(y){this.mode=j.BYTE,this.data="string"==typeof y?(new TextEncoder).encode(y):new Uint8Array(y)}o.getBitsLength=function(Z){return 8*Z},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(y){for(let Z=0,U=this.data.length;Z{const j=v(7424),o=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],y=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];Ee.getBlocksCount=function(U,L){switch(L){case j.L:return o[4*(U-1)+0];case j.M:return o[4*(U-1)+1];case j.Q:return o[4*(U-1)+2];case j.H:return o[4*(U-1)+3];default:return}},Ee.getTotalCodewordsCount=function(U,L){switch(L){case j.L:return y[4*(U-1)+0];case j.M:return y[4*(U-1)+1];case j.Q:return y[4*(U-1)+2];case j.H:return y[4*(U-1)+3];default:return}}},7424:(nt,Ee)=>{Ee.L={bit:1},Ee.M={bit:0},Ee.Q={bit:3},Ee.H={bit:2},Ee.isValid=function(o){return o&&typeof o.bit<"u"&&o.bit>=0&&o.bit<4},Ee.from=function(o,y){if(Ee.isValid(o))return o;try{return function v(j){if("string"!=typeof j)throw new Error("Param is not a string");switch(j.toLowerCase()){case"l":case"low":return Ee.L;case"m":case"medium":return Ee.M;case"q":case"quartile":return Ee.Q;case"h":case"high":return Ee.H;default:throw new Error("Unknown EC Level: "+j)}}(o)}catch{return y}}},6269:(nt,Ee,v)=>{const j=v(9089).getSymbolSize;Ee.getPositions=function(Z){const U=j(Z);return[[0,0],[U-7,0],[0,U-7]]}},6254:(nt,Ee,v)=>{const j=v(9089),Z=j.getBCHDigit(1335);Ee.getEncodedBits=function(L,Y){const V=L.bit<<3|Y;let X=V<<10;for(;j.getBCHDigit(X)-Z>=0;)X^=1335<{const v=new Uint8Array(512),j=new Uint8Array(256);(function(){let y=1;for(let Z=0;Z<255;Z++)v[Z]=y,j[y]=Z,y<<=1,256&y&&(y^=285);for(let Z=255;Z<512;Z++)v[Z]=v[Z-255]})(),Ee.log=function(y){if(y<1)throw new Error("log("+y+")");return j[y]},Ee.exp=function(y){return v[y]},Ee.mul=function(y,Z){return 0===y||0===Z?0:v[j[y]+j[Z]]}},3264:(nt,Ee,v)=>{const j=v(4058),o=v(9089);function y(Z){this.mode=j.KANJI,this.data=Z}y.getBitsLength=function(U){return 13*U},y.prototype.getLength=function(){return this.data.length},y.prototype.getBitsLength=function(){return y.getBitsLength(this.data.length)},y.prototype.write=function(Z){let U;for(U=0;U=33088&&L<=40956)L-=33088;else{if(!(L>=57408&&L<=60351))throw new Error("Invalid SJIS character: "+this.data[U]+"\nMake sure your charset is UTF-8");L-=49472}L=192*(L>>>8&255)+(255&L),Z.put(L,13)}},nt.exports=y},3361:(nt,Ee)=>{Ee.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};function j(o,y,Z){switch(o){case Ee.Patterns.PATTERN000:return(y+Z)%2==0;case Ee.Patterns.PATTERN001:return y%2==0;case Ee.Patterns.PATTERN010:return Z%3==0;case Ee.Patterns.PATTERN011:return(y+Z)%3==0;case Ee.Patterns.PATTERN100:return(Math.floor(y/2)+Math.floor(Z/3))%2==0;case Ee.Patterns.PATTERN101:return y*Z%2+y*Z%3==0;case Ee.Patterns.PATTERN110:return(y*Z%2+y*Z%3)%2==0;case Ee.Patterns.PATTERN111:return(y*Z%3+(y+Z)%2)%2==0;default:throw new Error("bad maskPattern:"+o)}}Ee.isValid=function(y){return null!=y&&""!==y&&!isNaN(y)&&y>=0&&y<=7},Ee.from=function(y){return Ee.isValid(y)?parseInt(y,10):void 0},Ee.getPenaltyN1=function(y){const Z=y.size;let U=0,L=0,Y=0,V=null,X=null;for(let z=0;z=5&&(U+=L-5+3),V=Q,L=1),Q=y.get(G,z),Q===X?Y++:(Y>=5&&(U+=Y-5+3),X=Q,Y=1)}L>=5&&(U+=L-5+3),Y>=5&&(U+=Y-5+3)}return U},Ee.getPenaltyN2=function(y){const Z=y.size;let U=0;for(let L=0;L=10&&(1488===L||93===L)&&U++,Y=Y<<1&2047|y.get(X,V),X>=10&&(1488===Y||93===Y)&&U++}return 40*U},Ee.getPenaltyN4=function(y){let Z=0;const U=y.data.length;for(let Y=0;Y{const j=v(377),o=v(9359);Ee.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},Ee.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},Ee.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},Ee.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},Ee.MIXED={bit:-1},Ee.getCharCountIndicator=function(U,L){if(!U.ccBits)throw new Error("Invalid mode: "+U);if(!j.isValid(L))throw new Error("Invalid version: "+L);return L>=1&&L<10?U.ccBits[0]:L<27?U.ccBits[1]:U.ccBits[2]},Ee.getBestModeForData=function(U){return o.testNumeric(U)?Ee.NUMERIC:o.testAlphanumeric(U)?Ee.ALPHANUMERIC:o.testKanji(U)?Ee.KANJI:Ee.BYTE},Ee.toString=function(U){if(U&&U.id)return U.id;throw new Error("Invalid mode")},Ee.isValid=function(U){return U&&U.bit&&U.ccBits},Ee.from=function(U,L){if(Ee.isValid(U))return U;try{return function y(Z){if("string"!=typeof Z)throw new Error("Param is not a string");switch(Z.toLowerCase()){case"numeric":return Ee.NUMERIC;case"alphanumeric":return Ee.ALPHANUMERIC;case"kanji":return Ee.KANJI;case"byte":return Ee.BYTE;default:throw new Error("Unknown mode: "+Z)}}(U)}catch{return L}}},6628:(nt,Ee,v)=>{const j=v(4058);function o(y){this.mode=j.NUMERIC,this.data=y.toString()}o.getBitsLength=function(Z){return 10*Math.floor(Z/3)+(Z%3?Z%3*3+1:0)},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(Z){let U,L,Y;for(U=0;U+3<=this.data.length;U+=3)L=this.data.substr(U,3),Y=parseInt(L,10),Z.put(Y,10);const V=this.data.length-U;V>0&&(L=this.data.substr(U),Y=parseInt(L,10),Z.put(Y,3*V+1))},nt.exports=o},1744:(nt,Ee,v)=>{const j=v(6686);Ee.mul=function(y,Z){const U=new Uint8Array(y.length+Z.length-1);for(let L=0;L=0;){const L=U[0];for(let V=0;V{const j=v(9089),o=v(7424),y=v(4662),Z=v(5941),U=v(6214),L=v(6269),Y=v(3361),V=v(3677),X=v(6289),z=v(1252),G=v(6254),Q=v(4058),ne=v(2868);function Ie($e,Ge,st){const We=$e.size,ve=G.getEncodedBits(Ge,st);let fe,Qe;for(fe=0;fe<15;fe++)Qe=1==(ve>>fe&1),$e.set(fe<6?fe:fe<8?fe+1:We-15+fe,8,Qe,!0),$e.set(8,fe<8?We-fe-1:fe<9?15-fe-1+1:15-fe-1,Qe,!0);$e.set(We-8,8,1,!0)}function qe($e,Ge,st,We){let ve;if(Array.isArray($e))ve=ne.fromArray($e);else{if("string"!=typeof $e)throw new Error("Invalid data");{let pt=Ge;if(!pt){const wt=ne.rawSplit($e);pt=z.getBestVersionForData(wt,st)}ve=ne.fromString($e,pt||40)}}const fe=z.getBestVersionForData(ve,st);if(!fe)throw new Error("The amount of data is too big to be stored in a QR Code");if(Ge){if(Ge=0&&Te<=6&&(0===Le||6===Le)||Le>=0&&Le<=6&&(0===Te||6===Te)||Te>=2&&Te<=4&&Le>=2&&Le<=4,!0)}}(Le,Ge),function me($e){const Ge=$e.size;for(let st=8;st=7&&function Be($e,Ge){const st=$e.size,We=z.getEncodedBits(Ge);let ve,fe,Qe;for(let Te=0;Te<18;Te++)ve=Math.floor(Te/3),fe=Te%3+st-8-3,Qe=1==(We>>Te&1),$e.set(ve,fe,Qe,!0),$e.set(fe,ve,Qe,!0)}(Le,Ge),function Ne($e,Ge){const st=$e.size;let We=-1,ve=st-1,fe=7,Qe=0;for(let Te=st-1;Te>0;Te-=2)for(6===Te&&Te--;;){for(let Le=0;Le<2;Le++)if(!$e.isReserved(ve,Te-Le)){let pt=!1;Qe>>fe&1)),$e.set(ve,Te-Le,pt),fe--,-1===fe&&(Qe++,fe=7)}if(ve+=We,ve<0||st<=ve){ve-=We,We=-We;break}}}(Le,Qe),isNaN(We)&&(We=Y.getBestMask(Le,Ie.bind(null,Le,st))),Y.applyMask(We,Le),Ie(Le,st,We),{modules:Le,version:Ge,errorCorrectionLevel:st,maskPattern:We,segments:ve}}Ee.create=function(Ge,st){if(typeof Ge>"u"||""===Ge)throw new Error("No input text");let ve,fe,We=o.M;return typeof st<"u"&&(We=o.from(st.errorCorrectionLevel,o.M),ve=z.from(st.version),fe=Y.from(st.maskPattern),st.toSJISFunc&&j.setToSJISFunction(st.toSJISFunc)),qe(Ge,ve,We,fe)}},6289:(nt,Ee,v)=>{const j=v(1744);function o(y){this.genPoly=void 0,this.degree=y,this.degree&&this.initialize(this.degree)}o.prototype.initialize=function(Z){this.degree=Z,this.genPoly=j.generateECPolynomial(this.degree)},o.prototype.encode=function(Z){if(!this.genPoly)throw new Error("Encoder not initialized");const U=new Uint8Array(Z.length+this.degree);U.set(Z);const L=j.mod(U,this.genPoly),Y=this.degree-L.length;if(Y>0){const V=new Uint8Array(this.degree);return V.set(L,Y),V}return L},nt.exports=o},9359:(nt,Ee)=>{const v="[0-9]+";let o="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";o=o.replace(/u/g,"\\u");const y="(?:(?![A-Z0-9 $%*+\\-./:]|"+o+")(?:.|[\r\n]))+";Ee.KANJI=new RegExp(o,"g"),Ee.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),Ee.BYTE=new RegExp(y,"g"),Ee.NUMERIC=new RegExp(v,"g"),Ee.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");const Z=new RegExp("^"+o+"$"),U=new RegExp("^"+v+"$"),L=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");Ee.testKanji=function(V){return Z.test(V)},Ee.testNumeric=function(V){return U.test(V)},Ee.testAlphanumeric=function(V){return L.test(V)}},2868:(nt,Ee,v)=>{const j=v(4058),o=v(6628),y=v(1018),Z=v(4969),U=v(3264),L=v(9359),Y=v(9089),V=v(243);function X(Be){return unescape(encodeURIComponent(Be)).length}function z(Be,Ie,Ne){const Je=[];let He;for(;null!==(He=Be.exec(Ne));)Je.push({data:He[0],index:He.index,mode:Ie,length:He[0].length});return Je}function G(Be){const Ie=z(L.NUMERIC,j.NUMERIC,Be),Ne=z(L.ALPHANUMERIC,j.ALPHANUMERIC,Be);let Je,He;return Y.isKanjiModeEnabled()?(Je=z(L.BYTE,j.BYTE,Be),He=z(L.KANJI,j.KANJI,Be)):(Je=z(L.BYTE_KANJI,j.BYTE,Be),He=[]),Ie.concat(Ne,Je,He).sort(function($e,Ge){return $e.index-Ge.index}).map(function($e){return{data:$e.data,mode:$e.mode,length:$e.length}})}function Q(Be,Ie){switch(Ie){case j.NUMERIC:return o.getBitsLength(Be);case j.ALPHANUMERIC:return y.getBitsLength(Be);case j.KANJI:return U.getBitsLength(Be);case j.BYTE:return Z.getBitsLength(Be)}}function we(Be,Ie){let Ne;const Je=j.getBestModeForData(Be);if(Ne=j.from(Ie,Je),Ne!==j.BYTE&&Ne.bit=0?Ie[Ie.length-1]:null;return Je&&Je.mode===Ne.mode?(Ie[Ie.length-1].data+=Ne.data,Ie):(Ie.push(Ne),Ie)},[])}(Ge))},Ee.rawSplit=function(Ie){return Ee.fromArray(G(Ie,Y.isKanjiModeEnabled()))}},9089:(nt,Ee)=>{let v;const j=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Ee.getSymbolSize=function(y){if(!y)throw new Error('"version" cannot be null or undefined');if(y<1||y>40)throw new Error('"version" should be in range from 1 to 40');return 4*y+17},Ee.getSymbolTotalCodewords=function(y){return j[y]},Ee.getBCHDigit=function(o){let y=0;for(;0!==o;)y++,o>>>=1;return y},Ee.setToSJISFunction=function(y){if("function"!=typeof y)throw new Error('"toSJISFunc" is not a valid function.');v=y},Ee.isKanjiModeEnabled=function(){return typeof v<"u"},Ee.toSJIS=function(y){return v(y)}},377:(nt,Ee)=>{Ee.isValid=function(j){return!isNaN(j)&&j>=1&&j<=40}},1252:(nt,Ee,v)=>{const j=v(9089),o=v(3677),y=v(7424),Z=v(4058),U=v(377),Y=j.getBCHDigit(7973);function X(Q,ne){return Z.getCharCountIndicator(Q,ne)+4}function z(Q,ne){let re=0;return Q.forEach(function(me){const we=X(me.mode,ne);re+=we+me.getBitsLength()}),re}Ee.from=function(ne,re){return U.isValid(ne)?parseInt(ne,10):re},Ee.getCapacity=function(ne,re,me){if(!U.isValid(ne))throw new Error("Invalid QR Code version");typeof me>"u"&&(me=Z.BYTE);const Ie=8*(j.getSymbolTotalCodewords(ne)-o.getTotalCodewordsCount(ne,re));if(me===Z.MIXED)return Ie;const Ne=Ie-X(me,ne);switch(me){case Z.NUMERIC:return Math.floor(Ne/10*3);case Z.ALPHANUMERIC:return Math.floor(Ne/11*2);case Z.KANJI:return Math.floor(Ne/13);default:return Math.floor(Ne/8)}},Ee.getBestVersionForData=function(ne,re){let me;const we=y.from(re,y.M);if(Array.isArray(ne)){if(ne.length>1)return function G(Q,ne){for(let re=1;re<=40;re++)if(z(Q,re)<=Ee.getCapacity(re,ne,Z.MIXED))return re}(ne,we);if(0===ne.length)return 1;me=ne[0]}else me=ne;return function V(Q,ne,re){for(let me=1;me<=40;me++)if(ne<=Ee.getCapacity(me,re,Q))return me}(me.mode,me.getLength(),we)},Ee.getEncodedBits=function(ne){if(!U.isValid(ne)||ne<7)throw new Error("Invalid QR Code version");let re=ne<<12;for(;j.getBCHDigit(re)-Y>=0;)re^=7973<{const j=v(7077);Ee.render=function(U,L,Y){let V=Y,X=L;typeof V>"u"&&(!L||!L.getContext)&&(V=L,L=void 0),L||(X=function y(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}()),V=j.getOptions(V);const z=j.getImageWidth(U.modules.size,V),G=X.getContext("2d"),Q=G.createImageData(z,z);return j.qrToImageData(Q.data,U,V),function o(Z,U,L){Z.clearRect(0,0,U.width,U.height),U.style||(U.style={}),U.height=L,U.width=L,U.style.height=L+"px",U.style.width=L+"px"}(G,X,z),G.putImageData(Q,0,0),X},Ee.renderToDataURL=function(U,L,Y){let V=Y;return typeof V>"u"&&(!L||!L.getContext)&&(V=L,L=void 0),V||(V={}),Ee.render(U,L,V).toDataURL(V.type||"image/png",(V.rendererOpts||{}).quality)}},6511:(nt,Ee,v)=>{const j=v(7077);function o(U,L){const Y=U.a/255,V=L+'="'+U.hex+'"';return Y<1?V+" "+L+'-opacity="'+Y.toFixed(2).slice(1)+'"':V}function y(U,L,Y){let V=U+L;return typeof Y<"u"&&(V+=" "+Y),V}Ee.render=function(L,Y,V){const X=j.getOptions(Y),z=L.modules.size,G=L.modules.data,Q=z+2*X.margin,ne=X.color.light.a?"':"",re="0&&ne>0&&U[Q-1]||(V+=z?y("M",ne+Y,.5+re+Y):y("m",X,0),X=0,z=!1),ne+1',Be=''+ne+re+"\n";return"function"==typeof V&&V(null,Be),Be}},7077:(nt,Ee)=>{function v(j){if("number"==typeof j&&(j=j.toString()),"string"!=typeof j)throw new Error("Color should be defined as hex string");let o=j.slice().replace("#","").split("");if(o.length<3||5===o.length||o.length>8)throw new Error("Invalid hex color: "+j);(3===o.length||4===o.length)&&(o=Array.prototype.concat.apply([],o.map(function(Z){return[Z,Z]}))),6===o.length&&o.push("F","F");const y=parseInt(o.join(""),16);return{r:y>>24&255,g:y>>16&255,b:y>>8&255,a:255&y,hex:"#"+o.slice(0,6).join("")}}Ee.getOptions=function(o){o||(o={}),o.color||(o.color={});const Z=o.width&&o.width>=21?o.width:void 0;return{width:Z,scale:Z?4:o.scale||4,margin:typeof o.margin>"u"||null===o.margin||o.margin<0?4:o.margin,color:{dark:v(o.color.dark||"#000000ff"),light:v(o.color.light||"#ffffffff")},type:o.type,rendererOpts:o.rendererOpts||{}}},Ee.getScale=function(o,y){return y.width&&y.width>=o+2*y.margin?y.width/(o+2*y.margin):y.scale},Ee.getImageWidth=function(o,y){const Z=Ee.getScale(o,y);return Math.floor((o+2*y.margin)*Z)},Ee.qrToImageData=function(o,y,Z){const U=y.modules.size,L=y.modules.data,Y=Ee.getScale(U,Z),V=Math.floor((U+2*Z.margin)*Y),X=Z.margin*Y,z=[Z.color.light,Z.color.dark];for(let G=0;G=X&&Q>=X&&G{"use strict";v.d(Ee,{t:()=>o});var j=v(1413);class o extends j.B{constructor(Z){super(),this._value=Z}get value(){return this.getValue()}_subscribe(Z){const U=super._subscribe(Z);return!U.closed&&Z.next(this._value),U}getValue(){const{hasError:Z,thrownError:U,_value:L}=this;if(Z)throw U;return this._throwIfClosed(),L}next(Z){super.next(this._value=Z)}}},4226:(nt,Ee,v)=>{"use strict";v.d(Ee,{c:()=>z});var j=v(7707),o=v(8359),y=v(3494),Z=v(3669);var Y=v(1026),V=v(8071),X=v(9786);let z=(()=>{class re{constructor(we){we&&(this._subscribe=we)}lift(we){const Be=new re;return Be.source=this,Be.operator=we,Be}subscribe(we,Be,Ie){const Ne=function ne(re){return re&&re instanceof j.vU||function Q(re){return re&&(0,V.T)(re.next)&&(0,V.T)(re.error)&&(0,V.T)(re.complete)}(re)&&(0,o.Uv)(re)}(we)?we:new j.Ms(we,Be,Ie);return(0,X.Y)(()=>{const{operator:Je,source:He}=this;Ne.add(Je?Je.call(Ne,He):He?this._subscribe(Ne):this._trySubscribe(Ne))}),Ne}_trySubscribe(we){try{return this._subscribe(we)}catch(Be){we.error(Be)}}forEach(we,Be){return new(Be=G(Be))((Ie,Ne)=>{const Je=new j.Ms({next:He=>{try{we(He)}catch(qe){Ne(qe),Je.unsubscribe()}},error:Ne,complete:Ie});this.subscribe(Je)})}_subscribe(we){var Be;return null===(Be=this.source)||void 0===Be?void 0:Be.subscribe(we)}[y.s](){return this}pipe(...we){return function L(re){return 0===re.length?Z.D:1===re.length?re[0]:function(we){return re.reduce((Be,Ie)=>Ie(Be),we)}}(we)(this)}toPromise(we){return new(we=G(we))((Be,Ie)=>{let Ne;this.subscribe(Je=>Ne=Je,Je=>Ie(Je),()=>Be(Ne))})}}return re.create=me=>new re(me),re})();function G(re){var me;return null!==(me=re??Y.$.Promise)&&void 0!==me?me:Promise}},1413:(nt,Ee,v)=>{"use strict";v.d(Ee,{B:()=>Y});var j=v(4226),o=v(8359);const Z=(0,v(1853).L)(X=>function(){X(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var U=v(7908),L=v(9786);let Y=(()=>{class X extends j.c{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(G){const Q=new V(this,this);return Q.operator=G,Q}_throwIfClosed(){if(this.closed)throw new Z}next(G){(0,L.Y)(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const Q of this.currentObservers)Q.next(G)}})}error(G){(0,L.Y)(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=G;const{observers:Q}=this;for(;Q.length;)Q.shift().error(G)}})}complete(){(0,L.Y)(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:G}=this;for(;G.length;)G.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var G;return(null===(G=this.observers)||void 0===G?void 0:G.length)>0}_trySubscribe(G){return this._throwIfClosed(),super._trySubscribe(G)}_subscribe(G){return this._throwIfClosed(),this._checkFinalizedStatuses(G),this._innerSubscribe(G)}_innerSubscribe(G){const{hasError:Q,isStopped:ne,observers:re}=this;return Q||ne?o.Kn:(this.currentObservers=null,re.push(G),new o.yU(()=>{this.currentObservers=null,(0,U.o)(re,G)}))}_checkFinalizedStatuses(G){const{hasError:Q,thrownError:ne,isStopped:re}=this;Q?G.error(ne):re&&G.complete()}asObservable(){const G=new j.c;return G.source=this,G}}return X.create=(z,G)=>new V(z,G),X})();class V extends Y{constructor(z,G){super(),this.destination=z,this.source=G}next(z){var G,Q;null===(Q=null===(G=this.destination)||void 0===G?void 0:G.next)||void 0===Q||Q.call(G,z)}error(z){var G,Q;null===(Q=null===(G=this.destination)||void 0===G?void 0:G.error)||void 0===Q||Q.call(G,z)}complete(){var z,G;null===(G=null===(z=this.destination)||void 0===z?void 0:z.complete)||void 0===G||G.call(z)}_subscribe(z){var G,Q;return null!==(Q=null===(G=this.source)||void 0===G?void 0:G.subscribe(z))&&void 0!==Q?Q:o.Kn}}},7707:(nt,Ee,v)=>{"use strict";v.d(Ee,{Ms:()=>we,vU:()=>Q});var j=v(8071),o=v(8359),y=v(1026),Z=v(5334),U=v(5343);const L=X("C",void 0,void 0);function X(He,qe,$e){return{kind:He,value:qe,error:$e}}var z=v(9270),G=v(9786);class Q extends o.yU{constructor(qe){super(),this.isStopped=!1,qe?(this.destination=qe,(0,o.Uv)(qe)&&qe.add(this)):this.destination=Je}static create(qe,$e,Ge){return new we(qe,$e,Ge)}next(qe){this.isStopped?Ne(function V(He){return X("N",He,void 0)}(qe),this):this._next(qe)}error(qe){this.isStopped?Ne(function Y(He){return X("E",void 0,He)}(qe),this):(this.isStopped=!0,this._error(qe))}complete(){this.isStopped?Ne(L,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(qe){this.destination.next(qe)}_error(qe){try{this.destination.error(qe)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const ne=Function.prototype.bind;function re(He,qe){return ne.call(He,qe)}class me{constructor(qe){this.partialObserver=qe}next(qe){const{partialObserver:$e}=this;if($e.next)try{$e.next(qe)}catch(Ge){Be(Ge)}}error(qe){const{partialObserver:$e}=this;if($e.error)try{$e.error(qe)}catch(Ge){Be(Ge)}else Be(qe)}complete(){const{partialObserver:qe}=this;if(qe.complete)try{qe.complete()}catch($e){Be($e)}}}class we extends Q{constructor(qe,$e,Ge){let st;if(super(),(0,j.T)(qe)||!qe)st={next:qe??void 0,error:$e??void 0,complete:Ge??void 0};else{let We;this&&y.$.useDeprecatedNextContext?(We=Object.create(qe),We.unsubscribe=()=>this.unsubscribe(),st={next:qe.next&&re(qe.next,We),error:qe.error&&re(qe.error,We),complete:qe.complete&&re(qe.complete,We)}):st=qe}this.destination=new me(st)}}function Be(He){y.$.useDeprecatedSynchronousErrorHandling?(0,G.l)(He):(0,Z.m)(He)}function Ne(He,qe){const{onStoppedNotification:$e}=y.$;$e&&z.f.setTimeout(()=>$e(He,qe))}const Je={closed:!0,next:U.l,error:function Ie(He){throw He},complete:U.l}},8359:(nt,Ee,v)=>{"use strict";v.d(Ee,{Kn:()=>L,yU:()=>U,Uv:()=>Y});var j=v(8071);const y=(0,v(1853).L)(X=>function(G){X(this),this.message=G?`${G.length} errors occurred during unsubscription:\n${G.map((Q,ne)=>`${ne+1}) ${Q.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=G});var Z=v(7908);class U{constructor(z){this.initialTeardown=z,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let z;if(!this.closed){this.closed=!0;const{_parentage:G}=this;if(G)if(this._parentage=null,Array.isArray(G))for(const re of G)re.remove(this);else G.remove(this);const{initialTeardown:Q}=this;if((0,j.T)(Q))try{Q()}catch(re){z=re instanceof y?re.errors:[re]}const{_finalizers:ne}=this;if(ne){this._finalizers=null;for(const re of ne)try{V(re)}catch(me){z=z??[],me instanceof y?z=[...z,...me.errors]:z.push(me)}}if(z)throw new y(z)}}add(z){var G;if(z&&z!==this)if(this.closed)V(z);else{if(z instanceof U){if(z.closed||z._hasParent(this))return;z._addParent(this)}(this._finalizers=null!==(G=this._finalizers)&&void 0!==G?G:[]).push(z)}}_hasParent(z){const{_parentage:G}=this;return G===z||Array.isArray(G)&&G.includes(z)}_addParent(z){const{_parentage:G}=this;this._parentage=Array.isArray(G)?(G.push(z),G):G?[G,z]:z}_removeParent(z){const{_parentage:G}=this;G===z?this._parentage=null:Array.isArray(G)&&(0,Z.o)(G,z)}remove(z){const{_finalizers:G}=this;G&&(0,Z.o)(G,z),z instanceof U&&z._removeParent(this)}}U.EMPTY=(()=>{const X=new U;return X.closed=!0,X})();const L=U.EMPTY;function Y(X){return X instanceof U||X&&"closed"in X&&(0,j.T)(X.remove)&&(0,j.T)(X.add)&&(0,j.T)(X.unsubscribe)}function V(X){(0,j.T)(X)?X():X.unsubscribe()}},1026:(nt,Ee,v)=>{"use strict";v.d(Ee,{$:()=>j});const j={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},4360:(nt,Ee,v)=>{"use strict";v.d(Ee,{H:()=>y,_:()=>o});var j=v(7707);function o(Z,U,L,Y,V){return new y(Z,U,L,Y,V)}class y extends j.vU{constructor(U,L,Y,V,X,z){super(U),this.onFinalize=X,this.shouldUnsubscribe=z,this._next=L?function(G){try{L(G)}catch(Q){U.error(Q)}}:super._next,this._error=V?function(G){try{V(G)}catch(Q){U.error(Q)}finally{this.unsubscribe()}}:super._error,this._complete=Y?function(){try{Y()}catch(G){U.error(G)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var U;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:L}=this;super.unsubscribe(),!L&&(null===(U=this.onFinalize)||void 0===U||U.call(this))}}}},6354:(nt,Ee,v)=>{"use strict";v.d(Ee,{T:()=>y});var j=v(9974),o=v(4360);function y(Z,U){return(0,j.N)((L,Y)=>{let V=0;L.subscribe((0,o._)(Y,X=>{Y.next(Z.call(U,X,V++))}))})}},9270:(nt,Ee,v)=>{"use strict";v.d(Ee,{f:()=>j});const j={setTimeout(o,y,...Z){const{delegate:U}=j;return U?.setTimeout?U.setTimeout(o,y,...Z):setTimeout(o,y,...Z)},clearTimeout(o){const{delegate:y}=j;return(y?.clearTimeout||clearTimeout)(o)},delegate:void 0}},3494:(nt,Ee,v)=>{"use strict";v.d(Ee,{s:()=>j});const j="function"==typeof Symbol&&Symbol.observable||"@@observable"},7908:(nt,Ee,v)=>{"use strict";function j(o,y){if(o){const Z=o.indexOf(y);0<=Z&&o.splice(Z,1)}}v.d(Ee,{o:()=>j})},1853:(nt,Ee,v)=>{"use strict";function j(o){const Z=o(U=>{Error.call(U),U.stack=(new Error).stack});return Z.prototype=Object.create(Error.prototype),Z.prototype.constructor=Z,Z}v.d(Ee,{L:()=>j})},9786:(nt,Ee,v)=>{"use strict";v.d(Ee,{Y:()=>y,l:()=>Z});var j=v(1026);let o=null;function y(U){if(j.$.useDeprecatedSynchronousErrorHandling){const L=!o;if(L&&(o={errorThrown:!1,error:null}),U(),L){const{errorThrown:Y,error:V}=o;if(o=null,Y)throw V}}else U()}function Z(U){j.$.useDeprecatedSynchronousErrorHandling&&o&&(o.errorThrown=!0,o.error=U)}},3669:(nt,Ee,v)=>{"use strict";function j(o){return o}v.d(Ee,{D:()=>j})},8071:(nt,Ee,v)=>{"use strict";function j(o){return"function"==typeof o}v.d(Ee,{T:()=>j})},9974:(nt,Ee,v)=>{"use strict";v.d(Ee,{N:()=>y});var j=v(8071);function y(Z){return U=>{if(function o(Z){return(0,j.T)(Z?.lift)}(U))return U.lift(function(L){try{return Z(L,this)}catch(Y){this.error(Y)}});throw new TypeError("Unable to lift unknown Observable type")}}},5343:(nt,Ee,v)=>{"use strict";function j(){}v.d(Ee,{l:()=>j})},5334:(nt,Ee,v)=>{"use strict";v.d(Ee,{m:()=>y});var j=v(1026),o=v(9270);function y(Z){o.f.setTimeout(()=>{const{onUnhandledError:U}=j.$;if(!U)throw Z;U(Z)})}},4999:(nt,Ee)=>{"use strict";const{hasOwnProperty:v}=Object.prototype,j=me();j.configure=me,j.stringify=j,j.default=j,Ee.stringify=j,Ee.configure=me,nt.exports=j;const o=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function y(we){return we.length<5e3&&!o.test(we)?`"${we}"`:JSON.stringify(we)}function Z(we,Be){if(we.length>200||Be)return we.sort(Be);for(let Ie=1;IeNe;)we[Je]=we[Je-1],Je--;we[Je]=Ne}return we}const U=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function L(we){return void 0!==U.call(we)&&0!==we.length}function Y(we,Be,Ie){we.length= 1`)}return void 0===Ie?1/0:Ie}function Q(we){return 1===we?"1 item":`${we} items`}function me(we){const Be=function re(we){if(v.call(we,"strict")){const Be=we.strict;if("boolean"!=typeof Be)throw new TypeError('The "strict" argument must be of type boolean');if(Be)return Ie=>{let Ne="Object can not safely be stringified. Received type "+typeof Ie;throw"function"!=typeof Ie&&(Ne+=` (${Ie.toString()})`),new Error(Ne)}}}(we={...we});Be&&(void 0===we.bigint&&(we.bigint=!1),"circularValue"in we||(we.circularValue=Error));const Ie=function V(we){if(v.call(we,"circularValue")){const Be=we.circularValue;if("string"==typeof Be)return`"${Be}"`;if(null==Be)return Be;if(Be===Error||Be===TypeError)return{toString(){throw new TypeError("Converting circular structure to JSON")}};throw new TypeError('The "circularValue" argument must be of type string or the value null or undefined')}return'"[Circular]"'}(we),Ne=function z(we,Be){let Ie;if(v.call(we,Be)&&(Ie=we[Be],"boolean"!=typeof Ie))throw new TypeError(`The "${Be}" argument must be of type boolean`);return void 0===Ie||Ie}(we,"bigint"),Je=function X(we){let Be;if(v.call(we,"deterministic")&&(Be=we.deterministic,"boolean"!=typeof Be&&"function"!=typeof Be))throw new TypeError('The "deterministic" argument must be of type boolean or comparator function');return void 0===Be||Be}(we),He="function"==typeof Je?Je:void 0,qe=G(we,"maximumDepth"),$e=G(we,"maximumBreadth");function Ge(Qe,Te,Le,pt,wt,Nt){let Rt=Te[Qe];switch("object"==typeof Rt&&null!==Rt&&"function"==typeof Rt.toJSON&&(Rt=Rt.toJSON(Qe)),Rt=pt.call(Te,Qe,Rt),typeof Rt){case"string":return y(Rt);case"object":{if(null===Rt)return"null";if(-1!==Le.indexOf(Rt))return Ie;let fn="",$n=",";const Qi=Nt;if(Array.isArray(Rt)){if(0===Rt.length)return"[]";if(qe$e&&(fn+=`${$n}"... ${Q(Rt.length-$e-1)} not stringified"`),""!==wt&&(fn+=`\n${Qi}`),Le.pop(),`[${fn}]`}let ui=Object.keys(Rt);const Bi=ui.length;if(0===Bi)return"{}";if(qe$e&&(fn+=`${ci}"...":${ri}"${Q(Bi-$e)} not stringified"`,ci=$n),""!==wt&&ci.length>1&&(fn=`\n${Nt}${fn}\n${Qi}`),Le.pop(),`{${fn}}`}case"number":return isFinite(Rt)?String(Rt):Be?Be(Rt):"null";case"boolean":return!0===Rt?"true":"false";case"undefined":return;case"bigint":if(Ne)return String(Rt);default:return Be?Be(Rt):void 0}}function st(Qe,Te,Le,pt,wt,Nt){switch("object"==typeof Te&&null!==Te&&"function"==typeof Te.toJSON&&(Te=Te.toJSON(Qe)),typeof Te){case"string":return y(Te);case"object":{if(null===Te)return"null";if(-1!==Le.indexOf(Te))return Ie;const Rt=Nt;let fn="",$n=",";if(Array.isArray(Te)){if(0===Te.length)return"[]";if(qe$e&&(fn+=`${$n}"... ${Q(Te.length-$e-1)} not stringified"`),""!==wt&&(fn+=`\n${Rt}`),Le.pop(),`[${fn}]`}Le.push(Te);let Qi="";""!==wt&&($n=`,\n${Nt+=wt}`,Qi=" ");let ui="";for(const Bi of pt){const ri=st(Bi,Te[Bi],Le,pt,wt,Nt);void 0!==ri&&(fn+=`${ui}${y(Bi)}:${Qi}${ri}`,ui=$n)}return""!==wt&&ui.length>1&&(fn=`\n${Nt}${fn}\n${Rt}`),Le.pop(),`{${fn}}`}case"number":return isFinite(Te)?String(Te):Be?Be(Te):"null";case"boolean":return!0===Te?"true":"false";case"undefined":return;case"bigint":if(Ne)return String(Te);default:return Be?Be(Te):void 0}}function We(Qe,Te,Le,pt,wt){switch(typeof Te){case"string":return y(Te);case"object":{if(null===Te)return"null";if("function"==typeof Te.toJSON){if("object"!=typeof(Te=Te.toJSON(Qe)))return We(Qe,Te,Le,pt,wt);if(null===Te)return"null"}if(-1!==Le.indexOf(Te))return Ie;const Nt=wt;if(Array.isArray(Te)){if(0===Te.length)return"[]";if(qe$e&&(ri+=`${ci}"... ${Q(Te.length-$e-1)} not stringified"`),ri+=`\n${Nt}`,Le.pop(),`[${ri}]`}let Rt=Object.keys(Te);const fn=Rt.length;if(0===fn)return"{}";if(qe$e&&(Qi+=`${ui}"...": "${Q(fn-$e)} not stringified"`,ui=$n),""!==ui&&(Qi=`\n${wt}${Qi}\n${Nt}`),Le.pop(),`{${Qi}}`}case"number":return isFinite(Te)?String(Te):Be?Be(Te):"null";case"boolean":return!0===Te?"true":"false";case"undefined":return;case"bigint":if(Ne)return String(Te);default:return Be?Be(Te):void 0}}function ve(Qe,Te,Le){switch(typeof Te){case"string":return y(Te);case"object":{if(null===Te)return"null";if("function"==typeof Te.toJSON){if("object"!=typeof(Te=Te.toJSON(Qe)))return ve(Qe,Te,Le);if(null===Te)return"null"}if(-1!==Le.indexOf(Te))return Ie;let pt="";const wt=void 0!==Te.length;if(wt&&Array.isArray(Te)){if(0===Te.length)return"[]";if(qe$e&&(pt+=`,"... ${Q(Te.length-$e-1)} not stringified"`),Le.pop(),`[${pt}]`}let Nt=Object.keys(Te);const Rt=Nt.length;if(0===Rt)return"{}";if(qe$e&&(pt+=`${fn}"...":"${Q(Rt-$e)} not stringified"`),Le.pop(),`{${pt}}`}case"number":return isFinite(Te)?String(Te):Be?Be(Te):"null";case"boolean":return!0===Te?"true":"false";case"undefined":return;case"bigint":if(Ne)return String(Te);default:return Be?Be(Te):void 0}}return function fe(Qe,Te,Le){if(arguments.length>1){let pt="";if("number"==typeof Le?pt=" ".repeat(Math.min(Le,10)):"string"==typeof Le&&(pt=Le.slice(0,10)),null!=Te){if("function"==typeof Te)return Ge("",{"":Qe},[],Te,pt,"");if(Array.isArray(Te))return st("",Qe,[],function ne(we){const Be=new Set;for(const Ie of we)("string"==typeof Ie||"number"==typeof Ie)&&Be.add(String(Ie));return Be}(Te),pt,"")}if(0!==pt.length)return We("",Qe,[],pt,"")}return ve("",Qe,[])}}},5568:function(nt,Ee){!function(v){"use strict";function j(){for(var De=arguments.length,he=Array(De),Ve=0;Ve1){he[0]=he[0].slice(0,-1);for(var ct=he.length-1,vt=1;vt= 0x80 (not a basic code point)","invalid-input":"Invalid input"},We=Math.floor,ve=String.fromCharCode;function fe(De){throw new RangeError(Ge[De])}function Te(De,he){var Ve=De.split("@"),ct="";return Ve.length>1&&(ct=Ve[0]+"@",De=Ve[1]),ct+function Qe(De,he){for(var Ve=[],ct=De.length;ct--;)Ve[ct]=he(De[ct]);return Ve}((De=De.replace($e,".")).split("."),he).join(".")}function Le(De){for(var he=[],Ve=0,ct=De.length;Ve=55296&&vt<=56319&&Ve>1,he+=We(he/Ve);he>455;vt+=36)he=We(he/35);return We(vt+36*he/(he+38))},fn=function(he){var Ve=[],ct=he.length,vt=0,tn=128,Qt=72,Gt=he.lastIndexOf("-");Gt<0&&(Gt=0);for(var Pn=0;Pn=128&&fe("not-basic"),Ve.push(he.charCodeAt(Pn));for(var Un=Gt>0?Gt+1:0;Un=ct&&fe("invalid-input");var En=wt(he.charCodeAt(Un++));(En>=36||En>We((Q-vt)/Wn))&&fe("overflow"),vt+=En*Wn;var Fn=Ar<=Qt?1:Ar>=Qt+26?26:Ar-Qt;if(EnWe(Q/pn)&&fe("overflow"),Wn*=pn}var Ke=Ve.length+1;Qt=Rt(vt-mn,Ke,0==mn),We(vt/Ke)>Q-tn&&fe("overflow"),tn+=We(vt/Ke),vt%=Ke,Ve.splice(vt++,0,tn)}return String.fromCodePoint.apply(String,Ve)},$n=function(he){var Ve=[],ct=(he=Le(he)).length,vt=128,tn=0,Qt=72,Gt=!0,Pn=!1,Un=void 0;try{for(var Wn,mn=he[Symbol.iterator]();!(Gt=(Wn=mn.next()).done);Gt=!0){var Ar=Wn.value;Ar<128&&Ve.push(ve(Ar))}}catch(Ui){Pn=!0,Un=Ui}finally{try{!Gt&&mn.return&&mn.return()}finally{if(Pn)throw Un}}var En=Ve.length,Fn=En;for(En&&Ve.push("-");Fn=vt&&viWe((Q-tn)/eo)&&fe("overflow"),tn+=(pn-vt)*eo,vt=pn;var Ao=!0,To=!1,Sn=void 0;try{for(var on,dn=he[Symbol.iterator]();!(Ao=(on=dn.next()).done);Ao=!0){var St=on.value;if(StQ&&fe("overflow"),St==vt){for(var nn=tn,ni=36;;ni+=36){var li=ni<=Qt?1:ni>=Qt+26?26:ni-Qt;if(nn>6|192).toString(16).toUpperCase()+"%"+(63&he|128).toString(16).toUpperCase():"%"+(he>>12|224).toString(16).toUpperCase()+"%"+(he>>6&63|128).toString(16).toUpperCase()+"%"+(63&he|128).toString(16).toUpperCase()}function it(De){for(var he="",Ve=0,ct=De.length;Ve=194&&vt<224){if(ct-Ve>=6){var tn=parseInt(De.substr(Ve+4,2),16);he+=String.fromCharCode((31&vt)<<6|63&tn)}else he+=De.substr(Ve,6);Ve+=6}else if(vt>=224){if(ct-Ve>=9){var Qt=parseInt(De.substr(Ve+4,2),16),Gt=parseInt(De.substr(Ve+7,2),16);he+=String.fromCharCode((15&vt)<<12|(63&Qt)<<6|63&Gt)}else he+=De.substr(Ve,9);Ve+=9}else he+=De.substr(Ve,3),Ve+=3}return he}function kt(De,he){function Ve(ct){var vt=it(ct);return vt.match(he.UNRESERVED)?vt:ct}return De.scheme&&(De.scheme=String(De.scheme).replace(he.PCT_ENCODED,Ve).toLowerCase().replace(he.NOT_SCHEME,"")),void 0!==De.userinfo&&(De.userinfo=String(De.userinfo).replace(he.PCT_ENCODED,Ve).replace(he.NOT_USERINFO,ci).replace(he.PCT_ENCODED,Z)),void 0!==De.host&&(De.host=String(De.host).replace(he.PCT_ENCODED,Ve).toLowerCase().replace(he.NOT_HOST,ci).replace(he.PCT_ENCODED,Z)),void 0!==De.path&&(De.path=String(De.path).replace(he.PCT_ENCODED,Ve).replace(De.scheme?he.NOT_PATH:he.NOT_PATH_NOSCHEME,ci).replace(he.PCT_ENCODED,Z)),void 0!==De.query&&(De.query=String(De.query).replace(he.PCT_ENCODED,Ve).replace(he.NOT_QUERY,ci).replace(he.PCT_ENCODED,Z)),void 0!==De.fragment&&(De.fragment=String(De.fragment).replace(he.PCT_ENCODED,Ve).replace(he.NOT_FRAGMENT,ci).replace(he.PCT_ENCODED,Z)),De}function qt(De){return De.replace(/^0*(.*)/,"$1")||"0"}function cn(De,he){var Ve=De.match(he.IPV4ADDRESS)||[],vt=z(Ve,2)[1];return vt?vt.split(".").map(qt).join("."):De}function Wt(De,he){var Ve=De.match(he.IPV6ADDRESS)||[],ct=z(Ve,3),vt=ct[1],tn=ct[2];if(vt){for(var Qt=vt.toLowerCase().split("::").reverse(),Gt=z(Qt,2),Pn=Gt[0],Un=Gt[1],mn=Un?Un.split(":").map(qt):[],Wn=Pn.split(":").map(qt),Ar=he.IPV4ADDRESS.test(Wn[Wn.length-1]),En=Ar?7:8,Fn=Wn.length-En,pn=Array(En),Ke=0;Ke1){var bi=pn.slice(0,Bn.index),vi=pn.slice(Bn.index+Bn.length);ti=bi.join(":")+"::"+vi.join(":")}else ti=pn.join(":");return tn&&(ti+="%"+tn),ti}return De}var _n=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,si=void 0==="".match(/(){0}/)[1];function Zi(De){var he=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Ve={},ct=!1!==he.iri?X:V;"suffix"===he.reference&&(De=(he.scheme?he.scheme+":":"")+"//"+De);var vt=De.match(_n);if(vt){si?(Ve.scheme=vt[1],Ve.userinfo=vt[3],Ve.host=vt[4],Ve.port=parseInt(vt[5],10),Ve.path=vt[6]||"",Ve.query=vt[7],Ve.fragment=vt[8],isNaN(Ve.port)&&(Ve.port=vt[5])):(Ve.scheme=vt[1]||void 0,Ve.userinfo=-1!==De.indexOf("@")?vt[3]:void 0,Ve.host=-1!==De.indexOf("//")?vt[4]:void 0,Ve.port=parseInt(vt[5],10),Ve.path=vt[6]||"",Ve.query=-1!==De.indexOf("?")?vt[7]:void 0,Ve.fragment=-1!==De.indexOf("#")?vt[8]:void 0,isNaN(Ve.port)&&(Ve.port=De.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?vt[4]:void 0)),Ve.host&&(Ve.host=Wt(cn(Ve.host,ct),ct)),Ve.reference=void 0!==Ve.scheme||void 0!==Ve.userinfo||void 0!==Ve.host||void 0!==Ve.port||Ve.path||void 0!==Ve.query?void 0===Ve.scheme?"relative":void 0===Ve.fragment?"absolute":"uri":"same-document",he.reference&&"suffix"!==he.reference&&he.reference!==Ve.reference&&(Ve.error=Ve.error||"URI is not a "+he.reference+" reference.");var tn=ri[(he.scheme||Ve.scheme||"").toLowerCase()];if(he.unicodeSupport||tn&&tn.unicodeSupport)kt(Ve,ct);else{if(Ve.host&&(he.domainHost||tn&&tn.domainHost))try{Ve.host=Bi.toASCII(Ve.host.replace(ct.PCT_ENCODED,it).toLowerCase())}catch(Qt){Ve.error=Ve.error||"Host's domain name can not be converted to ASCII via punycode: "+Qt}kt(Ve,V)}tn&&tn.parse&&tn.parse(Ve,he)}else Ve.error=Ve.error||"URI can not be parsed.";return Ve}var Lr=/^\.\.?\//,pr=/^\/\.(\/|$)/,Ii=/^\/\.\.(\/|$)/,Jt=/^\/?(?:.|\n)*?(?=\/|$)/;function xr(De){for(var he=[];De.length;)if(De.match(Lr))De=De.replace(Lr,"");else if(De.match(pr))De=De.replace(pr,"/");else if(De.match(Ii))De=De.replace(Ii,"/"),he.pop();else if("."===De||".."===De)De="";else{var Ve=De.match(Jt);if(!Ve)throw new Error("Unexpected dot segment condition");var ct=Ve[0];De=De.slice(ct.length),he.push(ct)}return he.join("")}function br(De){var he=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Ve=he.iri?X:V,ct=[],vt=ri[(he.scheme||De.scheme||"").toLowerCase()];if(vt&&vt.serialize&&vt.serialize(De,he),De.host&&!Ve.IPV6ADDRESS.test(De.host)&&(he.domainHost||vt&&vt.domainHost))try{De.host=he.iri?Bi.toUnicode(De.host):Bi.toASCII(De.host.replace(Ve.PCT_ENCODED,it).toLowerCase())}catch(Gt){De.error=De.error||"Host's domain name can not be converted to "+(he.iri?"Unicode":"ASCII")+" via punycode: "+Gt}kt(De,Ve),"suffix"!==he.reference&&De.scheme&&(ct.push(De.scheme),ct.push(":"));var tn=function fr(De,he){var Ve=!1!==he.iri?X:V,ct=[];return void 0!==De.userinfo&&(ct.push(De.userinfo),ct.push("@")),void 0!==De.host&&ct.push(Wt(cn(String(De.host),Ve),Ve).replace(Ve.IPV6ADDRESS,function(vt,tn,Qt){return"["+tn+(Qt?"%25"+Qt:"")+"]"})),("number"==typeof De.port||"string"==typeof De.port)&&(ct.push(":"),ct.push(String(De.port))),ct.length?ct.join(""):void 0}(De,he);if(void 0!==tn&&("suffix"!==he.reference&&ct.push("//"),ct.push(tn),De.path&&"/"!==De.path.charAt(0)&&ct.push("/")),void 0!==De.path){var Qt=De.path;!he.absolutePath&&(!vt||!vt.absolutePath)&&(Qt=xr(Qt)),void 0===tn&&(Qt=Qt.replace(/^\/\//,"/%2F")),ct.push(Qt)}return void 0!==De.query&&(ct.push("?"),ct.push(De.query)),void 0!==De.fragment&&(ct.push("#"),ct.push(De.fragment)),ct.join("")}function Ur(De,he){var Ve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},vt={};return arguments[3]||(De=Zi(br(De,Ve),Ve),he=Zi(br(he,Ve),Ve)),!(Ve=Ve||{}).tolerant&&he.scheme?(vt.scheme=he.scheme,vt.userinfo=he.userinfo,vt.host=he.host,vt.port=he.port,vt.path=xr(he.path||""),vt.query=he.query):(void 0!==he.userinfo||void 0!==he.host||void 0!==he.port?(vt.userinfo=he.userinfo,vt.host=he.host,vt.port=he.port,vt.path=xr(he.path||""),vt.query=he.query):(he.path?("/"===he.path.charAt(0)?vt.path=xr(he.path):(vt.path=void 0===De.userinfo&&void 0===De.host&&void 0===De.port||De.path?De.path?De.path.slice(0,De.path.lastIndexOf("/")+1)+he.path:he.path:"/"+he.path,vt.path=xr(vt.path)),vt.query=he.query):(vt.path=De.path,vt.query=void 0!==he.query?he.query:De.query),vt.userinfo=De.userinfo,vt.host=De.host,vt.port=De.port),vt.scheme=De.scheme),vt.fragment=he.fragment,vt}function Fi(De,he){return De&&De.toString().replace(he&&he.iri?X.PCT_ENCODED:V.PCT_ENCODED,it)}var Fs={scheme:"http",domainHost:!0,parse:function(he,Ve){return he.host||(he.error=he.error||"HTTP URIs must have a host."),he},serialize:function(he,Ve){var ct="https"===String(he.scheme).toLowerCase();return(he.port===(ct?443:80)||""===he.port)&&(he.port=void 0),he.path||(he.path="/"),he}},Yo={scheme:"https",domainHost:Fs.domainHost,parse:Fs.parse,serialize:Fs.serialize};function Xr(De){return"boolean"==typeof De.secure?De.secure:"wss"===String(De.scheme).toLowerCase()}var as={scheme:"ws",domainHost:!0,parse:function(he,Ve){var ct=he;return ct.secure=Xr(ct),ct.resourceName=(ct.path||"/")+(ct.query?"?"+ct.query:""),ct.path=void 0,ct.query=void 0,ct},serialize:function(he,Ve){if((he.port===(Xr(he)?443:80)||""===he.port)&&(he.port=void 0),"boolean"==typeof he.secure&&(he.scheme=he.secure?"wss":"ws",he.secure=void 0),he.resourceName){var ct=he.resourceName.split("?"),vt=z(ct,2),tn=vt[0],Qt=vt[1];he.path=tn&&"/"!==tn?tn:void 0,he.query=Qt,he.resourceName=void 0}return he.fragment=void 0,he}},po={scheme:"wss",domainHost:as.domainHost,parse:as.parse,serialize:as.serialize},Ac={},et="[A-Za-z0-9\\-\\.\\_\\~\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]",Ye="[0-9A-Fa-f]",Tt=o(o("%[EFef]"+Ye+"%"+Ye+Ye+"%"+Ye+Ye)+"|"+o("%[89A-Fa-f]"+Ye+"%"+Ye+Ye)+"|"+o("%"+Ye+Ye)),ln=j("[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",'[\\"\\\\]'),ei=new RegExp(et,"g"),Qn=new RegExp(Tt,"g"),Xt=new RegExp(j("[^]","[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]","[\\.]",'[\\"]',ln),"g"),Rn=new RegExp(j("[^]",et,"[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"),"g"),oi=Rn;function ji(De){var he=it(De);return he.match(ei)?he:De}var Sr={scheme:"mailto",parse:function(he,Ve){var ct=he,vt=ct.to=ct.path?ct.path.split(","):[];if(ct.path=void 0,ct.query){for(var tn=!1,Qt={},Gt=ct.query.split("&"),Pn=0,Un=Gt.length;Pn{"use strict";const nt=globalThis;function Ee(et){return(nt.__Zone_symbol_prefix||"__zone_symbol__")+et}const o=Object.getOwnPropertyDescriptor,y=Object.defineProperty,Z=Object.getPrototypeOf,U=Object.create,L=Array.prototype.slice,Y="addEventListener",V="removeEventListener",X=Ee(Y),z=Ee(V),G="true",Q="false",ne=Ee("");function re(et,Ye){return Zone.current.wrap(et,Ye)}function me(et,Ye,Tt,rt,Et){return Zone.current.scheduleMacroTask(et,Ye,Tt,rt,Et)}const we=Ee,Be=typeof window<"u",Ie=Be?window:void 0,Ne=Be&&Ie||globalThis,Je="removeAttribute";function He(et,Ye){for(let Tt=et.length-1;Tt>=0;Tt--)"function"==typeof et[Tt]&&(et[Tt]=re(et[Tt],Ye+"_"+Tt));return et}function $e(et){return!et||!1!==et.writable&&!("function"==typeof et.get&&typeof et.set>"u")}const Ge=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,st=!("nw"in Ne)&&typeof Ne.process<"u"&&"[object process]"===Ne.process.toString(),We=!st&&!Ge&&!(!Be||!Ie.HTMLElement),ve=typeof Ne.process<"u"&&"[object process]"===Ne.process.toString()&&!Ge&&!(!Be||!Ie.HTMLElement),fe={},Qe=we("enable_beforeunload"),Te=function(et){if(!(et=et||Ne.event))return;let Ye=fe[et.type];Ye||(Ye=fe[et.type]=we("ON_PROPERTY"+et.type));const Tt=this||et.target||Ne,rt=Tt[Ye];let Et;return We&&Tt===Ie&&"error"===et.type?(Et=rt&&rt.call(this,et.message,et.filename,et.lineno,et.colno,et.error),!0===Et&&et.preventDefault()):(Et=rt&&rt.apply(this,arguments),"beforeunload"===et.type&&Ne[Qe]&&"string"==typeof Et?et.returnValue=Et:null!=Et&&!Et&&et.preventDefault()),Et};function Le(et,Ye,Tt){let rt=o(et,Ye);if(!rt&&Tt&&o(Tt,Ye)&&(rt={enumerable:!0,configurable:!0}),!rt||!rt.configurable)return;const Et=we("on"+Ye+"patched");if(et.hasOwnProperty(Et)&&et[Et])return;delete rt.writable,delete rt.value;const ln=rt.get,ai=rt.set,ei=Ye.slice(2);let Qn=fe[ei];Qn||(Qn=fe[ei]=we("ON_PROPERTY"+ei)),rt.set=function(Xt){let Rn=this;!Rn&&et===Ne&&(Rn=Ne),Rn&&("function"==typeof Rn[Qn]&&Rn.removeEventListener(ei,Te),ai&&ai.call(Rn,null),Rn[Qn]=Xt,"function"==typeof Xt&&Rn.addEventListener(ei,Te,!1))},rt.get=function(){let Xt=this;if(!Xt&&et===Ne&&(Xt=Ne),!Xt)return null;const Rn=Xt[Qn];if(Rn)return Rn;if(ln){let oi=ln.call(this);if(oi)return rt.set.call(this,oi),"function"==typeof Xt[Je]&&Xt.removeAttribute(Ye),oi}return null},y(et,Ye,rt),et[Et]=!0}function pt(et,Ye,Tt){if(Ye)for(let rt=0;rtfunction(ai,ei){const Qn=Tt(ai,ei);return Qn.cbIdx>=0&&"function"==typeof ei[Qn.cbIdx]?me(Qn.name,ei[Qn.cbIdx],Qn,Et):ln.apply(ai,ei)})}function $n(et,Ye){et[we("OriginalDelegate")]=Ye}let Qi=!1,ui=!1;function ri(){if(Qi)return ui;Qi=!0;try{const et=Ie.navigator.userAgent;(-1!==et.indexOf("MSIE ")||-1!==et.indexOf("Trident/")||-1!==et.indexOf("Edge/"))&&(ui=!0)}catch{}return ui}function ci(et){return"function"==typeof et}function it(et){return"number"==typeof et}let kt=!1;if(typeof window<"u")try{const et=Object.defineProperty({},"passive",{get:function(){kt=!0}});window.addEventListener("test",et,et),window.removeEventListener("test",et,et)}catch{kt=!1}const qt={useG:!0},cn={},Wt={},_n=new RegExp("^"+ne+"(\\w+)(true|false)$"),si=we("propagationStopped");function Zi(et,Ye){const Tt=(Ye?Ye(et):et)+Q,rt=(Ye?Ye(et):et)+G,Et=ne+Tt,ln=ne+rt;cn[et]={},cn[et][Q]=Et,cn[et][G]=ln}function fr(et,Ye,Tt,rt){const Et=rt&&rt.add||Y,ln=rt&&rt.rm||V,ai=rt&&rt.listeners||"eventListeners",ei=rt&&rt.rmAll||"removeAllListeners",Qn=we(Et),Xt="."+Et+":",Rn="prependListener",oi="."+Rn+":",ji=function(De,he,Ve){if(De.isRemoved)return;const ct=De.callback;let vt;"object"==typeof ct&&ct.handleEvent&&(De.callback=Qt=>ct.handleEvent(Qt),De.originalDelegate=ct);try{De.invoke(De,he,[Ve])}catch(Qt){vt=Qt}const tn=De.options;return tn&&"object"==typeof tn&&tn.once&&he[ln].call(he,Ve.type,De.originalDelegate?De.originalDelegate:De.callback,tn),vt};function Sr(De,he,Ve){if(!(he=he||et.event))return;const ct=De||he.target||et,vt=ct[cn[he.type][Ve?G:Q]];if(vt){const tn=[];if(1===vt.length){const Qt=ji(vt[0],ct,he);Qt&&tn.push(Qt)}else{const Qt=vt.slice();for(let Gt=0;Gt{throw Gt})}}}const Kr=function(De){return Sr(this,De,!1)},Vr=function(De){return Sr(this,De,!0)};function Ei(De,he){if(!De)return!1;let Ve=!0;he&&void 0!==he.useG&&(Ve=he.useG);const ct=he&&he.vh;let vt=!0;he&&void 0!==he.chkDup&&(vt=he.chkDup);let tn=!1;he&&void 0!==he.rt&&(tn=he.rt);let Qt=De;for(;Qt&&!Qt.hasOwnProperty(Et);)Qt=Z(Qt);if(!Qt&&De[Et]&&(Qt=De),!Qt||Qt[Qn])return!1;const Gt=he&&he.eventNameToString,Pn={},Un=Qt[Qn]=Qt[Et],mn=Qt[we(ln)]=Qt[ln],Wn=Qt[we(ai)]=Qt[ai],Ar=Qt[we(ei)]=Qt[ei];let En;he&&he.prepend&&(En=Qt[we(he.prepend)]=Qt[he.prepend]);const bi=Ve?function(St){if(!Pn.isExisting)return Un.call(Pn.target,Pn.eventName,Pn.capture?Vr:Kr,Pn.options)}:function(St){return Un.call(Pn.target,Pn.eventName,St.invoke,Pn.options)},vi=Ve?function(St){if(!St.isRemoved){const nn=cn[St.eventName];let ni;nn&&(ni=nn[St.capture?G:Q]);const li=ni&&St.target[ni];if(li)for(let Gn=0;GnSi.zone.cancelTask(Si);St.call(il,"abort",Lo,{once:!0}),Si.removeAbortListener=()=>il.removeEventListener("abort",Lo)}return Pn.target=null,zn&&(zn.taskData=null),ia&&(Pn.options.once=!0),!kt&&"boolean"==typeof Si.options||(Si.options=Zo),Si.target=Ui,Si.capture=No,Si.eventName=Ki,vr&&(Si.originalDelegate=Cr),pi?yo.unshift(Si):yo.push(Si),Gn?Ui:void 0}};return Qt[Et]=on(Un,Xt,bi,vi,tn),En&&(Qt[Rn]=on(En,oi,function(St){return En.call(Pn.target,Pn.eventName,St.invoke,Pn.options)},vi,tn,!0)),Qt[ln]=function(){const St=this||et;let nn=arguments[0];he&&he.transferEventName&&(nn=he.transferEventName(nn));const ni=arguments[2],li=!!ni&&("boolean"==typeof ni||ni.capture),Gn=arguments[1];if(!Gn)return mn.apply(this,arguments);if(ct&&!ct(mn,Gn,St,arguments))return;const pi=cn[nn];let Ui;pi&&(Ui=pi[li?G:Q]);const Ki=Ui&&St[Ui];if(Ki)for(let Cr=0;Crfunction(Et,ln){Et[si]=!0,rt&&rt.apply(Et,ln)})}const Jt=we("zoneTask");function xr(et,Ye,Tt,rt){let Et=null,ln=null;Tt+=rt;const ai={};function ei(Xt){const Rn=Xt.data;Rn.args[0]=function(){return Xt.invoke.apply(this,arguments)};const oi=Et.apply(et,Rn.args);return it(oi)?Rn.handleId=oi:(Rn.handle=oi,Rn.isRefreshable=ci(oi.refresh)),Xt}function Qn(Xt){const{handle:Rn,handleId:oi}=Xt.data;return ln.call(et,Rn??oi)}Et=Rt(et,Ye+=rt,Xt=>function(Rn,oi){if(ci(oi[0])){const ji={isRefreshable:!1,isPeriodic:"Interval"===rt,delay:"Timeout"===rt||"Interval"===rt?oi[1]||0:void 0,args:oi},Sr=oi[0];oi[0]=function(){try{return Sr.apply(this,arguments)}finally{const{handle:Ve,handleId:ct,isPeriodic:vt,isRefreshable:tn}=ji;!vt&&!tn&&(ct?delete ai[ct]:Ve&&(Ve[Jt]=null))}};const Kr=me(Ye,oi[0],ji,ei,Qn);if(!Kr)return Kr;const{handleId:Vr,handle:Ei,isRefreshable:Hr,isPeriodic:De}=Kr.data;if(Vr)ai[Vr]=Kr;else if(Ei&&(Ei[Jt]=Kr,Hr&&!De)){const he=Ei.refresh;Ei.refresh=function(){const{zone:Ve,state:ct}=Kr;return"notScheduled"===ct?(Kr._state="scheduled",Ve._updateTaskCount(Kr,1)):"running"===ct&&(Kr._state="scheduling"),he.call(this)}}return Ei??Vr??Kr}return Xt.apply(et,oi)}),ln=Rt(et,Tt,Xt=>function(Rn,oi){const ji=oi[0];let Sr;it(ji)?(Sr=ai[ji],delete ai[ji]):(Sr=ji?.[Jt],Sr?ji[Jt]=null:Sr=ji),Sr?.type?Sr.cancelFn&&Sr.zone.cancelTask(Sr):Xt.apply(et,oi)})}function Il(et,Ye,Tt){if(!Tt||0===Tt.length)return Ye;const rt=Tt.filter(ln=>ln.target===et);if(!rt||0===rt.length)return Ye;const Et=rt[0].ignoreProperties;return Ye.filter(ln=>-1===Et.indexOf(ln))}function ss(et,Ye,Tt,rt){et&&pt(et,Il(et,Ye,Tt),rt)}function Li(et){return Object.getOwnPropertyNames(et).filter(Ye=>Ye.startsWith("on")&&Ye.length>2).map(Ye=>Ye.substring(2))}function as(et,Ye,Tt,rt,Et){const ln=Zone.__symbol__(rt);if(Ye[ln])return;const ai=Ye[ln]=Ye[rt];Ye[rt]=function(ei,Qn,Xt){return Qn&&Qn.prototype&&Et.forEach(function(Rn){const oi=`${Tt}.${rt}::`+Rn,ji=Qn.prototype;try{if(ji.hasOwnProperty(Rn)){const Sr=et.ObjectGetOwnPropertyDescriptor(ji,Rn);Sr&&Sr.value?(Sr.value=et.wrapWithCurrentZone(Sr.value,oi),et._redefineProperty(Qn.prototype,Rn,Sr)):ji[Rn]&&(ji[Rn]=et.wrapWithCurrentZone(ji[Rn],oi))}else ji[Rn]&&(ji[Rn]=et.wrapWithCurrentZone(ji[Rn],oi))}catch{}}),ai.call(Ye,ei,Qn,Xt)},et.attachOriginToPatched(Ye[rt],ai)}const Ji=function j(){const et=globalThis,Ye=!0===et[Ee("forceDuplicateZoneCheck")];if(et.Zone&&(Ye||"function"!=typeof et.Zone.__symbol__))throw new Error("Zone already loaded.");return et.Zone??=function v(){const et=nt.performance;function Ye(Fn){et&&et.mark&&et.mark(Fn)}function Tt(Fn,pn){et&&et.measure&&et.measure(Fn,pn)}Ye("Zone");let rt=(()=>{class Fn{static{this.__symbol__=Ee}static assertZonePatched(){if(nt.Promise!==Pn.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let Ke=Fn.current;for(;Ke.parent;)Ke=Ke.parent;return Ke}static get current(){return mn.zone}static get currentTask(){return Wn}static __load_patch(Ke,gt,Bn=!1){if(Pn.hasOwnProperty(Ke)){const ti=!0===nt[Ee("forceDuplicateZoneCheck")];if(!Bn&&ti)throw Error("Already loaded patch: "+Ke)}else if(!nt["__Zone_disable_"+Ke]){const ti="Zone:"+Ke;Ye(ti),Pn[Ke]=gt(nt,Fn,Un),Tt(ti,ti)}}get parent(){return this._parent}get name(){return this._name}constructor(Ke,gt){this._parent=Ke,this._name=gt?gt.name||"unnamed":"",this._properties=gt&>.properties||{},this._zoneDelegate=new ln(this,this._parent&&this._parent._zoneDelegate,gt)}get(Ke){const gt=this.getZoneWith(Ke);if(gt)return gt._properties[Ke]}getZoneWith(Ke){let gt=this;for(;gt;){if(gt._properties.hasOwnProperty(Ke))return gt;gt=gt._parent}return null}fork(Ke){if(!Ke)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,Ke)}wrap(Ke,gt){if("function"!=typeof Ke)throw new Error("Expecting function got: "+Ke);const Bn=this._zoneDelegate.intercept(this,Ke,gt),ti=this;return function(){return ti.runGuarded(Bn,this,arguments,gt)}}run(Ke,gt,Bn,ti){mn={parent:mn,zone:this};try{return this._zoneDelegate.invoke(this,Ke,gt,Bn,ti)}finally{mn=mn.parent}}runGuarded(Ke,gt=null,Bn,ti){mn={parent:mn,zone:this};try{try{return this._zoneDelegate.invoke(this,Ke,gt,Bn,ti)}catch(bi){if(this._zoneDelegate.handleError(this,bi))throw bi}}finally{mn=mn.parent}}runTask(Ke,gt,Bn){if(Ke.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(Ke.zone||Ei).name+"; Execution: "+this.name+")");const ti=Ke,{type:bi,data:{isPeriodic:vi=!1,isRefreshable:eo=!1}={}}=Ke;if(Ke.state===Hr&&(bi===Gt||bi===Qt))return;const Ao=Ke.state!=Ve;Ao&&ti._transitionTo(Ve,he);const To=Wn;Wn=ti,mn={parent:mn,zone:this};try{bi==Qt&&Ke.data&&!vi&&!eo&&(Ke.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,ti,gt,Bn)}catch(Sn){if(this._zoneDelegate.handleError(this,Sn))throw Sn}}finally{const Sn=Ke.state;if(Sn!==Hr&&Sn!==vt)if(bi==Gt||vi||eo&&Sn===De)Ao&&ti._transitionTo(he,Ve,De);else{const dn=ti._zoneDelegates;this._updateTaskCount(ti,-1),Ao&&ti._transitionTo(Hr,Ve,Hr),eo&&(ti._zoneDelegates=dn)}mn=mn.parent,Wn=To}}scheduleTask(Ke){if(Ke.zone&&Ke.zone!==this){let Bn=this;for(;Bn;){if(Bn===Ke.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${Ke.zone.name}`);Bn=Bn.parent}}Ke._transitionTo(De,Hr);const gt=[];Ke._zoneDelegates=gt,Ke._zone=this;try{Ke=this._zoneDelegate.scheduleTask(this,Ke)}catch(Bn){throw Ke._transitionTo(vt,De,Hr),this._zoneDelegate.handleError(this,Bn),Bn}return Ke._zoneDelegates===gt&&this._updateTaskCount(Ke,1),Ke.state==De&&Ke._transitionTo(he,De),Ke}scheduleMicroTask(Ke,gt,Bn,ti){return this.scheduleTask(new ai(tn,Ke,gt,Bn,ti,void 0))}scheduleMacroTask(Ke,gt,Bn,ti,bi){return this.scheduleTask(new ai(Qt,Ke,gt,Bn,ti,bi))}scheduleEventTask(Ke,gt,Bn,ti,bi){return this.scheduleTask(new ai(Gt,Ke,gt,Bn,ti,bi))}cancelTask(Ke){if(Ke.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(Ke.zone||Ei).name+"; Execution: "+this.name+")");if(Ke.state===he||Ke.state===Ve){Ke._transitionTo(ct,he,Ve);try{this._zoneDelegate.cancelTask(this,Ke)}catch(gt){throw Ke._transitionTo(vt,ct),this._zoneDelegate.handleError(this,gt),gt}return this._updateTaskCount(Ke,-1),Ke._transitionTo(Hr,ct),Ke.runCount=-1,Ke}}_updateTaskCount(Ke,gt){const Bn=Ke._zoneDelegates;-1==gt&&(Ke._zoneDelegates=null);for(let ti=0;tiFn.hasTask(Ke,gt),onScheduleTask:(Fn,pn,Ke,gt)=>Fn.scheduleTask(Ke,gt),onInvokeTask:(Fn,pn,Ke,gt,Bn,ti)=>Fn.invokeTask(Ke,gt,Bn,ti),onCancelTask:(Fn,pn,Ke,gt)=>Fn.cancelTask(Ke,gt)};class ln{get zone(){return this._zone}constructor(pn,Ke,gt){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this._zone=pn,this._parentDelegate=Ke,this._forkZS=gt&&(gt&>.onFork?gt:Ke._forkZS),this._forkDlgt=gt&&(gt.onFork?Ke:Ke._forkDlgt),this._forkCurrZone=gt&&(gt.onFork?this._zone:Ke._forkCurrZone),this._interceptZS=gt&&(gt.onIntercept?gt:Ke._interceptZS),this._interceptDlgt=gt&&(gt.onIntercept?Ke:Ke._interceptDlgt),this._interceptCurrZone=gt&&(gt.onIntercept?this._zone:Ke._interceptCurrZone),this._invokeZS=gt&&(gt.onInvoke?gt:Ke._invokeZS),this._invokeDlgt=gt&&(gt.onInvoke?Ke:Ke._invokeDlgt),this._invokeCurrZone=gt&&(gt.onInvoke?this._zone:Ke._invokeCurrZone),this._handleErrorZS=gt&&(gt.onHandleError?gt:Ke._handleErrorZS),this._handleErrorDlgt=gt&&(gt.onHandleError?Ke:Ke._handleErrorDlgt),this._handleErrorCurrZone=gt&&(gt.onHandleError?this._zone:Ke._handleErrorCurrZone),this._scheduleTaskZS=gt&&(gt.onScheduleTask?gt:Ke._scheduleTaskZS),this._scheduleTaskDlgt=gt&&(gt.onScheduleTask?Ke:Ke._scheduleTaskDlgt),this._scheduleTaskCurrZone=gt&&(gt.onScheduleTask?this._zone:Ke._scheduleTaskCurrZone),this._invokeTaskZS=gt&&(gt.onInvokeTask?gt:Ke._invokeTaskZS),this._invokeTaskDlgt=gt&&(gt.onInvokeTask?Ke:Ke._invokeTaskDlgt),this._invokeTaskCurrZone=gt&&(gt.onInvokeTask?this._zone:Ke._invokeTaskCurrZone),this._cancelTaskZS=gt&&(gt.onCancelTask?gt:Ke._cancelTaskZS),this._cancelTaskDlgt=gt&&(gt.onCancelTask?Ke:Ke._cancelTaskDlgt),this._cancelTaskCurrZone=gt&&(gt.onCancelTask?this._zone:Ke._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const Bn=gt&>.onHasTask;(Bn||Ke&&Ke._hasTaskZS)&&(this._hasTaskZS=Bn?gt:Et,this._hasTaskDlgt=Ke,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=this._zone,gt.onScheduleTask||(this._scheduleTaskZS=Et,this._scheduleTaskDlgt=Ke,this._scheduleTaskCurrZone=this._zone),gt.onInvokeTask||(this._invokeTaskZS=Et,this._invokeTaskDlgt=Ke,this._invokeTaskCurrZone=this._zone),gt.onCancelTask||(this._cancelTaskZS=Et,this._cancelTaskDlgt=Ke,this._cancelTaskCurrZone=this._zone))}fork(pn,Ke){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,pn,Ke):new rt(pn,Ke)}intercept(pn,Ke,gt){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,pn,Ke,gt):Ke}invoke(pn,Ke,gt,Bn,ti){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,pn,Ke,gt,Bn,ti):Ke.apply(gt,Bn)}handleError(pn,Ke){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,pn,Ke)}scheduleTask(pn,Ke){let gt=Ke;if(this._scheduleTaskZS)this._hasTaskZS&>._zoneDelegates.push(this._hasTaskDlgtOwner),gt=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,pn,Ke),gt||(gt=Ke);else if(Ke.scheduleFn)Ke.scheduleFn(Ke);else{if(Ke.type!=tn)throw new Error("Task is missing scheduleFn.");Kr(Ke)}return gt}invokeTask(pn,Ke,gt,Bn){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,pn,Ke,gt,Bn):Ke.callback.apply(gt,Bn)}cancelTask(pn,Ke){let gt;if(this._cancelTaskZS)gt=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,pn,Ke);else{if(!Ke.cancelFn)throw Error("Task is not cancelable");gt=Ke.cancelFn(Ke)}return gt}hasTask(pn,Ke){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,pn,Ke)}catch(gt){this.handleError(pn,gt)}}_updateTaskCount(pn,Ke){const gt=this._taskCounts,Bn=gt[pn],ti=gt[pn]=Bn+Ke;if(ti<0)throw new Error("More tasks executed then were scheduled.");0!=Bn&&0!=ti||this.hasTask(this._zone,{microTask:gt.microTask>0,macroTask:gt.macroTask>0,eventTask:gt.eventTask>0,change:pn})}}class ai{constructor(pn,Ke,gt,Bn,ti,bi){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=pn,this.source=Ke,this.data=Bn,this.scheduleFn=ti,this.cancelFn=bi,!gt)throw new Error("callback is not defined");this.callback=gt;const vi=this;this.invoke=pn===Gt&&Bn&&Bn.useG?ai.invokeTask:function(){return ai.invokeTask.call(nt,vi,this,arguments)}}static invokeTask(pn,Ke,gt){pn||(pn=this),Ar++;try{return pn.runCount++,pn.zone.runTask(pn,Ke,gt)}finally{1==Ar&&Vr(),Ar--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(Hr,De)}_transitionTo(pn,Ke,gt){if(this._state!==Ke&&this._state!==gt)throw new Error(`${this.type} '${this.source}': can not transition to '${pn}', expecting state '${Ke}'${gt?" or '"+gt+"'":""}, was '${this._state}'.`);this._state=pn,pn==Hr&&(this._zoneDelegates=null)}toString(){return this.data&&typeof this.data.handleId<"u"?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const ei=Ee("setTimeout"),Qn=Ee("Promise"),Xt=Ee("then");let ji,Rn=[],oi=!1;function Sr(Fn){if(ji||nt[Qn]&&(ji=nt[Qn].resolve(0)),ji){let pn=ji[Xt];pn||(pn=ji.then),pn.call(ji,Fn)}else nt[ei](Fn,0)}function Kr(Fn){0===Ar&&0===Rn.length&&Sr(Vr),Fn&&Rn.push(Fn)}function Vr(){if(!oi){for(oi=!0;Rn.length;){const Fn=Rn;Rn=[];for(let pn=0;pnmn,onUnhandledError:En,microtaskDrainDone:En,scheduleMicroTask:Kr,showUncaughtError:()=>!rt[Ee("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:En,patchMethod:()=>En,bindArguments:()=>[],patchThen:()=>En,patchMacroTask:()=>En,patchEventPrototype:()=>En,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>En,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>En,wrapWithCurrentZone:()=>En,filterProperties:()=>[],attachOriginToPatched:()=>En,_redefineProperty:()=>En,patchCallbacks:()=>En,nativeScheduleMicroTask:Sr};let mn={parent:null,zone:new rt(null,null)},Wn=null,Ar=0;function En(){}return Tt("Zone","Zone"),rt}(),et.Zone}();(function Ac(et){(function Yo(et){et.__load_patch("ZoneAwarePromise",(Ye,Tt,rt)=>{const Et=Object.getOwnPropertyDescriptor,ln=Object.defineProperty,ei=rt.symbol,Qn=[],Xt=!1!==Ye[ei("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],Rn=ei("Promise"),oi=ei("then"),ji="__creationTrace__";rt.onUnhandledError=dn=>{if(rt.showUncaughtError()){const on=dn&&dn.rejection;on?console.error("Unhandled Promise rejection:",on instanceof Error?on.message:on,"; Zone:",dn.zone.name,"; Task:",dn.task&&dn.task.source,"; Value:",on,on instanceof Error?on.stack:void 0):console.error(dn)}},rt.microtaskDrainDone=()=>{for(;Qn.length;){const dn=Qn.shift();try{dn.zone.runGuarded(()=>{throw dn.throwOriginal?dn.rejection:dn})}catch(on){Kr(on)}}};const Sr=ei("unhandledPromiseRejectionHandler");function Kr(dn){rt.onUnhandledError(dn);try{const on=Tt[Sr];"function"==typeof on&&on.call(this,dn)}catch{}}function Vr(dn){return dn&&dn.then}function Ei(dn){return dn}function Hr(dn){return vi.reject(dn)}const De=ei("state"),he=ei("value"),Ve=ei("finally"),ct=ei("parentPromiseValue"),vt=ei("parentPromiseState"),tn="Promise.then",Qt=null,Gt=!0,Pn=!1,Un=0;function mn(dn,on){return St=>{try{Fn(dn,on,St)}catch(nn){Fn(dn,!1,nn)}}}const Wn=function(){let dn=!1;return function(St){return function(){dn||(dn=!0,St.apply(null,arguments))}}},Ar="Promise resolved with itself",En=ei("currentTaskTrace");function Fn(dn,on,St){const nn=Wn();if(dn===St)throw new TypeError(Ar);if(dn[De]===Qt){let ni=null;try{("object"==typeof St||"function"==typeof St)&&(ni=St&&St.then)}catch(li){return nn(()=>{Fn(dn,!1,li)})(),dn}if(on!==Pn&&St instanceof vi&&St.hasOwnProperty(De)&&St.hasOwnProperty(he)&&St[De]!==Qt)Ke(St),Fn(dn,St[De],St[he]);else if(on!==Pn&&"function"==typeof ni)try{ni.call(St,nn(mn(dn,on)),nn(mn(dn,!1)))}catch(li){nn(()=>{Fn(dn,!1,li)})()}else{dn[De]=on;const li=dn[he];if(dn[he]=St,dn[Ve]===Ve&&on===Gt&&(dn[De]=dn[vt],dn[he]=dn[ct]),on===Pn&&St instanceof Error){const Gn=Tt.currentTask&&Tt.currentTask.data&&Tt.currentTask.data[ji];Gn&&ln(St,En,{configurable:!0,enumerable:!1,writable:!0,value:Gn})}for(let Gn=0;Gn{try{const pi=dn[he],Ui=!!St&&Ve===St[Ve];Ui&&(St[ct]=pi,St[vt]=li);const Ki=on.run(Gn,void 0,Ui&&Gn!==Hr&&Gn!==Ei?[]:[pi]);Fn(St,!0,Ki)}catch(pi){Fn(St,!1,pi)}},St)}const ti=function(){},bi=Ye.AggregateError;class vi{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(on){return on instanceof vi?on:Fn(new this(null),Gt,on)}static reject(on){return Fn(new this(null),Pn,on)}static withResolvers(){const on={};return on.promise=new vi((St,nn)=>{on.resolve=St,on.reject=nn}),on}static any(on){if(!on||"function"!=typeof on[Symbol.iterator])return Promise.reject(new bi([],"All promises were rejected"));const St=[];let nn=0;try{for(let Gn of on)nn++,St.push(vi.resolve(Gn))}catch{return Promise.reject(new bi([],"All promises were rejected"))}if(0===nn)return Promise.reject(new bi([],"All promises were rejected"));let ni=!1;const li=[];return new vi((Gn,pi)=>{for(let Ui=0;Ui{ni||(ni=!0,Gn(Ki))},Ki=>{li.push(Ki),nn--,0===nn&&(ni=!0,pi(new bi(li,"All promises were rejected")))})})}static race(on){let St,nn,ni=new this((pi,Ui)=>{St=pi,nn=Ui});function li(pi){St(pi)}function Gn(pi){nn(pi)}for(let pi of on)Vr(pi)||(pi=this.resolve(pi)),pi.then(li,Gn);return ni}static all(on){return vi.allWithCallback(on)}static allSettled(on){return(this&&this.prototype instanceof vi?this:vi).allWithCallback(on,{thenCallback:nn=>({status:"fulfilled",value:nn}),errorCallback:nn=>({status:"rejected",reason:nn})})}static allWithCallback(on,St){let nn,ni,li=new this((Ki,Cr)=>{nn=Ki,ni=Cr}),Gn=2,pi=0;const Ui=[];for(let Ki of on){Vr(Ki)||(Ki=this.resolve(Ki));const Cr=pi;try{Ki.then(vr=>{Ui[Cr]=St?St.thenCallback(vr):vr,Gn--,0===Gn&&nn(Ui)},vr=>{St?(Ui[Cr]=St.errorCallback(vr),Gn--,0===Gn&&nn(Ui)):ni(vr)})}catch(vr){ni(vr)}Gn++,pi++}return Gn-=2,0===Gn&&nn(Ui),li}constructor(on){const St=this;if(!(St instanceof vi))throw new Error("Must be an instanceof Promise.");St[De]=Qt,St[he]=[];try{const nn=Wn();on&&on(nn(mn(St,Gt)),nn(mn(St,Pn)))}catch(nn){Fn(St,!1,nn)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return vi}then(on,St){let nn=this.constructor?.[Symbol.species];(!nn||"function"!=typeof nn)&&(nn=this.constructor||vi);const ni=new nn(ti),li=Tt.current;return this[De]==Qt?this[he].push(li,ni,on,St):gt(this,li,ni,on,St),ni}catch(on){return this.then(null,on)}finally(on){let St=this.constructor?.[Symbol.species];(!St||"function"!=typeof St)&&(St=vi);const nn=new St(ti);nn[Ve]=Ve;const ni=Tt.current;return this[De]==Qt?this[he].push(ni,nn,on,on):gt(this,ni,nn,on,on),nn}}vi.resolve=vi.resolve,vi.reject=vi.reject,vi.race=vi.race,vi.all=vi.all;const eo=Ye[Rn]=Ye.Promise;Ye.Promise=vi;const Ao=ei("thenPatched");function To(dn){const on=dn.prototype,St=Et(on,"then");if(St&&(!1===St.writable||!St.configurable))return;const nn=on.then;on[oi]=nn,dn.prototype.then=function(ni,li){return new vi((pi,Ui)=>{nn.call(this,pi,Ui)}).then(ni,li)},dn[Ao]=!0}return rt.patchThen=To,eo&&(To(eo),Rt(Ye,"fetch",dn=>function Sn(dn){return function(on,St){let nn=dn.apply(on,St);if(nn instanceof vi)return nn;let ni=nn.constructor;return ni[Ao]||To(ni),nn}}(dn))),Promise[Tt.__symbol__("uncaughtPromiseErrors")]=Qn,vi})})(et),function Xr(et){et.__load_patch("toString",Ye=>{const Tt=Function.prototype.toString,rt=we("OriginalDelegate"),Et=we("Promise"),ln=we("Error"),ai=function(){if("function"==typeof this){const Rn=this[rt];if(Rn)return"function"==typeof Rn?Tt.call(Rn):Object.prototype.toString.call(Rn);if(this===Promise){const oi=Ye[Et];if(oi)return Tt.call(oi)}if(this===Error){const oi=Ye[ln];if(oi)return Tt.call(oi)}}return Tt.call(this)};ai[rt]=Tt,Function.prototype.toString=ai;const ei=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":ei.call(this)}})}(et),function po(et){et.__load_patch("util",(Ye,Tt,rt)=>{const Et=Li(Ye);rt.patchOnProperties=pt,rt.patchMethod=Rt,rt.bindArguments=He,rt.patchMacroTask=fn;const ln=Tt.__symbol__("BLACK_LISTED_EVENTS"),ai=Tt.__symbol__("UNPATCHED_EVENTS");Ye[ai]&&(Ye[ln]=Ye[ai]),Ye[ln]&&(Tt[ln]=Tt[ai]=Ye[ln]),rt.patchEventPrototype=pr,rt.patchEventTarget=fr,rt.isIEOrEdge=ri,rt.ObjectDefineProperty=y,rt.ObjectGetOwnPropertyDescriptor=o,rt.ObjectCreate=U,rt.ArraySlice=L,rt.patchClass=Nt,rt.wrapWithCurrentZone=re,rt.filterProperties=Il,rt.attachOriginToPatched=$n,rt._redefineProperty=Object.defineProperty,rt.patchCallbacks=as,rt.getGlobalObjects=()=>({globalSources:Wt,zoneSymbolEventNames:cn,eventNames:Et,isBrowser:We,isMix:ve,isNode:st,TRUE_STR:G,FALSE_STR:Q,ZONE_SYMBOL_PREFIX:ne,ADD_EVENT_LISTENER_STR:Y,REMOVE_EVENT_LISTENER_STR:V})})}(et)})(Ji),function Fs(et){et.__load_patch("legacy",Ye=>{const Tt=Ye[et.__symbol__("legacyPatch")];Tt&&Tt()}),et.__load_patch("timers",Ye=>{const rt="clear";xr(Ye,"set",rt,"Timeout"),xr(Ye,"set",rt,"Interval"),xr(Ye,"set",rt,"Immediate")}),et.__load_patch("requestAnimationFrame",Ye=>{xr(Ye,"request","cancel","AnimationFrame"),xr(Ye,"mozRequest","mozCancel","AnimationFrame"),xr(Ye,"webkitRequest","webkitCancel","AnimationFrame")}),et.__load_patch("blocking",(Ye,Tt)=>{const rt=["alert","prompt","confirm"];for(let Et=0;Etfunction(Xt,Rn){return Tt.current.run(ai,Ye,Rn,Qn)})}),et.__load_patch("EventTarget",(Ye,Tt,rt)=>{(function Jr(et,Ye){Ye.patchEventPrototype(et,Ye)})(Ye,rt),function Ur(et,Ye){if(Zone[Ye.symbol("patchEventTarget")])return;const{eventNames:Tt,zoneSymbolEventNames:rt,TRUE_STR:Et,FALSE_STR:ln,ZONE_SYMBOL_PREFIX:ai}=Ye.getGlobalObjects();for(let Qn=0;Qn{Nt("MutationObserver"),Nt("WebKitMutationObserver")}),et.__load_patch("IntersectionObserver",(Ye,Tt,rt)=>{Nt("IntersectionObserver")}),et.__load_patch("FileReader",(Ye,Tt,rt)=>{Nt("FileReader")}),et.__load_patch("on_property",(Ye,Tt,rt)=>{!function Fi(et,Ye){if(st&&!ve||Zone[et.symbol("patchEvents")])return;const Tt=Ye.__Zone_ignore_on_properties;let rt=[];if(We){const Et=window;rt=rt.concat(["Document","SVGElement","Element","HTMLElement","HTMLBodyElement","HTMLMediaElement","HTMLFrameSetElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement","Worker"]);const ln=function Bi(){try{const et=Ie.navigator.userAgent;if(-1!==et.indexOf("MSIE ")||-1!==et.indexOf("Trident/"))return!0}catch{}return!1}()?[{target:Et,ignoreProperties:["error"]}]:[];ss(Et,Li(Et),Tt&&Tt.concat(ln),Z(Et))}rt=rt.concat(["XMLHttpRequest","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","WebSocket"]);for(let Et=0;Et{!function br(et,Ye){const{isBrowser:Tt,isMix:rt}=Ye.getGlobalObjects();(Tt||rt)&&et.customElements&&"customElements"in et&&Ye.patchCallbacks(Ye,et.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback","formAssociatedCallback","formDisabledCallback","formResetCallback","formStateRestoreCallback"])}(Ye,rt)}),et.__load_patch("XHR",(Ye,Tt)=>{!function Xt(Rn){const oi=Rn.XMLHttpRequest;if(!oi)return;const ji=oi.prototype;let Kr=ji[X],Vr=ji[z];if(!Kr){const Un=Rn.XMLHttpRequestEventTarget;if(Un){const mn=Un.prototype;Kr=mn[X],Vr=mn[z]}}const Ei="readystatechange",Hr="scheduled";function De(Un){const mn=Un.data,Wn=mn.target;Wn[ai]=!1,Wn[Qn]=!1;const Ar=Wn[ln];Kr||(Kr=Wn[X],Vr=Wn[z]),Ar&&Vr.call(Wn,Ei,Ar);const En=Wn[ln]=()=>{if(Wn.readyState===Wn.DONE)if(!mn.aborted&&Wn[ai]&&Un.state===Hr){const pn=Wn[Tt.__symbol__("loadfalse")];if(0!==Wn.status&&pn&&pn.length>0){const Ke=Un.invoke;Un.invoke=function(){const gt=Wn[Tt.__symbol__("loadfalse")];for(let Bn=0;Bnfunction(Un,mn){return Un[Et]=0==mn[2],Un[ei]=mn[1],ct.apply(Un,mn)}),tn=we("fetchTaskAborting"),Qt=we("fetchTaskScheduling"),Gt=Rt(ji,"send",()=>function(Un,mn){if(!0===Tt.current[Qt]||Un[Et])return Gt.apply(Un,mn);{const Wn={target:Un,url:Un[ei],isPeriodic:!1,args:mn,aborted:!1},Ar=me("XMLHttpRequest.send",he,Wn,De,Ve);Un&&!0===Un[Qn]&&!Wn.aborted&&Ar.state===Hr&&Ar.invoke()}}),Pn=Rt(ji,"abort",()=>function(Un,mn){const Wn=function Sr(Un){return Un[rt]}(Un);if(Wn&&"string"==typeof Wn.type){if(null==Wn.cancelFn||Wn.data&&Wn.data.aborted)return;Wn.zone.cancelTask(Wn)}else if(!0===Tt.current[tn])return Pn.apply(Un,mn)})}(Ye);const rt=we("xhrTask"),Et=we("xhrSync"),ln=we("xhrListener"),ai=we("xhrScheduled"),ei=we("xhrURL"),Qn=we("xhrErrorBeforeScheduled")}),et.__load_patch("geolocation",Ye=>{Ye.navigator&&Ye.navigator.geolocation&&function qe(et,Ye){const Tt=et.constructor.name;for(let rt=0;rt{const Qn=function(){return ei.apply(this,He(arguments,Tt+"."+Et))};return $n(Qn,ei),Qn})(ln)}}}(Ye.navigator.geolocation,["getCurrentPosition","watchPosition"])}),et.__load_patch("PromiseRejectionEvent",(Ye,Tt)=>{function rt(Et){return function(ln){Lr(Ye,Et).forEach(ei=>{const Qn=Ye.PromiseRejectionEvent;if(Qn){const Xt=new Qn(Et,{promise:ln.promise,reason:ln.rejection});ei.invoke(Xt)}})}}Ye.PromiseRejectionEvent&&(Tt[we("unhandledPromiseRejectionHandler")]=rt("unhandledrejection"),Tt[we("rejectionHandledHandler")]=rt("rejectionhandled"))}),et.__load_patch("queueMicrotask",(Ye,Tt,rt)=>{!function Ii(et,Ye){Ye.patchMethod(et,"queueMicrotask",Tt=>function(rt,Et){Zone.current.scheduleMicroTask("queueMicrotask",Et[0])})}(Ye,rt)})}(Ji)},1190:nt=>{nt.exports="varying highp float vDelta;\nvarying vec2 vUV;\nvarying vec4 vOutgoingDiffuseColor;\nvarying vec4 vOutgoingDiffuseDeltaColor;\nvarying vec3 vWorldNormal;\n\nbool normalPointingUp(const in vec3 normal)\n{\n return normal.y > 0.9;\n}\n\nvoid main() {\n const float minDelta = 0.001;\n bool isTop = normalPointingUp(vWorldNormal);\n \n if (abs(vDelta) > minDelta && (vUV.y > 1.0 - abs(vDelta) || isTop))\n {\n gl_FragColor = vOutgoingDiffuseDeltaColor;\n } else {\n gl_FragColor = vOutgoingDiffuseColor;\n }\n}\n"},1812:nt=>{nt.exports="#define saturate(a) clamp( a, 0.0, 1.0)\n#define RECIPROCAL_PI 0.31830988618\n#define PI 3.14159265359\n\nattribute vec3 color;\nattribute vec3 deltaColor;\nattribute highp float delta;\nattribute lowp float isHeight;\n\nvarying vec3 vWorldNormal;\nvarying highp float vDelta;\nvarying vec2 vUV;\nvarying vec4 vOutgoingDiffuseColor;\nvarying vec4 vOutgoingDiffuseDeltaColor;\n\nuniform vec3 ambientLightColor;\n\nstruct DirectionalLight {\n vec3 direction;\n vec3 color;\n};\nuniform DirectionalLight directionalLights[NUM_DIR_LIGHTS];\n\nstruct IncidentLight {\n vec3 color;\n vec3 direction;\n};\n\nstruct ReflectedLight {\n vec3 directDiffuse;\n vec3 directSpecular;\n vec3 indirectDiffuse;\n vec3 indirectSpecular;\n};\n\nvoid getDirectionalDirectLightIrradiance(const in DirectionalLight directionalLight,out IncidentLight directLight) {\n directLight.color = directionalLight.color;\n directLight.direction = directionalLight.direction;\n}\n\nvec3 BRDF_Diffuse_Lambert (const in vec3 diffuseColor) {\n return RECIPROCAL_PI * diffuseColor;\n}\n\nvec3 getAmbientLightIrradiance() {\n return ambientLightColor*PI;\n}\n\nvec3 getBaseOutgoingLight(const vec3 lightFront) {\n ReflectedLight reflectedLight = ReflectedLight(vec3(0.0), vec3(0.0), vec3(0.0), vec3(0.0));\n reflectedLight.indirectDiffuse = getAmbientLightIrradiance();\n reflectedLight.directDiffuse = lightFront;\n return (reflectedLight.directDiffuse + reflectedLight.indirectDiffuse);\n}\n\n// better to calc the colors in vertex as no color interpolation is used, performance improvements will be noticeable \n// once frustum or occlusion culling is properly used\n\nvoid main() \n{\n vec3 adjustedHeightPos = position;\n \n // height position will be adjusted based on camera position in order to prevent \n // z-fighting in different zoom levels when position is positive.\n // preferred multiplication over if branching of the isHeight variable \n // the same line could be written this way : \n //\n // adjustedHeightPos = position\n // if (isHeight>0.5 && cameraPosition.y>0) {\n // adjustedHeightPos.y = position.y + cameraPosition.y/1000.\n // } \n // \n \n adjustedHeightPos.y = position.y + (isHeight*max(0.,cameraPosition.y/1000.));\n\n\tvec4 modelViewPosition = modelViewMatrix * vec4(adjustedHeightPos, 1.0);\n\tgl_Position = projectionMatrix * modelViewPosition;\n\n vec3 worldNormal = vWorldNormal = normalize((modelMatrix * vec4(normal, 0.0)).xyz);\n vec3 normal= normalize(normalMatrix * normal);\n vec3 lightFront = vec3(0.0);\n\n vUV = uv;\n vDelta = abs(delta);\n\n for (int i=0; i < 2; ++i)\n {\n IncidentLight directLight;\n\n getDirectionalDirectLightIrradiance(directionalLights[i],directLight);\n float dotNL = dot(normal, directLight.direction);\n vec3 directLightColor_Diffuse = PI * directLight.color; \n lightFront += saturate(dotNL) * directLightColor_Diffuse;\n }\n\n vec3 baseOutgoingLight = getBaseOutgoingLight(lightFront);\n \n vOutgoingDiffuseColor = vec4(BRDF_Diffuse_Lambert(color.rgb)*baseOutgoingLight,1.0);\n vOutgoingDiffuseDeltaColor = vec4(BRDF_Diffuse_Lambert(deltaColor)*baseOutgoingLight,1.0);\n}\n"},6655:nt=>{nt.exports='precision highp float;\n\t\t\nuniform sampler2D tDiffuse;\nuniform vec2 resolution;\n\t\t\nvarying vec2 vUv;\n\t\t\n// FXAA 3.11 implementation by NVIDIA, ported to WebGL by Agost Biro (biro@archilogic.com)\n\n//----------------------------------------------------------------------------------\n// File: es3-kepler\\FXAA\\assets\\shaders/FXAA_DefaultES.frag\n// SDK Version: v3.00\n// Email: gameworks@nvidia.com\n// Site: http://developer.nvidia.com/\n//\n// Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved.\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// * Neither the name of NVIDIA CORPORATION nor the names of its\n// contributors may be used to endorse or promote products derived\n// from this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS\\\\ AND ANY\n// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\n//----------------------------------------------------------------------------------\n\t\t\n#define FXAA_PC 1\n#define FXAA_GLSL_100 1\n#define FXAA_QUALITY_PRESET 15\n#define FXAA_GATHER4_ALPHA 0\n#define FXAA_GREEN_AS_LUMA 1\n#define FXAA_EARLY_EXIT 1\n\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GLSL_120\n #define FXAA_GLSL_120 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GLSL_130\n #define FXAA_GLSL_130 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_3\n #define FXAA_HLSL_3 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_4\n #define FXAA_HLSL_4 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_5\n #define FXAA_HLSL_5 0\n#endif\n/*==========================================================================*/\n#ifndef FXAA_GREEN_AS_LUMA\n //\n // For those using non-linear color,\n // and either not able to get luma in alpha, or not wanting to,\n // this enables FXAA to run using green as a proxy for luma.\n // So with this enabled, no need to pack luma in alpha.\n //\n // This will turn off AA on anything which lacks some amount of green.\n // Pure red and blue or combination of only R and B, will get no AA.\n //\n // Might want to lower the settings for both,\n // fxaaConsoleEdgeThresholdMin\n // fxaaQualityEdgeThresholdMin\n // In order to insure AA does not get turned off on colors\n // which contain a minor amount of green.\n //\n // 1 = On.\n // 0 = Off.\n //\n #define FXAA_GREEN_AS_LUMA 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_EARLY_EXIT\n //\n // Controls algorithm\\s early exit path.\n // On PS3 turning this ON adds 2 cycles to the shader.\n // On 360 turning this OFF adds 10ths of a millisecond to the shader.\n // Turning this off on console will result in a more blurry image.\n // So this defaults to on.\n //\n // 1 = On.\n // 0 = Off.\n //\n #define FXAA_EARLY_EXIT 1\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_DISCARD\n //\n // Only valid for PC OpenGL currently.\n // Probably will not work when FXAA_GREEN_AS_LUMA = 1.\n //\n // 1 = Use discard on pixels which don\\t need AA.\n // For APIs which enable concurrent TEX+ROP from same surface.\n // 0 = Return unchanged color on pixels which don\\t need AA.\n //\n #define FXAA_DISCARD 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_FAST_PIXEL_OFFSET\n //\n // Used for GLSL 120 only.\n //\n // 1 = GL API supports fast pixel offsets\n // 0 = do not use fast pixel offsets\n //\n #ifdef GL_EXT_gpu_shader4\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifdef GL_NV_gpu_shader5\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifdef GL_ARB_gpu_shader5\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifndef FXAA_FAST_PIXEL_OFFSET\n #define FXAA_FAST_PIXEL_OFFSET 0\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GATHER4_ALPHA\n //\n // 1 = API supports gather4 on alpha channel.\n // 0 = API does not support gather4 on alpha channel.\n //\n #if (FXAA_HLSL_5 == 1)\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifdef GL_ARB_gpu_shader5\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifdef GL_NV_gpu_shader5\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifndef FXAA_GATHER4_ALPHA\n #define FXAA_GATHER4_ALPHA 0\n #endif\n#endif\n\n\n/*============================================================================\n FXAA QUALITY - TUNING KNOBS\n------------------------------------------------------------------------------\nNOTE the other tuning knobs are now in the shader function inputs!\n============================================================================*/\n#ifndef FXAA_QUALITY_PRESET\n //\n // Choose the quality preset.\n // This needs to be compiled into the shader as it effects code.\n // Best option to include multiple presets is to\n // in each shader define the preset, then include this file.\n //\n // OPTIONS\n // -----------------------------------------------------------------------\n // 10 to 15 - default medium dither (10=fastest, 15=highest quality)\n // 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality)\n // 39 - no dither, very expensive\n //\n // NOTES\n // -----------------------------------------------------------------------\n // 12 = slightly faster then FXAA 3.9 and higher edge quality (default)\n // 13 = about same speed as FXAA 3.9 and better than 12\n // 23 = closest to FXAA 3.9 visually and performance wise\n // _ = the lowest digit is directly related to performance\n // _ = the highest digit is directly related to style\n //\n #define FXAA_QUALITY_PRESET 12\n#endif\n\n\n/*============================================================================\n\n FXAA QUALITY - PRESETS\n\n============================================================================*/\n\n/*============================================================================\n FXAA QUALITY - MEDIUM DITHER PRESETS\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 10)\n #define FXAA_QUALITY_PS 3\n #define FXAA_QUALITY_P0 1.5\n #define FXAA_QUALITY_P1 3.0\n #define FXAA_QUALITY_P2 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 11)\n #define FXAA_QUALITY_PS 4\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 3.0\n #define FXAA_QUALITY_P3 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 12)\n #define FXAA_QUALITY_PS 5\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 4.0\n #define FXAA_QUALITY_P4 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 13)\n #define FXAA_QUALITY_PS 6\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 4.0\n #define FXAA_QUALITY_P5 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 14)\n #define FXAA_QUALITY_PS 7\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 4.0\n #define FXAA_QUALITY_P6 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 15)\n #define FXAA_QUALITY_PS 8\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 4.0\n #define FXAA_QUALITY_P7 12.0\n#endif\n\n/*============================================================================\n FXAA QUALITY - LOW DITHER PRESETS\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 20)\n #define FXAA_QUALITY_PS 3\n #define FXAA_QUALITY_P0 1.5\n #define FXAA_QUALITY_P1 2.0\n #define FXAA_QUALITY_P2 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 21)\n #define FXAA_QUALITY_PS 4\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 22)\n #define FXAA_QUALITY_PS 5\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 23)\n #define FXAA_QUALITY_PS 6\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 24)\n #define FXAA_QUALITY_PS 7\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 3.0\n #define FXAA_QUALITY_P6 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 25)\n #define FXAA_QUALITY_PS 8\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 4.0\n #define FXAA_QUALITY_P7 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 26)\n #define FXAA_QUALITY_PS 9\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 4.0\n #define FXAA_QUALITY_P8 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 27)\n #define FXAA_QUALITY_PS 10\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 4.0\n #define FXAA_QUALITY_P9 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 28)\n #define FXAA_QUALITY_PS 11\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 4.0\n #define FXAA_QUALITY_P10 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 29)\n #define FXAA_QUALITY_PS 12\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 2.0\n #define FXAA_QUALITY_P10 4.0\n #define FXAA_QUALITY_P11 8.0\n#endif\n\n/*============================================================================\n FXAA QUALITY - EXTREME QUALITY\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 39)\n #define FXAA_QUALITY_PS 12\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.0\n #define FXAA_QUALITY_P2 1.0\n #define FXAA_QUALITY_P3 1.0\n #define FXAA_QUALITY_P4 1.0\n #define FXAA_QUALITY_P5 1.5\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 2.0\n #define FXAA_QUALITY_P10 4.0\n #define FXAA_QUALITY_P11 8.0\n#endif\n\n\n\n/*============================================================================\n\n API PORTING\n\n============================================================================*/\n#if (FXAA_GLSL_100 == 1) || (FXAA_GLSL_120 == 1) || (FXAA_GLSL_130 == 1)\n #define FxaaBool bool\n #define FxaaDiscard discard\n #define FxaaFloat float\n #define FxaaFloat2 vec2\n #define FxaaFloat3 vec3\n #define FxaaFloat4 vec4\n #define FxaaHalf float\n #define FxaaHalf2 vec2\n #define FxaaHalf3 vec3\n #define FxaaHalf4 vec4\n #define FxaaInt2 ivec2\n #define FxaaSat(x) clamp(x, 0.0, 1.0)\n #define FxaaTex sampler2D\n#else\n #define FxaaBool bool\n #define FxaaDiscard clip(-1)\n #define FxaaFloat float\n #define FxaaFloat2 float2\n #define FxaaFloat3 float3\n #define FxaaFloat4 float4\n #define FxaaHalf half\n #define FxaaHalf2 half2\n #define FxaaHalf3 half3\n #define FxaaHalf4 half4\n #define FxaaSat(x) saturate(x)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_100 == 1)\n #define FxaaTexTop(t, p) texture2D(t, p, 0.0)\n #define FxaaTexOff(t, p, o, r) texture2D(t, p + (o * r), 0.0)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_120 == 1)\n // Requires,\n // #version 120\n // And at least,\n // #extension GL_EXT_gpu_shader4 : enable\n // (or set FXAA_FAST_PIXEL_OFFSET 1 to work like DX9)\n #define FxaaTexTop(t, p) texture2DLod(t, p, 0.0)\n #if (FXAA_FAST_PIXEL_OFFSET == 1)\n #define FxaaTexOff(t, p, o, r) texture2DLodOffset(t, p, 0.0, o)\n #else\n #define FxaaTexOff(t, p, o, r) texture2DLod(t, p + (o * r), 0.0)\n #endif\n #if (FXAA_GATHER4_ALPHA == 1)\n // use #extension GL_ARB_gpu_shader5 : enable\n #define FxaaTexAlpha4(t, p) textureGather(t, p, 3)\n #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3)\n #define FxaaTexGreen4(t, p) textureGather(t, p, 1)\n #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1)\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_130 == 1)\n // Requires "#version 130" or better\n #define FxaaTexTop(t, p) textureLod(t, p, 0.0)\n #define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o)\n #if (FXAA_GATHER4_ALPHA == 1)\n // use #extension GL_ARB_gpu_shader5 : enable\n #define FxaaTexAlpha4(t, p) textureGather(t, p, 3)\n #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3)\n #define FxaaTexGreen4(t, p) textureGather(t, p, 1)\n #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1)\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_3 == 1)\n #define FxaaInt2 float2\n #define FxaaTex sampler2D\n #define FxaaTexTop(t, p) tex2Dlod(t, float4(p, 0.0, 0.0))\n #define FxaaTexOff(t, p, o, r) tex2Dlod(t, float4(p + (o * r), 0, 0))\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_4 == 1)\n #define FxaaInt2 int2\n struct FxaaTex { SamplerState smpl; Texture2D tex; };\n #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0)\n #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_5 == 1)\n #define FxaaInt2 int2\n struct FxaaTex { SamplerState smpl; Texture2D tex; };\n #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0)\n #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o)\n #define FxaaTexAlpha4(t, p) t.tex.GatherAlpha(t.smpl, p)\n #define FxaaTexOffAlpha4(t, p, o) t.tex.GatherAlpha(t.smpl, p, o)\n #define FxaaTexGreen4(t, p) t.tex.GatherGreen(t.smpl, p)\n #define FxaaTexOffGreen4(t, p, o) t.tex.GatherGreen(t.smpl, p, o)\n#endif\n\n\n/*============================================================================\n GREEN AS LUMA OPTION SUPPORT FUNCTION\n============================================================================*/\n#if (FXAA_GREEN_AS_LUMA == 0)\n FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.w; }\n#else\n FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.y; }\n#endif\n\n/*============================================================================\n\n FXAA3 QUALITY - PC\n\n============================================================================*/\n#if (FXAA_PC == 1)\n/*--------------------------------------------------------------------------*/\nFxaaFloat4 FxaaPixelShader(\n //\n // Use noperspective interpolation here (turn off perspective interpolation).\n // {xy} = center of pixel\n FxaaFloat2 pos,\n //\n // Used only for FXAA Console, and not used on the 360 version.\n // Use noperspective interpolation here (turn off perspective interpolation).\n // {xy_} = upper left of pixel\n // {_zw} = lower right of pixel\n FxaaFloat4 fxaaConsolePosPos,\n //\n // Input color texture.\n // {rgb_} = color in linear or perceptual color space\n // if (FXAA_GREEN_AS_LUMA == 0)\n // {__a} = luma in perceptual color space (not linear)\n FxaaTex tex,\n //\n // Only used on the optimized 360 version of FXAA Console.\n // For everything but 360, just use the same input here as for "tex".\n // For 360, same texture, just alias with a 2nd sampler.\n // This sampler needs to have an exponent bias of -1.\n FxaaTex fxaaConsole360TexExpBiasNegOne,\n //\n // Only used on the optimized 360 version of FXAA Console.\n // For everything but 360, just use the same input here as for "tex".\n // For 360, same texture, just alias with a 3nd sampler.\n // This sampler needs to have an exponent bias of -2.\n FxaaTex fxaaConsole360TexExpBiasNegTwo,\n //\n // Only used on FXAA Quality.\n // This must be from a constant/uniform.\n // {x_} = 1.0/screenWidthInPixels\n // {_y} = 1.0/screenHeightInPixels\n FxaaFloat2 fxaaQualityRcpFrame,\n //\n // Only used on FXAA Console.\n // This must be from a constant/uniform.\n // This effects sub-pixel AA quality and inversely sharpness.\n // Where N ranges between,\n // N = 0.50 (default)\n // N = 0.33 (sharper)\n // {x__} = -N/screenWidthInPixels\n // {_y_} = -N/screenHeightInPixels\n // {_z_} = N/screenWidthInPixels\n // {__w} = N/screenHeightInPixels\n FxaaFloat4 fxaaConsoleRcpFrameOpt,\n //\n // Only used on FXAA Console.\n // Not used on 360, but used on PS3 and PC.\n // This must be from a constant/uniform.\n // {x__} = -2.0/screenWidthInPixels\n // {_y_} = -2.0/screenHeightInPixels\n // {_z_} = 2.0/screenWidthInPixels\n // {__w} = 2.0/screenHeightInPixels\n FxaaFloat4 fxaaConsoleRcpFrameOpt2,\n //\n // Only used on FXAA Console.\n // Only used on 360 in place of fxaaConsoleRcpFrameOpt2.\n // This must be from a constant/uniform.\n // {x__} = 8.0/screenWidthInPixels\n // {_y_} = 8.0/screenHeightInPixels\n // {_z_} = -4.0/screenWidthInPixels\n // {__w} = -4.0/screenHeightInPixels\n FxaaFloat4 fxaaConsole360RcpFrameOpt2,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_SUBPIX define.\n // It is here now to allow easier tuning.\n // Choose the amount of sub-pixel aliasing removal.\n // This can effect sharpness.\n // 1.00 - upper limit (softer)\n // 0.75 - default amount of filtering\n // 0.50 - lower limit (sharper, less sub-pixel aliasing removal)\n // 0.25 - almost off\n // 0.00 - completely off\n FxaaFloat fxaaQualitySubpix,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_EDGE_THRESHOLD define.\n // It is here now to allow easier tuning.\n // The minimum amount of local contrast required to apply algorithm.\n // 0.333 - too little (faster)\n // 0.250 - low quality\n // 0.166 - default\n // 0.125 - high quality\n // 0.063 - overkill (slower)\n FxaaFloat fxaaQualityEdgeThreshold,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_EDGE_THRESHOLD_MIN define.\n // It is here now to allow easier tuning.\n // Trims the algorithm from processing darks.\n // 0.0833 - upper limit (default, the start of visible unfiltered edges)\n // 0.0625 - high quality (faster)\n // 0.0312 - visible limit (slower)\n // Special notes when using FXAA_GREEN_AS_LUMA,\n // Likely want to set this to zero.\n // As colors that are mostly not-green\n // will appear very dark in the green channel!\n // Tune by looking at mostly non-green content,\n // then start at zero and increase until aliasing is a problem.\n FxaaFloat fxaaQualityEdgeThresholdMin,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_SHARPNESS define.\n // It is here now to allow easier tuning.\n // This does not effect PS3, as this needs to be compiled in.\n // Use FXAA_CONSOLE_PS3_EDGE_SHARPNESS for PS3.\n // Due to the PS3 being ALU bound,\n // there are only three safe values here: 2 and 4 and 8.\n // These options use the shaders ability to a free *|/ by 2|4|8.\n // For all other platforms can be a non-power of two.\n // 8.0 is sharper (default!!!)\n // 4.0 is softer\n // 2.0 is really soft (good only for vector graphics inputs)\n FxaaFloat fxaaConsoleEdgeSharpness,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_THRESHOLD define.\n // It is here now to allow easier tuning.\n // This does not effect PS3, as this needs to be compiled in.\n // Use FXAA_CONSOLE_PS3_EDGE_THRESHOLD for PS3.\n // Due to the PS3 being ALU bound,\n // there are only two safe values here: 1/4 and 1/8.\n // These options use the shaders ability to a free *|/ by 2|4|8.\n // The console setting has a different mapping than the quality setting.\n // Other platforms can use other values.\n // 0.125 leaves less aliasing, but is softer (default!!!)\n // 0.25 leaves more aliasing, and is sharper\n FxaaFloat fxaaConsoleEdgeThreshold,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_THRESHOLD_MIN define.\n // It is here now to allow easier tuning.\n // Trims the algorithm from processing darks.\n // The console setting has a different mapping than the quality setting.\n // This only applies when FXAA_EARLY_EXIT is 1.\n // This does not apply to PS3,\n // PS3 was simplified to avoid more shader instructions.\n // 0.06 - faster but more aliasing in darks\n // 0.05 - default\n // 0.04 - slower and less aliasing in darks\n // Special notes when using FXAA_GREEN_AS_LUMA,\n // Likely want to set this to zero.\n // As colors that are mostly not-green\n // will appear very dark in the green channel!\n // Tune by looking at mostly non-green content,\n // then start at zero and increase until aliasing is a problem.\n FxaaFloat fxaaConsoleEdgeThresholdMin,\n //\n // Extra constants for 360 FXAA Console only.\n // Use zeros or anything else for other platforms.\n // These must be in physical constant registers and NOT immediates.\n // Immediates will result in compiler un-optimizing.\n // {xyzw} = float4(1.0, -1.0, 0.25, -0.25)\n FxaaFloat4 fxaaConsole360ConstDir\n) {\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posM;\n posM.x = pos.x;\n posM.y = pos.y;\n #if (FXAA_GATHER4_ALPHA == 1)\n #if (FXAA_DISCARD == 0)\n FxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\n #if (FXAA_GREEN_AS_LUMA == 0)\n #define lumaM rgbyM.w\n #else\n #define lumaM rgbyM.y\n #endif\n #endif\n #if (FXAA_GREEN_AS_LUMA == 0)\n FxaaFloat4 luma4A = FxaaTexAlpha4(tex, posM);\n FxaaFloat4 luma4B = FxaaTexOffAlpha4(tex, posM, FxaaInt2(-1, -1));\n #else\n FxaaFloat4 luma4A = FxaaTexGreen4(tex, posM);\n FxaaFloat4 luma4B = FxaaTexOffGreen4(tex, posM, FxaaInt2(-1, -1));\n #endif\n #if (FXAA_DISCARD == 1)\n #define lumaM luma4A.w\n #endif\n #define lumaE luma4A.z\n #define lumaS luma4A.x\n #define lumaSE luma4A.y\n #define lumaNW luma4B.w\n #define lumaN luma4B.z\n #define lumaW luma4B.x\n #else\n FxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\n #if (FXAA_GREEN_AS_LUMA == 0)\n #define lumaM rgbyM.w\n #else\n #define lumaM rgbyM.y\n #endif\n #if (FXAA_GLSL_100 == 1)\n FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 0.0, 1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0, 0.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 0.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0, 0.0), fxaaQualityRcpFrame.xy));\n #else\n FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0, 1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy));\n #endif\n #endif\n/*--------------------------------------------------------------------------*/\n FxaaFloat maxSM = max(lumaS, lumaM);\n FxaaFloat minSM = min(lumaS, lumaM);\n FxaaFloat maxESM = max(lumaE, maxSM);\n FxaaFloat minESM = min(lumaE, minSM);\n FxaaFloat maxWN = max(lumaN, lumaW);\n FxaaFloat minWN = min(lumaN, lumaW);\n FxaaFloat rangeMax = max(maxWN, maxESM);\n FxaaFloat rangeMin = min(minWN, minESM);\n FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold;\n FxaaFloat range = rangeMax - rangeMin;\n FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled);\n FxaaBool earlyExit = range < rangeMaxClamped;\n/*--------------------------------------------------------------------------*/\n if(earlyExit)\n #if (FXAA_DISCARD == 1)\n FxaaDiscard;\n #else\n return rgbyM;\n #endif\n/*--------------------------------------------------------------------------*/\n #if (FXAA_GATHER4_ALPHA == 0)\n #if (FXAA_GLSL_100 == 1)\n FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0, 1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0, 1.0), fxaaQualityRcpFrame.xy));\n #else\n FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\n #endif\n #else\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\n #endif\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNS = lumaN + lumaS;\n FxaaFloat lumaWE = lumaW + lumaE;\n FxaaFloat subpixRcpRange = 1.0/range;\n FxaaFloat subpixNSWE = lumaNS + lumaWE;\n FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS;\n FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE;\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNESE = lumaNE + lumaSE;\n FxaaFloat lumaNWNE = lumaNW + lumaNE;\n FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE;\n FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE;\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNWSW = lumaNW + lumaSW;\n FxaaFloat lumaSWSE = lumaSW + lumaSE;\n FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2);\n FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2);\n FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW;\n FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE;\n FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4;\n FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4;\n/*--------------------------------------------------------------------------*/\n FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE;\n FxaaFloat lengthSign = fxaaQualityRcpFrame.x;\n FxaaBool horzSpan = edgeHorz >= edgeVert;\n FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE;\n/*--------------------------------------------------------------------------*/\n if(!horzSpan) lumaN = lumaW;\n if(!horzSpan) lumaS = lumaE;\n if(horzSpan) lengthSign = fxaaQualityRcpFrame.y;\n FxaaFloat subpixB = (subpixA * (1.0/12.0)) - lumaM;\n/*--------------------------------------------------------------------------*/\n FxaaFloat gradientN = lumaN - lumaM;\n FxaaFloat gradientS = lumaS - lumaM;\n FxaaFloat lumaNN = lumaN + lumaM;\n FxaaFloat lumaSS = lumaS + lumaM;\n FxaaBool pairN = abs(gradientN) >= abs(gradientS);\n FxaaFloat gradient = max(abs(gradientN), abs(gradientS));\n if(pairN) lengthSign = -lengthSign;\n FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange);\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posB;\n posB.x = posM.x;\n posB.y = posM.y;\n FxaaFloat2 offNP;\n offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x;\n offNP.y = ( horzSpan) ? 0.0 : fxaaQualityRcpFrame.y;\n if(!horzSpan) posB.x += lengthSign * 0.5;\n if( horzSpan) posB.y += lengthSign * 0.5;\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posN;\n posN.x = posB.x - offNP.x * FXAA_QUALITY_P0;\n posN.y = posB.y - offNP.y * FXAA_QUALITY_P0;\n FxaaFloat2 posP;\n posP.x = posB.x + offNP.x * FXAA_QUALITY_P0;\n posP.y = posB.y + offNP.y * FXAA_QUALITY_P0;\n FxaaFloat subpixD = ((-2.0)*subpixC) + 3.0;\n FxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN));\n FxaaFloat subpixE = subpixC * subpixC;\n FxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP));\n/*--------------------------------------------------------------------------*/\n if(!pairN) lumaNN = lumaSS;\n FxaaFloat gradientScaled = gradient * 1.0/4.0;\n FxaaFloat lumaMM = lumaM - lumaNN * 0.5;\n FxaaFloat subpixF = subpixD * subpixE;\n FxaaBool lumaMLTZero = lumaMM < 0.0;\n/*--------------------------------------------------------------------------*/\n lumaEndN -= lumaNN * 0.5;\n lumaEndP -= lumaNN * 0.5;\n FxaaBool doneN = abs(lumaEndN) >= gradientScaled;\n FxaaBool doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P1;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P1;\n FxaaBool doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P1;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P1;\n/*--------------------------------------------------------------------------*/\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P2;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P2;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P2;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P2;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 3)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P3;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P3;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P3;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P3;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 4)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P4;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P4;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P4;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P4;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 5)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P5;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P5;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P5;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P5;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 6)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P6;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P6;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P6;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P6;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 7)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P7;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P7;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P7;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P7;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 8)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P8;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P8;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P8;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P8;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 9)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P9;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P9;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P9;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P9;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 10)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P10;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P10;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P10;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P10;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 11)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P11;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P11;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P11;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P11;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 12)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P12;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P12;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P12;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P12;\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n/*--------------------------------------------------------------------------*/\n FxaaFloat dstN = posM.x - posN.x;\n FxaaFloat dstP = posP.x - posM.x;\n if(!horzSpan) dstN = posM.y - posN.y;\n if(!horzSpan) dstP = posP.y - posM.y;\n/*--------------------------------------------------------------------------*/\n FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero;\n FxaaFloat spanLength = (dstP + dstN);\n FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero;\n FxaaFloat spanLengthRcp = 1.0/spanLength;\n/*--------------------------------------------------------------------------*/\n FxaaBool directionN = dstN < dstP;\n FxaaFloat dst = min(dstN, dstP);\n FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP;\n FxaaFloat subpixG = subpixF * subpixF;\n FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5;\n FxaaFloat subpixH = subpixG * fxaaQualitySubpix;\n/*--------------------------------------------------------------------------*/\n FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0;\n FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH);\n if(!horzSpan) posM.x += pixelOffsetSubpix * lengthSign;\n if( horzSpan) posM.y += pixelOffsetSubpix * lengthSign;\n #if (FXAA_DISCARD == 1)\n return FxaaTexTop(tex, posM);\n #else\n return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM);\n #endif\n}\n/*==========================================================================*/\n#endif\n\nvoid main() {\n gl_FragColor = FxaaPixelShader(\n vUv,\n vec4(0.0),\n tDiffuse,\n tDiffuse,\n tDiffuse,\n resolution,\n vec4(0.0),\n vec4(0.0),\n vec4(0.0),\n 0.75,\n 0.166,\n 0.0833,\n 0.0,\n 0.0,\n 0.0,\n vec4(0.0)\n );\n\n // TODO avoid querying texture twice for same texel\n gl_FragColor.a = texture2D(tDiffuse, vUv).a;\n}\n'},889:nt=>{nt.exports="varying vec2 vUv;\n\nvoid main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}\n"},9969:(nt,Ee,v)=>{"use strict";v.d(Ee,{FX:()=>We,If:()=>j,K2:()=>L,MA:()=>Q,Os:()=>U,P:()=>re,hZ:()=>y,i0:()=>Z,iF:()=>Y,kY:()=>z,kp:()=>o,sf:()=>Ge,ui:()=>st,wk:()=>V});var j=function(ve){return ve[ve.State=0]="State",ve[ve.Transition=1]="Transition",ve[ve.Sequence=2]="Sequence",ve[ve.Group=3]="Group",ve[ve.Animate=4]="Animate",ve[ve.Keyframes=5]="Keyframes",ve[ve.Style=6]="Style",ve[ve.Trigger=7]="Trigger",ve[ve.Reference=8]="Reference",ve[ve.AnimateChild=9]="AnimateChild",ve[ve.AnimateRef=10]="AnimateRef",ve[ve.Query=11]="Query",ve[ve.Stagger=12]="Stagger",ve}(j||{});const o="*";function y(ve,fe){return{type:j.Trigger,name:ve,definitions:fe,options:{}}}function Z(ve,fe=null){return{type:j.Animate,styles:fe,timings:ve}}function U(ve,fe=null){return{type:j.Group,steps:ve,options:fe}}function L(ve,fe=null){return{type:j.Sequence,steps:ve,options:fe}}function Y(ve){return{type:j.Style,styles:ve,offset:null}}function V(ve,fe,Qe){return{type:j.State,name:ve,styles:fe,options:Qe}}function z(ve,fe,Qe=null){return{type:j.Transition,expr:ve,animation:fe,options:Qe}}function Q(ve=null){return{type:j.AnimateChild,options:ve}}function re(ve,fe,Qe=null){return{type:j.Query,selector:ve,animation:fe,options:Qe}}class Ge{constructor(fe=0,Qe=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._originalOnDoneFns=[],this._originalOnStartFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=fe+Qe}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(fe=>fe()),this._onDoneFns=[])}onStart(fe){this._originalOnStartFns.push(fe),this._onStartFns.push(fe)}onDone(fe){this._originalOnDoneFns.push(fe),this._onDoneFns.push(fe)}onDestroy(fe){this._onDestroyFns.push(fe)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(fe=>fe()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(fe=>fe()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(fe){this._position=this.totalTime?fe*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(fe){const Qe="start"==fe?this._onStartFns:this._onDoneFns;Qe.forEach(Te=>Te()),Qe.length=0}}class st{constructor(fe){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=fe;let Qe=0,Te=0,Le=0;const pt=this.players.length;0==pt?queueMicrotask(()=>this._onFinish()):this.players.forEach(wt=>{wt.onDone(()=>{++Qe==pt&&this._onFinish()}),wt.onDestroy(()=>{++Te==pt&&this._onDestroy()}),wt.onStart(()=>{++Le==pt&&this._onStart()})}),this.totalTime=this.players.reduce((wt,Nt)=>Math.max(wt,Nt.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(fe=>fe()),this._onDoneFns=[])}init(){this.players.forEach(fe=>fe.init())}onStart(fe){this._onStartFns.push(fe)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(fe=>fe()),this._onStartFns=[])}onDone(fe){this._onDoneFns.push(fe)}onDestroy(fe){this._onDestroyFns.push(fe)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(fe=>fe.play())}pause(){this.players.forEach(fe=>fe.pause())}restart(){this.players.forEach(fe=>fe.restart())}finish(){this._onFinish(),this.players.forEach(fe=>fe.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(fe=>fe.destroy()),this._onDestroyFns.forEach(fe=>fe()),this._onDestroyFns=[])}reset(){this.players.forEach(fe=>fe.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(fe){const Qe=fe*this.totalTime;this.players.forEach(Te=>{const Le=Te.totalTime?Math.min(1,Qe/Te.totalTime):1;Te.setPosition(Le)})}getPosition(){const fe=this.players.reduce((Qe,Te)=>null===Qe||Te.totalTime>Qe.totalTime?Te:Qe,null);return null!=fe?fe.getPosition():0}beforeDestroy(){this.players.forEach(fe=>{fe.beforeDestroy&&fe.beforeDestroy()})}triggerCallback(fe){const Qe="start"==fe?this._onStartFns:this._onDoneFns;Qe.forEach(Te=>Te()),Qe.length=0}}const We="!"},4438:(nt,Ee,v)=>{"use strict";function j(a,c){return Object.is(a,c)}v.d(Ee,{bc$:()=>PV,sZ2:()=>My,hnV:()=>iw,o8S:()=>nc,BIS:()=>s4,gRc:()=>YB,OM3:()=>e1,Ocv:()=>n5,abz:()=>ch,Z63:()=>bc,aKT:()=>Di,uvJ:()=>al,zcH:()=>Tc,bkB:()=>zl,y_5:()=>oA,nKC:()=>Sn,zZn:()=>fs,_q3:()=>YE,MKu:()=>ZE,xe9:()=>qB,Vns:()=>ep,SKi:()=>io,Agw:()=>Ey,PLl:()=>iT,rOR:()=>md,sFG:()=>JH,_9s:()=>AI,czy:()=>SC,C4Q:()=>Wy,NYb:()=>LE,giA:()=>tw,RxE:()=>FE,c1b:()=>t1,gXe:()=>vc,mal:()=>fu,Tzd:()=>fM,Af3:()=>mf,tdH:()=>rF,L39:()=>fk,EWP:()=>gk,sbv:()=>pN,w6W:()=>EN,QZP:()=>Bu,Rfq:()=>Qn,WQX:()=>On,naY:()=>$9,Hps:()=>BI,EmA:()=>yc,Udg:()=>pk,N4e:()=>I0,vPA:()=>cN,O8t:()=>lS,An2:()=>au,H3F:()=>ZL,H8p:()=>T0,KH2:()=>ig,TgB:()=>Ql,wOt:()=>Jt,WHO:()=>yb,e01:()=>ew,H5H:()=>KM,Zy3:()=>xr,mq5:()=>ab,JZv:()=>Ji,TL3:()=>kp,jNT:()=>xb,zjR:()=>nw,ngT:()=>Ia,TL$:()=>Hf,Tbb:()=>Et,nM4:()=>Ro,Vt3:()=>$I,GFd:()=>YI,OA$:()=>Mn,Jv_:()=>dg,aNF:()=>Md,R7$:()=>oO,BMQ:()=>FM,HbH:()=>BF,ZvI:()=>OF,STu:()=>XN,AVh:()=>NM,BUC:()=>gp,vxM:()=>VF,wni:()=>kD,C6U:()=>OD,VBU:()=>fA,FsC:()=>wa,jDH:()=>En,G2t:()=>pn,$C:()=>ra,EJ8:()=>ds,rXU:()=>pm,nrm:()=>WM,eu8:()=>E1,bVm:()=>_p,qex:()=>M1,k0s:()=>C1,j41:()=>x1,RV6:()=>zF,xGo:()=>dy,Mr5:()=>XM,KVO:()=>cs,kS0:()=>pd,QTQ:()=>Kl,bIt:()=>B1,lsd:()=>PD,joV:()=>ry,qSk:()=>ny,XpG:()=>R1,nI1:()=>_u,bMT:()=>NL,i5U:()=>LL,ii3:()=>AB,SdG:()=>CD,NAR:()=>uE,Y8G:()=>FF,FS9:()=>hE,Mz_:()=>P1,lJ4:()=>sB,eq3:()=>aB,l_i:()=>lB,NyB:()=>LD,mGM:()=>Cd,sdS:()=>lg,Dyx:()=>HF,Z7z:()=>$M,fX1:()=>jM,Vm6:()=>GM,Njj:()=>EA,EBC:()=>V4,tSv:()=>U4,eBV:()=>X0,npT:()=>dm,B4B:()=>qf,Aen:()=>Lc,xc7:()=>J_,DNE:()=>z_,C5r:()=>da,EFF:()=>XD,JRh:()=>gE,SpI:()=>O1,Lme:()=>_E,LHq:()=>bE,DH7:()=>tB,mxI:()=>U1,R50:()=>L1,GBs:()=>RD});let o=null,y=!1,Z=1;const U=Symbol("SIGNAL");function L(a){const c=o;return o=a,c}function Y(){return o}const z={version:0,lastCleanEpoch:0,dirty:!1,producerNode:void 0,producerLastReadVersion:void 0,producerIndexOfThis:void 0,nextProducerIndex:0,liveConsumerNode:void 0,liveConsumerIndexOfThis:void 0,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function G(a){if(y)throw new Error("");if(null===o)return;o.consumerOnSignalRead(a);const c=o.nextProducerIndex++;Ge(o),ca.nextProducerIndex;)a.producerNode.pop(),a.producerLastReadVersion.pop(),a.producerIndexOfThis.pop()}}function Ne(a){Ge(a);for(let c=0;c0}function Ge(a){a.producerNode??=[],a.producerIndexOfThis??=[],a.producerLastReadVersion??=[]}function st(a){a.liveConsumerNode??=[],a.liveConsumerIndexOfThis??=[]}function We(a){return void 0!==a.producerNode}function ve(a){const c=Object.create(Le);c.computation=a;const d=()=>{if(ne(c),G(c),c.value===Te)throw c.error;return c.value};return d[U]=c,d}const fe=Symbol("UNSET"),Qe=Symbol("COMPUTING"),Te=Symbol("ERRORED"),Le={...z,value:fe,dirty:!0,error:null,equal:j,producerMustRecompute:a=>a.value===fe||a.value===Qe,producerRecomputeValue(a){if(a.value===Qe)throw new Error("Detected cycle in computations.");const c=a.value;a.value=Qe;const d=Be(a);let h;try{h=a.computation()}catch(A){h=Te,a.error=A}finally{Ie(a,d)}c!==fe&&c!==Te&&h!==Te&&a.equal(c,h)?a.value=c:(a.value=h,a.version++)}};let wt=function pt(){throw new Error};function Nt(){wt()}let fn=null;function Bi(a,c){me()||Nt(),a.equal(a.value,c)||(a.value=c,function kt(a){a.version++,function Q(){Z++}(),re(a),fn?.()}(a))}const it={...z,equal:j,value:void 0};const cn=()=>{},Wt={...z,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!1,consumerMarkedDirty:a=>{null!==a.schedule&&a.schedule(a.ref)},hasRun:!1,cleanupFn:cn};var si=v(4412),Zi=v(1413),fr=v(8359),Lr=v(6354);const Ii="https://g.co/ng/security#xss";class Jt extends Error{constructor(c,d){super(xr(c,d)),this.code=c}}function xr(a,c){return`NG0${Math.abs(a)}${c?": "+c:""}`}function Li(a){return{toString:a}.toString()}const Fs="__parameters__";function po(a,c,d){return Li(()=>{const h=function as(a){return function(...d){if(a){const h=a(...d);for(const A in h)this[A]=h[A]}}}(c);function A(...g){if(this instanceof A)return h.apply(this,g),this;const x=new A(...g);return B.annotation=x,B;function B(k,H,K){const ae=k.hasOwnProperty(Fs)?k[Fs]:Object.defineProperty(k,Fs,{value:[]})[Fs];for(;ae.length<=K;)ae.push(null);return(ae[K]=ae[K]||[]).push(x),k}}return d&&(A.prototype=Object.create(d.prototype)),A.prototype.ngMetadataName=a,A.annotationCls=A,A})}const Ji=globalThis;function Tt(a){for(let c in a)if(a[c]===Tt)return c;throw Error("Could not find renamed property on target object.")}function rt(a,c){for(const d in c)c.hasOwnProperty(d)&&!a.hasOwnProperty(d)&&(a[d]=c[d])}function Et(a){if("string"==typeof a)return a;if(Array.isArray(a))return"["+a.map(Et).join(", ")+"]";if(null==a)return""+a;if(a.overriddenName)return`${a.overriddenName}`;if(a.name)return`${a.name}`;const c=a.toString();if(null==c)return""+c;const d=c.indexOf("\n");return-1===d?c:c.substring(0,d)}function ln(a,c){return null==a||""===a?null===c?"":c:null==c||""===c?a:a+" "+c}const ei=Tt({__forward_ref__:Tt});function Qn(a){return a.__forward_ref__=Qn,a.toString=function(){return Et(this())},a}function Xt(a){return Rn(a)?a():a}function Rn(a){return"function"==typeof a&&a.hasOwnProperty(ei)&&a.__forward_ref__===Qn}function En(a){return{token:a.token,providedIn:a.providedIn||null,factory:a.factory,value:void 0}}function pn(a){return{providers:a.providers||[],imports:a.imports||[]}}function Ke(a){return Bn(a,vi)||Bn(a,Ao)}function Bn(a,c){return a.hasOwnProperty(c)?a[c]:null}function bi(a){return a&&(a.hasOwnProperty(eo)||a.hasOwnProperty(To))?a[eo]:null}const vi=Tt({\u0275prov:Tt}),eo=Tt({\u0275inj:Tt}),Ao=Tt({ngInjectableDef:Tt}),To=Tt({ngInjectorDef:Tt});class Sn{constructor(c,d){this._desc=c,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof d?this.__NG_ELEMENT_ID__=d:void 0!==d&&(this.\u0275prov=En({token:this,providedIn:d.providedIn||"root",factory:d.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}function Cr(a){return a&&!!a.\u0275providers}const vr=Tt({\u0275cmp:Tt}),ls=Tt({\u0275dir:Tt}),Zo=Tt({\u0275pipe:Tt}),il=Tt({\u0275mod:Tt}),No=Tt({\u0275fac:Tt}),ia=Tt({__NG_ELEMENT_ID__:Tt}),ma=Tt({__NG_ENV_ID__:Tt});function yi(a){return"string"==typeof a?a:null==a?"":String(a)}function zn(a,c){throw new Jt(-201,!1)}var Si=function(a){return a[a.Default=0]="Default",a[a.Host=1]="Host",a[a.Self=2]="Self",a[a.SkipSelf=4]="SkipSelf",a[a.Optional=8]="Optional",a}(Si||{});let Lo;function af(){return Lo}function Bs(a){const c=Lo;return Lo=a,c}function iA(a,c,d){const h=Ke(a);return h&&"root"==h.providedIn?void 0===h.value?h.value=h.factory():h.value:d&Si.Optional?null:void 0!==c?c:void zn()}const ju={},_a="__NG_DI_FLAG__",$u="ngTempTokenPath",_0=/\n/gm,lf="__source";let Od;function gc(a){const c=Od;return Od=a,c}function Cv(a,c=Si.Default){if(void 0===Od)throw new Jt(-203,!1);return null===Od?iA(a,void 0,c):Od.get(a,c&Si.Optional?null:void 0,c)}function cs(a,c=Si.Default){return(af()||Cv)(Xt(a),c)}function On(a,c=Si.Default){return cs(a,b0(c))}function b0(a){return typeof a>"u"||"number"==typeof a?a:(a.optional&&8)|(a.host&&1)|(a.self&&2)|(a.skipSelf&&4)}function ba(a){const c=[];for(let d=0;d({token:a})),-1),cf=Wu(po("Optional"),8),v0=Wu(po("SkipSelf"),4);function rl(a,c){return a.hasOwnProperty(No)?a[No]:null}function _c(a,c){a.forEach(d=>Array.isArray(d)?_c(d,c):c(d))}function Rx(a,c,d){c>=a.length?a.push(d):a.splice(c,0,d)}function df(a,c){return c>=a.length-1?a.pop():a.splice(c,1)[0]}function ya(a,c,d){let h=uf(a,c);return h>=0?a[1|h]=d:(h=~h,function w0(a,c,d,h){let A=a.length;if(A==c)a.push(d,h);else if(1===A)a.push(h,a[0]),a[0]=d;else{for(A--,a.push(a[A-1],a[A]);A>c;)a[A]=a[A-2],A--;a[c]=d,a[c+1]=h}}(a,h,c,d)),h}function x0(a,c){const d=uf(a,c);if(d>=0)return a[1|d]}function uf(a,c){return function Sv(a,c,d){let h=0,A=a.length>>d;for(;A!==h;){const g=h+(A-h>>1),x=a[g<c?A=g:h=g+1}return~(A<c){x=g-1;break}}}for(;g-1){let g;for(;++Ag?"":A[K+1].toLowerCase(),2&h&&H!==ae){if(wi(h))return!1;x=!0}}}}else{if(!x&&!wi(h)&&!wi(k))return!1;if(x&&wi(k))continue;x=!1,h=k|1&h}}return wi(h)||x}function wi(a){return!(1&a)}function Ox(a,c,d,h){if(null===c)return-1;let A=0;if(h||!d){let g=!1;for(;A-1)for(d++;d0?'="'+B+'"':"")+"]"}else 8&h?A+="."+x:4&h&&(A+=" "+x);else""!==A&&!wi(x)&&(c+=Dv(g,A),A=""),h=x,g=g||!wi(h);d++}return""!==A&&(c+=Dv(g,A)),c}function fA(a){return Li(()=>{const c=Ux(a),d={...c,decls:a.decls,vars:a.vars,template:a.template,consts:a.consts||null,ngContentSelectors:a.ngContentSelectors,onPush:a.changeDetection===cA.OnPush,directiveDefs:null,pipeDefs:null,dependencies:c.standalone&&a.dependencies||null,getStandaloneInjector:null,signals:a.signals??!1,data:a.data||{},encapsulation:a.encapsulation||vc.Emulated,styles:a.styles||Tr,_:null,schemas:a.schemas||null,tView:null,id:""};td(d);const h=a.dependencies;return d.directiveDefs=xa(h,!1),d.pipeDefs=xa(h,!0),d.id=function Vx(a){let c=0;const d=[a.selectors,a.ngContentSelectors,a.hostVars,a.hostAttrs,a.consts,a.vars,a.decls,a.encapsulation,a.standalone,a.signals,a.exportAs,JSON.stringify(a.inputs),JSON.stringify(a.outputs),Object.getOwnPropertyNames(a.type.prototype),!!a.contentQueries,!!a.viewQuery].join("|");for(const A of d)c=Math.imul(31,c)+A.charCodeAt(0)|0;return c+=2147483648,"c"+c}(d),d})}function E0(a){return $i(a)||Uo(a)}function kv(a){return null!==a}function ra(a){return Li(()=>({type:a.type,bootstrap:a.bootstrap||Tr,declarations:a.declarations||Tr,imports:a.imports||Tr,exports:a.exports||Tr,transitiveCompileScopes:null,schemas:a.schemas||null,id:a.id||null}))}function sl(a,c){if(null==a)return Fl;const d={};for(const h in a)if(a.hasOwnProperty(h)){const A=a[h];let g,x,B=Zc.None;Array.isArray(A)?(B=A[0],g=A[1],x=A[2]??g):(g=A,x=A),c?(d[g]=B!==Zc.None?[h,B]:h,c[g]=x):d[g]=h}return d}function wa(a){return Li(()=>{const c=Ux(a);return td(c),c})}function ds(a){return{type:a.type,name:a.name,factory:null,pure:!1!==a.pure,standalone:!0===a.standalone,onDestroy:a.type.prototype.ngOnDestroy||null}}function $i(a){return a[vr]||null}function Uo(a){return a[ls]||null}function Jo(a){return a[Zo]||null}function Ux(a){const c={};return{type:a.type,providersResolver:null,factory:null,hostBindings:a.hostBindings||null,hostVars:a.hostVars||0,hostAttrs:a.hostAttrs||null,contentQueries:a.contentQueries||null,declaredInputs:c,inputTransforms:null,inputConfig:a.inputs||Fl,exportAs:a.exportAs||null,standalone:!0===a.standalone,signals:!0===a.signals,selectors:a.selectors||Tr,viewQuery:a.viewQuery||null,features:a.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:sl(a.inputs,c),outputs:sl(a.outputs),debugInfo:null}}function td(a){a.features?.forEach(c=>c(a))}function xa(a,c){if(!a)return null;const d=c?Jo:E0;return()=>("function"==typeof a?a():a).map(h=>d(h)).filter(kv)}function yc(a){return{\u0275providers:a}}function Hd(...a){return{\u0275providers:Pv(0,a),\u0275fromNgModule:!0}}function Pv(a,...c){const d=[],h=new Set;let A;const g=x=>{d.push(x)};return _c(c,x=>{const B=x;Ca(B,g,[],h)&&(A||=[],A.push(B))}),void 0!==A&&Hx(A,g),d}function Hx(a,c){for(let d=0;d{c(g,h)})}}function Ca(a,c,d,h){if(!(a=Xt(a)))return!1;let A=null,g=bi(a);const x=!g&&$i(a);if(g||x){if(x&&!x.standalone)return!1;A=a}else{const k=a.ngModule;if(g=bi(k),!g)return!1;A=k}const B=h.has(A);if(x){if(B)return!1;if(h.add(A),x.dependencies){const k="function"==typeof x.dependencies?x.dependencies():x.dependencies;for(const H of k)Ca(H,c,d,h)}}else{if(!g)return!1;{if(null!=g.imports&&!B){let H;h.add(A);try{_c(g.imports,K=>{Ca(K,c,d,h)&&(H||=[],H.push(K))})}finally{}void 0!==H&&Hx(H,c)}if(!B){const H=rl(A)||(()=>new A);c({provide:A,useFactory:H,deps:Tr},A),c({provide:C0,useValue:A,multi:!0},A),c({provide:bc,useValue:()=>cs(A),multi:!0},A)}const k=g.providers;if(null!=k&&!B){const H=a;Ov(k,K=>{c(K,H)})}}}return A!==a&&void 0!==a.providers}function Ov(a,c){for(let d of a)Cr(d)&&(d=d.\u0275providers),Array.isArray(d)?Ov(d,c):c(d)}const j2=Tt({provide:String,useValue:Tt});function hf(a){return null!==a&&"object"==typeof a&&j2 in a}function nd(a){return"function"==typeof a}const T0=new Sn(""),ff={},zx={};let pA;function pf(){return void 0===pA&&(pA=new lA),pA}class al{}class id extends al{get destroyed(){return this._destroyed}constructor(c,d,h,A){super(),this.parent=d,this.source=h,this.scopes=A,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,Vv(c,x=>this.processProvider(x)),this.records.set(Px,Yu(void 0,this)),A.has("environment")&&this.records.set(al,Yu(void 0,this));const g=this.records.get(T0);null!=g&&"string"==typeof g.value&&this.scopes.add(g.value),this.injectorDefTypes=new Set(this.get(C0,Tr,Si.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;const c=L(null);try{for(const h of this._ngOnDestroyHooks)h.ngOnDestroy();const d=this._onDestroyHooks;this._onDestroyHooks=[];for(const h of d)h()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),L(c)}}onDestroy(c){return this.assertNotDestroyed(),this._onDestroyHooks.push(c),()=>this.removeOnDestroy(c)}runInContext(c){this.assertNotDestroyed();const d=gc(this),h=Bs(void 0);try{return c()}finally{gc(d),Bs(h)}}get(c,d=ju,h=Si.Default){if(this.assertNotDestroyed(),c.hasOwnProperty(ma))return c[ma](this);h=b0(h);const g=gc(this),x=Bs(void 0);try{if(!(h&Si.SkipSelf)){let k=this.records.get(c);if(void 0===k){const H=function X2(a){return"function"==typeof a||"object"==typeof a&&a instanceof Sn}(c)&&Ke(c);k=H&&this.injectableDefInScope(H)?Yu(Lv(c),ff):null,this.records.set(c,k)}if(null!=k)return this.hydrate(c,k)}return(h&Si.Self?pf():this.parent).get(c,d=h&Si.Optional&&d===ju?null:d)}catch(B){if("NullInjectorError"===B.name){if((B[$u]=B[$u]||[]).unshift(Et(c)),g)throw B;return function Bx(a,c,d,h){const A=a[$u];throw c[lf]&&A.unshift(c[lf]),a.message=function Mv(a,c,d,h=null){a=a&&"\n"===a.charAt(0)&&"\u0275"==a.charAt(1)?a.slice(2):a;let A=Et(c);if(Array.isArray(c))A=c.map(Et).join(" -> ");else if("object"==typeof c){let g=[];for(let x in c)if(c.hasOwnProperty(x)){let B=c[x];g.push(x+":"+("string"==typeof B?JSON.stringify(B):Et(B)))}A=`{${g.join(", ")}}`}return`${d}${h?"("+h+")":""}[${A}]: ${a.replace(_0,"\n ")}`}("\n"+a.message,A,d,h),a.ngTokenPath=A,a[$u]=null,a}(B,c,"R3InjectorError",this.source)}throw B}finally{Bs(x),gc(g)}}resolveInjectorInitializers(){const c=L(null),d=gc(this),h=Bs(void 0);try{const g=this.get(bc,Tr,Si.Self);for(const x of g)x()}finally{gc(d),Bs(h),L(c)}}toString(){const c=[],d=this.records;for(const h of d.keys())c.push(Et(h));return`R3Injector[${c.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Jt(205,!1)}processProvider(c){let d=nd(c=Xt(c))?c:Xt(c&&c.provide);const h=function Uv(a){return hf(a)?Yu(void 0,a.useValue):Yu(Gx(a),ff)}(c);if(!nd(c)&&!0===c.multi){let A=this.records.get(d);A||(A=Yu(void 0,ff,!0),A.factory=()=>ba(A.multi),this.records.set(d,A)),d=c,A.multi.push(c)}this.records.set(d,h)}hydrate(c,d){const h=L(null);try{return d.value===ff&&(d.value=zx,d.value=d.factory()),"object"==typeof d.value&&d.value&&function W2(a){return null!==a&&"object"==typeof a&&"function"==typeof a.ngOnDestroy}(d.value)&&this._ngOnDestroyHooks.add(d.value),d.value}finally{L(h)}}injectableDefInScope(c){if(!c.providedIn)return!1;const d=Xt(c.providedIn);return"string"==typeof d?"any"===d||this.scopes.has(d):this.injectorDefTypes.has(d)}removeOnDestroy(c){const d=this._onDestroyHooks.indexOf(c);-1!==d&&this._onDestroyHooks.splice(d,1)}}function Lv(a){const c=Ke(a),d=null!==c?c.factory:rl(a);if(null!==d)return d;if(a instanceof Sn)throw new Jt(204,!1);if(a instanceof Function)return function $2(a){if(a.length>0)throw new Jt(204,!1);const d=function ti(a){return a&&(a[vi]||a[Ao])||null}(a);return null!==d?()=>d.factory(a):()=>new a}(a);throw new Jt(204,!1)}function Gx(a,c,d){let h;if(nd(a)){const A=Xt(a);return rl(A)||Lv(A)}if(hf(a))h=()=>Xt(a.useValue);else if(function S0(a){return!(!a||!a.useFactory)}(a))h=()=>a.useFactory(...ba(a.deps||[]));else if(function Qx(a){return!(!a||!a.useExisting)}(a))h=()=>cs(Xt(a.useExisting));else{const A=Xt(a&&(a.useClass||a.provide));if(!function q2(a){return!!a.deps}(a))return rl(A)||Lv(A);h=()=>new A(...ba(a.deps))}return h}function Yu(a,c,d=!1){return{factory:a,value:c,multi:d?[]:void 0}}function Vv(a,c){for(const d of a)Array.isArray(d)?Vv(d,c):d&&Cr(d)?Vv(d.\u0275providers,c):c(d)}function I0(a,c){a instanceof id&&a.assertNotDestroyed();const h=gc(a),A=Bs(void 0);try{return c()}finally{gc(h),Bs(A)}}function Af(){return void 0!==af()||null!=function qu(){return Od}()}function mf(a){if(!Af())throw new Jt(-203,!1)}const to=0,en=1,xi=2,$o=3,ll=4,xs=5,Gs=6,Zu=7,no=8,Vo=9,La=10,Oi=11,Qd=12,Wx=13,zd=14,go=15,xc=16,Gd=17,cl=18,Dl=19,Qv=20,od=21,mA=22,Ua=23,hi=25,gA=1,Bl=7,Ju=9,Ho=10;var B0=function(a){return a[a.None=0]="None",a[a.HasTransplantedViews=2]="HasTransplantedViews",a}(B0||{});function us(a){return Array.isArray(a)&&"object"==typeof a[gA]}function Rs(a){return Array.isArray(a)&&!0===a[gA]}function k0(a){return!!(4&a.flags)}function eh(a){return a.componentOffset>-1}function R0(a){return!(1&~a.flags)}function kl(a){return!!a.template}function bA(a){return!!(512&a[xi])}class Z2{constructor(c,d,h){this.previousValue=c,this.currentValue=d,this.firstChange=h}isFirstChange(){return this.firstChange}}function U0(a,c,d,h){null!==c?c.applyValueToInputSignal(c,h):a[d]=h}function Mn(){return $d}function $d(a){return a.type.prototype.ngOnChanges&&(a.setInput=mi),qr}function qr(){const a=Gv(this),c=a?.current;if(c){const d=a.previous;if(d===Fl)a.previous=c;else for(let h in c)d[h]=c[h];a.current=null,this.ngOnChanges(c)}}function mi(a,c,d,h,A){const g=this.declaredInputs[h],x=Gv(a)||function yA(a,c){return a[un]=c}(a,{previous:Fl,current:null}),B=x.current||(x.current={}),k=x.previous,H=k[g];B[g]=new Z2(H&&H.currentValue,d,k===Fl),U0(a,c,A,d)}Mn.ngInherit=!0;const un="__ngSimpleChanges__";function Gv(a){return a[un]||null}const Rl=function(a,c,d){},wf="svg";function cr(a){for(;Array.isArray(a);)a=a[to];return a}function xf(a,c){return cr(c[a])}function oa(a,c){return cr(c[a.index])}function Ir(a,c){return a.data[c]}function lr(a,c){return a[c]}function $s(a,c){const d=c[a];return us(d)?d:d[to]}function H0(a){return!(128&~a[xi])}function Va(a,c){return null==c?null:a[c]}function jv(a){a[Gd]=0}function $v(a){1024&a[xi]||(a[xi]|=1024,H0(a)&&z0(a))}function Q0(a){return!!(9216&a[xi]||a[Ua]?.dirty)}function qv(a){a[La].changeDetectionScheduler?.notify(8),64&a[xi]&&(a[xi]|=1024),Q0(a)&&z0(a)}function z0(a){a[La].changeDetectionScheduler?.notify(0);let c=Cc(a);for(;null!==c&&!(8192&c[xi])&&(c[xi]|=8192,H0(c));)c=Cc(c)}function xA(a,c){if(!(256&~a[xi]))throw new Jt(911,!1);null===a[od]&&(a[od]=[]),a[od].push(c)}function Cc(a){const c=a[$o];return Rs(c)?c[$o]:c}const Ni={lFrame:nh(null),bindingsEnabled:!0,skipHydrationRootTNode:null};let G0=!1;function MA(){return Ni.bindingsEnabled}function sd(){return null!==Ni.skipHydrationRootTNode}function Pt(){return Ni.lFrame.lView}function ar(){return Ni.lFrame.tView}function X0(a){return Ni.lFrame.contextLView=a,a[no]}function EA(a){return Ni.lFrame.contextLView=null,a}function Qr(){let a=Yv();for(;null!==a&&64===a.type;)a=a.parent;return a}function Yv(){return Ni.lFrame.currentTNode}function xo(a,c){const d=Ni.lFrame;d.currentTNode=a,d.isParent=c}function Yr(){return Ni.lFrame.isParent}function TA(){Ni.lFrame.isParent=!1}function Zv(){return G0}function Z0(a){G0=a}function Ps(){const a=Ni.lFrame;let c=a.bindingRootIndex;return-1===c&&(c=a.bindingRootIndex=a.tView.bindingStartIndex),c}function Nl(){return Ni.lFrame.bindingIndex}function dl(){return Ni.lFrame.bindingIndex++}function Rr(a){const c=Ni.lFrame,d=c.bindingIndex;return c.bindingIndex=c.bindingIndex+a,d}function Ef(a,c){const d=Ni.lFrame;d.bindingIndex=d.bindingRootIndex=a,FA(c)}function FA(a){Ni.lFrame.currentDirectiveIndex=a}function Sf(){return Ni.lFrame.currentQueryIndex}function Ll(a){Ni.lFrame.currentQueryIndex=a}function J0(a){const c=a[en];return 2===c.type?c.declTNode:1===c.type?a[xs]:null}function e_(a,c,d){if(d&Si.SkipSelf){let A=c,g=a;for(;!(A=A.parent,null!==A||d&Si.Host||(A=J0(g),null===A||(g=g[zd],10&A.type))););if(null===A)return!1;c=A,a=g}const h=Ni.lFrame=BA();return h.currentTNode=c,h.lView=a,!0}function Tf(a){const c=BA(),d=a[en];Ni.lFrame=c,c.currentTNode=d.firstChild,c.lView=a,c.tView=d,c.contextLView=a,c.bindingIndex=d.bindingStartIndex,c.inI18n=!1}function BA(){const a=Ni.lFrame,c=null===a?null:a.child;return null===c?nh(a):c}function nh(a){const c={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:a,child:null,inI18n:!1};return null!==a&&(a.child=c),c}function ey(){const a=Ni.lFrame;return Ni.lFrame=a.parent,a.currentTNode=null,a.lView=null,a}const ul=ey;function kA(){const a=ey();a.isParent=!0,a.tView=null,a.selectedIndex=-1,a.contextLView=null,a.elementDepthCount=0,a.currentDirectiveIndex=-1,a.currentNamespace=null,a.bindingRootIndex=-1,a.bindingIndex=-1,a.currentQueryIndex=0}function Xn(){return Ni.lFrame.selectedIndex}function ad(a){Ni.lFrame.selectedIndex=a}function kr(){const a=Ni.lFrame;return Ir(a.tView,a.selectedIndex)}function ny(){Ni.lFrame.currentNamespace=wf}function ry(){!function J2(){Ni.lFrame.currentNamespace=null}()}let If=!0;function ih(){return If}function hl(a){If=a}function PA(a,c){for(let d=c.directiveStart,h=c.directiveEnd;d=h)break}else c[k]<0&&(a[Gd]+=65536),(B>14>16&&(3&a[xi])===c&&(a[xi]+=16384,Ff(B,g)):Ff(B,g)}const Df=-1;class OA{constructor(c,d,h){this.factory=c,this.resolving=!1,this.canSeeViewProviders=d,this.injectImpl=h}}const kf={};class Ul{constructor(c,d){this.injector=c,this.parentInjector=d}get(c,d,h){h=b0(h);const A=this.injector.get(c,kf,h);return A!==kf||d===kf?A:this.parentInjector.get(c,d,h)}}function Rf(a){return a!==Df}function cd(a){return 32767&a}function Xd(a,c){let d=function NA(a){return a>>16}(a),h=c;for(;d>0;)h=h[zd],d--;return h}let UA=!0;function dd(a){const c=UA;return UA=a,c}const HA=255,QA=5;let zA=0;const Ha={};function Pf(a,c){const d=Ec(a,c);if(-1!==d)return d;const h=c[en];h.firstCreatePass&&(a.injectorIndex=c.length,Kd(h.data,a),Kd(c,null),Kd(h.blueprint,null));const A=ud(a,c),g=a.injectorIndex;if(Rf(A)){const x=cd(A),B=Xd(A,c),k=B[en].data;for(let H=0;H<8;H++)c[g+H]=B[x+H]|k[x+H]}return c[g+8]=A,g}function Kd(a,c){a.push(0,0,0,0,0,0,0,0,c)}function Ec(a,c){return-1===a.injectorIndex||a.parent&&a.parent.injectorIndex===a.injectorIndex||null===c[a.injectorIndex+8]?-1:a.injectorIndex}function ud(a,c){if(a.parent&&-1!==a.parent.injectorIndex)return a.parent.injectorIndex;let d=0,h=null,A=c;for(;null!==A;){if(h=uy(A),null===h)return Df;if(d++,A=A[zd],-1!==h.injectorIndex)return h.injectorIndex|d<<16}return Df}function _o(a,c,d){!function t_(a,c,d){let h;"string"==typeof d?h=d.charCodeAt(0)||0:d.hasOwnProperty(ia)&&(h=d[ia]),null==h&&(h=d[ia]=zA++);const A=h&HA;c.data[a+(A>>QA)]|=1<=0?c&HA:sC:c}(d);if("function"==typeof g){if(!e_(c,a,h))return h&Si.Host?Yd(A,0,h):Vl(c,d,h,A);try{let x;if(x=g(h),null!=x||h&Si.Optional)return x;zn()}finally{ul()}}else if("number"==typeof g){let x=null,B=Ec(a,c),k=Df,H=h&Si.Host?c[go][xs]:null;for((-1===B||h&Si.SkipSelf)&&(k=-1===B?ud(a,c):c[B+8],k!==Df&&Sc(h,!1)?(x=c[en],B=cd(k),c=Xd(k,c)):B=-1);-1!==B;){const K=c[en];if(GA(g,B,K.data)){const ae=fl(B,c,d,x,h,H);if(ae!==Ha)return ae}k=c[B+8],k!==Df&&Sc(h,c[en].data[B+8]===H)&&GA(g,B,c)?(x=K,B=cd(k),c=Xd(k,c)):B=-1}}return A}function fl(a,c,d,h,A,g){const x=c[en],B=x.data[a+8],K=oh(B,x,d,null==h?eh(B)&&UA:h!=x&&!!(3&B.type),A&Si.Host&&g===B);return null!==K?hd(c,x,K,B):Ha}function oh(a,c,d,h,A){const g=a.providerIndexes,x=c.data,B=1048575&g,k=a.directiveStart,K=g>>20,Re=A?B+K:a.directiveEnd;for(let je=h?B:B+K;je=k&&ot.type===d)return je}if(A){const je=x[k];if(je&&kl(je)&&je.type===d)return k}return null}function hd(a,c,d,h){let A=a[d];const g=c.data;if(function ay(a){return a instanceof OA}(A)){const x=A;x.resolving&&function ga(a,c){throw c&&c.join(" > "),new Jt(-200,a)}(function er(a){return"function"==typeof a?a.name||a.toString():"object"==typeof a&&null!=a&&"function"==typeof a.type?a.type.name||a.type.toString():yi(a)}(g[d]));const B=dd(x.canSeeViewProviders);x.resolving=!0;const H=x.injectImpl?Bs(x.injectImpl):null;e_(a,h,Si.Default);try{A=a[d]=x.factory(void 0,g,a,h),c.firstCreatePass&&d>=h.directiveStart&&function qd(a,c,d){const{ngOnChanges:h,ngOnInit:A,ngDoCheck:g}=c.type.prototype;if(h){const x=$d(c);(d.preOrderHooks??=[]).push(a,x),(d.preOrderCheckHooks??=[]).push(a,x)}A&&(d.preOrderHooks??=[]).push(0-a,A),g&&((d.preOrderHooks??=[]).push(a,g),(d.preOrderCheckHooks??=[]).push(a,g))}(d,g[d],c)}finally{null!==H&&Bs(H),dd(B),x.resolving=!1,ul()}}return A}function GA(a,c,d){return!!(d[c+(a>>QA)]&1<{const c=a.prototype.constructor,d=c[No]||Yt(c),h=Object.prototype;let A=Object.getPrototypeOf(a.prototype).constructor;for(;A&&A!==h;){const g=A[No]||Yt(A);if(g&&g!==d)return g;A=Object.getPrototypeOf(A)}return g=>new g})}function Yt(a){return Rn(a)?()=>{const c=Yt(Xt(a));return c&&c()}:rl(a)}function uy(a){const c=a[en],d=c.type;return 2===d?c.declTNode:1===d?a[xs]:null}function pd(a){return function Ea(a,c){if("class"===c)return a.classes;if("style"===c)return a.styles;const d=a.attrs;if(d){const h=d.length;let A=0;for(;Acs(Px)})}static{this.__NG_ELEMENT_ID__=-1}}new Sn("").__NG_ELEMENT_ID__=a=>{const c=Qr();if(null===c)throw new Jt(204,!1);if(2&c.type)return c.value;if(a&Si.Optional)return null;throw new Jt(204,!1)};function lh(a){return a.ngOriginalError}const Sa=!0;let ch=(()=>{class a{static{this.__NG_ELEMENT_ID__=Co}static{this.__NG_ENV_ID__=d=>d}}return a})();class Wr extends ch{constructor(c){super(),this._lView=c}onDestroy(c){return xA(this._lView,c),()=>function Mf(a,c){if(null===a[od])return;const d=a[od].indexOf(c);-1!==d&&a[od].splice(d,1)}(this._lView,c)}}function Co(){return new Wr(Pt())}let Ql=(()=>{class a{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new si.t(!1)}get _hasPendingTasks(){return this.hasPendingTasks.value}add(){this._hasPendingTasks||this.hasPendingTasks.next(!0);const d=this.taskId++;return this.pendingTasks.add(d),d}remove(d){this.pendingTasks.delete(d),0===this.pendingTasks.size&&this._hasPendingTasks&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this._hasPendingTasks&&this.hasPendingTasks.next(!1)}static{this.\u0275prov=En({token:a,providedIn:"root",factory:()=>new a})}}return a})();const zl=class XA extends Zi.B{constructor(c=!1){super(),this.destroyRef=void 0,this.pendingTasks=void 0,this.__isAsync=c,Af()&&(this.destroyRef=On(ch,{optional:!0})??void 0,this.pendingTasks=On(Ql,{optional:!0})??void 0)}emit(c){const d=L(null);try{super.next(c)}finally{L(d)}}subscribe(c,d,h){let A=c,g=d||(()=>null),x=h;if(c&&"object"==typeof c){const k=c;A=k.next?.bind(k),g=k.error?.bind(k),x=k.complete?.bind(k)}this.__isAsync&&(g=this.wrapInTimeout(g),A&&(A=this.wrapInTimeout(A)),x&&(x=this.wrapInTimeout(x)));const B=super.subscribe({next:A,error:g,complete:x});return c instanceof fr.yU&&c.add(B),B}wrapInTimeout(c){return d=>{const h=this.pendingTasks?.add();setTimeout(()=>{c(d),void 0!==h&&this.pendingTasks?.remove(h)})}}};function Ad(...a){}function gy(a){let c,d;function h(){a=Ad;try{void 0!==d&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(d),void 0!==c&&clearTimeout(c)}catch{}}return c=setTimeout(()=>{a(),h()}),"function"==typeof requestAnimationFrame&&(d=requestAnimationFrame(()=>{a(),h()})),()=>h()}function _y(a){return queueMicrotask(()=>a()),()=>{a=Ad}}const Nf="isAngularZone",Lf=Nf+"_ID";let a_=0;class io{constructor(c){this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new zl(!1),this.onMicrotaskEmpty=new zl(!1),this.onStable=new zl(!1),this.onError=new zl(!1);const{enableLongStackTrace:d=!1,shouldCoalesceEventChangeDetection:h=!1,shouldCoalesceRunChangeDetection:A=!1,scheduleInRootZone:g=Sa}=c;if(typeof Zone>"u")throw new Jt(908,!1);Zone.assertZonePatched();const x=this;x._nesting=0,x._outer=x._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(x._inner=x._inner.fork(new Zone.TaskTrackingZoneSpec)),d&&Zone.longStackTraceZoneSpec&&(x._inner=x._inner.fork(Zone.longStackTraceZoneSpec)),x.shouldCoalesceEventChangeDetection=!A&&h,x.shouldCoalesceRunChangeDetection=A,x.callbackScheduled=!1,x.scheduleInRootZone=g,function dC(a){const c=()=>{!function vy(a){function c(){gy(()=>{a.callbackScheduled=!1,dh(a),a.isCheckStableRunning=!0,Uf(a),a.isCheckStableRunning=!1})}a.isCheckStableRunning||a.callbackScheduled||(a.callbackScheduled=!0,a.scheduleInRootZone?Zone.root.run(()=>{c()}):a._outer.run(()=>{c()}),dh(a))}(a)},d=a_++;a._inner=a._inner.fork({name:"angular",properties:{[Nf]:!0,[Lf]:d,[Lf+d]:!0},onInvokeTask:(h,A,g,x,B,k)=>{if(function YA(a){return xy(a,"__ignore_ng_zone__")}(k))return h.invokeTask(g,x,B,k);try{return yy(a),h.invokeTask(g,x,B,k)}finally{(a.shouldCoalesceEventChangeDetection&&"eventTask"===x.type||a.shouldCoalesceRunChangeDetection)&&c(),wy(a)}},onInvoke:(h,A,g,x,B,k,H)=>{try{return yy(a),h.invoke(g,x,B,k,H)}finally{a.shouldCoalesceRunChangeDetection&&!a.callbackScheduled&&!function Qa(a){return xy(a,"__scheduler_tick__")}(k)&&c(),wy(a)}},onHasTask:(h,A,g,x)=>{h.hasTask(g,x),A===g&&("microTask"==x.change?(a._hasPendingMicrotasks=x.microTask,dh(a),Uf(a)):"macroTask"==x.change&&(a.hasPendingMacrotasks=x.macroTask))},onHandleError:(h,A,g,x)=>(h.handleError(g,x),a.runOutsideAngular(()=>a.onError.emit(x)),!1)})}(x)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get(Nf)}static assertInAngularZone(){if(!io.isInAngularZone())throw new Jt(909,!1)}static assertNotInAngularZone(){if(io.isInAngularZone())throw new Jt(909,!1)}run(c,d,h){return this._inner.run(c,d,h)}runTask(c,d,h,A){const g=this._inner,x=g.scheduleEventTask("NgZoneEvent: "+A,c,by,Ad,Ad);try{return g.runTask(x,d,h)}finally{g.cancelTask(x)}}runGuarded(c,d,h){return this._inner.runGuarded(c,d,h)}runOutsideAngular(c){return this._outer.run(c)}}const by={};function Uf(a){if(0==a._nesting&&!a.hasPendingMicrotasks&&!a.isStable)try{a._nesting++,a.onMicrotaskEmpty.emit(null)}finally{if(a._nesting--,!a.hasPendingMicrotasks)try{a.runOutsideAngular(()=>a.onStable.emit(null))}finally{a.isStable=!0}}}function dh(a){a.hasPendingMicrotasks=!!(a._hasPendingMicrotasks||(a.shouldCoalesceEventChangeDetection||a.shouldCoalesceRunChangeDetection)&&!0===a.callbackScheduled)}function yy(a){a._nesting++,a.isStable&&(a.isStable=!1,a.onUnstable.emit(null))}function wy(a){a._nesting--,Uf(a)}class KA{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new zl,this.onMicrotaskEmpty=new zl,this.onStable=new zl,this.onError=new zl}run(c,d,h){return c.apply(d,h)}runGuarded(c,d,h){return c.apply(d,h)}runOutsideAngular(c){return c()}runTask(c,d,h,A){return c.apply(d,h)}}function xy(a,c){return!(!Array.isArray(a)||1!==a.length)&&!0===a[0]?.data?.[c]}class Tc{constructor(){this._console=console}handleError(c){const d=this._findOriginalError(c);this._console.error("ERROR",c),d&&this._console.error("ORIGINAL ERROR",d)}_findOriginalError(c){let d=c&&lh(c);for(;d&&lh(d);)d=lh(d);return d||null}}const uC=new Sn("",{providedIn:"root",factory:()=>{const a=On(io),c=On(Tc);return d=>a.runOutsideAngular(()=>c.handleError(d))}});function nT(){return yn(Qr(),Pt())}function yn(a,c){return new Di(oa(a,c))}let Di=(()=>{class a{constructor(d){this.nativeElement=d}static{this.__NG_ELEMENT_ID__=nT}}return a})();function Ic(a){return a instanceof Di?a.nativeElement:a}function c_(){return this._results[Symbol.iterator]()}class md{get changes(){return this._changes??=new zl}constructor(c=!1){this._emitDistinctChangesOnly=c,this.dirty=!0,this._onDirty=void 0,this._results=[],this._changesDetected=!1,this._changes=void 0,this.length=0,this.first=void 0,this.last=void 0;const d=md.prototype;d[Symbol.iterator]||(d[Symbol.iterator]=c_)}get(c){return this._results[c]}map(c){return this._results.map(c)}filter(c){return this._results.filter(c)}find(c){return this._results.find(c)}reduce(c,d){return this._results.reduce(c,d)}forEach(c){this._results.forEach(c)}some(c){return this._results.some(c)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(c,d){this.dirty=!1;const h=function va(a){return a.flat(Number.POSITIVE_INFINITY)}(c);(this._changesDetected=!function Xu(a,c,d){if(a.length!==c.length)return!1;for(let h=0;hd_}),d_="ng",iT=new Sn(""),Ey=new Sn("",{providedIn:"platform",factory:()=>"unknown"}),PV=new Sn(""),s4=new Sn("",{providedIn:"root",factory:()=>hh().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});let c4=()=>null;function Dy(a,c,d=!1){return c4(a,c,d)}const A4=new Sn("",{providedIn:"root",factory:()=>!1});let bC,yC;function fh(a){return function vC(){if(void 0===bC&&(bC=null,Ji.trustedTypes))try{bC=Ji.trustedTypes.createPolicy("angular",{createHTML:a=>a,createScript:a=>a,createScriptURL:a=>a})}catch{}return bC}()?.createHTML(a)||a}function v4(a){return function uT(){if(void 0===yC&&(yC=null,Ji.trustedTypes))try{yC=Ji.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:a=>a,createScript:a=>a,createScriptURL:a=>a})}catch{}return yC}()?.createHTML(a)||a}class x4{constructor(c){this.changingThisBreaksApplicationSecurity=c}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${Ii})`}}function ph(a){return a instanceof x4?a.changingThisBreaksApplicationSecurity:a}function ky(a,c){const d=function QV(a){return a instanceof x4&&a.getTypeName()||null}(a);if(null!=d&&d!==c){if("ResourceURL"===d&&"URL"===c)return!0;throw new Error(`Required a safe ${c}, got a ${d} (see ${Ii})`)}return d===c}class A_{constructor(c){this.inertDocumentHelper=c}getInertBodyElement(c){c=""+c;try{const d=(new window.DOMParser).parseFromString(fh(c),"text/html").body;return null===d?this.inertDocumentHelper.getInertBodyElement(c):(d.firstChild?.remove(),d)}catch{return null}}}class C4{constructor(c){this.defaultDoc=c,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(c){const d=this.inertDocument.createElement("template");return d.innerHTML=fh(c),d}}const zV=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function xC(a){return(a=String(a)).match(zV)?a:"unsafe:"+a}function Ah(a){const c={};for(const d of a.split(","))c[d]=!0;return c}function Ry(...a){const c={};for(const d of a)for(const h in d)d.hasOwnProperty(h)&&(c[h]=!0);return c}const M4=Ah("area,br,col,hr,img,wbr"),m_=Ah("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),E4=Ah("rp,rt"),mh=Ry(M4,Ry(m_,Ah("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),Ry(E4,Ah("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),Ry(E4,m_)),fT=Ah("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),T4=Ry(fT,Ah("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),Ah("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),jV=Ah("script,style,template");class I4{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(c){let d=c.firstChild,h=!0,A=[];for(;d;)if(d.nodeType===Node.ELEMENT_NODE?h=this.startElement(d):d.nodeType===Node.TEXT_NODE?this.chars(d.nodeValue):this.sanitizedSomething=!0,h&&d.firstChild)A.push(d),d=F4(d);else for(;d;){d.nodeType===Node.ELEMENT_NODE&&this.endElement(d);let g=$f(d);if(g){d=g;break}d=A.pop()}return this.buf.join("")}startElement(c){const d=pT(c).toLowerCase();if(!mh.hasOwnProperty(d))return this.sanitizedSomething=!0,!jV.hasOwnProperty(d);this.buf.push("<"),this.buf.push(d);const h=c.attributes;for(let A=0;A"),!0}endElement(c){const d=pT(c).toLowerCase();mh.hasOwnProperty(d)&&!M4.hasOwnProperty(d)&&(this.buf.push(""))}chars(c){this.buf.push(lm(c))}}function $f(a){const c=a.nextSibling;if(c&&a!==c.previousSibling)throw AT(c);return c}function F4(a){const c=a.firstChild;if(c&&function $V(a,c){return(a.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}(a,c))throw AT(c);return c}function pT(a){const c=a.nodeName;return"string"==typeof c?c:"FORM"}function AT(a){return new Error(`Failed to sanitize html because the element is clobbered: ${a.outerHTML}`)}const qV=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,WV=/([^\#-~ |!])/g;function lm(a){return a.replace(/&/g,"&").replace(qV,function(c){return"&#"+(1024*(c.charCodeAt(0)-55296)+(c.charCodeAt(1)-56320)+65536)+";"}).replace(WV,function(c){return"&#"+c.charCodeAt(0)+";"}).replace(//g,">")}let vd;function CC(a){return"content"in a&&function B4(a){return a.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===a.nodeName}(a)?a.content:null}var cm=function(a){return a[a.NONE=0]="NONE",a[a.HTML=1]="HTML",a[a.STYLE=2]="STYLE",a[a.SCRIPT=3]="SCRIPT",a[a.URL=4]="URL",a[a.RESOURCE_URL=5]="RESOURCE_URL",a}(cm||{});function dm(a){const c=Py();return c?v4(c.sanitize(cm.HTML,a)||""):ky(a,"HTML")?v4(ph(a)):function D4(a,c){let d=null;try{vd=vd||function am(a){const c=new C4(a);return function wC(){try{return!!(new window.DOMParser).parseFromString(fh(""),"text/html")}catch{return!1}}()?new A_(c):c}(a);let h=c?String(c):"";d=vd.getInertBodyElement(h);let A=5,g=h;do{if(0===A)throw new Error("Failed to sanitize html because the input is unstable");A--,h=g,g=d.innerHTML,d=vd.getInertBodyElement(h)}while(h!==g);return fh((new I4).sanitizeChildren(CC(d)||d))}finally{if(d){const h=CC(d)||d;for(;h.firstChild;)h.firstChild.remove()}}}(hh(),yi(a))}function qf(a){const c=Py();return c?c.sanitize(cm.URL,a)||"":ky(a,"URL")?ph(a):xC(yi(a))}function Py(){const a=Pt();return a&&a[La].sanitizer}const JV=/^>|^->||--!>|)/g,tH="\u200b$1\u200b";function U4(a){return a.ownerDocument.defaultView}function V4(a){return a.ownerDocument}function Xl(a){return"browser"===(a??On(fs)).get(Ey)}var SC=function(a){return a[a.Important=1]="Important",a[a.DashCase=2]="DashCase",a}(SC||{});let _T;function bT(a,c){return _T(a,c)}function v_(a,c,d,h,A){if(null!=h){let g,x=!1;Rs(h)?g=h:us(h)&&(x=!0,h=h[to]);const B=cr(h);0===a&&null!==d?null==A?W4(c,d,B):hm(c,d,B,A||null,!0):1===a&&null!==d?hm(c,d,B,A||null,!0):2===a?function Ny(a,c,d){a.removeChild(null,c,d)}(c,B,x):3===a&&c.destroyNode(B),null!=g&&function bH(a,c,d,h,A){const g=d[Bl];g!==cr(d)&&v_(c,a,h,g,A);for(let B=Ho;Bc.replace(eH,tH))}(c))}function TC(a,c,d){return a.createElement(c,d)}function j4(a,c){c[La].changeDetectionScheduler?.notify(9),DC(a,c,c[Oi],2,null,null)}function $4(a,c){const d=a[Ju],h=c[$o];(us(h)||c[go]!==h[$o][go])&&(a[xi]|=B0.HasTransplantedViews),null===d?a[Ju]=[c]:d.push(c)}function wT(a,c){const d=a[Ju],h=d.indexOf(c);d.splice(h,1)}function Oy(a,c){if(a.length<=Ho)return;const d=Ho+c,h=a[d];if(h){const A=h[xc];null!==A&&A!==a&&wT(A,h),c>0&&(a[d-1][ll]=h[ll]);const g=df(a,Ho+c);!function uH(a,c){j4(a,c),c[to]=null,c[xs]=null}(h[en],h);const x=g[cl];null!==x&&x.detachView(g[en]),h[$o]=null,h[ll]=null,h[xi]&=-129}return h}function IC(a,c){if(!(256&c[xi])){const d=c[Oi];d.destroyNode&&DC(a,c,d,3,null,null),function fH(a){let c=a[Qd];if(!c)return xT(a[en],a);for(;c;){let d=null;if(us(c))d=c[Qd];else{const h=c[Ho];h&&(d=h)}if(!d){for(;c&&!c[ll]&&c!==a;)us(c)&&xT(c[en],c),c=c[$o];null===c&&(c=a),us(c)&&xT(c[en],c),d=c&&c[ll]}c=d}}(c)}}function xT(a,c){if(256&c[xi])return;const d=L(null);try{c[xi]&=-129,c[xi]|=256,c[Ua]&&Je(c[Ua]),function mH(a,c){let d;if(null!=a&&null!=(d=a.destroyHooks))for(let h=0;h=0?h[x]():h[-x].unsubscribe(),g+=2}else d[g].call(h[d[g+1]]);null!==h&&(c[Zu]=null);const A=c[od];if(null!==A){c[od]=null;for(let g=0;g-1){const{encapsulation:g}=a.data[h.directiveStart+A];if(g===vc.None||g===vc.Emulated)return null}return oa(h,d)}}(a,c.parent,d)}function hm(a,c,d,h,A){a.insertBefore(c,d,h,A)}function W4(a,c,d){a.appendChild(c,d)}function X4(a,c,d,h,A){null!==h?hm(a,c,d,h,A):W4(a,c,d)}function MT(a,c){return a.parentNode(c)}function K4(a,c,d){return Z4(a,c,d)}let ET,Z4=function Y4(a,c,d){return 40&a.type?oa(a,d):null};function FC(a,c,d,h){const A=CT(a,h,c),g=c[Oi],B=K4(h.parent||c[xs],h,c);if(null!=A)if(Array.isArray(d))for(let k=0;khi&&sO(a,c,hi,!1),Rl(x?2:0,A),d(h,A)}finally{ad(g),Rl(x?3:1,A)}}function PC(a,c,d){if(k0(c)){const h=L(null);try{const g=c.directiveEnd;for(let x=c.directiveStart;xnull;function y_(a,c,d,h,A){for(let g in c){if(!c.hasOwnProperty(g))continue;const x=c[g];if(void 0===x)continue;h??={};let B,k=Zc.None;Array.isArray(x)?(B=x[0],k=x[1]):B=x;let H=g;if(null!==A){if(!A.hasOwnProperty(g))continue;H=A[g]}0===a?LC(h,d,H,B,k):LC(h,d,H,B)}return h}function LC(a,c,d,h,A){let g;a.hasOwnProperty(d)?(g=a[d]).push(c,h):g=a[d]=[c,h],void 0!==A&&g.push(A)}function ps(a,c,d,h,A,g,x,B){const k=oa(c,d);let K,H=c.inputs;!B&&null!=H&&(K=H[h])?(S_(a,d,K,h,A),eh(c)&&function DT(a,c){const d=$s(c,a);16&d[xi]||(d[xi]|=64)}(d,c.index)):3&c.type&&(h=function fO(a){return"class"===a?"className":"for"===a?"htmlFor":"formaction"===a?"formAction":"innerHtml"===a?"innerHTML":"readonly"===a?"readOnly":"tabindex"===a?"tabIndex":a}(h),A=null!=x?x(A,c.value||"",h):A,g.setProperty(k,h,A))}function kT(a,c,d,h){if(MA()){const A=null===h?null:{"":-1},g=function gO(a,c){const d=a.directiveRegistry;let h=null,A=null;if(d)for(let g=0;g0;){const d=a[--c];if("number"==typeof d&&d<0)return d}return 0})(x)!=B&&x.push(B),x.push(d,h,g)}}(a,c,h,Xf(a,d,A.hostVars,ir),A)}function iu(a,c,d,h,A,g){const x=oa(a,c);!function w_(a,c,d,h,A,g,x){if(null==g)a.removeAttribute(c,A,d);else{const B=null==x?yi(g):x(g,h||"",A);a.setAttribute(c,A,B,d)}}(c[Oi],x,g,a.value,d,h,A)}function x_(a,c,d,h,A,g){const x=g[c];if(null!==x)for(let B=0;B0&&(d[A-1][ll]=c),h{z0(a.lView)},consumerOnSignalRead(){this.lView[Ua]=this}},xO={...z,consumerIsAlwaysLive:!0,consumerMarkedDirty:a=>{let c=Cc(a.lView);for(;c&&!QT(c[en]);)c=Cc(c);c&&$v(c)},consumerOnSignalRead(){this.lView[Ua]=this}};function QT(a){return 2!==a.type}const CO=100;function Gy(a,c=!0,d=0){const h=a[La],A=h.rendererFactory;A.begin?.();try{!function MO(a,c){const d=Zv();try{Z0(!0),jy(a,c);let h=0;for(;Q0(a);){if(h===CO)throw new Jt(103,!1);h++,jy(a,1)}}finally{Z0(d)}}(a,d)}catch(x){throw c&&Kf(a,x),x}finally{A.end?.(),h.inlineEffectRunner?.flush()}}function GT(a,c,d,h){const A=c[xi];if(!(256&~A))return;c[La].inlineEffectRunner?.flush(),Tf(c);let B=!0,k=null,H=null;QT(a)?(H=function yO(a){return a[Ua]??function SH(a){const c=HT.pop()??Object.create(zC);return c.lView=a,c}(a)}(c),k=Be(H)):null===Y()?(B=!1,H=function wO(a){const c=a[Ua]??Object.create(xO);return c.lView=a,c}(c),k=Be(H)):c[Ua]&&(Je(c[Ua]),c[Ua]=null);try{jv(c),function IA(a){return Ni.lFrame.bindingIndex=a}(a.bindingStartIndex),null!==d&&RC(a,c,d,2,h);const K=!(3&~A);if(K){const je=a.preOrderCheckHooks;null!==je&&bn(c,je,null)}else{const je=a.preOrderHooks;null!==je&&Vn(c,je,0,null),oy(c,0)}if(function EO(a){for(let c=Hn(a);null!==c;c=gr(c)){if(!(c[xi]&B0.HasTransplantedViews))continue;const d=c[Ju];for(let h=0;h-1&&(Oy(c,h),df(d,h))}this._attachedToViewContainer=!1}IC(this._lView[en],this._lView)}onDestroy(c){xA(this._lView,c)}markForCheck(){$y(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[xi]&=-129}reattach(){qv(this._lView),this._lView[xi]|=128}detectChanges(){this._lView[xi]|=1024,Gy(this._lView,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new Jt(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;const c=bA(this._lView),d=this._lView[xc];null!==d&&!c&&wT(d,this._lView),j4(this._lView[en],this._lView)}attachToAppRef(c){if(this._attachedToViewContainer)throw new Jt(902,!1);this._appRef=c;const d=bA(this._lView),h=this._lView[xc];null!==h&&!d&&$4(h,this._lView),qv(this._lView)}}let Wy=(()=>{class a{static{this.__NG_ELEMENT_ID__=DH}}return a})();const IH=Wy,FH=class extends IH{constructor(c,d,h){super(),this._declarationLView=c,this._declarationTContainer=d,this.elementRef=h}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(c,d){return this.createEmbeddedViewImpl(c,d)}createEmbeddedViewImpl(c,d,h){const A=Yf(this._declarationLView,this._declarationTContainer,c,{embeddedViewInjector:d,dehydratedView:h});return new qy(A)}};function DH(){return _m(Qr(),Pt())}function _m(a,c){return 4&a.type?new FH(c,a,yn(a,c)):null}let GO=()=>null;function Em(a,c){return GO(a,c)}class au{}const Jy=new Sn("",{providedIn:"root",factory:()=>!1}),jO=new Sn(""),nM=new Sn("");class $O{}class pI{}class WO{resolveComponentFactory(c){throw function YH(a){const c=Error(`No component factory found for ${Et(a)}.`);return c.ngComponent=a,c}(c)}}class e1{static{this.NULL=new WO}}class AI{}let JH=(()=>{class a{constructor(){this.destroyNode=null}static{this.__NG_ELEMENT_ID__=()=>function e9(){const a=Pt(),d=$s(Qr().index,a);return(us(d)?d:a)[Oi]}()}}return a})(),mI=(()=>{class a{static{this.\u0275prov=En({token:a,providedIn:"root",factory:()=>null})}}return a})();function R_(a,c,d){let h=d?a.styles:null,A=d?a.classes:null,g=0;if(null!==c)for(let x=0;x0&&iO(a,d,g.join(" "))}}(Re,Or,ot,h),void 0!==d&&function r9(a,c,d){const h=a.projection=[];for(let A=0;A{class a{static{this.__NG_ELEMENT_ID__=yd}}return a})();function yd(){return oM(Qr(),Pt())}const JO=t1,xI=class extends JO{constructor(c,d,h){super(),this._lContainer=c,this._hostTNode=d,this._hostLView=h}get element(){return yn(this._hostTNode,this._hostLView)}get injector(){return new Vi(this._hostTNode,this._hostLView)}get parentInjector(){const c=ud(this._hostTNode,this._hostLView);if(Rf(c)){const d=Xd(c,this._hostLView),h=cd(c);return new Vi(d[en].data[h+8],d)}return new Vi(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(c){const d=eN(this._lContainer);return null!==d&&d[c]||null}get length(){return this._lContainer.length-Ho}createEmbeddedView(c,d,h){let A,g;"number"==typeof h?A=h:null!=h&&(A=h.index,g=h.injector);const x=Em(this._lContainer,c.ssrId),B=c.createEmbeddedViewImpl(d||{},g,x);return this.insertImpl(B,A,ou(this._hostTNode,x)),B}createComponent(c,d,h,A,g){const x=c&&!function rd(a){return"function"==typeof a}(c);let B;if(x)B=d;else{const ot=d||{};B=ot.index,h=ot.injector,A=ot.projectableNodes,g=ot.environmentInjector||ot.ngModuleRef}const k=x?c:new ml($i(c)),H=h||this.parentInjector;if(!g&&null==k.ngModule){const Vt=(x?H:this.parentInjector).get(al,null);Vt&&(g=Vt)}const K=$i(k.componentType??{}),ae=Em(this._lContainer,K?.id??null),je=k.create(H,A,ae?.firstChild??null,g);return this.insertImpl(je.hostView,B,ou(this._hostTNode,ae)),je}insert(c,d){return this.insertImpl(c,d,!0)}insertImpl(c,d,h){const A=c._lView;if(function Cf(a){return Rs(a[$o])}(A)){const B=this.indexOf(c);if(-1!==B)this.detach(B);else{const k=A[$o],H=new xI(k,k[xs],k[$o]);H.detach(H.indexOf(c))}}const g=this._adjustIndex(d),x=this._lContainer;return mm(x,A,g,h),c.attachToViewContainerRef(),Rx(n1(x),g,c),c}move(c,d){return this.insert(c,d)}indexOf(c){const d=eN(this._lContainer);return null!==d?d.indexOf(c):-1}remove(c){const d=this._adjustIndex(c,-1),h=Oy(this._lContainer,d);h&&(df(n1(this._lContainer),d),IC(h[en],h))}detach(c){const d=this._adjustIndex(c,-1),h=Oy(this._lContainer,d);return h&&null!=df(n1(this._lContainer),d)?new qy(h):null}_adjustIndex(c,d=0){return c??this.length+d}};function eN(a){return a[8]}function n1(a){return a[8]||(a[8]=[])}function oM(a,c){let d;const h=c[a.index];return Rs(h)?d=h:(d=C_(h,c,null,a),c[a.index]=d,M_(c,d)),r1(d,c,a,h),new xI(d,a,c)}let r1=function CI(a,c,d,h){if(a[Bl])return;let A;A=8&d.type?cr(h):function sM(a,c){const d=a[Oi],h=d.createComment(""),A=oa(c,a);return hm(d,MT(d,A),h,function gH(a,c){return a.nextSibling(c)}(d,A),!1),h}(c,d),a[Bl]=A},o1=()=>!1;class aM{constructor(c){this.queryList=c,this.matches=null}clone(){return new aM(this.queryList)}setDirty(){this.queryList.setDirty()}}class EI{constructor(c=[]){this.queries=c}createEmbeddedView(c){const d=c.queries;if(null!==d){const h=null!==c.contentQueries?c.contentQueries[0]:d.length,A=[];for(let g=0;gc.trim())}(c):c}}class SI{constructor(c=[]){this.queries=c}elementStart(c,d){for(let h=0;h0)h.push(x[B/2]);else{const H=g[B+1],K=c[-k];for(let ae=Ho;ae(G(c),c.value);return d[U]=c,d}(a),h=d[U];return c?.equal&&(h.equal=c.equal),d.set=A=>Bi(h,A),d.update=A=>function ri(a,c){me()||Nt(),Bi(a,c(a.value))}(h,A),d.asReadonly=dN.bind(d),d}function dN(){const a=this[U];if(void 0===a.readonlyFn){const c=()=>this();c[U]=a,a.readonlyFn=c}return a.readonlyFn}function kI(a){return BI(a)&&"function"==typeof a.set}function lu(a,c){let d;const h=ve(()=>{d._dirtyCounter();const A=function uN(a,c){const d=a._lView,h=a._queryIndex;if(void 0===d||void 0===h||4&d[xi])return c?void 0:Tr;const A=lM(d,h),g=aN(d,h);return A.reset(g,Ic),c?A.first:A._changesDetected||void 0===a._flatValue?a._flatValue=A.toArray():a._flatValue}(d,a);if(c&&void 0===A)throw new Jt(-951,!1);return A});return d=h[U],d._dirtyCounter=cN(0),d._flatValue=void 0,h}function O_(a,c){return function RI(){return lu(!0,!1)}()}const pN=(O_.required=function fN(a,c){return function PI(){return lu(!0,!0)}()},O_);function $I(a){let c=function uM(a){return Object.getPrototypeOf(a.prototype).constructor}(a.type),d=!0;const h=[a];for(;c;){let A;if(kl(a))A=c.\u0275cmp||c.\u0275dir;else{if(c.\u0275cmp)throw new Jt(903,!1);A=c.\u0275dir}if(A){if(d){h.push(A);const x=a;x.inputs=a1(a.inputs),x.inputTransforms=a1(a.inputTransforms),x.declaredInputs=a1(a.declaredInputs),x.outputs=a1(a.outputs);const B=A.hostBindings;B&&CN(a,B);const k=A.viewQuery,H=A.contentQueries;if(k&&qI(a,k),H&&WI(a,H),w9(a,A),rt(a.outputs,A.outputs),kl(A)&&A.data.animation){const K=a.data;K.animation=(K.animation||[]).concat(A.data.animation)}}const g=A.features;if(g)for(let x=0;x=0;h--){const A=a[h];A.hostVars=c+=A.hostVars,A.hostAttrs=dA(A.hostAttrs,d=dA(d,A.hostAttrs))}}(h)}function w9(a,c){for(const d in c.inputs){if(!c.inputs.hasOwnProperty(d)||a.inputs.hasOwnProperty(d))continue;const h=c.inputs[d];if(void 0!==h&&(a.inputs[d]=h,a.declaredInputs[d]=c.declaredInputs[d],null!==c.inputTransforms)){const A=Array.isArray(h)?h[0]:h;if(!c.inputTransforms.hasOwnProperty(A))continue;a.inputTransforms??={},a.inputTransforms[A]=c.inputTransforms[A]}}}function a1(a){return a===Fl?{}:a===Tr?[]:a}function qI(a,c){const d=a.viewQuery;a.viewQuery=d?(h,A)=>{c(h,A),d(h,A)}:c}function WI(a,c){const d=a.contentQueries;a.contentQueries=d?(h,A,g)=>{c(h,A,g),d(h,A,g)}:c}function CN(a,c){const d=a.hostBindings;a.hostBindings=d?(h,A)=>{c(h,A),d(h,A)}:c}function Ro(a){const c=d=>{const h=(Array.isArray(a)?a:a()).map(A=>"function"==typeof A?{directive:Xt(A),inputs:Fl,outputs:Fl}:{directive:Xt(A.directive),inputs:U_(A.inputs),outputs:U_(A.outputs)});null===d.hostDirectives?(d.findHostDirectiveDefs=L_,d.hostDirectives=h):d.hostDirectives.unshift(...h)};return c.ngInherit=!0,c}function L_(a,c,d){if(null!==a.hostDirectives)for(const h of a.hostDirectives){const A=Uo(h.directive);XI(A.declaredInputs,h.inputs),L_(A,c,d),d.set(A,h),c.push(A)}}function U_(a){if(void 0===a||0===a.length)return Fl;const c={};for(let d=0;dd()),this.destroyCbs=null}onDestroy(c){this.destroyCbs.push(c)}}class ZI extends ep{constructor(c){super(),this.componentFactoryResolver=new Im(this),this.instance=null;const d=new id([...c.providers,{provide:ep,useValue:this},{provide:e1,useValue:this.componentFactoryResolver}],c.parent||pf(),c.debugName,new Set(["environment"]));this.injector=d,c.runEnvironmentInitializers&&d.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(c){this.injector.onDestroy(c)}}function H_(a){return!!km(a)&&(Array.isArray(a)||!(a instanceof Map)&&Symbol.iterator in a)}function km(a){return null!==a&&("function"==typeof a||"object"==typeof a)}function Pc(a,c,d){return a[c]=d}function qo(a,c,d){return!Object.is(a[c],d)&&(a[c]=d,!0)}function du(a,c,d,h){const A=qo(a,c,d);return qo(a,c+1,h)||A}function gl(a,c,d,h,A,g){const x=du(a,c,d,h);return du(a,c+2,A,g)||x}function Pm(a,c,d,h,A,g,x,B,k,H){const K=d+hi,ae=c.firstCreatePass?function IN(a,c,d,h,A,g,x,B,k){const H=c.consts,K=Wf(c,a,4,x||null,B||null);kT(c,d,K,Va(H,k)),PA(c,K);const ae=K.tView=IT(2,K,h,A,g,c.directiveRegistry,c.pipeRegistry,null,c.schemas,H,null);return null!==c.queries&&(c.queries.template(c,K),ae.queries=c.queries.embeddedTView(K)),K}(K,c,a,h,A,g,x,B,k):c.data[K];xo(ae,!1);const Re=u1(c,a,ae,d);ih()&&FC(c,a,Re,ae),ge(Re,a);const je=C_(Re,a,Re,ae);return a[K]=je,M_(a,je),function P_(a,c,d){return o1(a,c,d)}(je,ae,a),R0(ae)&&OC(c,a,ae),null!=k&&Am(a,ae,H),ae}function z_(a,c,d,h,A,g,x,B){const k=Pt(),H=ar();return Pm(k,H,a,c,d,h,A,Va(H.consts,g),x,B),z_}let u1=function yh(a,c,d,h){return hl(!0),c[Oi].createComment("")};function rF(a,c){if(null!==Y())throw new Jt(-602,!1)}var Nm=function(a){return a[a.EarlyRead=0]="EarlyRead",a[a.Write=1]="Write",a[a.MixedReadWrite=2]="MixedReadWrite",a[a.Read=3]="Read",a}(Nm||{});let oF=(()=>{class a{constructor(){this.impl=null}execute(){this.impl?.execute()}static{this.\u0275prov=En({token:a,providedIn:"root",factory:()=>new a})}}return a})();class Lm{constructor(){this.ngZone=On(io),this.scheduler=On(au),this.errorHandler=On(Tc,{optional:!0}),this.sequences=new Set,this.deferredRegistrations=new Set,this.executing=!1}static{this.PHASES=[Nm.EarlyRead,Nm.Write,Nm.MixedReadWrite,Nm.Read]}execute(){this.executing=!0;for(const c of Lm.PHASES)for(const d of this.sequences)if(!d.erroredOrDestroyed&&d.hooks[c])try{d.pipelinedValue=this.ngZone.runOutsideAngular(()=>d.hooks[c](d.pipelinedValue))}catch(h){d.erroredOrDestroyed=!0,this.errorHandler?.handleError(h)}this.executing=!1;for(const c of this.sequences)c.afterRun(),c.once&&(this.sequences.delete(c),c.destroy());for(const c of this.deferredRegistrations)this.sequences.add(c);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear()}register(c){this.executing?this.deferredRegistrations.add(c):(this.sequences.add(c),this.scheduler.notify(6))}unregister(c){this.executing&&this.sequences.has(c)?(c.erroredOrDestroyed=!0,c.pipelinedValue=void 0,c.once=!0):(this.sequences.delete(c),this.deferredRegistrations.delete(c))}static{this.\u0275prov=En({token:Lm,providedIn:"root",factory:()=>new Lm})}}class mr{constructor(c,d,h,A){this.impl=c,this.hooks=d,this.once=h,this.erroredOrDestroyed=!1,this.pipelinedValue=void 0,this.unregisterOnDestroy=A?.onDestroy(()=>this.destroy())}afterRun(){this.erroredOrDestroyed=!1,this.pipelinedValue=void 0}destroy(){this.impl.unregister(this),this.unregisterOnDestroy?.()}}function fM(a,c){!c?.injector&&mf();const d=c?.injector??On(fs);return Xl(d)?(Ia("NgAfterRender"),sF(a,d,c,!1)):pM}function fu(a,c){!c?.injector&&mf();const d=c?.injector??On(fs);return Xl(d)?(Ia("NgAfterNextRender"),sF(a,d,c,!0)):pM}function sF(a,c,d,h){const A=c.get(oF);A.impl??=c.get(Lm);const g=d?.phase??Nm.MixedReadWrite,x=!0!==d?.manualCleanup?c.get(ch):null,B=new mr(A.impl,function kN(a,c){if(a instanceof Function){const d=[void 0,void 0,void 0,void 0];return d[c]=a,d}return[a.earlyRead,a.write,a.mixedReadWrite,a.read]}(a,g),h,x);return A.impl.register(B),B}const pM={destroy(){}};function FM(a,c,d,h){const A=Pt();return qo(A,dl(),c)&&(ar(),iu(kr(),A,a,c,d,h)),FM}function Gm(a,c,d,h){return qo(a,dl(),d)?c+yi(d)+h:ir}function cp(a,c,d,h,A,g){const B=du(a,Nl(),d,A);return Rr(2),B?c+yi(d)+h+yi(A)+g:ir}function DM(a,c){return a<<17|c<<2}function Fo(a){return a>>17&32767}function BM(a){return 2|a}function Au(a){return(131068&a)>>2}function kM(a,c){return-131069&a|c<<2}function RM(a){return 1|a}function PM(a,c,d,h){const A=a[d+1],g=null===c;let x=h?Fo(A):Au(A),B=!1;for(;0!==x&&(!1===B||g);){const H=a[x+1];Ys(a[x],c)&&(B=!0,a[x+1]=h?RM(H):BM(H)),x=h?Fo(H):Au(H)}B&&(a[d+1]=h?BM(A):RM(A))}function Ys(a,c){return null===a||null==c||(Array.isArray(a)?a[1]:a)===c||!(!Array.isArray(a)||"string"!=typeof c)&&uf(a,c)>=0}const As={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Nc(a){return a.substring(As.key,As.keyEnd)}function zN(a){return a.substring(As.value,As.valueEnd)}function SF(a,c){const d=As.textEnd;return d===c?-1:(c=As.keyEnd=function jN(a,c,d){for(;c32;)c++;return c}(a,As.key=c,d),Ym(a,c,d))}function Y_(a,c){const d=As.textEnd;let h=As.key=Ym(a,c,d);return d===h?-1:(h=As.keyEnd=function $N(a,c,d){let h;for(;c=65&&(-33&h)<=90||h>=48&&h<=57);)c++;return c}(a,h,d),h=Z_(a,h,d),h=As.value=Ym(a,h,d),h=As.valueEnd=function qN(a,c,d){let h=-1,A=-1,g=-1,x=c,B=x;for(;x32&&(B=x),g=A,A=h,h=-33&k}return B}(a,h,d),Z_(a,h,d))}function TF(a){As.key=0,As.keyEnd=0,As.value=0,As.valueEnd=0,As.textEnd=a.length}function Ym(a,c,d){for(;c=0;d=Y_(c,d))la(a,Nc(c),zN(c))}function BF(a){ms(Zm,rr,a,!0)}function rr(a,c){for(let d=function OM(a){return TF(a),SF(a,Ym(a,0,As.textEnd))}(c);d>=0;d=SF(c,d))ya(a,Nc(c),!0)}function Us(a,c,d,h){const A=Pt(),g=ar(),x=Rr(2);g.firstUpdatePass&&pp(g,a,x,h),c!==ir&&qo(A,x,c)&&mp(g,g.data[Xn()],A,A[Oi],a,A[x+1]=function PF(a,c){return null==a||""===a||("string"==typeof c?a+=c:"object"==typeof a&&(a=Et(ph(a)))),a}(c,d),h,x)}function ms(a,c,d,h){const A=ar(),g=Rr(2);A.firstUpdatePass&&pp(A,null,g,h);const x=Pt();if(d!==ir&&qo(x,g,d)){const B=A.data[Xn()];if(mu(B,h)&&!kF(A,g)){let k=h?B.classesWithoutHost:B.stylesWithoutHost;null!==k&&(d=ln(k,d||"")),DF(A,B,x,d,h)}else!function Ap(a,c,d,h,A,g,x,B){A===ir&&(A=Tr);let k=0,H=0,K=0=a.expandoStartIndex}function pp(a,c,d,h){const A=a.data;if(null===A[d+1]){const g=A[Xn()],x=kF(a,d);mu(g,h)&&null===c&&!x&&(c=!1),c=function LM(a,c,d,h){const A=function DA(a){const c=Ni.lFrame.currentDirectiveIndex;return-1===c?null:a[c]}(a);let g=h?c.residualClasses:c.residualStyles;if(null===A)0===(h?c.classBindings:c.styleBindings)&&(d=Uc(d=eb(null,a,c,d,h),c.attrs,h),g=null);else{const x=c.directiveStylingLast;if(-1===x||a[x]!==A)if(d=eb(A,a,c,d,h),null===g){let k=function UM(a,c,d){const h=d?c.classBindings:c.styleBindings;if(0!==Au(h))return a[Fo(h)]}(a,c,h);void 0!==k&&Array.isArray(k)&&(k=eb(null,a,c,k[1],h),k=Uc(k,c.attrs,h),function VM(a,c,d,h){a[Fo(d?c.classBindings:c.styleBindings)]=h}(a,c,h,k))}else g=function HM(a,c,d){let h;const A=c.directiveEnd;for(let g=1+c.directiveStylingLast;g0)&&(H=!0)):K=d,A)if(0!==k){const Re=Fo(a[B+1]);a[h+1]=DM(Re,B),0!==Re&&(a[Re+1]=kM(a[Re+1],h)),a[B+1]=function hp(a,c){return 131071&a|c<<17}(a[B+1],h)}else a[h+1]=DM(B,0),0!==B&&(a[B+1]=kM(a[B+1],h)),B=h;else a[h+1]=DM(k,0),0===B?B=h:a[k+1]=kM(a[k+1],h),k=h;H&&(a[h+1]=BM(a[h+1])),PM(a,K,h,!0),PM(a,K,h,!1),function Jl(a,c,d,h,A){const g=A?a.residualClasses:a.residualStyles;null!=g&&"string"==typeof c&&uf(g,c)>=0&&(d[h+1]=RM(d[h+1]))}(c,K,a,h,g),x=DM(B,k),g?c.classBindings=x:c.styleBindings=x}(A,g,c,d,x,h)}}function eb(a,c,d,h,A){let g=null;const x=d.directiveEnd;let B=d.directiveStylingLast;for(-1===B?B=d.directiveStart:B++;B0;){const k=a[A],H=Array.isArray(k),K=H?k[1]:k,ae=null===K;let Re=d[A+1];Re===ir&&(Re=ae?Tr:void 0);let je=ae?x0(Re,h):K===h?Re:void 0;if(H&&!xd(je)&&(je=x0(k,h)),xd(je)&&(B=je,x))return B;const ot=a[A+1];A=x?Fo(ot):Au(ot)}if(null!==c){let k=g?c.residualClasses:c.residualStyles;null!=k&&(B=x0(k,h))}return B}function xd(a){return void 0!==a}function mu(a,c){return!!(a.flags&(c?8:16))}function OF(a,c,d){ms(ya,rr,Gm(Pt(),a,c,d),!0)}function XN(a,c,d,h,A){ms(ya,rr,cp(Pt(),a,c,d,h,A),!0)}function gp(){return Pt()[go][no]}class LF{destroy(c){}updateValue(c,d){}swap(c,d){const h=Math.min(c,d),A=Math.max(c,d),g=this.detach(A);if(A-h>1){const x=this.detach(h);this.attach(h,g),this.attach(A,x)}else this.attach(h,g)}move(c,d){this.attach(d,this.detach(c))}}function ib(a,c,d,h,A){return a===d&&Object.is(c,h)?1:Object.is(A(a,c),A(d,h))?-1:0}function zM(a,c,d,h){return!(void 0===c||!c.has(h)||(a.attach(d,c.get(h)),c.delete(h),0))}function Vc(a,c,d,h,A){if(zM(a,c,h,d(h,A)))a.updateValue(h,A);else{const g=a.create(h,A);a.attach(h,g)}}function Jm(a,c,d,h){const A=new Set;for(let g=c;g<=d;g++)A.add(h(g,a.at(g)));return A}class UF{constructor(){this.kvMap=new Map,this._vMap=void 0}has(c){return this.kvMap.has(c)}delete(c){if(!this.has(c))return!1;const d=this.kvMap.get(c);return void 0!==this._vMap&&this._vMap.has(d)?(this.kvMap.set(c,this._vMap.get(d)),this._vMap.delete(d)):this.kvMap.delete(c),!0}get(c){return this.kvMap.get(c)}set(c,d){if(this.kvMap.has(c)){let h=this.kvMap.get(c);void 0===this._vMap&&(this._vMap=new Map);const A=this._vMap;for(;A.has(h);)h=A.get(h);A.set(h,d)}else this.kvMap.set(c,d)}forEach(c){for(let[d,h]of this.kvMap)if(c(h,d),void 0!==this._vMap){const A=this._vMap;for(;A.has(h);)h=A.get(h),c(h,d)}}}function VF(a,c){Ia("NgControlFlow");const d=Pt(),h=dl(),A=d[h]!==ir?d[h]:-1,g=-1!==A?w1(d,hi+A):void 0;if(qo(d,h,a)){const B=L(null);try{if(void 0!==g&&zy(g,0),-1!==a){const k=hi+a,H=w1(d,k),K=qM(d[en],k),ae=Em(H,K.tView.ssrId);mm(H,Yf(d,K,c,{dehydratedView:ae}),0,ou(K,ae))}}finally{L(B)}}else if(void 0!==g){const B=VT(g,0);void 0!==B&&(B[no]=c)}}class ob{constructor(c,d,h){this.lContainer=c,this.$implicit=d,this.$index=h}get $count(){return this.lContainer.length-Ho}}function GM(a){return a}function jM(a,c){return c}class YN{constructor(c,d,h){this.hasEmptyBlock=c,this.trackByFn=d,this.liveCollection=h}}function $M(a,c,d,h,A,g,x,B,k,H,K,ae,Re){Ia("NgControlFlow");const je=Pt(),ot=ar(),Vt=void 0!==k,an=Pt(),gn=B?x.bind(an[go][no]):x,Lt=new YN(Vt,gn);an[hi+a]=Lt,Pm(je,ot,a+1,c,d,h,A,Va(ot.consts,g)),Vt&&Pm(je,ot,a+2,k,H,K,ae,Va(ot.consts,Re))}class ZN extends LF{constructor(c,d,h){super(),this.lContainer=c,this.hostLView=d,this.templateTNode=h,this.operationsCounter=void 0,this.needsIndexUpdate=!1}get length(){return this.lContainer.length-Ho}at(c){return this.getLView(c)[no].$implicit}attach(c,d){const h=d[Gs];this.needsIndexUpdate||=c!==this.length,mm(this.lContainer,d,c,ou(this.templateTNode,h))}detach(c){return this.needsIndexUpdate||=c!==this.length-1,function JN(a,c){return Oy(a,c)}(this.lContainer,c)}create(c,d){const h=Em(this.lContainer,this.templateTNode.tView.ssrId),A=Yf(this.hostLView,this.templateTNode,new ob(this.lContainer,d,c),{dehydratedView:h});return this.operationsCounter?.recordCreate(),A}destroy(c){IC(c[en],c),this.operationsCounter?.recordDestroy()}updateValue(c,d){this.getLView(c)[no].$implicit=d}reset(){this.needsIndexUpdate=!1,this.operationsCounter?.reset()}updateIndexes(){if(this.needsIndexUpdate)for(let c=0;c{a.destroy(k)})}(k,a,g.trackByFn),k.updateIndexes(),g.hasEmptyBlock){const H=dl(),K=0===k.length;if(qo(h,H,K)){const ae=d+2,Re=w1(h,ae);if(K){const je=qM(A,ae),ot=Em(Re,je.tView.ssrId);mm(Re,Yf(h,je,void 0,{dehydratedView:ot}),0,ou(je,ot))}else zy(Re,0)}}}finally{L(c)}}function w1(a,c){return a[c]}function qM(a,c){return Ir(a,c)}function x1(a,c,d,h){const A=Pt(),g=ar(),x=hi+a,B=A[Oi],k=g.firstCreatePass?function tL(a,c,d,h,A,g){const x=c.consts,k=Wf(c,a,2,h,Va(x,A));return kT(c,d,k,Va(x,g)),null!==k.attrs&&R_(k,k.attrs,!1),null!==k.mergedAttrs&&R_(k,k.mergedAttrs,!0),null!==c.queries&&c.queries.elementStart(c,k),k}(x,g,A,c,d,h):g.data[x],H=QF(g,A,k,B,c,a);A[x]=H;const K=R0(k);return xo(k,!0),rO(B,H,k),!function Rm(a){return!(32&~a.flags)}(k)&&ih()&&FC(g,A,H,k),0===function eC(){return Ni.lFrame.elementDepthCount}()&&ge(H,A),function $0(){Ni.lFrame.elementDepthCount++}(),K&&(OC(g,A,k),PC(g,k,A)),null!==h&&Am(A,k),x1}function C1(){let a=Qr();Yr()?TA():(a=a.parent,xo(a,!1));const c=a;(function Wv(a){return Ni.skipHydrationRootTNode===a})(c)&&function Kv(){Ni.skipHydrationRootTNode=null}(),function Ol(){Ni.lFrame.elementDepthCount--}();const d=ar();return d.firstCreatePass&&(PA(d,a),k0(a)&&d.queries.elementEnd(a)),null!=c.classesWithoutHost&&function rC(a){return!!(8&a.flags)}(c)&&DF(d,c,Pt(),c.classesWithoutHost,!0),null!=c.stylesWithoutHost&&function ly(a){return!!(16&a.flags)}(c)&&DF(d,c,Pt(),c.stylesWithoutHost,!1),C1}function WM(a,c,d,h){return x1(a,c,d,h),C1(),WM}let QF=(a,c,d,h,A,g)=>(hl(!0),TC(h,A,function RA(){return Ni.lFrame.currentNamespace}()));function M1(a,c,d){const h=Pt(),A=ar(),g=a+hi,x=A.firstCreatePass?function iL(a,c,d,h,A){const g=c.consts,x=Va(g,h),B=Wf(c,a,8,"ng-container",x);return null!==x&&R_(B,x,!0),kT(c,d,B,Va(g,A)),null!==c.queries&&c.queries.elementStart(c,B),B}(g,A,h,c,d):A.data[g];xo(x,!0);const B=eg(A,h,x,a);return h[g]=B,ih()&&FC(A,h,B,x),ge(B,h),R0(x)&&(OC(A,h,x),PC(A,x,h)),null!=d&&Am(h,x),M1}function _p(){let a=Qr();const c=ar();return Yr()?TA():(a=a.parent,xo(a,!1)),c.firstCreatePass&&(PA(c,a),k0(a)&&c.queries.elementEnd(a)),_p}function E1(a,c,d){return M1(a,c,d),_p(),E1}let eg=(a,c,d,h)=>(hl(!0),yT(c[Oi],""));function zF(){return Pt()}function XM(a,c,d){const h=Pt();return qo(h,dl(),c)&&ps(ar(),kr(),h,a,c,h[Oi],d,!0),XM}const bp=void 0;var jF=["en",[["a","p"],["AM","PM"],bp],[["AM","PM"],bp,bp],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],bp,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],bp,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",bp,"{1} 'at' {0}",bp],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function GF(a){const d=Math.floor(Math.abs(a)),h=a.toString().replace(/^[^.]*\.?/,"").length;return 1===d&&0===h?1:5}];let ng={};function KM(a){const c=function sL(a){return a.toLowerCase().replace(/_/g,"-")}(a);let d=$F(c);if(d)return d;const h=c.split("-")[0];if(d=$F(h),d)return d;if("en"===h)return jF;throw new Jt(701,!1)}function ab(a){return KM(a)[ig.PluralCase]}function $F(a){return a in ng||(ng[a]=Ji.ng&&Ji.ng.common&&Ji.ng.common.locales&&Ji.ng.common.locales[a]),ng[a]}var ig=function(a){return a[a.LocaleId=0]="LocaleId",a[a.DayPeriodsFormat=1]="DayPeriodsFormat",a[a.DayPeriodsStandalone=2]="DayPeriodsStandalone",a[a.DaysFormat=3]="DaysFormat",a[a.DaysStandalone=4]="DaysStandalone",a[a.MonthsFormat=5]="MonthsFormat",a[a.MonthsStandalone=6]="MonthsStandalone",a[a.Eras=7]="Eras",a[a.FirstDayOfWeek=8]="FirstDayOfWeek",a[a.WeekendRange=9]="WeekendRange",a[a.DateFormat=10]="DateFormat",a[a.TimeFormat=11]="TimeFormat",a[a.DateTimeFormat=12]="DateTimeFormat",a[a.NumberSymbols=13]="NumberSymbols",a[a.NumberFormats=14]="NumberFormats",a[a.CurrencyCode=15]="CurrencyCode",a[a.CurrencySymbol=16]="CurrencySymbol",a[a.CurrencyName=17]="CurrencyName",a[a.Currencies=18]="Currencies",a[a.Directionality=19]="Directionality",a[a.PluralCase=20]="PluralCase",a[a.ExtraData=21]="ExtraData",a}(ig||{});const S1="en-US";let qF=S1,vD=(a,c,d)=>{};function B1(a,c,d,h){const A=Pt(),g=ar(),x=Qr();return k1(g,A,A[Oi],x,a,c,h),B1}function k1(a,c,d,h,A,g,x){const B=R0(h),H=a.firstCreatePass&&bO(a),K=c[no],ae=E_(c);let Re=!0;if(3&h.type||x){const Vt=oa(h,c),an=x?x(Vt):Vt,gn=ae.length,Lt=x?Zt=>x(cr(Zt[h.index])):h.index;let qi=null;if(!x&&B&&(qi=function yD(a,c,d,h){const A=a.cleanup;if(null!=A)for(let g=0;gk?B[k]:null}"string"==typeof x&&(g+=2)}return null}(a,c,A,h.index)),null!==qi)(qi.__ngLastListenerFn__||qi).__ngNextListenerFn__=g,qi.__ngLastListenerFn__=g,Re=!1;else{g=dE(h,c,K,g),vD(Vt,A,g);const Zt=d.listen(an,A,g);ae.push(g,Zt),H&&H.push(A,Lt,gn,gn+1)}}else g=dE(h,c,K,g);const je=h.outputs;let ot;if(Re&&null!==je&&(ot=je[A])){const Vt=ot.length;if(Vt)for(let an=0;an-1?$s(a.index,c):c,5);let B=wD(c,d,h,g),k=A.__ngNextListenerFn__;for(;k;)B=wD(c,d,k,g)&&B,k=k.__ngNextListenerFn__;return B}}function R1(a=1){return function ty(a){return(Ni.lFrame.contextLView=function Jx(a,c){for(;a>0;)c=c[zd],a--;return c}(a,Ni.lFrame.contextLView))[no]}(a)}function wL(a,c){let d=null;const h=function Fv(a){const c=a.attrs;if(null!=c){const d=c.indexOf(5);if(!(1&d))return c[d+1]}return null}(a);for(let A=0;Ad._dirtyCounter.update(h=>h+1))}(c,oN(a,d,h,A))}function LD(a=1){Ll(Sf()+a)}function lg(a){return lr(function K0(){return Ni.lFrame.contextLView}(),hi+a)}function XD(a,c=""){const d=Pt(),h=ar(),A=a+hi,g=h.firstCreatePass?Wf(h,A,1,c,null):h.data[A],x=KD(h,d,g,c,a);d[A]=x,ih()&&FC(h,d,x,g),xo(g,!1)}let KD=(a,c,d,h,A)=>(hl(!0),function vT(a,c){return a.createText(c)}(c[Oi],h));function gE(a){return O1("",a,""),gE}function O1(a,c,d){const h=Pt(),A=Gm(h,a,c,d);return A!==ir&&ru(h,Xn(),A),O1}function _E(a,c,d,h,A){const g=Pt(),x=cp(g,a,c,d,h,A);return x!==ir&&ru(g,Xn(),x),_E}function bE(a,c,d,h,A,g,x,B,k){const H=Pt(),K=function dp(a,c,d,h,A,g,x,B,k,H){const ae=gl(a,Nl(),d,A,x,k);return Rr(4),ae?c+yi(d)+h+yi(A)+g+yi(x)+B+yi(k)+H:ir}(H,a,c,d,h,A,g,x,B,k);return K!==ir&&ru(H,Xn(),K),bE}function L1(a,c,d){kI(c)&&(c=c());const h=Pt();return qo(h,dl(),c)&&ps(ar(),kr(),h,a,c,h[Oi],d,!1),L1}function tB(a,c){const d=kI(a);return d&&a.set(c),d}function U1(a,c){const d=Pt(),h=ar(),A=Qr();return k1(h,d,d[Oi],A,a,c),U1}function H1(a,c,d,h,A){if(a=Xt(a),Array.isArray(a))for(let g=0;g>20;if(nd(a)||!a.multi){const je=new OA(H,A,pm),ot=ec(k,c,A?K:K+Re,ae);-1===ot?(_o(Pf(B,x),g,k),yE(g,a,c.length),c.push(k),B.directiveStart++,B.directiveEnd++,A&&(B.providerIndexes+=1048576),d.push(je),x.push(je)):(d[ot]=je,x[ot]=je)}else{const je=ec(k,c,K+Re,ae),ot=ec(k,c,K,K+Re),an=ot>=0&&d[ot];if(A&&!an||!A&&!(je>=0&&d[je])){_o(Pf(B,x),g,k);const gn=function Eo(a,c,d,h,A){const g=new OA(a,d,pm);return g.multi=[],g.index=c,g.componentProviders=0,cg(g,A,h&&!d),g}(A?Zs:wE,d.length,A,h,H);!A&&an&&(d[ot].providerFactory=gn),yE(g,a,c.length,0),c.push(k),B.directiveStart++,B.directiveEnd++,A&&(B.providerIndexes+=1048576),d.push(gn),x.push(gn)}else yE(g,a,je>-1?je:ot,cg(d[A?ot:je],H,!A&&h));!A&&h&&an&&d[ot].componentProviders++}}}function yE(a,c,d,h){const A=nd(c),g=function Nv(a){return!!a.useClass}(c);if(A||g){const k=(g?Xt(c.useClass):c).prototype.ngOnDestroy;if(k){const H=a.destroyHooks||(a.destroyHooks=[]);if(!A&&c.multi){const K=H.indexOf(d);-1===K?H.push(d,[h,k]):H[K+1].push(h,k)}else H.push(d,k)}}}function cg(a,c,d){return d&&a.componentProviders++,a.multi.push(c)-1}function ec(a,c,d,h){for(let A=d;A{d.providersResolver=(h,A)=>function iB(a,c,d){const h=ar();if(h.firstCreatePass){const A=kl(a);H1(d,h.data,h.blueprint,A,!0),H1(c,h.data,h.blueprint,A,!1)}}(h,A?A(a):a,c)}}let rB=(()=>{class a{constructor(d){this._injector=d,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(d){if(!d.standalone)return null;if(!this.cachedInjectors.has(d)){const h=Pv(0,d.type),A=h.length>0?function JI(a,c,d=null){return new ZI({providers:a,parent:c,debugName:d,runEnvironmentInitializers:!0}).injector}([h],this._injector,`Standalone[${d.type.name}]`):null;this.cachedInjectors.set(d,A)}return this.cachedInjectors.get(d)}ngOnDestroy(){try{for(const d of this.cachedInjectors.values())null!==d&&d.destroy()}finally{this.cachedInjectors.clear()}}static{this.\u0275prov=En({token:a,providedIn:"environment",factory:()=>new a(cs(al))})}}return a})();function Md(a){Ia("NgStandalone"),a.getStandaloneInjector=c=>c.get(rB).getOrCreateStandaloneInjector(a)}function sB(a,c,d){const h=Ps()+a,A=Pt();return A[h]===ir?Pc(A,h,d?c.call(d):c()):function vh(a,c){return a[c]}(A,h)}function aB(a,c,d,h){return G1(Pt(),Ps(),a,c,d,h)}function lB(a,c,d,h,A){return hB(Pt(),Ps(),a,c,d,h,A)}function wp(a,c){const d=a[c];return d===ir?void 0:d}function G1(a,c,d,h,A,g){const x=c+d;return qo(a,x,A)?Pc(a,x+1,g?h.call(g,A):h(A)):wp(a,x+1)}function hB(a,c,d,h,A,g,x){const B=c+d;return du(a,B,A,g)?Pc(a,B+2,x?h.call(x,A,g):h(A,g)):wp(a,B+2)}function _u(a,c){const d=ar();let h;const A=a+hi;d.firstCreatePass?(h=function PL(a,c){if(c)for(let d=c.length-1;d>=0;d--){const h=c[d];if(a===h.name)return h}}(c,d.pipeRegistry),d.data[A]=h,h.onDestroy&&(d.destroyHooks??=[]).push(A,h.onDestroy)):h=d.data[A];const g=h.factory||(h.factory=rl(h.type)),B=Bs(pm);try{const k=dd(!1),H=g();return dd(k),function fE(a,c,d,h){d>=a.data.length&&(a.data[d]=null,a.blueprint[d]=null),c[d]=h}(d,Pt(),A,H),H}finally{Bs(B)}}function NL(a,c,d){const h=a+hi,A=Pt(),g=lr(A,h);return tc(A,h)?G1(A,Ps(),c,g.transform,d,g):g.transform(d)}function LL(a,c,d,h){const A=a+hi,g=Pt(),x=lr(g,A);return tc(g,A)?hB(g,Ps(),c,x.transform,d,h,x):x.transform(d,h)}function AB(a,c,d,h,A,g){const x=a+hi,B=Pt(),k=lr(B,x);return tc(B,x)?function j1(a,c,d,h,A,g,x,B,k){const H=c+d;return gl(a,H,A,g,x,B)?Pc(a,H+4,k?h.call(k,A,g,x,B):h(A,g,x,B)):wp(a,H+4)}(B,Ps(),c,k.transform,d,h,A,g,k):k.transform(d,h,A,g)}function tc(a,c){return a[en].data[c].pure}function da(a,c){return _m(a,c)}class FE{constructor(c){this.full=c;const d=c.split(".");this.major=d[0],this.minor=d[1],this.patch=d.slice(2).join(".")}}let ZL=(()=>{class a{log(d){console.log(d)}warn(d){console.warn(d)}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"platform"})}}return a})();const yb=new Sn(""),ew=new Sn("");let wb,LE=(()=>{class a{constructor(d,h,A){this._ngZone=d,this.registry=h,this._isZoneStable=!0,this._callbacks=[],this.taskTrackingZone=null,wb||(function UE(a){wb=a}(A),A.addToWindow(h)),this._watchAngularEvents(),d.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{io.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}isStable(){return this._isZoneStable&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let d=this._callbacks.pop();clearTimeout(d.timeoutId),d.doneCb()}});else{let d=this.getPendingTasks();this._callbacks=this._callbacks.filter(h=>!h.updateCb||!h.updateCb(d)||(clearTimeout(h.timeoutId),!1))}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(d=>({source:d.source,creationLocation:d.creationLocation,data:d.data})):[]}addCallback(d,h,A){let g=-1;h&&h>0&&(g=setTimeout(()=>{this._callbacks=this._callbacks.filter(x=>x.timeoutId!==g),d()},h)),this._callbacks.push({doneCb:d,timeoutId:g,updateCb:A})}whenStable(d,h,A){if(A&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(d,h,A),this._runCallbacksIfReady()}registerApplication(d){this.registry.registerApplication(d,this)}unregisterApplication(d){this.registry.unregisterApplication(d)}findProviders(d,h,A){return[]}static{this.\u0275fac=function(h){return new(h||a)(cs(io),cs(tw),cs(ew))}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac})}}return a})(),tw=(()=>{class a{constructor(){this._applications=new Map}registerApplication(d,h){this._applications.set(d,h)}unregisterApplication(d){this._applications.delete(d)}unregisterAllApplications(){this._applications.clear()}getTestability(d){return this._applications.get(d)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(d,h=!0){return wb?.findTestabilityInTree(this,d,h)??null}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"platform"})}}return a})();function xb(a){return!!a&&"function"==typeof a.then}function nw(a){return!!a&&"function"==typeof a.subscribe}const iw=new Sn("");let rw=(()=>{class a{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((d,h)=>{this.resolve=d,this.reject=h}),this.appInits=On(iw,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const d=[];for(const A of this.appInits){const g=A();if(xb(g))d.push(g);else if(nw(g)){const x=new Promise((B,k)=>{g.subscribe({complete:B,error:k})});d.push(x)}}const h=()=>{this.done=!0,this.resolve()};Promise.all(d).then(()=>{h()}).catch(A=>{this.reject(A)}),0===d.length&&h(),this.initialized=!0}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();const Cb=new Sn("");let nc=(()=>{class a{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=On(uC),this.afterRenderManager=On(oF),this.zonelessEnabled=On(Jy),this.dirtyFlags=0,this.deferredDirtyFlags=0,this.externalTestViews=new Set,this.beforeRender=new Zi.B,this.afterTick=new Zi.B,this.componentTypes=[],this.components=[],this.isStable=On(Ql).hasPendingTasks.pipe((0,Lr.T)(d=>!d)),this._injector=On(al)}get allViews(){return[...this.externalTestViews.keys(),...this._views]}get destroyed(){return this._destroyed}whenStable(){let d;return new Promise(h=>{d=this.isStable.subscribe({next:A=>{A&&h()}})}).finally(()=>{d.unsubscribe()})}get injector(){return this._injector}bootstrap(d,h){const A=d instanceof pI;if(!this._injector.get(rw).done)throw!A&&function ed(a){const c=$i(a)||Uo(a)||Jo(a);return null!==c&&c.standalone}(d),new Jt(405,!1);let x;x=A?d:this._injector.get(e1).resolveComponentFactory(d),this.componentTypes.push(x.componentType);const B=function VE(a){return a.isBoundToModule}(x)?void 0:this._injector.get(ep),H=x.create(fs.NULL,[],h||x.selector,B),K=H.location.nativeElement,ae=H.injector.get(yb,null);return ae?.registerApplication(K),H.onDestroy(()=>{this.detachView(H.hostView),bg(this.components,H),ae?.unregisterApplication(K)}),this._loadComponent(H),H}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){if(this._runningTick)throw new Jt(101,!1);const d=L(null);try{this._runningTick=!0,this.synchronize()}catch(h){this.internalErrorHandler(h)}finally{this._runningTick=!1,L(d),this.afterTick.next()}}synchronize(){let d=null;this._injector.destroyed||(d=this._injector.get(AI,null,{optional:!0})),this.dirtyFlags|=this.deferredDirtyFlags,this.deferredDirtyFlags=0;let h=0;for(;0!==this.dirtyFlags&&h++<10;)this.synchronizeOnce(d)}synchronizeOnce(d){if(this.dirtyFlags|=this.deferredDirtyFlags,this.deferredDirtyFlags=0,7&this.dirtyFlags){const h=!!(1&this.dirtyFlags);this.dirtyFlags&=-8,this.dirtyFlags|=8,this.beforeRender.next(h);for(let{_lView:A,notifyErrorHandler:g}of this._views)lw(A,g,h,this.zonelessEnabled);if(this.dirtyFlags&=-5,this.syncDirtyFlagsWithViews(),7&this.dirtyFlags)return}else d?.begin?.(),d?.end?.();8&this.dirtyFlags&&(this.dirtyFlags&=-9,this.afterRenderManager.execute()),this.syncDirtyFlagsWithViews()}syncDirtyFlagsWithViews(){this.allViews.some(({_lView:d})=>Q0(d))?this.dirtyFlags|=2:this.dirtyFlags&=-8}attachView(d){const h=d;this._views.push(h),h.attachToAppRef(this)}detachView(d){const h=d;bg(this._views,h),h.detachFromAppRef()}_loadComponent(d){this.attachView(d.hostView),this.tick(),this.components.push(d);const h=this._injector.get(Cb,[]);[...this._bootstrapListeners,...h].forEach(A=>A(d))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(d=>d()),this._views.slice().forEach(d=>d.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(d){return this._destroyListeners.push(d),()=>bg(this._destroyListeners,d)}destroy(){if(this._destroyed)throw new Jt(406,!1);const d=this._injector;d.destroy&&!d.destroyed&&d.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();function bg(a,c){const d=a.indexOf(c);d>-1&&a.splice(d,1)}function lw(a,c,d,h){(d||Q0(a))&&Gy(a,c,d&&!h?0:1)}let e5=(()=>{class a{constructor(){this.zone=On(io),this.changeDetectionScheduler=On(au),this.applicationRef=On(nc)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();function jE({ngZoneFactory:a,ignoreChangesOutsideZone:c,scheduleInRootZone:d}){return a??=()=>new io({...Mb(),scheduleInRootZone:d}),[{provide:io,useFactory:a},{provide:bc,multi:!0,useFactory:()=>{const h=On(e5,{optional:!0});return()=>h.initialize()}},{provide:bc,multi:!0,useFactory:()=>{const h=On(qE);return()=>{h.initialize()}}},!0===c?{provide:jO,useValue:!0}:[],{provide:nM,useValue:d??Sa}]}function Mb(a){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:a?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:a?.runCoalescing??!1}}let qE=(()=>{class a{constructor(){this.subscription=new fr.yU,this.initialized=!1,this.zone=On(io),this.pendingTasks=On(Ql)}initialize(){if(this.initialized)return;this.initialized=!0;let d=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(d=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{io.assertNotInAngularZone(),queueMicrotask(()=>{null!==d&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(d),d=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{io.assertInAngularZone(),d??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})(),yg=(()=>{class a{constructor(){this.appRef=On(nc),this.taskService=On(Ql),this.ngZone=On(io),this.zonelessEnabled=On(Jy),this.disableScheduling=On(jO,{optional:!0})??!1,this.zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run,this.schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}],this.subscriptions=new fr.yU,this.angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(Lf):null,this.scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(On(nM,{optional:!0})??!1),this.cancelScheduledCallback=null,this.useMicrotaskScheduler=!1,this.runningTick=!1,this.pendingRenderTaskId=null,this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof KA||!this.zoneIsDefined)}notify(d){if(!this.zonelessEnabled&&5===d)return;switch(d){case 0:this.appRef.dirtyFlags|=2;break;case 3:case 2:case 4:case 5:case 1:this.appRef.dirtyFlags|=4;break;case 7:this.appRef.deferredDirtyFlags|=8;break;default:this.appRef.dirtyFlags|=8}if(!this.shouldScheduleTick())return;const h=this.useMicrotaskScheduler?_y:gy;this.pendingRenderTaskId=this.taskService.add(),this.cancelScheduledCallback=this.scheduleInRootZone?Zone.root.run(()=>h(()=>this.tick())):this.ngZone.runOutsideAngular(()=>h(()=>this.tick()))}shouldScheduleTick(){return!(this.disableScheduling||null!==this.pendingRenderTaskId||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(Lf+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;!this.zonelessEnabled&&7&this.appRef.dirtyFlags&&(this.appRef.dirtyFlags|=1);const d=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(h){throw this.taskService.remove(d),h}finally{this.cleanup()}this.useMicrotaskScheduler=!0,_y(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(d)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,null!==this.pendingRenderTaskId){const d=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(d)}}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();const qB=new Sn("",{providedIn:"root",factory:()=>On(qB,Si.Optional|Si.SkipSelf)||function H9(){return typeof $localize<"u"&&$localize.locale||S1}()}),n5=new Sn("",{providedIn:"root",factory:()=>"USD"}),wg=new Sn("");function Sp(a){return!a.moduleRef}let Hc=null;function $9(){return!1}let YB=(()=>{class a{static{this.__NG_ELEMENT_ID__=a5}}return a})();function a5(a){return function ZB(a,c,d){if(eh(a)&&!d){const h=$s(a.index,c);return new qy(h,h)}return 175&a.type?new qy(c[go],c):null}(Qr(),Pt(),!(16&~a))}class Tp{constructor(){}supports(c){return H_(c)}create(c){return new Xo(c)}}const xl=(a,c)=>c;class Xo{constructor(c){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=c||xl}forEachItem(c){let d;for(d=this._itHead;null!==d;d=d._next)c(d)}forEachOperation(c){let d=this._itHead,h=this._removalsHead,A=0,g=null;for(;d||h;){const x=!h||d&&d.currentIndex{x=this._trackByFn(A,B),null!==d&&Object.is(d.trackById,x)?(h&&(d=this._verifyReinsertion(d,B,x,A)),Object.is(d.item,B)||this._addIdentityChange(d,B)):(d=this._mismatch(d,B,x,A),h=!0),d=d._next,A++}),this.length=A;return this._truncate(d),this.collection=c,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let c;for(c=this._previousItHead=this._itHead;null!==c;c=c._next)c._nextPrevious=c._next;for(c=this._additionsHead;null!==c;c=c._nextAdded)c.previousIndex=c.currentIndex;for(this._additionsHead=this._additionsTail=null,c=this._movesHead;null!==c;c=c._nextMoved)c.previousIndex=c.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(c,d,h,A){let g;return null===c?g=this._itTail:(g=c._prev,this._remove(c)),null!==(c=null===this._unlinkedRecords?null:this._unlinkedRecords.get(h,null))?(Object.is(c.item,d)||this._addIdentityChange(c,d),this._reinsertAfter(c,g,A)):null!==(c=null===this._linkedRecords?null:this._linkedRecords.get(h,A))?(Object.is(c.item,d)||this._addIdentityChange(c,d),this._moveAfter(c,g,A)):c=this._addAfter(new KE(d,h),g,A),c}_verifyReinsertion(c,d,h,A){let g=null===this._unlinkedRecords?null:this._unlinkedRecords.get(h,null);return null!==g?c=this._reinsertAfter(g,c._prev,A):c.currentIndex!=A&&(c.currentIndex=A,this._addToMoves(c,A)),c}_truncate(c){for(;null!==c;){const d=c._next;this._addToRemovals(this._unlink(c)),c=d}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(c,d,h){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(c);const A=c._prevRemoved,g=c._nextRemoved;return null===A?this._removalsHead=g:A._nextRemoved=g,null===g?this._removalsTail=A:g._prevRemoved=A,this._insertAfter(c,d,h),this._addToMoves(c,h),c}_moveAfter(c,d,h){return this._unlink(c),this._insertAfter(c,d,h),this._addToMoves(c,h),c}_addAfter(c,d,h){return this._insertAfter(c,d,h),this._additionsTail=null===this._additionsTail?this._additionsHead=c:this._additionsTail._nextAdded=c,c}_insertAfter(c,d,h){const A=null===d?this._itHead:d._next;return c._next=A,c._prev=d,null===A?this._itTail=c:A._prev=c,null===d?this._itHead=c:d._next=c,null===this._linkedRecords&&(this._linkedRecords=new nk),this._linkedRecords.put(c),c.currentIndex=h,c}_remove(c){return this._addToRemovals(this._unlink(c))}_unlink(c){null!==this._linkedRecords&&this._linkedRecords.remove(c);const d=c._prev,h=c._next;return null===d?this._itHead=h:d._next=h,null===h?this._itTail=d:h._prev=d,c}_addToMoves(c,d){return c.previousIndex===d||(this._movesTail=null===this._movesTail?this._movesHead=c:this._movesTail._nextMoved=c),c}_addToRemovals(c){return null===this._unlinkedRecords&&(this._unlinkedRecords=new nk),this._unlinkedRecords.put(c),c.currentIndex=null,c._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=c,c._prevRemoved=null):(c._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=c),c}_addIdentityChange(c,d){return c.item=d,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=c:this._identityChangesTail._nextIdentityChange=c,c}}class KE{constructor(c,d){this.item=c,this.trackById=d,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class h5{constructor(){this._head=null,this._tail=null}add(c){null===this._head?(this._head=this._tail=c,c._nextDup=null,c._prevDup=null):(this._tail._nextDup=c,c._prevDup=this._tail,c._nextDup=null,this._tail=c)}get(c,d){let h;for(h=this._head;null!==h;h=h._nextDup)if((null===d||d<=h.currentIndex)&&Object.is(h.trackById,c))return h;return null}remove(c){const d=c._prevDup,h=c._nextDup;return null===d?this._head=h:d._nextDup=h,null===h?this._tail=d:h._prevDup=d,null===this._head}}class nk{constructor(){this.map=new Map}put(c){const d=c.trackById;let h=this.map.get(d);h||(h=new h5,this.map.set(d,h)),h.add(c)}get(c,d){const A=this.map.get(c);return A?A.get(c,d):null}remove(c){const d=c.trackById;return this.map.get(d).remove(c)&&this.map.delete(d),c}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function Sg(a,c,d){const h=a.previousIndex;if(null===h)return h;let A=0;return d&&h{if(d&&d.key===A)this._maybeAddToChanges(d,h),this._appendAfter=d,d=d._next;else{const g=this._getOrCreateRecordForKey(A,h);d=this._insertBeforeOrAppend(d,g)}}),d){d._prev&&(d._prev._next=null),this._removalsHead=d;for(let h=d;null!==h;h=h._nextRemoved)h===this._mapHead&&(this._mapHead=null),this._records.delete(h.key),h._nextRemoved=h._next,h.previousValue=h.currentValue,h.currentValue=null,h._prev=null,h._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(c,d){if(c){const h=c._prev;return d._next=c,d._prev=h,c._prev=d,h&&(h._next=d),c===this._mapHead&&(this._mapHead=d),this._appendAfter=c,c}return this._appendAfter?(this._appendAfter._next=d,d._prev=this._appendAfter):this._mapHead=d,this._appendAfter=d,null}_getOrCreateRecordForKey(c,d){if(this._records.has(c)){const A=this._records.get(c);this._maybeAddToChanges(A,d);const g=A._prev,x=A._next;return g&&(g._next=x),x&&(x._prev=g),A._next=null,A._prev=null,A}const h=new p5(c);return this._records.set(c,h),h.currentValue=d,this._addToAdditions(h),h}_reset(){if(this.isDirty){let c;for(this._previousMapHead=this._mapHead,c=this._previousMapHead;null!==c;c=c._next)c._nextPrevious=c._next;for(c=this._changesHead;null!==c;c=c._nextChanged)c.previousValue=c.currentValue;for(c=this._additionsHead;null!=c;c=c._nextAdded)c.previousValue=c.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(c,d){Object.is(d,c.currentValue)||(c.previousValue=c.currentValue,c.currentValue=d,this._addToChanges(c))}_addToAdditions(c){null===this._additionsHead?this._additionsHead=this._additionsTail=c:(this._additionsTail._nextAdded=c,this._additionsTail=c)}_addToChanges(c){null===this._changesHead?this._changesHead=this._changesTail=c:(this._changesTail._nextChanged=c,this._changesTail=c)}_forEach(c,d){c instanceof Map?c.forEach(d):Object.keys(c).forEach(h=>d(c[h],h))}}class p5{constructor(c){this.key=c,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function rk(){return new YE([new Tp])}let YE=(()=>{class a{static{this.\u0275prov=En({token:a,providedIn:"root",factory:rk})}constructor(d){this.factories=d}static create(d,h){if(null!=h){const A=h.factories.slice();d=d.concat(A)}return new a(d)}static extend(d){return{provide:a,useFactory:h=>a.create(d,h||rk()),deps:[[a,new v0,new cf]]}}find(d){const h=this.factories.find(A=>A.supports(d));if(null!=h)return h;throw new Jt(901,!1)}}return a})();function ok(){return new ZE([new ik])}let ZE=(()=>{class a{static{this.\u0275prov=En({token:a,providedIn:"root",factory:ok})}constructor(d){this.factories=d}static create(d,h){if(h){const A=h.factories.slice();d=d.concat(A)}return new a(d)}static extend(d){return{provide:a,useFactory:h=>a.create(d,h||ok()),deps:[[a,new v0,new cf]]}}find(d){const h=this.factories.find(A=>A.supports(d));if(h)return h;throw new Jt(901,!1)}}return a})();function kp(a){try{const{rootComponent:c,appProviders:d,platformProviders:h}=a,A=function j9(a=[]){if(Hc)return Hc;const c=function r5(a=[],c){return fs.create({name:c,providers:[{provide:T0,useValue:"platform"},{provide:wg,useValue:new Set([()=>Hc=null])},...a]})}(a);return Hc=c,function ow(){!function Rt(a){wt=a}(()=>{throw new Jt(600,!1)})}(),function o5(a){a.get(iT,null)?.forEach(d=>d())}(c),c}(h),g=[jE({}),{provide:au,useExisting:yg},...d||[]];return function Sb(a){const c=Sp(a)?a.r3Injector:a.moduleRef.injector,d=c.get(io);return d.run(()=>{Sp(a)?a.r3Injector.resolveInjectorInitializers():a.moduleRef.resolveInjectorInitializers();const h=c.get(Tc,null);let A;if(d.runOutsideAngular(()=>{A=d.onError.subscribe({next:g=>{h.handleError(g)}})}),Sp(a)){const g=()=>c.destroy(),x=a.platformInjector.get(wg);x.add(g),c.onDestroy(()=>{A.unsubscribe(),x.delete(g)})}else{const g=()=>a.moduleRef.destroy(),x=a.platformInjector.get(wg);x.add(g),a.moduleRef.onDestroy(()=>{bg(a.allPlatformModules,a.moduleRef),A.unsubscribe(),x.delete(g)})}return function QE(a,c,d){try{const h=d();return xb(h)?h.catch(A=>{throw c.runOutsideAngular(()=>a.handleError(A)),A}):h}catch(h){throw c.runOutsideAngular(()=>a.handleError(h)),h}}(h,d,()=>{const g=c.get(rw);return g.runInitializers(),g.donePromise.then(()=>{if(function lL(a){"string"==typeof a&&(qF=a.toLowerCase().replace(/_/g,"-"))}(c.get(qB,S1)||S1),Sp(a)){const B=c.get(nc);return void 0!==a.rootComponent&&B.bootstrap(a.rootComponent),B}return function Bo(a,c){const d=a.injector.get(nc);if(a._bootstrapComponents.length>0)a._bootstrapComponents.forEach(h=>d.bootstrap(h));else{if(!a.instance.ngDoBootstrap)throw new Jt(-403,!1);a.instance.ngDoBootstrap(d)}c.push(a)}(a.moduleRef,a.allPlatformModules),a.moduleRef})})})}({r3Injector:new ZI({providers:g,parent:A,debugName:"",runEnvironmentInitializers:!1}).injector,platformInjector:A,rootComponent:c})}catch(c){return Promise.reject(c)}}function fk(a){return"boolean"==typeof a?a:null!=a&&"false"!==a}function pk(a,c=NaN){return isNaN(parseFloat(a))||isNaN(Number(a))?c:Number(a)}function gk(a,c){Ia("NgSignals");const d=ve(a);return c?.equal&&(d[U].equal=c.equal),d}function lS(a){const c=L(null);try{return a()}finally{L(c)}}const cS=new Sn("",{providedIn:"root",factory:()=>On(dS)});let dS=(()=>{class a{static{this.\u0275prov=En({token:a,providedIn:"root",factory:()=>new sc})}}return a})();class sc{constructor(){this.queuedEffectCount=0,this.queues=new Map,this.pendingTasks=On(Ql),this.taskId=null}scheduleEffect(c){if(this.enqueue(c),null===this.taskId){const d=this.taskId=this.pendingTasks.add();queueMicrotask(()=>{this.flush(),this.pendingTasks.remove(d),this.taskId=null})}}enqueue(c){const d=c.creationZone;this.queues.has(d)||this.queues.set(d,new Set);const h=this.queues.get(d);h.has(c)||(this.queuedEffectCount++,h.add(c))}flush(){for(;this.queuedEffectCount>0;)for(const[c,d]of this.queues)null===c?this.flushQueue(d):c.run(()=>this.flushQueue(d))}flushQueue(c){for(const d of c)c.delete(d),this.queuedEffectCount--,d.run()}}class _k{constructor(c,d,h,A,g,x){this.scheduler=c,this.effectFn=d,this.creationZone=h,this.injector=g,this.watcher=function qt(a,c,d){const h=Object.create(Wt);d&&(h.consumerAllowSignalWrites=!0),h.fn=a,h.schedule=c;const A=k=>{h.cleanupFn=k};return h.ref={notify:()=>we(h),run:()=>{if(null===h.fn)return;if(function V(){return y}())throw new Error("Schedulers cannot synchronously execute watches while scheduling.");if(h.dirty=!1,h.hasRun&&!Ne(h))return;h.hasRun=!0;const k=Be(h);try{h.cleanupFn(),h.cleanupFn=cn,h.fn(A)}finally{Ie(h,k)}},cleanup:()=>h.cleanupFn(),destroy:()=>function x(k){(function g(k){return null===k.fn&&null===k.schedule})(k)||(Je(k),k.cleanupFn(),k.fn=null,k.schedule=null,k.cleanupFn=cn)}(h),[U]:h},h.ref}(B=>this.runEffect(B),()=>this.schedule(),x),this.unregisterOnDestroy=A?.onDestroy(()=>this.destroy())}runEffect(c){try{this.effectFn(c)}catch(d){this.injector.get(Tc,null,{optional:!0})?.handleError(d)}}run(){this.watcher.run()}schedule(){this.scheduler.scheduleEffect(this)}destroy(){this.watcher.destroy(),this.unregisterOnDestroy?.()}}function Bu(a,c){Ia("NgSignals"),!c?.injector&&mf();const d=c?.injector??On(fs),h=!0!==c?.manualCleanup?d.get(ch):null,A=new _k(d.get(cS),a,typeof Zone>"u"?null:Zone.current,h,d,c?.allowSignalWrites??!1),g=d.get(YB,null,{optional:!0});return g&&8&g._lView[xi]?(g._lView[mA]??=[]).push(A.watcher.notify):A.watcher.notify(),A}},3420:nt=>{"use strict";nt.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON Schema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},8198:nt=>{"use strict";nt.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"http://json-schema.org/draft-07/schema#","title":"Core schema meta-schema","definitions":{"schemaArray":{"type":"array","minItems":1,"items":{"$ref":"#"}},"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"allOf":[{"$ref":"#/definitions/nonNegativeInteger"},{"default":0}]},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}},"type":["object","boolean"],"properties":{"$id":{"type":"string","format":"uri-reference"},"$schema":{"type":"string","format":"uri"},"$ref":{"type":"string","format":"uri-reference"},"$comment":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"default":true,"readOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/definitions/nonNegativeInteger"},"minLength":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"additionalItems":{"$ref":"#"},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}],"default":true},"maxItems":{"$ref":"#/definitions/nonNegativeInteger"},"minItems":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"contains":{"$ref":"#"},"maxProperties":{"$ref":"#/definitions/nonNegativeInteger"},"minProperties":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"required":{"$ref":"#/definitions/stringArray"},"additionalProperties":{"$ref":"#"},"definitions":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"properties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$ref":"#"},"propertyNames":{"format":"regex"},"default":{}},"dependencies":{"type":"object","additionalProperties":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/stringArray"}]}},"propertyNames":{"$ref":"#"},"const":true,"enum":{"type":"array","items":true,"minItems":1,"uniqueItems":true},"type":{"anyOf":[{"$ref":"#/definitions/simpleTypes"},{"type":"array","items":{"$ref":"#/definitions/simpleTypes"},"minItems":1,"uniqueItems":true}]},"format":{"type":"string"},"contentMediaType":{"type":"string"},"contentEncoding":{"type":"string"},"if":{"$ref":"#"},"then":{"$ref":"#"},"else":{"$ref":"#"},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"}},"default":true}')}},nt=>{nt(nt.s=5102)}]); \ No newline at end of file +(self.webpackChunkvisualization=self.webpackChunkvisualization||[]).push([[792],{5102:(nt,Ee,v)=>{"use strict";v(6935);var o=v(4438);let y=null;function Z(){return y}class L{}const V=new o.nKC("");let X=(()=>{class n{historyGo(e){throw new Error("")}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:()=>(0,o.WQX)(G),providedIn:"platform"})}}return n})(),G=(()=>{class n extends X{constructor(){super(),this._doc=(0,o.WQX)(V),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Z().getBaseHref(this._doc)}onPopState(e){const i=Z().getGlobalEventTarget(this._doc,"window");return i.addEventListener("popstate",e,!1),()=>i.removeEventListener("popstate",e)}onHashChange(e){const i=Z().getGlobalEventTarget(this._doc,"window");return i.addEventListener("hashchange",e,!1),()=>i.removeEventListener("hashchange",e)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(e){this._location.pathname=e}pushState(e,i,r){this._history.pushState(e,i,r)}replaceState(e,i,r){this._history.replaceState(e,i,r)}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:()=>new n,providedIn:"platform"})}}return n})();function Q(n,t){if(0==n.length)return t;if(0==t.length)return n;let e=0;return n.endsWith("/")&&e++,t.startsWith("/")&&e++,2==e?n+t.substring(1):1==e?n+t:n+"/"+t}function ne(n){const t=n.match(/#|\?|$/),e=t&&t.index||n.length;return n.slice(0,e-("/"===n[e-1]?1:0))+n.slice(e)}function re(n){return n&&"?"!==n[0]?"?"+n:n}let me=(()=>{class n{historyGo(e){throw new Error("")}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:()=>(0,o.WQX)(Be),providedIn:"root"})}}return n})();const we=new o.nKC("");let Be=(()=>{class n extends me{constructor(e,i){super(),this._platformLocation=e,this._removeListenerFns=[],this._baseHref=i??this._platformLocation.getBaseHrefFromDOM()??(0,o.WQX)(V).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return Q(this._baseHref,e)}path(e=!1){const i=this._platformLocation.pathname+re(this._platformLocation.search),r=this._platformLocation.hash;return r&&e?`${i}${r}`:i}pushState(e,i,r,s){const l=this.prepareExternalUrl(r+re(s));this._platformLocation.pushState(e,i,l)}replaceState(e,i,r,s){const l=this.prepareExternalUrl(r+re(s));this._platformLocation.replaceState(e,i,l)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(e=0){this._platformLocation.historyGo?.(e)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(X),o.KVO(we,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),Ne=(()=>{class n{constructor(e){this._subject=new o.bkB,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=e;const i=this._locationStrategy.getBaseHref();this._basePath=function $e(n){if(new RegExp("^(https?:)?//").test(n)){const[,e]=n.split(/\/\/[^\/]+/);return e}return n}(ne(qe(i))),this._locationStrategy.onPopState(r=>{this._subject.emit({url:this.path(!0),pop:!0,state:r.state,type:r.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,i=""){return this.path()==this.normalize(e+re(i))}normalize(e){return n.stripTrailingSlash(function He(n,t){if(!n||!t.startsWith(n))return t;const e=t.substring(n.length);return""===e||["/",";","?","#"].includes(e[0])?e:t}(this._basePath,qe(e)))}prepareExternalUrl(e){return e&&"/"!==e[0]&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,i="",r=null){this._locationStrategy.pushState(r,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+re(i)),r)}replaceState(e,i="",r=null){this._locationStrategy.replaceState(r,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+re(i)),r)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){this._locationStrategy.historyGo?.(e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??=this.subscribe(i=>{this._notifyUrlChangeListeners(i.url,i.state)}),()=>{const i=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(i,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",i){this._urlChangeListeners.forEach(r=>r(e,i))}subscribe(e,i,r){return this._subject.subscribe({next:e,error:i,complete:r})}static{this.normalizeQueryParams=re}static{this.joinWithSlash=Q}static{this.stripTrailingSlash=ne}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(me))}}static{this.\u0275prov=o.jDH({token:n,factory:()=>function Je(){return new Ne((0,o.KVO)(me))}(),providedIn:"root"})}}return n})();function qe(n){return n.replace(/\/index.html$/,"")}var st=function(n){return n[n.Decimal=0]="Decimal",n[n.Percent=1]="Percent",n[n.Currency=2]="Currency",n[n.Scientific=3]="Scientific",n}(st||{}),We=function(n){return n[n.Zero=0]="Zero",n[n.One=1]="One",n[n.Two=2]="Two",n[n.Few=3]="Few",n[n.Many=4]="Many",n[n.Other=5]="Other",n}(We||{});const Te={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};function ci(n,t){const e=(0,o.H5H)(n),i=e[o.KH2.NumberSymbols][t];if(typeof i>"u"){if(t===Te.CurrencyDecimal)return e[o.KH2.NumberSymbols][Te.Decimal];if(t===Te.CurrencyGroup)return e[o.KH2.NumberSymbols][Te.Group]}return i}const _n=o.mq5,De=/^(\d+)?\.((\d+)(-(\d+))?)?$/;function gt(n){const t=parseInt(n);if(isNaN(t))throw new Error("Invalid integer literal when parsing "+n);return t}let Bn=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:function(i){let r=null;return i?r=new i:(s=o.KVO(o.xe9),r=new bi(s)),r;var s},providedIn:"root"})}}return n})();let bi=(()=>{class n extends Bn{constructor(e){super(),this.locale=e}getPluralCategory(e,i){switch(_n(i||this.locale)(e)){case We.Zero:return"zero";case We.One:return"one";case We.Two:return"two";case We.Few:return"few";case We.Many:return"many";default:return"other"}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(o.xe9))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function eo(n,t){t=encodeURIComponent(t);for(const e of n.split(";")){const i=e.indexOf("="),[r,s]=-1==i?[e,""]:[e.slice(0,i),e.slice(i+1)];if(r.trim()===t)return decodeURIComponent(s)}return null}const Ao=/\s+/,To=[];let Sn=(()=>{class n{constructor(e,i){this._ngEl=e,this._renderer=i,this.initialClasses=To,this.stateMap=new Map}set klass(e){this.initialClasses=null!=e?e.trim().split(Ao):To}set ngClass(e){this.rawClass="string"==typeof e?e.trim().split(Ao):e}ngDoCheck(){for(const i of this.initialClasses)this._updateState(i,!0);const e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(const i of e)this._updateState(i,!0);else if(null!=e)for(const i of Object.keys(e))this._updateState(i,!!e[i]);this._applyStateDiff()}_updateState(e,i){const r=this.stateMap.get(e);void 0!==r?(r.enabled!==i&&(r.changed=!0,r.enabled=i),r.touched=!0):this.stateMap.set(e,{enabled:i,changed:!0,touched:!0})}_applyStateDiff(){for(const e of this.stateMap){const i=e[0],r=e[1];r.changed?(this._toggleClass(i,r.enabled),r.changed=!1):r.touched||(r.enabled&&this._toggleClass(i,!1),this.stateMap.delete(i)),r.touched=!1}}_toggleClass(e,i){(e=e.trim()).length>0&&e.split(Ao).forEach(r=>{i?this._renderer.addClass(this._ngEl.nativeElement,r):this._renderer.removeClass(this._ngEl.nativeElement,r)})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.sFG))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"},standalone:!0})}}return n})(),Gn=(()=>{class n{constructor(e,i){this._viewContainer=e,this._context=new pi,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=i}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){Ui("ngIfThen",e),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){Ui("ngIfElse",e),this._elseTemplateRef=e,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.c1b),o.rXU(o.C4Q))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}}return n})();class pi{constructor(){this.$implicit=null,this.ngIf=null}}function Ui(n,t){if(t&&!t.createEmbeddedView)throw new Error(`${n} must be a TemplateRef, but received '${(0,o.Tbb)(t)}'.`)}class Ki{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}let No=(()=>{class n{constructor(e){this._localization=e,this._caseViews={}}set ngPlural(e){this._updateView(e)}addCase(e,i){this._caseViews[e]=i}_updateView(e){this._clearViews();const r=function ti(n,t,e,i){let r=`=${n}`;if(t.indexOf(r)>-1||(r=e.getPluralCategory(n,i),t.indexOf(r)>-1))return r;if(t.indexOf("other")>-1)return"other";throw new Error(`No plural message found for value "${n}"`)}(e,Object.keys(this._caseViews),this._localization);this._activateView(this._caseViews[r])}_clearViews(){this._activeView&&this._activeView.destroy()}_activateView(e){e&&(this._activeView=e,this._activeView.create())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Bn))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngPlural",""]],inputs:{ngPlural:"ngPlural"},standalone:!0})}}return n})(),ia=(()=>{class n{constructor(e,i,r,s){this.value=e;const l=!isNaN(Number(e));s.addCase(l?`=${e}`:e,new Ki(r,i))}static{this.\u0275fac=function(i){return new(i||n)(o.kS0("ngPluralCase"),o.rXU(o.C4Q),o.rXU(o.c1b),o.rXU(No,1))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngPluralCase",""]],standalone:!0})}}return n})(),ma=(()=>{class n{constructor(e,i,r){this._ngEl=e,this._differs=i,this._renderer=r,this._ngStyle=null,this._differ=null}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){const e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,i){const[r,s]=e.split("."),l=-1===r.indexOf("-")?void 0:o.czy.DashCase;null!=i?this._renderer.setStyle(this._ngEl.nativeElement,r,s?`${i}${s}`:i,l):this._renderer.removeStyle(this._ngEl.nativeElement,r,l)}_applyChanges(e){e.forEachRemovedItem(i=>this._setStyle(i.key,null)),e.forEachAddedItem(i=>this._setStyle(i.key,i.currentValue)),e.forEachChangedItem(i=>this._setStyle(i.key,i.currentValue))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.MKu),o.rXU(o.sFG))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"},standalone:!0})}}return n})(),yi=(()=>{class n{constructor(e){this._viewContainerRef=e,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null,this.ngTemplateOutletInjector=null}ngOnChanges(e){if(this._shouldRecreateView(e)){const i=this._viewContainerRef;if(this._viewRef&&i.remove(i.indexOf(this._viewRef)),!this.ngTemplateOutlet)return void(this._viewRef=null);const r=this._createContextForwardProxy();this._viewRef=i.createEmbeddedView(this.ngTemplateOutlet,r,{injector:this.ngTemplateOutletInjector??void 0})}}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,i,r)=>!!this.ngTemplateOutletContext&&Reflect.set(this.ngTemplateOutletContext,i,r),get:(e,i,r)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,i,r)}})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.c1b))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},standalone:!0,features:[o.OA$]})}}return n})();function yo(n,t){return new o.wOt(2100,!1)}class mc{createSubscription(t,e){return(0,o.O8t)(()=>t.subscribe({next:e,error:i=>{throw i}}))}dispose(t){(0,o.O8t)(()=>t.unsubscribe())}}class ga{createSubscription(t,e){return t.then(e,i=>{throw i})}dispose(t){}}const Ds=new ga,lf=new mc;let zn=(()=>{class n{constructor(e){this._latestValue=null,this.markForCheckOnValueUpdate=!0,this._subscription=null,this._obj=null,this._strategy=null,this._ref=e}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(e){if(!this._obj){if(e)try{this.markForCheckOnValueUpdate=!1,this._subscribe(e)}finally{this.markForCheckOnValueUpdate=!0}return this._latestValue}return e!==this._obj?(this._dispose(),this.transform(e)):this._latestValue}_subscribe(e){this._obj=e,this._strategy=this._selectStrategy(e),this._subscription=this._strategy.createSubscription(e,i=>this._updateLatestValue(e,i))}_selectStrategy(e){if((0,o.jNT)(e))return Ds;if((0,o.zjR)(e))return lf;throw yo()}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(e,i){e===this._obj&&(this._latestValue=i,this.markForCheckOnValueUpdate&&this._ref?.markForCheck())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc,16))}}static{this.\u0275pipe=o.EJ8({name:"async",type:n,pure:!1,standalone:!0})}}return n})();const Lo=/(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])\S*/g;let cf=(()=>{class n{transform(e){if(null==e)return null;if("string"!=typeof e)throw yo();return e.replace(Lo,i=>i[0].toUpperCase()+i.slice(1).toLowerCase())}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"titlecase",type:n,pure:!0,standalone:!0})}}return n})(),df=(()=>{class n{constructor(e){this.differs=e,this.keyValues=[],this.compareFn=Od}transform(e,i=Od){if(!e||!(e instanceof Map)&&"object"!=typeof e)return null;this.differ??=this.differs.find(e).create();const r=this.differ.diff(e),s=i!==this.compareFn;return r&&(this.keyValues=[],r.forEachItem(l=>{this.keyValues.push(function Fx(n,t){return{key:n,value:t}}(l.key,l.currentValue))})),(r||s)&&(this.keyValues.sort(i),this.compareFn=i),this.keyValues}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.MKu,16))}}static{this.\u0275pipe=o.EJ8({name:"keyvalue",type:n,pure:!1,standalone:!0})}}return n})();function Od(n,t){const e=n.key,i=t.key;if(e===i)return 0;if(void 0===e)return 1;if(void 0===i)return-1;if(null===e)return 1;if(null===i)return-1;if("string"==typeof e&&"string"==typeof i)return e{class n{constructor(e){this._locale=e}transform(e,i,r){if(!function ds(n){return!(null==n||""===n||n!=n)}(e))return null;r||=this._locale;try{return function Ar(n,t,e){return function Un(n,t,e,i,r,s,l=!1){let u="",f=!1;if(isFinite(n)){let p=function pn(n){let i,r,s,l,u,t=Math.abs(n)+"",e=0;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(s=t.search(/e/i))>0?(r<0&&(r=s),r+=+t.slice(s+1),t=t.substring(0,s)):r<0&&(r=t.length),s=0;"0"===t.charAt(s);s++);if(s===(u=t.length))i=[0],r=1;else{for(u--;"0"===t.charAt(u);)u--;for(r-=s,i=[],l=0;s<=u;s++,l++)i[l]=Number(t.charAt(s))}return r>22&&(i=i.splice(0,21),e=r-1,r=1),{digits:i,exponent:e,integerLen:r}}(n);l&&(p=function Fn(n){if(0===n.digits[0])return n;const t=n.digits.length-n.integerLen;return n.exponent?n.exponent+=2:(0===t?n.digits.push(0,0):1===t&&n.digits.push(0),n.integerLen+=2),n}(p));let m=t.minInt,_=t.minFrac,b=t.maxFrac;if(s){const O=s.match(De);if(null===O)throw new Error(`${s} is not a valid digit info`);const R=O[1],P=O[3],ee=O[5];null!=R&&(m=gt(R)),null!=P&&(_=gt(P)),null!=ee?b=gt(ee):null!=P&&_>b&&(b=_)}!function Ke(n,t,e){if(t>e)throw new Error(`The minimum number of digits after fraction (${t}) is higher than the maximum (${e}).`);let i=n.digits,r=i.length-n.integerLen;const s=Math.min(Math.max(t,r),e);let l=s+n.integerLen,u=i[l];if(l>0){i.splice(Math.max(n.integerLen,l));for(let _=l;_=5)if(l-1<0){for(let _=0;_>l;_--)i.unshift(0),n.integerLen++;i.unshift(1),n.integerLen++}else i[l-1]++;for(;r=p?F.pop():f=!1),b>=10?1:0},0);m&&(i.unshift(m),n.integerLen++)}(p,_,b);let w=p.digits,F=p.integerLen;const D=p.exponent;let T=[];for(f=w.every(O=>!O);F0?T=w.splice(F,w.length):(T=w,w=[0]);const I=[];for(w.length>=t.lgSize&&I.unshift(w.splice(-t.lgSize,w.length).join(""));w.length>t.gSize;)I.unshift(w.splice(-t.gSize,w.length).join(""));w.length&&I.unshift(w.join("")),u=I.join(ci(e,i)),T.length&&(u+=ci(e,r)+T.join("")),D&&(u+=ci(e,Te.Exponential)+"+"+D)}else u=ci(e,Te.Infinity);return u=n<0&&!f?t.negPre+u+t.negSuf:t.posPre+u+t.posSuf,u}(n,function En(n,t="-"){const e={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},i=n.split(";"),r=i[0],s=i[1],l=-1!==r.indexOf(".")?r.split("."):[r.substring(0,r.lastIndexOf("0")+1),r.substring(r.lastIndexOf("0")+1)],u=l[0],f=l[1]||"";e.posPre=u.substring(0,u.indexOf("#"));for(let m=0;m{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275mod=o.$C({type:n})}static{this.\u0275inj=o.G2t({})}}return n})();const Xu="browser";function Mv(n){return"server"===n}class rl{}class es extends L{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class gA extends es{static makeCurrent(){!function U(n){y??=n}(new gA)}onAndCancel(t,e,i){return t.addEventListener(e,i),()=>{t.removeEventListener(e,i)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){t.remove()}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getBaseHref(t){const e=function rd(){return bf=bf||document.querySelector("base"),bf?bf.getAttribute("href"):null}();return null==e?null:function jx(n){return new URL(n,document.baseURI).pathname}(e)}resetBaseElement(){bf=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return eo(document.cookie,t)}}let bf=null,qx=(()=>{class n{build(){return new XMLHttpRequest}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const D0=new o.nKC("");let vf=(()=>{class n{constructor(e,i){this._zone=i,this._eventNameToPlugin=new Map,e.forEach(r=>{r.manager=this}),this._plugins=e.slice().reverse()}addEventListener(e,i,r){return this._findPluginFor(i).addEventListener(e,i,r)}getZone(){return this._zone}_findPluginFor(e){let i=this._eventNameToPlugin.get(e);if(i)return i;if(i=this._plugins.find(s=>s.supports(e)),!i)throw new o.wOt(5101,!1);return this._eventNameToPlugin.set(e,i),i}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(D0),o.KVO(o.SKi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();class Hv{constructor(t){this._doc=t}}const yf="ng-app-id";let wf=(()=>{class n{constructor(e,i,r,s={}){this.doc=e,this.appId=i,this.nonce=r,this.platformId=s,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Mv(s),this.resetHostNodes()}addStyles(e){for(const i of e)1===this.changeUsageCount(i,1)&&this.onStyleAdded(i)}removeStyles(e){for(const i of e)this.changeUsageCount(i,-1)<=0&&this.onStyleRemoved(i)}ngOnDestroy(){const e=this.styleNodesInDOM;e&&(e.forEach(i=>i.remove()),e.clear());for(const i of this.getAllStyles())this.onStyleRemoved(i);this.resetHostNodes()}addHost(e){this.hostNodes.add(e);for(const i of this.getAllStyles())this.addStyleToHost(e,i)}removeHost(e){this.hostNodes.delete(e)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(e){for(const i of this.hostNodes)this.addStyleToHost(i,e)}onStyleRemoved(e){const i=this.styleRef;i.get(e)?.elements?.forEach(r=>r.remove()),i.delete(e)}collectServerRenderedStyles(){const e=this.doc.head?.querySelectorAll(`style[${yf}="${this.appId}"]`);if(e?.length){const i=new Map;return e.forEach(r=>{null!=r.textContent&&i.set(r.textContent,r)}),i}return null}changeUsageCount(e,i){const r=this.styleRef;if(r.has(e)){const s=r.get(e);return s.usage+=i,s.usage}return r.set(e,{usage:i,elements:[]}),i}getStyleElement(e,i){const r=this.styleNodesInDOM,s=r?.get(i);if(s?.parentNode===e)return r.delete(i),s.removeAttribute(yf),s;{const l=this.doc.createElement("style");return this.nonce&&l.setAttribute("nonce",this.nonce),l.textContent=i,this.platformIsServer&&l.setAttribute(yf,this.appId),e.appendChild(l),l}}addStyleToHost(e,i){const r=this.getStyleElement(e,i),s=this.styleRef,l=s.get(i)?.elements;l?l.push(r):s.set(i,{elements:[r],usage:1})}resetHostNodes(){const e=this.hostNodes;e.clear(),e.add(this.doc.head)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(o.sZ2),o.KVO(o.BIS,8),o.KVO(o.Agw))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const to={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},en=/%COMP%/g,Gs=new o.nKC("",{providedIn:"root",factory:()=>!0});function Vo(n,t){return t.map(e=>e.replace(en,n))}let La=(()=>{class n{constructor(e,i,r,s,l,u,f,p=null){this.eventManager=e,this.sharedStylesHost=i,this.appId=r,this.removeStylesOnCompDestroy=s,this.doc=l,this.platformId=u,this.ngZone=f,this.nonce=p,this.rendererByCompId=new Map,this.platformIsServer=Mv(u),this.defaultRenderer=new Oi(e,l,f,this.platformIsServer)}createRenderer(e,i){if(!e||!i)return this.defaultRenderer;this.platformIsServer&&i.encapsulation===o.gXe.ShadowDom&&(i={...i,encapsulation:o.gXe.Emulated});const r=this.getOrCreateRenderer(e,i);return r instanceof Gd?r.applyToHost(e):r instanceof xc&&r.applyStyles(),r}getOrCreateRenderer(e,i){const r=this.rendererByCompId;let s=r.get(i.id);if(!s){const l=this.doc,u=this.ngZone,f=this.eventManager,p=this.sharedStylesHost,m=this.removeStylesOnCompDestroy,_=this.platformIsServer;switch(i.encapsulation){case o.gXe.Emulated:s=new Gd(f,p,i,this.appId,m,l,u,_);break;case o.gXe.ShadowDom:return new go(f,p,e,i,l,u,this.nonce,_);default:s=new xc(f,p,i,m,l,u,_)}r.set(i.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(vf),o.KVO(wf),o.KVO(o.sZ2),o.KVO(Gs),o.KVO(V),o.KVO(o.Agw),o.KVO(o.SKi),o.KVO(o.BIS))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();class Oi{constructor(t,e,i,r){this.eventManager=t,this.doc=e,this.ngZone=i,this.platformIsServer=r,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(t,e){return e?this.doc.createElementNS(to[e]||e,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,e){(zd(t)?t.content:t).appendChild(e)}insertBefore(t,e,i){t&&(zd(t)?t.content:t).insertBefore(e,i)}removeChild(t,e){e.remove()}selectRootElement(t,e){let i="string"==typeof t?this.doc.querySelector(t):t;if(!i)throw new o.wOt(-5104,!1);return e||(i.textContent=""),i}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,i,r){if(r){e=r+":"+e;const s=to[r];s?t.setAttributeNS(s,e,i):t.setAttribute(e,i)}else t.setAttribute(e,i)}removeAttribute(t,e,i){if(i){const r=to[i];r?t.removeAttributeNS(r,e):t.removeAttribute(`${i}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,i,r){r&(o.czy.DashCase|o.czy.Important)?t.style.setProperty(e,i,r&o.czy.Important?"important":""):t.style[e]=i}removeStyle(t,e,i){i&o.czy.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,i){null!=t&&(t[e]=i)}setValue(t,e){t.nodeValue=e}listen(t,e,i){if("string"==typeof t&&!(t=Z().getGlobalEventTarget(this.doc,t)))throw new Error(`Unsupported event target ${t} for event ${e}`);return this.eventManager.addEventListener(t,e,this.decoratePreventDefault(i))}decoratePreventDefault(t){return e=>{if("__ngUnwrap__"===e)return t;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>t(e)):t(e))&&e.preventDefault()}}}function zd(n){return"TEMPLATE"===n.tagName&&void 0!==n.content}class go extends Oi{constructor(t,e,i,r,s,l,u,f){super(t,s,l,f),this.sharedStylesHost=e,this.hostEl=i,this.shadowRoot=i.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const p=Vo(r.id,r.styles);for(const m of p){const _=document.createElement("style");u&&_.setAttribute("nonce",u),_.textContent=m,this.shadowRoot.appendChild(_)}}nodeOrShadowRoot(t){return t===this.hostEl?this.shadowRoot:t}appendChild(t,e){return super.appendChild(this.nodeOrShadowRoot(t),e)}insertBefore(t,e,i){return super.insertBefore(this.nodeOrShadowRoot(t),e,i)}removeChild(t,e){return super.removeChild(null,e)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class xc extends Oi{constructor(t,e,i,r,s,l,u,f){super(t,s,l,u),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=r,this.styles=f?Vo(f,i.styles):i.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class Gd extends xc{constructor(t,e,i,r,s,l,u,f){const p=r+"-"+i.id;super(t,e,i,s,l,u,f,p),this.contentAttr=function Ju(n){return"_ngcontent-%COMP%".replace(en,n)}(p),this.hostAttr=function no(n){return"_nghost-%COMP%".replace(en,n)}(p)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,e){const i=super.createElement(t,e);return super.setAttribute(i,this.contentAttr,""),i}}let cl=(()=>{class n extends Hv{constructor(e){super(e)}supports(e){return!0}addEventListener(e,i,r){return e.addEventListener(i,r,!1),()=>this.removeEventListener(e,i,r)}removeEventListener(e,i,r){return e.removeEventListener(i,r)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const Dl=["alt","control","meta","shift"],Qv={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},od={alt:n=>n.altKey,control:n=>n.ctrlKey,meta:n=>n.metaKey,shift:n=>n.shiftKey};let _A=(()=>{class n extends Hv{constructor(e){super(e)}supports(e){return null!=n.parseEventName(e)}addEventListener(e,i,r){const s=n.parseEventName(i),l=n.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Z().onAndCancel(e,s.domEventName,l))}static parseEventName(e){const i=e.toLowerCase().split("."),r=i.shift();if(0===i.length||"keydown"!==r&&"keyup"!==r)return null;const s=n._normalizeKey(i.pop());let l="",u=i.indexOf("code");if(u>-1&&(i.splice(u,1),l="code."),Dl.forEach(p=>{const m=i.indexOf(p);m>-1&&(i.splice(m,1),l+=p+".")}),l+=s,0!=i.length||0===s.length)return null;const f={};return f.domEventName=r,f.fullKey=l,f}static matchEventFullKeyCode(e,i){let r=Qv[e.key]||e.key,s="";return i.indexOf("code.")>-1&&(r=e.code,s="code."),!(null==r||!r)&&(r=r.toLowerCase()," "===r?r="space":"."===r&&(r="dot"),Dl.forEach(l=>{l!==r&&(0,od[l])(e)&&(s+=l+".")}),s+=r,s===i)}static eventCallback(e,i,r){return s=>{n.matchEventFullKeyCode(s,e)&&r.runGuarded(()=>i(s))}}static _normalizeKey(e){return"esc"===e?"escape":e}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function bA(n){return{appProviders:[...k0,...n?.providers??[]],platformProviders:Ho}}const Ho=[{provide:o.Agw,useValue:Xu},{provide:o.PLl,useValue:function Bl(){gA.makeCurrent()},multi:!0},{provide:V,useFactory:function eh(){return(0,o.TL$)(document),document},deps:[]}],k0=[{provide:o.H8p,useValue:"root"},{provide:o.zcH,useFactory:function vA(){return new o.zcH},deps:[]},{provide:D0,useClass:cl,multi:!0,deps:[V,o.SKi,o.Agw]},{provide:D0,useClass:_A,multi:!0,deps:[V]},La,wf,vf,{provide:o._9s,useExisting:La},{provide:rl,useClass:qx,deps:[]},[]];function U0(n,t,e,i,r,s,l){try{var u=n[s](l),f=u.value}catch(p){return void e(p)}u.done?t(f):Promise.resolve(f).then(i,r)}function Mn(n){return function(){var t=this,e=arguments;return new Promise(function(i,r){var s=n.apply(t,e);function l(f){U0(s,i,r,l,u,"next",f)}function u(f){U0(s,i,r,l,u,"throw",f)}l(void 0)})}}var $d=v(4412),qr=v(4226),mi=v(1413),un=v(8359);class Gv extends un.yU{constructor(t,e){super()}schedule(t,e=0){return this}}const xA={setInterval(n,t,...e){const{delegate:i}=xA;return i?.setInterval?i.setInterval(n,t,...e):setInterval(n,t,...e)},clearInterval(n){const{delegate:t}=xA;return(t?.clearInterval||clearInterval)(n)},delegate:void 0};var xf=v(7908);class Ma extends Gv{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){var i;if(this.closed)return this;this.state=t;const r=this.id,s=this.scheduler;return null!=r&&(this.id=this.recycleAsyncId(s,r,e)),this.pending=!0,this.delay=e,this.id=null!==(i=this.id)&&void 0!==i?i:this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,i=0){return xA.setInterval(t.flush.bind(t,this),i)}recycleAsyncId(t,e,i=0){if(null!=i&&this.delay===i&&!1===this.pending)return e;null!=e&&xA.clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const i=this._execute(t,e);if(i)return i;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let r,i=!1;try{this.work(t)}catch(s){i=!0,r=s||new Error("Scheduled action threw falsy error")}if(i)return this.unsubscribe(),r}unsubscribe(){if(!this.closed){const{id:t,scheduler:e}=this,{actions:i}=e;this.work=this.state=this.scheduler=null,this.pending=!1,(0,xf.o)(i,this),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null,super.unsubscribe()}}}const Cf={now:()=>(Cf.delegate||Date).now(),delegate:void 0};class Pl{constructor(t,e=Pl.now){this.schedulerActionCtor=t,this.now=e}schedule(t,e=0,i){return new this.schedulerActionCtor(this,t).schedule(i,e)}}Pl.now=Cf.now;class cr extends Pl{constructor(t,e=Pl.now){super(t,e),this.actions=[],this._active=!1}flush(t){const{actions:e}=this;if(this._active)return void e.push(t);let i;this._active=!0;do{if(i=t.execute(t.state,t.delay))break}while(t=e.shift());if(this._active=!1,i){for(;t=e.shift();)t.unsubscribe();throw i}}}const Mf=new class V0 extends cr{}(class Rl extends Ma{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,i=0){return null!=i&&i>0||null==i&&this.delay>0?super.requestAsyncId(t,e,i):(t.flush(this),0)}});function js(n,t,e,i=0,r=!1){const s=t.schedule(function(){e(),r?n.add(this.schedule(null,i)):this.unsubscribe()},i);if(n.add(s),!r)return s}var Ir=v(9974),lr=v(4360);function $s(n,t=0){return(0,Ir.N)((e,i)=>{e.subscribe((0,lr._)(i,r=>js(i,n,()=>i.next(r),t),()=>js(i,n,()=>i.complete(),t),r=>js(i,n,()=>i.error(r),t)))})}function Ol(n){return this instanceof Ol?(this.v=n,this):new Ol(n)}function Wv(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,t=n[Symbol.asyncIterator];return t?t.call(n):(n=function nh(n){var t="function"==typeof Symbol&&Symbol.iterator,e=t&&n[t],i=0;if(e)return e.call(n);if(n&&"number"==typeof n.length)return{next:function(){return n&&i>=n.length&&(n=void 0),{value:n&&n[i++],done:!n}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(n),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(s){e[s]=n[s]&&function(l){return new Promise(function(u,f){!function r(s,l,u,f){Promise.resolve(f).then(function(p){s({value:p,done:u})},l)}(u,f,(l=n[s](l)).done,l.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const xo=n=>n&&"number"==typeof n.length&&"function"!=typeof n;var Yr=v(8071);function FA(n){return(0,Yr.T)(n?.then)}var K0=v(3494);function tC(n){return(0,Yr.T)(n[K0.s])}function nC(n){return Symbol.asyncIterator&&(0,Yr.T)(n?.[Symbol.asyncIterator])}function Y0(n){return new TypeError(`You provided ${null!==n&&"object"==typeof n?"an invalid object":`'${n}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Z0=function Zv(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function Ps(n){return(0,Yr.T)(n?.[Z0])}function Nl(n){return function SA(n,t,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,i=e.apply(n,t||[]),s=[];return r={},u("next"),u("throw"),u("return",function l(w){return function(F){return Promise.resolve(F).then(w,_)}}),r[Symbol.asyncIterator]=function(){return this},r;function u(w,F){i[w]&&(r[w]=function(D){return new Promise(function(T,I){s.push([w,D,T,I])>1||f(w,D)})},F&&(r[w]=F(r[w])))}function f(w,F){try{!function p(w){w.value instanceof Ol?Promise.resolve(w.value.v).then(m,_):b(s[0][2],w)}(i[w](F))}catch(D){b(s[0][3],D)}}function m(w){f("next",w)}function _(w){f("throw",w)}function b(w,F){w(F),s.shift(),s.length&&f(s[0][0],s[0][1])}}(this,arguments,function*(){const e=n.getReader();try{for(;;){const{value:i,done:r}=yield Ol(e.read());if(r)return yield Ol(void 0);yield yield Ol(i)}}finally{e.releaseLock()}})}function DA(n){return(0,Yr.T)(n?.getReader)}var dl=v(5334);function Rr(n){if(n instanceof qr.c)return n;if(null!=n){if(tC(n))return function Jv(n){return new qr.c(t=>{const e=n[K0.s]();if((0,Yr.T)(e.subscribe))return e.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(n);if(xo(n))return function fs(n){return new qr.c(t=>{for(let e=0;e{n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,dl.m)})}(n);if(nC(n))return BA(n);if(Ps(n))return function iC(n){return new qr.c(t=>{for(const e of n)if(t.next(e),t.closed)return;t.complete()})}(n);if(DA(n))return function kA(n){return BA(Nl(n))}(n)}throw Y0(n)}function BA(n){return new qr.c(t=>{(function If(n,t){var e,i,r,s;return function Sf(n,t,e,i){return new(e||(e=Promise))(function(s,l){function u(m){try{p(i.next(m))}catch(_){l(_)}}function f(m){try{p(i.throw(m))}catch(_){l(_)}}function p(m){m.done?s(m.value):function r(s){return s instanceof e?s:new e(function(l){l(s)})}(m.value).then(u,f)}p((i=i.apply(n,t||[])).next())})}(this,void 0,void 0,function*(){try{for(e=Wv(n);!(i=yield e.next()).done;)if(t.next(i.value),t.closed)return}catch(l){r={error:l}}finally{try{i&&!i.done&&(s=e.return)&&(yield s.call(e))}finally{if(r)throw r.error}}t.complete()})})(n,t).catch(e=>t.error(e))})}var Ll=v(3669),J0=v(5343);function e_(n){return n&&(0,Yr.T)(n.schedule)}function Ff(n){return n[n.length-1]}function RA(n){return(0,Yr.T)(Ff(n))?n.pop():void 0}function ih(n){return e_(Ff(n))?n.pop():void 0}function ul(...n){const t=RA(n);return(0,Ir.N)((e,i)=>{const r=n.length,s=new Array(r);let l=n.map(()=>!1),u=!1;for(let f=0;f{s[f]=p,!u&&!l[f]&&(l[f]=!0,(u=l.every(Ll.D))&&(l=null))},J0.l));e.subscribe((0,lr._)(i,f=>{if(u){const p=[f,...s];i.next(t?t(...p):p)}}))})}var qn=v(6354);function kr(n,t=Ll.D){return n=n??ny,(0,Ir.N)((e,i)=>{let r,s=!0;e.subscribe((0,lr._)(i,l=>{const u=t(l);(s||!n(r,u))&&(s=!1,r=u,i.next(l))}))})}function ny(n,t){return n===t}function rh(n,t){const e=!t?.manualCleanup;e&&!t?.injector&&(0,o.Af3)(rh);const i=e?t?.injector?.get(o.abz)??(0,o.WQX)(o.abz):null,r=function hl(n=Object.is){return(t,e)=>1===t.kind&&1===e.kind&&n(t.value,e.value)}(t?.equal);let s;s=(0,o.vPA)(t?.requireSync?{kind:0}:{kind:1,value:t?.initialValue},{equal:r});const l=n.subscribe({next:u=>s.set({kind:1,value:u}),error:u=>{if(t?.rejectErrors)throw u;s.set({kind:2,error:u})}});if(t?.requireSync&&0===s().kind)throw new o.wOt(601,!1);return i?.onDestroy(l.unsubscribe.bind(l)),(0,o.EWP)(()=>{const u=s();switch(u.kind){case 1:return u.value;case 2:throw u.error;case 0:throw new o.wOt(601,!1)}},{equal:t?.equal})}const qd={};function bn(n,t){if(qd[n]=(qd[n]||0)+1,"function"==typeof t)return Wd(n,(...i)=>({...t(...i),type:n}));switch(t?t._as:"empty"){case"empty":return Wd(n,()=>({type:n}));case"props":return Wd(n,i=>({...i,type:n}));default:throw new Error("Unexpected config.")}}function Wd(n,t){return Object.defineProperty(t,"type",{value:n,writable:!1})}const Rf="@ngrx/store/init";let Mc=(()=>{class n extends $d.t{constructor(){super({type:Rf})}next(e){if("function"==typeof e)throw new TypeError("\n Dispatch expected an object, instead it received a function.\n If you're using the createAction function, make sure to invoke the function\n before dispatching the action. For example, someAction should be someAction().");if(typeof e>"u")throw new TypeError("Actions must be objects");if(typeof e.type>"u")throw new TypeError("Actions must have a type property");super.next(e)}complete(){}ngOnDestroy(){super.complete()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const rC=[Mc],ly=new o.nKC("@ngrx/store Internal Root Guard"),oC=new o.nKC("@ngrx/store Internal Initial State"),cy=new o.nKC("@ngrx/store Initial State"),Pf=new o.nKC("@ngrx/store Reducer Factory"),Ul=new o.nKC("@ngrx/store Internal Reducer Factory Provider"),Of=new o.nKC("@ngrx/store Initial Reducers"),cd=new o.nKC("@ngrx/store Internal Initial Reducers"),Xd=(new o.nKC("@ngrx/store Store Features"),new o.nKC("@ngrx/store Internal Store Reducers")),GA=(new o.nKC("@ngrx/store Internal Feature Reducers"),new o.nKC("@ngrx/store Internal Feature Configs"),new o.nKC("@ngrx/store Internal Store Features"),new o.nKC("@ngrx/store Internal Feature Reducers Token"),new o.nKC("@ngrx/store Feature Reducers"),new o.nKC("@ngrx/store User Provided Meta Reducers")),jA=new o.nKC("@ngrx/store Meta Reducers"),Ha=new o.nKC("@ngrx/store Internal Resolved Meta Reducers"),t_=new o.nKC("@ngrx/store User Runtime Checks Config"),Nf=new o.nKC("@ngrx/store Internal User Runtime Checks Config"),Kd=new o.nKC("@ngrx/store Internal Runtime Checks"),Ec=new o.nKC("@ngrx/store Check if Action types are unique"),ud=new o.nKC("@ngrx/store Root Store Provider"),_o=new o.nKC("@ngrx/store Feature State Provider");function Ea(n,t={}){const e=Object.keys(n),i={};for(let s=0;ss(r),e(t))}}function Hl(n,t){return Array.isArray(t)&&t.length>0&&(n=Vl.apply(null,[...t,n])),(e,i)=>{const r=n(e);return(s,l)=>r(s=void 0===s?i:s,l)}}class fl extends qr.c{}class sh extends Mc{}let Lf=(()=>{class n extends $d.t{get currentReducers(){return this.reducers}constructor(e,i,r,s){super(s(r,i)),this.dispatcher=e,this.initialState=i,this.reducers=r,this.reducerFactory=s}addFeature(e){this.addFeatures([e])}addFeatures(e){const i=e.reduce((r,{reducers:s,reducerFactory:l,metaReducers:u,initialState:f,key:p})=>{const m="function"==typeof s?function oh(n){const t=Array.isArray(n)&&n.length>0?Vl(...n):e=>e;return(e,i)=>(e=t(e),(r,s)=>e(r=void 0===r?i:r,s))}(u)(s,f):Hl(l,u)(s,f);return r[p]=m,r},{});this.addReducers(i)}removeFeature(e){this.removeFeatures([e])}removeFeatures(e){this.removeReducers(e.map(i=>i.key))}addReducer(e,i){this.addReducers({[e]:i})}addReducers(e){this.reducers={...this.reducers,...e},this.updateReducers(Object.keys(e))}removeReducer(e){this.removeReducers([e])}removeReducers(e){e.forEach(i=>{this.reducers=function Yd(n,t){return Object.keys(n).filter(e=>e!==t).reduce((e,i)=>Object.assign(e,{[i]:n[i]}),{})}(this.reducers,i)}),this.updateReducers(e)}updateReducers(e){this.next(this.reducerFactory(this.reducers,this.initialState)),this.dispatcher.next({type:"@ngrx/store/update-reducers",features:e})}ngOnDestroy(){this.complete()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(sh),o.KVO(cy),o.KVO(Of),o.KVO(Pf))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const $A=[Lf,{provide:fl,useExisting:Lf},{provide:sh,useExisting:Mc}];let Sc=(()=>{class n extends mi.B{ngOnDestroy(){this.complete()}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const Zd=[Sc];class fd extends qr.c{}let Vi=(()=>{class n extends $d.t{static{this.INIT=Rf}constructor(e,i,r,s){super(s);const p=e.pipe($s(Mf)).pipe(ul(i)).pipe(function ty(n,t){return(0,Ir.N)(function PA(n,t,e,i,r){return(s,l)=>{let u=e,f=t,p=0;s.subscribe((0,lr._)(l,m=>{const _=p++;f=u?n(f,m,_):(u=!0,m),i&&l.next(f)},r&&(()=>{u&&l.next(f),l.complete()})))}}(n,t,arguments.length>=2,!0))}(sC,{state:s}));this.stateSubscription=p.subscribe(({state:m,action:_})=>{this.next(m),r.next(_)}),this.state=rh(this,{manualCleanup:!0,requireSync:!0})}ngOnDestroy(){this.stateSubscription.unsubscribe(),this.complete()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Mc),o.KVO(fl),o.KVO(Sc),o.KVO(cy))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function sC(n={state:void 0},[t,e]){const{state:i}=n;return{state:e(i,t),action:t}}const dy=[Vi,{provide:fd,useExisting:Vi}];let Yt=(()=>{class n extends qr.c{constructor(e,i,r){super(),this.actionsObserver=i,this.reducerManager=r,this.source=e,this.state=e.state}select(e,...i){return uy.call(null,e,...i)(this)}selectSignal(e,i){return(0,o.EWP)(()=>e(this.state()),i)}lift(e){const i=new n(this,this.actionsObserver,this.reducerManager);return i.operator=e,i}dispatch(e){this.actionsObserver.next(e)}next(e){this.actionsObserver.next(e)}error(e){this.actionsObserver.error(e)}complete(){this.actionsObserver.complete()}addReducer(e,i){this.reducerManager.addReducer(e,i)}removeReducer(e){this.reducerManager.removeReducer(e)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(fd),o.KVO(Mc),o.KVO(Lf))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const aC=[Yt];function uy(n,t,...e){return function(r){let s;if("string"==typeof n){const l=[t,...e].filter(Boolean);s=r.pipe(function ad(...n){const t=n.length;if(0===t)throw new Error("list of properties cannot be empty.");return(0,qn.T)(e=>{let i=e;for(let r=0;rn(l,t)))}return s.pipe(kr())}}const pd="https://ngrx.io/guide/store/configuration/runtime-checks";function hy(n){return void 0===n}function n_(n){return null===n}function qA(n){return Array.isArray(n)}function XA(n){return"object"==typeof n&&null!==n}function o_(n){return"function"==typeof n}function KA(n,t){return n===t}function ah(n,t=KA,e=KA){let s,i=null,r=null;return{memoized:function p(){if(void 0!==s)return s.result;if(!i)return r=n.apply(null,arguments),i=arguments,r;if(!function ps(n,t,e){for(let i=0;il(n));return i.memoized.apply(null,s)}const r=t.map(s=>s(n,e));return i.memoized.apply(null,[...r,e])}function lh(n,t={stateFn:kn}){return function(...e){let i=e;if(Array.isArray(i[0])){const[m,..._]=i;i=[...m,..._]}else 1===i.length&&function Sa(n){return!!n&&"object"==typeof n&&Object.values(n).every(t=>"function"==typeof t)}(i[0])&&(i=function dh(n){const t=Object.values(n),e=Object.keys(n);return[...t,(...r)=>e.reduce((s,l,u)=>({...s,[l]:r[u]}),{})]}(i[0]));const r=i.slice(0,i.length-1),s=i[i.length-1],l=r.filter(m=>m.release&&"function"==typeof m.release),u=n(function(...m){return s.apply(null,m)}),f=ah(function(m,_){return t.stateFn.apply(null,[m,r,_,u])});return Object.assign(f.memoized,{release:function p(){f.reset(),u.reset(),l.forEach(m=>m.release())},projector:u.memoized,setResult:f.setResult,clearResult:f.clearResult})}}function eT(n){return n instanceof o.nKC?(0,o.WQX)(n):n}function Ad(n){return"function"==typeof n?n():n}function gy(n,t){return n.concat(t)}function _y(){if((0,o.WQX)(Yt,{optional:!0,skipSelf:!0}))throw new TypeError("The root Store has been provided more than once. Feature modules should provide feature states instead.");return"guarded"}function Uf(n){Object.freeze(n);const t=o_(n);return Object.getOwnPropertyNames(n).forEach(e=>{if(!e.startsWith("\u0275")&&function lC(n,t){return Object.prototype.hasOwnProperty.call(n,t)}(n,e)&&(!t||"caller"!==e&&"callee"!==e&&"arguments"!==e)){const i=n[e];(XA(i)||o_(i))&&!Object.isFrozen(i)&&Uf(i)}}),n}function a_(n,t=[]){return(hy(n)||n_(n))&&0===t.length?{path:["root"],value:n}:Object.keys(n).reduce((i,r)=>{if(i)return i;const s=n[r];return function s_(n){return o_(n)&&n.hasOwnProperty("\u0275cmp")}(s)?i:!(hy(s)||n_(s)||function i_(n){return"number"==typeof n}(s)||function fy(n){return"boolean"==typeof n}(s)||function WA(n){return"string"==typeof n}(s)||qA(s))&&(function r_(n){if(!function py(n){return XA(n)&&!qA(n)}(n))return!1;const t=Object.getPrototypeOf(n);return t===Object.prototype||null===t}(s)?a_(s,[...t,r]):{path:[...t,r],value:s})},!1)}function io(n,t){if(!1===n)return;const e=n.path.join("."),i=new Error(`Detected unserializable ${t} at "${e}". ${pd}#strict${t}serializability`);throw i.value=n.value,i.unserializablePath=e,i}function Hf(n){return(0,o.naY)()?{strictStateSerializability:!1,strictActionSerializability:!1,strictStateImmutability:!0,strictActionImmutability:!0,strictActionWithinNgZone:!1,strictActionTypeUniqueness:!1,...n}:{strictStateSerializability:!1,strictActionSerializability:!1,strictStateImmutability:!1,strictActionImmutability:!1,strictActionWithinNgZone:!1,strictActionTypeUniqueness:!1}}function vy({strictActionSerializability:n,strictStateSerializability:t}){return e=>n||t?function Vf(n,t){return function(e,i){t.action(i)&&io(a_(i),"action");const r=n(e,i);return t.state()&&io(a_(r),"state"),r}}(e,{action:i=>n&&!uh(i),state:()=>t}):e}function dC({strictActionImmutability:n,strictStateImmutability:t}){return e=>n||t?function cC(n,t){return function(e,i){const r=t.action(i)?Uf(i):i,s=n(e,r);return t.state()?Uf(s):s}}(e,{action:i=>n&&!uh(i),state:()=>t}):e}function uh(n){return n.type.startsWith("@ngrx")}function yy({strictActionWithinNgZone:n}){return t=>n?function by(n,t){return function(e,i){if(t.action(i)&&!o.SKi.isInAngularZone())throw new Error(`Action '${i.type}' running outside NgZone. ${pd}#strictactionwithinngzone`);return n(e,i)}}(t,{action:e=>n&&!uh(e)}):t}function wy(n){return[{provide:Nf,useValue:n},{provide:t_,useFactory:JA,deps:[Nf]},{provide:Kd,deps:[t_],useFactory:Hf},{provide:jA,multi:!0,deps:[Kd],useFactory:dC},{provide:jA,multi:!0,deps:[Kd],useFactory:vy},{provide:jA,multi:!0,deps:[Kd],useFactory:yy}]}function JA(n){return n}function Qa(n){if(!n.strictActionTypeUniqueness)return;const t=Object.entries(qd).filter(([,e])=>e>1).map(([e])=>e);if(t.length)throw new Error(`Action types are registered more than once, ${t.map(e=>`"${e}"`).join(", ")}. ${pd}#strictactiontypeuniqueness`)}function em(n={},t={}){return[{provide:ly,useFactory:_y},{provide:oC,useValue:t.initialState},{provide:cy,useFactory:Ad,deps:[oC]},{provide:cd,useValue:n},{provide:Xd,useExisting:n instanceof o.nKC?n:cd},{provide:Of,deps:[cd,[new o.y_5(Xd)]],useFactory:eT},{provide:GA,useValue:t.metaReducers?t.metaReducers:[]},{provide:Ha,deps:[jA,GA],useFactory:gy},{provide:Ul,useValue:t.reducerFactory?t.reducerFactory:Ea},{provide:Pf,deps:[Ul,Ha],useFactory:Hl},rC,$A,Zd,dy,aC,wy(t.runtimeChecks),[{provide:Ec,multi:!0,deps:[Kd],useFactory:Qa}]]}const uC=[{provide:ud,useFactory:function Tc(){(0,o.WQX)(Mc),(0,o.WQX)(fl),(0,o.WQX)(Sc),(0,o.WQX)(Yt),(0,o.WQX)(ly,{optional:!0}),(0,o.WQX)(Ec,{optional:!0})}},{provide:o.Z63,multi:!0,useFactory:()=>()=>(0,o.WQX)(ud)}];function yn(...n){return{reducer:n.pop(),types:n.map(i=>i.type)}}function Di(n,...t){const e=new Map;for(const i of t)for(const r of i.types){const s=e.get(r);e.set(r,s?(u,f)=>i.reducer(s(u,f),f):i.reducer)}return function(i=n,r){const s=e.get(r.type);return s?s(i,r):i}}const Ic=bn("SET_IS_LOADING_FILE",{_as:"props",_p:void 0}),c_=n=>n.appStatus,md=sn(c_,n=>n.hoveredNodeId);let pl=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-action-icon"]],inputs:{icon:"icon"},standalone:!0,features:[o.aNF],decls:1,vars:2,consts:[["role","button"]],template:function(i,r){1&i&&o.nrm(0,"i",0),2&i&&o.HbH(r.icon)},styles:["[_nghost-%COMP%]{display:inline-flex;align-items:center;cursor:pointer;width:24px;height:24px;border-radius:100%;background-color:#1b9cfc;font-size:14px}[_nghost-%COMP%]:hover{background-color:#0374c9}.disabled[_nghost-%COMP%]{opacity:.5}[_nghost-%COMP%] i[_ngcontent-%COMP%], [_nghost-%COMP%] i.fa[_ngcontent-%COMP%]{margin:auto;line-height:1.5;color:#fff}[_nghost-%COMP%] i.fa-folder-open[_ngcontent-%COMP%], [_nghost-%COMP%] i.fa.fa-folder-open[_ngcontent-%COMP%]{padding-left:1px}"]})}}return n})();const hh=bn("SET_IS_LOADING_MAP",{_as:"props",_p:void 0});var za=function(n){return n.SquarifiedTreeMap="Squarified TreeMap",n.StreetMap="StreetMap",n.TreeMapStreet="TreeMapStreet",n}(za||{}),gd=function(n){return n.Standard="High",n.PixelRatioNoAA="Low",n.PixelRatioFXAA="Medium",n.PixelRatioAA="Best",n}(gd||{}),ts=function(n){return n.FILE="File",n.FOLDER="Folder",n}(ts||{}),_d=function(n){return n.NAME="Name",n.NUMBER_OF_FILES="Number of Files",n}(_d||{}),Fc=function(n){return n.absolute="absolute",n.relative="relative",n}(Fc||{}),Gl=function(n){return n.trueGradient="trueGradient",n.weightedGradient="weightedGradient",n.focusedGradient="focusedGradient",n.absolute="absolute",n}(Gl||{}),jl=function(n){return n.none="none",n.from="from",n.to="to",n.both="both",n}(jl||{});function im(n,t){return t instanceof Map?{dataType:"Map",value:[...t.entries()]}:t instanceof Set?{dataType:"Set",value:[...t]}:t}function Cy(n,t){return"Map"===t?.dataType?new Map(t.value):"Set"===t?.dataType?new Set(t.value):t}function ro(n,t,e){const i=(0,Yr.T)(n)||t||e?{next:n,error:t,complete:e}:n;return i?(0,Ir.N)((r,s)=>{var l;null===(l=i.subscribe)||void 0===l||l.call(i);let u=!0;r.subscribe((0,lr._)(s,f=>{var p;null===(p=i.next)||void 0===p||p.call(i,f),s.next(f)},()=>{var f;u=!1,null===(f=i.complete)||void 0===f||f.call(i),s.complete()},f=>{var p;u=!1,null===(p=i.error)||void 0===p||p.call(i,f),s.error(f)},()=>{var f,p;u&&(null===(f=i.unsubscribe)||void 0===f||f.call(i)),null===(p=i.finalize)||void 0===p||p.call(i)}))}):Ll.D}function M(n){var t,e,i;if(Array.isArray(n)){for(e=Array(t=n.length);t--;)e[t]=(i=n[t])&&"object"==typeof i?M(i):i;return e}if("[object Object]"===Object.prototype.toString.call(n)){for(t in e={},n)"__proto__"===t?Object.defineProperty(e,t,{value:M(n[t]),configurable:!0,enumerable:!0,writable:!0}):e[t]=(i=n[t])&&"object"==typeof i?M(i):i;return e}return n}function C(n){return M(n)}const S=bn("SET_FILES",{_as:"props",_p:void 0}),E=bn("ADD_FILE",{_as:"props",_p:void 0}),N=bn("REMOVE_FILES",{_as:"props",_p:void 0}),$=bn("SET_STANDARD",{_as:"props",_p:void 0}),se=bn("SET_STANDARD_BY_NAMES",{_as:"props",_p:void 0}),xe=bn("SWITCH_REFERENCE_AND_COMPARISON"),ge=bn("SET_DELTA_COMPARISON",{_as:"props",_p:void 0}),Xe=bn("SET_DELTA_REFERENCE",{_as:"props",_p:void 0}),tt=bn("SET_DELTA",{_as:"props",_p:void 0}),mt=[S,E,N,$,se,xe,ge,Xe,tt];var At=function(n){return n.Reference="Reference",n.Comparison="Comparison",n.Partial="Partial",n.None="None",n}(At||{});const wn=n=>n.files,Tn=sn(wn,n=>n.find(t=>t.selectedAs===At.Reference)?.file);function gi(n){return null!=n&&"false"!=`${n}`}function jn(n,t=0){return function ii(n){return!isNaN(parseFloat(n))&&!isNaN(Number(n))}(n)?Number(n):2===arguments.length?t:0}function Fr(n){return Array.isArray(n)?n:[n]}function fi(n){return null==n?"":"string"==typeof n?n:`${n}px`}function Mi(n){return n instanceof o.aKT?n.nativeElement:n}function gr(n,t=0){return(0,Ir.N)((e,i)=>{i.add(n.schedule(()=>e.subscribe(i),t))})}function Ws(n,t){if(!n)throw new Error("Iterable cannot be null");return new qr.c(e=>{js(e,t,()=>{const i=n[Symbol.asyncIterator]();js(e,t,()=>{i.next().then(r=>{r.done?e.complete():e.next(r.value)})},0,!0)})})}function sa(n,t){return t?function Ms(n,t){if(null!=n){if(tC(n))return function yr(n,t){return Rr(n).pipe(gr(t),$s(t))}(n,t);if(xo(n))return function Qo(n,t){return new qr.c(e=>{let i=0;return t.schedule(function(){i===n.length?e.complete():(e.next(n[i++]),e.closed||this.schedule())})})}(n,t);if(FA(n))return function Hi(n,t){return Rr(n).pipe(gr(t),$s(t))}(n,t);if(nC(n))return Ws(n,t);if(Ps(n))return function qs(n,t){return new qr.c(e=>{let i;return js(e,t,()=>{i=n[Z0](),js(e,t,()=>{let r,s;try{({value:r,done:s}=i.next())}catch(l){return void e.error(l)}s?e.complete():e.next(r)},0,!0)}),()=>(0,Yr.T)(i?.return)&&i.return()})}(n,t);if(DA(n))return function zr(n,t){return Ws(Nl(n),t)}(n,t)}throw Y0(n)}(n,t):Rr(n)}function Mo(...n){return sa(n,ih(n))}function Xs(n,t,e=1/0){return(0,Yr.T)(t)?Xs((i,r)=>(0,qn.T)((s,l)=>t(i,s,r,l))(Rr(n(i,r))),e):("number"==typeof t&&(e=t),(0,Ir.N)((i,r)=>function aa(n,t,e,i,r,s,l,u){const f=[];let p=0,m=0,_=!1;const b=()=>{_&&!f.length&&!p&&t.complete()},w=D=>p{s&&t.next(D),p++;let T=!1;Rr(e(D,m++)).subscribe((0,lr._)(t,I=>{r?.(I),s?w(I):t.next(I)},()=>{T=!0},void 0,()=>{if(T)try{for(p--;f.length&&pF(I)):F(I)}b()}catch(I){t.error(I)}}))};return n.subscribe((0,lr._)(t,w,()=>{_=!0,b()})),()=>{u?.()}}(i,r,n,e)))}const{isArray:Dc}=Array;function kc(n){return(0,qn.T)(t=>function Bc(n,t){return Dc(t)?n(...t):n(t)}(n,t))}const Jd=["addListener","removeListener"],bd=["addEventListener","removeEventListener"],eu=["on","off"];function Os(n,t,e,i){if((0,Yr.T)(e)&&(i=e,e=void 0),i)return Os(n,t,e).pipe(kc(i));const[r,s]=function My(n){return(0,Yr.T)(n.addEventListener)&&(0,Yr.T)(n.removeEventListener)}(n)?bd.map(l=>u=>n[l](t,u,e)):function zf(n){return(0,Yr.T)(n.addListener)&&(0,Yr.T)(n.removeListener)}(n)?Jd.map(Rc(n,t)):function fh(n){return(0,Yr.T)(n.on)&&(0,Yr.T)(n.off)}(n)?eu.map(Rc(n,t)):[];if(!r&&xo(n))return Xs(l=>Os(l,t,e))(Rr(n));if(!r)throw new TypeError("Invalid event target");return new qr.c(l=>{const u=(...f)=>l.next(1s(u)})}function Rc(n,t){return e=>i=>n[e](t,i)}const d_={schedule(n){let t=requestAnimationFrame,e=cancelAnimationFrame;const{delegate:i}=d_;i&&(t=i.requestAnimationFrame,e=i.cancelAnimationFrame);const r=t(s=>{e=void 0,n(s)});return new un.yU(()=>e?.(r))},requestAnimationFrame(...n){const{delegate:t}=d_;return(t?.requestAnimationFrame||requestAnimationFrame)(...n)},cancelAnimationFrame(...n){const{delegate:t}=d_;return(t?.cancelAnimationFrame||cancelAnimationFrame)(...n)},delegate:void 0};new class Ey extends cr{flush(t){this._active=!0;const e=this._scheduled;this._scheduled=void 0;const{actions:i}=this;let r;t=t||i.shift();do{if(r=t.execute(t.state,t.delay))break}while((t=i[0])&&t.id===e&&i.shift());if(this._active=!1,r){for(;(t=i[0])&&t.id===e&&i.shift();)t.unsubscribe();throw r}}}(class iT extends Ma{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,i=0){return null!==i&&i>0?super.requestAsyncId(t,e,i):(t.actions.push(this),t._scheduled||(t._scheduled=d_.requestAnimationFrame(()=>t.flush(void 0))))}recycleAsyncId(t,e,i=0){var r;if(null!=i?i>0:this.delay>0)return super.recycleAsyncId(t,e,i);const{actions:s}=t;null!=e&&(null===(r=s[s.length-1])||void 0===r?void 0:r.id)!==e&&(d_.cancelAnimationFrame(e),t._scheduled=void 0)}});let hC,a4=1;const Sy={};function l4(n){return n in Sy&&(delete Sy[n],!0)}const OV={setImmediate(n){const t=a4++;return Sy[t]=!0,hC||(hC=Promise.resolve()),hC.then(()=>l4(t)&&n()),t},clearImmediate(n){l4(n)}},{setImmediate:c4,clearImmediate:pC}=OV,rm={setImmediate(...n){const{delegate:t}=rm;return(t?.setImmediate||c4)(...n)},clearImmediate(n){const{delegate:t}=rm;return(t?.clearImmediate||pC)(n)},delegate:void 0},u_=new class Ty extends cr{flush(t){this._active=!0;const e=this._scheduled;this._scheduled=void 0;const{actions:i}=this;let r;t=t||i.shift();do{if(r=t.execute(t.state,t.delay))break}while((t=i[0])&&t.id===e&&i.shift());if(this._active=!1,r){for(;(t=i[0])&&t.id===e&&i.shift();)t.unsubscribe();throw r}}}(class om extends Ma{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,i=0){return null!==i&&i>0?super.requestAsyncId(t,e,i):(t.actions.push(this),t._scheduled||(t._scheduled=rm.setImmediate(t.flush.bind(t,void 0))))}recycleAsyncId(t,e,i=0){var r;if(null!=i?i>0:this.delay>0)return super.recycleAsyncId(t,e,i);const{actions:s}=t;null!=e&&(null===(r=s[s.length-1])||void 0===r?void 0:r.id)!==e&&(rm.clearImmediate(e),t._scheduled===e&&(t._scheduled=void 0))}}),tu=new cr(Ma),sm=tu;function Gf(n=0,t,e=sm){let i=-1;return null!=t&&(e_(t)?e=t:i=t),new qr.c(r=>{let s=function Fy(n){return n instanceof Date&&!isNaN(n)}(n)?+n-e.now():n;s<0&&(s=0);let l=0;return e.schedule(function(){r.closed||(r.next(l++),0<=i?this.schedule(void 0,i):r.complete())},s)})}function h_(n,t=tu){return function AC(n){return(0,Ir.N)((t,e)=>{let i=!1,r=null,s=null,l=!1;const u=()=>{if(s?.unsubscribe(),s=null,i){i=!1;const p=r;r=null,e.next(p)}l&&e.complete()},f=()=>{s=null,l&&e.complete()};t.subscribe((0,lr._)(e,p=>{i=!0,r=p,s||Rr(n(p)).subscribe(s=(0,lr._)(e,u,f))},()=>{l=!0,(!i||!s||s.closed)&&e.complete()}))})}(()=>Gf(n,t))}function hr(n,t){return(0,Ir.N)((e,i)=>{let r=0;e.subscribe((0,lr._)(i,s=>n.call(t,s,r++)&&i.next(s)))})}function bo(n){return(0,Ir.N)((t,e)=>{Rr(n).subscribe((0,lr._)(e,()=>e.complete(),J0.l)),!e.closed&&t.subscribe(e)})}let jf;try{jf=typeof Intl<"u"&&Intl.v8BreakIterator}catch{jf=!1}let am,Io=(()=>{class n{constructor(e){this._platformId=e,this.isBrowser=this._platformId?function Bx(n){return n===Xu}(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!jf)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(o.Agw))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const rT=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function Dy(){if(am)return am;if("object"!=typeof document||!document)return am=new Set(rT),am;let n=document.createElement("input");return am=new Set(rT.filter(t=>(n.setAttribute("type",t),n.type===t))),am}let lm;function $f(n){return function u4(){if(null==lm&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>lm=!0}))}finally{lm=lm||!1}return lm}()?n:!!n.capture}var Ga=function(n){return n[n.NORMAL=0]="NORMAL",n[n.NEGATED=1]="NEGATED",n[n.INVERTED=2]="INVERTED",n}(Ga||{});let f_,nu,sT;function oT(){if(null==nu){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return nu=!1,nu;if("scrollBehavior"in document.documentElement.style)nu=!0;else{const n=Element.prototype.scrollTo;nu=!!n&&!/\{\s*\[native code\]\s*\}/.test(n.toString())}}return nu}function By(){if("object"!=typeof document||!document)return Ga.NORMAL;if(null==f_){const n=document.createElement("div"),t=n.style;n.dir="rtl",t.width="1px",t.overflow="auto",t.visibility="hidden",t.pointerEvents="none",t.position="absolute";const e=document.createElement("div"),i=e.style;i.width="2px",i.height="1px",n.appendChild(e),document.body.appendChild(n),f_=Ga.NORMAL,0===n.scrollLeft&&(n.scrollLeft=1,f_=0===n.scrollLeft?Ga.NEGATED:Ga.INVERTED),n.remove()}return f_}function qf(){let n=typeof document<"u"&&document?document.activeElement:null;for(;n&&n.shadowRoot;){const t=n.shadowRoot.activeElement;if(t===n)break;n=t}return n}function $l(n){return n.composedPath?n.composedPath()[0]:n.target}function mC(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}const f4=new o.nKC("cdk-dir-doc",{providedIn:"root",factory:function aT(){return(0,o.WQX)(V)}}),gC=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;let Ks=(()=>{class n{constructor(e){this.value="ltr",this.change=new o.bkB,e&&(this.value=function lT(n){const t=n?.toLowerCase()||"";return"auto"===t&&typeof navigator<"u"&&navigator?.language?gC.test(navigator.language)?"rtl":"ltr":"rtl"===t?"rtl":"ltr"}((e.body?e.body.dir:null)||(e.documentElement?e.documentElement.dir:null)||"ltr"))}ngOnDestroy(){this.change.complete()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(f4,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),ph=(()=>{class n{constructor(e,i,r){this._ngZone=e,this._platform=i,this._scrolled=new mi.B,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=r}register(e){this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(()=>this._scrolled.next(e)))}deregister(e){const i=this.scrollContainers.get(e);i&&(i.unsubscribe(),this.scrollContainers.delete(e))}scrolled(e=20){return this._platform.isBrowser?new qr.c(i=>{this._globalSubscription||this._addGlobalListener();const r=e>0?this._scrolled.pipe(h_(e)).subscribe(i):this._scrolled.subscribe(i);return this._scrolledCount++,()=>{r.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Mo()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((e,i)=>this.deregister(i)),this._scrolled.complete()}ancestorScrolled(e,i){const r=this.getAncestorScrollContainers(e);return this.scrolled(i).pipe(hr(s=>!s||r.indexOf(s)>-1))}getAncestorScrollContainers(e){const i=[];return this.scrollContainers.forEach((r,s)=>{this._scrollableContainsElement(s,e)&&i.push(s)}),i}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(e,i){let r=Mi(i),s=e.getElementRef().nativeElement;do{if(r==s)return!0}while(r=r.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>Os(this._getWindow().document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(o.SKi),o.KVO(Io),o.KVO(V,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),b4=(()=>{class n{constructor(e,i,r,s){this.elementRef=e,this.scrollDispatcher=i,this.ngZone=r,this.dir=s,this._destroyed=new mi.B,this._elementScrolled=new qr.c(l=>this.ngZone.runOutsideAngular(()=>Os(this.elementRef.nativeElement,"scroll").pipe(bo(this._destroyed)).subscribe(l)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(e){const i=this.elementRef.nativeElement,r=this.dir&&"rtl"==this.dir.value;null==e.left&&(e.left=r?e.end:e.start),null==e.right&&(e.right=r?e.start:e.end),null!=e.bottom&&(e.top=i.scrollHeight-i.clientHeight-e.bottom),r&&By()!=Ga.NORMAL?(null!=e.left&&(e.right=i.scrollWidth-i.clientWidth-e.left),By()==Ga.INVERTED?e.left=e.right:By()==Ga.NEGATED&&(e.left=e.right?-e.right:e.right)):null!=e.right&&(e.left=i.scrollWidth-i.clientWidth-e.right),this._applyScrollToOptions(e)}_applyScrollToOptions(e){const i=this.elementRef.nativeElement;oT()?i.scrollTo(e):(null!=e.top&&(i.scrollTop=e.top),null!=e.left&&(i.scrollLeft=e.left))}measureScrollOffset(e){const i="left",r="right",s=this.elementRef.nativeElement;if("top"==e)return s.scrollTop;if("bottom"==e)return s.scrollHeight-s.clientHeight-s.scrollTop;const l=this.dir&&"rtl"==this.dir.value;return"start"==e?e=l?r:i:"end"==e&&(e=l?i:r),l&&By()==Ga.INVERTED?e==i?s.scrollWidth-s.clientWidth-s.scrollLeft:s.scrollLeft:l&&By()==Ga.NEGATED?e==i?s.scrollLeft+s.scrollWidth-s.clientWidth:-s.scrollLeft:e==i?s.scrollLeft:s.scrollWidth-s.clientWidth-s.scrollLeft}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(ph),o.rXU(o.SKi),o.rXU(Ks,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]],standalone:!0})}}return n})(),dT=(()=>{class n{constructor(e,i,r){this._platform=e,this._change=new mi.B,this._changeListener=s=>{this._change.next(s)},this._document=r,i.runOutsideAngular(()=>{if(e.isBrowser){const s=this._getWindow();s.addEventListener("resize",this._changeListener),s.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const e=this._getWindow();e.removeEventListener("resize",this._changeListener),e.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();const e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}getViewportRect(){const e=this.getViewportScrollPosition(),{width:i,height:r}=this.getViewportSize();return{top:e.top,left:e.left,bottom:e.top+r,right:e.left+i,height:r,width:i}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const e=this._document,i=this._getWindow(),r=e.documentElement,s=r.getBoundingClientRect();return{top:-s.top||e.body.scrollTop||i.scrollY||r.scrollTop||0,left:-s.left||e.body.scrollLeft||i.scrollX||r.scrollLeft||0}}change(e=20){return e>0?this._change.pipe(h_(e)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){const e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Io),o.KVO(o.SKi),o.KVO(V,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();class hT{attach(t){return this._attachedHost=t,t.attach(this)}detach(){let t=this._attachedHost;null!=t&&(this._attachedHost=null,t.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class cm extends hT{constructor(t,e,i,r,s){super(),this.component=t,this.viewContainerRef=e,this.injector=i,this.componentFactoryResolver=r,this.projectableNodes=s}}class A_ extends hT{constructor(t,e,i,r){super(),this.templateRef=t,this.viewContainerRef=e,this.context=i,this.injector=r}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class M4 extends hT{constructor(t){super(),this.element=t instanceof o.aKT?t.nativeElement:t}}class wC{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(t){return t instanceof cm?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof A_?(this._attachedPortal=t,this.attachTemplatePortal(t)):this.attachDomPortal&&t instanceof M4?(this._attachedPortal=t,this.attachDomPortal(t)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class xC extends wC{constructor(t,e,i,r,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=i,this._defaultInjector=r,this.attachDomPortal=l=>{const u=l.element,f=this._document.createComment("dom-portal");u.parentNode.insertBefore(f,u),this.outletElement.appendChild(u),this._attachedPortal=l,super.setDisposeFn(()=>{f.parentNode&&f.parentNode.replaceChild(u,f)})},this._document=s}attachComponentPortal(t){const i=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let r;return t.viewContainerRef?(r=t.viewContainerRef.createComponent(i,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector,t.projectableNodes||void 0),this.setDisposeFn(()=>r.destroy())):(r=i.create(t.injector||this._defaultInjector||o.zZn.NULL),this._appRef.attachView(r.hostView),this.setDisposeFn(()=>{this._appRef.viewCount>0&&this._appRef.detachView(r.hostView),r.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(r)),this._attachedPortal=t,r}attachTemplatePortal(t){let e=t.viewContainerRef,i=e.createEmbeddedView(t.templateRef,t.context,{injector:t.injector});return i.rootNodes.forEach(r=>this.outletElement.appendChild(r)),i.detectChanges(),this.setDisposeFn(()=>{let r=e.indexOf(i);-1!==r&&e.remove(r)}),this._attachedPortal=t,i}dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}let m_=(()=>{class n extends wC{constructor(e,i,r){super(),this._componentFactoryResolver=e,this._viewContainerRef=i,this._isInitialized=!1,this.attached=new o.bkB,this.attachDomPortal=s=>{const l=s.element,u=this._document.createComment("dom-portal");s.setAttachedHost(this),l.parentNode.insertBefore(u,l),this._getRootNode().appendChild(l),this._attachedPortal=s,super.setDisposeFn(()=>{u.parentNode&&u.parentNode.replaceChild(l,u)})},this._document=r}get portal(){return this._attachedPortal}set portal(e){this.hasAttached()&&!e&&!this._isInitialized||(this.hasAttached()&&super.detach(),e&&super.attach(e),this._attachedPortal=e||null)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(e){e.setAttachedHost(this);const i=null!=e.viewContainerRef?e.viewContainerRef:this._viewContainerRef,s=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component),l=i.createComponent(s,i.length,e.injector||i.injector,e.projectableNodes||void 0);return i!==this._viewContainerRef&&this._getRootNode().appendChild(l.hostView.rootNodes[0]),super.setDisposeFn(()=>l.destroy()),this._attachedPortal=e,this._attachedRef=l,this.attached.emit(l),l}attachTemplatePortal(e){e.setAttachedHost(this);const i=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context,{injector:e.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=e,this._attachedRef=i,this.attached.emit(i),i}_getRootNode(){const e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.OM3),o.rXU(o.c1b),o.rXU(V))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:[0,"cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],standalone:!0,features:[o.Vt3]})}}return n})();function T4(n=1/0){return Xs(Ll.D,n)}const gh=new qr.c(n=>n.complete());function ql(...n){const t=ih(n),e=function ey(n,t){return"number"==typeof Ff(n)?n.pop():t}(n,1/0),i=n;return i.length?1===i.length?Rr(i[0]):T4(e)(sa(i,t)):gh}function Kl(n,...t){return t.length?t.some(e=>n[e]):n.altKey||n.shiftKey||n.ctrlKey||n.metaKey}const BC=oT();class lO{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=fi(-this._previousScrollPosition.left),t.style.top=fi(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,i=t.style,r=this._document.body.style,s=i.scrollBehavior||"",l=r.scrollBehavior||"";this._isEnabled=!1,i.left=this._previousHTMLStyles.left,i.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),BC&&(i.scrollBehavior=r.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),BC&&(i.scrollBehavior=s,r.scrollBehavior=l)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const e=this._document.body,i=this._viewportRuler.getViewportSize();return e.scrollHeight>i.height||e.scrollWidth>i.width}}class Kf{constructor(t,e,i,r){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=i,this._config=r,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(t){this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0).pipe(hr(e=>!e||!this._overlayRef.overlayElement.contains(e.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const e=this._viewportRuler.getViewportScrollPosition().top;Math.abs(e-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class Ly{enable(){}disable(){}attach(){}}function Yf(n,t){return t.some(e=>n.bottome.bottom||n.righte.right)}function RC(n,t){return t.some(e=>n.tope.bottom||n.lefte.right)}class PC{constructor(t,e,i,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=i,this._config=r,this._scrollSubscription=null}attach(t){this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const e=this._overlayRef.overlayElement.getBoundingClientRect(),{width:i,height:r}=this._viewportRuler.getViewportSize();Yf(e,[{width:i,height:r,bottom:r,right:i,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let OC=(()=>{class n{constructor(e,i,r,s){this._scrollDispatcher=e,this._viewportRuler=i,this._ngZone=r,this.noop=()=>new Ly,this.close=l=>new Kf(this._scrollDispatcher,this._ngZone,this._viewportRuler,l),this.block=()=>new lO(this._viewportRuler,this._document),this.reposition=l=>new PC(this._scrollDispatcher,this._viewportRuler,this._ngZone,l),this._document=s}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(ph),o.KVO(dT),o.KVO(o.SKi),o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();class gm{constructor(t){if(this.scrollStrategy=new Ly,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t){const e=Object.keys(t);for(const i of e)void 0!==t[i]&&(this[i]=t[i])}}}class dO{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}let NC=(()=>{class n{constructor(e){this._attachedOverlays=[],this._document=e}ngOnDestroy(){this.detach()}add(e){this.remove(e),this._attachedOverlays.push(e)}remove(e){const i=this._attachedOverlays.indexOf(e);i>-1&&this._attachedOverlays.splice(i,1),0===this._attachedOverlays.length&&this.detach()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),uO=(()=>{class n extends NC{constructor(e,i){super(e),this._ngZone=i,this._keydownListener=r=>{const s=this._attachedOverlays;for(let l=s.length-1;l>-1;l--)if(s[l]._keydownEvents.observers.length>0){const u=s[l]._keydownEvents;this._ngZone?this._ngZone.run(()=>u.next(r)):u.next(r);break}}}add(e){super.add(e),this._isAttached||(this._ngZone?this._ngZone.runOutsideAngular(()=>this._document.body.addEventListener("keydown",this._keydownListener)):this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(o.SKi,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),hO=(()=>{class n extends NC{constructor(e,i,r){super(e),this._platform=i,this._ngZone=r,this._cursorStyleIsSet=!1,this._pointerDownListener=s=>{this._pointerDownEventTarget=$l(s)},this._clickListener=s=>{const l=$l(s),u="click"===s.type&&this._pointerDownEventTarget?this._pointerDownEventTarget:l;this._pointerDownEventTarget=null;const f=this._attachedOverlays.slice();for(let p=f.length-1;p>-1;p--){const m=f[p];if(m._outsidePointerEvents.observers.length<1||!m.hasAttached())continue;if(FT(m.overlayElement,l)||FT(m.overlayElement,u))break;const _=m._outsidePointerEvents;this._ngZone?this._ngZone.run(()=>_.next(s)):_.next(s)}}}add(e){if(super.add(e),!this._isAttached){const i=this._document.body;this._ngZone?this._ngZone.runOutsideAngular(()=>this._addEventListeners(i)):this._addEventListeners(i),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=i.style.cursor,i.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const e=this._document.body;e.removeEventListener("pointerdown",this._pointerDownListener,!0),e.removeEventListener("click",this._clickListener,!0),e.removeEventListener("auxclick",this._clickListener,!0),e.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(e.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}_addEventListeners(e){e.addEventListener("pointerdown",this._pointerDownListener,!0),e.addEventListener("click",this._clickListener,!0),e.addEventListener("auxclick",this._clickListener,!0),e.addEventListener("contextmenu",this._clickListener,!0)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(Io),o.KVO(o.SKi,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function FT(n,t){const e=typeof ShadowRoot<"u"&&ShadowRoot;let i=t;for(;i;){if(i===n)return!0;i=e&&i instanceof ShadowRoot?i.host:i.parentNode}return!1}let Uy=(()=>{class n{constructor(e,i){this._platform=i,this._document=e}ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const e="cdk-overlay-container";if(this._platform.isBrowser||mC()){const r=this._document.querySelectorAll(`.${e}[platform="server"], .${e}[platform="test"]`);for(let s=0;sthis._backdropClick.next(b),this._backdropTransitionendHandler=b=>{this._disposeBackdrop(b.target)},this._keydownEvents=new mi.B,this._outsidePointerEvents=new mi.B,this._renders=new mi.B,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.positionStrategy,this._afterRenderRef=(0,o.O8t)(()=>(0,o.Tzd)(()=>{this._renders.next()},{injector:this._injector}))}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host);const e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._afterNextRenderRef?.destroy(),this._afterNextRenderRef=(0,o.mal)(()=>{this.hasAttached()&&this.updatePosition()},{injector:this._injector}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),"function"==typeof e?.onDestroy&&e.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenEmpty(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),t}dispose(){const t=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._disposeBackdrop(this._backdropElement),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._afterNextRenderRef?.destroy(),this._previousHostParent=this._pane=this._host=null,t&&this._detachments.next(),this._detachments.complete(),this._afterRenderRef.destroy(),this._renders.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config={...this._config,...t},this._updateElementSize()}setDirection(t){this._config={...this._config,direction:t},this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const t=this._pane.style;t.width=fi(this._config.width),t.height=fi(this._config.height),t.minWidth=fi(this._config.minWidth),t.minHeight=fi(this._config.minHeight),t.maxWidth=fi(this._config.maxWidth),t.maxHeight=fi(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"":"none"}_attachBackdrop(){const t="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._animationsDisabled&&this._backdropElement.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(t)})}):this._backdropElement.classList.add(t)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){const t=this._backdropElement;if(t){if(this._animationsDisabled)return void this._disposeBackdrop(t);t.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{t.addEventListener("transitionend",this._backdropTransitionendHandler)}),t.style.pointerEvents="none",this._backdropTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(()=>{this._disposeBackdrop(t)},500))}}_toggleClasses(t,e,i){const r=Fr(e||[]).filter(s=>!!s);r.length&&(i?t.classList.add(...r):t.classList.remove(...r))}_detachContentWhenEmpty(){this._ngZone.runOutsideAngular(()=>{const t=this._renders.pipe(bo(ql(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}_disposeBackdrop(t){t&&(t.removeEventListener("click",this._backdropClickHandler),t.removeEventListener("transitionend",this._backdropTransitionendHandler),t.remove(),this._backdropElement===t&&(this._backdropElement=null)),this._backdropTimeout&&(clearTimeout(this._backdropTimeout),this._backdropTimeout=void 0)}}const LC="cdk-overlay-connected-position-bounding-box",fO=/([A-Za-z%]+)$/;class pO{get positions(){return this._preferredPositions}constructor(t,e,i,r,s){this._viewportRuler=e,this._document=i,this._platform=r,this._overlayContainer=s,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new mi.B,this._resizeSubscription=un.yU.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(t)}attach(t){this._validatePositions(),t.hostElement.classList.add(LC),this._overlayRef=t,this._boundingBox=t.hostElement,this._pane=t.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const t=this._originRect,e=this._overlayRect,i=this._viewportRect,r=this._containerRect,s=[];let l;for(let u of this._preferredPositions){let f=this._getOriginPoint(t,r,u),p=this._getOverlayPoint(f,e,u),m=this._getOverlayFit(p,e,i,u);if(m.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(u,f);this._canFitWithFlexibleDimensions(m,p,i)?s.push({position:u,origin:f,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(f,u)}):(!l||l.overlayFit.visibleAreaf&&(f=m,u=p)}return this._isPushed=!1,void this._applyPosition(u.position,u.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(l.position,l.originPoint);this._applyPosition(l.position,l.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&As(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(LC),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;const t=this._lastPosition;if(t){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const e=this._getOriginPoint(this._originRect,this._containerRect,t);this._applyPosition(t,e)}else this.apply()}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e,i){let r,s;if("center"==i.originX)r=t.left+t.width/2;else{const l=this._isRtl()?t.right:t.left,u=this._isRtl()?t.left:t.right;r="start"==i.originX?l:u}return e.left<0&&(r-=e.left),s="center"==i.originY?t.top+t.height/2:"top"==i.originY?t.top:t.bottom,e.top<0&&(s-=e.top),{x:r,y:s}}_getOverlayPoint(t,e,i){let r,s;return r="center"==i.overlayX?-e.width/2:"start"===i.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,s="center"==i.overlayY?-e.height/2:"top"==i.overlayY?0:-e.height,{x:t.x+r,y:t.y+s}}_getOverlayFit(t,e,i,r){const s=BT(e);let{x:l,y:u}=t,f=this._getOffset(r,"x"),p=this._getOffset(r,"y");f&&(l+=f),p&&(u+=p);let b=0-u,w=u+s.height-i.height,F=this._subtractOverflows(s.width,0-l,l+s.width-i.width),D=this._subtractOverflows(s.height,b,w),T=F*D;return{visibleArea:T,isCompletelyWithinViewport:s.width*s.height===T,fitsInViewportVertically:D===s.height,fitsInViewportHorizontally:F==s.width}}_canFitWithFlexibleDimensions(t,e,i){if(this._hasFlexibleDimensions){const r=i.bottom-e.y,s=i.right-e.x,l=DT(this._overlayRef.getConfig().minHeight),u=DT(this._overlayRef.getConfig().minWidth);return(t.fitsInViewportVertically||null!=l&&l<=r)&&(t.fitsInViewportHorizontally||null!=u&&u<=s)}return!1}_pushOverlayOnScreen(t,e,i){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const r=BT(e),s=this._viewportRect,l=Math.max(t.x+r.width-s.width,0),u=Math.max(t.y+r.height-s.height,0),f=Math.max(s.top-i.top-t.y,0),p=Math.max(s.left-i.left-t.x,0);let m=0,_=0;return m=r.width<=s.width?p||-l:t.xF&&!this._isInitialRender&&!this._growAfterOpen&&(l=t.y-F/2)}if("end"===e.overlayX&&!r||"start"===e.overlayX&&r)b=i.width-t.x+2*this._viewportMargin,m=t.x-this._viewportMargin;else if("start"===e.overlayX&&!r||"end"===e.overlayX&&r)_=t.x,m=i.right-t.x;else{const w=Math.min(i.right-t.x+i.left,t.x),F=this._lastBoundingBoxSize.width;m=2*w,_=t.x-w,m>F&&!this._isInitialRender&&!this._growAfterOpen&&(_=t.x-F/2)}return{top:l,left:_,bottom:u,right:b,width:m,height:s}}_setBoundingBoxStyles(t,e){const i=this._calculateBoundingBoxRect(t,e);!this._isInitialRender&&!this._growAfterOpen&&(i.height=Math.min(i.height,this._lastBoundingBoxSize.height),i.width=Math.min(i.width,this._lastBoundingBoxSize.width));const r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right=r.maxHeight=r.maxWidth="",r.width=r.height="100%";else{const s=this._overlayRef.getConfig().maxHeight,l=this._overlayRef.getConfig().maxWidth;r.height=fi(i.height),r.top=fi(i.top),r.bottom=fi(i.bottom),r.width=fi(i.width),r.left=fi(i.left),r.right=fi(i.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",s&&(r.maxHeight=fi(s)),l&&(r.maxWidth=fi(l))}this._lastBoundingBoxSize=i,As(this._boundingBox.style,r)}_resetBoundingBoxStyles(){As(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){As(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const i={},r=this._hasExactPosition(),s=this._hasFlexibleDimensions,l=this._overlayRef.getConfig();if(r){const m=this._viewportRuler.getViewportScrollPosition();As(i,this._getExactOverlayY(e,t,m)),As(i,this._getExactOverlayX(e,t,m))}else i.position="static";let u="",f=this._getOffset(e,"x"),p=this._getOffset(e,"y");f&&(u+=`translateX(${f}px) `),p&&(u+=`translateY(${p}px)`),i.transform=u.trim(),l.maxHeight&&(r?i.maxHeight=fi(l.maxHeight):s&&(i.maxHeight="")),l.maxWidth&&(r?i.maxWidth=fi(l.maxWidth):s&&(i.maxWidth="")),As(this._pane.style,i)}_getExactOverlayY(t,e,i){let r={top:"",bottom:""},s=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(s=this._pushOverlayOnScreen(s,this._overlayRect,i)),"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(s.y+this._overlayRect.height)+"px":r.top=fi(s.y),r}_getExactOverlayX(t,e,i){let l,r={left:"",right:""},s=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(s=this._pushOverlayOnScreen(s,this._overlayRect,i)),l=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left","right"===l?r.right=this._document.documentElement.clientWidth-(s.x+this._overlayRect.width)+"px":r.left=fi(s.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),i=this._scrollables.map(r=>r.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:RC(t,i),isOriginOutsideView:Yf(t,i),isOverlayClipped:RC(e,i),isOverlayOutsideView:Yf(e,i)}}_subtractOverflows(t,...e){return e.reduce((i,r)=>i-Math.max(r,0),t)}_getNarrowedViewportRect(){const t=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,i=this._viewportRuler.getViewportScrollPosition();return{top:i.top+this._viewportMargin,left:i.left+this._viewportMargin,right:i.left+t-this._viewportMargin,bottom:i.top+e-this._viewportMargin,width:t-2*this._viewportMargin,height:e-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){}_addPanelClasses(t){this._pane&&Fr(t).forEach(e=>{""!==e&&-1===this._appliedPanelClasses.indexOf(e)&&(this._appliedPanelClasses.push(e),this._pane.classList.add(e))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;if(t instanceof o.aKT)return t.nativeElement.getBoundingClientRect();if(t instanceof Element)return t.getBoundingClientRect();const e=t.width||0,i=t.height||0;return{top:t.y,bottom:t.y+i,left:t.x,right:t.x+e,height:i,width:e}}}function As(n,t){for(let e in t)t.hasOwnProperty(e)&&(n[e]=t[e]);return n}function DT(n){if("number"!=typeof n&&null!=n){const[t,e]=n.split(fO);return e&&"px"!==e?null:parseFloat(t)}return n||null}function BT(n){return{top:Math.floor(n.top),right:Math.floor(n.right),bottom:Math.floor(n.bottom),left:Math.floor(n.left),width:Math.floor(n.width),height:Math.floor(n.height)}}const RT="cdk-global-overlay-wrapper";class mO{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._alignItems="",this._xPosition="",this._xOffset="",this._width="",this._height="",this._isDisposed=!1}attach(t){const e=t.getConfig();this._overlayRef=t,this._width&&!e.width&&t.updateSize({width:this._width}),this._height&&!e.height&&t.updateSize({height:this._height}),t.hostElement.classList.add(RT),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._xOffset=t,this._xPosition="left",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._xOffset=t,this._xPosition="right",this}start(t=""){return this._xOffset=t,this._xPosition="start",this}end(t=""){return this._xOffset=t,this._xPosition="end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._xPosition="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,i=this._overlayRef.getConfig(),{width:r,height:s,maxWidth:l,maxHeight:u}=i,f=!("100%"!==r&&"100vw"!==r||l&&"100%"!==l&&"100vw"!==l),p=!("100%"!==s&&"100vh"!==s||u&&"100%"!==u&&"100vh"!==u),m=this._xPosition,_=this._xOffset,b="rtl"===this._overlayRef.getConfig().direction;let w="",F="",D="";f?D="flex-start":"center"===m?(D="center",b?F=_:w=_):b?"left"===m||"end"===m?(D="flex-end",w=_):("right"===m||"start"===m)&&(D="flex-start",F=_):"left"===m||"start"===m?(D="flex-start",w=_):("right"===m||"end"===m)&&(D="flex-end",F=_),t.position=this._cssPosition,t.marginLeft=f?"0":w,t.marginTop=p?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=f?"0":F,e.justifyContent=D,e.alignItems=p?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,i=e.style;e.classList.remove(RT),i.justifyContent=i.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}let gO=(()=>{class n{constructor(e,i,r,s){this._viewportRuler=e,this._document=i,this._platform=r,this._overlayContainer=s}global(){return new mO}flexibleConnectedTo(e){return new pO(e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(dT),o.KVO(V),o.KVO(Io),o.KVO(Uy))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),PT=0,Ns=(()=>{class n{constructor(e,i,r,s,l,u,f,p,m,_,b,w){this.scrollStrategies=e,this._overlayContainer=i,this._componentFactoryResolver=r,this._positionBuilder=s,this._keyboardDispatcher=l,this._injector=u,this._ngZone=f,this._document=p,this._directionality=m,this._location=_,this._outsideClickDispatcher=b,this._animationsModuleType=w}create(e){const i=this._createHostElement(),r=this._createPaneElement(i),s=this._createPortalOutlet(r),l=new gm(e);return l.direction=l.direction||this._directionality.value,new y_(s,i,r,l,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher,"NoopAnimations"===this._animationsModuleType,this._injector.get(o.uvJ))}position(){return this._positionBuilder}_createPaneElement(e){const i=this._document.createElement("div");return i.id="cdk-overlay-"+PT++,i.classList.add("cdk-overlay-pane"),e.appendChild(i),i}_createHostElement(){const e=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(e),e}_createPortalOutlet(e){return this._appRef||(this._appRef=this._injector.get(o.o8S)),new xC(e,this._componentFactoryResolver,this._appRef,this._injector,this._document)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(OC),o.KVO(Uy),o.KVO(o.OM3),o.KVO(gO),o.KVO(uO),o.KVO(o.zZn),o.KVO(o.SKi),o.KVO(V),o.KVO(Ks),o.KVO(Ne),o.KVO(hO),o.KVO(o.bc$,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const _O=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Vy=new o.nKC("cdk-connected-overlay-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.reposition()}});let Hy=(()=>{class n{constructor(e){this.elementRef=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"],standalone:!0})}}return n})(),OT=(()=>{class n{get offsetX(){return this._offsetX}set offsetX(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}get disposeOnNavigation(){return this._disposeOnNavigation}set disposeOnNavigation(e){this._disposeOnNavigation=e}constructor(e,i,r,s,l){this._overlay=e,this._dir=l,this._backdropSubscription=un.yU.EMPTY,this._attachSubscription=un.yU.EMPTY,this._detachSubscription=un.yU.EMPTY,this._positionSubscription=un.yU.EMPTY,this._disposeOnNavigation=!1,this._ngZone=(0,o.WQX)(o.SKi),this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.hasBackdrop=!1,this.lockPosition=!1,this.flexibleDimensions=!1,this.growAfterOpen=!1,this.push=!1,this.backdropClick=new o.bkB,this.positionChange=new o.bkB,this.attach=new o.bkB,this.detach=new o.bkB,this.overlayKeydown=new o.bkB,this.overlayOutsideClick=new o.bkB,this._templatePortal=new A_(i,r),this._scrollStrategyFactory=s,this.scrollStrategy=this._scrollStrategyFactory()}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=_O);const e=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=e.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=e.detachments().subscribe(()=>this.detach.emit()),e.keydownEvents().subscribe(i=>{this.overlayKeydown.next(i),27===i.keyCode&&!this.disableClose&&!Kl(i)&&(i.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(i=>{const r=this._getOriginElement(),s=$l(i);(!r||r!==s&&!r.contains(s))&&this.overlayOutsideClick.next(i)})}_buildConfig(){const e=this._position=this.positionStrategy||this._createPositionStrategy(),i=new gm({direction:this._dir,positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop,disposeOnNavigation:this.disposeOnNavigation});return(this.width||0===this.width)&&(i.width=this.width),(this.height||0===this.height)&&(i.height=this.height),(this.minWidth||0===this.minWidth)&&(i.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(i.minHeight=this.minHeight),this.backdropClass&&(i.backdropClass=this.backdropClass),this.panelClass&&(i.panelClass=this.panelClass),i}_updatePositionStrategy(e){const i=this.positions.map(r=>({originX:r.originX,originY:r.originY,overlayX:r.overlayX,overlayY:r.overlayY,offsetX:r.offsetX||this.offsetX,offsetY:r.offsetY||this.offsetY,panelClass:r.panelClass||void 0}));return e.setOrigin(this._getOrigin()).withPositions(i).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const e=this._overlay.position().flexibleConnectedTo(this._getOrigin());return this._updatePositionStrategy(e),e}_getOrigin(){return this.origin instanceof Hy?this.origin.elementRef:this.origin}_getOriginElement(){return this.origin instanceof Hy?this.origin.elementRef.nativeElement:this.origin instanceof o.aKT?this.origin.nativeElement:typeof Element<"u"&&this.origin instanceof Element?this.origin:null}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(e=>{this.backdropClick.emit(e)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(function Ah(n,t=!1){return(0,Ir.N)((e,i)=>{let r=0;e.subscribe((0,lr._)(i,s=>{const l=n(s,r++);(l||t)&&i.next(s),!l&&i.complete()}))})}(()=>this.positionChange.observers.length>0)).subscribe(e=>{this._ngZone.run(()=>this.positionChange.emit(e)),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Ns),o.rXU(o.C4Q),o.rXU(o.c1b),o.rXU(Vy),o.rXU(Ks,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:[0,"cdkConnectedOverlayOrigin","origin"],positions:[0,"cdkConnectedOverlayPositions","positions"],positionStrategy:[0,"cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:[0,"cdkConnectedOverlayOffsetX","offsetX"],offsetY:[0,"cdkConnectedOverlayOffsetY","offsetY"],width:[0,"cdkConnectedOverlayWidth","width"],height:[0,"cdkConnectedOverlayHeight","height"],minWidth:[0,"cdkConnectedOverlayMinWidth","minWidth"],minHeight:[0,"cdkConnectedOverlayMinHeight","minHeight"],backdropClass:[0,"cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:[0,"cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:[0,"cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:[0,"cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:[0,"cdkConnectedOverlayOpen","open"],disableClose:[0,"cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:[0,"cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:[2,"cdkConnectedOverlayHasBackdrop","hasBackdrop",o.L39],lockPosition:[2,"cdkConnectedOverlayLockPosition","lockPosition",o.L39],flexibleDimensions:[2,"cdkConnectedOverlayFlexibleDimensions","flexibleDimensions",o.L39],growAfterOpen:[2,"cdkConnectedOverlayGrowAfterOpen","growAfterOpen",o.L39],push:[2,"cdkConnectedOverlayPush","push",o.L39],disposeOnNavigation:[2,"cdkConnectedOverlayDisposeOnNavigation","disposeOnNavigation",o.L39]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],standalone:!0,features:[o.GFd,o.OA$]})}}return n})();function x_(n,t=tu){return(0,Ir.N)((e,i)=>{let r=null,s=null,l=null;const u=()=>{if(r){r.unsubscribe(),r=null;const p=s;s=null,i.next(p)}};function f(){const p=l+n,m=t.now();if(m{s=p,l=t.now(),r||(r=t.schedule(f,n),i.add(r))},()=>{u(),i.complete()},void 0,()=>{s=r=null}))})}function ms(n){return n<=0?()=>gh:(0,Ir.N)((t,e)=>{let i=0;t.subscribe((0,lr._)(e,r=>{++i<=n&&(e.next(r),n<=i&&e.complete())}))})}function C_(n){return hr((t,e)=>n<=e)}function Qy(n,t,e){const i=E_(n,t);e=e.trim(),!i.some(r=>r.trim()===e)&&(i.push(e),n.setAttribute(t,i.join(" ")))}function NT(n,t,e){const i=E_(n,t);e=e.trim();const r=i.filter(s=>s!==e);r.length?n.setAttribute(t,r.join(" ")):n.removeAttribute(t)}function E_(n,t){return n.getAttribute(t)?.match(/\S+/g)??[]}const VC="cdk-describedby-message",Zf="cdk-describedby-host";let S_=0,ru=(()=>{class n{constructor(e,i){this._platform=i,this._messageRegistry=new Map,this._messagesContainer=null,this._id=""+S_++,this._document=e,this._id=(0,o.WQX)(o.sZ2)+"-"+S_++}describe(e,i,r){if(!this._canBeDescribed(e,i))return;const s=HC(i,r);"string"!=typeof i?(LT(i,this._id),this._messageRegistry.set(s,{messageElement:i,referenceCount:0})):this._messageRegistry.has(s)||this._createMessageElement(i,r),this._isElementDescribedByMessage(e,s)||this._addMessageReference(e,s)}removeDescription(e,i,r){if(!i||!this._isElementNode(e))return;const s=HC(i,r);if(this._isElementDescribedByMessage(e,s)&&this._removeMessageReference(e,s),"string"==typeof i){const l=this._messageRegistry.get(s);l&&0===l.referenceCount&&this._deleteMessageElement(s)}0===this._messagesContainer?.childNodes.length&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){const e=this._document.querySelectorAll(`[${Zf}="${this._id}"]`);for(let i=0;i0!=r.indexOf(VC));e.setAttribute("aria-describedby",i.join(" "))}_addMessageReference(e,i){const r=this._messageRegistry.get(i);Qy(e,"aria-describedby",r.messageElement.id),e.setAttribute(Zf,this._id),r.referenceCount++}_removeMessageReference(e,i){const r=this._messageRegistry.get(i);r.referenceCount--,NT(e,"aria-describedby",r.messageElement.id),e.removeAttribute(Zf)}_isElementDescribedByMessage(e,i){const r=E_(e,"aria-describedby"),s=this._messageRegistry.get(i),l=s&&s.messageElement.id;return!!l&&-1!=r.indexOf(l)}_canBeDescribed(e,i){if(!this._isElementNode(e))return!1;if(i&&"object"==typeof i)return!0;const r=null==i?"":`${i}`.trim(),s=e.getAttribute("aria-label");return!(!r||s&&s.trim()===r)}_isElementNode(e){return e.nodeType===this._document.ELEMENT_NODE}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(Io))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function HC(n,t){return"string"==typeof n?`${t||""}/${n}`:n}function LT(n,t){n.id||(n.id=`${VC}-${t}-${S_++}`)}class UT{constructor(t,e){this._letterKeyStream=new mi.B,this._items=[],this._selectedItemIndex=-1,this._pressedLetters=[],this._selectedItem=new mi.B,this.selectedItem=this._selectedItem;const i="number"==typeof e?.debounceInterval?e.debounceInterval:200;e?.skipPredicate&&(this._skipPredicateFn=e.skipPredicate),this.setItems(t),this._setupKeyHandler(i)}destroy(){this._pressedLetters=[],this._letterKeyStream.complete(),this._selectedItem.complete()}setCurrentSelectedItemIndex(t){this._selectedItemIndex=t}setItems(t){this._items=t}handleKey(t){const e=t.keyCode;t.key&&1===t.key.length?this._letterKeyStream.next(t.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))}isTyping(){return this._pressedLetters.length>0}reset(){this._pressedLetters=[]}_setupKeyHandler(t){this._letterKeyStream.pipe(ro(e=>this._pressedLetters.push(e)),x_(t),hr(()=>this._pressedLetters.length>0),(0,qn.T)(()=>this._pressedLetters.join("").toLocaleUpperCase())).subscribe(e=>{for(let i=1;ii.disabled,this.tabOut=new mi.B,this.change=new mi.B,t instanceof o.rOR?this._itemChangesSubscription=t.changes.subscribe(i=>this._itemsChanged(i.toArray())):(0,o.Hps)(t)&&(this._effectRef=(0,o.QZP)(()=>this._itemsChanged(t()),{injector:e}))}skipPredicate(t){return this._skipPredicateFn=t,this}withWrap(t=!0){return this._wrap=t,this}withVerticalOrientation(t=!0){return this._vertical=t,this}withHorizontalOrientation(t){return this._horizontal=t,this}withAllowedModifierKeys(t){return this._allowedModifierKeys=t,this}withTypeAhead(t=200){this._typeaheadSubscription.unsubscribe();const e=this._getItemsArray();return this._typeahead=new UT(e,{debounceInterval:"number"==typeof t?t:void 0,skipPredicate:i=>this._skipPredicateFn(i)}),this._typeaheadSubscription=this._typeahead.selectedItem.subscribe(i=>{this.setActiveItem(i)}),this}cancelTypeahead(){return this._typeahead?.reset(),this}withHomeAndEnd(t=!0){return this._homeAndEnd=t,this}withPageUpDown(t=!0,e=10){return this._pageUpAndDown={enabled:t,delta:e},this}setActiveItem(t){const e=this._activeItem;this.updateActiveItem(t),this._activeItem!==e&&this.change.next(this._activeItemIndex)}onKeydown(t){const e=t.keyCode,r=["altKey","ctrlKey","metaKey","shiftKey"].every(s=>!t[s]||this._allowedModifierKeys.indexOf(s)>-1);switch(e){case 9:return void this.tabOut.next();case 40:if(this._vertical&&r){this.setNextItemActive();break}return;case 38:if(this._vertical&&r){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&r){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&r){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&r){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&r){this.setLastItemActive();break}return;case 33:if(this._pageUpAndDown.enabled&&r){const s=this._activeItemIndex-this._pageUpAndDown.delta;this._setActiveItemByIndex(s>0?s:0,1);break}return;case 34:if(this._pageUpAndDown.enabled&&r){const s=this._activeItemIndex+this._pageUpAndDown.delta,l=this._getItemsArray().length;this._setActiveItemByIndex(s-1&&e!==this._activeItemIndex&&(this._activeItemIndex=e,this._typeahead?.setCurrentSelectedItemIndex(e))}}}class VT extends Jf{setActiveItem(t){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(t),this.activeItem&&this.activeItem.setActiveStyles()}}class ou extends Jf{constructor(){super(...arguments),this._origin="program"}setFocusOrigin(t){return this._origin=t,this}setActiveItem(t){super.setActiveItem(t),this.activeItem&&this.activeItem.focus(this._origin)}}let zC=(()=>{class n{constructor(e){this._platform=e}isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return function CO(n){return!!(n.offsetWidth||n.offsetHeight||"function"==typeof n.getClientRects&&n.getClientRects().length)}(e)&&"visible"===getComputedStyle(e).visibility}isTabbable(e){if(!this._platform.isBrowser)return!1;const i=function xO(n){try{return n.frameElement}catch{return null}}(function jT(n){return n.ownerDocument&&n.ownerDocument.defaultView||window}(e));if(i&&(-1===GC(i)||!this.isVisible(i)))return!1;let r=e.nodeName.toLowerCase(),s=GC(e);return e.hasAttribute("contenteditable")?-1!==s:!("iframe"===r||"object"===r||this._platform.WEBKIT&&this._platform.IOS&&!function SO(n){let t=n.nodeName.toLowerCase(),e="input"===t&&n.type;return"text"===e||"password"===e||"select"===t||"textarea"===t}(e))&&("audio"===r?!!e.hasAttribute("controls")&&-1!==s:"video"===r?-1!==s&&(null!==s||this._platform.FIREFOX||e.hasAttribute("controls")):e.tabIndex>=0)}isFocusable(e,i){return function TO(n){return!function MO(n){return function EO(n){return"input"==n.nodeName.toLowerCase()}(n)&&"hidden"==n.type}(n)&&(function QT(n){let t=n.nodeName.toLowerCase();return"input"===t||"select"===t||"button"===t||"textarea"===t}(n)||function Gy(n){return function zT(n){return"a"==n.nodeName.toLowerCase()}(n)&&n.hasAttribute("href")}(n)||n.hasAttribute("contenteditable")||GT(n))}(e)&&!this.isDisabled(e)&&(i?.ignoreVisibility||this.isVisible(e))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Io))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function GT(n){if(!n.hasAttribute("tabindex")||void 0===n.tabIndex)return!1;let t=n.getAttribute("tabindex");return!(!t||isNaN(parseInt(t,10)))}function GC(n){if(!GT(n))return null;const t=parseInt(n.getAttribute("tabindex")||"",10);return isNaN(t)?-1:t}class jy{get enabled(){return this._enabled}set enabled(t){this._enabled=t,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}constructor(t,e,i,r,s=!1,l){this._element=t,this._checker=e,this._ngZone=i,this._document=r,this._injector=l,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,s||this.attachAnchors()}destroy(){const t=this._startAnchor,e=this._endAnchor;t&&(t.removeEventListener("focus",this.startAnchorListener),t.remove()),e&&(e.removeEventListener("focus",this.endAnchorListener),e.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(t)))})}focusFirstTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(t)))})}focusLastTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(t)))})}_getRegionBoundary(t){const e=this._element.querySelectorAll(`[cdk-focus-region-${t}], [cdkFocusRegion${t}], [cdk-focus-${t}]`);return"start"==t?e.length?e[0]:this._getFirstTabbableElement(this._element):e.length?e[e.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(t){const e=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(e){if(!this._checker.isFocusable(e)){const i=this._getFirstTabbableElement(e);return i?.focus(t),!!i}return e.focus(t),!0}return this.focusFirstTabbableElement(t)}focusFirstTabbableElement(t){const e=this._getRegionBoundary("start");return e&&e.focus(t),!!e}focusLastTabbableElement(t){const e=this._getRegionBoundary("end");return e&&e.focus(t),!!e}hasAttached(){return this._hasAttached}_getFirstTabbableElement(t){if(this._checker.isFocusable(t)&&this._checker.isTabbable(t))return t;const e=t.children;for(let i=0;i=0;i--){const r=e[i].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[i]):null;if(r)return r}return null}_createAnchor(){const t=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,t),t.classList.add("cdk-visually-hidden"),t.classList.add("cdk-focus-trap-anchor"),t.setAttribute("aria-hidden","true"),t}_toggleAnchorTabIndex(t,e){t?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(t){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}_executeOnStable(t){this._injector?(0,o.mal)(t,{injector:this._injector}):setTimeout(t)}}let jC=(()=>{class n{constructor(e,i,r){this._checker=e,this._ngZone=i,this._injector=(0,o.WQX)(o.zZn),this._document=r}create(e,i=!1){return new jy(e,this._checker,this._ngZone,this._document,i,this._injector)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(zC),o.KVO(o.SKi),o.KVO(V))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function vm(n){return 0===n.buttons||0===n.detail}function T_(n){const t=n.touches&&n.touches[0]||n.changedTouches&&n.changedTouches[0];return!(!t||-1!==t.identifier||null!=t.radiusX&&1!==t.radiusX||null!=t.radiusY&&1!==t.radiusY)}const IO=new o.nKC("cdk-input-modality-detector-options"),BH={ignoreKeys:[18,17,224,91,16]},ym=$f({passive:!0,capture:!0});let DO=(()=>{class n{get mostRecentModality(){return this._modality.value}constructor(e,i,r,s){this._platform=e,this._mostRecentTarget=null,this._modality=new $d.t(null),this._lastTouchMs=0,this._onKeydown=l=>{this._options?.ignoreKeys?.some(u=>u===l.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=$l(l))},this._onMousedown=l=>{Date.now()-this._lastTouchMs<650||(this._modality.next(vm(l)?"keyboard":"mouse"),this._mostRecentTarget=$l(l))},this._onTouchstart=l=>{T_(l)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=$l(l))},this._options={...BH,...s},this.modalityDetected=this._modality.pipe(C_(1)),this.modalityChanged=this.modalityDetected.pipe(kr()),e.isBrowser&&i.runOutsideAngular(()=>{r.addEventListener("keydown",this._onKeydown,ym),r.addEventListener("mousedown",this._onMousedown,ym),r.addEventListener("touchstart",this._onTouchstart,ym)})}ngOnDestroy(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,ym),document.removeEventListener("mousedown",this._onMousedown,ym),document.removeEventListener("touchstart",this._onTouchstart,ym))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Io),o.KVO(o.SKi),o.KVO(V),o.KVO(IO,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const kH=new o.nKC("liveAnnouncerElement",{providedIn:"root",factory:function BO(){return null}}),RH=new o.nKC("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let kO=0,RO=(()=>{class n{constructor(e,i,r,s){this._ngZone=i,this._defaultOptions=s,this._document=r,this._liveElement=e||this._createLiveElement()}announce(e,...i){const r=this._defaultOptions;let s,l;return 1===i.length&&"number"==typeof i[0]?l=i[0]:[s,l]=i,this.clear(),clearTimeout(this._previousTimeout),s||(s=r&&r.politeness?r.politeness:"polite"),null==l&&r&&(l=r.duration),this._liveElement.setAttribute("aria-live",s),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(u=>this._currentResolve=u)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=e,"number"==typeof l&&(this._previousTimeout=setTimeout(()=>this.clear(),l)),this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){const e="cdk-live-announcer-element",i=this._document.getElementsByClassName(e),r=this._document.createElement("div");for(let s=0;s .cdk-overlay-container [aria-modal="true"]');for(let r=0;r{class n{constructor(e,i,r,s,l){this._ngZone=e,this._platform=i,this._inputModalityDetector=r,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=window.setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new mi.B,this._rootNodeFocusAndBlurListener=u=>{for(let p=$l(u);p;p=p.parentElement)"focus"===u.type?this._onFocus(u,p):this._onBlur(u,p)},this._document=s,this._detectionMode=l?.detectionMode||wm.IMMEDIATE}monitor(e,i=!1){const r=Mi(e);if(!this._platform.isBrowser||1!==r.nodeType)return Mo();const s=function h4(n){if(function p_(){if(null==sT){const n=typeof document<"u"?document.head:null;sT=!(!n||!n.createShadowRoot&&!n.attachShadow)}return sT}()){const t=n.getRootNode?n.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&t instanceof ShadowRoot)return t}return null}(r)||this._getDocument(),l=this._elementInfo.get(r);if(l)return i&&(l.checkChildren=!0),l.subject;const u={checkChildren:i,subject:new mi.B,rootNode:s};return this._elementInfo.set(r,u),this._registerGlobalListeners(u),u.subject}stopMonitoring(e){const i=Mi(e),r=this._elementInfo.get(i);r&&(r.subject.complete(),this._setClasses(i),this._elementInfo.delete(i),this._removeGlobalListeners(r))}focusVia(e,i,r){const s=Mi(e);s===this._getDocument().activeElement?this._getClosestElementsInfo(s).forEach(([u,f])=>this._originChanged(u,i,f)):(this._setOrigin(i),"function"==typeof s.focus&&s.focus(r))}ngOnDestroy(){this._elementInfo.forEach((e,i)=>this.stopMonitoring(i))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_getFocusOrigin(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:e&&this._isLastInteractionFromInputLabel(e)?"mouse":"program"}_shouldBeAttributedToTouch(e){return this._detectionMode===wm.EVENTUAL||!!e?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(e,i){e.classList.toggle("cdk-focused",!!i),e.classList.toggle("cdk-touch-focused","touch"===i),e.classList.toggle("cdk-keyboard-focused","keyboard"===i),e.classList.toggle("cdk-mouse-focused","mouse"===i),e.classList.toggle("cdk-program-focused","program"===i)}_setOrigin(e,i=!1){this._ngZone.runOutsideAngular(()=>{this._origin=e,this._originFromTouchInteraction="touch"===e&&i,this._detectionMode===wm.IMMEDIATE&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(e,i){const r=this._elementInfo.get(i),s=$l(e);!r||!r.checkChildren&&i!==s||this._originChanged(i,this._getFocusOrigin(s),r)}_onBlur(e,i){const r=this._elementInfo.get(i);!r||r.checkChildren&&e.relatedTarget instanceof Node&&i.contains(e.relatedTarget)||(this._setClasses(i),this._emitOrigin(r,null))}_emitOrigin(e,i){e.subject.observers.length&&this._ngZone.run(()=>e.subject.next(i))}_registerGlobalListeners(e){if(!this._platform.isBrowser)return;const i=e.rootNode,r=this._rootNodeFocusListenerCount.get(i)||0;r||this._ngZone.runOutsideAngular(()=>{i.addEventListener("focus",this._rootNodeFocusAndBlurListener,xm),i.addEventListener("blur",this._rootNodeFocusAndBlurListener,xm)}),this._rootNodeFocusListenerCount.set(i,r+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(bo(this._stopInputModalityDetector)).subscribe(s=>{this._setOrigin(s,!0)}))}_removeGlobalListeners(e){const i=e.rootNode;if(this._rootNodeFocusListenerCount.has(i)){const r=this._rootNodeFocusListenerCount.get(i);r>1?this._rootNodeFocusListenerCount.set(i,r-1):(i.removeEventListener("focus",this._rootNodeFocusAndBlurListener,xm),i.removeEventListener("blur",this._rootNodeFocusAndBlurListener,xm),this._rootNodeFocusListenerCount.delete(i))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(e,i,r){this._setClasses(e,i),this._emitOrigin(r,i),this._lastFocusOrigin=i}_getClosestElementsInfo(e){const i=[];return this._elementInfo.forEach((r,s)=>{(s===e||r.checkChildren&&s.contains(e))&&i.push([s,r])}),i}_isLastInteractionFromInputLabel(e){const{_mostRecentTarget:i,mostRecentModality:r}=this._inputModalityDetector;if("mouse"!==r||!i||i===e||"INPUT"!==e.nodeName&&"TEXTAREA"!==e.nodeName||e.disabled)return!1;const s=e.labels;if(s)for(let l=0;l{Rr(n()).subscribe(t)})}function $C(...n){return function $T(){return T4(1)}()(sa(n,ih(n)))}function su(...n){const t=ih(n);return(0,Ir.N)((e,i)=>{(t?$C(n,e,t):$C(n,e)).subscribe(i)})}function UO(n,t){}class _h{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.ariaModal=!0,this.autoFocus="first-tabbable",this.restoreFocus=!0,this.closeOnNavigation=!0,this.closeOnDestroy=!0,this.closeOnOverlayDetachments=!0}}let qT=(()=>{class n extends wC{constructor(e,i,r,s,l,u,f,p){super(),this._elementRef=e,this._focusTrapFactory=i,this._config=s,this._interactivityChecker=l,this._ngZone=u,this._overlayRef=f,this._focusMonitor=p,this._platform=(0,o.WQX)(Io),this._focusTrap=null,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this._ariaLabelledByQueue=[],this._changeDetectorRef=(0,o.WQX)(o.gRc),this._injector=(0,o.WQX)(o.zZn),this._isDestroyed=!1,this.attachDomPortal=m=>{this._portalOutlet.hasAttached();const _=this._portalOutlet.attachDomPortal(m);return this._contentAttached(),_},this._document=r,this._config.ariaLabelledBy&&this._ariaLabelledByQueue.push(this._config.ariaLabelledBy)}_addAriaLabelledBy(e){this._ariaLabelledByQueue.push(e),this._changeDetectorRef.markForCheck()}_removeAriaLabelledBy(e){const i=this._ariaLabelledByQueue.indexOf(e);i>-1&&(this._ariaLabelledByQueue.splice(i,1),this._changeDetectorRef.markForCheck())}_contentAttached(){this._initializeFocusTrap(),this._handleBackdropClicks(),this._captureInitialFocus()}_captureInitialFocus(){this._trapFocus()}ngOnDestroy(){this._isDestroyed=!0,this._restoreFocus()}attachComponentPortal(e){this._portalOutlet.hasAttached();const i=this._portalOutlet.attachComponentPortal(e);return this._contentAttached(),i}attachTemplatePortal(e){this._portalOutlet.hasAttached();const i=this._portalOutlet.attachTemplatePortal(e);return this._contentAttached(),i}_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(e,i){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{const r=()=>{e.removeEventListener("blur",r),e.removeEventListener("mousedown",r),e.removeAttribute("tabindex")};e.addEventListener("blur",r),e.addEventListener("mousedown",r)})),e.focus(i)}_focusByCssSelector(e,i){let r=this._elementRef.nativeElement.querySelector(e);r&&this._forceFocus(r,i)}_trapFocus(){this._isDestroyed||(0,o.mal)(()=>{const e=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||e.focus();break;case!0:case"first-tabbable":this._focusTrap?.focusInitialElement()||this._focusDialogContainer();break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this._config.autoFocus)}},{injector:this._injector})}_restoreFocus(){const e=this._config.restoreFocus;let i=null;if("string"==typeof e?i=this._document.querySelector(e):"boolean"==typeof e?i=e?this._elementFocusedBeforeDialogWasOpened:null:e&&(i=e),this._config.restoreFocus&&i&&"function"==typeof i.focus){const r=qf(),s=this._elementRef.nativeElement;(!r||r===this._document.body||r===s||s.contains(r))&&(this._focusMonitor?(this._focusMonitor.focusVia(i,this._closeInteractionType),this._closeInteractionType=null):i.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const e=this._elementRef.nativeElement,i=qf();return e===i||e.contains(i)}_initializeFocusTrap(){this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=qf()))}_handleBackdropClicks(){this._overlayRef.backdropClick().subscribe(()=>{this._config.disableClose&&this._recaptureFocus()})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(jC),o.rXU(V,8),o.rXU(_h),o.rXU(zC),o.rXU(o.SKi),o.rXU(y_),o.rXU(Yl))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cdk-dialog-container"]],viewQuery:function(i,r){if(1&i&&o.GBs(m_,7),2&i){let s;o.mGM(s=o.lsd())&&(r._portalOutlet=s.first)}},hostAttrs:["tabindex","-1",1,"cdk-dialog-container"],hostVars:6,hostBindings:function(i,r){2&i&&o.BMQ("id",r._config.id||null)("role",r._config.role)("aria-modal",r._config.ariaModal)("aria-labelledby",r._config.ariaLabel?null:r._ariaLabelledByQueue[0])("aria-label",r._config.ariaLabel)("aria-describedby",r._config.ariaDescribedBy||null)},standalone:!0,features:[o.Vt3,o.aNF],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(i,r){1&i&&o.DNE(0,UO,0,0,"ng-template",0)},dependencies:[m_],styles:[".cdk-dialog-container{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}"],encapsulation:2})}}return n})();class qC{constructor(t,e){this.overlayRef=t,this.config=e,this.closed=new mi.B,this.disableClose=e.disableClose,this.backdropClick=t.backdropClick(),this.keydownEvents=t.keydownEvents(),this.outsidePointerEvents=t.outsidePointerEvents(),this.id=e.id,this.keydownEvents.subscribe(i=>{27===i.keyCode&&!this.disableClose&&!Kl(i)&&(i.preventDefault(),this.close(void 0,{focusOrigin:"keyboard"}))}),this.backdropClick.subscribe(()=>{this.disableClose||this.close(void 0,{focusOrigin:"mouse"})}),this._detachSubscription=t.detachments().subscribe(()=>{!1!==e.closeOnOverlayDetachments&&this.close()})}close(t,e){if(this.containerInstance){const i=this.closed;this.containerInstance._closeInteractionType=e?.focusOrigin||"program",this._detachSubscription.unsubscribe(),this.overlayRef.dispose(),i.next(t),i.complete(),this.componentInstance=this.containerInstance=null}}updatePosition(){return this.overlayRef.updatePosition(),this}updateSize(t="",e=""){return this.overlayRef.updateSize({width:t,height:e}),this}addPanelClass(t){return this.overlayRef.addPanelClass(t),this}removePanelClass(t){return this.overlayRef.removePanelClass(t),this}}const D_=new o.nKC("DialogScrollStrategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.block()}}),WT=new o.nKC("DialogData"),XT=new o.nKC("DefaultDialogConfig");let YT=0,WC=(()=>{class n{get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}constructor(e,i,r,s,l,u){this._overlay=e,this._injector=i,this._defaultOptions=r,this._parentDialog=s,this._overlayContainer=l,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new mi.B,this._afterOpenedAtThisLevel=new mi.B,this._ariaHiddenElements=new Map,this.afterAllClosed=Ky(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(su(void 0))),this._scrollStrategy=u}open(e,i){(i={...this._defaultOptions||new _h,...i}).id=i.id||"cdk-dialog-"+YT++,i.id&&this.getDialogById(i.id);const s=this._getOverlayConfig(i),l=this._overlay.create(s),u=new qC(l,i),f=this._attachContainer(l,u,i);return u.containerInstance=f,this._attachDialogContent(e,u,f,i),this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(u),u.closed.subscribe(()=>this._removeOpenDialog(u,!0)),this.afterOpened.next(u),u}closeAll(){Cm(this.openDialogs,e=>e.close())}getDialogById(e){return this.openDialogs.find(i=>i.id===e)}ngOnDestroy(){Cm(this._openDialogsAtThisLevel,e=>{!1===e.config.closeOnDestroy&&this._removeOpenDialog(e,!1)}),Cm(this._openDialogsAtThisLevel,e=>e.close()),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._openDialogsAtThisLevel=[]}_getOverlayConfig(e){const i=new gm({positionStrategy:e.positionStrategy||this._overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,width:e.width,height:e.height,disposeOnNavigation:e.closeOnNavigation});return e.backdropClass&&(i.backdropClass=e.backdropClass),i}_attachContainer(e,i,r){const s=r.injector||r.viewContainerRef?.injector,l=[{provide:_h,useValue:r},{provide:qC,useValue:i},{provide:y_,useValue:e}];let u;r.container?"function"==typeof r.container?u=r.container:(u=r.container.type,l.push(...r.container.providers(r))):u=qT;const f=new cm(u,r.viewContainerRef,o.zZn.create({parent:s||this._injector,providers:l}),r.componentFactoryResolver);return e.attach(f).instance}_attachDialogContent(e,i,r,s){if(e instanceof o.C4Q){const l=this._createInjector(s,i,r,void 0);let u={$implicit:s.data,dialogRef:i};s.templateContext&&(u={...u,..."function"==typeof s.templateContext?s.templateContext():s.templateContext}),r.attachTemplatePortal(new A_(e,null,u,l))}else{const l=this._createInjector(s,i,r,this._injector),u=r.attachComponentPortal(new cm(e,s.viewContainerRef,l,s.componentFactoryResolver));i.componentRef=u,i.componentInstance=u.instance}}_createInjector(e,i,r,s){const l=e.injector||e.viewContainerRef?.injector,u=[{provide:WT,useValue:e.data},{provide:qC,useValue:i}];return e.providers&&("function"==typeof e.providers?u.push(...e.providers(i,e,r)):u.push(...e.providers)),e.direction&&(!l||!l.get(Ks,null,{optional:!0}))&&u.push({provide:Ks,useValue:{value:e.direction,change:Mo()}}),o.zZn.create({parent:l||s,providers:u})}_removeOpenDialog(e,i){const r=this.openDialogs.indexOf(e);r>-1&&(this.openDialogs.splice(r,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((s,l)=>{s?l.setAttribute("aria-hidden",s):l.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),i&&this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const e=this._overlayContainer.getContainerElement();if(e.parentElement){const i=e.parentElement.children;for(let r=i.length-1;r>-1;r--){const s=i[r];s!==e&&"SCRIPT"!==s.nodeName&&"STYLE"!==s.nodeName&&!s.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(s,s.getAttribute("aria-hidden")),s.setAttribute("aria-hidden","true"))}}}_getAfterAllClosed(){const e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Ns),o.KVO(o.zZn),o.KVO(XT,8),o.KVO(n,12),o.KVO(Uy),o.KVO(D_))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function Cm(n,t){let e=n.length;for(;e--;)t(n[e])}var Nn=v(9969);function VO(n,t){}class XC{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.ariaModal=!0,this.autoFocus="first-tabbable",this.restoreFocus=!0,this.delayFocusTrap=!0,this.closeOnNavigation=!0}}const KC="mdc-dialog--open",ZT="mdc-dialog--opening",Yy="mdc-dialog--closing";let YC=(()=>{class n extends qT{constructor(e,i,r,s,l,u,f,p,m){super(e,i,r,s,l,u,f,m),this._animationMode=p,this._animationStateChanged=new o.bkB,this._animationsEnabled="NoopAnimations"!==this._animationMode,this._actionSectionCount=0,this._hostElement=this._elementRef.nativeElement,this._enterAnimationDuration=this._animationsEnabled?Mm(this._config.enterAnimationDuration)??150:0,this._exitAnimationDuration=this._animationsEnabled?Mm(this._config.exitAnimationDuration)??75:0,this._animationTimer=null,this._finishDialogOpen=()=>{this._clearAnimationClasses(),this._openAnimationDone(this._enterAnimationDuration)},this._finishDialogClose=()=>{this._clearAnimationClasses(),this._animationStateChanged.emit({state:"closed",totalTime:this._exitAnimationDuration})}}_contentAttached(){super._contentAttached(),this._startOpenAnimation()}_startOpenAnimation(){this._animationStateChanged.emit({state:"opening",totalTime:this._enterAnimationDuration}),this._animationsEnabled?(this._hostElement.style.setProperty(eI,`${this._enterAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(ZT,KC)),this._waitForAnimationToComplete(this._enterAnimationDuration,this._finishDialogOpen)):(this._hostElement.classList.add(KC),Promise.resolve().then(()=>this._finishDialogOpen()))}_startExitAnimation(){this._animationStateChanged.emit({state:"closing",totalTime:this._exitAnimationDuration}),this._hostElement.classList.remove(KC),this._animationsEnabled?(this._hostElement.style.setProperty(eI,`${this._exitAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Yy)),this._waitForAnimationToComplete(this._exitAnimationDuration,this._finishDialogClose)):Promise.resolve().then(()=>this._finishDialogClose())}_updateActionSectionCount(e){this._actionSectionCount+=e,this._changeDetectorRef.markForCheck()}_clearAnimationClasses(){this._hostElement.classList.remove(ZT,Yy)}_waitForAnimationToComplete(e,i){null!==this._animationTimer&&clearTimeout(this._animationTimer),this._animationTimer=setTimeout(i,e)}_requestAnimationFrame(e){this._ngZone.runOutsideAngular(()=>{"function"==typeof requestAnimationFrame?requestAnimationFrame(e):e()})}_captureInitialFocus(){this._config.delayFocusTrap||this._trapFocus()}_openAnimationDone(e){this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})}ngOnDestroy(){super.ngOnDestroy(),null!==this._animationTimer&&clearTimeout(this._animationTimer)}attachComponentPortal(e){const i=super.attachComponentPortal(e);return i.location.nativeElement.classList.add("mat-mdc-dialog-component-host"),i}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(jC),o.rXU(V,8),o.rXU(XC),o.rXU(zC),o.rXU(o.SKi),o.rXU(y_),o.rXU(o.bc$,8),o.rXU(Yl))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1",1,"mat-mdc-dialog-container","mdc-dialog"],hostVars:10,hostBindings:function(i,r){2&i&&(o.Mr5("id",r._config.id),o.BMQ("aria-modal",r._config.ariaModal)("role",r._config.role)("aria-labelledby",r._config.ariaLabel?null:r._ariaLabelledByQueue[0])("aria-label",r._config.ariaLabel)("aria-describedby",r._config.ariaDescribedBy||null),o.AVh("_mat-animation-noopable",!r._animationsEnabled)("mat-mdc-dialog-container-with-actions",r._actionSectionCount>0))},standalone:!0,features:[o.Vt3,o.aNF],decls:3,vars:0,consts:[[1,"mat-mdc-dialog-inner-container","mdc-dialog__container"],[1,"mat-mdc-dialog-surface","mdc-dialog__surface"],["cdkPortalOutlet",""]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"div",1),o.DNE(2,VO,0,0,"ng-template",2),o.k0s()())},dependencies:[m_],styles:['.mat-mdc-dialog-container{width:100%;height:100%;display:block;box-sizing:border-box;max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit;outline:0}.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:var(--mat-dialog-container-max-width, 80vw);min-width:var(--mat-dialog-container-min-width, 0)}@media(max-width: 599px){.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:var(--mat-dialog-container-small-max-width, 80vw)}}.mat-mdc-dialog-inner-container{display:flex;flex-direction:row;align-items:center;justify-content:space-around;box-sizing:border-box;height:100%;opacity:0;transition:opacity linear var(--mat-dialog-transition-duration, 0ms);max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit}.mdc-dialog--closing .mat-mdc-dialog-inner-container{transition:opacity 75ms linear;transform:none}.mdc-dialog--open .mat-mdc-dialog-inner-container{opacity:1}._mat-animation-noopable .mat-mdc-dialog-inner-container{transition:none}.mat-mdc-dialog-surface{display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;box-sizing:border-box;width:100%;height:100%;position:relative;overflow-y:auto;outline:0;transform:scale(0.8);transition:transform var(--mat-dialog-transition-duration, 0ms) cubic-bezier(0, 0, 0.2, 1);max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit;box-shadow:var(--mat-dialog-container-elevation-shadow, 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12));border-radius:var(--mdc-dialog-container-shape, var(--mat-app-corner-extra-large, 4px));background-color:var(--mdc-dialog-container-color, var(--mat-app-surface, white))}[dir=rtl] .mat-mdc-dialog-surface{text-align:right}.mdc-dialog--open .mat-mdc-dialog-surface,.mdc-dialog--closing .mat-mdc-dialog-surface{transform:none}._mat-animation-noopable .mat-mdc-dialog-surface{transition:none}.mat-mdc-dialog-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:2px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mat-mdc-dialog-title{display:block;position:relative;flex-shrink:0;box-sizing:border-box;margin:0 0 1px;padding:var(--mat-dialog-headline-padding, 0 24px 9px)}.mat-mdc-dialog-title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}[dir=rtl] .mat-mdc-dialog-title{text-align:right}.mat-mdc-dialog-container .mat-mdc-dialog-title{color:var(--mdc-dialog-subhead-color, var(--mat-app-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mdc-dialog-subhead-font, var(--mat-app-headline-small-font, inherit));line-height:var(--mdc-dialog-subhead-line-height, var(--mat-app-headline-small-line-height, 1.5rem));font-size:var(--mdc-dialog-subhead-size, var(--mat-app-headline-small-size, 1rem));font-weight:var(--mdc-dialog-subhead-weight, var(--mat-app-headline-small-weight, 400));letter-spacing:var(--mdc-dialog-subhead-tracking, var(--mat-app-headline-small-tracking, 0.03125em))}.mat-mdc-dialog-content{display:block;flex-grow:1;box-sizing:border-box;margin:0;overflow:auto;max-height:65vh}.mat-mdc-dialog-content>:first-child{margin-top:0}.mat-mdc-dialog-content>:last-child{margin-bottom:0}.mat-mdc-dialog-container .mat-mdc-dialog-content{color:var(--mdc-dialog-supporting-text-color, var(--mat-app-on-surface-variant, rgba(0, 0, 0, 0.6)));font-family:var(--mdc-dialog-supporting-text-font, var(--mat-app-body-medium-font, inherit));line-height:var(--mdc-dialog-supporting-text-line-height, var(--mat-app-body-medium-line-height, 1.5rem));font-size:var(--mdc-dialog-supporting-text-size, var(--mat-app-body-medium-size, 1rem));font-weight:var(--mdc-dialog-supporting-text-weight, var(--mat-app-body-medium-weight, 400));letter-spacing:var(--mdc-dialog-supporting-text-tracking, var(--mat-app-body-medium-tracking, 0.03125em))}.mat-mdc-dialog-container .mat-mdc-dialog-content{padding:var(--mat-dialog-content-padding, 20px 24px)}.mat-mdc-dialog-container-with-actions .mat-mdc-dialog-content{padding:var(--mat-dialog-with-actions-content-padding, 20px 24px)}.mat-mdc-dialog-container .mat-mdc-dialog-title+.mat-mdc-dialog-content{padding-top:0}.mat-mdc-dialog-actions{display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid rgba(0,0,0,0);padding:var(--mat-dialog-actions-padding, 8px);justify-content:var(--mat-dialog-actions-alignment, start)}.cdk-high-contrast-active .mat-mdc-dialog-actions{border-top-color:CanvasText}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-start,.mat-mdc-dialog-actions[align=start]{justify-content:start}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-center,.mat-mdc-dialog-actions[align=center]{justify-content:center}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-end,.mat-mdc-dialog-actions[align=end]{justify-content:flex-end}.mat-mdc-dialog-actions .mat-button-base+.mat-button-base,.mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-mdc-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}.mat-mdc-dialog-component-host{display:contents}'],encapsulation:2})}}return n})();const eI="--mat-dialog-transition-duration";function Mm(n){return null==n?null:"number"==typeof n?n:n.endsWith("ms")?jn(n.substring(0,n.length-2)):n.endsWith("s")?1e3*jn(n.substring(0,n.length-1)):"0"===n?0:null}var ep=function(n){return n[n.OPEN=0]="OPEN",n[n.CLOSING=1]="CLOSING",n[n.CLOSED=2]="CLOSED",n}(ep||{});class tI{constructor(t,e,i){this._ref=t,this._containerInstance=i,this._afterOpened=new mi.B,this._beforeClosed=new mi.B,this._state=ep.OPEN,this.disableClose=e.disableClose,this.id=t.id,t.addPanelClass("mat-mdc-dialog-panel"),i._animationStateChanged.pipe(hr(r=>"opened"===r.state),ms(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),i._animationStateChanged.pipe(hr(r=>"closed"===r.state),ms(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),t.overlayRef.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._finishDialogClose()}),ql(this.backdropClick(),this.keydownEvents().pipe(hr(r=>27===r.keyCode&&!this.disableClose&&!Kl(r)))).subscribe(r=>{this.disableClose||(r.preventDefault(),nI(this,"keydown"===r.type?"keyboard":"mouse"))})}close(t){this._result=t,this._containerInstance._animationStateChanged.pipe(hr(e=>"closing"===e.state),ms(1)).subscribe(e=>{this._beforeClosed.next(t),this._beforeClosed.complete(),this._ref.overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),e.totalTime+100)}),this._state=ep.CLOSING,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._ref.closed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._ref.backdropClick}keydownEvents(){return this._ref.keydownEvents}updatePosition(t){let e=this._ref.config.positionStrategy;return t&&(t.left||t.right)?t.left?e.left(t.left):e.right(t.right):e.centerHorizontally(),t&&(t.top||t.bottom)?t.top?e.top(t.top):e.bottom(t.bottom):e.centerVertically(),this._ref.updatePosition(),this}updateSize(t="",e=""){return this._ref.updateSize(t,e),this}addPanelClass(t){return this._ref.addPanelClass(t),this}removePanelClass(t){return this._ref.removePanelClass(t),this}getState(){return this._state}_finishDialogClose(){this._state=ep.CLOSED,this._ref.close(this._result,{focusOrigin:this._closeInteractionType}),this.componentInstance=null}}function nI(n,t,e){return n._closeInteractionType=t,n.close(e)}const tp=new o.nKC("MatMdcDialogData"),ZC=new o.nKC("mat-mdc-dialog-default-options"),iI=new o.nKC("mat-mdc-dialog-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.block()}});let oI=0,Es=(()=>{class n{get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}constructor(e,i,r,s,l,u,f,p){this._overlay=e,this._defaultOptions=s,this._scrollStrategy=l,this._parentDialog=u,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new mi.B,this._afterOpenedAtThisLevel=new mi.B,this.dialogConfigClass=XC,this.afterAllClosed=Ky(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(su(void 0))),this._dialog=i.get(WC),this._dialogRefConstructor=tI,this._dialogContainerType=YC,this._dialogDataToken=tp}open(e,i){let r;(i={...this._defaultOptions||new XC,...i}).id=i.id||"mat-mdc-dialog-"+oI++,i.scrollStrategy=i.scrollStrategy||this._scrollStrategy();const s=this._dialog.open(e,{...i,positionStrategy:this._overlay.position().global().centerHorizontally().centerVertically(),disableClose:!0,closeOnDestroy:!1,closeOnOverlayDetachments:!1,container:{type:this._dialogContainerType,providers:()=>[{provide:this.dialogConfigClass,useValue:i},{provide:_h,useValue:i}]},templateContext:()=>({dialogRef:r}),providers:(l,u,f)=>(r=new this._dialogRefConstructor(l,i,f),r.updatePosition(i?.position),[{provide:this._dialogContainerType,useValue:f},{provide:this._dialogDataToken,useValue:u.data},{provide:this._dialogRefConstructor,useValue:r}])});return r.componentRef=s.componentRef,r.componentInstance=s.componentInstance,this.openDialogs.push(r),this.afterOpened.next(r),r.afterClosed().subscribe(()=>{const l=this.openDialogs.indexOf(r);l>-1&&(this.openDialogs.splice(l,1),this.openDialogs.length||this._getAfterAllClosed().next())}),r}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(e){return this.openDialogs.find(i=>i.id===e)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_closeDialogs(e){let i=e.length;for(;i--;)e[i].close()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Ns),o.KVO(o.zZn),o.KVO(Ne,8),o.KVO(ZC,8),o.KVO(iI),o.KVO(n,12),o.KVO(Uy),o.KVO(o.bc$,8))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),sI=0,Ta=(()=>{class n{constructor(e,i,r){this.dialogRef=e,this._elementRef=i,this._dialog=r,this.type="button"}ngOnInit(){this.dialogRef||(this.dialogRef=lI(this._elementRef,this._dialog.openDialogs))}ngOnChanges(e){const i=e._matDialogClose||e._matDialogCloseResult;i&&(this.dialogResult=i.currentValue)}_onButtonClick(e){nI(this.dialogRef,0===e.screenX&&0===e.screenY?"keyboard":"mouse",this.dialogResult)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tI,8),o.rXU(o.aKT),o.rXU(Es))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(i,r){1&i&&o.bIt("click",function(l){return r._onButtonClick(l)}),2&i&&o.BMQ("aria-label",r.ariaLabel||null)("type",r.type)},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],type:"type",dialogResult:[0,"mat-dialog-close","dialogResult"],_matDialogClose:[0,"matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],standalone:!0,features:[o.OA$]})}}return n})(),aI=(()=>{class n{constructor(e,i,r){this._dialogRef=e,this._elementRef=i,this._dialog=r}ngOnInit(){this._dialogRef||(this._dialogRef=lI(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{this._onAdd()})}ngOnDestroy(){this._dialogRef?._containerInstance&&Promise.resolve().then(()=>{this._onRemove()})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tI,8),o.rXU(o.aKT),o.rXU(Es))}}static{this.\u0275dir=o.FsC({type:n,standalone:!0})}}return n})(),Zy=(()=>{class n extends aI{constructor(){super(...arguments),this.id="mat-mdc-dialog-title-"+sI++}_onAdd(){this._dialogRef._containerInstance?._addAriaLabelledBy?.(this.id)}_onRemove(){this._dialogRef?._containerInstance?._removeAriaLabelledBy?.(this.id)}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-mdc-dialog-title","mdc-dialog__title"],hostVars:1,hostBindings:function(i,r){2&i&&o.Mr5("id",r.id)},inputs:{id:"id"},exportAs:["matDialogTitle"],standalone:!0,features:[o.Vt3]})}}return n})(),Al=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-mdc-dialog-content","mdc-dialog__content"],standalone:!0,features:[o.nM4([b4])]})}}return n})(),Zl=(()=>{class n extends aI{_onAdd(){this._dialogRef._containerInstance?._updateActionSectionCount?.(1)}_onRemove(){this._dialogRef._containerInstance?._updateActionSectionCount?.(-1)}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-mdc-dialog-actions","mdc-dialog__actions"],hostVars:6,hostBindings:function(i,r){2&i&&o.AVh("mat-mdc-dialog-actions-align-start","start"===r.align)("mat-mdc-dialog-actions-align-center","center"===r.align)("mat-mdc-dialog-actions-align-end","end"===r.align)},inputs:{align:"align"},standalone:!0,features:[o.Vt3]})}}return n})();function lI(n,t){let e=n.nativeElement.parentElement;for(;e&&!e.classList.contains("mat-mdc-dialog-container");)e=e.parentElement;return e?t.find(i=>i.id===e.id):null}const k_=["text"],JC=[[["mat-icon"]],"*"],eM=["mat-icon","*"];function HO(n,t){if(1&n&&o.nrm(0,"mat-pseudo-checkbox",1),2&n){const e=o.XpG();o.Y8G("disabled",e.disabled)("state",e.selected?"checked":"unchecked")}}function Sm(n,t){if(1&n&&o.nrm(0,"mat-pseudo-checkbox",3),2&n){const e=o.XpG();o.Y8G("disabled",e.disabled)}}function uI(n,t){if(1&n&&(o.j41(0,"span",4),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.SpI("(",e.group.label,")")}}const QO=["mat-internal-form-field",""],zO=["*"];class au{constructor(t,e,i,r,s){this._defaultMatcher=t,this.ngControl=e,this._parentFormGroup=i,this._parentForm=r,this._stateChanges=s,this.errorState=!1}updateErrorState(){const t=this.errorState,e=this._parentFormGroup||this._parentForm,i=this.matcher||this._defaultMatcher,r=this.ngControl?this.ngControl.control:null,s=i?.isErrorState(r,e)??!1;s!==t&&(this.errorState=s,this._stateChanges.next())}}let mI=(()=>{class n{isErrorState(e,i){return!!(e&&e.invalid&&(e.touched||i&&i.submitted))}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var Ls=function(n){return n[n.FADING_IN=0]="FADING_IN",n[n.VISIBLE=1]="VISIBLE",n[n.FADING_OUT=2]="FADING_OUT",n[n.HIDDEN=3]="HIDDEN",n}(Ls||{});class YO{constructor(t,e,i,r=!1){this._renderer=t,this.element=e,this.config=i,this._animationForciblyDisabledThroughCss=r,this.state=Ls.HIDDEN}fadeOut(){this._renderer.fadeOutRipple(this)}}const _I=$f({passive:!0,capture:!0});class iM{constructor(){this._events=new Map,this._delegateEventHandler=t=>{const e=$l(t);e&&this._events.get(t.type)?.forEach((i,r)=>{(r===e||r.contains(e))&&i.forEach(s=>s.handleEvent(t))})}}addHandler(t,e,i,r){const s=this._events.get(e);if(s){const l=s.get(i);l?l.add(r):s.set(i,new Set([r]))}else this._events.set(e,new Map([[i,new Set([r])]])),t.runOutsideAngular(()=>{document.addEventListener(e,this._delegateEventHandler,_I)})}removeHandler(t,e,i){const r=this._events.get(t);if(!r)return;const s=r.get(e);s&&(s.delete(i),0===s.size&&r.delete(e),0===r.size&&(this._events.delete(t),document.removeEventListener(t,this._delegateEventHandler,_I)))}}const rM={enterDuration:225,exitDuration:150},Fm=$f({passive:!0,capture:!0}),ZO=["mousedown","touchstart"],R_=["mouseup","mouseleave","touchend","touchcancel"];class Dm{static{this._eventManager=new iM}constructor(t,e,i,r){this._target=t,this._ngZone=e,this._platform=r,this._isPointerDown=!1,this._activeRipples=new Map,this._pointerUpEventsRegistered=!1,r.isBrowser&&(this._containerElement=Mi(i))}fadeInRipple(t,e,i={}){const r=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),s={...rM,...i.animation};i.centered&&(t=r.left+r.width/2,e=r.top+r.height/2);const l=i.radius||function bI(n,t,e){const i=Math.max(Math.abs(n-e.left),Math.abs(n-e.right)),r=Math.max(Math.abs(t-e.top),Math.abs(t-e.bottom));return Math.sqrt(i*i+r*r)}(t,e,r),u=t-r.left,f=e-r.top,p=s.enterDuration,m=document.createElement("div");m.classList.add("mat-ripple-element"),m.style.left=u-l+"px",m.style.top=f-l+"px",m.style.height=2*l+"px",m.style.width=2*l+"px",null!=i.color&&(m.style.backgroundColor=i.color),m.style.transitionDuration=`${p}ms`,this._containerElement.appendChild(m);const _=window.getComputedStyle(m),w=_.transitionDuration,F="none"===_.transitionProperty||"0s"===w||"0s, 0s"===w||0===r.width&&0===r.height,D=new YO(this,m,i,F);m.style.transform="scale3d(1, 1, 1)",D.state=Ls.FADING_IN,i.persistent||(this._mostRecentTransientRipple=D);let T=null;return!F&&(p||s.exitDuration)&&this._ngZone.runOutsideAngular(()=>{const I=()=>{T&&(T.fallbackTimer=null),clearTimeout(R),this._finishRippleTransition(D)},O=()=>this._destroyRipple(D),R=setTimeout(O,p+100);m.addEventListener("transitionend",I),m.addEventListener("transitioncancel",O),T={onTransitionEnd:I,onTransitionCancel:O,fallbackTimer:R}}),this._activeRipples.set(D,T),(F||!p)&&this._finishRippleTransition(D),D}fadeOutRipple(t){if(t.state===Ls.FADING_OUT||t.state===Ls.HIDDEN)return;const e=t.element,i={...rM,...t.config.animation};e.style.transitionDuration=`${i.exitDuration}ms`,e.style.opacity="0",t.state=Ls.FADING_OUT,(t._animationForciblyDisabledThroughCss||!i.exitDuration)&&this._finishRippleTransition(t)}fadeOutAll(){this._getActiveRipples().forEach(t=>t.fadeOut())}fadeOutAllNonPersistent(){this._getActiveRipples().forEach(t=>{t.config.persistent||t.fadeOut()})}setupTriggerEvents(t){const e=Mi(t);!this._platform.isBrowser||!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,ZO.forEach(i=>{Dm._eventManager.addHandler(this._ngZone,i,e,this)}))}handleEvent(t){"mousedown"===t.type?this._onMousedown(t):"touchstart"===t.type?this._onTouchStart(t):this._onPointerUp(),this._pointerUpEventsRegistered||(this._ngZone.runOutsideAngular(()=>{R_.forEach(e=>{this._triggerElement.addEventListener(e,this,Fm)})}),this._pointerUpEventsRegistered=!0)}_finishRippleTransition(t){t.state===Ls.FADING_IN?this._startFadeOutTransition(t):t.state===Ls.FADING_OUT&&this._destroyRipple(t)}_startFadeOutTransition(t){const e=t===this._mostRecentTransientRipple,{persistent:i}=t.config;t.state=Ls.VISIBLE,!i&&(!e||!this._isPointerDown)&&t.fadeOut()}_destroyRipple(t){const e=this._activeRipples.get(t)??null;this._activeRipples.delete(t),this._activeRipples.size||(this._containerRect=null),t===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),t.state=Ls.HIDDEN,null!==e&&(t.element.removeEventListener("transitionend",e.onTransitionEnd),t.element.removeEventListener("transitioncancel",e.onTransitionCancel),null!==e.fallbackTimer&&clearTimeout(e.fallbackTimer)),t.element.remove()}_onMousedown(t){const e=vm(t),i=this._lastTouchStartEvent&&Date.now(){!t.config.persistent&&(t.state===Ls.VISIBLE||t.config.terminateOnPointerUp&&t.state===Ls.FADING_IN)&&t.fadeOut()}))}_getActiveRipples(){return Array.from(this._activeRipples.keys())}_removeTriggerEvents(){const t=this._triggerElement;t&&(ZO.forEach(e=>Dm._eventManager.removeHandler(e,t,this)),this._pointerUpEventsRegistered&&(R_.forEach(e=>t.removeEventListener(e,this,Fm)),this._pointerUpEventsRegistered=!1))}}const Bm=new o.nKC("mat-ripple-global-options");let ml=(()=>{class n{get disabled(){return this._disabled}set disabled(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}constructor(e,i,r,s,l){this._elementRef=e,this._animationMode=l,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=s||{},this._rippleRenderer=new Dm(this,i,e,r)}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:{...this._globalOptions.animation,..."NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{},...this.animation},terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(e,i=0,r){return"number"==typeof e?this._rippleRenderer.fadeInRipple(e,i,{...this.rippleConfig,...r}):this._rippleRenderer.fadeInRipple(0,0,{...this.rippleConfig,...e})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi),o.rXU(Io),o.rXU(Bm,8),o.rXU(o.bc$,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mat-ripple-unbounded",r.unbounded)},inputs:{color:[0,"matRippleColor","color"],unbounded:[0,"matRippleUnbounded","unbounded"],centered:[0,"matRippleCentered","centered"],radius:[0,"matRippleRadius","radius"],animation:[0,"matRippleAnimation","animation"],disabled:[0,"matRippleDisabled","disabled"],trigger:[0,"matRippleTrigger","trigger"]},exportAs:["matRipple"],standalone:!0})}}return n})(),vI=(()=>{class n{constructor(e){this._animationMode=e,this.state="unchecked",this.disabled=!1,this.appearance="full"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(i,r){2&i&&o.AVh("mat-pseudo-checkbox-indeterminate","indeterminate"===r.state)("mat-pseudo-checkbox-checked","checked"===r.state)("mat-pseudo-checkbox-disabled",r.disabled)("mat-pseudo-checkbox-minimal","minimal"===r.appearance)("mat-pseudo-checkbox-full","full"===r.appearance)("_mat-animation-noopable","NoopAnimations"===r._animationMode)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},standalone:!0,features:[o.aNF],decls:0,vars:0,template:function(i,r){},styles:['.mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-minimal-pseudo-checkbox-selected-checkmark-color, var(--mat-app-primary))}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color)}.mat-pseudo-checkbox-full{border-color:var(--mat-full-pseudo-checkbox-unselected-icon-color, var(--mat-app-on-surface-variant));border-width:2px;border-style:solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-disabled{border-color:var(--mat-full-pseudo-checkbox-disabled-unselected-icon-color)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{background-color:var(--mat-full-pseudo-checkbox-selected-icon-color, var(--mat-app-primary));border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-full-pseudo-checkbox-selected-checkmark-color, var(--mat-app-on-primary))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background-color:var(--mat-full-pseudo-checkbox-disabled-selected-icon-color)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-full-pseudo-checkbox-disabled-selected-checkmark-color, var(--mat-app-surface))}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px}'],encapsulation:2,changeDetection:0})}}return n})();const yI=new o.nKC("MAT_OPTION_PARENT_COMPONENT"),wI=new o.nKC("MatOptgroup");let JO=0;class t1{constructor(t,e=!1){this.source=t,this.isUserInput=e}}let yd=(()=>{class n{get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(e){this._disabled=e}get disableRipple(){return!(!this._parent||!this._parent.disableRipple)}get hideSingleSelectionIndicator(){return!(!this._parent||!this._parent.hideSingleSelectionIndicator)}constructor(e,i,r,s){this._element=e,this._changeDetectorRef=i,this._parent=r,this.group=s,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+JO++,this.onSelectionChange=new o.bkB,this._stateChanges=new mi.B}get active(){return this._active}get viewValue(){return(this._text?.nativeElement.textContent||"").trim()}select(e=!0){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),e&&this._emitSelectionChangeEvent())}deselect(e=!0){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),e&&this._emitSelectionChangeEvent())}focus(e,i){const r=this._getHostElement();"function"==typeof r.focus&&r.focus(i)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(e){(13===e.keyCode||32===e.keyCode)&&!Kl(e)&&(this._selectViaInteraction(),e.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue&&this._stateChanges.next(),this._mostRecentViewValue=e)}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(e=!1){this.onSelectionChange.emit(new t1(this,e))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.gRc),o.rXU(yI,8),o.rXU(wI,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-option"]],viewQuery:function(i,r){if(1&i&&o.GBs(k_,7),2&i){let s;o.mGM(s=o.lsd())&&(r._text=s.first)}},hostAttrs:["role","option",1,"mat-mdc-option","mdc-list-item"],hostVars:11,hostBindings:function(i,r){1&i&&o.bIt("click",function(){return r._selectViaInteraction()})("keydown",function(l){return r._handleKeydown(l)}),2&i&&(o.Mr5("id",r.id),o.BMQ("aria-selected",r.selected)("aria-disabled",r.disabled.toString()),o.AVh("mdc-list-item--selected",r.selected)("mat-mdc-option-multiple",r.multiple)("mat-mdc-option-active",r.active)("mdc-list-item--disabled",r.disabled))},inputs:{value:"value",id:"id",disabled:[2,"disabled","disabled",o.L39]},outputs:{onSelectionChange:"onSelectionChange"},exportAs:["matOption"],standalone:!0,features:[o.GFd,o.aNF],ngContentSelectors:eM,decls:8,vars:5,consts:[["text",""],["aria-hidden","true",1,"mat-mdc-option-pseudo-checkbox",3,"disabled","state"],[1,"mdc-list-item__primary-text"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"cdk-visually-hidden"],["aria-hidden","true","mat-ripple","",1,"mat-mdc-option-ripple","mat-mdc-focus-indicator",3,"matRippleTrigger","matRippleDisabled"]],template:function(i,r){1&i&&(o.NAR(JC),o.DNE(0,HO,1,2,"mat-pseudo-checkbox",1),o.SdG(1),o.j41(2,"span",2,0),o.SdG(4,1),o.k0s(),o.DNE(5,Sm,1,1,"mat-pseudo-checkbox",3)(6,uI,2,1,"span",4),o.nrm(7,"div",5)),2&i&&(o.vxM(r.multiple?0:-1),o.R7$(5),o.vxM(r.multiple||!r.selected||r.hideSingleSelectionIndicator?-1:5),o.R7$(),o.vxM(r.group&&r.group._inert?6:-1),o.R7$(),o.Y8G("matRippleTrigger",r._getHostElement())("matRippleDisabled",r.disabled||r.disableRipple))},dependencies:[vI,ml],styles:['.mat-mdc-option{-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color, var(--mat-app-on-surface));font-family:var(--mat-option-label-text-font, var(--mat-app-label-large-font));line-height:var(--mat-option-label-text-line-height, var(--mat-app-label-large-line-height));font-size:var(--mat-option-label-text-size, var(--mat-app-body-large-size));letter-spacing:var(--mat-option-label-text-tracking, var(--mat-app-label-large-tracking));font-weight:var(--mat-option-label-text-weight, var(--mat-app-body-large-weight))}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color)}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color);outline:0}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color, var(--mat-app-on-secondary-container))}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-multiple){background-color:var(--mat-option-selected-state-layer-color, var(--mat-app-secondary-container))}.mat-mdc-option .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-option-selected-state-label-text-color, var(--mat-app-on-secondary-container))}.mat-mdc-option.mdc-list-item{align-items:center;background:rgba(0,0,0,0)}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}.cdk-high-contrast-active .mat-mdc-option.mdc-list-item--selected:not(.mat-mdc-option-multiple)::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .cdk-high-contrast-active .mat-mdc-option.mdc-list-item--selected:not(.mat-mdc-option-multiple)::after{right:auto;left:16px}.mat-mdc-option-multiple{--mdc-list-list-item-selected-container-color:var(--mdc-list-list-item-container-color, transparent)}.mat-mdc-option-active .mat-mdc-focus-indicator::before{content:""}'],encapsulation:2,changeDetection:0})}}return n})();const n1={capture:!0},oM=["focus","mousedown","mouseenter","touchstart"],sM="mat-ripple-loader-uninitialized",r1="mat-ripple-loader-class-name",o1="mat-ripple-loader-centered",P_="mat-ripple-loader-disabled";let CI=(()=>{class n{constructor(){this._document=(0,o.WQX)(V,{optional:!0}),this._animationMode=(0,o.WQX)(o.bc$,{optional:!0}),this._globalRippleOptions=(0,o.WQX)(Bm,{optional:!0}),this._platform=(0,o.WQX)(Io),this._ngZone=(0,o.WQX)(o.SKi),this._hosts=new Map,this._onInteraction=e=>{const i=$l(e);if(i instanceof HTMLElement){const r=i.closest(`[${sM}="${this._globalRippleOptions?.namespace??""}"]`);r&&this._createRipple(r)}},this._ngZone.runOutsideAngular(()=>{for(const e of oM)this._document?.addEventListener(e,this._onInteraction,n1)})}ngOnDestroy(){const e=this._hosts.keys();for(const i of e)this.destroyRipple(i);for(const i of oM)this._document?.removeEventListener(i,this._onInteraction,n1)}configureRipple(e,i){e.setAttribute(sM,this._globalRippleOptions?.namespace??""),(i.className||!e.hasAttribute(r1))&&e.setAttribute(r1,i.className||""),i.centered&&e.setAttribute(o1,""),i.disabled&&e.setAttribute(P_,"")}getRipple(e){return this._hosts.get(e)||this._createRipple(e)}setDisabled(e,i){const r=this._hosts.get(e);r?r.disabled=i:i?e.setAttribute(P_,""):e.removeAttribute(P_)}_createRipple(e){if(!this._document)return;const i=this._hosts.get(e);if(i)return i;e.querySelector(".mat-ripple")?.remove();const r=this._document.createElement("span");r.classList.add("mat-ripple",e.getAttribute(r1)),e.append(r);const s=new ml(new o.aKT(r),this._ngZone,this._platform,this._globalRippleOptions?this._globalRippleOptions:void 0,this._animationMode?this._animationMode:void 0);return s._isInitialized=!0,s.trigger=e,s.centered=e.hasAttribute(o1),s.disabled=e.hasAttribute(P_),this.attachRipple(e,s),s}attachRipple(e,i){e.removeAttribute(sM),this._hosts.set(e,i)}destroyRipple(e){const i=this._hosts.get(e);i&&(i.ngOnDestroy(),this._hosts.delete(e))}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),MI=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["div","mat-internal-form-field",""]],hostAttrs:[1,"mdc-form-field","mat-internal-form-field"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mdc-form-field--align-end","before"===r.labelPosition)},inputs:{labelPosition:"labelPosition"},standalone:!0,features:[o.aNF],attrs:QO,ngContentSelectors:zO,decls:1,vars:0,template:function(i,r){1&i&&(o.NAR(),o.SdG(0))},styles:[".mat-internal-form-field{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;vertical-align:middle}.mat-internal-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mat-internal-form-field>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end .mdc-form-field--align-end label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0}"],encapsulation:2,changeDetection:0})}}return n})();const nN=["mat-button",""],iN=[[["",8,"material-icons",3,"iconPositionEnd",""],["mat-icon",3,"iconPositionEnd",""],["","matButtonIcon","",3,"iconPositionEnd",""]],"*",[["","iconPositionEnd","",8,"material-icons"],["mat-icon","iconPositionEnd",""],["","matButtonIcon","","iconPositionEnd",""]]],aM=[".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd]), [matButtonIcon]:not([iconPositionEnd])","*",".material-icons[iconPositionEnd], mat-icon[iconPositionEnd], [matButtonIcon][iconPositionEnd]"],II=new o.nKC("MAT_BUTTON_CONFIG"),lM=[{attribute:"mat-button",mdcClasses:["mdc-button","mat-mdc-button"]},{attribute:"mat-flat-button",mdcClasses:["mdc-button","mdc-button--unelevated","mat-mdc-unelevated-button"]},{attribute:"mat-raised-button",mdcClasses:["mdc-button","mdc-button--raised","mat-mdc-raised-button"]},{attribute:"mat-stroked-button",mdcClasses:["mdc-button","mdc-button--outlined","mat-mdc-outlined-button"]},{attribute:"mat-fab",mdcClasses:["mdc-fab","mat-mdc-fab-base","mat-mdc-fab"]},{attribute:"mat-mini-fab",mdcClasses:["mdc-fab","mat-mdc-fab-base","mdc-fab--mini","mat-mdc-mini-fab"]},{attribute:"mat-icon-button",mdcClasses:["mdc-icon-button","mat-mdc-icon-button"]}];let DI=(()=>{class n{get ripple(){return this._rippleLoader?.getRipple(this._elementRef.nativeElement)}set ripple(e){this._rippleLoader?.attachRipple(this._elementRef.nativeElement,e)}get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=e,this._updateRippleDisabled()}get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._updateRippleDisabled()}constructor(e,i,r,s){this._elementRef=e,this._platform=i,this._ngZone=r,this._animationMode=s,this._focusMonitor=(0,o.WQX)(Yl),this._rippleLoader=(0,o.WQX)(CI),this._isFab=!1,this._disableRipple=!1,this._disabled=!1;const l=(0,o.WQX)(II,{optional:!0}),u=e.nativeElement,f=u.classList;this.disabledInteractive=l?.disabledInteractive??!1,this.color=l?.color??null,this._rippleLoader?.configureRipple(u,{className:"mat-mdc-button-ripple"});for(const{attribute:p,mdcClasses:m}of lM)u.hasAttribute(p)&&f.add(...m)}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement)}focus(e="program",i){e?this._focusMonitor.focusVia(this._elementRef.nativeElement,e,i):this._elementRef.nativeElement.focus(i)}_getAriaDisabled(){return null!=this.ariaDisabled?this.ariaDisabled:!(!this.disabled||!this.disabledInteractive)||null}_getDisabledAttribute(){return!(this.disabledInteractive||!this.disabled)||null}_updateRippleDisabled(){this._rippleLoader?.setDisabled(this._elementRef.nativeElement,this.disableRipple||this.disabled)}static{this.\u0275fac=function(i){o.QTQ()}}static{this.\u0275dir=o.FsC({type:n,inputs:{color:"color",disableRipple:[2,"disableRipple","disableRipple",o.L39],disabled:[2,"disabled","disabled",o.L39],ariaDisabled:[2,"aria-disabled","ariaDisabled",o.L39],disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39]},features:[o.GFd]})}}return n})(),ns=(()=>{class n extends DI{constructor(e,i,r,s){super(e,i,r,s)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Io),o.rXU(o.SKi),o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-flat-button",""],["button","mat-stroked-button",""]],hostVars:14,hostBindings:function(i,r){2&i&&(o.BMQ("disabled",r._getDisabledAttribute())("aria-disabled",r._getAriaDisabled()),o.HbH(r.color?"mat-"+r.color:""),o.AVh("mat-mdc-button-disabled",r.disabled)("mat-mdc-button-disabled-interactive",r.disabledInteractive)("_mat-animation-noopable","NoopAnimations"===r._animationMode)("mat-unthemed",!r.color)("mat-mdc-button-base",!0))},exportAs:["matButton"],standalone:!0,features:[o.Vt3,o.aNF],attrs:nN,ngContentSelectors:aM,decls:7,vars:4,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-mdc-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(i,r){1&i&&(o.NAR(iN),o.nrm(0,"span",0),o.SdG(1),o.j41(2,"span",1),o.SdG(3,1),o.k0s(),o.SdG(4,2),o.nrm(5,"span",2)(6,"span",3)),2&i&&o.AVh("mdc-button__ripple",!r._isFab)("mdc-fab__ripple",r._isFab)},styles:['.mat-mdc-button-base{text-decoration:none}.mdc-button{-webkit-user-select:none;user-select:none;position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:64px;border:none;outline:none;line-height:inherit;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:rgba(0,0,0,0);padding:0 8px}.mdc-button::-moz-focus-inner{padding:0;border:0}.mdc-button:active{outline:none}.mdc-button:hover{cursor:pointer}.mdc-button:disabled{cursor:default;pointer-events:none}.mdc-button[hidden]{display:none}.mdc-button .mdc-button__label{position:relative}.mat-mdc-button{padding:0 var(--mat-text-button-horizontal-padding, 8px);height:var(--mdc-text-button-container-height);font-family:var(--mdc-text-button-label-text-font, var(--mat-app-label-large-font));font-size:var(--mdc-text-button-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mdc-text-button-label-text-tracking, var(--mat-app-label-large-tracking));text-transform:var(--mdc-text-button-label-text-transform);font-weight:var(--mdc-text-button-label-text-weight, var(--mat-app-label-large-weight))}.mat-mdc-button:has(.material-icons,mat-icon,[matButtonIcon]){padding:0 var(--mat-text-button-with-icon-horizontal-padding, 8px)}.mat-mdc-button>.mat-icon{margin-right:var(--mat-text-button-icon-spacing, 8px);margin-left:var(--mat-text-button-icon-offset, 0)}[dir=rtl] .mat-mdc-button>.mat-icon{margin-right:var(--mat-text-button-icon-offset, 0);margin-left:var(--mat-text-button-icon-spacing, 8px)}.mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-text-button-icon-offset, 0);margin-left:var(--mat-text-button-icon-spacing, 8px)}[dir=rtl] .mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-text-button-icon-spacing, 8px);margin-left:var(--mat-text-button-icon-offset, 0)}.mat-mdc-button .mat-ripple-element{background-color:var(--mat-text-button-ripple-color)}.mat-mdc-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-text-button-state-layer-color, var(--mat-app-primary))}.mat-mdc-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-text-button-disabled-state-layer-color, var(--mat-app-on-surface-variant))}.mat-mdc-button:hover .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-text-button-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-button.cdk-program-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-button.cdk-keyboard-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-button.mat-mdc-button-disabled-interactive:focus .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-text-button-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mat-mdc-button:active .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-text-button-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity))}.mat-mdc-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%);display:var(--mat-text-button-touch-target-display)}.mat-mdc-button,.mat-mdc-button .mdc-button__ripple{border-radius:var(--mdc-text-button-container-shape, var(--mat-app-corner-full))}.mat-mdc-button:not(:disabled){color:var(--mdc-text-button-label-text-color, var(--mat-app-primary))}.mat-mdc-button[disabled],.mat-mdc-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-text-button-disabled-label-text-color)}.mat-mdc-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-unelevated-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 var(--mat-filled-button-horizontal-padding, 16px);height:var(--mdc-filled-button-container-height);font-family:var(--mdc-filled-button-label-text-font, var(--mat-app-label-large-font));font-size:var(--mdc-filled-button-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mdc-filled-button-label-text-tracking, var(--mat-app-label-large-tracking));text-transform:var(--mdc-filled-button-label-text-transform);font-weight:var(--mdc-filled-button-label-text-weight, var(--mat-app-label-large-weight))}.mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-filled-button-icon-spacing, 8px);margin-left:var(--mat-filled-button-icon-offset, -4px)}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-filled-button-icon-offset, -4px);margin-left:var(--mat-filled-button-icon-spacing, 8px)}.mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-filled-button-icon-offset, -4px);margin-left:var(--mat-filled-button-icon-spacing, 8px)}[dir=rtl] .mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-filled-button-icon-spacing, 8px);margin-left:var(--mat-filled-button-icon-offset, -4px)}.mat-mdc-unelevated-button .mat-ripple-element{background-color:var(--mat-filled-button-ripple-color)}.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-filled-button-state-layer-color, var(--mat-app-on-primary))}.mat-mdc-unelevated-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-filled-button-disabled-state-layer-color, var(--mat-app-on-surface-variant))}.mat-mdc-unelevated-button:hover .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-filled-button-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-unelevated-button.cdk-program-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.cdk-keyboard-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive:focus .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-filled-button-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mat-mdc-unelevated-button:active .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-filled-button-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity))}.mat-mdc-unelevated-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%);display:var(--mat-filled-button-touch-target-display)}.mat-mdc-unelevated-button:not(:disabled){color:var(--mdc-filled-button-label-text-color, var(--mat-app-on-primary));background-color:var(--mdc-filled-button-container-color, var(--mat-app-primary))}.mat-mdc-unelevated-button,.mat-mdc-unelevated-button .mdc-button__ripple{border-radius:var(--mdc-filled-button-container-shape, var(--mat-app-corner-full))}.mat-mdc-unelevated-button[disabled],.mat-mdc-unelevated-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-filled-button-disabled-label-text-color);background-color:var(--mdc-filled-button-disabled-container-color)}.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-raised-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 var(--mat-protected-button-horizontal-padding, 16px);box-shadow:var(--mdc-protected-button-container-elevation-shadow, var(--mat-app-level1));height:var(--mdc-protected-button-container-height);font-family:var(--mdc-protected-button-label-text-font, var(--mat-app-label-large-font));font-size:var(--mdc-protected-button-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mdc-protected-button-label-text-tracking, var(--mat-app-label-large-tracking));text-transform:var(--mdc-protected-button-label-text-transform);font-weight:var(--mdc-protected-button-label-text-weight, var(--mat-app-label-large-weight))}.mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-protected-button-icon-spacing, 8px);margin-left:var(--mat-protected-button-icon-offset, -4px)}[dir=rtl] .mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-protected-button-icon-offset, -4px);margin-left:var(--mat-protected-button-icon-spacing, 8px)}.mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-protected-button-icon-offset, -4px);margin-left:var(--mat-protected-button-icon-spacing, 8px)}[dir=rtl] .mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-protected-button-icon-spacing, 8px);margin-left:var(--mat-protected-button-icon-offset, -4px)}.mat-mdc-raised-button .mat-ripple-element{background-color:var(--mat-protected-button-ripple-color)}.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-protected-button-state-layer-color, var(--mat-app-primary))}.mat-mdc-raised-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-protected-button-disabled-state-layer-color, var(--mat-app-on-surface-variant))}.mat-mdc-raised-button:hover .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-protected-button-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-raised-button.cdk-program-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.cdk-keyboard-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.mat-mdc-button-disabled-interactive:focus .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-protected-button-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mat-mdc-raised-button:active .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-protected-button-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity))}.mat-mdc-raised-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%);display:var(--mat-protected-button-touch-target-display)}.mat-mdc-raised-button:not(:disabled){color:var(--mdc-protected-button-label-text-color, var(--mat-app-primary));background-color:var(--mdc-protected-button-container-color, var(--mat-app-surface))}.mat-mdc-raised-button,.mat-mdc-raised-button .mdc-button__ripple{border-radius:var(--mdc-protected-button-container-shape, var(--mat-app-corner-full))}.mat-mdc-raised-button:hover{box-shadow:var(--mdc-protected-button-hover-container-elevation-shadow, var(--mat-app-level2))}.mat-mdc-raised-button:focus{box-shadow:var(--mdc-protected-button-focus-container-elevation-shadow, var(--mat-app-level1))}.mat-mdc-raised-button:active,.mat-mdc-raised-button:focus:active{box-shadow:var(--mdc-protected-button-pressed-container-elevation-shadow, var(--mat-app-level1))}.mat-mdc-raised-button[disabled],.mat-mdc-raised-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-protected-button-disabled-label-text-color);background-color:var(--mdc-protected-button-disabled-container-color)}.mat-mdc-raised-button[disabled].mat-mdc-button-disabled,.mat-mdc-raised-button.mat-mdc-button-disabled.mat-mdc-button-disabled{box-shadow:var(--mdc-protected-button-disabled-container-elevation-shadow, var(--mat-app-level0))}.mat-mdc-raised-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-outlined-button{border-style:solid;transition:border 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 var(--mat-outlined-button-horizontal-padding, 15px);height:var(--mdc-outlined-button-container-height);font-family:var(--mdc-outlined-button-label-text-font, var(--mat-app-label-large-font));font-size:var(--mdc-outlined-button-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mdc-outlined-button-label-text-tracking, var(--mat-app-label-large-tracking));text-transform:var(--mdc-outlined-button-label-text-transform);font-weight:var(--mdc-outlined-button-label-text-weight, var(--mat-app-label-large-weight));border-radius:var(--mdc-outlined-button-container-shape, var(--mat-app-corner-full));border-width:var(--mdc-outlined-button-outline-width)}.mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-outlined-button-icon-spacing, 8px);margin-left:var(--mat-outlined-button-icon-offset, -4px)}[dir=rtl] .mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-outlined-button-icon-offset, -4px);margin-left:var(--mat-outlined-button-icon-spacing, 8px)}.mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-outlined-button-icon-offset, -4px);margin-left:var(--mat-outlined-button-icon-spacing, 8px)}[dir=rtl] .mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-outlined-button-icon-spacing, 8px);margin-left:var(--mat-outlined-button-icon-offset, -4px)}.mat-mdc-outlined-button .mat-ripple-element{background-color:var(--mat-outlined-button-ripple-color)}.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-outlined-button-state-layer-color, var(--mat-app-primary))}.mat-mdc-outlined-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-outlined-button-disabled-state-layer-color, var(--mat-app-on-surface-variant))}.mat-mdc-outlined-button:hover .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-outlined-button-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-outlined-button.cdk-program-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.cdk-keyboard-focused .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive:focus .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-outlined-button-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mat-mdc-outlined-button:active .mat-mdc-button-persistent-ripple::before{opacity:var(--mat-outlined-button-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity))}.mat-mdc-outlined-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%);display:var(--mat-outlined-button-touch-target-display)}.mat-mdc-outlined-button:not(:disabled){color:var(--mdc-outlined-button-label-text-color, var(--mat-app-primary));border-color:var(--mdc-outlined-button-outline-color, var(--mat-app-outline))}.mat-mdc-outlined-button[disabled],.mat-mdc-outlined-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mdc-outlined-button-disabled-label-text-color);border-color:var(--mdc-outlined-button-disabled-outline-color)}.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-outlined-button .mdc-button__ripple{border-width:var(--mdc-outlined-button-outline-width);border-style:solid;border-color:rgba(0,0,0,0)}.mat-mdc-button,.mat-mdc-unelevated-button,.mat-mdc-raised-button,.mat-mdc-outlined-button{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-button .mdc-button__label,.mat-mdc-button .mat-icon,.mat-mdc-unelevated-button .mdc-button__label,.mat-mdc-unelevated-button .mat-icon,.mat-mdc-raised-button .mdc-button__label,.mat-mdc-raised-button .mat-icon,.mat-mdc-outlined-button .mdc-button__label,.mat-mdc-outlined-button .mat-icon{z-index:1;position:relative}.mat-mdc-button .mat-mdc-focus-indicator,.mat-mdc-unelevated-button .mat-mdc-focus-indicator,.mat-mdc-raised-button .mat-mdc-focus-indicator,.mat-mdc-outlined-button .mat-mdc-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute}.mat-mdc-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-unelevated-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-raised-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-outlined-button:focus .mat-mdc-focus-indicator::before{content:""}.mat-mdc-button._mat-animation-noopable,.mat-mdc-unelevated-button._mat-animation-noopable,.mat-mdc-raised-button._mat-animation-noopable,.mat-mdc-outlined-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon,.mat-mdc-raised-button>.mat-icon,.mat-mdc-outlined-button>.mat-icon{display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem}.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px}.mat-mdc-unelevated-button .mat-mdc-focus-indicator::before,.mat-mdc-raised-button .mat-mdc-focus-indicator::before{margin:calc(calc(var(--mat-mdc-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-outlined-button .mat-mdc-focus-indicator::before{margin:calc(calc(var(--mat-mdc-focus-indicator-border-width, 3px) + 3px)*-1)}',".cdk-high-contrast-active .mat-mdc-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-unelevated-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-raised-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-outlined-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-icon-button{outline:solid 1px}"],encapsulation:2,changeDetection:0})}}return n})();function kI(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",5),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.data.resolveErrorData.onResolveErrorClick())}),o.EFF(1),o.k0s()}if(2&n){const e=o.XpG();o.R7$(),o.SpI(" ",e.data.resolveErrorData.buttonText," ")}}let lu=(()=>{class n{constructor(e){this.data=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tp))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-error-dialog"]],standalone:!0,features:[o.aNF],decls:7,vars:3,consts:[["mat-dialog-title",""],["mat-dialog-content","",3,"innerHTML"],["mat-dialog-actions","","align","end"],["mat-button","","mat-dialog-close","",3,"click",4,"ngIf"],["mat-button","","mat-dialog-close",""],["mat-button","","mat-dialog-close","",3,"click"]],template:function(i,r){1&i&&(o.j41(0,"h1",0),o.EFF(1),o.k0s(),o.nrm(2,"div",1),o.j41(3,"div",2),o.DNE(4,kI,2,1,"button",3),o.j41(5,"button",4),o.EFF(6,"OK"),o.k0s()()),2&i&&(o.R7$(),o.JRh(r.data.title),o.R7$(),o.Y8G("innerHTML",r.data.message,o.npT),o.R7$(2),o.Y8G("ngIf",r.data.resolveErrorData))},dependencies:[Zy,Al,Zl,Gn,ns,Ta],encapsulation:2})}}return n})();function RI(n){return{title:"Something is wrong with the loaded file(s)",message:[...PI(n),...OI(n)].join("")}}function PI(n){const t=n.filter(e=>e.errors.length>0);return t.length>0?["

    Errors

    ",...t.map(e=>function NI(n){return`

    ${n.fileName}: ${LI(' ',n.errors)}

    `}(e))]:[]}function OI(n){const t=n.filter(e=>e.warnings.length>0);return t.length>0?["

    Warnings

    ",...t.map(e=>function hN(n){return`

    ${n.fileName}: ${LI(' ',n.warnings)}

    `}(e))]:[]}function LI(n,t){return`

    ${t.map(e=>n+e).join("
    ")}

    `}var fN=function(n){return n.hide="hide",n.exclude="exclude",n}(fN||{}),u9=v(9812),O_=v.n(u9);function AN(n){return!n||Array.isArray(n.nodes)||Array.isArray(n.edges)?{nodes:{},edges:{}}:{nodes:n.nodes??{},edges:n.edges??{}}}function h9(n){return n||{}}function UI(n){for(const t of n)t.type===fN.hide&&(t.type="flatten");return n}function HI(n){let t=null;try{const e="string"==typeof n?JSON.parse(n):n;if("data"in e&&"checksum"in e)return t=e.data,t.fileChecksum=e.checksum||O_()(JSON.stringify(e.data)),t;if(!e.fileChecksum){const i="string"==typeof n?n:JSON.stringify(n);e.fileChecksum=O_()(i)}return e}catch{}return t}var f9=v(7172),mN=v.n(f9);const s1=JSON.parse('{"rE":"1.133.1","f4":{"X":"1.3"}}'),p9=JSON.parse('{"$ref":"#/definitions/ExportCCFile","$schema":"http://json-schema.org/draft-07/schema#","definitions":{"AttributeTypes":{"properties":{"edges":{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"},"nodes":{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}},"type":"object"},"CodeMapNode":{"properties":{"attributes":{"$ref":"#/definitions/KeyValuePair"},"children":{"items":{"$ref":"#/definitions/CodeMapNode"},"type":"array"},"deltas":{"additionalProperties":{"type":"number"},"type":"object"},"edgeAttributes":{"additionalProperties":{"$ref":"#/definitions/EdgeMetricCount"},"type":"object"},"fixedPosition":{"$ref":"#/definitions/FixedPosition"},"id":{"type":"number"},"isExcluded":{"type":"boolean"},"isFlattened":{"type":"boolean"},"link":{"type":"string"},"name":{"type":"string"},"path":{"type":"string"},"type":{"$ref":"#/definitions/NodeType"}},"required":["name","type"],"type":"object"},"Edge":{"properties":{"attributes":{"$ref":"#/definitions/KeyValuePair"},"fromNodeName":{"type":"string"},"toNodeName":{"type":"string"},"visible":{"$ref":"#/definitions/EdgeVisibility"}},"required":["attributes","fromNodeName","toNodeName"],"type":"object"},"EdgeMetricCount":{"properties":{"incoming":{"type":"number"},"outgoing":{"type":"number"}},"required":["incoming","outgoing"],"type":"object"},"EdgeVisibility":{"enum":["both","from","none","to"],"type":"string"},"ExportBlacklistItem":{"properties":{"path":{"type":"string"},"type":{"$ref":"#/definitions/ExportBlacklistType"}},"required":["path","type"],"type":"object"},"ExportBlacklistType":{"enum":["exclude","hide"],"type":"string"},"ExportCCFile":{"properties":{"apiVersion":{"type":"string"},"attributeTypes":{"anyOf":[{"$ref":"#/definitions/OldAttributeTypes"},{"$ref":"#/definitions/AttributeTypes"}]},"blacklist":{"items":{"$ref":"#/definitions/ExportBlacklistItem"},"type":"array"},"edges":{"items":{"$ref":"#/definitions/Edge"},"type":"array"},"markedPackages":{"items":{"$ref":"#/definitions/MarkedPackage"},"type":"array"},"nodes":{"items":{"$ref":"#/definitions/CodeMapNode"},"type":"array"},"projectName":{"type":"string"}},"required":["apiVersion","nodes","projectName"],"type":"object"},"FixedPosition":{"properties":{"height":{"type":"number"},"left":{"type":"number"},"top":{"type":"number"},"width":{"type":"number"}},"required":["height","left","top","width"],"type":"object"},"KeyValuePair":{"additionalProperties":{"type":"number"},"type":"object"},"MarkedPackage":{"properties":{"color":{"type":"string"},"path":{"type":"string"}},"required":["color","path"],"type":"object"},"NodeType":{"enum":["File","Folder"],"type":"string"},"OldAttributeTypes":{"properties":{"edges":{"additionalItems":{"anyOf":[{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}]},"items":[{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}],"minItems":0,"type":"array"},"nodes":{"additionalItems":{"anyOf":[{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}]},"items":[{"additionalProperties":{"enum":["absolute","relative"],"type":"string"},"type":"object"}],"minItems":0,"type":"array"}},"type":"object"}}}');function A9(n){var t=0,e=n.children,i=e&&e.length;if(i)for(;--i>=0;)t+=e[i].value;else t=1;n.value=t}function oo(n,t){n instanceof Map?(n=[void 0,n],void 0===t&&(t=GI)):void 0===t&&(t=xN);for(var i,s,l,u,f,e=new dM(n),r=[e];i=r.pop();)if((l=t(i.data))&&(f=(l=Array.from(l)).length))for(i.children=l,u=f-1;u>=0;--u)r.push(s=l[u]=new dM(l[u])),s.parent=i,s.depth=i.depth+1;return e.eachBefore(jI)}function xN(n){return n.children}function GI(n){return Array.isArray(n)?n[1]:null}function y9(n){void 0!==n.data.value&&(n.value=n.data.value),n.data=n.data.data}function jI(n){var t=0;do{n.height=t}while((n=n.parent)&&n.height<++t)}function dM(n){this.data=n,this.depth=this.height=0,this.parent=null}dM.prototype=oo.prototype={constructor:dM,count:function m9(){return this.eachAfter(A9)},each:function g9(n,t){let e=-1;for(const i of this)n.call(t,i,++e,this);return this},eachAfter:function gN(n,t){for(var s,l,u,e=this,i=[e],r=[],f=-1;e=i.pop();)if(r.push(e),s=e.children)for(l=0,u=s.length;l=0;--s)i.push(r[s]);return this},find:function km(n,t){let e=-1;for(const i of this)if(n.call(t,i,++e,this))return i},sum:function N_(n){return this.eachAfter(function(t){for(var e=+n(t.data)||0,i=t.children,r=i&&i.length;--r>=0;)e+=i[r].value;t.value=e})},sort:function _N(n){return this.eachBefore(function(t){t.children&&t.children.sort(n)})},path:function b9(n){for(var t=this,e=function QI(n,t){if(n===t)return n;var e=n.ancestors(),i=t.ancestors(),r=null;for(n=e.pop(),t=i.pop();n===t;)r=n,n=e.pop(),t=i.pop();return r}(t,n),i=[t];t!==e;)i.push(t=t.parent);for(var r=i.length;n!==e;)i.splice(r,0,n),n=n.parent;return i},ancestors:function bN(){for(var n=this,t=[n];n=n.parent;)t.push(n);return t},descendants:function v9(){return Array.from(this)},leaves:function vN(){var n=[];return this.eachBefore(function(t){t.children||n.push(t)}),n},links:function yN(){var n=this,t=[];return n.each(function(e){e!==n&&t.push({source:e.parent,target:e})}),t},copy:function zI(){return oo(this).eachBefore(y9)},[Symbol.iterator]:function*wN(){var t,i,r,s,n=this,e=[n];do{for(t=e.reverse(),e=[];n=t.pop();)if(yield n,i=n.children)for(r=0,s=i.length;r=7340032:return L_.BIG_MAP;case e>=2097152:return L_.MEDIUM_MAP;default:return L_.SMALL_MAP}}const XI=s1.f4.X,wd={fileIsInvalid:"File is empty or invalid.",apiVersionIsInvalid:"API Version is empty or invalid.",majorApiVersionIsOutdated:"API Version Outdated: Update CodeCharta API Version to match cc.json.",minorApiVersionOutdated:"Minor API Version Outdated.",nodesNotUnique:"Node names in combination with node types are not unique.",nodesEmpty:"The nodes array is empty. At least one node is required.",notAllFoldersAreFixed:"If at least one direct sub-folder of root is marked as fixed, all direct sub-folders of root must be fixed.",fixedFoldersOutOfBounds:"Coordinates of fixed folders must be within a range of 0 and 100.",fixedFoldersOverlapped:"Folders may not overlap.",fixedFoldersNotAllowed:"Fixated folders may not be defined in API-Version < 1.2.",fileAlreadyExists:"File already exists.",blacklistError:"Excluding all buildings is not possible.",fileContainsAuthorsAttribute:"File contains unsupported 'authors' attribute. This attribute will be ignored. Node containing the attribute: "};function KI(n){return n&&n.nodes?c1(n.nodes):[]}function YI(n){const t=[];return n&&function hM(n){return V_(n.apiVersion).minor>V_(XI).minor}(n)&&t.push(`${wd.minorApiVersionOutdated} Found: ${n.apiVersion}`),t}function np(n){const t=[];switch(!0){case!n:t.push(wd.fileIsInvalid);break;case!function SN(n){const{apiVersion:t}=n,e=void 0!==t,r=/\d+\.\d+/.test(t);return e&&r}(n):t.push(wd.apiVersionIsInvalid);break;case function C9(n){return V_(n.apiVersion).major>V_(XI).major}(n):t.push(wd.majorApiVersionIsOutdated)}return 0===t.length&&t.push(...function EN(n){const t=[];if(0===t.length){const i=new(mN())({allErrors:!0}).compile(p9);i(n)?0===n.nodes.length?t.push(wd.nodesEmpty):t.push(...function JI(n){const t=[],e=new Set;return e.add(`${n.name}|${n.type}`),eF(n,t,e,`/${n.name}`),t}(n.nodes[0]),...H_(n)):t.push(...i.errors.map(s=>function ZI(n){return`${n.keyword.charAt(0).toUpperCase()+n.keyword.slice(1)} error: ${n.dataPath.slice(1)} ${n.message}`}(s)))}return t}(n)),t}function c1(n){const t=[];for(const e of n)e.attributes?.authors&&(delete e.attributes.authors,t.push(`${wd.fileContainsAuthorsAttribute}"${e.name}"`)),e.children&&t.push(...c1(e.children));return t}function V_(n){return{major:Number(n.split(".")[0]),minor:Number(n.split(".")[1])}}function eF(n,t,e,i){if(!Ro(n))for(const r of n.children){const s=`${i}/${r.name}`;e.has(`${s}|${r.type}`)?t.push(`${wd.nodesNotUnique} Found duplicate of ${r.type} with path: ${s}`):(e.add(`${s}|${r.type}`),eF(r,t,e,s))}}function H_(n,t=n.nodes[0].children){const e=[],i=[],r=[],s=new Set;(function M9(n,t,e,i,r,s){for(const l of n)if(void 0===l.fixedPosition)t.push(`${l.name}`);else{const u=V_(e.apiVersion);if(u.major<1||1===u.major&&u.minor<2)return void i.push(`${wd.fixedFoldersNotAllowed} Found: ${e.apiVersion}`);IN(l)&&r.push(Q_(l));for(const f of n)void 0!==f.fixedPosition&&l!==f&&TN(l.fixedPosition,f.fixedPosition)&&!s.has(`${Q_(f)} and ${Q_(l)}`)&&s.add(`${Q_(l)} and ${Q_(f)}`)}})(t,i,n,e,r,s),i.length>0&&i.length!==t.length&&e.push(`${wd.notAllFoldersAreFixed} Found: ${i.join(", ")}`),r.length>0&&e.push(`${wd.fixedFoldersOutOfBounds} Found: ${r.join(", ")}`),s.size>0&&e.push(`${wd.fixedFoldersOverlapped} Found: ${[...s].join(", ")}`);for(const l of t)l.children&&e.push(...H_(n,l.children));return e}function Q_(n){return`${n.name} ${JSON.stringify(n.fixedPosition)}`}function TN(n,t){return Pm(n.left,n.top,t)||Pm(n.left,n.top+n.height,t)||Pm(n.left+n.width,n.top,t)||Pm(n.left+n.width,n.top+n.height,t)}function Pm(n,t,e){return n>=e.left&&n<=e.left+e.width&&t>=e.top&&t<=e.top+e.height}function IN({fixedPosition:{left:n,top:t,width:e,height:i}}){return n<0||t<0||n+e>100||t+i>100||e<0||i<0}const Pc=n=>{n.sort((t,e)=>{const i=t.name.toLowerCase(),r=e.name.toLowerCase();return i>r?1:r>i?-1:0})},yh="unary",qo=(n,t)=>{if(0===n.length)return[];const e=new Map,i=new Map,r=new Map;for(const{file:l}of n)for(const u of oo(l.map))if(Ro(u)&&u.data.path&&!cu(u.data.path,t,"exclude"))for(const f of Object.keys(u.data.attributes)){const p=i.get(f),m=r.get(f);e.get(f)||e.set(f,[]),e.get(f).push(u.data.attributes[f]),(void 0===m||m>=u.data.attributes[f])&&r.set(f,u.data.attributes[f]),(void 0===p||p<=u.data.attributes[f])&&i.set(f,u.data.attributes[f])}const s=[];i.set(yh,1),r.set(yh,1);for(const[l,u]of i)s.push({name:l,values:e.get(l),maxValue:u,minValue:r.get(l)});return Pc(s),s},du={decorateMap(n,t,e){for(const{data:i}of oo(n)){i.isFlattened=!1,i.isExcluded=!1;for(const r of e)"flatten"===r.type?i.isFlattened=i.isFlattened||qI(i,r.path):i.isExcluded=i.isExcluded||qI(i,r.path)&&Ro(i)}n.isExcluded=!1,this.decorateMapWithMetricData(n,t)},decorateMapWithMetricData(n,t){const{nodeMetricData:e,edgeMetricData:i}=t;let r=0;for(const{data:s}of oo(n)){s.id=r,r++,void 0===s.attributes&&(s.attributes={}),Ro(s)&&(s.attributes[yh]=1);for(const l of e)void 0===s.attributes[l.name]&&(s.attributes[l.name]=0),void 0!==s.deltas&&void 0===s.deltas[l.name]&&(s.deltas[l.name]=0);void 0===s.edgeAttributes&&(s.edgeAttributes={});for(const l of i)void 0===s.edgeAttributes[l.name]&&(s.edgeAttributes[l.name]={incoming:0,outgoing:0});d1(s)}},decorateMapWithPathAttribute(n){for(const t of oo(n.map))t.data.path=t.parent?`${t.parent.data.path}/${t.data.name}`:`/${t.data.name}`;return n},decorateParentNodesWithAggregatedAttributes(n,t,e){const i=new Map,r=Object.keys(n.attributes),s=Object.keys(n.edgeAttributes);oo(n).eachAfter(function({data:u,parent:f}){if(!u.isExcluded&&f){for(const p of r){const _=`${p}${f.data.path}`;e.nodes[p]===Fc.relative?(FN(i,`${p}${u.path}`,_,u,p,t),Om(i,_,u,p,t)):(f.data.attributes[p]+=u.attributes[p],t&&f.data.deltas&&(f.data.deltas[p]=f.data.deltas[p]??0,f.data.deltas[p]+=u.deltas[p]??0))}t&&f.data.fileCount&&(f.data.fileCount.added+=u.fileCount.added,f.data.fileCount.changed+=u.fileCount.changed,f.data.fileCount.removed+=u.fileCount.removed);for(const p of s){const m=u.edgeAttributes[p];if(!m)continue;const _=`${p}${u.path}`,b=`${p}${f.data.path}`;e.edges[p]===Fc.relative?(Nm(i,`INCOMING${_}`,`INCOMING${b}`,u,p,"incoming"),Nm(i,`OUTGOING${_}`,`OUTGOING${b}`,u,p,"outgoing"),gl(i,`INCOMING${b}`,u,p,"incoming"),gl(i,`OUTGOING${b}`,u,p,"outgoing")):(f.data.edgeAttributes[p].incoming+=m.incoming,f.data.edgeAttributes[p].outgoing+=m.outgoing)}}});for(const l of s)e.edges[l]===Fc.relative&&(n.edgeAttributes[l].incoming=wh(i.get(`INCOMING${l}${n.path}`)),n.edgeAttributes[l].outgoing=wh(i.get(`OUTGOING${l}${n.path}`)));for(const l of r)e.nodes[l]===Fc.relative&&(n.attributes[l]=wh(i.get(`MEDIAN${l}${n.path}`)),t&&n.deltas&&(n.deltas[l]=wh(i.get(`DELTA${l}${n.path}`))))}};function d1(n){if((1!==n.children?.length||!n.children[0]?.fixedPosition)&&1===n.children?.length&&n.children[0].children?.length>0){const[t]=n.children;n.children=t.children,n.name+=`/${t.name}`,n.path+=`/${t.name}`,t.link&&(n.link=t.link)}}function gl(n,t,e,i,r){0!==e.edgeAttributes[i][r]&&u1(n,t,e,e.edgeAttributes[i][r])}function Om(n,t,e,i,r){0!==e.attributes[i]&&u1(n,`MEDIAN${t}`,e,e.attributes[i]),r&&e.deltas&&0!==e.deltas[i]&&u1(n,`DELTA${t}`,e,e.deltas[i])}function FN(n,t,e,i,r,s){if(Ro(i))return;const l=n.get(`MEDIAN${t}`);if(void 0!==l&&(i.attributes[r]=wh(l),z_(n,`MEDIAN${e}`,l)),s&&i.deltas){const u=n.get(`DELTA${t}`);void 0!==u&&(i.deltas[r]=wh(u),z_(n,`DELTA${e}`,u))}}function Nm(n,t,e,i,r,s){if(Ro(i))return;const l=n.get(t);void 0!==l&&(i.edgeAttributes[r][s]=wh(l),z_(n,e,l))}function z_(n,t,e){const i=n.get(t);void 0===i?n.set(t,e):function BN(n,t){let e=0;for(let i=0;it[e]&&(r++,e++,e!==t.length););if(r>0&&(n.splice(i,0,...t.slice(e-r,e)),e===t.length))return}n.push(...t.slice(e))}(i,e)}function u1(n,t,e,i){const r=n.get(t);void 0===r?n.set(t,[i]):Ro(e)&&function DN(n,t){let e=0,i=n.length-1,r=0;if(i<0||n[i]<=t)n.push(t);else if(n[0]>=t)n.unshift(t);else for(;e<=i;)if(r=Math.floor((e+i)/2),n[r]{switch(t.type){case"flatten":return{path:t.path,type:"hide"};case"exclude":return{path:t.path,type:t.type}}})}}function is(n,t,e,i,r){i()&&(n.length=0,r(),localStorage.removeItem("scenarios"));const s=function pN(n){const t=n.content;return{fileMeta:{fileName:n.fileName,fileChecksum:t.fileChecksum,projectName:t.projectName,apiVersion:t.apiVersion,exportedFileSize:n.fileSize,repoCreationDate:t.repoCreationDate||""},settings:{fileSettings:{edges:t.edges||[],attributeTypes:AN(t.attributeTypes),attributeDescriptors:h9(t.attributeDescriptors),blacklist:UI(t.blacklist||[]),markedPackages:t.markedPackages||[]}},map:C(t.nodes[0])}}(e);du.decorateMapWithPathAttribute(s);const l=s.fileMeta.fileChecksum;let u=s.fileMeta.fileName;const f=new Map(n.map(_=>[_.file.fileMeta.fileName,_.file.fileMeta.fileChecksum])),p=new Map(n.map((_,b)=>[_.file.fileMeta.fileChecksum,b])),m=p.has(l);return f.has(u)&&(u=function G_(n,t,e){if(t.get(n)===e)return n;let i=!1,r=1,s=n;for(;!i;){const l=n.indexOf(".");s=l>=0?[n.slice(0,l),"_",r,n.slice(l)].join(""):`${n}_${r}`,(t.get(s)===e||!t.has(s))&&(i=!0),r++}return s}(u,f,l),s.fileMeta.fileName=u),m?(n[p.get(l)].file.fileMeta.fileName=u,t.unshift(u),!1):(n.push({file:s,selectedAs:At.None}),t.push(u),!0)}const Fa={rootName:"root",rootPath:"/root",updateRoot(n){this.rootName=n,this.rootPath=`/${n}`}},xh=bn("CURRENT_FILES_ARE_SAMPLE_FILES",{_as:"props",_p:void 0}),ip="File(s) could not be loaded";let rp=(()=>{class n{static{this.CC_FILE_EXTENSION=".cc.json"}constructor(e,i,r){this.store=e,this.state=i,this.dialog=r,this.referenceFileSubscription=this.store.select(Tn).pipe(ro(s=>{s&&Fa.updateRoot(s.map.name)})).subscribe()}ngOnDestroy(){this.referenceFileSubscription.unsubscribe()}loadFiles(e){const i=C(this.state.getValue().files),r=[],s=[],l=function kN(n,t,e,i,r,s){let l=!1;for(const u of e){const f={fileName:u?.fileName,errors:[],warnings:[]};f.warnings.push(...KI(u?.content)),f.errors.push(...np(u?.content)),0===f.errors.length&&(f.warnings.push(...YI(u?.content)),is(n,t,u,r,s)&&(l=!0)),(f.errors.length>0||f.warnings.length>0)&&i.push(f)}return l}(i,r,e,s,()=>this.state.getValue().appStatus.currentFilesAreSampleFiles,()=>this.store.dispatch(xh({value:!1})));if(s.length>0&&this.dialog.open(lu,{data:RI(s)}),0===r.length)throw new Error(ip);this.store.dispatch(S({value:i}));const u=r[0],f=this.state.getValue().files.find(p=>p.file.fileMeta.fileName===u).file.map.name;if(this.store.dispatch(se({fileNames:r})),Fa.updateRoot(f),!l)throw new Error("File(s) are already loaded")}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(Es))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const nF=/_\d{4}(?:-\d{1,2}){2}_\d{1,2}-\d{1,2}\./;let uu=(()=>{class n{static{this.JSON_EXTENSION=".json"}static getNewFileName(e,i){return`${this.getFileNameWithoutTimestamp(e,i)}_${this.getNewTimestamp()}`}static getNewTimestamp(){return n.getFormattedTimestamp(new Date)}static getFormattedTimestamp(e){return e.toISOString().slice(0,16).replace("T","_").replace(":","-")}static getFileNameWithoutTimestamp(e,i){if(!i){const r=nF.exec(e);if(r)return e.slice(0,r.index);if(e.endsWith(rp.CC_FILE_EXTENSION))return e.slice(0,-rp.CC_FILE_EXTENSION.length);if(e.endsWith(n.JSON_EXTENSION))return e.slice(0,-n.JSON_EXTENSION.length)}return e}static withoutCCExtension(e){return e.replace(/(\.cc)?(\.json)?(\.gz)?$/,"")}}return n})();class Lm{static downloadCurrentMap(t,e,i,r,s){const l=this.getProjectDataAsCCJsonFormat(t,e,i,r),u=s+rp.CC_FILE_EXTENSION;this.downloadData(JSON.stringify(l),u)}static getProjectDataAsCCJsonFormat(t,e,i,r){return{projectName:e.projectName,apiVersion:e.apiVersion,fileChecksum:e.fileChecksum,nodes:[this.undecorateMap(t)],attributeTypes:r.includes("AttributeTypes")?this.getAttributeTypesForJSON(i.attributeTypes):{},attributeDescriptors:r.includes("AttributeDescriptors")?this.getAttributeDescriptorsForJSON(i.attributeDescriptors):{},edges:r.includes("Edges")?this.undecorateEdges(i.edges):[],markedPackages:r.includes("MarkedPackages")?i.markedPackages:[],blacklist:this.getBlacklistToDownload(r,i.blacklist)}}static getBlacklistToDownload(t,e){const i=[];return t.includes("Flattens")&&i.push(...this.getFilteredBlacklist(e,"flatten").map(r=>({path:r.path,type:"hide"}))),t.includes("Excludes")&&i.push(...this.getFilteredBlacklist(e,"exclude")),i}static getAttributeTypesForJSON(t){return 0===Object.keys(t.edges).length&&0===Object.keys(t.nodes).length?{}:t}static getAttributeDescriptorsForJSON(t){return 0===Object.keys(t).length?{}:t}static getFilteredBlacklist(t,e){return t.filter(i=>i.type===e)}static undecorateMap(t){const e=C(t);for(const{data:i}of oo(e))delete i.isExcluded,delete i.isFlattened,delete i.edgeAttributes,delete i.path,i.type===ts.FOLDER?i.attributes={}:delete i.attributes[yh];return e}static undecorateEdges(t){const e=C(t);for(const i of e)delete i.visible;return e}static downloadData(t,e){const i=new Blob([t],{type:"text/json"}),r=document.createEvent("MouseEvents"),s=document.createElement("a");s.download=e,s.href=window.URL.createObjectURL(i),s.dataset.downloadurl=["text/json",s.download,s.href].join(":"),r.initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),s.dispatchEvent(r)}}const hu=bn("SET_STATE",{_as:"props",_p:void 0}),rF=".cc.config.json",Vm="CodeCharta::customConfigs";class mr{static{this.customConfigs=mr.loadCustomConfigsFromLocalStorage()}static{this.customConfigChange$=new $d.t(null)}static setCustomConfigsToLocalStorage(){const t={version:"1.0.1",customConfigs:[...mr.customConfigs]};localStorage.setItem(Vm,JSON.stringify(t,im)),mr.customConfigChange$.next(null)}static loadCustomConfigsFromLocalStorage(){const t=this.getCcLocalStorage();return new Map(t?.customConfigs)}static getCcLocalStorage(){return JSON.parse(localStorage.getItem(Vm),Cy)}static addCustomConfig(t){mr.customConfigs.set(t.id,t),mr.setCustomConfigsToLocalStorage()}static editCustomConfigNote(t,e){const i=mr.customConfigs.get(t);i.note=e,mr.customConfigs.set(t,i),mr.setCustomConfigsToLocalStorage()}static getCustomConfigSettings(t){return mr.customConfigs.get(t)}static hasCustomConfigByName(t,e,i){for(const r of mr.customConfigs.values())if(r.name===i&&r.mapSelectionMode===t&&this.areEqual(e,r.assignedMaps))return!0;return!1}static areEqual(t,e){return t.size===e.size&&[...t.entries()].every(([i,r])=>e.has(i)&&e.get(i)===r)}static getCustomConfigs(){return mr.customConfigs}static importCustomConfigs(t){const e=JSON.parse(t,Cy);for(const i of e.customConfigs.values()){if(mr.getCustomConfigSettings(i.id))continue;mr.hasCustomConfigByName(i.mapSelectionMode,i.assignedMaps,i.name)&&(i.name+=` (${uu.getFormattedTimestamp(new Date(i.creationTime))})`);const s={id:i.id,name:i.name,creationTime:i.creationTime,assignedMaps:i.assignedMaps,customConfigVersion:i.customConfigVersion,mapSelectionMode:i.mapSelectionMode,stateSettings:i.stateSettings,camera:i.camera,...i.note&&{note:i.note}};mr.addCustomConfig(s)}}static downloadCustomConfigs(t){const e={downloadApiVersion:"1.0.1",timestamp:Date.now(),customConfigs:t},i=uu.getNewTimestamp()+rF;Lm.downloadData(JSON.stringify(e,im),i)}static createExportCustomConfigFromConfig(t){return{...t}}static getCustomConfigsAmountByMapAndMode(t,e){let i=0;for(const r of mr.customConfigs.values())[...r.assignedMaps.values()].join(" ")===t&&r.mapSelectionMode===e&&i++;return i}static getConfigNameSuggestionByFileState({mapSelectionMode:t,assignedMaps:e}){const i=[...e.values()].join(" ");return`${i} #${mr.getCustomConfigsAmountByMapAndMode(i,t)+1}`}static deleteCustomConfigs(t){for(const e of t)mr.customConfigs.delete(e.id);mr.setCustomConfigsToLocalStorage()}static deleteCustomConfig(t){mr.customConfigs.delete(t),mr.setCustomConfigsToLocalStorage()}static sortCustomConfigDropDownGroupList(t,e){if(!e.hasApplicableItems){if(t.hasApplicableItems||t.mapSelectionMode{const n=document.createElement("INPUT");return n.setAttribute("type","file"),n.setAttribute("accept",".json,.gz"),n.setAttribute("multiple",""),document.body.appendChild(n),n},fu="base";function pM(n,t,e,i,r,s){if(0===n.length)return;const[l]=n;let u={name:l,type:j_(n)?ts.FILE:ts.FOLDER,attributes:{}};j_(n)?u=function PN(n,t,e){const i={...t};return i.attributes={height:e.scale.y},{name:n,type:ts.FOLDER,attributes:{},children:[i]}}(l,u,i):u.children=[],function op(n,t){return n.some(e=>e.name===t)}(t,l)?u=t.find(m=>m.name===l):t.push(u);const f=r.find(m=>m.name===e);u.fixedPosition=function _l(n,t,e,i){let r;if(n.type===ts.FOLDER){const l=t.position.z-t.scale.z/2,f=e.position.z-e.scale.z/2,p=f1((e.position.x-e.scale.x/2-(t.position.x-t.scale.x/2))/t.scale.x*100,2);r={left:f1((f-l)/t.scale.z*100,2),top:p,width:f1(e.scale.z/t.scale.z*100,2),height:f1(e.scale.x/t.scale.x*100,2)}}return n.name===i&&(r=function ON(n){const t={...n};return t.top=Math.floor(50-t.height/2),t.left=Math.floor(50-t.width/2),t}(r)),r}(u,f,i,s.name);const p=e===fu?u.name:`${e}.${u.name}`;pM(n.slice(1),u.children,p,i,r,s)}function j_(n){return 1===n.length}function f1(n,t){const e=Math.pow(10,t);return Math.round(n*e)/e}function p1(n){const t=n.replaceAll(".","/"),i=n.split(".").slice(-1);return`/${fu}/${t}/${i}`}const E9=JSON.parse('{"$id":"http://example.com/example.json","$schema":"http://json-schema.org/draft-07/schema","default":{},"description":"This is the JSON Schema for the GameObjectsPositions structure","examples":[{"gameObjectPositions":[{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.HelloWorldTest","position":{"x":69,"y":18.5,"z":228.5},"scale":{"x":9,"y":5,"z":9}},{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.TryCatchFinallyTest","position":{"x":66,"y":22.5,"z":177.5},"scale":{"x":1,"y":13,"z":1}}],"cycles":[{"from":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParser","to":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParserParameter"}]}],"required":["gameObjectPositions"],"title":"The root schema","type":"object","properties":{"gameObjectPositions":{"$id":"#/properties/gameObjectPositions","type":"array","title":"The gameObjectPositions schema","description":"Defines the position and scale of GameObjects","default":[],"examples":[[{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.HelloWorldTest","position":{"x":69,"y":18.5,"z":228.5},"scale":{"x":9,"y":5,"z":9}},{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.SwitchCaseTest","position":{"x":65,"y":22,"z":181},"scale":{"x":2,"y":12,"z":2}}]],"additionalItems":true,"items":{"$id":"#/properties/gameObjectPositions/items","anyOf":[{"$id":"#/properties/gameObjectPositions/items/anyOf/0","type":"object","title":"The first anyOf schema","description":"Defines the properties of a GameObject","default":{},"examples":[{"name":"root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.HelloWorldTest","position":{"x":69,"y":18.5,"z":228.5},"scale":{"x":9,"y":5,"z":9}}],"required":["name","position","scale"],"properties":{"name":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/name","type":"string","title":"The name schema","description":"An explanation about the purpose of this instance.","default":"","examples":["root.analysis.import.SourceCodeParser.src.test.kotlin.de.maibornwolff.codecharta.importer.sourcecodeparser.oop.core.extract.HelloWorldTest"]},"position":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/position","type":"object","title":"The position schema","description":"The position in absolute values","default":{},"examples":[{"x":69,"y":18.5,"z":228.5}],"required":["x","y","z"],"properties":{"x":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/position/properties/x","type":"number","title":"The x schema","description":"x position","default":0,"examples":[69]},"y":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/position/properties/y","type":"number","title":"The y schema","description":"y position","default":0,"examples":[18.5]},"z":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/position/properties/z","type":"number","title":"The z schema","description":"z position","default":0,"examples":[228.5]}},"additionalProperties":true},"scale":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/scale","type":"object","title":"The scale schema","description":"The scale of GameObjects","default":{},"examples":[{"x":9,"y":5,"z":9}],"required":["x","y","z"],"properties":{"x":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/scale/properties/x","type":"number","title":"The x schema","description":"x scale","default":0,"examples":[9]},"y":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/scale/properties/y","type":"number","title":"The y schema","description":"y scale","default":0,"examples":[5]},"z":{"$id":"#/properties/gameObjectPositions/items/anyOf/0/properties/scale/properties/z","type":"number","title":"The z schema","description":"z scale","default":0,"examples":[9]}},"additionalProperties":true}},"additionalProperties":true}]}},"cycles":{"$id":"#/properties/cycles","type":"array","title":"The cycles schema","description":"Defines the cycles between GameObjects","default":[],"examples":[[{"from":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParser","to":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParserParameter"}]],"additionalItems":true,"items":{"$id":"#/properties/cycles/items","anyOf":[{"$id":"#/properties/cycles/items/anyOf/0","type":"object","title":"The first anyOf schema","description":"A cycle between two GameObjects","default":{},"examples":[{"from":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParser","to":"root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParserParameter"}],"required":["from","to"],"properties":{"from":{"$id":"#/properties/cycles/items/anyOf/0/properties/from","type":"string","title":"The from schema","description":"from GameObject","default":"","examples":["root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParser"]},"to":{"$id":"#/properties/cycles/items/anyOf/0/properties/to","type":"string","title":"The to schema","description":"to GameObject","default":"","examples":["root.analysis.import.SCMLogParser.src.main.java.de.maibornwolff.codecharta.importer.scmlogparser.SCMLogParserParameter"]}},"additionalProperties":true}]}}},"additionalProperties":true}');function sp(n){let t=n.length;for(;--t>=0;)n[t]=0}const vM=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),Gm=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),yM=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),hF=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),pu=new Array(576);sp(pu);const q_=new Array(60);sp(q_);const W_=new Array(512);sp(W_);const X_=new Array(256);sp(X_);const wM=new Array(29);sp(wM);const v1=new Array(30);function xM(n,t,e,i,r){this.static_tree=n,this.extra_bits=t,this.extra_base=e,this.elems=i,this.max_length=r,this.has_stree=n&&n.length}let fF,pF,AF;function CM(n,t){this.dyn_tree=n,this.max_code=0,this.stat_desc=t}sp(v1);const mF=n=>n<256?W_[n]:W_[256+(n>>>7)],K_=(n,t)=>{n.pending_buf[n.pending++]=255&t,n.pending_buf[n.pending++]=t>>>8&255},ja=(n,t,e)=>{n.bi_valid>16-e?(n.bi_buf|=t<>16-n.bi_valid,n.bi_valid+=e-16):(n.bi_buf|=t<{ja(n,e[2*t],e[2*t+1])},MM=(n,t)=>{let e=0;do{e|=1&n,n>>>=1,e<<=1}while(--t>0);return e>>>1},gF=(n,t,e)=>{const i=new Array(16);let s,l,r=0;for(s=1;s<=15;s++)r=r+e[s-1]<<1,i[s]=r;for(l=0;l<=t;l++){let u=n[2*l+1];0!==u&&(n[2*l]=MM(i[u]++,u))}},bF=n=>{let t;for(t=0;t<286;t++)n.dyn_ltree[2*t]=0;for(t=0;t<30;t++)n.dyn_dtree[2*t]=0;for(t=0;t<19;t++)n.bl_tree[2*t]=0;n.dyn_ltree[512]=1,n.opt_len=n.static_len=0,n.sym_next=n.matches=0},SM=n=>{n.bi_valid>8?K_(n,n.bi_buf):n.bi_valid>0&&(n.pending_buf[n.pending++]=n.bi_buf),n.bi_buf=0,n.bi_valid=0},TM=(n,t,e,i)=>{const r=2*t,s=2*e;return n[r]{const i=n.heap[e];let r=e<<1;for(;r<=n.heap_len&&(r{let i,r,l,u,s=0;if(0!==n.sym_next)do{i=255&n.pending_buf[n.sym_buf+s++],i+=(255&n.pending_buf[n.sym_buf+s++])<<8,r=n.pending_buf[n.sym_buf+s++],0===i?Oc(n,r,t):(l=X_[r],Oc(n,l+256+1,t),u=vM[l],0!==u&&(r-=wM[l],ja(n,r,u)),i--,l=mF(i),Oc(n,l,e),u=Gm[l],0!==u&&(i-=v1[l],ja(n,i,u)))}while(s{const e=t.dyn_tree,i=t.stat_desc.static_tree,r=t.stat_desc.has_stree,s=t.stat_desc.elems;let l,u,p,f=-1;for(n.heap_len=0,n.heap_max=573,l=0;l>1;l>=1;l--)cp(n,e,l);p=s;do{l=n.heap[1],n.heap[1]=n.heap[n.heap_len--],cp(n,e,1),u=n.heap[1],n.heap[--n.heap_max]=l,n.heap[--n.heap_max]=u,e[2*p]=e[2*l]+e[2*u],n.depth[p]=(n.depth[l]>=n.depth[u]?n.depth[l]:n.depth[u])+1,e[2*l+1]=e[2*u+1]=p,n.heap[1]=p++,cp(n,e,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],((n,t)=>{const e=t.dyn_tree,i=t.max_code,r=t.stat_desc.static_tree,s=t.stat_desc.has_stree,l=t.stat_desc.extra_bits,u=t.stat_desc.extra_base,f=t.stat_desc.max_length;let p,m,_,b,w,F,D=0;for(b=0;b<=15;b++)n.bl_count[b]=0;for(e[2*n.heap[n.heap_max]+1]=0,p=n.heap_max+1;p<573;p++)m=n.heap[p],b=e[2*e[2*m+1]+1]+1,b>f&&(b=f,D++),e[2*m+1]=b,!(m>i)&&(n.bl_count[b]++,w=0,m>=u&&(w=l[m-u]),F=e[2*m],n.opt_len+=F*(b+w),s&&(n.static_len+=F*(r[2*m+1]+w)));if(0!==D){do{for(b=f-1;0===n.bl_count[b];)b--;n.bl_count[b]--,n.bl_count[b+1]+=2,n.bl_count[f]--,D-=2}while(D>0);for(b=f;0!==b;b--)for(m=n.bl_count[b];0!==m;)_=n.heap[--p],!(_>i)&&(e[2*_+1]!==b&&(n.opt_len+=(b-e[2*_+1])*e[2*_],e[2*_+1]=b),m--)}})(n,t),gF(e,f,n.bl_count)},IM=(n,t,e)=>{let i,s,r=-1,l=t[1],u=0,f=7,p=4;for(0===l&&(f=138,p=3),t[2*(e+1)+1]=65535,i=0;i<=e;i++)s=l,l=t[2*(i+1)+1],!(++u{let i,s,r=-1,l=t[1],u=0,f=7,p=4;for(0===l&&(f=138,p=3),i=0;i<=e;i++)if(s=l,l=t[2*(i+1)+1],!(++u{ja(n,0+(i?1:0),3),SM(n),K_(n,e),K_(n,~e),e&&n.pending_buf.set(n.window.subarray(t,t+e),n.pending),n.pending+=e};var CF={_tr_init:n=>{up||((()=>{let n,t,e,i,r;const s=new Array(16);for(e=0,i=0;i<28;i++)for(wM[i]=e,n=0;n<1<>=7;i<30;i++)for(v1[i]=r<<7,n=0;n<1<{let r,s,l=0;n.level>0?(2===n.strm.data_type&&(n.strm.data_type=(n=>{let e,t=4093624447;for(e=0;e<=31;e++,t>>>=1)if(1&t&&0!==n.dyn_ltree[2*e])return 0;if(0!==n.dyn_ltree[18]||0!==n.dyn_ltree[20]||0!==n.dyn_ltree[26])return 1;for(e=32;e<256;e++)if(0!==n.dyn_ltree[2*e])return 1;return 0})(n)),Eh(n,n.l_desc),Eh(n,n.d_desc),l=(n=>{let t;for(IM(n,n.dyn_ltree,n.l_desc.max_code),IM(n,n.dyn_dtree,n.d_desc.max_code),Eh(n,n.bl_desc),t=18;t>=3&&0===n.bl_tree[2*hF[t]+1];t--);return n.opt_len+=3*(t+1)+5+5+4,t})(n),r=n.opt_len+3+7>>>3,s=n.static_len+3+7>>>3,s<=r&&(r=s)):r=s=e+5,e+4<=r&&-1!==t?hp(n,t,e,i):4===n.strategy||s===r?(ja(n,2+(i?1:0),3),y1(n,pu,q_)):(ja(n,4+(i?1:0),3),((n,t,e,i)=>{let r;for(ja(n,t-257,5),ja(n,e-1,5),ja(n,i-4,4),r=0;r(n.pending_buf[n.sym_buf+n.sym_next++]=t,n.pending_buf[n.sym_buf+n.sym_next++]=t>>8,n.pending_buf[n.sym_buf+n.sym_next++]=e,0===t?n.dyn_ltree[2*e]++:(n.matches++,t--,n.dyn_ltree[2*(X_[e]+256+1)]++,n.dyn_dtree[2*mF(t)]++),n.sym_next===n.sym_end),_tr_align:n=>{ja(n,2,3),Oc(n,256,pu),(n=>{16===n.bi_valid?(K_(n,n.bi_buf),n.bi_buf=0,n.bi_valid=0):n.bi_valid>=8&&(n.pending_buf[n.pending++]=255&n.bi_buf,n.bi_buf>>=8,n.bi_valid-=8)})(n)}},Zm=(n,t,e,i)=>{let r=65535&n,s=n>>>16&65535,l=0;for(;0!==e;){l=e>2e3?2e3:e,e-=l;do{r=r+t[i++]|0,s=s+r|0}while(--l);r%=65521,s%=65521}return r|s<<16};const EF=new Uint32Array((()=>{let n,t=[];for(var e=0;e<256;e++){n=e;for(var i=0;i<8;i++)n=1&n?3988292384^n>>>1:n>>>1;t[e]=n}return t})());var Fo=(n,t,e,i)=>{const r=EF,s=i+e;n^=-1;for(let l=i;l>>8^r[255&(n^t[l])];return~n},fp={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},pp={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:BM,_tr_stored_block:Au,_tr_flush_block:kM,_tr_tally:Sh,_tr_align:RM}=CF,{Z_NO_FLUSH:Ap,Z_PARTIAL_FLUSH:S9,Z_FULL_FLUSH:zN,Z_FINISH:Jl,Z_BLOCK:PM,Z_OK:Ys,Z_STREAM_END:gs,Z_STREAM_ERROR:Nc,Z_DATA_ERROR:GN,Z_BUF_ERROR:OM,Z_DEFAULT_COMPRESSION:SF,Z_FILTERED:jN,Z_HUFFMAN_ONLY:Y_,Z_RLE:TF,Z_FIXED:Jm,Z_DEFAULT_STRATEGY:$N,Z_UNKNOWN:qN,Z_DEFLATED:Z_}=pp,_s=262,xd=(n,t)=>(n.msg=fp[t],t),PF=n=>2*n-(n>4?9:0),mu=n=>{let t=n.length;for(;--t>=0;)n[t]=0},OF=n=>{let t,e,i,r=n.w_size;t=n.hash_size,i=t;do{e=n.head[--i],n.head[i]=e>=r?e-r:0}while(--t);t=r,i=t;do{e=n.prev[--i],n.prev[i]=e>=r?e-r:0}while(--t)};let Th=(n,t,e)=>(t<{const t=n.state;let e=t.pending;e>n.avail_out&&(e=n.avail_out),0!==e&&(n.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+e),n.next_out),n.next_out+=e,t.pending_out+=e,n.total_out+=e,n.avail_out-=e,t.pending-=e,0===t.pending&&(t.pending_out=0))},vl=(n,t)=>{kM(n,n.block_start>=0?n.block_start:-1,n.strstart-n.block_start,t),n.block_start=n.strstart,bl(n.strm)},Gr=(n,t)=>{n.pending_buf[n.pending++]=t},nb=(n,t)=>{n.pending_buf[n.pending++]=t>>>8&255,n.pending_buf[n.pending++]=255&t},QM=(n,t,e,i)=>{let r=n.avail_in;return r>i&&(r=i),0===r?0:(n.avail_in-=r,t.set(n.input.subarray(n.next_in,n.next_in+r),e),1===n.state.wrap?n.adler=Zm(n.adler,t,r,e):2===n.state.wrap&&(n.adler=Fo(n.adler,t,r,e)),n.next_in+=r,n.total_in+=r,r)},NF=(n,t)=>{let r,s,e=n.max_chain_length,i=n.strstart,l=n.prev_length,u=n.nice_match;const f=n.strstart>n.w_size-_s?n.strstart-(n.w_size-_s):0,p=n.window,m=n.w_mask,_=n.prev,b=n.strstart+258;let w=p[i+l-1],F=p[i+l];n.prev_length>=n.good_match&&(e>>=2),u>n.lookahead&&(u=n.lookahead);do{if(r=t,p[r+l]===F&&p[r+l-1]===w&&p[r]===p[i]&&p[++r]===p[i+1]){i+=2,r++;do{}while(p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&p[++i]===p[++r]&&il){if(n.match_start=t,l=s,s>=u)break;w=p[i+l-1],F=p[i+l]}}}while((t=_[t&m])>f&&0!=--e);return l<=n.lookahead?l:n.lookahead},bp=n=>{const t=n.w_size;let e,i,r;do{if(i=n.window_size-n.lookahead-n.strstart,n.strstart>=t+(t-_s)&&(n.window.set(n.window.subarray(t,t+t-i),0),n.match_start-=t,n.strstart-=t,n.block_start-=t,n.insert>n.strstart&&(n.insert=n.strstart),OF(n),i+=t),0===n.strm.avail_in)break;if(e=QM(n.strm,n.window,n.strstart+n.lookahead,i),n.lookahead+=e,n.lookahead+n.insert>=3)for(r=n.strstart-n.insert,n.ins_h=n.window[r],n.ins_h=Th(n,n.ins_h,n.window[r+1]);n.insert&&(n.ins_h=Th(n,n.ins_h,n.window[r+3-1]),n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++,n.insert--,!(n.lookahead+n.insert<3)););}while(n.lookahead<_s&&0!==n.strm.avail_in)},LF=(n,t)=>{let i,r,s,e=n.pending_buf_size-5>n.w_size?n.w_size:n.pending_buf_size-5,l=0,u=n.strm.avail_in;do{if(i=65535,s=n.bi_valid+42>>3,n.strm.avail_outr+n.strm.avail_in&&(i=r+n.strm.avail_in),i>s&&(i=s),i>8,n.pending_buf[n.pending-2]=~i,n.pending_buf[n.pending-1]=~i>>8,bl(n.strm),r&&(r>i&&(r=i),n.strm.output.set(n.window.subarray(n.block_start,n.block_start+r),n.strm.next_out),n.strm.next_out+=r,n.strm.avail_out-=r,n.strm.total_out+=r,n.block_start+=r,i-=r),i&&(QM(n.strm,n.strm.output,n.strm.next_out,i),n.strm.next_out+=i,n.strm.avail_out-=i,n.strm.total_out+=i)}while(0===l);return u-=n.strm.avail_in,u&&(u>=n.w_size?(n.matches=2,n.window.set(n.strm.input.subarray(n.strm.next_in-n.w_size,n.strm.next_in),0),n.strstart=n.w_size,n.insert=n.strstart):(n.window_size-n.strstart<=u&&(n.strstart-=n.w_size,n.window.set(n.window.subarray(n.w_size,n.w_size+n.strstart),0),n.matches<2&&n.matches++,n.insert>n.strstart&&(n.insert=n.strstart)),n.window.set(n.strm.input.subarray(n.strm.next_in-u,n.strm.next_in),n.strstart),n.strstart+=u,n.insert+=u>n.w_size-n.insert?n.w_size-n.insert:u),n.block_start=n.strstart),n.high_waters&&n.block_start>=n.w_size&&(n.block_start-=n.w_size,n.strstart-=n.w_size,n.window.set(n.window.subarray(n.w_size,n.w_size+n.strstart),0),n.matches<2&&n.matches++,s+=n.w_size,n.insert>n.strstart&&(n.insert=n.strstart)),s>n.strm.avail_in&&(s=n.strm.avail_in),s&&(QM(n.strm,n.window,n.strstart,s),n.strstart+=s,n.insert+=s>n.w_size-n.insert?n.w_size-n.insert:s),n.high_water>3,s=n.pending_buf_size-s>65535?65535:n.pending_buf_size-s,e=s>n.w_size?n.w_size:s,r=n.strstart-n.block_start,(r>=e||(r||t===Jl)&&t!==Ap&&0===n.strm.avail_in&&r<=s)&&(i=r>s?s:r,l=t===Jl&&0===n.strm.avail_in&&i===r?1:0,Au(n,n.block_start,i,l),n.block_start+=i,bl(n.strm)),l?3:1)},ib=(n,t)=>{let e,i;for(;;){if(n.lookahead<_s){if(bp(n),n.lookahead<_s&&t===Ap)return 1;if(0===n.lookahead)break}if(e=0,n.lookahead>=3&&(n.ins_h=Th(n,n.ins_h,n.window[n.strstart+3-1]),e=n.prev[n.strstart&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=n.strstart),0!==e&&n.strstart-e<=n.w_size-_s&&(n.match_length=NF(n,e)),n.match_length>=3)if(i=Sh(n,n.strstart-n.match_start,n.match_length-3),n.lookahead-=n.match_length,n.match_length<=n.max_lazy_match&&n.lookahead>=3){n.match_length--;do{n.strstart++,n.ins_h=Th(n,n.ins_h,n.window[n.strstart+3-1]),e=n.prev[n.strstart&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=n.strstart}while(0!=--n.match_length);n.strstart++}else n.strstart+=n.match_length,n.match_length=0,n.ins_h=n.window[n.strstart],n.ins_h=Th(n,n.ins_h,n.window[n.strstart+1]);else i=Sh(n,0,n.window[n.strstart]),n.lookahead--,n.strstart++;if(i&&(vl(n,!1),0===n.strm.avail_out))return 1}return n.insert=n.strstart<2?n.strstart:2,t===Jl?(vl(n,!0),0===n.strm.avail_out?3:4):n.sym_next&&(vl(n,!1),0===n.strm.avail_out)?1:2},rb=(n,t)=>{let e,i,r;for(;;){if(n.lookahead<_s){if(bp(n),n.lookahead<_s&&t===Ap)return 1;if(0===n.lookahead)break}if(e=0,n.lookahead>=3&&(n.ins_h=Th(n,n.ins_h,n.window[n.strstart+3-1]),e=n.prev[n.strstart&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=n.strstart),n.prev_length=n.match_length,n.prev_match=n.match_start,n.match_length=2,0!==e&&n.prev_length4096)&&(n.match_length=2)),n.prev_length>=3&&n.match_length<=n.prev_length){r=n.strstart+n.lookahead-3,i=Sh(n,n.strstart-1-n.prev_match,n.prev_length-3),n.lookahead-=n.prev_length-1,n.prev_length-=2;do{++n.strstart<=r&&(n.ins_h=Th(n,n.ins_h,n.window[n.strstart+3-1]),e=n.prev[n.strstart&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=n.strstart)}while(0!=--n.prev_length);if(n.match_available=0,n.match_length=2,n.strstart++,i&&(vl(n,!1),0===n.strm.avail_out))return 1}else if(n.match_available){if(i=Sh(n,0,n.window[n.strstart-1]),i&&vl(n,!1),n.strstart++,n.lookahead--,0===n.strm.avail_out)return 1}else n.match_available=1,n.strstart++,n.lookahead--}return n.match_available&&(i=Sh(n,0,n.window[n.strstart-1]),n.match_available=0),n.insert=n.strstart<2?n.strstart:2,t===Jl?(vl(n,!0),0===n.strm.avail_out?3:4):n.sym_next&&(vl(n,!1),0===n.strm.avail_out)?1:2};function Vc(n,t,e,i,r){this.good_length=n,this.max_lazy=t,this.nice_length=e,this.max_chain=i,this.func=r}const tg=[new Vc(0,0,0,0,LF),new Vc(4,4,8,4,ib),new Vc(4,5,16,8,ib),new Vc(4,6,32,32,ib),new Vc(4,4,16,16,rb),new Vc(8,16,32,32,rb),new Vc(8,16,128,128,rb),new Vc(8,32,128,256,rb),new Vc(32,128,258,1024,rb),new Vc(32,258,258,4096,rb)];function VF(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Z_,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),mu(this.dyn_ltree),mu(this.dyn_dtree),mu(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),mu(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),mu(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const ob=n=>{if(!n)return 1;const t=n.state;return!t||t.strm!==n||42!==t.status&&57!==t.status&&69!==t.status&&73!==t.status&&91!==t.status&&103!==t.status&&113!==t.status&&666!==t.status?1:0},GM=n=>{if(ob(n))return xd(n,Nc);n.total_in=n.total_out=0,n.data_type=qN;const t=n.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=2===t.wrap?57:t.wrap?42:113,n.adler=2===t.wrap?0:1,t.last_flush=-2,BM(t),Ys},jM=n=>{const t=GM(n);return t===Ys&&(n=>{n.window_size=2*n.w_size,mu(n.head),n.max_lazy_match=tg[n.level].max_lazy,n.good_match=tg[n.level].good_length,n.nice_match=tg[n.level].nice_length,n.max_chain_length=tg[n.level].max_chain,n.strstart=0,n.block_start=0,n.lookahead=0,n.insert=0,n.match_length=n.prev_length=2,n.match_available=0,n.ins_h=0})(n.state),t},$M=(n,t,e,i,r,s)=>{if(!n)return Nc;let l=1;if(t===SF&&(t=6),i<0?(l=0,i=-i):i>15&&(l=2,i-=16),r<1||r>9||e!==Z_||i<8||i>15||t<0||t>9||s<0||s>Jm||8===i&&1!==l)return xd(n,Nc);8===i&&(i=9);const u=new VF;return n.state=u,u.strm=n,u.status=42,u.wrap=l,u.gzhead=null,u.w_bits=i,u.w_size=1<$M(n,t,Z_,15,8,$N),deflateInit2:$M,deflateReset:jM,deflateResetKeep:GM,deflateSetHeader:(n,t)=>ob(n)||2!==n.state.wrap?Nc:(n.state.gzhead=t,Ys),deflate:(n,t)=>{if(ob(n)||t>PM||t<0)return n?xd(n,Nc):Nc;const e=n.state;if(!n.output||0!==n.avail_in&&!n.input||666===e.status&&t!==Jl)return xd(n,0===n.avail_out?OM:Nc);const i=e.last_flush;if(e.last_flush=t,0!==e.pending){if(bl(n),0===n.avail_out)return e.last_flush=-1,Ys}else if(0===n.avail_in&&PF(t)<=PF(i)&&t!==Jl)return xd(n,OM);if(666===e.status&&0!==n.avail_in)return xd(n,OM);if(42===e.status&&0===e.wrap&&(e.status=113),42===e.status){let r=Z_+(e.w_bits-8<<4)<<8,s=-1;if(s=e.strategy>=Y_||e.level<2?0:e.level<6?1:6===e.level?2:3,r|=s<<6,0!==e.strstart&&(r|=32),r+=31-r%31,nb(e,r),0!==e.strstart&&(nb(e,n.adler>>>16),nb(e,65535&n.adler)),n.adler=1,e.status=113,bl(n),0!==e.pending)return e.last_flush=-1,Ys}if(57===e.status)if(n.adler=0,Gr(e,31),Gr(e,139),Gr(e,8),e.gzhead)Gr(e,(e.gzhead.text?1:0)+(e.gzhead.hcrc?2:0)+(e.gzhead.extra?4:0)+(e.gzhead.name?8:0)+(e.gzhead.comment?16:0)),Gr(e,255&e.gzhead.time),Gr(e,e.gzhead.time>>8&255),Gr(e,e.gzhead.time>>16&255),Gr(e,e.gzhead.time>>24&255),Gr(e,9===e.level?2:e.strategy>=Y_||e.level<2?4:0),Gr(e,255&e.gzhead.os),e.gzhead.extra&&e.gzhead.extra.length&&(Gr(e,255&e.gzhead.extra.length),Gr(e,e.gzhead.extra.length>>8&255)),e.gzhead.hcrc&&(n.adler=Fo(n.adler,e.pending_buf,e.pending,0)),e.gzindex=0,e.status=69;else if(Gr(e,0),Gr(e,0),Gr(e,0),Gr(e,0),Gr(e,0),Gr(e,9===e.level?2:e.strategy>=Y_||e.level<2?4:0),Gr(e,3),e.status=113,bl(n),0!==e.pending)return e.last_flush=-1,Ys;if(69===e.status){if(e.gzhead.extra){let r=e.pending,s=(65535&e.gzhead.extra.length)-e.gzindex;for(;e.pending+s>e.pending_buf_size;){let u=e.pending_buf_size-e.pending;if(e.pending_buf.set(e.gzhead.extra.subarray(e.gzindex,e.gzindex+u),e.pending),e.pending=e.pending_buf_size,e.gzhead.hcrc&&e.pending>r&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),e.gzindex+=u,bl(n),0!==e.pending)return e.last_flush=-1,Ys;r=0,s-=u}let l=new Uint8Array(e.gzhead.extra);e.pending_buf.set(l.subarray(e.gzindex,e.gzindex+s),e.pending),e.pending+=s,e.gzhead.hcrc&&e.pending>r&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),e.gzindex=0}e.status=73}if(73===e.status){if(e.gzhead.name){let s,r=e.pending;do{if(e.pending===e.pending_buf_size){if(e.gzhead.hcrc&&e.pending>r&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),bl(n),0!==e.pending)return e.last_flush=-1,Ys;r=0}s=e.gzindexr&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),e.gzindex=0}e.status=91}if(91===e.status){if(e.gzhead.comment){let s,r=e.pending;do{if(e.pending===e.pending_buf_size){if(e.gzhead.hcrc&&e.pending>r&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r)),bl(n),0!==e.pending)return e.last_flush=-1,Ys;r=0}s=e.gzindexr&&(n.adler=Fo(n.adler,e.pending_buf,e.pending-r,r))}e.status=103}if(103===e.status){if(e.gzhead.hcrc){if(e.pending+2>e.pending_buf_size&&(bl(n),0!==e.pending))return e.last_flush=-1,Ys;Gr(e,255&n.adler),Gr(e,n.adler>>8&255),n.adler=0}if(e.status=113,bl(n),0!==e.pending)return e.last_flush=-1,Ys}if(0!==n.avail_in||0!==e.lookahead||t!==Ap&&666!==e.status){let r=0===e.level?LF(e,t):e.strategy===Y_?((n,t)=>{let e;for(;;){if(0===n.lookahead&&(bp(n),0===n.lookahead)){if(t===Ap)return 1;break}if(n.match_length=0,e=Sh(n,0,n.window[n.strstart]),n.lookahead--,n.strstart++,e&&(vl(n,!1),0===n.strm.avail_out))return 1}return n.insert=0,t===Jl?(vl(n,!0),0===n.strm.avail_out?3:4):n.sym_next&&(vl(n,!1),0===n.strm.avail_out)?1:2})(e,t):e.strategy===TF?((n,t)=>{let e,i,r,s;const l=n.window;for(;;){if(n.lookahead<=258){if(bp(n),n.lookahead<=258&&t===Ap)return 1;if(0===n.lookahead)break}if(n.match_length=0,n.lookahead>=3&&n.strstart>0&&(r=n.strstart-1,i=l[r],i===l[++r]&&i===l[++r]&&i===l[++r])){s=n.strstart+258;do{}while(i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&i===l[++r]&&rn.lookahead&&(n.match_length=n.lookahead)}if(n.match_length>=3?(e=Sh(n,1,n.match_length-3),n.lookahead-=n.match_length,n.strstart+=n.match_length,n.match_length=0):(e=Sh(n,0,n.window[n.strstart]),n.lookahead--,n.strstart++),e&&(vl(n,!1),0===n.strm.avail_out))return 1}return n.insert=0,t===Jl?(vl(n,!0),0===n.strm.avail_out?3:4):n.sym_next&&(vl(n,!1),0===n.strm.avail_out)?1:2})(e,t):tg[e.level].func(e,t);if((3===r||4===r)&&(e.status=666),1===r||3===r)return 0===n.avail_out&&(e.last_flush=-1),Ys;if(2===r&&(t===S9?RM(e):t!==PM&&(Au(e,0,0,!1),t===zN&&(mu(e.head),0===e.lookahead&&(e.strstart=0,e.block_start=0,e.insert=0))),bl(n),0===n.avail_out))return e.last_flush=-1,Ys}return t!==Jl?Ys:e.wrap<=0?gs:(2===e.wrap?(Gr(e,255&n.adler),Gr(e,n.adler>>8&255),Gr(e,n.adler>>16&255),Gr(e,n.adler>>24&255),Gr(e,255&n.total_in),Gr(e,n.total_in>>8&255),Gr(e,n.total_in>>16&255),Gr(e,n.total_in>>24&255)):(nb(e,n.adler>>>16),nb(e,65535&n.adler)),bl(n),e.wrap>0&&(e.wrap=-e.wrap),0!==e.pending?Ys:gs)},deflateEnd:n=>{if(ob(n))return Nc;const t=n.state.status;return n.state=null,113===t?xd(n,GN):Ys},deflateSetDictionary:(n,t)=>{let e=t.length;if(ob(n))return Nc;const i=n.state,r=i.wrap;if(2===r||1===r&&42!==i.status||i.lookahead)return Nc;if(1===r&&(n.adler=Zm(n.adler,t,e,0)),i.wrap=0,e>=i.w_size){0===r&&(mu(i.head),i.strstart=0,i.block_start=0,i.insert=0);let f=new Uint8Array(i.w_size);f.set(t.subarray(e-i.w_size,e),0),t=f,e=i.w_size}const s=n.avail_in,l=n.next_in,u=n.input;for(n.avail_in=e,n.next_in=0,n.input=t,bp(i);i.lookahead>=3;){let f=i.strstart,p=i.lookahead-2;do{i.ins_h=Th(i,i.ins_h,i.window[f+3-1]),i.prev[f&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=f,f++}while(--p);i.strstart=f,i.lookahead=2,bp(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,n.next_in=l,n.input=u,n.avail_in=s,i.wrap=r,Ys},deflateInfo:"pako deflate (from Nodeca project)"};const iL=(n,t)=>Object.prototype.hasOwnProperty.call(n,t);var vp={assign:function(n){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const e=t.shift();if(e){if("object"!=typeof e)throw new TypeError(e+"must be non-object");for(const i in e)iL(e,i)&&(n[i]=e[i])}}return n},flattenChunks:n=>{let t=0;for(let i=0,r=n.length;i=252?6:n>=248?5:n>=240?4:n>=224?3:n>=192?2:1;ng[254]=ng[254]=1;var ig={string2buf:n=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(n);let t,e,i,r,s,l=n.length,u=0;for(r=0;r>>6,t[s++]=128|63&e):e<65536?(t[s++]=224|e>>>12,t[s++]=128|e>>>6&63,t[s++]=128|63&e):(t[s++]=240|e>>>18,t[s++]=128|e>>>12&63,t[s++]=128|e>>>6&63,t[s++]=128|63&e);return t},buf2string:(n,t)=>{const e=t||n.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(n.subarray(0,t));let i,r;const s=new Array(2*e);for(r=0,i=0;i4)s[r++]=65533,i+=u-1;else{for(l&=2===u?31:3===u?15:7;u>1&&i1?s[r++]=65533:l<65536?s[r++]=l:(l-=65536,s[r++]=55296|l>>10&1023,s[r++]=56320|1023&l)}}return((n,t)=>{if(t<65534&&n.subarray&&E1)return String.fromCharCode.apply(null,n.length===t?n:n.subarray(0,t));let e="";for(let i=0;i{(t=t||n.length)>n.length&&(t=n.length);let e=t-1;for(;e>=0&&128==(192&n[e]);)e--;return e<0||0===e?t:e+ng[n[e]]>t?e:t}},GF=function yp(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const jF=Object.prototype.toString,{Z_NO_FLUSH:rg,Z_SYNC_FLUSH:D9,Z_FULL_FLUSH:KM,Z_FINISH:B9,Z_OK:ab,Z_STREAM_END:$F,Z_DEFAULT_COMPRESSION:k9,Z_DEFAULT_STRATEGY:og,Z_DEFLATED:aL}=pp;function lb(n){this.options=vp.assign({level:k9,method:aL,chunkSize:16384,windowBits:15,memLevel:8,strategy:og},n||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new GF,this.strm.avail_out=0;let e=sb.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(e!==ab)throw new Error(fp[e]);if(t.header&&sb.deflateSetHeader(this.strm,t.header),t.dictionary){let i;if(i="string"==typeof t.dictionary?ig.string2buf(t.dictionary):"[object ArrayBuffer]"===jF.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,e=sb.deflateSetDictionary(this.strm,i),e!==ab)throw new Error(fp[e]);this._dict_set=!0}}function YM(n,t){const e=new lb(t);if(e.push(n,!0),e.err)throw e.msg||fp[e.err];return e.result}lb.prototype.push=function(n,t){const e=this.strm,i=this.options.chunkSize;let r,s;if(this.ended)return!1;for(s=t===~~t?t:!0===t?B9:rg,e.input="string"==typeof n?ig.string2buf(n):"[object ArrayBuffer]"===jF.call(n)?new Uint8Array(n):n,e.next_in=0,e.avail_in=e.input.length;;)if(0===e.avail_out&&(e.output=new Uint8Array(i),e.next_out=0,e.avail_out=i),(s===D9||s===KM)&&e.avail_out<=6)this.onData(e.output.subarray(0,e.next_out)),e.avail_out=0;else{if(r=sb.deflate(e,s),r===$F)return e.next_out>0&&this.onData(e.output.subarray(0,e.next_out)),r=sb.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===ab;if(0!==e.avail_out){if(s>0&&e.next_out>0)this.onData(e.output.subarray(0,e.next_out)),e.avail_out=0;else if(0===e.avail_in)break}else this.onData(e.output)}return!0},lb.prototype.onData=function(n){this.chunks.push(n)},lb.prototype.onEnd=function(n){n===ab&&(this.result=vp.flattenChunks(this.chunks)),this.chunks=[],this.err=n,this.msg=this.strm.msg};var dL={Deflate:lb,deflate:YM,deflateRaw:function S1(n,t){return(t=t||{}).raw=!0,YM(n,t)},gzip:function lL(n,t){return(t=t||{}).gzip=!0,YM(n,t)},constants:pp};const Ih=16209;var uL=function(t,e){let i,r,s,l,u,f,p,m,_,b,w,F,D,T,I,O,R,P,ee,J,te,ie,W,q;const ce=t.state;i=t.next_in,W=t.input,r=i+(t.avail_in-5),s=t.next_out,q=t.output,l=s-(e-t.avail_out),u=s+(t.avail_out-257),f=ce.dmax,p=ce.wsize,m=ce.whave,_=ce.wnext,b=ce.window,w=ce.hold,F=ce.bits,D=ce.lencode,T=ce.distcode,I=(1<>>24,w>>>=P,F-=P,P=R>>>16&255,0===P)q[s++]=65535&R;else{if(!(16&P)){if(64&P){if(32&P){ce.mode=16191;break e}t.msg="invalid literal/length code",ce.mode=Ih;break e}R=D[(65535&R)+(w&(1<>>=P,F-=P),F<15&&(w+=W[i++]<>>24,w>>>=P,F-=P,P=R>>>16&255,16&P){if(J=65535&R,P&=15,Ff){t.msg="invalid distance too far back",ce.mode=Ih;break e}if(w>>>=P,F-=P,P=s-l,J>P){if(P=J-P,P>m&&ce.sane){t.msg="invalid distance too far back",ce.mode=Ih;break e}if(te=0,ie=b,0===_){if(te+=p-P,P2;)q[s++]=ie[te++],q[s++]=ie[te++],q[s++]=ie[te++],ee-=3;ee&&(q[s++]=ie[te++],ee>1&&(q[s++]=ie[te++]))}else{te=s-J;do{q[s++]=q[te++],q[s++]=q[te++],q[s++]=q[te++],ee-=3}while(ee>2);ee&&(q[s++]=q[te++],ee>1&&(q[s++]=q[te++]))}break}if(64&P){t.msg="invalid distance code",ce.mode=Ih;break e}R=T[(65535&R)+(w&(1<>3,i-=ee,F-=ee<<3,w&=(1<{const f=u.bits;let R,P,ee,J,te,W,p=0,m=0,_=0,b=0,w=0,F=0,D=0,T=0,I=0,O=0,ie=null;const q=new Uint16Array(16),ce=new Uint16Array(16);let Ue,de,ze,ke=null;for(p=0;p<=15;p++)q[p]=0;for(m=0;m=1&&0===q[b];b--);if(w>b&&(w=b),0===b)return r[s++]=20971520,r[s++]=20971520,u.bits=1,0;for(_=1;_0&&(0===n||1!==b))return-1;for(ce[1]=0,p=1;p<15;p++)ce[p+1]=ce[p]+q[p];for(m=0;m852||2===n&&I>592)return 1;for(;;){Ue=p-D,l[m]+1=W?(de=ke[l[m]-W],ze=ie[l[m]-W]):(de=96,ze=0),R=1<>D)+P]=Ue<<24|de<<16|ze}while(0!==P);for(R=1<>=1;if(0!==R?(O&=R-1,O+=R):O=0,m++,0==--q[p]){if(p===b)break;p=t[e+l[m]]}if(p>w&&(O&J)!==ee){for(0===D&&(D=w),te+=_,F=p-D,T=1<852||2===n&&I>592)return 1;ee=O&J,r[ee]=w<<24|F<<16|te-s}}return 0!==O&&(r[te+O]=p-D<<24|64<<16),u.bits=w,0};const{Z_FINISH:mL,Z_BLOCK:JF,Z_TREES:wp,Z_OK:xp,Z_STREAM_END:gL,Z_NEED_DICT:eD,Z_STREAM_ERROR:ca,Z_DATA_ERROR:tD,Z_MEM_ERROR:nD,Z_BUF_ERROR:_L,Z_DEFLATED:iD}=pp,eE=16180,ub=16190,gu=16191,cg=16199,D1=16200,Po=16209,bD=n=>(n>>>24&255)+(n>>>8&65280)+((65280&n)<<8)+((255&n)<<24);function vD(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Fh=n=>{if(!n)return 1;const t=n.state;return!t||t.strm!==n||t.mode16211?1:0},B1=n=>{if(Fh(n))return ca;const t=n.state;return n.total_in=n.total_out=t.total=0,n.msg="",t.wrap&&(n.adler=1&t.wrap),t.mode=eE,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(852),t.distcode=t.distdyn=new Int32Array(592),t.sane=1,t.back=-1,xp},cE=n=>{if(Fh(n))return ca;const t=n.state;return t.wsize=0,t.whave=0,t.wnext=0,B1(n)},yD=(n,t)=>{let e;if(Fh(n))return ca;const i=n.state;return t<0?(e=0,t=-t):(e=5+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?ca:(null!==i.window&&i.wbits!==t&&(i.window=null),i.wrap=e,i.wbits=t,cE(n))},k1=(n,t)=>{if(!n)return ca;const e=new vD;n.state=e,e.strm=n,e.window=null,e.mode=eE;const i=yD(n,t);return i!==xp&&(n.state=null),i};let xD,R1,dE=!0;const xL=n=>{if(dE){xD=new Int32Array(512),R1=new Int32Array(32);let t=0;for(;t<144;)n.lens[t++]=8;for(;t<256;)n.lens[t++]=9;for(;t<280;)n.lens[t++]=7;for(;t<288;)n.lens[t++]=8;for(db(1,n.lens,0,288,xD,0,n.work,{bits:9}),t=0;t<32;)n.lens[t++]=5;db(2,n.lens,0,32,R1,0,n.work,{bits:5}),dE=!1}n.lencode=xD,n.lenbits=9,n.distcode=R1,n.distbits=5},uE=(n,t,e,i)=>{let r;const s=n.state;return null===s.window&&(s.wsize=1<=s.wsize?(s.window.set(t.subarray(e-s.wsize,e),0),s.wnext=0,s.whave=s.wsize):(r=s.wsize-s.wnext,r>i&&(r=i),s.window.set(t.subarray(e-i,e-i+r),s.wnext),(i-=r)?(s.window.set(t.subarray(e-i,e),0),s.wnext=i,s.whave=s.wsize):(s.wnext+=r,s.wnext===s.wsize&&(s.wnext=0),s.whavek1(n,15),inflateInit2:k1,inflate:(n,t)=>{let e,i,r,s,l,u,f,p,m,_,b,w,F,D,I,O,R,P,ee,J,te,ie,T=0;const W=new Uint8Array(4);let q,ce;const ke=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Fh(n)||!n.output||!n.input&&0!==n.avail_in)return ca;e=n.state,e.mode===gu&&(e.mode=16192),l=n.next_out,r=n.output,f=n.avail_out,s=n.next_in,i=n.input,u=n.avail_in,p=e.hold,m=e.bits,_=u,b=f,ie=xp;e:for(;;)switch(e.mode){case eE:if(0===e.wrap){e.mode=16192;break}for(;m<16;){if(0===u)break e;u--,p+=i[s++]<>>8&255,e.check=Fo(e.check,W,2,0),p=0,m=0,e.mode=16181;break}if(e.head&&(e.head.done=!1),!(1&e.wrap)||(((255&p)<<8)+(p>>8))%31){n.msg="incorrect header check",e.mode=Po;break}if((15&p)!==iD){n.msg="unknown compression method",e.mode=Po;break}if(p>>>=4,m-=4,te=8+(15&p),0===e.wbits&&(e.wbits=te),te>15||te>e.wbits){n.msg="invalid window size",e.mode=Po;break}e.dmax=1<>8&1),512&e.flags&&4&e.wrap&&(W[0]=255&p,W[1]=p>>>8&255,e.check=Fo(e.check,W,2,0)),p=0,m=0,e.mode=16182;case 16182:for(;m<32;){if(0===u)break e;u--,p+=i[s++]<>>8&255,W[2]=p>>>16&255,W[3]=p>>>24&255,e.check=Fo(e.check,W,4,0)),p=0,m=0,e.mode=16183;case 16183:for(;m<16;){if(0===u)break e;u--,p+=i[s++]<>8),512&e.flags&&4&e.wrap&&(W[0]=255&p,W[1]=p>>>8&255,e.check=Fo(e.check,W,2,0)),p=0,m=0,e.mode=16184;case 16184:if(1024&e.flags){for(;m<16;){if(0===u)break e;u--,p+=i[s++]<>>8&255,e.check=Fo(e.check,W,2,0)),p=0,m=0}else e.head&&(e.head.extra=null);e.mode=16185;case 16185:if(1024&e.flags&&(w=e.length,w>u&&(w=u),w&&(e.head&&(te=e.head.extra_len-e.length,e.head.extra||(e.head.extra=new Uint8Array(e.head.extra_len)),e.head.extra.set(i.subarray(s,s+w),te)),512&e.flags&&4&e.wrap&&(e.check=Fo(e.check,i,w,s)),u-=w,s+=w,e.length-=w),e.length))break e;e.length=0,e.mode=16186;case 16186:if(2048&e.flags){if(0===u)break e;w=0;do{te=i[s+w++],e.head&&te&&e.length<65536&&(e.head.name+=String.fromCharCode(te))}while(te&&w>9&1,e.head.done=!0),n.adler=e.check=0,e.mode=gu;break;case 16189:for(;m<32;){if(0===u)break e;u--,p+=i[s++]<>>=7&m,m-=7&m,e.mode=16206;break}for(;m<3;){if(0===u)break e;u--,p+=i[s++]<>>=1,m-=1,3&p){case 0:e.mode=16193;break;case 1:if(xL(e),e.mode=cg,t===wp){p>>>=2,m-=2;break e}break;case 2:e.mode=16196;break;case 3:n.msg="invalid block type",e.mode=Po}p>>>=2,m-=2;break;case 16193:for(p>>>=7&m,m-=7&m;m<32;){if(0===u)break e;u--,p+=i[s++]<>>16^65535)){n.msg="invalid stored block lengths",e.mode=Po;break}if(e.length=65535&p,p=0,m=0,e.mode=16194,t===wp)break e;case 16194:e.mode=16195;case 16195:if(w=e.length,w){if(w>u&&(w=u),w>f&&(w=f),0===w)break e;r.set(i.subarray(s,s+w),l),u-=w,s+=w,f-=w,l+=w,e.length-=w;break}e.mode=gu;break;case 16196:for(;m<14;){if(0===u)break e;u--,p+=i[s++]<>>=5,m-=5,e.ndist=1+(31&p),p>>>=5,m-=5,e.ncode=4+(15&p),p>>>=4,m-=4,e.nlen>286||e.ndist>30){n.msg="too many length or distance symbols",e.mode=Po;break}e.have=0,e.mode=16197;case 16197:for(;e.have>>=3,m-=3}for(;e.have<19;)e.lens[ke[e.have++]]=0;if(e.lencode=e.lendyn,e.lenbits=7,q={bits:e.lenbits},ie=db(0,e.lens,0,19,e.lencode,0,e.work,q),e.lenbits=q.bits,ie){n.msg="invalid code lengths set",e.mode=Po;break}e.have=0,e.mode=16198;case 16198:for(;e.have>>24,O=T>>>16&255,R=65535&T,!(I<=m);){if(0===u)break e;u--,p+=i[s++]<>>=I,m-=I,e.lens[e.have++]=R;else{if(16===R){for(ce=I+2;m>>=I,m-=I,0===e.have){n.msg="invalid bit length repeat",e.mode=Po;break}te=e.lens[e.have-1],w=3+(3&p),p>>>=2,m-=2}else if(17===R){for(ce=I+3;m>>=I,m-=I,te=0,w=3+(7&p),p>>>=3,m-=3}else{for(ce=I+7;m>>=I,m-=I,te=0,w=11+(127&p),p>>>=7,m-=7}if(e.have+w>e.nlen+e.ndist){n.msg="invalid bit length repeat",e.mode=Po;break}for(;w--;)e.lens[e.have++]=te}}if(e.mode===Po)break;if(0===e.lens[256]){n.msg="invalid code -- missing end-of-block",e.mode=Po;break}if(e.lenbits=9,q={bits:e.lenbits},ie=db(1,e.lens,0,e.nlen,e.lencode,0,e.work,q),e.lenbits=q.bits,ie){n.msg="invalid literal/lengths set",e.mode=Po;break}if(e.distbits=6,e.distcode=e.distdyn,q={bits:e.distbits},ie=db(2,e.lens,e.nlen,e.ndist,e.distcode,0,e.work,q),e.distbits=q.bits,ie){n.msg="invalid distances set",e.mode=Po;break}if(e.mode=cg,t===wp)break e;case cg:e.mode=D1;case D1:if(u>=6&&f>=258){n.next_out=l,n.avail_out=f,n.next_in=s,n.avail_in=u,e.hold=p,e.bits=m,uL(n,b),l=n.next_out,r=n.output,f=n.avail_out,s=n.next_in,i=n.input,u=n.avail_in,p=e.hold,m=e.bits,e.mode===gu&&(e.back=-1);break}for(e.back=0;T=e.lencode[p&(1<>>24,O=T>>>16&255,R=65535&T,!(I<=m);){if(0===u)break e;u--,p+=i[s++]<>P)],I=T>>>24,O=T>>>16&255,R=65535&T,!(P+I<=m);){if(0===u)break e;u--,p+=i[s++]<>>=P,m-=P,e.back+=P}if(p>>>=I,m-=I,e.back+=I,e.length=R,0===O){e.mode=16205;break}if(32&O){e.back=-1,e.mode=gu;break}if(64&O){n.msg="invalid literal/length code",e.mode=Po;break}e.extra=15&O,e.mode=16201;case 16201:if(e.extra){for(ce=e.extra;m>>=e.extra,m-=e.extra,e.back+=e.extra}e.was=e.length,e.mode=16202;case 16202:for(;T=e.distcode[p&(1<>>24,O=T>>>16&255,R=65535&T,!(I<=m);){if(0===u)break e;u--,p+=i[s++]<>P)],I=T>>>24,O=T>>>16&255,R=65535&T,!(P+I<=m);){if(0===u)break e;u--,p+=i[s++]<>>=P,m-=P,e.back+=P}if(p>>>=I,m-=I,e.back+=I,64&O){n.msg="invalid distance code",e.mode=Po;break}e.offset=R,e.extra=15&O,e.mode=16203;case 16203:if(e.extra){for(ce=e.extra;m>>=e.extra,m-=e.extra,e.back+=e.extra}if(e.offset>e.dmax){n.msg="invalid distance too far back",e.mode=Po;break}e.mode=16204;case 16204:if(0===f)break e;if(w=b-f,e.offset>w){if(w=e.offset-w,w>e.whave&&e.sane){n.msg="invalid distance too far back",e.mode=Po;break}w>e.wnext?(w-=e.wnext,F=e.wsize-w):F=e.wnext-w,w>e.length&&(w=e.length),D=e.window}else D=r,F=l-e.offset,w=e.length;w>f&&(w=f),f-=w,e.length-=w;do{r[l++]=D[F++]}while(--w);0===e.length&&(e.mode=D1);break;case 16205:if(0===f)break e;r[l++]=e.length,f--,e.mode=D1;break;case 16206:if(e.wrap){for(;m<32;){if(0===u)break e;u--,p|=i[s++]<{if(Fh(n))return ca;let t=n.state;return t.window&&(t.window=null),n.state=null,xp},inflateGetHeader:(n,t)=>{if(Fh(n))return ca;const e=n.state;return 2&e.wrap?(e.head=t,t.done=!1,xp):ca},inflateSetDictionary:(n,t)=>{const e=t.length;let i,r,s;return Fh(n)||(i=n.state,0!==i.wrap&&i.mode!==ub)?ca:i.mode===ub&&(r=1,r=Zm(r,t,e,0),r!==i.check)?tD:(s=uE(n,t,e,e),s?(i.mode=16210,nD):(i.havedict=1,xp))},inflateInfo:"pako inflate (from Nodeca project)"},OD=function PD(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const ND=Object.prototype.toString,{Z_NO_FLUSH:LD,Z_FINISH:fE,Z_OK:dg,Z_STREAM_END:pE,Z_NEED_DICT:AE,Z_STREAM_ERROR:ML,Z_DATA_ERROR:UD,Z_MEM_ERROR:EL}=pp;function fb(n){this.options=vp.assign({chunkSize:65536,windowBits:15,to:""},n||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(n&&n.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(15&t.windowBits||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new GF,this.strm.avail_out=0;let e=Cd.inflateInit2(this.strm,t.windowBits);if(e!==dg)throw new Error(fp[e]);if(this.header=new OD,Cd.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=ig.string2buf(t.dictionary):"[object ArrayBuffer]"===ND.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(e=Cd.inflateSetDictionary(this.strm,t.dictionary),e!==dg)))throw new Error(fp[e])}function mE(n,t){const e=new fb(t);if(e.push(n),e.err)throw e.msg||fp[e.err];return e.result}fb.prototype.push=function(n,t){const e=this.strm,i=this.options.chunkSize,r=this.options.dictionary;let s,l,u;if(this.ended)return!1;for(l=t===~~t?t:!0===t?fE:LD,e.input="[object ArrayBuffer]"===ND.call(n)?new Uint8Array(n):n,e.next_in=0,e.avail_in=e.input.length;;){for(0===e.avail_out&&(e.output=new Uint8Array(i),e.next_out=0,e.avail_out=i),s=Cd.inflate(e,l),s===AE&&r&&(s=Cd.inflateSetDictionary(e,r),s===dg?s=Cd.inflate(e,l):s===UD&&(s=AE));e.avail_in>0&&s===pE&&e.state.wrap>0&&0!==n[e.next_in];)Cd.inflateReset(e),s=Cd.inflate(e,l);switch(s){case ML:case UD:case AE:case EL:return this.onEnd(s),this.ended=!0,!1}if(u=e.avail_out,e.next_out&&(0===e.avail_out||s===pE))if("string"===this.options.to){let f=ig.utf8border(e.output,e.next_out),p=e.next_out-f,m=ig.buf2string(e.output,f);e.next_out=p,e.avail_out=i-p,p&&e.output.set(e.output.subarray(f,f+p),0),this.onData(m)}else this.onData(e.output.length===e.next_out?e.output:e.output.subarray(0,e.next_out));if(s!==dg||0!==u){if(s===pE)return s=Cd.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(0===e.avail_in)break}}return!0},fb.prototype.onData=function(n){this.chunks.push(n)},fb.prototype.onEnd=function(n){n===dg&&(this.result="string"===this.options.to?this.chunks.join(""):vp.flattenChunks(this.chunks)),this.chunks=[],this.err=n,this.msg=this.strm.msg};var GD={Inflate:fb,inflate:mE,inflateRaw:function SL(n,t){return(t=t||{}).raw=!0,mE(n,t)},ungzip:mE,constants:pp};const{ungzip:FL}=GD;var N1=FL;const L1=n=>{const t=[];for(let e=0;e{const i=t.name.endsWith(".gz"),r=new FileReader;let s;i?r.readAsArrayBuffer(t):r.readAsText(t,"utf8"),r.onload=l=>{const u=l.target.result.toString();s=i?N1(l.target.result,{to:"string"}):u,u.includes("gameObjectPositions")&&function LN(n){return new(mN())({allErrors:!0}).validate(E9,JSON.parse(n))}(u)&&(s=JSON.stringify(function RN(n){const{gameObjectPositions:t,cycles:e=[]}=JSON.parse(n),i={checksum:"",data:{projectName:"GameObjects",fileChecksum:"",apiVersion:"1.3",nodes:[]}},r=[{name:fu,type:ts.FOLDER,attributes:{},children:[]}];!function sF(n){for(const t of n)t.name.startsWith("root")||(t.name=t.name.startsWith(".")?`root${t.name}`:`root.${t.name}`)}(t);const s=t.find(u=>"root"===u.name),l=function NN(n){const t=Math.max(n.x,n.z);return{name:fu,position:{x:0,y:0,z:0},scale:{x:t,y:0,z:t}}}(s.scale);t.push(l);for(const u of t){const f=u.name.split(".");f[0]!==fu&&pM(f,r[0].children,fu,u,t,s)}return i.data.nodes=r,i.data.edges=e.map(u=>function aF(n){return{fromNodeName:p1(n.from),toNodeName:p1(n.to),attributes:{coupling:100}}}(u)),i.data.attributeTypes=function lF(){return{edges:{coupling:Fc.relative}}}(),i.checksum=O_()(JSON.stringify(i.data)),i}(u)))},r.onloadend=()=>{e(s)}})});return function(e){return n.apply(this,arguments)}}();let U1=(()=>{class n{constructor(e,i){this.store=e,this.loadFileService=i,this.isUploading=!1}uploadFiles(){const e=fM();e.addEventListener("change",()=>{this.uploadFilesOnEvent(e)}),e.click()}uploadFilesOnEvent(e){var i=this;return Mn(function*(){try{i.isUploading=!0,i.store.dispatch(Ic({value:!0})),i.store.dispatch(hh({value:!0}));const r=yield Promise.all(L1(e.files)),{customConfigs:s,ccFiles:l}=i.splitCustomConfigsAndCCFiles(e.files,r);for(const u of s)mr.importCustomConfigs(u);l.length>0&&i.loadFileService.loadFiles(l)}catch{i.store.dispatch(Ic({value:!1})),i.store.dispatch(hh({value:!1}))}finally{i.isUploading=!1}})()}splitCustomConfigsAndCCFiles(e,i){const r=[],s=[];for(const[l,u]of i.entries()){const f=e[l].name;f.includes(rF)?r.push(u):s.push({fileName:f,fileSize:e[l].size,content:HI(u)})}return{customConfigs:r,ccFiles:s}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(rp))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),nB=(()=>{class n{constructor(e){this.uploadFilesService=e}uploadFiles(){this.uploadFilesService.uploadFiles()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(U1))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-upload-files-button"]],standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[["title","Load cc.json files",3,"click","icon"]],template:function(i,r){1&i&&(o.j41(0,"cc-action-icon",0),o.bIt("click",function(){return r.uploadFiles()}),o.k0s()),2&i&&o.Y8G("icon","fa fa-folder-open folder-icon")},dependencies:[pl],encapsulation:2})}}return n})();const V1=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function vE(n,t,e,i){n.addEventListener?n.addEventListener(t,e,i):n.attachEvent&&n.attachEvent("on".concat(t),e)}function pb(n,t,e,i){n.removeEventListener?n.removeEventListener(t,e,i):n.detachEvent&&n.detachEvent("on".concat(t),e)}function iB(n,t){const e=t.slice(0,t.length-1);for(let i=0;i=0;)t[e-1]+=",",t.splice(e,1),e=t.lastIndexOf("");return t}const ug={backspace:8,"\u232b":8,tab:9,clear:12,enter:13,"\u21a9":13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,num_0:96,num_1:97,num_2:98,num_3:99,num_4:100,num_5:101,num_6:102,num_7:103,num_8:104,num_9:105,num_multiply:106,num_add:107,num_enter:108,num_subtract:109,num_decimal:110,num_divide:111,"\u21ea":20,",":188,".":190,"/":191,"`":192,"-":V1?173:189,"=":V1?61:187,";":V1?59:186,"'":222,"[":219,"]":221,"\\":220},ec={"\u21e7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":91,cmd:91,command:91},wE={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},Zs={16:!1,18:!1,17:!1,91:!1},Do={};for(let n=1;n<20;n++)ug["f".concat(n)]=111+n;let Eo=[],hg=null,rB="all";const Md=new Map,Ab=n=>ug[n.toLowerCase()]||ec[n.toLowerCase()]||n.toUpperCase().charCodeAt(0);function xE(n){rB=n||"all"}function Dh(){return rB||"all"}function cB(n){if(typeof n>"u")Object.keys(Do).forEach(r=>{Array.isArray(Do[r])&&Do[r].forEach(s=>z1(s)),delete Do[r]}),Cp(null);else if(Array.isArray(n))n.forEach(r=>{r.key&&z1(r)});else if("object"==typeof n)n.key&&z1(n);else if("string"==typeof n){for(var t=arguments.length,e=new Array(t>1?t-1:0),i=1;i{let{key:t,scope:e,method:i,splitKey:r="+"}=n;H1(t).forEach(l=>{const u=l.split(r),f=u.length,p=u[f-1],m="*"===p?"*":Ab(p);if(!Do[m])return;e||(e=Dh());const _=f>1?iB(ec,u):[],b=[];Do[m]=Do[m].filter(w=>{const D=(!i||w.method===i)&&w.scope===e&&function yE(n,t){const e=n.length>=t.length?n:t,i=n.length>=t.length?t:n;let r=!0;for(let s=0;sCp(w))})};function dB(n,t,e,i){if(t.element!==i)return;let r;if(t.scope===e||"all"===t.scope){r=t.mods.length>0;for(const s in Zs)Object.prototype.hasOwnProperty.call(Zs,s)&&(!Zs[s]&&t.mods.indexOf(+s)>-1||Zs[s]&&-1===t.mods.indexOf(+s))&&(r=!1);(0===t.mods.length&&!Zs[16]&&!Zs[18]&&!Zs[17]&&!Zs[91]||r||"*"===t.shortcut)&&(t.keys=[],t.keys=t.keys.concat(Eo),!1===t.method(n,t)&&(n.preventDefault?n.preventDefault():n.returnValue=!1,n.stopPropagation&&n.stopPropagation(),n.cancelBubble&&(n.cancelBubble=!0)))}}function uB(n,t){const e=Do["*"];let i=n.keyCode||n.which||n.charCode;if(!Ed.filter.call(this,n))return;if((93===i||224===i)&&(i=91),-1===Eo.indexOf(i)&&229!==i&&Eo.push(i),["ctrlKey","altKey","shiftKey","metaKey"].forEach(u=>{const f=wE[u];n[u]&&-1===Eo.indexOf(f)?Eo.push(f):!n[u]&&Eo.indexOf(f)>-1?Eo.splice(Eo.indexOf(f),1):"metaKey"===u&&n[u]&&3===Eo.length&&(n.ctrlKey||n.shiftKey||n.altKey||(Eo=Eo.slice(Eo.indexOf(f))))}),i in Zs){Zs[i]=!0;for(const u in ec)ec[u]===i&&(Ed[u]=!0);if(!e)return}for(const u in Zs)Object.prototype.hasOwnProperty.call(Zs,u)&&(Zs[u]=n[wE[u]]);n.getModifierState&&(!n.altKey||n.ctrlKey)&&n.getModifierState("AltGraph")&&(-1===Eo.indexOf(17)&&Eo.push(17),-1===Eo.indexOf(18)&&Eo.push(18),Zs[17]=!0,Zs[18]=!0);const r=Dh();if(e)for(let u=0;u1&&(r=iB(ec,n)),(n="*"===(n=n[n.length-1])?"*":Ab(n))in Do||(Do[n]=[]),Do[n].push({keyup:f,keydown:p,scope:s,mods:r,shortcut:i[u],method:e,key:i[u],splitKey:m,element:l});if(typeof l<"u"&&window){if(!Md.has(l)){const w=function(){return uB(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.event,l)},F=function(){let D=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.event;uB(D,l),function RL(n){let t=n.keyCode||n.which||n.charCode;const e=Eo.indexOf(t);if(e>=0&&Eo.splice(e,1),n.key&&"meta"===n.key.toLowerCase()&&Eo.splice(0,Eo.length),(93===t||224===t)&&(t=91),t in Zs){Zs[t]=!1;for(const i in ec)ec[i]===t&&(Ed[i]=!1)}}(D)};Md.set(l,{keydownListener:w,keyupListenr:F,capture:_}),vE(l,"keydown",w,_),vE(l,"keyup",F,_)}if(!hg){const w=()=>{Eo=[]};hg={listener:w,capture:_},vE(window,"focus",w,_)}}}function Cp(n){const t=Object.values(Do).flat();if(t.findIndex(i=>{let{element:r}=i;return r===n})<0){const{keydownListener:i,keyupListenr:r,capture:s}=Md.get(n)||{};i&&r&&(pb(n,"keyup",r,s),pb(n,"keydown",i,s),Md.delete(n))}if((t.length<=0||Md.size<=0)&&(Object.keys(Md).forEach(r=>{const{keydownListener:s,keyupListenr:l,capture:u}=Md.get(r)||{};s&&l&&(pb(r,"keyup",l,u),pb(r,"keydown",s,u),Md.delete(r))}),Md.clear(),Object.keys(Do).forEach(r=>delete Do[r]),hg)){const{listener:r,capture:s}=hg;pb(window,"focus",r,s),hg=null}}const G1={getPressedKeyString:function kL(){return Eo.map(n=>(n=>Object.keys(ug).find(t=>ug[t]===n))(n)||(n=>Object.keys(ec).find(t=>ec[t]===n))(n)||String.fromCharCode(n))},setScope:xE,getScope:Dh,deleteScope:function lB(n,t){let e,i;n||(n=Dh());for(const r in Do)if(Object.prototype.hasOwnProperty.call(Do,r))for(e=Do[r],i=0;i{let{element:u}=l;return Cp(u)}):i++;Dh()===n&&xE(t||"all")},getPressedKeyCodes:function P9(){return Eo.slice(0)},getAllKeyCodes:function oB(){const n=[];return Object.keys(Do).forEach(t=>{Do[t].forEach(e=>{let{key:i,scope:r,mods:s,shortcut:l}=e;n.push({scope:r,shortcut:l,mods:s,keys:i.split("+").map(u=>Ab(u))})})}),n},isPressed:function aB(n){return"string"==typeof n&&(n=Ab(n)),-1!==Eo.indexOf(n)},filter:function sB(n){const t=n.target||n.srcElement,{tagName:e}=t;let i=!0;const r="INPUT"===e&&!["checkbox","radio","range","button","file","reset","submit","color"].includes(t.type);return(t.isContentEditable||(r||"TEXTAREA"===e||"SELECT"===e)&&!t.readOnly)&&(i=!1),i},trigger:function PL(n){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"all";Object.keys(Do).forEach(e=>{Do[e].filter(r=>r.scope===t&&r.shortcut===n).forEach(r=>{r&&r.method&&r.method()})})},unbind:cB,keyMap:ug,modifier:ec,modifierMap:wE};for(const n in G1)Object.prototype.hasOwnProperty.call(G1,n)&&(Ed[n]=G1[n]);if(typeof window<"u"){const n=window.hotkeys;Ed.noConflict=t=>(t&&window.hotkeys===Ed&&(window.hotkeys=n),Ed),window.hotkeys=Ed}var hB=v(7239),fB=v.n(hB);const pB=1,AB=2,bu=3,tc=0,da=1,vu=2,fg=100,mb=101,VL=102,_B=200,QL=201,zL=202,GL=203,gb=204,$1=205,jL=206,q1=207,ME=208,L9=209,bB=210,$L=211,vB=212,pg=213,qL=214,X1=0,CB=1,MB=2,Bh=0,KL=1,EB=2,YL=3,SB=4,TB=5,IB=6,FB=7,wu=301,Ag=302,K1=306,_b=1e3,Sd=1001,IE=1002,ua=1003,FE=1004,Y1=1005,vs=1006,kh=1007,xu=1008,Cu=1009,kB=1010,RB=1011,bb=1012,BE=1013,Mu=1014,wl=1015,mg=1016,kE=1017,RE=1018,gg=1020,PB=35902,OB=1021,NB=1022,Da=1023,LB=1024,UB=1025,_g=1026,bg=1027,Z1=1028,vg=1029,VB=1030,PE=1031,OE=1033,vb=33776,NE=33777,J1=33778,yb=33779,ew=35840,LE=35841,tw=35842,UE=35843,wb=36196,xb=37492,nw=37496,iw=37808,rw=37809,Cb=37810,HB=37811,ow=37812,VE=37813,QB=37814,HE=37815,QE=37816,sw=37817,nc=37818,yg=37819,wg=37820,aw=37821,lw=36492,zE=36494,zB=36495,GB=36283,jB=36284,GE=36285,cw=36286,ic="srgb",Ph="srgb-linear",Cg="display-p3",Ip="display-p3-linear",Sb="linear",Bo="srgb",Tb="rec709",Hc="p3",Mg=7680,KB=512,YB=513,l5=514,ZB=515,q9=516,W9=517,X9=518,K9=519,tk="300 es",Qc=2e3;class rc{addEventListener(t,e){void 0===this._listeners&&(this._listeners={});const i=this._listeners;void 0===i[t]&&(i[t]=[]),-1===i[t].indexOf(e)&&i[t].push(e)}hasEventListener(t,e){if(void 0===this._listeners)return!1;const i=this._listeners;return void 0!==i[t]&&-1!==i[t].indexOf(e)}removeEventListener(t,e){if(void 0===this._listeners)return;const r=this._listeners[t];if(void 0!==r){const s=r.indexOf(e);-1!==s&&r.splice(s,1)}}dispatchEvent(t){if(void 0===this._listeners)return;const i=this._listeners[t.type];if(void 0!==i){t.target=this;const r=i.slice(0);for(let s=0,l=r.length;s>8&255]+Ba[n>>16&255]+Ba[n>>24&255]+"-"+Ba[255&t]+Ba[t>>8&255]+"-"+Ba[t>>16&15|64]+Ba[t>>24&255]+"-"+Ba[63&e|128]+Ba[e>>8&255]+"-"+Ba[e>>16&255]+Ba[e>>24&255]+Ba[255&i]+Ba[i>>8&255]+Ba[i>>16&255]+Ba[i>>24&255]).toLowerCase()}function Xo(n,t,e){return Math.max(t,Math.min(e,n))}function Ig(n,t,e){return(1-e)*n+e*t}function qa(n,t){switch(t.constructor){case Float32Array:return n;case Uint32Array:return n/4294967295;case Uint16Array:return n/65535;case Uint8Array:return n/255;case Int32Array:return Math.max(n/2147483647,-1);case Int16Array:return Math.max(n/32767,-1);case Int8Array:return Math.max(n/127,-1);default:throw new Error("Invalid component type.")}}function Ai(n,t){switch(t.constructor){case Float32Array:return n;case Uint32Array:return Math.round(4294967295*n);case Uint16Array:return Math.round(65535*n);case Uint8Array:return Math.round(255*n);case Int32Array:return Math.round(2147483647*n);case Int16Array:return Math.round(32767*n);case Int8Array:return Math.round(127*n);default:throw new Error("Invalid component type.")}}const Ib_DEG2RAD=Tg;class ft{constructor(t=0,e=0){ft.prototype.isVector2=!0,this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t){return this.x+=t.x,this.y+=t.y,this}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,i=this.y,r=t.elements;return this.x=r[0]*e+r[3]*i+r[6],this.y=r[1]*e+r[4]*i+r[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const i=this.dot(t)/e;return Math.acos(Xo(i,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,i=this.y-t.y;return e*e+i*i}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const i=Math.cos(e),r=Math.sin(e),s=this.x-t.x,l=this.y-t.y;return this.x=s*i-l*r+t.x,this.y=s*r+l*i+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class zi{constructor(t,e,i,r,s,l,u,f,p){zi.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],void 0!==t&&this.set(t,e,i,r,s,l,u,f,p)}set(t,e,i,r,s,l,u,f,p){const m=this.elements;return m[0]=t,m[1]=r,m[2]=u,m[3]=e,m[4]=s,m[5]=f,m[6]=i,m[7]=l,m[8]=p,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,i=t.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],this}extractBasis(t,e,i){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),i.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const i=t.elements,r=e.elements,s=this.elements,l=i[0],u=i[3],f=i[6],p=i[1],m=i[4],_=i[7],b=i[2],w=i[5],F=i[8],D=r[0],T=r[3],I=r[6],O=r[1],R=r[4],P=r[7],ee=r[2],J=r[5],te=r[8];return s[0]=l*D+u*O+f*ee,s[3]=l*T+u*R+f*J,s[6]=l*I+u*P+f*te,s[1]=p*D+m*O+_*ee,s[4]=p*T+m*R+_*J,s[7]=p*I+m*P+_*te,s[2]=b*D+w*O+F*ee,s[5]=b*T+w*R+F*J,s[8]=b*I+w*P+F*te,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],i=t[1],r=t[2],s=t[3],l=t[4],u=t[5],f=t[6],p=t[7],m=t[8];return e*l*m-e*u*p-i*s*m+i*u*f+r*s*p-r*l*f}invert(){const t=this.elements,e=t[0],i=t[1],r=t[2],s=t[3],l=t[4],u=t[5],f=t[6],p=t[7],m=t[8],_=m*l-u*p,b=u*f-m*s,w=p*s-l*f,F=e*_+i*b+r*w;if(0===F)return this.set(0,0,0,0,0,0,0,0,0);const D=1/F;return t[0]=_*D,t[1]=(r*p-m*i)*D,t[2]=(u*i-r*l)*D,t[3]=b*D,t[4]=(m*e-r*f)*D,t[5]=(r*s-u*e)*D,t[6]=w*D,t[7]=(i*f-p*e)*D,t[8]=(l*e-i*s)*D,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,i,r,s,l,u){const f=Math.cos(s),p=Math.sin(s);return this.set(i*f,i*p,-i*(f*l+p*u)+l+t,-r*p,r*f,-r*(-p*l+f*u)+u+e,0,0,1),this}scale(t,e){return this.premultiply(dw.makeScale(t,e)),this}rotate(t){return this.premultiply(dw.makeRotation(-t)),this}translate(t,e){return this.premultiply(dw.makeTranslation(t,e)),this}makeTranslation(t,e){return t.isVector2?this.set(1,0,t.x,0,1,t.y,0,0,1):this.set(1,0,t,0,1,e,0,0,1),this}makeRotation(t){const e=Math.cos(t),i=Math.sin(t);return this.set(e,-i,0,i,e,0,0,0,1),this}makeScale(t,e){return this.set(t,0,0,0,e,0,0,0,1),this}equals(t){const e=this.elements,i=t.elements;for(let r=0;r<9;r++)if(e[r]!==i[r])return!1;return!0}fromArray(t,e=0){for(let i=0;i<9;i++)this.elements[i]=t[i+e];return this}toArray(t=[],e=0){const i=this.elements;return t[e]=i[0],t[e+1]=i[1],t[e+2]=i[2],t[e+3]=i[3],t[e+4]=i[4],t[e+5]=i[5],t[e+6]=i[6],t[e+7]=i[7],t[e+8]=i[8],t}clone(){return(new this.constructor).fromArray(this.elements)}}const dw=new zi;function _5(n){for(let t=n.length-1;t>=0;--t)if(n[t]>=65535)return!0;return!1}function uw(n){return document.createElementNS("http://www.w3.org/1999/xhtml",n)}function JE(){const n=uw("canvas");return n.style.display="block",n}Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array;const sk={};function Dp(n){n in sk||(sk[n]=!0,console.warn(n))}const eS=(new zi).set(.8224621,.177538,0,.0331941,.9668058,0,.0170827,.0723974,.9105199),tS=(new zi).set(1.2249401,-.2249404,0,-.0420569,1.0420571,0,-.0196376,-.0786361,1.0982735),Db={[Ph]:{transfer:Sb,primaries:Tb,luminanceCoefficients:[.2126,.7152,.0722],toReference:n=>n,fromReference:n=>n},[ic]:{transfer:Bo,primaries:Tb,luminanceCoefficients:[.2126,.7152,.0722],toReference:n=>n.convertSRGBToLinear(),fromReference:n=>n.convertLinearToSRGB()},[Ip]:{transfer:Sb,primaries:Hc,luminanceCoefficients:[.2289,.6917,.0793],toReference:n=>n.applyMatrix3(tS),fromReference:n=>n.applyMatrix3(eS)},[Cg]:{transfer:Bo,primaries:Hc,luminanceCoefficients:[.2289,.6917,.0793],toReference:n=>n.convertSRGBToLinear().applyMatrix3(tS),fromReference:n=>n.applyMatrix3(eS).convertLinearToSRGB()}},v5=new Set([Ph,Ip]),Pr={enabled:!0,_workingColorSpace:Ph,get workingColorSpace(){return this._workingColorSpace},set workingColorSpace(n){if(!v5.has(n))throw new Error(`Unsupported working color space, "${n}".`);this._workingColorSpace=n},convert:function(n,t,e){return!1!==this.enabled&&t!==e&&t&&e?(0,Db[e].fromReference)((0,Db[t].toReference)(n)):n},fromWorkingColorSpace:function(n,t){return this.convert(n,this._workingColorSpace,t)},toWorkingColorSpace:function(n,t){return this.convert(n,t,this._workingColorSpace)},getPrimaries:function(n){return Db[n].primaries},getTransfer:function(n){return""===n?Sb:Db[n].transfer},getLuminanceCoefficients:function(n,t=this._workingColorSpace){return n.fromArray(Db[t].luminanceCoefficients)}};function Fg(n){return n<.04045?.0773993808*n:Math.pow(.9478672986*n+.0521327014,2.4)}function hw(n){return n<.0031308?12.92*n:1.055*Math.pow(n,.41666)-.055}let Eu;class Bb{static getDataURL(t){if(/^data:/i.test(t.src)||typeof HTMLCanvasElement>"u")return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{void 0===Eu&&(Eu=uw("canvas")),Eu.width=t.width,Eu.height=t.height;const i=Eu.getContext("2d");t instanceof ImageData?i.putImageData(t,0,0):i.drawImage(t,0,0,t.width,t.height),e=Eu}return e.width>2048||e.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",t),e.toDataURL("image/jpeg",.6)):e.toDataURL("image/png")}static sRGBToLinear(t){if(typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap){const e=uw("canvas");e.width=t.width,e.height=t.height;const i=e.getContext("2d");i.drawImage(t,0,0,t.width,t.height);const r=i.getImageData(0,0,t.width,t.height),s=r.data;for(let l=0;l{class n extends rc{constructor(e=n.DEFAULT_IMAGE,i=n.DEFAULT_MAPPING,r=Sd,s=Sd,l=vs,u=xu,f=Da,p=Cu,m=n.DEFAULT_ANISOTROPY,_=""){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:rQ++}),this.uuid=xl(),this.name="",this.source=new Bp(e),this.mipmaps=[],this.mapping=i,this.channel=0,this.wrapS=r,this.wrapT=s,this.magFilter=l,this.minFilter=u,this.anisotropy=m,this.format=f,this.internalFormat=null,this.type=p,this.offset=new ft(0,0),this.repeat=new ft(1,1),this.center=new ft(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new zi,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace=_,this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1,this.pmremVersion=0}get image(){return this.source.data}set image(e=null){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return(new this.constructor).copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}toJSON(e){const i=void 0===e||"string"==typeof e;if(!i&&void 0!==e.textures[this.uuid])return e.textures[this.uuid];const r={metadata:{version:4.6,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(r.userData=this.userData),i||(e.textures[this.uuid]=r),r}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(e){if(300!==this.mapping)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case _b:e.x=e.x-Math.floor(e.x);break;case Sd:e.x=e.x<0?0:1;break;case 1002:e.x=1===Math.abs(Math.floor(e.x)%2)?Math.ceil(e.x)-e.x:e.x-Math.floor(e.x)}if(e.y<0||e.y>1)switch(this.wrapT){case _b:e.y=e.y-Math.floor(e.y);break;case Sd:e.y=e.y<0?0:1;break;case 1002:e.y=1===Math.abs(Math.floor(e.y)%2)?Math.ceil(e.y)-e.y:e.y-Math.floor(e.y)}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){!0===e&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){!0===e&&this.pmremVersion++}}return n.DEFAULT_IMAGE=null,n.DEFAULT_MAPPING=300,n.DEFAULT_ANISOTROPY=1,n})();class so{constructor(t=0,e=0,i=0,r=1){so.prototype.isVector4=!0,this.x=t,this.y=e,this.z=i,this.w=r}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,i,r){return this.x=t,this.y=e,this.z=i,this.w=r,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,i=this.y,r=this.z,s=this.w,l=t.elements;return this.x=l[0]*e+l[4]*i+l[8]*r+l[12]*s,this.y=l[1]*e+l[5]*i+l[9]*r+l[13]*s,this.z=l[2]*e+l[6]*i+l[10]*r+l[14]*s,this.w=l[3]*e+l[7]*i+l[11]*r+l[15]*s,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,i,r,s;const f=t.elements,p=f[0],m=f[4],_=f[8],b=f[1],w=f[5],F=f[9],D=f[2],T=f[6],I=f[10];if(Math.abs(m-b)<.01&&Math.abs(_-D)<.01&&Math.abs(F-T)<.01){if(Math.abs(m+b)<.1&&Math.abs(_+D)<.1&&Math.abs(F+T)<.1&&Math.abs(p+w+I-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;const R=(p+1)/2,P=(w+1)/2,ee=(I+1)/2,J=(m+b)/4,te=(_+D)/4,ie=(F+T)/4;return R>P&&R>ee?R<.01?(i=0,r=.707106781,s=.707106781):(i=Math.sqrt(R),r=J/i,s=te/i):P>ee?P<.01?(i=.707106781,r=0,s=.707106781):(r=Math.sqrt(P),i=J/r,s=ie/r):ee<.01?(i=.707106781,r=.707106781,s=0):(s=Math.sqrt(ee),i=te/s,r=ie/s),this.set(i,r,s,e),this}let O=Math.sqrt((T-F)*(T-F)+(_-D)*(_-D)+(b-m)*(b-m));return Math.abs(O)<.001&&(O=1),this.x=(T-F)/O,this.y=(_-D)/O,this.z=(b-m)/O,this.w=Math.acos((p+w+I-1)/2),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this.w=e[15],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this.w=t.w+(e.w-t.w)*i,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class y5 extends rc{constructor(t=1,e=1,i={}){super(),this.isRenderTarget=!0,this.width=t,this.height=e,this.depth=1,this.scissor=new so(0,0,t,e),this.scissorTest=!1,this.viewport=new so(0,0,t,e);const r={width:t,height:e,depth:1};i=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:vs,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1},i);const s=new Wa(r,i.mapping,i.wrapS,i.wrapT,i.magFilter,i.minFilter,i.format,i.type,i.anisotropy,i.colorSpace);s.flipY=!1,s.generateMipmaps=i.generateMipmaps,s.internalFormat=i.internalFormat,this.textures=[];const l=i.count;for(let u=0;u=0?1:-1,R=1-I*I;if(R>Number.EPSILON){const ee=Math.sqrt(R),J=Math.atan2(ee,I*O);T=Math.sin(T*J)/ee,u=Math.sin(u*J)/ee}const P=u*O;if(f=f*T+b*P,p=p*T+w*P,m=m*T+F*P,_=_*T+D*P,T===1-u){const ee=1/Math.sqrt(f*f+p*p+m*m+_*_);f*=ee,p*=ee,m*=ee,_*=ee}}t[e]=f,t[e+1]=p,t[e+2]=m,t[e+3]=_}static multiplyQuaternionsFlat(t,e,i,r,s,l){const u=i[r],f=i[r+1],p=i[r+2],m=i[r+3],_=s[l],b=s[l+1],w=s[l+2],F=s[l+3];return t[e]=u*F+m*_+f*w-p*b,t[e+1]=f*F+m*b+p*_-u*w,t[e+2]=p*F+m*w+u*b-f*_,t[e+3]=m*F-u*_-f*b-p*w,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,i,r){return this._x=t,this._y=e,this._z=i,this._w=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e=!0){const i=t._x,r=t._y,s=t._z,l=t._order,u=Math.cos,f=Math.sin,p=u(i/2),m=u(r/2),_=u(s/2),b=f(i/2),w=f(r/2),F=f(s/2);switch(l){case"XYZ":this._x=b*m*_+p*w*F,this._y=p*w*_-b*m*F,this._z=p*m*F+b*w*_,this._w=p*m*_-b*w*F;break;case"YXZ":this._x=b*m*_+p*w*F,this._y=p*w*_-b*m*F,this._z=p*m*F-b*w*_,this._w=p*m*_+b*w*F;break;case"ZXY":this._x=b*m*_-p*w*F,this._y=p*w*_+b*m*F,this._z=p*m*F+b*w*_,this._w=p*m*_-b*w*F;break;case"ZYX":this._x=b*m*_-p*w*F,this._y=p*w*_+b*m*F,this._z=p*m*F-b*w*_,this._w=p*m*_+b*w*F;break;case"YZX":this._x=b*m*_+p*w*F,this._y=p*w*_+b*m*F,this._z=p*m*F-b*w*_,this._w=p*m*_-b*w*F;break;case"XZY":this._x=b*m*_-p*w*F,this._y=p*w*_-b*m*F,this._z=p*m*F+b*w*_,this._w=p*m*_+b*w*F;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+l)}return!0===e&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const i=e/2,r=Math.sin(i);return this._x=t.x*r,this._y=t.y*r,this._z=t.z*r,this._w=Math.cos(i),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,i=e[0],r=e[4],s=e[8],l=e[1],u=e[5],f=e[9],p=e[2],m=e[6],_=e[10],b=i+u+_;if(b>0){const w=.5/Math.sqrt(b+1);this._w=.25/w,this._x=(m-f)*w,this._y=(s-p)*w,this._z=(l-r)*w}else if(i>u&&i>_){const w=2*Math.sqrt(1+i-u-_);this._w=(m-f)/w,this._x=.25*w,this._y=(r+l)/w,this._z=(s+p)/w}else if(u>_){const w=2*Math.sqrt(1+u-i-_);this._w=(s-p)/w,this._x=(r+l)/w,this._y=.25*w,this._z=(f+m)/w}else{const w=2*Math.sqrt(1+_-i-u);this._w=(l-r)/w,this._x=(s+p)/w,this._y=(f+m)/w,this._z=.25*w}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let i=t.dot(e)+1;return iMath.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=i):(this._x=0,this._y=-t.z,this._z=t.y,this._w=i)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=i),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(Xo(this.dot(t),-1,1)))}rotateTowards(t,e){const i=this.angleTo(t);if(0===i)return this;const r=Math.min(1,e/i);return this.slerp(t,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t){return this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const i=t._x,r=t._y,s=t._z,l=t._w,u=e._x,f=e._y,p=e._z,m=e._w;return this._x=i*m+l*u+r*p-s*f,this._y=r*m+l*f+s*u-i*p,this._z=s*m+l*p+i*f-r*u,this._w=l*m-i*u-r*f-s*p,this._onChangeCallback(),this}slerp(t,e){if(0===e)return this;if(1===e)return this.copy(t);const i=this._x,r=this._y,s=this._z,l=this._w;let u=l*t._w+i*t._x+r*t._y+s*t._z;if(u<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,u=-u):this.copy(t),u>=1)return this._w=l,this._x=i,this._y=r,this._z=s,this;const f=1-u*u;if(f<=Number.EPSILON){const w=1-e;return this._w=w*l+e*this._w,this._x=w*i+e*this._x,this._y=w*r+e*this._y,this._z=w*s+e*this._z,this.normalize(),this}const p=Math.sqrt(f),m=Math.atan2(p,u),_=Math.sin((1-e)*m)/p,b=Math.sin(e*m)/p;return this._w=l*_+this._w*b,this._x=i*_+this._x*b,this._y=r*_+this._y*b,this._z=s*_+this._z*b,this._onChangeCallback(),this}slerpQuaternions(t,e,i){return this.copy(t).slerp(e,i)}random(){const t=2*Math.PI*Math.random(),e=2*Math.PI*Math.random(),i=Math.random(),r=Math.sqrt(1-i),s=Math.sqrt(i);return this.set(r*Math.sin(t),r*Math.cos(t),s*Math.sin(e),s*Math.cos(e))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class pe{constructor(t=0,e=0,i=0){pe.prototype.isVector3=!0,this.x=t,this.y=e,this.z=i}set(t,e,i){return void 0===i&&(i=this.z),this.x=t,this.y=e,this.z=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return this.applyQuaternion(x5.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(x5.setFromAxisAngle(t,e))}applyMatrix3(t){const e=this.x,i=this.y,r=this.z,s=t.elements;return this.x=s[0]*e+s[3]*i+s[6]*r,this.y=s[1]*e+s[4]*i+s[7]*r,this.z=s[2]*e+s[5]*i+s[8]*r,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,i=this.y,r=this.z,s=t.elements,l=1/(s[3]*e+s[7]*i+s[11]*r+s[15]);return this.x=(s[0]*e+s[4]*i+s[8]*r+s[12])*l,this.y=(s[1]*e+s[5]*i+s[9]*r+s[13])*l,this.z=(s[2]*e+s[6]*i+s[10]*r+s[14])*l,this}applyQuaternion(t){const e=this.x,i=this.y,r=this.z,s=t.x,l=t.y,u=t.z,f=t.w,p=2*(l*r-u*i),m=2*(u*e-s*r),_=2*(s*i-l*e);return this.x=e+f*p+l*_-u*m,this.y=i+f*m+u*p-s*_,this.z=r+f*_+s*m-l*p,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,i=this.y,r=this.z,s=t.elements;return this.x=s[0]*e+s[4]*i+s[8]*r,this.y=s[1]*e+s[5]*i+s[9]*r,this.z=s[2]*e+s[6]*i+s[10]*r,this.normalize()}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this}cross(t){return this.crossVectors(this,t)}crossVectors(t,e){const i=t.x,r=t.y,s=t.z,l=e.x,u=e.y,f=e.z;return this.x=r*f-s*u,this.y=s*l-i*f,this.z=i*u-r*l,this}projectOnVector(t){const e=t.lengthSq();if(0===e)return this.set(0,0,0);const i=t.dot(this)/e;return this.copy(t).multiplyScalar(i)}projectOnPlane(t){return ck.copy(this).projectOnVector(t),this.sub(ck)}reflect(t){return this.sub(ck.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const i=this.dot(t)/e;return Math.acos(Xo(i,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,i=this.y-t.y,r=this.z-t.z;return e*e+i*i+r*r}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,i){const r=Math.sin(e)*t;return this.x=r*Math.sin(i),this.y=Math.cos(e)*t,this.z=r*Math.cos(i),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,i){return this.x=t*Math.sin(e),this.y=i,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),i=this.setFromMatrixColumn(t,1).length(),r=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=i,this.z=r,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}setFromEuler(t){return this.x=t._x,this.y=t._y,this.z=t._z,this}setFromColor(t){return this.x=t.r,this.y=t.g,this.z=t.b,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=Math.random()*Math.PI*2,e=2*Math.random()-1,i=Math.sqrt(1-e*e);return this.x=i*Math.cos(t),this.y=e,this.z=i*Math.sin(t),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const ck=new pe,x5=new Vs;class Ss{constructor(t=new pe(1/0,1/0,1/0),e=new pe(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){this.makeEmpty();for(let e=0,i=t.length;e=this.min.x&&t.x<=this.max.x&&t.y>=this.min.y&&t.y<=this.max.y&&t.z>=this.min.z&&t.z<=this.max.z}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(t){return t.max.x>=this.min.x&&t.min.x<=this.max.x&&t.max.y>=this.min.y&&t.min.y<=this.max.y&&t.max.z>=this.min.z&&t.min.z<=this.max.z}intersectsSphere(t){return this.clampPoint(t.center,Td),Td.distanceToSquared(t.center)<=t.radius*t.radius}intersectsPlane(t){let e,i;return t.normal.x>0?(e=t.normal.x*this.min.x,i=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,i=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,i+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,i+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,i+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,i+=t.normal.z*this.min.z),e<=-t.constant&&i>=-t.constant}intersectsTriangle(t){if(this.isEmpty())return!1;this.getCenter(Bg),mw.subVectors(this.max,Bg),Dg.subVectors(t.a,Bg),kb.subVectors(t.b,Bg),kp.subVectors(t.c,Bg),Nh.subVectors(kb,Dg),Rp.subVectors(kp,kb),Pp.subVectors(Dg,kp);let e=[0,-Nh.z,Nh.y,0,-Rp.z,Rp.y,0,-Pp.z,Pp.y,Nh.z,0,-Nh.x,Rp.z,0,-Rp.x,Pp.z,0,-Pp.x,-Nh.y,Nh.x,0,-Rp.y,Rp.x,0,-Pp.y,Pp.x,0];return!(!iS(e,Dg,kb,kp,mw)||(e=[1,0,0,0,1,0,0,0,1],!iS(e,Dg,kb,kp,mw)))&&(gw.crossVectors(Nh,Rp),e=[gw.x,gw.y,gw.z],iS(e,Dg,kb,kp,mw))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,Td).distanceTo(t)}getBoundingSphere(t){return this.isEmpty()?t.makeEmpty():(this.getCenter(t.center),t.radius=.5*this.getSize(Td).length()),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()||(Oh[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),Oh[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),Oh[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),Oh[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),Oh[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),Oh[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),Oh[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),Oh[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(Oh)),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}const Oh=[new pe,new pe,new pe,new pe,new pe,new pe,new pe,new pe],Td=new pe,Aw=new Ss,Dg=new pe,kb=new pe,kp=new pe,Nh=new pe,Rp=new pe,Pp=new pe,Bg=new pe,mw=new pe,gw=new pe,Op=new pe;function iS(n,t,e,i,r){for(let s=0,l=n.length-3;s<=l;s+=3){Op.fromArray(n,s);const u=r.x*Math.abs(Op.x)+r.y*Math.abs(Op.y)+r.z*Math.abs(Op.z),f=t.dot(Op),p=e.dot(Op),m=i.dot(Op);if(Math.max(-Math.max(f,p,m),Math.min(f,p,m))>u)return!1}return!0}const C5=new Ss,kg=new pe,_w=new pe;class ha{constructor(t=new pe,e=-1){this.isSphere=!0,this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const i=this.center;void 0!==e?i.copy(e):C5.setFromPoints(t).getCenter(i);let r=0;for(let s=0,l=t.length;sthis.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){if(this.isEmpty())return this.center.copy(t),this.radius=0,this;kg.subVectors(t,this.center);const e=kg.lengthSq();if(e>this.radius*this.radius){const i=Math.sqrt(e),r=.5*(i-this.radius);this.center.addScaledVector(kg,r/i),this.radius+=r}return this}union(t){return t.isEmpty()?this:this.isEmpty()?(this.copy(t),this):(!0===this.center.equals(t.center)?this.radius=Math.max(this.radius,t.radius):(_w.subVectors(t.center,this.center).setLength(t.radius),this.expandByPoint(kg.copy(t.center).add(_w)),this.expandByPoint(kg.copy(t.center).sub(_w))),this)}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return(new this.constructor).copy(this)}}const Su=new pe,rS=new pe,bw=new pe,Lh=new pe,vw=new pe,Rb=new pe,oS=new pe;class Uh{constructor(t=new pe,e=new pe(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return e.copy(this.origin).addScaledVector(this.direction,t)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,Su)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const i=e.dot(this.direction);return i<0?e.copy(this.origin):e.copy(this.origin).addScaledVector(this.direction,i)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=Su.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(Su.copy(this.origin).addScaledVector(this.direction,e),Su.distanceToSquared(t))}distanceSqToSegment(t,e,i,r){rS.copy(t).add(e).multiplyScalar(.5),bw.copy(e).sub(t).normalize(),Lh.copy(this.origin).sub(rS);const s=.5*t.distanceTo(e),l=-this.direction.dot(bw),u=Lh.dot(this.direction),f=-Lh.dot(bw),p=Lh.lengthSq(),m=Math.abs(1-l*l);let _,b,w,F;if(m>0)if(_=l*f-u,b=l*u-f,F=s*m,_>=0)if(b>=-F)if(b<=F){const D=1/m;_*=D,b*=D,w=_*(_+l*b+2*u)+b*(l*_+b+2*f)+p}else b=s,_=Math.max(0,-(l*b+u)),w=-_*_+b*(b+2*f)+p;else b=-s,_=Math.max(0,-(l*b+u)),w=-_*_+b*(b+2*f)+p;else b<=-F?(_=Math.max(0,-(-l*s+u)),b=_>0?-s:Math.min(Math.max(-s,-f),s),w=-_*_+b*(b+2*f)+p):b<=F?(_=0,b=Math.min(Math.max(-s,-f),s),w=b*(b+2*f)+p):(_=Math.max(0,-(l*s+u)),b=_>0?s:Math.min(Math.max(-s,-f),s),w=-_*_+b*(b+2*f)+p);else b=l>0?-s:s,_=Math.max(0,-(l*b+u)),w=-_*_+b*(b+2*f)+p;return i&&i.copy(this.origin).addScaledVector(this.direction,_),r&&r.copy(rS).addScaledVector(bw,b),w}intersectSphere(t,e){Su.subVectors(t.center,this.origin);const i=Su.dot(this.direction),r=Su.dot(Su)-i*i,s=t.radius*t.radius;if(r>s)return null;const l=Math.sqrt(s-r),u=i-l,f=i+l;return f<0?null:this.at(u<0?f:u,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;const i=-(this.origin.dot(t.normal)+t.constant)/e;return i>=0?i:null}intersectPlane(t,e){const i=this.distanceToPlane(t);return null===i?null:this.at(i,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);return 0===e||t.normal.dot(this.direction)*e<0}intersectBox(t,e){let i,r,s,l,u,f;const p=1/this.direction.x,m=1/this.direction.y,_=1/this.direction.z,b=this.origin;return p>=0?(i=(t.min.x-b.x)*p,r=(t.max.x-b.x)*p):(i=(t.max.x-b.x)*p,r=(t.min.x-b.x)*p),m>=0?(s=(t.min.y-b.y)*m,l=(t.max.y-b.y)*m):(s=(t.max.y-b.y)*m,l=(t.min.y-b.y)*m),i>l||s>r||((s>i||isNaN(i))&&(i=s),(l=0?(u=(t.min.z-b.z)*_,f=(t.max.z-b.z)*_):(u=(t.max.z-b.z)*_,f=(t.min.z-b.z)*_),i>f||u>r)||((u>i||i!=i)&&(i=u),(f=0?i:r,e)}intersectsBox(t){return null!==this.intersectBox(t,Su)}intersectTriangle(t,e,i,r,s){vw.subVectors(e,t),Rb.subVectors(i,t),oS.crossVectors(vw,Rb);let u,l=this.direction.dot(oS);if(l>0){if(r)return null;u=1}else{if(!(l<0))return null;u=-1,l=-l}Lh.subVectors(this.origin,t);const f=u*this.direction.dot(Rb.crossVectors(Lh,Rb));if(f<0)return null;const p=u*this.direction.dot(vw.cross(Lh));if(p<0||f+p>l)return null;const m=-u*Lh.dot(oS);return m<0?null:this.at(m/l,s)}applyMatrix4(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}equals(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}clone(){return(new this.constructor).copy(this)}}class Gi{constructor(t,e,i,r,s,l,u,f,p,m,_,b,w,F,D,T){Gi.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],void 0!==t&&this.set(t,e,i,r,s,l,u,f,p,m,_,b,w,F,D,T)}set(t,e,i,r,s,l,u,f,p,m,_,b,w,F,D,T){const I=this.elements;return I[0]=t,I[4]=e,I[8]=i,I[12]=r,I[1]=s,I[5]=l,I[9]=u,I[13]=f,I[2]=p,I[6]=m,I[10]=_,I[14]=b,I[3]=w,I[7]=F,I[11]=D,I[15]=T,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return(new Gi).fromArray(this.elements)}copy(t){const e=this.elements,i=t.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this}copyPosition(t){const e=this.elements,i=t.elements;return e[12]=i[12],e[13]=i[13],e[14]=i[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,i){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),i.setFromMatrixColumn(this,2),this}makeBasis(t,e,i){return this.set(t.x,e.x,i.x,0,t.y,e.y,i.y,0,t.z,e.z,i.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,i=t.elements,r=1/Pb.setFromMatrixColumn(t,0).length(),s=1/Pb.setFromMatrixColumn(t,1).length(),l=1/Pb.setFromMatrixColumn(t,2).length();return e[0]=i[0]*r,e[1]=i[1]*r,e[2]=i[2]*r,e[3]=0,e[4]=i[4]*s,e[5]=i[5]*s,e[6]=i[6]*s,e[7]=0,e[8]=i[8]*l,e[9]=i[9]*l,e[10]=i[10]*l,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){const e=this.elements,i=t.x,r=t.y,s=t.z,l=Math.cos(i),u=Math.sin(i),f=Math.cos(r),p=Math.sin(r),m=Math.cos(s),_=Math.sin(s);if("XYZ"===t.order){const b=l*m,w=l*_,F=u*m,D=u*_;e[0]=f*m,e[4]=-f*_,e[8]=p,e[1]=w+F*p,e[5]=b-D*p,e[9]=-u*f,e[2]=D-b*p,e[6]=F+w*p,e[10]=l*f}else if("YXZ"===t.order){const b=f*m,w=f*_,F=p*m,D=p*_;e[0]=b+D*u,e[4]=F*u-w,e[8]=l*p,e[1]=l*_,e[5]=l*m,e[9]=-u,e[2]=w*u-F,e[6]=D+b*u,e[10]=l*f}else if("ZXY"===t.order){const b=f*m,w=f*_,F=p*m,D=p*_;e[0]=b-D*u,e[4]=-l*_,e[8]=F+w*u,e[1]=w+F*u,e[5]=l*m,e[9]=D-b*u,e[2]=-l*p,e[6]=u,e[10]=l*f}else if("ZYX"===t.order){const b=l*m,w=l*_,F=u*m,D=u*_;e[0]=f*m,e[4]=F*p-w,e[8]=b*p+D,e[1]=f*_,e[5]=D*p+b,e[9]=w*p-F,e[2]=-p,e[6]=u*f,e[10]=l*f}else if("YZX"===t.order){const b=l*f,w=l*p,F=u*f,D=u*p;e[0]=f*m,e[4]=D-b*_,e[8]=F*_+w,e[1]=_,e[5]=l*m,e[9]=-u*m,e[2]=-p*m,e[6]=w*_+F,e[10]=b-D*_}else if("XZY"===t.order){const b=l*f,w=l*p,F=u*f,D=u*p;e[0]=f*m,e[4]=-_,e[8]=p*m,e[1]=b*_+D,e[5]=l*m,e[9]=w*_-F,e[2]=F*_-w,e[6]=u*m,e[10]=D*_+b}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(Ob,t,sS)}lookAt(t,e,i){const r=this.elements;return Cl.subVectors(t,e),0===Cl.lengthSq()&&(Cl.z=1),Cl.normalize(),Tu.crossVectors(i,Cl),0===Tu.lengthSq()&&(1===Math.abs(i.z)?Cl.x+=1e-4:Cl.z+=1e-4,Cl.normalize(),Tu.crossVectors(i,Cl)),Tu.normalize(),yw.crossVectors(Cl,Tu),r[0]=Tu.x,r[4]=yw.x,r[8]=Cl.x,r[1]=Tu.y,r[5]=yw.y,r[9]=Cl.y,r[2]=Tu.z,r[6]=yw.z,r[10]=Cl.z,this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const i=t.elements,r=e.elements,s=this.elements,l=i[0],u=i[4],f=i[8],p=i[12],m=i[1],_=i[5],b=i[9],w=i[13],F=i[2],D=i[6],T=i[10],I=i[14],O=i[3],R=i[7],P=i[11],ee=i[15],J=r[0],te=r[4],ie=r[8],W=r[12],q=r[1],ce=r[5],ke=r[9],Ue=r[13],de=r[2],ze=r[6],Ce=r[10],Oe=r[14],Fe=r[3],ht=r[7],Mt=r[11],Bt=r[15];return s[0]=l*J+u*q+f*de+p*Fe,s[4]=l*te+u*ce+f*ze+p*ht,s[8]=l*ie+u*ke+f*Ce+p*Mt,s[12]=l*W+u*Ue+f*Oe+p*Bt,s[1]=m*J+_*q+b*de+w*Fe,s[5]=m*te+_*ce+b*ze+w*ht,s[9]=m*ie+_*ke+b*Ce+w*Mt,s[13]=m*W+_*Ue+b*Oe+w*Bt,s[2]=F*J+D*q+T*de+I*Fe,s[6]=F*te+D*ce+T*ze+I*ht,s[10]=F*ie+D*ke+T*Ce+I*Mt,s[14]=F*W+D*Ue+T*Oe+I*Bt,s[3]=O*J+R*q+P*de+ee*Fe,s[7]=O*te+R*ce+P*ze+ee*ht,s[11]=O*ie+R*ke+P*Ce+ee*Mt,s[15]=O*W+R*Ue+P*Oe+ee*Bt,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],i=t[4],r=t[8],s=t[12],l=t[1],u=t[5],f=t[9],p=t[13],m=t[2],_=t[6],b=t[10],w=t[14];return t[3]*(+s*f*_-r*p*_-s*u*b+i*p*b+r*u*w-i*f*w)+t[7]*(+e*f*w-e*p*b+s*l*b-r*l*w+r*p*m-s*f*m)+t[11]*(+e*p*_-e*u*w-s*l*_+i*l*w+s*u*m-i*p*m)+t[15]*(-r*u*m-e*f*_+e*u*b+r*l*_-i*l*b+i*f*m)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,i){const r=this.elements;return t.isVector3?(r[12]=t.x,r[13]=t.y,r[14]=t.z):(r[12]=t,r[13]=e,r[14]=i),this}invert(){const t=this.elements,e=t[0],i=t[1],r=t[2],s=t[3],l=t[4],u=t[5],f=t[6],p=t[7],m=t[8],_=t[9],b=t[10],w=t[11],F=t[12],D=t[13],T=t[14],I=t[15],O=_*T*p-D*b*p+D*f*w-u*T*w-_*f*I+u*b*I,R=F*b*p-m*T*p-F*f*w+l*T*w+m*f*I-l*b*I,P=m*D*p-F*_*p+F*u*w-l*D*w-m*u*I+l*_*I,ee=F*_*f-m*D*f-F*u*b+l*D*b+m*u*T-l*_*T,J=e*O+i*R+r*P+s*ee;if(0===J)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const te=1/J;return t[0]=O*te,t[1]=(D*b*s-_*T*s-D*r*w+i*T*w+_*r*I-i*b*I)*te,t[2]=(u*T*s-D*f*s+D*r*p-i*T*p-u*r*I+i*f*I)*te,t[3]=(_*f*s-u*b*s-_*r*p+i*b*p+u*r*w-i*f*w)*te,t[4]=R*te,t[5]=(m*T*s-F*b*s+F*r*w-e*T*w-m*r*I+e*b*I)*te,t[6]=(F*f*s-l*T*s-F*r*p+e*T*p+l*r*I-e*f*I)*te,t[7]=(l*b*s-m*f*s+m*r*p-e*b*p-l*r*w+e*f*w)*te,t[8]=P*te,t[9]=(F*_*s-m*D*s-F*i*w+e*D*w+m*i*I-e*_*I)*te,t[10]=(l*D*s-F*u*s+F*i*p-e*D*p-l*i*I+e*u*I)*te,t[11]=(m*u*s-l*_*s-m*i*p+e*_*p+l*i*w-e*u*w)*te,t[12]=ee*te,t[13]=(m*D*r-F*_*r+F*i*b-e*D*b-m*i*T+e*_*T)*te,t[14]=(F*u*r-l*D*r-F*i*f+e*D*f+l*i*T-e*u*T)*te,t[15]=(l*_*r-m*u*r+m*i*f-e*_*f-l*i*b+e*u*b)*te,this}scale(t){const e=this.elements,i=t.x,r=t.y,s=t.z;return e[0]*=i,e[4]*=r,e[8]*=s,e[1]*=i,e[5]*=r,e[9]*=s,e[2]*=i,e[6]*=r,e[10]*=s,e[3]*=i,e[7]*=r,e[11]*=s,this}getMaxScaleOnAxis(){const t=this.elements;return Math.sqrt(Math.max(t[0]*t[0]+t[1]*t[1]+t[2]*t[2],t[4]*t[4]+t[5]*t[5]+t[6]*t[6],t[8]*t[8]+t[9]*t[9]+t[10]*t[10]))}makeTranslation(t,e,i){return t.isVector3?this.set(1,0,0,t.x,0,1,0,t.y,0,0,1,t.z,0,0,0,1):this.set(1,0,0,t,0,1,0,e,0,0,1,i,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),i=Math.sin(t);return this.set(1,0,0,0,0,e,-i,0,0,i,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),i=Math.sin(t);return this.set(e,0,i,0,0,1,0,0,-i,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),i=Math.sin(t);return this.set(e,-i,0,0,i,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const i=Math.cos(e),r=Math.sin(e),s=1-i,l=t.x,u=t.y,f=t.z,p=s*l,m=s*u;return this.set(p*l+i,p*u-r*f,p*f+r*u,0,p*u+r*f,m*u+i,m*f-r*l,0,p*f-r*u,m*f+r*l,s*f*f+i,0,0,0,0,1),this}makeScale(t,e,i){return this.set(t,0,0,0,0,e,0,0,0,0,i,0,0,0,0,1),this}makeShear(t,e,i,r,s,l){return this.set(1,i,s,0,t,1,l,0,e,r,1,0,0,0,0,1),this}compose(t,e,i){const r=this.elements,s=e._x,l=e._y,u=e._z,f=e._w,p=s+s,m=l+l,_=u+u,b=s*p,w=s*m,F=s*_,D=l*m,T=l*_,I=u*_,O=f*p,R=f*m,P=f*_,ee=i.x,J=i.y,te=i.z;return r[0]=(1-(D+I))*ee,r[1]=(w+P)*ee,r[2]=(F-R)*ee,r[3]=0,r[4]=(w-P)*J,r[5]=(1-(b+I))*J,r[6]=(T+O)*J,r[7]=0,r[8]=(F+R)*te,r[9]=(T-O)*te,r[10]=(1-(b+D))*te,r[11]=0,r[12]=t.x,r[13]=t.y,r[14]=t.z,r[15]=1,this}decompose(t,e,i){const r=this.elements;let s=Pb.set(r[0],r[1],r[2]).length();const l=Pb.set(r[4],r[5],r[6]).length(),u=Pb.set(r[8],r[9],r[10]).length();this.determinant()<0&&(s=-s),t.x=r[12],t.y=r[13],t.z=r[14],zc.copy(this);const p=1/s,m=1/l,_=1/u;return zc.elements[0]*=p,zc.elements[1]*=p,zc.elements[2]*=p,zc.elements[4]*=m,zc.elements[5]*=m,zc.elements[6]*=m,zc.elements[8]*=_,zc.elements[9]*=_,zc.elements[10]*=_,e.setFromRotationMatrix(zc),i.x=s,i.y=l,i.z=u,this}makePerspective(t,e,i,r,s,l,u=Qc){const f=this.elements,p=2*s/(e-t),m=2*s/(i-r),_=(e+t)/(e-t),b=(i+r)/(i-r);let w,F;if(u===Qc)w=-(l+s)/(l-s),F=-2*l*s/(l-s);else{if(2001!==u)throw new Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+u);w=-l/(l-s),F=-l*s/(l-s)}return f[0]=p,f[4]=0,f[8]=_,f[12]=0,f[1]=0,f[5]=m,f[9]=b,f[13]=0,f[2]=0,f[6]=0,f[10]=w,f[14]=F,f[3]=0,f[7]=0,f[11]=-1,f[15]=0,this}makeOrthographic(t,e,i,r,s,l,u=Qc){const f=this.elements,p=1/(e-t),m=1/(i-r),_=1/(l-s),b=(e+t)*p,w=(i+r)*m;let F,D;if(u===Qc)F=(l+s)*_,D=-2*_;else{if(2001!==u)throw new Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+u);F=s*_,D=-1*_}return f[0]=2*p,f[4]=0,f[8]=0,f[12]=-b,f[1]=0,f[5]=2*m,f[9]=0,f[13]=-w,f[2]=0,f[6]=0,f[10]=D,f[14]=-F,f[3]=0,f[7]=0,f[11]=0,f[15]=1,this}equals(t){const e=this.elements,i=t.elements;for(let r=0;r<16;r++)if(e[r]!==i[r])return!1;return!0}fromArray(t,e=0){for(let i=0;i<16;i++)this.elements[i]=t[i+e];return this}toArray(t=[],e=0){const i=this.elements;return t[e]=i[0],t[e+1]=i[1],t[e+2]=i[2],t[e+3]=i[3],t[e+4]=i[4],t[e+5]=i[5],t[e+6]=i[6],t[e+7]=i[7],t[e+8]=i[8],t[e+9]=i[9],t[e+10]=i[10],t[e+11]=i[11],t[e+12]=i[12],t[e+13]=i[13],t[e+14]=i[14],t[e+15]=i[15],t}}const Pb=new pe,zc=new Gi,Ob=new pe(0,0,0),sS=new pe(1,1,1),Tu=new pe,yw=new pe,Cl=new pe,Nb=new Gi,dk=new Vs;let Iu=(()=>{class n{constructor(e=0,i=0,r=0,s=n.DEFAULT_ORDER){this.isEuler=!0,this._x=e,this._y=i,this._z=r,this._order=s}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,i,r,s=this._order){return this._x=e,this._y=i,this._z=r,this._order=s,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,i=this._order,r=!0){const s=e.elements,l=s[0],u=s[4],f=s[8],p=s[1],m=s[5],_=s[9],b=s[2],w=s[6],F=s[10];switch(i){case"XYZ":this._y=Math.asin(Xo(f,-1,1)),Math.abs(f)<.9999999?(this._x=Math.atan2(-_,F),this._z=Math.atan2(-u,l)):(this._x=Math.atan2(w,m),this._z=0);break;case"YXZ":this._x=Math.asin(-Xo(_,-1,1)),Math.abs(_)<.9999999?(this._y=Math.atan2(f,F),this._z=Math.atan2(p,m)):(this._y=Math.atan2(-b,l),this._z=0);break;case"ZXY":this._x=Math.asin(Xo(w,-1,1)),Math.abs(w)<.9999999?(this._y=Math.atan2(-b,F),this._z=Math.atan2(-u,m)):(this._y=0,this._z=Math.atan2(p,l));break;case"ZYX":this._y=Math.asin(-Xo(b,-1,1)),Math.abs(b)<.9999999?(this._x=Math.atan2(w,F),this._z=Math.atan2(p,l)):(this._x=0,this._z=Math.atan2(-u,m));break;case"YZX":this._z=Math.asin(Xo(p,-1,1)),Math.abs(p)<.9999999?(this._x=Math.atan2(-_,m),this._y=Math.atan2(-b,l)):(this._x=0,this._y=Math.atan2(f,F));break;case"XZY":this._z=Math.asin(-Xo(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(w,m),this._y=Math.atan2(f,l)):(this._x=Math.atan2(-_,F),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+i)}return this._order=i,!0===r&&this._onChangeCallback(),this}setFromQuaternion(e,i,r){return Nb.makeRotationFromQuaternion(e),this.setFromRotationMatrix(Nb,i,r)}setFromVector3(e,i=this._order){return this.set(e.x,e.y,e.z,i)}reorder(e){return dk.setFromEuler(this),this.setFromQuaternion(dk,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],void 0!==e[3]&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],i=0){return e[i]=this._x,e[i+1]=this._y,e[i+2]=this._z,e[i+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}return n.DEFAULT_ORDER="XYZ",n})();class ww{constructor(){this.mask=1}set(t){this.mask=1<>>0}enable(t){this.mask|=1<{class n extends rc{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,"id",{value:uk++}),this.uuid=xl(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=n.DEFAULT_UP.clone();const e=new pe,i=new Iu,r=new Vs,s=new pe(1,1,1);i._onChange(function l(){r.setFromEuler(i,!1)}),r._onChange(function u(){i.setFromQuaternion(r,void 0,!1)}),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:e},rotation:{configurable:!0,enumerable:!0,value:i},quaternion:{configurable:!0,enumerable:!0,value:r},scale:{configurable:!0,enumerable:!0,value:s},modelViewMatrix:{value:new Gi},normalMatrix:{value:new zi}}),this.matrix=new Gi,this.matrixWorld=new Gi,this.matrixAutoUpdate=n.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=n.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new ww,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}onBeforeShadow(){}onAfterShadow(){}onBeforeRender(){}onAfterRender(){}applyMatrix4(e){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(e),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(e){return this.quaternion.premultiply(e),this}setRotationFromAxisAngle(e,i){this.quaternion.setFromAxisAngle(e,i)}setRotationFromEuler(e){this.quaternion.setFromEuler(e,!0)}setRotationFromMatrix(e){this.quaternion.setFromRotationMatrix(e)}setRotationFromQuaternion(e){this.quaternion.copy(e)}rotateOnAxis(e,i){return Rg.setFromAxisAngle(e,i),this.quaternion.multiply(Rg),this}rotateOnWorldAxis(e,i){return Rg.setFromAxisAngle(e,i),this.quaternion.premultiply(Rg),this}rotateX(e){return this.rotateOnAxis(E5,e)}rotateY(e){return this.rotateOnAxis(hk,e)}rotateZ(e){return this.rotateOnAxis(fk,e)}translateOnAxis(e,i){return M5.copy(e).applyQuaternion(this.quaternion),this.position.add(M5.multiplyScalar(i)),this}translateX(e){return this.translateOnAxis(E5,e)}translateY(e){return this.translateOnAxis(hk,e)}translateZ(e){return this.translateOnAxis(fk,e)}localToWorld(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(Fu.copy(this.matrixWorld).invert())}lookAt(e,i,r){e.isVector3?aS.copy(e):aS.set(e,i,r);const s=this.parent;this.updateWorldMatrix(!0,!1),Lb.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?Fu.lookAt(Lb,aS,this.up):Fu.lookAt(aS,Lb,this.up),this.quaternion.setFromRotationMatrix(Fu),s&&(Fu.extractRotation(s.matrixWorld),Rg.setFromRotationMatrix(Fu),this.quaternion.premultiply(Rg.invert()))}add(e){if(arguments.length>1){for(let i=0;i1){for(let r=0;r0&&(s.userData=this.userData),s.layers=this.layers.mask,s.matrix=this.matrix.toArray(),s.up=this.up.toArray(),!1===this.matrixAutoUpdate&&(s.matrixAutoUpdate=!1),this.isInstancedMesh&&(s.type="InstancedMesh",s.count=this.count,s.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&&(s.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(s.type="BatchedMesh",s.perObjectFrustumCulled=this.perObjectFrustumCulled,s.sortObjects=this.sortObjects,s.drawRanges=this._drawRanges,s.reservedRanges=this._reservedRanges,s.visibility=this._visibility,s.active=this._active,s.bounds=this._bounds.map(f=>({boxInitialized:f.boxInitialized,boxMin:f.box.min.toArray(),boxMax:f.box.max.toArray(),sphereInitialized:f.sphereInitialized,sphereRadius:f.sphere.radius,sphereCenter:f.sphere.center.toArray()})),s.maxInstanceCount=this._maxInstanceCount,s.maxVertexCount=this._maxVertexCount,s.maxIndexCount=this._maxIndexCount,s.geometryInitialized=this._geometryInitialized,s.geometryCount=this._geometryCount,s.matricesTexture=this._matricesTexture.toJSON(e),null!==this._colorsTexture&&(s.colorsTexture=this._colorsTexture.toJSON(e)),null!==this.boundingSphere&&(s.boundingSphere={center:s.boundingSphere.center.toArray(),radius:s.boundingSphere.radius}),null!==this.boundingBox&&(s.boundingBox={min:s.boundingBox.min.toArray(),max:s.boundingBox.max.toArray()})),this.isScene)this.background&&(this.background.isColor?s.background=this.background.toJSON():this.background.isTexture&&(s.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&!0!==this.environment.isRenderTargetTexture&&(s.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){s.geometry=l(e.geometries,this.geometry);const f=this.geometry.parameters;if(void 0!==f&&void 0!==f.shapes){const p=f.shapes;if(Array.isArray(p))for(let m=0,_=p.length;m<_;m++)l(e.shapes,p[m]);else l(e.shapes,p)}}if(this.isSkinnedMesh&&(s.bindMode=this.bindMode,s.bindMatrix=this.bindMatrix.toArray(),void 0!==this.skeleton&&(l(e.skeletons,this.skeleton),s.skeleton=this.skeleton.uuid)),void 0!==this.material)if(Array.isArray(this.material)){const f=[];for(let p=0,m=this.material.length;p0){s.children=[];for(let f=0;f0){s.animations=[];for(let f=0;f0&&(r.geometries=f),p.length>0&&(r.materials=p),m.length>0&&(r.textures=m),_.length>0&&(r.images=_),b.length>0&&(r.shapes=b),w.length>0&&(r.skeletons=w),F.length>0&&(r.animations=F),D.length>0&&(r.nodes=D)}return r.object=s,r;function u(f){const p=[];for(const m in f){const _=f[m];delete _.metadata,p.push(_)}return p}}clone(e){return(new this.constructor).copy(this,e)}copy(e,i=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),!0===i)for(let r=0;r0?r.multiplyScalar(1/Math.sqrt(s)):r.set(0,0,0)}static getBarycoord(t,e,i,r,s){Id.subVectors(r,e),Du.subVectors(i,e),mk.subVectors(t,e);const l=Id.dot(Id),u=Id.dot(Du),f=Id.dot(mk),p=Du.dot(Du),m=Du.dot(mk),_=l*p-u*u;if(0===_)return s.set(0,0,0),null;const b=1/_,w=(p*f-u*m)*b,F=(l*m-u*f)*b;return s.set(1-w-F,F,w)}static containsPoint(t,e,i,r){return null!==this.getBarycoord(t,e,i,r,Vh)&&Vh.x>=0&&Vh.y>=0&&Vh.x+Vh.y<=1}static getInterpolation(t,e,i,r,s,l,u,f){return null===this.getBarycoord(t,e,i,r,Vh)?(f.x=0,f.y=0,"z"in f&&(f.z=0),"w"in f&&(f.w=0),null):(f.setScalar(0),f.addScaledVector(s,Vh.x),f.addScaledVector(l,Vh.y),f.addScaledVector(u,Vh.z),f)}static isFrontFacing(t,e,i,r){return Id.subVectors(i,e),Du.subVectors(t,e),Id.cross(Du).dot(r)<0}set(t,e,i){return this.a.copy(t),this.b.copy(e),this.c.copy(i),this}setFromPointsAndIndices(t,e,i,r){return this.a.copy(t[e]),this.b.copy(t[i]),this.c.copy(t[r]),this}setFromAttributeAndIndices(t,e,i,r){return this.a.fromBufferAttribute(t,e),this.b.fromBufferAttribute(t,i),this.c.fromBufferAttribute(t,r),this}clone(){return(new this.constructor).copy(this)}copy(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this}getArea(){return Id.subVectors(this.c,this.b),Du.subVectors(this.a,this.b),.5*Id.cross(Du).length()}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return sc.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return sc.getBarycoord(t,this.a,this.b,this.c,e)}getInterpolation(t,e,i,r,s){return sc.getInterpolation(t,this.a,this.b,this.c,e,i,r,s)}containsPoint(t){return sc.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return sc.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const i=this.a,r=this.b,s=this.c;let l,u;Vb.subVectors(r,i),Hb.subVectors(s,i),lS.subVectors(t,i);const f=Vb.dot(lS),p=Hb.dot(lS);if(f<=0&&p<=0)return e.copy(i);cS.subVectors(t,r);const m=Vb.dot(cS),_=Hb.dot(cS);if(m>=0&&_<=m)return e.copy(r);const b=f*_-m*p;if(b<=0&&f>=0&&m<=0)return l=f/(f-m),e.copy(i).addScaledVector(Vb,l);dS.subVectors(t,s);const w=Vb.dot(dS),F=Hb.dot(dS);if(F>=0&&w<=F)return e.copy(s);const D=w*p-f*F;if(D<=0&&p>=0&&F<=0)return u=p/(p-F),e.copy(i).addScaledVector(Hb,u);const T=m*F-w*_;if(T<=0&&_-m>=0&&w-F>=0)return gk.subVectors(s,r),u=(_-m)/(_-m+(w-F)),e.copy(r).addScaledVector(gk,u);const I=1/(T+D+b);return l=D*I,u=b*I,e.copy(i).addScaledVector(Vb,l).addScaledVector(Hb,u)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}const _k={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Bu={h:0,s:0,l:0},uS={h:0,s:0,l:0};function bk(n,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?n+6*(t-n)*e:e<.5?t:e<2/3?n+6*(t-n)*(2/3-e):n}class vn{constructor(t,e,i){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(t,e,i)}set(t,e,i){if(void 0===e&&void 0===i){const r=t;r&&r.isColor?this.copy(r):"number"==typeof r?this.setHex(r):"string"==typeof r&&this.setStyle(r)}else this.setRGB(t,e,i);return this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=ic){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,Pr.toWorkingColorSpace(this,e),this}setRGB(t,e,i,r=Pr.workingColorSpace){return this.r=t,this.g=e,this.b=i,Pr.toWorkingColorSpace(this,r),this}setHSL(t,e,i,r=Pr.workingColorSpace){if(t=function KE(n,t){return(n%t+t)%t}(t,1),e=Xo(e,0,1),i=Xo(i,0,1),0===e)this.r=this.g=this.b=i;else{const s=i<=.5?i*(1+e):i+e-i*e,l=2*i-s;this.r=bk(l,s,t+1/3),this.g=bk(l,s,t),this.b=bk(l,s,t-1/3)}return Pr.toWorkingColorSpace(this,r),this}setStyle(t,e=ic){function i(s){void 0!==s&&parseFloat(s)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(t)){let s;const u=r[2];switch(r[1]){case"rgb":case"rgba":if(s=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(u))return i(s[4]),this.setRGB(Math.min(255,parseInt(s[1],10))/255,Math.min(255,parseInt(s[2],10))/255,Math.min(255,parseInt(s[3],10))/255,e);if(s=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(u))return i(s[4]),this.setRGB(Math.min(100,parseInt(s[1],10))/100,Math.min(100,parseInt(s[2],10))/100,Math.min(100,parseInt(s[3],10))/100,e);break;case"hsl":case"hsla":if(s=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(u))return i(s[4]),this.setHSL(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,e);break;default:console.warn("THREE.Color: Unknown color model "+t)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(t)){const s=r[1],l=s.length;if(3===l)return this.setRGB(parseInt(s.charAt(0),16)/15,parseInt(s.charAt(1),16)/15,parseInt(s.charAt(2),16)/15,e);if(6===l)return this.setHex(parseInt(s,16),e);console.warn("THREE.Color: Invalid hex color "+t)}else if(t&&t.length>0)return this.setColorName(t,e);return this}setColorName(t,e=ic){const i=_k[t.toLowerCase()];return void 0!==i?this.setHex(i,e):console.warn("THREE.Color: Unknown color "+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copySRGBToLinear(t){return this.r=Fg(t.r),this.g=Fg(t.g),this.b=Fg(t.b),this}copyLinearToSRGB(t){return this.r=hw(t.r),this.g=hw(t.g),this.b=hw(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=ic){return Pr.fromWorkingColorSpace(a.copy(this),t),65536*Math.round(Xo(255*a.r,0,255))+256*Math.round(Xo(255*a.g,0,255))+Math.round(Xo(255*a.b,0,255))}getHexString(t=ic){return("000000"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=Pr.workingColorSpace){Pr.fromWorkingColorSpace(a.copy(this),e);const i=a.r,r=a.g,s=a.b,l=Math.max(i,r,s),u=Math.min(i,r,s);let f,p;const m=(u+l)/2;if(u===l)f=0,p=0;else{const _=l-u;switch(p=m<=.5?_/(l+u):_/(2-l-u),l){case i:f=(r-s)/_+(r0!=t>0&&this.version++,this._alphaTest=t}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(void 0!==t)for(const e in t){const i=t[e];if(void 0===i){console.warn(`THREE.Material: parameter '${e}' has value of undefined.`);continue}const r=this[e];void 0!==r?r&&r.isColor?r.set(i):r&&r.isVector3&&i&&i.isVector3?r.copy(i):this[e]=i:console.warn(`THREE.Material: '${e}' is not a property of THREE.${this.type}.`)}}toJSON(t){const e=void 0===t||"string"==typeof t;e&&(t={textures:{},images:{}});const i={metadata:{version:4.6,type:"Material",generator:"Material.toJSON"}};function r(s){const l=[];for(const u in s){const f=s[u];delete f.metadata,l.push(f)}return l}if(i.uuid=this.uuid,i.type=this.type,""!==this.name&&(i.name=this.name),this.color&&this.color.isColor&&(i.color=this.color.getHex()),void 0!==this.roughness&&(i.roughness=this.roughness),void 0!==this.metalness&&(i.metalness=this.metalness),void 0!==this.sheen&&(i.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(i.sheenColor=this.sheenColor.getHex()),void 0!==this.sheenRoughness&&(i.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(i.emissive=this.emissive.getHex()),void 0!==this.emissiveIntensity&&1!==this.emissiveIntensity&&(i.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(i.specular=this.specular.getHex()),void 0!==this.specularIntensity&&(i.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(i.specularColor=this.specularColor.getHex()),void 0!==this.shininess&&(i.shininess=this.shininess),void 0!==this.clearcoat&&(i.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&&(i.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(i.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(i.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(i.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,i.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),void 0!==this.dispersion&&(i.dispersion=this.dispersion),void 0!==this.iridescence&&(i.iridescence=this.iridescence),void 0!==this.iridescenceIOR&&(i.iridescenceIOR=this.iridescenceIOR),void 0!==this.iridescenceThicknessRange&&(i.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(i.iridescenceMap=this.iridescenceMap.toJSON(t).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(i.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(t).uuid),void 0!==this.anisotropy&&(i.anisotropy=this.anisotropy),void 0!==this.anisotropyRotation&&(i.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(i.anisotropyMap=this.anisotropyMap.toJSON(t).uuid),this.map&&this.map.isTexture&&(i.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(i.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(i.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(i.lightMap=this.lightMap.toJSON(t).uuid,i.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(i.aoMap=this.aoMap.toJSON(t).uuid,i.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(i.bumpMap=this.bumpMap.toJSON(t).uuid,i.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(i.normalMap=this.normalMap.toJSON(t).uuid,i.normalMapType=this.normalMapType,i.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(i.displacementMap=this.displacementMap.toJSON(t).uuid,i.displacementScale=this.displacementScale,i.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(i.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(i.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(i.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(i.specularMap=this.specularMap.toJSON(t).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(i.specularIntensityMap=this.specularIntensityMap.toJSON(t).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(i.specularColorMap=this.specularColorMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(i.envMap=this.envMap.toJSON(t).uuid,void 0!==this.combine&&(i.combine=this.combine)),void 0!==this.envMapRotation&&(i.envMapRotation=this.envMapRotation.toArray()),void 0!==this.envMapIntensity&&(i.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&&(i.reflectivity=this.reflectivity),void 0!==this.refractionRatio&&(i.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(i.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.transmission&&(i.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(i.transmissionMap=this.transmissionMap.toJSON(t).uuid),void 0!==this.thickness&&(i.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(i.thicknessMap=this.thicknessMap.toJSON(t).uuid),void 0!==this.attenuationDistance&&this.attenuationDistance!==1/0&&(i.attenuationDistance=this.attenuationDistance),void 0!==this.attenuationColor&&(i.attenuationColor=this.attenuationColor.getHex()),void 0!==this.size&&(i.size=this.size),null!==this.shadowSide&&(i.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&&(i.sizeAttenuation=this.sizeAttenuation),1!==this.blending&&(i.blending=this.blending),0!==this.side&&(i.side=this.side),!0===this.vertexColors&&(i.vertexColors=!0),this.opacity<1&&(i.opacity=this.opacity),!0===this.transparent&&(i.transparent=!0),204!==this.blendSrc&&(i.blendSrc=this.blendSrc),205!==this.blendDst&&(i.blendDst=this.blendDst),100!==this.blendEquation&&(i.blendEquation=this.blendEquation),null!==this.blendSrcAlpha&&(i.blendSrcAlpha=this.blendSrcAlpha),null!==this.blendDstAlpha&&(i.blendDstAlpha=this.blendDstAlpha),null!==this.blendEquationAlpha&&(i.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(i.blendColor=this.blendColor.getHex()),0!==this.blendAlpha&&(i.blendAlpha=this.blendAlpha),3!==this.depthFunc&&(i.depthFunc=this.depthFunc),!1===this.depthTest&&(i.depthTest=this.depthTest),!1===this.depthWrite&&(i.depthWrite=this.depthWrite),!1===this.colorWrite&&(i.colorWrite=this.colorWrite),255!==this.stencilWriteMask&&(i.stencilWriteMask=this.stencilWriteMask),519!==this.stencilFunc&&(i.stencilFunc=this.stencilFunc),0!==this.stencilRef&&(i.stencilRef=this.stencilRef),255!==this.stencilFuncMask&&(i.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==Mg&&(i.stencilFail=this.stencilFail),this.stencilZFail!==Mg&&(i.stencilZFail=this.stencilZFail),this.stencilZPass!==Mg&&(i.stencilZPass=this.stencilZPass),!0===this.stencilWrite&&(i.stencilWrite=this.stencilWrite),void 0!==this.rotation&&0!==this.rotation&&(i.rotation=this.rotation),!0===this.polygonOffset&&(i.polygonOffset=!0),0!==this.polygonOffsetFactor&&(i.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(i.polygonOffsetUnits=this.polygonOffsetUnits),void 0!==this.linewidth&&1!==this.linewidth&&(i.linewidth=this.linewidth),void 0!==this.dashSize&&(i.dashSize=this.dashSize),void 0!==this.gapSize&&(i.gapSize=this.gapSize),void 0!==this.scale&&(i.scale=this.scale),!0===this.dithering&&(i.dithering=!0),this.alphaTest>0&&(i.alphaTest=this.alphaTest),!0===this.alphaHash&&(i.alphaHash=!0),!0===this.alphaToCoverage&&(i.alphaToCoverage=!0),!0===this.premultipliedAlpha&&(i.premultipliedAlpha=!0),!0===this.forceSinglePass&&(i.forceSinglePass=!0),!0===this.wireframe&&(i.wireframe=!0),this.wireframeLinewidth>1&&(i.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(i.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(i.wireframeLinejoin=this.wireframeLinejoin),!0===this.flatShading&&(i.flatShading=!0),!1===this.visible&&(i.visible=!1),!1===this.toneMapped&&(i.toneMapped=!1),!1===this.fog&&(i.fog=!1),Object.keys(this.userData).length>0&&(i.userData=this.userData),e){const s=r(t.textures),l=r(t.images);s.length>0&&(i.textures=s),l.length>0&&(i.images=l)}return i}clone(){return(new this.constructor).copy(this)}copy(t){this.name=t.name,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.blendColor.copy(t.blendColor),this.blendAlpha=t.blendAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let i=null;if(null!==e){const r=e.length;i=new Array(r);for(let s=0;s!==r;++s)i[s]=e[s].clone()}return this.clippingPlanes=i,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaHash=t.alphaHash,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.forceSinglePass=t.forceSinglePass,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(t){!0===t&&this.version++}onBuild(){console.warn("Material: onBuild() has been removed.")}}class h extends d{constructor(t){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new vn(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Iu,this.combine=X1,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapRotation.copy(t.envMapRotation),this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}}const H=new pe,K=new ft;class ae{constructor(t,e,i=!1){if(Array.isArray(t))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=t,this.itemSize=e,this.count=void 0!==t?t.length/e:0,this.normalized=i,this.usage=35044,this._updateRange={offset:0,count:-1},this.updateRanges=[],this.gpuType=wl,this.version=0}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}get updateRange(){return Dp("THREE.BufferAttribute: updateRange() is deprecated and will be removed in r169. Use addUpdateRange() instead."),this._updateRange}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this.gpuType=t.gpuType,this}copyAt(t,e,i){t*=this.itemSize,i*=e.itemSize;for(let r=0,s=this.itemSize;r0&&(t.userData=this.userData),void 0!==this.parameters){const f=this.parameters;for(const p in f)void 0!==f[p]&&(t[p]=f[p]);return t}t.data={attributes:{}};const e=this.index;null!==e&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const i=this.attributes;for(const f in i)t.data.attributes[f]=i[f].toJSON(t.data);const r={};let s=!1;for(const f in this.morphAttributes){const p=this.morphAttributes[f],m=[];for(let _=0,b=p.length;_0&&(r[f]=m,s=!0)}s&&(t.data.morphAttributes=r,t.data.morphTargetsRelative=this.morphTargetsRelative);const l=this.groups;l.length>0&&(t.data.groups=JSON.parse(JSON.stringify(l)));const u=this.boundingSphere;return null!==u&&(t.data.boundingSphere={center:u.center.toArray(),radius:u.radius}),t}clone(){return(new this.constructor).copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const e={};this.name=t.name;const i=t.index;null!==i&&this.setIndex(i.clone(e));const r=t.attributes;for(const p in r)this.setAttribute(p,r[p].clone(e));const s=t.morphAttributes;for(const p in s){const m=[],_=s[p];for(let b=0,w=_.length;b0){const r=e[i[0]];if(void 0!==r){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,l=r.length;s(t.far-t.near)**2))&&(lQ.copy(s).invert(),Qb.copy(t.ray).applyMatrix4(lQ),(null===i.boundingBox||!1!==Qb.intersectsBox(i.boundingBox))&&this._computeIntersections(t,e,Qb)))}_computeIntersections(t,e,i){let r;const s=this.geometry,l=this.material,u=s.index,f=s.attributes.position,p=s.attributes.uv,m=s.attributes.uv1,_=s.attributes.normal,b=s.groups,w=s.drawRange;if(null!==u)if(Array.isArray(l))for(let F=0,D=b.length;Fe.far?null:{distance:p,point:Ek.clone(),object:n}}(n,t,e,i,xw,Cw,Mw,Mk);if(m){r&&(wk.fromBufferAttribute(r,u),xk.fromBufferAttribute(r,f),Ck.fromBufferAttribute(r,p),m.uv=sc.getInterpolation(Mk,xw,Cw,Mw,wk,xk,Ck,new ft)),s&&(wk.fromBufferAttribute(s,u),xk.fromBufferAttribute(s,f),Ck.fromBufferAttribute(s,p),m.uv1=sc.getInterpolation(Mk,xw,Cw,Mw,wk,xk,Ck,new ft)),l&&(dQ.fromBufferAttribute(l,u),uQ.fromBufferAttribute(l,f),hQ.fromBufferAttribute(l,p),m.normal=sc.getInterpolation(Mk,xw,Cw,Mw,dQ,uQ,hQ,new pe),m.normal.dot(i.direction)>0&&m.normal.multiplyScalar(-1));const _={a:u,b:f,c:p,normal:new pe,materialIndex:0};sc.getNormal(xw,Cw,Mw,_.normal),m.face=_}return m}class jc extends Yi{constructor(t=1,e=1,i=1,r=1,s=1,l=1){super(),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:i,widthSegments:r,heightSegments:s,depthSegments:l};const u=this;r=Math.floor(r),s=Math.floor(s),l=Math.floor(l);const f=[],p=[],m=[],_=[];let b=0,w=0;function F(D,T,I,O,R,P,ee,J,te,ie,W){const q=P/te,ce=ee/ie,ke=P/2,Ue=ee/2,de=J/2,ze=te+1,Ce=ie+1;let Oe=0,Fe=0;const ht=new pe;for(let Mt=0;Mt0?1:-1,m.push(ht.x,ht.y,ht.z),_.push(rn/te),_.push(1-Mt/ie),Oe+=1}for(let Mt=0;Mt0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e.lights=this.lights,e.clipping=this.clipping;const i={};for(const r in this.extensions)!0===this.extensions[r]&&(i[r]=!0);return Object.keys(i).length>0&&(e.extensions=i),e}}class I5 extends Oo{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new Gi,this.projectionMatrix=new Gi,this.projectionMatrixInverse=new Gi,this.coordinateSystem=Qc}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this.coordinateSystem=t.coordinateSystem,this}getWorldDirection(t){return super.getWorldDirection(t).negate()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return(new this.constructor).copy(this)}}const Pg=new pe,pQ=new ft,AQ=new ft;class Js extends I5{constructor(t=50,e=1,i=.1,r=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=t,this.zoom=1,this.near=i,this.far=r,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=2*Fp*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(.5*Tg*this.fov);return.5*this.getFilmHeight()/t}getEffectiveFOV(){return 2*Fp*Math.atan(Math.tan(.5*Tg*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}getViewBounds(t,e,i){Pg.set(-1,-1,.5).applyMatrix4(this.projectionMatrixInverse),e.set(Pg.x,Pg.y).multiplyScalar(-t/Pg.z),Pg.set(1,1,.5).applyMatrix4(this.projectionMatrixInverse),i.set(Pg.x,Pg.y).multiplyScalar(-t/Pg.z)}getViewSize(t,e){return this.getViewBounds(t,pQ,AQ),e.subVectors(AQ,pQ)}setViewOffset(t,e,i,r,s,l){this.aspect=t/e,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=i,this.view.offsetY=r,this.view.width=s,this.view.height=l,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(.5*Tg*this.fov)/this.zoom,i=2*e,r=this.aspect*i,s=-.5*r;const l=this.view;if(null!==this.view&&this.view.enabled){const f=l.fullWidth,p=l.fullHeight;s+=l.offsetX*r/f,e-=l.offsetY*i/p,r*=l.width/f,i*=l.height/p}const u=this.filmOffset;0!==u&&(s+=t*u/this.getFilmWidth()),this.projectionMatrix.makePerspective(s,s+r,e,e-i,t,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}class yZ extends Oo{constructor(t,e,i){super(),this.type="CubeCamera",this.renderTarget=i,this.coordinateSystem=null,this.activeMipmapLevel=0;const r=new Js(-90,1,t,e);r.layers=this.layers,this.add(r);const s=new Js(-90,1,t,e);s.layers=this.layers,this.add(s);const l=new Js(-90,1,t,e);l.layers=this.layers,this.add(l);const u=new Js(-90,1,t,e);u.layers=this.layers,this.add(u);const f=new Js(-90,1,t,e);f.layers=this.layers,this.add(f);const p=new Js(-90,1,t,e);p.layers=this.layers,this.add(p)}updateCoordinateSystem(){const t=this.coordinateSystem,e=this.children.concat(),[i,r,s,l,u,f]=e;for(const p of e)this.remove(p);if(t===Qc)i.up.set(0,1,0),i.lookAt(1,0,0),r.up.set(0,1,0),r.lookAt(-1,0,0),s.up.set(0,0,-1),s.lookAt(0,1,0),l.up.set(0,0,1),l.lookAt(0,-1,0),u.up.set(0,1,0),u.lookAt(0,0,1),f.up.set(0,1,0),f.lookAt(0,0,-1);else{if(2001!==t)throw new Error("THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: "+t);i.up.set(0,-1,0),i.lookAt(-1,0,0),r.up.set(0,-1,0),r.lookAt(1,0,0),s.up.set(0,0,1),s.lookAt(0,1,0),l.up.set(0,0,-1),l.lookAt(0,-1,0),u.up.set(0,-1,0),u.lookAt(0,0,1),f.up.set(0,-1,0),f.lookAt(0,0,-1)}for(const p of e)this.add(p),p.updateMatrixWorld()}update(t,e){null===this.parent&&this.updateMatrixWorld();const{renderTarget:i,activeMipmapLevel:r}=this;this.coordinateSystem!==t.coordinateSystem&&(this.coordinateSystem=t.coordinateSystem,this.updateCoordinateSystem());const[s,l,u,f,p,m]=this.children,_=t.getRenderTarget(),b=t.getActiveCubeFace(),w=t.getActiveMipmapLevel(),F=t.xr.enabled;t.xr.enabled=!1;const D=i.texture.generateMipmaps;i.texture.generateMipmaps=!1,t.setRenderTarget(i,0,r),t.render(e,s),t.setRenderTarget(i,1,r),t.render(e,l),t.setRenderTarget(i,2,r),t.render(e,u),t.setRenderTarget(i,3,r),t.render(e,f),t.setRenderTarget(i,4,r),t.render(e,p),i.texture.generateMipmaps=D,t.setRenderTarget(i,5,r),t.render(e,m),t.setRenderTarget(_,b,w),t.xr.enabled=F,i.texture.needsPMREMUpdate=!0}}class Tk extends Wa{constructor(t,e,i,r,s,l,u,f,p,m){super(t=void 0!==t?t:[],e=void 0!==e?e:wu,i,r,s,l,u,f,p,m),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}class wZ extends oc{constructor(t=1,e={}){super(t,t,e),this.isWebGLCubeRenderTarget=!0;const i={width:t,height:t,depth:1};this.texture=new Tk([i,i,i,i,i,i],e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=void 0!==e.generateMipmaps&&e.generateMipmaps,this.texture.minFilter=void 0!==e.minFilter?e.minFilter:vs}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.colorSpace=e.colorSpace,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const i_uniforms={tEquirect:{value:null}},i_vertexShader="\n\n\t\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t\tvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\n\t\t\t\t\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n\n\t\t\t\t}\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvWorldDirection = transformDirection( position, modelMatrix );\n\n\t\t\t\t\t#include \n\t\t\t\t\t#include \n\n\t\t\t\t}\n\t\t\t",i_fragmentShader="\n\n\t\t\t\tuniform sampler2D tEquirect;\n\n\t\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t\t#include \n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvec3 direction = normalize( vWorldDirection );\n\n\t\t\t\t\tvec2 sampleUV = equirectUv( direction );\n\n\t\t\t\t\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\n\t\t\t\t}\n\t\t\t",r=new jc(5,5,5),s=new ac({name:"CubemapFromEquirect",uniforms:Ew(i_uniforms),vertexShader:i_vertexShader,fragmentShader:i_fragmentShader,side:1,blending:0});s.uniforms.tEquirect.value=e;const l=new dr(r,s),u=e.minFilter;return e.minFilter===xu&&(e.minFilter=vs),new yZ(1,10,this).update(t,l),e.minFilter=u,l.geometry.dispose(),l.material.dispose(),this}clear(t,e,i,r){const s=t.getRenderTarget();for(let l=0;l<6;l++)t.setRenderTarget(this,l),t.clear(e,i,r);t.setRenderTarget(s)}}const F5=new pe,xZ=new pe,CZ=new zi;class Og{constructor(t=new pe(1,0,0),e=0){this.isPlane=!0,this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,i,r){return this.normal.set(t,e,i),this.constant=r,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,i){const r=F5.subVectors(i,e).cross(xZ.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(r,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(t).addScaledVector(this.normal,-this.distanceToPoint(t))}intersectLine(t,e){const i=t.delta(F5),r=this.normal.dot(i);if(0===r)return 0===this.distanceToPoint(t.start)?e.copy(t.start):null;const s=-(t.start.dot(this.normal)+this.constant)/r;return s<0||s>1?null:e.copy(t.start).addScaledVector(i,s)}intersectsLine(t){const e=this.distanceToPoint(t.start),i=this.distanceToPoint(t.end);return e<0&&i>0||i<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const i=e||CZ.getNormalMatrix(t),r=this.coplanarPoint(F5).applyMatrix4(t),s=this.normal.applyMatrix3(i).normalize();return this.constant=-r.dot(s),this}translate(t){return this.constant-=t.dot(this.normal),this}equals(t){return t.normal.equals(this.normal)&&t.constant===this.constant}clone(){return(new this.constructor).copy(this)}}const zb=new ha,Ik=new pe;class Fk{constructor(t=new Og,e=new Og,i=new Og,r=new Og,s=new Og,l=new Og){this.planes=[t,e,i,r,s,l]}set(t,e,i,r,s,l){const u=this.planes;return u[0].copy(t),u[1].copy(e),u[2].copy(i),u[3].copy(r),u[4].copy(s),u[5].copy(l),this}copy(t){const e=this.planes;for(let i=0;i<6;i++)e[i].copy(t.planes[i]);return this}setFromProjectionMatrix(t,e=Qc){const i=this.planes,r=t.elements,s=r[0],l=r[1],u=r[2],f=r[3],p=r[4],m=r[5],_=r[6],b=r[7],w=r[8],F=r[9],D=r[10],T=r[11],I=r[12],O=r[13],R=r[14],P=r[15];if(i[0].setComponents(f-s,b-p,T-w,P-I).normalize(),i[1].setComponents(f+s,b+p,T+w,P+I).normalize(),i[2].setComponents(f+l,b+m,T+F,P+O).normalize(),i[3].setComponents(f-l,b-m,T-F,P-O).normalize(),i[4].setComponents(f-u,b-_,T-D,P-R).normalize(),e===Qc)i[5].setComponents(f+u,b+_,T+D,P+R).normalize();else{if(2001!==e)throw new Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+e);i[5].setComponents(u,_,D,R).normalize()}return this}intersectsObject(t){if(void 0!==t.boundingSphere)null===t.boundingSphere&&t.computeBoundingSphere(),zb.copy(t.boundingSphere).applyMatrix4(t.matrixWorld);else{const e=t.geometry;null===e.boundingSphere&&e.computeBoundingSphere(),zb.copy(e.boundingSphere).applyMatrix4(t.matrixWorld)}return this.intersectsSphere(zb)}intersectsSprite(t){return zb.center.set(0,0,0),zb.radius=.7071067811865476,zb.applyMatrix4(t.matrixWorld),this.intersectsSphere(zb)}intersectsSphere(t){const e=this.planes,i=t.center,r=-t.radius;for(let s=0;s<6;s++)if(e[s].distanceToPoint(i)0?t.max.x:t.min.x,Ik.y=r.normal.y>0?t.max.y:t.min.y,Ik.z=r.normal.z>0?t.max.z:t.min.z,r.distanceToPoint(Ik)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let i=0;i<6;i++)if(e[i].distanceToPoint(t)<0)return!1;return!0}clone(){return(new this.constructor).copy(this)}}function mQ(){let n=null,t=!1,e=null,i=null;function r(s,l){e(s,l),i=n.requestAnimationFrame(r)}return{start:function(){!0!==t&&null!==e&&(i=n.requestAnimationFrame(r),t=!0)},stop:function(){n.cancelAnimationFrame(i),t=!1},setAnimationLoop:function(s){e=s},setContext:function(s){n=s}}}function MZ(n){const t=new WeakMap;return{get:function r(u){return u.isInterleavedBufferAttribute&&(u=u.data),t.get(u)},remove:function s(u){u.isInterleavedBufferAttribute&&(u=u.data);const f=t.get(u);f&&(n.deleteBuffer(f.buffer),t.delete(u))},update:function l(u,f){if(u.isInterleavedBufferAttribute&&(u=u.data),u.isGLBufferAttribute){const m=t.get(u);return void((!m||m.version 0\n\tvec4 plane;\n\t#ifdef ALPHA_TO_COVERAGE\n\t\tfloat distanceToPlane, distanceGradient;\n\t\tfloat clipOpacity = 1.0;\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tdistanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n\t\t\tdistanceGradient = fwidth( distanceToPlane ) / 2.0;\n\t\t\tclipOpacity *= smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n\t\t\tif ( clipOpacity == 0.0 ) discard;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\t\tfloat unionClipOpacity = 1.0;\n\t\t\t#pragma unroll_loop_start\n\t\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\t\tplane = clippingPlanes[ i ];\n\t\t\t\tdistanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n\t\t\t\tdistanceGradient = fwidth( distanceToPlane ) / 2.0;\n\t\t\t\tunionClipOpacity *= 1.0 - smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n\t\t\t}\n\t\t\t#pragma unroll_loop_end\n\t\t\tclipOpacity *= 1.0 - unionClipOpacity;\n\t\t#endif\n\t\tdiffuseColor.a *= clipOpacity;\n\t\tif ( diffuseColor.a == 0.0 ) discard;\n\t#else\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\t\tbool clipped = true;\n\t\t\t#pragma unroll_loop_start\n\t\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\t\tplane = clippingPlanes[ i ];\n\t\t\t\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\n\t\t\t}\n\t\t\t#pragma unroll_loop_end\n\t\t\tif ( clipped ) discard;\n\t\t#endif\n\t#endif\n#endif",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n#endif",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES > 0\n\tvClipPosition = - mvPosition.xyz;\n#endif",color_fragment:"#if defined( USE_COLOR_ALPHA )\n\tdiffuseColor *= vColor;\n#elif defined( USE_COLOR )\n\tdiffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR )\n\tvarying vec3 vColor;\n#endif",color_pars_vertex:"#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n\tvarying vec3 vColor;\n#endif",color_vertex:"#if defined( USE_COLOR_ALPHA )\n\tvColor = vec4( 1.0 );\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n\tvColor = vec3( 1.0 );\n#endif\n#ifdef USE_COLOR\n\tvColor *= color;\n#endif\n#ifdef USE_INSTANCING_COLOR\n\tvColor.xyz *= instanceColor.xyz;\n#endif\n#ifdef USE_BATCHING_COLOR\n\tvec3 batchingColor = getBatchingColor( getIndirectIndex( gl_DrawID ) );\n\tvColor.xyz *= batchingColor.xyz;\n#endif",common:"#define PI 3.141592653589793\n#define PI2 6.283185307179586\n#define PI_HALF 1.5707963267948966\n#define RECIPROCAL_PI 0.3183098861837907\n#define RECIPROCAL_PI2 0.15915494309189535\n#define EPSILON 1e-6\n#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nvec3 pow2( const in vec3 x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }\nfloat average( const in vec3 v ) { return dot( v, vec3( 0.3333333 ) ); }\nhighp float rand( const in vec2 uv ) {\n\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\n\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n\treturn fract( sin( sn ) * c );\n}\n#ifdef HIGH_PRECISION\n\tfloat precisionSafeLength( vec3 v ) { return length( v ); }\n#else\n\tfloat precisionSafeLength( vec3 v ) {\n\t\tfloat maxComponent = max3( abs( v ) );\n\t\treturn length( v / maxComponent ) * maxComponent;\n\t}\n#endif\nstruct IncidentLight {\n\tvec3 color;\n\tvec3 direction;\n\tbool visible;\n};\nstruct ReflectedLight {\n\tvec3 directDiffuse;\n\tvec3 directSpecular;\n\tvec3 indirectDiffuse;\n\tvec3 indirectSpecular;\n};\n#ifdef USE_ALPHAHASH\n\tvarying vec3 vPosition;\n#endif\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nmat3 transposeMat3( const in mat3 m ) {\n\tmat3 tmp;\n\ttmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n\ttmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n\ttmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n\treturn tmp;\n}\nbool isPerspectiveMatrix( mat4 m ) {\n\treturn m[ 2 ][ 3 ] == - 1.0;\n}\nvec2 equirectUv( in vec3 dir ) {\n\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\n\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\treturn vec2( u, v );\n}\nvec3 BRDF_Lambert( const in vec3 diffuseColor ) {\n\treturn RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\n\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n}\nfloat F_Schlick( const in float f0, const in float f90, const in float dotVH ) {\n\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n} // validated",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n\t#define cubeUV_minMipLevel 4.0\n\t#define cubeUV_minTileSize 16.0\n\tfloat getFace( vec3 direction ) {\n\t\tvec3 absDirection = abs( direction );\n\t\tfloat face = - 1.0;\n\t\tif ( absDirection.x > absDirection.z ) {\n\t\t\tif ( absDirection.x > absDirection.y )\n\t\t\t\tface = direction.x > 0.0 ? 0.0 : 3.0;\n\t\t\telse\n\t\t\t\tface = direction.y > 0.0 ? 1.0 : 4.0;\n\t\t} else {\n\t\t\tif ( absDirection.z > absDirection.y )\n\t\t\t\tface = direction.z > 0.0 ? 2.0 : 5.0;\n\t\t\telse\n\t\t\t\tface = direction.y > 0.0 ? 1.0 : 4.0;\n\t\t}\n\t\treturn face;\n\t}\n\tvec2 getUV( vec3 direction, float face ) {\n\t\tvec2 uv;\n\t\tif ( face == 0.0 ) {\n\t\t\tuv = vec2( direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 1.0 ) {\n\t\t\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y );\n\t\t} else if ( face == 2.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.y ) / abs( direction.z );\n\t\t} else if ( face == 3.0 ) {\n\t\t\tuv = vec2( - direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 4.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.z ) / abs( direction.y );\n\t\t} else {\n\t\t\tuv = vec2( direction.x, direction.y ) / abs( direction.z );\n\t\t}\n\t\treturn 0.5 * ( uv + 1.0 );\n\t}\n\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\n\t\tfloat face = getFace( direction );\n\t\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\n\t\tmipInt = max( mipInt, cubeUV_minMipLevel );\n\t\tfloat faceSize = exp2( mipInt );\n\t\thighp vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0;\n\t\tif ( face > 2.0 ) {\n\t\t\tuv.y += faceSize;\n\t\t\tface -= 3.0;\n\t\t}\n\t\tuv.x += face * faceSize;\n\t\tuv.x += filterInt * 3.0 * cubeUV_minTileSize;\n\t\tuv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize );\n\t\tuv.x *= CUBEUV_TEXEL_WIDTH;\n\t\tuv.y *= CUBEUV_TEXEL_HEIGHT;\n\t\t#ifdef texture2DGradEXT\n\t\t\treturn texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb;\n\t\t#else\n\t\t\treturn texture2D( envMap, uv ).rgb;\n\t\t#endif\n\t}\n\t#define cubeUV_r0 1.0\n\t#define cubeUV_m0 - 2.0\n\t#define cubeUV_r1 0.8\n\t#define cubeUV_m1 - 1.0\n\t#define cubeUV_r4 0.4\n\t#define cubeUV_m4 2.0\n\t#define cubeUV_r5 0.305\n\t#define cubeUV_m5 3.0\n\t#define cubeUV_r6 0.21\n\t#define cubeUV_m6 4.0\n\tfloat roughnessToMip( float roughness ) {\n\t\tfloat mip = 0.0;\n\t\tif ( roughness >= cubeUV_r1 ) {\n\t\t\tmip = ( cubeUV_r0 - roughness ) * ( cubeUV_m1 - cubeUV_m0 ) / ( cubeUV_r0 - cubeUV_r1 ) + cubeUV_m0;\n\t\t} else if ( roughness >= cubeUV_r4 ) {\n\t\t\tmip = ( cubeUV_r1 - roughness ) * ( cubeUV_m4 - cubeUV_m1 ) / ( cubeUV_r1 - cubeUV_r4 ) + cubeUV_m1;\n\t\t} else if ( roughness >= cubeUV_r5 ) {\n\t\t\tmip = ( cubeUV_r4 - roughness ) * ( cubeUV_m5 - cubeUV_m4 ) / ( cubeUV_r4 - cubeUV_r5 ) + cubeUV_m4;\n\t\t} else if ( roughness >= cubeUV_r6 ) {\n\t\t\tmip = ( cubeUV_r5 - roughness ) * ( cubeUV_m6 - cubeUV_m5 ) / ( cubeUV_r5 - cubeUV_r6 ) + cubeUV_m5;\n\t\t} else {\n\t\t\tmip = - 2.0 * log2( 1.16 * roughness );\t\t}\n\t\treturn mip;\n\t}\n\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\n\t\tfloat mip = clamp( roughnessToMip( roughness ), cubeUV_m0, CUBEUV_MAX_MIP );\n\t\tfloat mipF = fract( mip );\n\t\tfloat mipInt = floor( mip );\n\t\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\n\t\tif ( mipF == 0.0 ) {\n\t\t\treturn vec4( color0, 1.0 );\n\t\t} else {\n\t\t\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\n\t\t\treturn vec4( mix( color0, color1, mipF ), 1.0 );\n\t\t}\n\t}\n#endif",defaultnormal_vertex:"vec3 transformedNormal = objectNormal;\n#ifdef USE_TANGENT\n\tvec3 transformedTangent = objectTangent;\n#endif\n#ifdef USE_BATCHING\n\tmat3 bm = mat3( batchingMatrix );\n\ttransformedNormal /= vec3( dot( bm[ 0 ], bm[ 0 ] ), dot( bm[ 1 ], bm[ 1 ] ), dot( bm[ 2 ], bm[ 2 ] ) );\n\ttransformedNormal = bm * transformedNormal;\n\t#ifdef USE_TANGENT\n\t\ttransformedTangent = bm * transformedTangent;\n\t#endif\n#endif\n#ifdef USE_INSTANCING\n\tmat3 im = mat3( instanceMatrix );\n\ttransformedNormal /= vec3( dot( im[ 0 ], im[ 0 ] ), dot( im[ 1 ], im[ 1 ] ), dot( im[ 2 ], im[ 2 ] ) );\n\ttransformedNormal = im * transformedNormal;\n\t#ifdef USE_TANGENT\n\t\ttransformedTangent = im * transformedTangent;\n\t#endif\n#endif\ntransformedNormal = normalMatrix * transformedNormal;\n#ifdef FLIP_SIDED\n\ttransformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n\ttransformedTangent = ( modelViewMatrix * vec4( transformedTangent, 0.0 ) ).xyz;\n\t#ifdef FLIP_SIDED\n\t\ttransformedTangent = - transformedTangent;\n\t#endif\n#endif",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n#endif",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + displacementBias );\n#endif",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n\tvec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv );\n\ttotalEmissiveRadiance *= emissiveColor.rgb;\n#endif",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n\tuniform sampler2D emissiveMap;\n#endif",colorspace_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",colorspace_pars_fragment:"\nconst mat3 LINEAR_SRGB_TO_LINEAR_DISPLAY_P3 = mat3(\n\tvec3( 0.8224621, 0.177538, 0.0 ),\n\tvec3( 0.0331941, 0.9668058, 0.0 ),\n\tvec3( 0.0170827, 0.0723974, 0.9105199 )\n);\nconst mat3 LINEAR_DISPLAY_P3_TO_LINEAR_SRGB = mat3(\n\tvec3( 1.2249401, - 0.2249404, 0.0 ),\n\tvec3( - 0.0420569, 1.0420571, 0.0 ),\n\tvec3( - 0.0196376, - 0.0786361, 1.0982735 )\n);\nvec4 LinearSRGBToLinearDisplayP3( in vec4 value ) {\n\treturn vec4( value.rgb * LINEAR_SRGB_TO_LINEAR_DISPLAY_P3, value.a );\n}\nvec4 LinearDisplayP3ToLinearSRGB( in vec4 value ) {\n\treturn vec4( value.rgb * LINEAR_DISPLAY_P3_TO_LINEAR_SRGB, value.a );\n}\nvec4 LinearTransferOETF( in vec4 value ) {\n\treturn value;\n}\nvec4 sRGBTransferOETF( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}",envmap_fragment:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvec3 cameraToFrag;\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\n\t\t#else\n\t\t\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\n\t\t#endif\n\t#else\n\t\tvec3 reflectVec = vReflect;\n\t#endif\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 envColor = textureCube( envMap, envMapRotation * vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n\t#else\n\t\tvec4 envColor = vec4( 0.0 );\n\t#endif\n\t#ifdef ENVMAP_BLENDING_MULTIPLY\n\t\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_MIX )\n\t\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_ADD )\n\t\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\n\t#endif\n#endif",envmap_common_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float envMapIntensity;\n\tuniform float flipEnvMap;\n\tuniform mat3 envMapRotation;\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tuniform samplerCube envMap;\n\t#else\n\t\tuniform sampler2D envMap;\n\t#endif\n\t\n#endif",envmap_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float reflectivity;\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\tvarying vec3 vWorldPosition;\n\t\tuniform float refractionRatio;\n\t#else\n\t\tvarying vec3 vReflect;\n\t#endif\n#endif",envmap_pars_vertex:"#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\t\n\t\tvarying vec3 vWorldPosition;\n\t#else\n\t\tvarying vec3 vReflect;\n\t\tuniform float refractionRatio;\n\t#endif\n#endif",envmap_physical_pars_fragment:"#ifdef USE_ENVMAP\n\tvec3 getIBLIrradiance( const in vec3 normal ) {\n\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, envMapRotation * worldNormal, 1.0 );\n\t\t\treturn PI * envMapColor.rgb * envMapIntensity;\n\t\t#else\n\t\t\treturn vec3( 0.0 );\n\t\t#endif\n\t}\n\tvec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\n\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\tvec3 reflectVec = reflect( - viewDir, normal );\n\t\t\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\n\t\t\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, envMapRotation * reflectVec, roughness );\n\t\t\treturn envMapColor.rgb * envMapIntensity;\n\t\t#else\n\t\t\treturn vec3( 0.0 );\n\t\t#endif\n\t}\n\t#ifdef USE_ANISOTROPY\n\t\tvec3 getIBLAnisotropyRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in vec3 bitangent, const in float anisotropy ) {\n\t\t\t#ifdef ENVMAP_TYPE_CUBE_UV\n\t\t\t\tvec3 bentNormal = cross( bitangent, viewDir );\n\t\t\t\tbentNormal = normalize( cross( bentNormal, bitangent ) );\n\t\t\t\tbentNormal = normalize( mix( bentNormal, normal, pow2( pow2( 1.0 - anisotropy * ( 1.0 - roughness ) ) ) ) );\n\t\t\t\treturn getIBLRadiance( viewDir, bentNormal, roughness );\n\t\t\t#else\n\t\t\t\treturn vec3( 0.0 );\n\t\t\t#endif\n\t\t}\n\t#endif\n#endif",envmap_vertex:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvWorldPosition = worldPosition.xyz;\n\t#else\n\t\tvec3 cameraToVertex;\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvReflect = reflect( cameraToVertex, worldNormal );\n\t\t#else\n\t\t\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n\t\t#endif\n\t#endif\n#endif",fog_vertex:"#ifdef USE_FOG\n\tvFogDepth = - mvPosition.z;\n#endif",fog_pars_vertex:"#ifdef USE_FOG\n\tvarying float vFogDepth;\n#endif",fog_fragment:"#ifdef USE_FOG\n\t#ifdef FOG_EXP2\n\t\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\n\t#else\n\t\tfloat fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\n\t#endif\n\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif",fog_pars_fragment:"#ifdef USE_FOG\n\tuniform vec3 fogColor;\n\tvarying float vFogDepth;\n\t#ifdef FOG_EXP2\n\t\tuniform float fogDensity;\n\t#else\n\t\tuniform float fogNear;\n\t\tuniform float fogFar;\n\t#endif\n#endif",gradientmap_pars_fragment:"#ifdef USE_GRADIENTMAP\n\tuniform sampler2D gradientMap;\n#endif\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n\tfloat dotNL = dot( normal, lightDirection );\n\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n\t#ifdef USE_GRADIENTMAP\n\t\treturn vec3( texture2D( gradientMap, coord ).r );\n\t#else\n\t\tvec2 fw = fwidth( coord ) * 0.5;\n\t\treturn mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) );\n\t#endif\n}",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n#endif",lights_lambert_fragment:"LambertMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularStrength = specularStrength;",lights_lambert_pars_fragment:"varying vec3 vViewPosition;\nstruct LambertMaterial {\n\tvec3 diffuseColor;\n\tfloat specularStrength;\n};\nvoid RE_Direct_Lambert( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Lambert\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Lambert",lights_pars_begin:"uniform bool receiveShadow;\nuniform vec3 ambientLightColor;\n#if defined( USE_LIGHT_PROBES )\n\tuniform vec3 lightProbe[ 9 ];\n#endif\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n\tfloat x = normal.x, y = normal.y, z = normal.z;\n\tvec3 result = shCoefficients[ 0 ] * 0.886227;\n\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n\treturn result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\n\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n\treturn irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n\tvec3 irradiance = ambientLightColor;\n\treturn irradiance;\n}\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n\tif ( cutoffDistance > 0.0 ) {\n\t\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n\t}\n\treturn distanceFalloff;\n}\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\n\treturn smoothstep( coneCosine, penumbraCosine, angleCosine );\n}\n#if NUM_DIR_LIGHTS > 0\n\tstruct DirectionalLight {\n\t\tvec3 direction;\n\t\tvec3 color;\n\t};\n\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n\tvoid getDirectionalLightInfo( const in DirectionalLight directionalLight, out IncidentLight light ) {\n\t\tlight.color = directionalLight.color;\n\t\tlight.direction = directionalLight.direction;\n\t\tlight.visible = true;\n\t}\n#endif\n#if NUM_POINT_LIGHTS > 0\n\tstruct PointLight {\n\t\tvec3 position;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t};\n\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n\tvoid getPointLightInfo( const in PointLight pointLight, const in vec3 geometryPosition, out IncidentLight light ) {\n\t\tvec3 lVector = pointLight.position - geometryPosition;\n\t\tlight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tlight.color = pointLight.color;\n\t\tlight.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );\n\t\tlight.visible = ( light.color != vec3( 0.0 ) );\n\t}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\tstruct SpotLight {\n\t\tvec3 position;\n\t\tvec3 direction;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t\tfloat coneCos;\n\t\tfloat penumbraCos;\n\t};\n\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n\tvoid getSpotLightInfo( const in SpotLight spotLight, const in vec3 geometryPosition, out IncidentLight light ) {\n\t\tvec3 lVector = spotLight.position - geometryPosition;\n\t\tlight.direction = normalize( lVector );\n\t\tfloat angleCos = dot( light.direction, spotLight.direction );\n\t\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n\t\tif ( spotAttenuation > 0.0 ) {\n\t\t\tfloat lightDistance = length( lVector );\n\t\t\tlight.color = spotLight.color * spotAttenuation;\n\t\t\tlight.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\n\t\t\tlight.visible = ( light.color != vec3( 0.0 ) );\n\t\t} else {\n\t\t\tlight.color = vec3( 0.0 );\n\t\t\tlight.visible = false;\n\t\t}\n\t}\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n\tstruct RectAreaLight {\n\t\tvec3 color;\n\t\tvec3 position;\n\t\tvec3 halfWidth;\n\t\tvec3 halfHeight;\n\t};\n\tuniform sampler2D ltc_1;\tuniform sampler2D ltc_2;\n\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\tstruct HemisphereLight {\n\t\tvec3 direction;\n\t\tvec3 skyColor;\n\t\tvec3 groundColor;\n\t};\n\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\n\t\tfloat dotNL = dot( normal, hemiLight.direction );\n\t\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n\t\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n\t\treturn irradiance;\n\t}\n#endif",lights_toon_fragment:"ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;",lights_toon_pars_fragment:"varying vec3 vViewPosition;\nstruct ToonMaterial {\n\tvec3 diffuseColor;\n};\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\tvec3 irradiance = getGradientIrradiance( geometryNormal, directLight.direction ) * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Toon\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Toon",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_phong_pars_fragment:"varying vec3 vViewPosition;\nstruct BlinnPhongMaterial {\n\tvec3 diffuseColor;\n\tvec3 specularColor;\n\tfloat specularShininess;\n\tfloat specularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometryViewDir, geometryNormal, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_BlinnPhong\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_BlinnPhong",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nvec3 dxy = max( abs( dFdx( nonPerturbedNormal ) ), abs( dFdy( nonPerturbedNormal ) ) );\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\nmaterial.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;\nmaterial.roughness = min( material.roughness, 1.0 );\n#ifdef IOR\n\tmaterial.ior = ior;\n\t#ifdef USE_SPECULAR\n\t\tfloat specularIntensityFactor = specularIntensity;\n\t\tvec3 specularColorFactor = specularColor;\n\t\t#ifdef USE_SPECULAR_COLORMAP\n\t\t\tspecularColorFactor *= texture2D( specularColorMap, vSpecularColorMapUv ).rgb;\n\t\t#endif\n\t\t#ifdef USE_SPECULAR_INTENSITYMAP\n\t\t\tspecularIntensityFactor *= texture2D( specularIntensityMap, vSpecularIntensityMapUv ).a;\n\t\t#endif\n\t\tmaterial.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\n\t#else\n\t\tfloat specularIntensityFactor = 1.0;\n\t\tvec3 specularColorFactor = vec3( 1.0 );\n\t\tmaterial.specularF90 = 1.0;\n\t#endif\n\tmaterial.specularColor = mix( min( pow2( ( material.ior - 1.0 ) / ( material.ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\n#else\n\tmaterial.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\n\tmaterial.specularF90 = 1.0;\n#endif\n#ifdef USE_CLEARCOAT\n\tmaterial.clearcoat = clearcoat;\n\tmaterial.clearcoatRoughness = clearcoatRoughness;\n\tmaterial.clearcoatF0 = vec3( 0.04 );\n\tmaterial.clearcoatF90 = 1.0;\n\t#ifdef USE_CLEARCOATMAP\n\t\tmaterial.clearcoat *= texture2D( clearcoatMap, vClearcoatMapUv ).x;\n\t#endif\n\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\t\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vClearcoatRoughnessMapUv ).y;\n\t#endif\n\tmaterial.clearcoat = saturate( material.clearcoat );\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\n\tmaterial.clearcoatRoughness += geometryRoughness;\n\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\n#endif\n#ifdef USE_DISPERSION\n\tmaterial.dispersion = dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n\tmaterial.iridescence = iridescence;\n\tmaterial.iridescenceIOR = iridescenceIOR;\n\t#ifdef USE_IRIDESCENCEMAP\n\t\tmaterial.iridescence *= texture2D( iridescenceMap, vIridescenceMapUv ).r;\n\t#endif\n\t#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\t\tmaterial.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vIridescenceThicknessMapUv ).g + iridescenceThicknessMinimum;\n\t#else\n\t\tmaterial.iridescenceThickness = iridescenceThicknessMaximum;\n\t#endif\n#endif\n#ifdef USE_SHEEN\n\tmaterial.sheenColor = sheenColor;\n\t#ifdef USE_SHEEN_COLORMAP\n\t\tmaterial.sheenColor *= texture2D( sheenColorMap, vSheenColorMapUv ).rgb;\n\t#endif\n\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\n\t#ifdef USE_SHEEN_ROUGHNESSMAP\n\t\tmaterial.sheenRoughness *= texture2D( sheenRoughnessMap, vSheenRoughnessMapUv ).a;\n\t#endif\n#endif\n#ifdef USE_ANISOTROPY\n\t#ifdef USE_ANISOTROPYMAP\n\t\tmat2 anisotropyMat = mat2( anisotropyVector.x, anisotropyVector.y, - anisotropyVector.y, anisotropyVector.x );\n\t\tvec3 anisotropyPolar = texture2D( anisotropyMap, vAnisotropyMapUv ).rgb;\n\t\tvec2 anisotropyV = anisotropyMat * normalize( 2.0 * anisotropyPolar.rg - vec2( 1.0 ) ) * anisotropyPolar.b;\n\t#else\n\t\tvec2 anisotropyV = anisotropyVector;\n\t#endif\n\tmaterial.anisotropy = length( anisotropyV );\n\tif( material.anisotropy == 0.0 ) {\n\t\tanisotropyV = vec2( 1.0, 0.0 );\n\t} else {\n\t\tanisotropyV /= material.anisotropy;\n\t\tmaterial.anisotropy = saturate( material.anisotropy );\n\t}\n\tmaterial.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );\n\tmaterial.anisotropyT = tbn[ 0 ] * anisotropyV.x + tbn[ 1 ] * anisotropyV.y;\n\tmaterial.anisotropyB = tbn[ 1 ] * anisotropyV.x - tbn[ 0 ] * anisotropyV.y;\n#endif",lights_physical_pars_fragment:"struct PhysicalMaterial {\n\tvec3 diffuseColor;\n\tfloat roughness;\n\tvec3 specularColor;\n\tfloat specularF90;\n\tfloat dispersion;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat clearcoat;\n\t\tfloat clearcoatRoughness;\n\t\tvec3 clearcoatF0;\n\t\tfloat clearcoatF90;\n\t#endif\n\t#ifdef USE_IRIDESCENCE\n\t\tfloat iridescence;\n\t\tfloat iridescenceIOR;\n\t\tfloat iridescenceThickness;\n\t\tvec3 iridescenceFresnel;\n\t\tvec3 iridescenceF0;\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tvec3 sheenColor;\n\t\tfloat sheenRoughness;\n\t#endif\n\t#ifdef IOR\n\t\tfloat ior;\n\t#endif\n\t#ifdef USE_TRANSMISSION\n\t\tfloat transmission;\n\t\tfloat transmissionAlpha;\n\t\tfloat thickness;\n\t\tfloat attenuationDistance;\n\t\tvec3 attenuationColor;\n\t#endif\n\t#ifdef USE_ANISOTROPY\n\t\tfloat anisotropy;\n\t\tfloat alphaT;\n\t\tvec3 anisotropyT;\n\t\tvec3 anisotropyB;\n\t#endif\n};\nvec3 clearcoatSpecularDirect = vec3( 0.0 );\nvec3 clearcoatSpecularIndirect = vec3( 0.0 );\nvec3 sheenSpecularDirect = vec3( 0.0 );\nvec3 sheenSpecularIndirect = vec3(0.0 );\nvec3 Schlick_to_F0( const in vec3 f, const in float f90, const in float dotVH ) {\n float x = clamp( 1.0 - dotVH, 0.0, 1.0 );\n float x2 = x * x;\n float x5 = clamp( x * x2 * x2, 0.0, 0.9999 );\n return ( f - vec3( f90 ) * x5 ) / ( 1.0 - x5 );\n}\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\treturn 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n\tfloat a2 = pow2( alpha );\n\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n\treturn RECIPROCAL_PI * a2 / pow2( denom );\n}\n#ifdef USE_ANISOTROPY\n\tfloat V_GGX_SmithCorrelated_Anisotropic( const in float alphaT, const in float alphaB, const in float dotTV, const in float dotBV, const in float dotTL, const in float dotBL, const in float dotNV, const in float dotNL ) {\n\t\tfloat gv = dotNL * length( vec3( alphaT * dotTV, alphaB * dotBV, dotNV ) );\n\t\tfloat gl = dotNV * length( vec3( alphaT * dotTL, alphaB * dotBL, dotNL ) );\n\t\tfloat v = 0.5 / ( gv + gl );\n\t\treturn saturate(v);\n\t}\n\tfloat D_GGX_Anisotropic( const in float alphaT, const in float alphaB, const in float dotNH, const in float dotTH, const in float dotBH ) {\n\t\tfloat a2 = alphaT * alphaB;\n\t\thighp vec3 v = vec3( alphaB * dotTH, alphaT * dotBH, a2 * dotNH );\n\t\thighp float v2 = dot( v, v );\n\t\tfloat w2 = a2 / v2;\n\t\treturn RECIPROCAL_PI * a2 * pow2 ( w2 );\n\t}\n#endif\n#ifdef USE_CLEARCOAT\n\tvec3 BRDF_GGX_Clearcoat( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material) {\n\t\tvec3 f0 = material.clearcoatF0;\n\t\tfloat f90 = material.clearcoatF90;\n\t\tfloat roughness = material.clearcoatRoughness;\n\t\tfloat alpha = pow2( roughness );\n\t\tvec3 halfDir = normalize( lightDir + viewDir );\n\t\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\t\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\t\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\t\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\t\tvec3 F = F_Schlick( f0, f90, dotVH );\n\t\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\t\tfloat D = D_GGX( alpha, dotNH );\n\t\treturn F * ( V * D );\n\t}\n#endif\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) {\n\tvec3 f0 = material.specularColor;\n\tfloat f90 = material.specularF90;\n\tfloat roughness = material.roughness;\n\tfloat alpha = pow2( roughness );\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\n\tvec3 F = F_Schlick( f0, f90, dotVH );\n\t#ifdef USE_IRIDESCENCE\n\t\tF = mix( F, material.iridescenceFresnel, material.iridescence );\n\t#endif\n\t#ifdef USE_ANISOTROPY\n\t\tfloat dotTL = dot( material.anisotropyT, lightDir );\n\t\tfloat dotTV = dot( material.anisotropyT, viewDir );\n\t\tfloat dotTH = dot( material.anisotropyT, halfDir );\n\t\tfloat dotBL = dot( material.anisotropyB, lightDir );\n\t\tfloat dotBV = dot( material.anisotropyB, viewDir );\n\t\tfloat dotBH = dot( material.anisotropyB, halfDir );\n\t\tfloat V = V_GGX_SmithCorrelated_Anisotropic( material.alphaT, alpha, dotTV, dotBV, dotTL, dotBL, dotNV, dotNL );\n\t\tfloat D = D_GGX_Anisotropic( material.alphaT, alpha, dotNH, dotTH, dotBH );\n\t#else\n\t\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\t\tfloat D = D_GGX( alpha, dotNH );\n\t#endif\n\treturn F * ( V * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n\tconst float LUT_SIZE = 64.0;\n\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\n\tfloat dotNV = saturate( dot( N, V ) );\n\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n\tuv = uv * LUT_SCALE + LUT_BIAS;\n\treturn uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n\tfloat l = length( f );\n\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n\tfloat x = dot( v1, v2 );\n\tfloat y = abs( x );\n\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\n\tfloat v = a / b;\n\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n\treturn cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n\tvec3 lightNormal = cross( v1, v2 );\n\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n\tvec3 T1, T2;\n\tT1 = normalize( V - N * dot( V, N ) );\n\tT2 = - cross( N, T1 );\n\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n\tvec3 coords[ 4 ];\n\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n\tcoords[ 0 ] = normalize( coords[ 0 ] );\n\tcoords[ 1 ] = normalize( coords[ 1 ] );\n\tcoords[ 2 ] = normalize( coords[ 2 ] );\n\tcoords[ 3 ] = normalize( coords[ 3 ] );\n\tvec3 vectorFormFactor = vec3( 0.0 );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n\treturn vec3( result );\n}\n#if defined( USE_SHEEN )\nfloat D_Charlie( float roughness, float dotNH ) {\n\tfloat alpha = pow2( roughness );\n\tfloat invAlpha = 1.0 / alpha;\n\tfloat cos2h = dotNH * dotNH;\n\tfloat sin2h = max( 1.0 - cos2h, 0.0078125 );\n\treturn ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\n}\nfloat V_Neubelt( float dotNV, float dotNL ) {\n\treturn saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\n}\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) {\n\tvec3 halfDir = normalize( lightDir + viewDir );\n\tfloat dotNL = saturate( dot( normal, lightDir ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat D = D_Charlie( sheenRoughness, dotNH );\n\tfloat V = V_Neubelt( dotNV, dotNL );\n\treturn sheenColor * ( D * V );\n}\n#endif\nfloat IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat r2 = roughness * roughness;\n\tfloat a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95;\n\tfloat b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72;\n\tfloat DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) );\n\treturn saturate( DG * RECIPROCAL_PI );\n}\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\n\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\n\tvec4 r = roughness * c0 + c1;\n\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\n\tvec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\n\treturn fab;\n}\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\n\tvec2 fab = DFGApprox( normal, viewDir, roughness );\n\treturn specularColor * fab.x + specularF90 * fab.y;\n}\n#ifdef USE_IRIDESCENCE\nvoid computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#else\nvoid computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#endif\n\tvec2 fab = DFGApprox( normal, viewDir, roughness );\n\t#ifdef USE_IRIDESCENCE\n\t\tvec3 Fr = mix( specularColor, iridescenceF0, iridescence );\n\t#else\n\t\tvec3 Fr = specularColor;\n\t#endif\n\tvec3 FssEss = Fr * fab.x + specularF90 * fab.y;\n\tfloat Ess = fab.x + fab.y;\n\tfloat Ems = 1.0 - Ess;\n\tvec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619;\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n\tsingleScatter += FssEss;\n\tmultiScatter += Fms * Ems;\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\t\tvec3 normal = geometryNormal;\n\t\tvec3 viewDir = geometryViewDir;\n\t\tvec3 position = geometryPosition;\n\t\tvec3 lightPos = rectAreaLight.position;\n\t\tvec3 halfWidth = rectAreaLight.halfWidth;\n\t\tvec3 halfHeight = rectAreaLight.halfHeight;\n\t\tvec3 lightColor = rectAreaLight.color;\n\t\tfloat roughness = material.roughness;\n\t\tvec3 rectCoords[ 4 ];\n\t\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\t\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n\t\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n\t\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n\t\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\n\t\tvec4 t1 = texture2D( ltc_1, uv );\n\t\tvec4 t2 = texture2D( ltc_2, uv );\n\t\tmat3 mInv = mat3(\n\t\t\tvec3( t1.x, 0, t1.y ),\n\t\t\tvec3( 0, 1, 0 ),\n\t\t\tvec3( t1.z, 0, t1.w )\n\t\t);\n\t\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n\t\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n\t\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n\t}\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNLcc = saturate( dot( geometryClearcoatNormal, directLight.direction ) );\n\t\tvec3 ccIrradiance = dotNLcc * directLight.color;\n\t\tclearcoatSpecularDirect += ccIrradiance * BRDF_GGX_Clearcoat( directLight.direction, geometryViewDir, geometryClearcoatNormal, material );\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tsheenSpecularDirect += irradiance * BRDF_Sheen( directLight.direction, geometryViewDir, geometryNormal, material.sheenColor, material.sheenRoughness );\n\t#endif\n\treflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometryViewDir, geometryNormal, material );\n\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n\t#ifdef USE_CLEARCOAT\n\t\tclearcoatSpecularIndirect += clearcoatRadiance * EnvironmentBRDF( geometryClearcoatNormal, geometryViewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\n\t#endif\n\t#ifdef USE_SHEEN\n\t\tsheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );\n\t#endif\n\tvec3 singleScattering = vec3( 0.0 );\n\tvec3 multiScattering = vec3( 0.0 );\n\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n\t#ifdef USE_IRIDESCENCE\n\t\tcomputeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering );\n\t#else\n\t\tcomputeMultiscattering( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\n\t#endif\n\tvec3 totalScattering = singleScattering + multiScattering;\n\tvec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) );\n\treflectedLight.indirectSpecular += radiance * singleScattering;\n\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\n\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\n}\n#define RE_Direct\t\t\t\tRE_Direct_Physical\n#define RE_Direct_RectArea\t\tRE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular\t\tRE_IndirectSpecular_Physical\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}",lights_fragment_begin:"\nvec3 geometryPosition = - vViewPosition;\nvec3 geometryNormal = normal;\nvec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\nvec3 geometryClearcoatNormal = vec3( 0.0 );\n#ifdef USE_CLEARCOAT\n\tgeometryClearcoatNormal = clearcoatNormal;\n#endif\n#ifdef USE_IRIDESCENCE\n\tfloat dotNVi = saturate( dot( normal, geometryViewDir ) );\n\tif ( material.iridescenceThickness == 0.0 ) {\n\t\tmaterial.iridescence = 0.0;\n\t} else {\n\t\tmaterial.iridescence = saturate( material.iridescence );\n\t}\n\tif ( material.iridescence > 0.0 ) {\n\t\tmaterial.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor );\n\t\tmaterial.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi );\n\t}\n#endif\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n\tPointLight pointLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tpointLight = pointLights[ i ];\n\t\tgetPointLightInfo( pointLight, geometryPosition, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\n\t\tpointLightShadow = pointLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowIntensity, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n\tSpotLight spotLight;\n\tvec4 spotColor;\n\tvec3 spotLightCoord;\n\tbool inSpotLightMap;\n\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tspotLight = spotLights[ i ];\n\t\tgetSpotLightInfo( spotLight, geometryPosition, directLight );\n\t\t#if ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n\t\t#define SPOT_LIGHT_MAP_INDEX UNROLLED_LOOP_INDEX\n\t\t#elif ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\t#define SPOT_LIGHT_MAP_INDEX NUM_SPOT_LIGHT_MAPS\n\t\t#else\n\t\t#define SPOT_LIGHT_MAP_INDEX ( UNROLLED_LOOP_INDEX - NUM_SPOT_LIGHT_SHADOWS + NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n\t\t#endif\n\t\t#if ( SPOT_LIGHT_MAP_INDEX < NUM_SPOT_LIGHT_MAPS )\n\t\t\tspotLightCoord = vSpotLightCoord[ i ].xyz / vSpotLightCoord[ i ].w;\n\t\t\tinSpotLightMap = all( lessThan( abs( spotLightCoord * 2. - 1. ), vec3( 1.0 ) ) );\n\t\t\tspotColor = texture2D( spotLightMap[ SPOT_LIGHT_MAP_INDEX ], spotLightCoord.xy );\n\t\t\tdirectLight.color = inSpotLightMap ? directLight.color * spotColor.rgb : directLight.color;\n\t\t#endif\n\t\t#undef SPOT_LIGHT_MAP_INDEX\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\tspotLightShadow = spotLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowIntensity, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n\tDirectionalLight directionalLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tdirectionalLight = directionalLights[ i ];\n\t\tgetDirectionalLightInfo( directionalLight, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\n\t\tdirectionalLightShadow = directionalLightShadows[ i ];\n\t\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowIntensity, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n\tRectAreaLight rectAreaLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n\t\trectAreaLight = rectAreaLights[ i ];\n\t\tRE_Direct_RectArea( rectAreaLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if defined( RE_IndirectDiffuse )\n\tvec3 iblIrradiance = vec3( 0.0 );\n\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n\t#if defined( USE_LIGHT_PROBES )\n\t\tirradiance += getLightProbeIrradiance( lightProbe, geometryNormal );\n\t#endif\n\t#if ( NUM_HEMI_LIGHTS > 0 )\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\t\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometryNormal );\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if defined( RE_IndirectSpecular )\n\tvec3 radiance = vec3( 0.0 );\n\tvec3 clearcoatRadiance = vec3( 0.0 );\n#endif",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n\t\tvec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;\n\t\tirradiance += lightMapIrradiance;\n\t#endif\n\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\n\t\tiblIrradiance += getIBLIrradiance( geometryNormal );\n\t#endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n\t#ifdef USE_ANISOTROPY\n\t\tradiance += getIBLAnisotropyRadiance( geometryViewDir, geometryNormal, material.roughness, material.anisotropyB, material.anisotropy );\n\t#else\n\t\tradiance += getIBLRadiance( geometryViewDir, geometryNormal, material.roughness );\n\t#endif\n\t#ifdef USE_CLEARCOAT\n\t\tclearcoatRadiance += getIBLRadiance( geometryViewDir, geometryClearcoatNormal, material.clearcoatRoughness );\n\t#endif\n#endif",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n\tRE_IndirectDiffuse( irradiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF )\n\tgl_FragDepth = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF )\n\tuniform float logDepthBufFC;\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n\tvFragDepth = 1.0 + gl_Position.w;\n\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\n#endif",map_fragment:"#ifdef USE_MAP\n\tvec4 sampledDiffuseColor = texture2D( map, vMapUv );\n\t#ifdef DECODE_VIDEO_TEXTURE\n\t\tsampledDiffuseColor = vec4( mix( pow( sampledDiffuseColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), sampledDiffuseColor.rgb * 0.0773993808, vec3( lessThanEqual( sampledDiffuseColor.rgb, vec3( 0.04045 ) ) ) ), sampledDiffuseColor.w );\n\t\n\t#endif\n\tdiffuseColor *= sampledDiffuseColor;\n#endif",map_pars_fragment:"#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif",map_particle_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\t#if defined( USE_POINTS_UV )\n\t\tvec2 uv = vUv;\n\t#else\n\t\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n\t#endif\n#endif\n#ifdef USE_MAP\n\tdiffuseColor *= texture2D( map, uv );\n#endif\n#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\n#endif",map_particle_pars_fragment:"#if defined( USE_POINTS_UV )\n\tvarying vec2 vUv;\n#else\n\t#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\t\tuniform mat3 uvTransform;\n\t#endif\n#endif\n#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n\tvec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv );\n\tmetalnessFactor *= texelMetalness.b;\n#endif",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n\tuniform sampler2D metalnessMap;\n#endif",morphinstance_vertex:"#ifdef USE_INSTANCING_MORPH\n\tfloat morphTargetInfluences[ MORPHTARGETS_COUNT ];\n\tfloat morphTargetBaseInfluence = texelFetch( morphTexture, ivec2( 0, gl_InstanceID ), 0 ).r;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tmorphTargetInfluences[i] = texelFetch( morphTexture, ivec2( i + 1, gl_InstanceID ), 0 ).r;\n\t}\n#endif",morphcolor_vertex:"#if defined( USE_MORPHCOLORS )\n\tvColor *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\t#if defined( USE_COLOR_ALPHA )\n\t\t\tif ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ];\n\t\t#elif defined( USE_COLOR )\n\t\t\tif ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ];\n\t\t#endif\n\t}\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n\tobjectNormal *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tif ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ];\n\t}\n#endif",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n\t#ifndef USE_INSTANCING_MORPH\n\t\tuniform float morphTargetBaseInfluence;\n\t\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\n\t#endif\n\tuniform sampler2DArray morphTargetsTexture;\n\tuniform ivec2 morphTargetsTextureSize;\n\tvec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) {\n\t\tint texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset;\n\t\tint y = texelIndex / morphTargetsTextureSize.x;\n\t\tint x = texelIndex - y * morphTargetsTextureSize.x;\n\t\tivec3 morphUV = ivec3( x, y, morphTargetIndex );\n\t\treturn texelFetch( morphTargetsTexture, morphUV, 0 );\n\t}\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n\ttransformed *= morphTargetBaseInfluence;\n\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n\t\tif ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ];\n\t}\n#endif",normal_fragment_begin:"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\n#ifdef FLAT_SHADED\n\tvec3 fdx = dFdx( vViewPosition );\n\tvec3 fdy = dFdy( vViewPosition );\n\tvec3 normal = normalize( cross( fdx, fdy ) );\n#else\n\tvec3 normal = normalize( vNormal );\n\t#ifdef DOUBLE_SIDED\n\t\tnormal *= faceDirection;\n\t#endif\n#endif\n#if defined( USE_NORMALMAP_TANGENTSPACE ) || defined( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY )\n\t#ifdef USE_TANGENT\n\t\tmat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n\t#else\n\t\tmat3 tbn = getTangentFrame( - vViewPosition, normal,\n\t\t#if defined( USE_NORMALMAP )\n\t\t\tvNormalMapUv\n\t\t#elif defined( USE_CLEARCOAT_NORMALMAP )\n\t\t\tvClearcoatNormalMapUv\n\t\t#else\n\t\t\tvUv\n\t\t#endif\n\t\t);\n\t#endif\n\t#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n\t\ttbn[0] *= faceDirection;\n\t\ttbn[1] *= faceDirection;\n\t#endif\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\t#ifdef USE_TANGENT\n\t\tmat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n\t#else\n\t\tmat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv );\n\t#endif\n\t#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n\t\ttbn2[0] *= faceDirection;\n\t\ttbn2[1] *= faceDirection;\n\t#endif\n#endif\nvec3 nonPerturbedNormal = normal;",normal_fragment_maps:"#ifdef USE_NORMALMAP_OBJECTSPACE\n\tnormal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n\t#ifdef FLIP_SIDED\n\t\tnormal = - normal;\n\t#endif\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * faceDirection;\n\t#endif\n\tnormal = normalize( normalMatrix * normal );\n#elif defined( USE_NORMALMAP_TANGENTSPACE )\n\tvec3 mapN = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n\tmapN.xy *= normalScale;\n\tnormal = normalize( tbn * mapN );\n#elif defined( USE_BUMPMAP )\n\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\n#endif",normal_pars_fragment:"#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif",normal_pars_vertex:"#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif",normal_vertex:"#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n\tuniform sampler2D normalMap;\n\tuniform vec2 normalScale;\n#endif\n#ifdef USE_NORMALMAP_OBJECTSPACE\n\tuniform mat3 normalMatrix;\n#endif\n#if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) )\n\tmat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) {\n\t\tvec3 q0 = dFdx( eye_pos.xyz );\n\t\tvec3 q1 = dFdy( eye_pos.xyz );\n\t\tvec2 st0 = dFdx( uv.st );\n\t\tvec2 st1 = dFdy( uv.st );\n\t\tvec3 N = surf_norm;\n\t\tvec3 q1perp = cross( q1, N );\n\t\tvec3 q0perp = cross( N, q0 );\n\t\tvec3 T = q1perp * st0.x + q0perp * st1.x;\n\t\tvec3 B = q1perp * st0.y + q0perp * st1.y;\n\t\tfloat det = max( dot( T, T ), dot( B, B ) );\n\t\tfloat scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det );\n\t\treturn mat3( T * scale, B * scale, N );\n\t}\n#endif",clearcoat_normal_fragment_begin:"#ifdef USE_CLEARCOAT\n\tvec3 clearcoatNormal = nonPerturbedNormal;\n#endif",clearcoat_normal_fragment_maps:"#ifdef USE_CLEARCOAT_NORMALMAP\n\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0;\n\tclearcoatMapN.xy *= clearcoatNormalScale;\n\tclearcoatNormal = normalize( tbn2 * clearcoatMapN );\n#endif",clearcoat_pars_fragment:"#ifdef USE_CLEARCOATMAP\n\tuniform sampler2D clearcoatMap;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform sampler2D clearcoatNormalMap;\n\tuniform vec2 clearcoatNormalScale;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform sampler2D clearcoatRoughnessMap;\n#endif",iridescence_pars_fragment:"#ifdef USE_IRIDESCENCEMAP\n\tuniform sampler2D iridescenceMap;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tuniform sampler2D iridescenceThicknessMap;\n#endif",opaque_fragment:"#ifdef OPAQUE\ndiffuseColor.a = 1.0;\n#endif\n#ifdef USE_TRANSMISSION\ndiffuseColor.a *= material.transmissionAlpha;\n#endif\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n\treturn normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n\treturn 2.0 * rgb.xyz - 1.0;\n}\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;const float ShiftRight8 = 1. / 256.;\nconst float Inv255 = 1. / 255.;\nconst vec4 PackFactors = vec4( 1.0, 256.0, 256.0 * 256.0, 256.0 * 256.0 * 256.0 );\nconst vec2 UnpackFactors2 = vec2( UnpackDownscale, 1.0 / PackFactors.g );\nconst vec3 UnpackFactors3 = vec3( UnpackDownscale / PackFactors.rg, 1.0 / PackFactors.b );\nconst vec4 UnpackFactors4 = vec4( UnpackDownscale / PackFactors.rgb, 1.0 / PackFactors.a );\nvec4 packDepthToRGBA( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec4( 0., 0., 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec4( 1., 1., 1., 1. );\n\tfloat vuf;\n\tfloat af = modf( v * PackFactors.a, vuf );\n\tfloat bf = modf( vuf * ShiftRight8, vuf );\n\tfloat gf = modf( vuf * ShiftRight8, vuf );\n\treturn vec4( vuf * Inv255, gf * PackUpscale, bf * PackUpscale, af );\n}\nvec3 packDepthToRGB( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec3( 0., 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec3( 1., 1., 1. );\n\tfloat vuf;\n\tfloat bf = modf( v * PackFactors.b, vuf );\n\tfloat gf = modf( vuf * ShiftRight8, vuf );\n\treturn vec3( vuf * Inv255, gf * PackUpscale, bf );\n}\nvec2 packDepthToRG( const in float v ) {\n\tif( v <= 0.0 )\n\t\treturn vec2( 0., 0. );\n\tif( v >= 1.0 )\n\t\treturn vec2( 1., 1. );\n\tfloat vuf;\n\tfloat gf = modf( v * 256., vuf );\n\treturn vec2( vuf * Inv255, gf );\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n\treturn dot( v, UnpackFactors4 );\n}\nfloat unpackRGBToDepth( const in vec3 v ) {\n\treturn dot( v, UnpackFactors3 );\n}\nfloat unpackRGToDepth( const in vec2 v ) {\n\treturn v.r * UnpackFactors2.r + v.g * UnpackFactors2.g;\n}\nvec4 pack2HalfToRGBA( const in vec2 v ) {\n\tvec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) );\n\treturn vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w );\n}\nvec2 unpackRGBATo2Half( const in vec4 v ) {\n\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float depth, const in float near, const in float far ) {\n\treturn depth * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) {\n\treturn ( near * far ) / ( ( far - near ) * depth - far );\n}",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n\tgl_FragColor.rgb *= gl_FragColor.a;\n#endif",project_vertex:"vec4 mvPosition = vec4( transformed, 1.0 );\n#ifdef USE_BATCHING\n\tmvPosition = batchingMatrix * mvPosition;\n#endif\n#ifdef USE_INSTANCING\n\tmvPosition = instanceMatrix * mvPosition;\n#endif\nmvPosition = modelViewMatrix * mvPosition;\ngl_Position = projectionMatrix * mvPosition;",dithering_fragment:"#ifdef DITHERING\n\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif",dithering_pars_fragment:"#ifdef DITHERING\n\tvec3 dithering( vec3 color ) {\n\t\tfloat grid_position = rand( gl_FragCoord.xy );\n\t\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n\t\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n\t\treturn color + dither_shift_RGB;\n\t}\n#endif",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n\tvec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv );\n\troughnessFactor *= texelRoughness.g;\n#endif",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n\tuniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#if NUM_SPOT_LIGHT_COORDS > 0\n\tvarying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#if NUM_SPOT_LIGHT_MAPS > 0\n\tuniform sampler2D spotLightMap[ NUM_SPOT_LIGHT_MAPS ];\n#endif\n#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n\t\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n\t}\n\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\n\t\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\n\t}\n\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\n\t\tfloat occlusion = 1.0;\n\t\tvec2 distribution = texture2DDistribution( shadow, uv );\n\t\tfloat hard_shadow = step( compare , distribution.x );\n\t\tif (hard_shadow != 1.0 ) {\n\t\t\tfloat distance = compare - distribution.x ;\n\t\t\tfloat variance = max( 0.00000, distribution.y * distribution.y );\n\t\t\tfloat softness_probability = variance / (variance + distance * distance );\t\t\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 );\t\t\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\n\t\t}\n\t\treturn occlusion;\n\t}\n\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\tfloat shadow = 1.0;\n\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\tshadowCoord.z += shadowBias;\n\t\tbool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;\n\t\tbool frustumTest = inFrustum && shadowCoord.z <= 1.0;\n\t\tif ( frustumTest ) {\n\t\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx0 = - texelSize.x * shadowRadius;\n\t\t\tfloat dy0 = - texelSize.y * shadowRadius;\n\t\t\tfloat dx1 = + texelSize.x * shadowRadius;\n\t\t\tfloat dy1 = + texelSize.y * shadowRadius;\n\t\t\tfloat dx2 = dx0 / 2.0;\n\t\t\tfloat dy2 = dy0 / 2.0;\n\t\t\tfloat dx3 = dx1 / 2.0;\n\t\t\tfloat dy3 = dy1 / 2.0;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n\t\t\t) * ( 1.0 / 17.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx = texelSize.x;\n\t\t\tfloat dy = texelSize.y;\n\t\t\tvec2 uv = shadowCoord.xy;\n\t\t\tvec2 f = fract( uv * shadowMapSize + 0.5 );\n\t\t\tuv -= f * texelSize;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, uv, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ),\n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ),\n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ),\n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t\t f.x ),\n\t\t\t\t\t mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t\t f.x ),\n\t\t\t\t\t f.y )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_VSM )\n\t\t\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#else\n\t\t\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#endif\n\t\t}\n\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t}\n\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\n\t\tvec3 absV = abs( v );\n\t\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n\t\tabsV *= scaleToCube;\n\t\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n\t\tvec2 planar = v.xy;\n\t\tfloat almostATexel = 1.5 * texelSizeY;\n\t\tfloat almostOne = 1.0 - almostATexel;\n\t\tif ( absV.z >= almostOne ) {\n\t\t\tif ( v.z > 0.0 )\n\t\t\t\tplanar.x = 4.0 - v.x;\n\t\t} else if ( absV.x >= almostOne ) {\n\t\t\tfloat signX = sign( v.x );\n\t\t\tplanar.x = v.z * signX + 2.0 * signX;\n\t\t} else if ( absV.y >= almostOne ) {\n\t\t\tfloat signY = sign( v.y );\n\t\t\tplanar.x = v.x + 2.0 * signY + 2.0;\n\t\t\tplanar.y = v.z * signY - 2.0;\n\t\t}\n\t\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n\t}\n\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n\t\tfloat shadow = 1.0;\n\t\tvec3 lightToPosition = shadowCoord.xyz;\n\t\t\n\t\tfloat lightToPositionLength = length( lightToPosition );\n\t\tif ( lightToPositionLength - shadowCameraFar <= 0.0 && lightToPositionLength - shadowCameraNear >= 0.0 ) {\n\t\t\tfloat dp = ( lightToPositionLength - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\t\t\tdp += shadowBias;\n\t\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n\t\t\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\n\t\t\t\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n\t\t\t\tshadow = (\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n\t\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n\t\t\t\t) * ( 1.0 / 9.0 );\n\t\t\t#else\n\t\t\t\tshadow = texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n\t\t\t#endif\n\t\t}\n\t\treturn mix( 1.0, shadow, shadowIntensity );\n\t}\n#endif",shadowmap_pars_vertex:"#if NUM_SPOT_LIGHT_COORDS > 0\n\tuniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ];\n\tvarying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowIntensity;\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n#endif",shadowmap_vertex:"#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 )\n\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\tvec4 shadowWorldPosition;\n#endif\n#if defined( USE_SHADOWMAP )\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\n\t\t\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\n\t\t\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if NUM_SPOT_LIGHT_COORDS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_COORDS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition;\n\t\t#if ( defined( USE_SHADOWMAP ) && UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\t\tshadowWorldPosition.xyz += shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias;\n\t\t#endif\n\t\tvSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n#endif",shadowmask_pars_fragment:"float getShadowMask() {\n\tfloat shadow = 1.0;\n\t#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\tdirectionalLight = directionalLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowIntensity, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n\t\tspotLight = spotLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowIntensity, spotLight.shadowBias, spotLight.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\tpointLight = pointLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowIntensity, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#endif\n\treturn shadow;\n}",skinbase_vertex:"#ifdef USE_SKINNING\n\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\n\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\n\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\n\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n\tuniform mat4 bindMatrix;\n\tuniform mat4 bindMatrixInverse;\n\tuniform highp sampler2D boneTexture;\n\tmat4 getBoneMatrix( const in float i ) {\n\t\tint size = textureSize( boneTexture, 0 ).x;\n\t\tint j = int( i ) * 4;\n\t\tint x = j % size;\n\t\tint y = j / size;\n\t\tvec4 v1 = texelFetch( boneTexture, ivec2( x, y ), 0 );\n\t\tvec4 v2 = texelFetch( boneTexture, ivec2( x + 1, y ), 0 );\n\t\tvec4 v3 = texelFetch( boneTexture, ivec2( x + 2, y ), 0 );\n\t\tvec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 );\n\t\treturn mat4( v1, v2, v3, v4 );\n\t}\n#endif",skinning_vertex:"#ifdef USE_SKINNING\n\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n\tvec4 skinned = vec4( 0.0 );\n\tskinned += boneMatX * skinVertex * skinWeight.x;\n\tskinned += boneMatY * skinVertex * skinWeight.y;\n\tskinned += boneMatZ * skinVertex * skinWeight.z;\n\tskinned += boneMatW * skinVertex * skinWeight.w;\n\ttransformed = ( bindMatrixInverse * skinned ).xyz;\n#endif",skinnormal_vertex:"#ifdef USE_SKINNING\n\tmat4 skinMatrix = mat4( 0.0 );\n\tskinMatrix += skinWeight.x * boneMatX;\n\tskinMatrix += skinWeight.y * boneMatY;\n\tskinMatrix += skinWeight.z * boneMatZ;\n\tskinMatrix += skinWeight.w * boneMatW;\n\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\n\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n\t#ifdef USE_TANGENT\n\t\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#endif\n#endif",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n\tvec4 texelSpecular = texture2D( specularMap, vSpecularMapUv );\n\tspecularStrength = texelSpecular.r;\n#else\n\tspecularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n\tuniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif",tonemapping_pars_fragment:"#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nvec3 LinearToneMapping( vec3 color ) {\n\treturn saturate( toneMappingExposure * color );\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( color / ( vec3( 1.0 ) + color ) );\n}\nvec3 CineonToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\tcolor = max( vec3( 0.0 ), color - 0.004 );\n\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 RRTAndODTFit( vec3 v ) {\n\tvec3 a = v * ( v + 0.0245786 ) - 0.000090537;\n\tvec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\n\treturn a / b;\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n\tconst mat3 ACESInputMat = mat3(\n\t\tvec3( 0.59719, 0.07600, 0.02840 ),\t\tvec3( 0.35458, 0.90834, 0.13383 ),\n\t\tvec3( 0.04823, 0.01566, 0.83777 )\n\t);\n\tconst mat3 ACESOutputMat = mat3(\n\t\tvec3( 1.60475, -0.10208, -0.00327 ),\t\tvec3( -0.53108, 1.10813, -0.07276 ),\n\t\tvec3( -0.07367, -0.00605, 1.07602 )\n\t);\n\tcolor *= toneMappingExposure / 0.6;\n\tcolor = ACESInputMat * color;\n\tcolor = RRTAndODTFit( color );\n\tcolor = ACESOutputMat * color;\n\treturn saturate( color );\n}\nconst mat3 LINEAR_REC2020_TO_LINEAR_SRGB = mat3(\n\tvec3( 1.6605, - 0.1246, - 0.0182 ),\n\tvec3( - 0.5876, 1.1329, - 0.1006 ),\n\tvec3( - 0.0728, - 0.0083, 1.1187 )\n);\nconst mat3 LINEAR_SRGB_TO_LINEAR_REC2020 = mat3(\n\tvec3( 0.6274, 0.0691, 0.0164 ),\n\tvec3( 0.3293, 0.9195, 0.0880 ),\n\tvec3( 0.0433, 0.0113, 0.8956 )\n);\nvec3 agxDefaultContrastApprox( vec3 x ) {\n\tvec3 x2 = x * x;\n\tvec3 x4 = x2 * x2;\n\treturn + 15.5 * x4 * x2\n\t\t- 40.14 * x4 * x\n\t\t+ 31.96 * x4\n\t\t- 6.868 * x2 * x\n\t\t+ 0.4298 * x2\n\t\t+ 0.1191 * x\n\t\t- 0.00232;\n}\nvec3 AgXToneMapping( vec3 color ) {\n\tconst mat3 AgXInsetMatrix = mat3(\n\t\tvec3( 0.856627153315983, 0.137318972929847, 0.11189821299995 ),\n\t\tvec3( 0.0951212405381588, 0.761241990602591, 0.0767994186031903 ),\n\t\tvec3( 0.0482516061458583, 0.101439036467562, 0.811302368396859 )\n\t);\n\tconst mat3 AgXOutsetMatrix = mat3(\n\t\tvec3( 1.1271005818144368, - 0.1413297634984383, - 0.14132976349843826 ),\n\t\tvec3( - 0.11060664309660323, 1.157823702216272, - 0.11060664309660294 ),\n\t\tvec3( - 0.016493938717834573, - 0.016493938717834257, 1.2519364065950405 )\n\t);\n\tconst float AgxMinEv = - 12.47393;\tconst float AgxMaxEv = 4.026069;\n\tcolor *= toneMappingExposure;\n\tcolor = LINEAR_SRGB_TO_LINEAR_REC2020 * color;\n\tcolor = AgXInsetMatrix * color;\n\tcolor = max( color, 1e-10 );\tcolor = log2( color );\n\tcolor = ( color - AgxMinEv ) / ( AgxMaxEv - AgxMinEv );\n\tcolor = clamp( color, 0.0, 1.0 );\n\tcolor = agxDefaultContrastApprox( color );\n\tcolor = AgXOutsetMatrix * color;\n\tcolor = pow( max( vec3( 0.0 ), color ), vec3( 2.2 ) );\n\tcolor = LINEAR_REC2020_TO_LINEAR_SRGB * color;\n\tcolor = clamp( color, 0.0, 1.0 );\n\treturn color;\n}\nvec3 NeutralToneMapping( vec3 color ) {\n\tconst float StartCompression = 0.8 - 0.04;\n\tconst float Desaturation = 0.15;\n\tcolor *= toneMappingExposure;\n\tfloat x = min( color.r, min( color.g, color.b ) );\n\tfloat offset = x < 0.08 ? x - 6.25 * x * x : 0.04;\n\tcolor -= offset;\n\tfloat peak = max( color.r, max( color.g, color.b ) );\n\tif ( peak < StartCompression ) return color;\n\tfloat d = 1. - StartCompression;\n\tfloat newPeak = 1. - d * d / ( peak + d - StartCompression );\n\tcolor *= newPeak / peak;\n\tfloat g = 1. - 1. / ( Desaturation * ( peak - newPeak ) + 1. );\n\treturn mix( color, vec3( newPeak ), g );\n}\nvec3 CustomToneMapping( vec3 color ) { return color; }",transmission_fragment:"#ifdef USE_TRANSMISSION\n\tmaterial.transmission = transmission;\n\tmaterial.transmissionAlpha = 1.0;\n\tmaterial.thickness = thickness;\n\tmaterial.attenuationDistance = attenuationDistance;\n\tmaterial.attenuationColor = attenuationColor;\n\t#ifdef USE_TRANSMISSIONMAP\n\t\tmaterial.transmission *= texture2D( transmissionMap, vTransmissionMapUv ).r;\n\t#endif\n\t#ifdef USE_THICKNESSMAP\n\t\tmaterial.thickness *= texture2D( thicknessMap, vThicknessMapUv ).g;\n\t#endif\n\tvec3 pos = vWorldPosition;\n\tvec3 v = normalize( cameraPosition - pos );\n\tvec3 n = inverseTransformDirection( normal, viewMatrix );\n\tvec4 transmitted = getIBLVolumeRefraction(\n\t\tn, v, material.roughness, material.diffuseColor, material.specularColor, material.specularF90,\n\t\tpos, modelMatrix, viewMatrix, projectionMatrix, material.dispersion, material.ior, material.thickness,\n\t\tmaterial.attenuationColor, material.attenuationDistance );\n\tmaterial.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission );\n\ttotalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission );\n#endif",transmission_pars_fragment:"#ifdef USE_TRANSMISSION\n\tuniform float transmission;\n\tuniform float thickness;\n\tuniform float attenuationDistance;\n\tuniform vec3 attenuationColor;\n\t#ifdef USE_TRANSMISSIONMAP\n\t\tuniform sampler2D transmissionMap;\n\t#endif\n\t#ifdef USE_THICKNESSMAP\n\t\tuniform sampler2D thicknessMap;\n\t#endif\n\tuniform vec2 transmissionSamplerSize;\n\tuniform sampler2D transmissionSamplerMap;\n\tuniform mat4 modelMatrix;\n\tuniform mat4 projectionMatrix;\n\tvarying vec3 vWorldPosition;\n\tfloat w0( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a * ( a * ( - a + 3.0 ) - 3.0 ) + 1.0 );\n\t}\n\tfloat w1( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a * a * ( 3.0 * a - 6.0 ) + 4.0 );\n\t}\n\tfloat w2( float a ){\n\t\treturn ( 1.0 / 6.0 ) * ( a * ( a * ( - 3.0 * a + 3.0 ) + 3.0 ) + 1.0 );\n\t}\n\tfloat w3( float a ) {\n\t\treturn ( 1.0 / 6.0 ) * ( a * a * a );\n\t}\n\tfloat g0( float a ) {\n\t\treturn w0( a ) + w1( a );\n\t}\n\tfloat g1( float a ) {\n\t\treturn w2( a ) + w3( a );\n\t}\n\tfloat h0( float a ) {\n\t\treturn - 1.0 + w1( a ) / ( w0( a ) + w1( a ) );\n\t}\n\tfloat h1( float a ) {\n\t\treturn 1.0 + w3( a ) / ( w2( a ) + w3( a ) );\n\t}\n\tvec4 bicubic( sampler2D tex, vec2 uv, vec4 texelSize, float lod ) {\n\t\tuv = uv * texelSize.zw + 0.5;\n\t\tvec2 iuv = floor( uv );\n\t\tvec2 fuv = fract( uv );\n\t\tfloat g0x = g0( fuv.x );\n\t\tfloat g1x = g1( fuv.x );\n\t\tfloat h0x = h0( fuv.x );\n\t\tfloat h1x = h1( fuv.x );\n\t\tfloat h0y = h0( fuv.y );\n\t\tfloat h1y = h1( fuv.y );\n\t\tvec2 p0 = ( vec2( iuv.x + h0x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p1 = ( vec2( iuv.x + h1x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p2 = ( vec2( iuv.x + h0x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n\t\tvec2 p3 = ( vec2( iuv.x + h1x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n\t\treturn g0( fuv.y ) * ( g0x * textureLod( tex, p0, lod ) + g1x * textureLod( tex, p1, lod ) ) +\n\t\t\tg1( fuv.y ) * ( g0x * textureLod( tex, p2, lod ) + g1x * textureLod( tex, p3, lod ) );\n\t}\n\tvec4 textureBicubic( sampler2D sampler, vec2 uv, float lod ) {\n\t\tvec2 fLodSize = vec2( textureSize( sampler, int( lod ) ) );\n\t\tvec2 cLodSize = vec2( textureSize( sampler, int( lod + 1.0 ) ) );\n\t\tvec2 fLodSizeInv = 1.0 / fLodSize;\n\t\tvec2 cLodSizeInv = 1.0 / cLodSize;\n\t\tvec4 fSample = bicubic( sampler, uv, vec4( fLodSizeInv, fLodSize ), floor( lod ) );\n\t\tvec4 cSample = bicubic( sampler, uv, vec4( cLodSizeInv, cLodSize ), ceil( lod ) );\n\t\treturn mix( fSample, cSample, fract( lod ) );\n\t}\n\tvec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) {\n\t\tvec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\n\t\tvec3 modelScale;\n\t\tmodelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );\n\t\tmodelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );\n\t\tmodelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );\n\t\treturn normalize( refractionVector ) * thickness * modelScale;\n\t}\n\tfloat applyIorToRoughness( const in float roughness, const in float ior ) {\n\t\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\n\t}\n\tvec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) {\n\t\tfloat lod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\n\t\treturn textureBicubic( transmissionSamplerMap, fragCoord.xy, lod );\n\t}\n\tvec3 volumeAttenuation( const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) {\n\t\tif ( isinf( attenuationDistance ) ) {\n\t\t\treturn vec3( 1.0 );\n\t\t} else {\n\t\t\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\n\t\t\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance );\t\t\treturn transmittance;\n\t\t}\n\t}\n\tvec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor,\n\t\tconst in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix,\n\t\tconst in mat4 viewMatrix, const in mat4 projMatrix, const in float dispersion, const in float ior, const in float thickness,\n\t\tconst in vec3 attenuationColor, const in float attenuationDistance ) {\n\t\tvec4 transmittedLight;\n\t\tvec3 transmittance;\n\t\t#ifdef USE_DISPERSION\n\t\t\tfloat halfSpread = ( ior - 1.0 ) * 0.025 * dispersion;\n\t\t\tvec3 iors = vec3( ior - halfSpread, ior, ior + halfSpread );\n\t\t\tfor ( int i = 0; i < 3; i ++ ) {\n\t\t\t\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, iors[ i ], modelMatrix );\n\t\t\t\tvec3 refractedRayExit = position + transmissionRay;\n\t\t\n\t\t\t\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n\t\t\t\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\n\t\t\t\trefractionCoords += 1.0;\n\t\t\t\trefractionCoords /= 2.0;\n\t\t\n\t\t\t\tvec4 transmissionSample = getTransmissionSample( refractionCoords, roughness, iors[ i ] );\n\t\t\t\ttransmittedLight[ i ] = transmissionSample[ i ];\n\t\t\t\ttransmittedLight.a += transmissionSample.a;\n\t\t\t\ttransmittance[ i ] = diffuseColor[ i ] * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance )[ i ];\n\t\t\t}\n\t\t\ttransmittedLight.a /= 3.0;\n\t\t\n\t\t#else\n\t\t\n\t\t\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\n\t\t\tvec3 refractedRayExit = position + transmissionRay;\n\t\t\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n\t\t\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\n\t\t\trefractionCoords += 1.0;\n\t\t\trefractionCoords /= 2.0;\n\t\t\ttransmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\n\t\t\ttransmittance = diffuseColor * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance );\n\t\t\n\t\t#endif\n\t\tvec3 attenuatedColor = transmittance * transmittedLight.rgb;\n\t\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\n\t\tfloat transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0;\n\t\treturn vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor );\n\t}\n#endif",uv_pars_fragment:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvarying vec2 vUv;\n#endif\n#ifdef USE_MAP\n\tvarying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n\tvarying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n\tvarying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n\tvarying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n\tvarying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n\tvarying vec2 vNormalMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tvarying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n\tvarying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tvarying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tvarying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tvarying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tvarying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tvarying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tvarying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tvarying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tvarying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tvarying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n\tvarying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tvarying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tvarying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tuniform mat3 transmissionMapTransform;\n\tvarying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n\tuniform mat3 thicknessMapTransform;\n\tvarying vec2 vThicknessMapUv;\n#endif",uv_pars_vertex:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvarying vec2 vUv;\n#endif\n#ifdef USE_MAP\n\tuniform mat3 mapTransform;\n\tvarying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform mat3 alphaMapTransform;\n\tvarying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n\tuniform mat3 lightMapTransform;\n\tvarying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n\tuniform mat3 aoMapTransform;\n\tvarying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n\tuniform mat3 bumpMapTransform;\n\tvarying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n\tuniform mat3 normalMapTransform;\n\tvarying vec2 vNormalMapUv;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n\tuniform mat3 displacementMapTransform;\n\tvarying vec2 vDisplacementMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tuniform mat3 emissiveMapTransform;\n\tvarying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n\tuniform mat3 metalnessMapTransform;\n\tvarying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tuniform mat3 roughnessMapTransform;\n\tvarying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tuniform mat3 anisotropyMapTransform;\n\tvarying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tuniform mat3 clearcoatMapTransform;\n\tvarying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform mat3 clearcoatNormalMapTransform;\n\tvarying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform mat3 clearcoatRoughnessMapTransform;\n\tvarying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tuniform mat3 sheenColorMapTransform;\n\tvarying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tuniform mat3 sheenRoughnessMapTransform;\n\tvarying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tuniform mat3 iridescenceMapTransform;\n\tvarying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tuniform mat3 iridescenceThicknessMapTransform;\n\tvarying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n\tuniform mat3 specularMapTransform;\n\tvarying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tuniform mat3 specularColorMapTransform;\n\tvarying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tuniform mat3 specularIntensityMapTransform;\n\tvarying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tuniform mat3 transmissionMapTransform;\n\tvarying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n\tuniform mat3 thicknessMapTransform;\n\tvarying vec2 vThicknessMapUv;\n#endif",uv_vertex:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n\tvUv = vec3( uv, 1 ).xy;\n#endif\n#ifdef USE_MAP\n\tvMapUv = ( mapTransform * vec3( MAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ALPHAMAP\n\tvAlphaMapUv = ( alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_LIGHTMAP\n\tvLightMapUv = ( lightMapTransform * vec3( LIGHTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_AOMAP\n\tvAoMapUv = ( aoMapTransform * vec3( AOMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_BUMPMAP\n\tvBumpMapUv = ( bumpMapTransform * vec3( BUMPMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_NORMALMAP\n\tvNormalMapUv = ( normalMapTransform * vec3( NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n\tvDisplacementMapUv = ( displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_EMISSIVEMAP\n\tvEmissiveMapUv = ( emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_METALNESSMAP\n\tvMetalnessMapUv = ( metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ROUGHNESSMAP\n\tvRoughnessMapUv = ( roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ANISOTROPYMAP\n\tvAnisotropyMapUv = ( anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOATMAP\n\tvClearcoatMapUv = ( clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tvClearcoatNormalMapUv = ( clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tvClearcoatRoughnessMapUv = ( clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n\tvIridescenceMapUv = ( iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tvIridescenceThicknessMapUv = ( iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n\tvSheenColorMapUv = ( sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n\tvSheenRoughnessMapUv = ( sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULARMAP\n\tvSpecularMapUv = ( specularMapTransform * vec3( SPECULARMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n\tvSpecularColorMapUv = ( specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n\tvSpecularIntensityMapUv = ( specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n\tvTransmissionMapUv = ( transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_THICKNESSMAP\n\tvThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0\n\tvec4 worldPosition = vec4( transformed, 1.0 );\n\t#ifdef USE_BATCHING\n\t\tworldPosition = batchingMatrix * worldPosition;\n\t#endif\n\t#ifdef USE_INSTANCING\n\t\tworldPosition = instanceMatrix * worldPosition;\n\t#endif\n\tworldPosition = modelMatrix * worldPosition;\n#endif",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\tgl_Position = vec4( position.xy, 1.0, 1.0 );\n}",background_frag:"uniform sampler2D t2D;\nuniform float backgroundIntensity;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texColor = texture2D( t2D, vUv );\n\t#ifdef DECODE_VIDEO_TEXTURE\n\t\ttexColor = vec4( mix( pow( texColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), texColor.rgb * 0.0773993808, vec3( lessThanEqual( texColor.rgb, vec3( 0.04045 ) ) ) ), texColor.w );\n\t#endif\n\ttexColor.rgb *= backgroundIntensity;\n\tgl_FragColor = texColor;\n\t#include \n\t#include \n}",backgroundCube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include \n\t#include \n\tgl_Position.z = gl_Position.w;\n}",backgroundCube_frag:"#ifdef ENVMAP_TYPE_CUBE\n\tuniform samplerCube envMap;\n#elif defined( ENVMAP_TYPE_CUBE_UV )\n\tuniform sampler2D envMap;\n#endif\nuniform float flipEnvMap;\nuniform float backgroundBlurriness;\nuniform float backgroundIntensity;\nuniform mat3 backgroundRotation;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 texColor = textureCube( envMap, backgroundRotation * vec3( flipEnvMap * vWorldDirection.x, vWorldDirection.yz ) );\n\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\tvec4 texColor = textureCubeUV( envMap, backgroundRotation * vWorldDirection, backgroundBlurriness );\n\t#else\n\t\tvec4 texColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t#endif\n\ttexColor.rgb *= backgroundIntensity;\n\tgl_FragColor = texColor;\n\t#include \n\t#include \n}",cube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include \n\t#include \n\tgl_Position.z = gl_Position.w;\n}",cube_frag:"uniform samplerCube tCube;\nuniform float tFlip;\nuniform float opacity;\nvarying vec3 vWorldDirection;\nvoid main() {\n\tvec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );\n\tgl_FragColor = texColor;\n\tgl_FragColor.a *= opacity;\n\t#include \n\t#include \n}",depth_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include \n\t\t#include \n\t\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvHighPrecisionZW = gl_Position.zw;\n}",depth_frag:"#if DEPTH_PACKING == 3200\n\tuniform float opacity;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include \n\t#if DEPTH_PACKING == 3200\n\t\tdiffuseColor.a = opacity;\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\t#if DEPTH_PACKING == 3200\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\n\t#elif DEPTH_PACKING == 3201\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\t#elif DEPTH_PACKING == 3202\n\t\tgl_FragColor = vec4( packDepthToRGB( fragCoordZ ), 1.0 );\n\t#elif DEPTH_PACKING == 3203\n\t\tgl_FragColor = vec4( packDepthToRG( fragCoordZ ), 0.0, 1.0 );\n\t#endif\n}",distanceRGBA_vert:"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include \n\t\t#include \n\t\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvWorldPosition = worldPosition.xyz;\n}",distanceRGBA_frag:"#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main () {\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist );\n\tgl_FragColor = packDepthToRGBA( dist );\n}",equirect_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include \n\t#include \n}",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvec3 direction = normalize( vWorldDirection );\n\tvec2 sampleUV = equirectUv( direction );\n\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\t#include \n\t#include \n}",linedashed_vert:"uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvLineDistance = scale * lineDistance;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",linedashed_frag:"uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\n\t\tdiscard;\n\t}\n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include \n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshbasic_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\n\t\t#include \n\t\t#include \n\t\t#include \n\t\t#include \n\t\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n\t\treflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI;\n\t#else\n\t\treflectedLight.indirectDiffuse += vec3( 1.0 );\n\t#endif\n\t#include \n\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\n\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshlambert_vert:"#define LAMBERT\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n\t#include \n}",meshlambert_frag:"#define LAMBERT\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n}",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 viewDir = normalize( vViewPosition );\n\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n\tvec3 y = cross( viewDir, x );\n\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n\t#ifdef USE_MATCAP\n\t\tvec4 matcapColor = texture2D( matcap, uv );\n\t#else\n\t\tvec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 );\n\t#endif\n\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshnormal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvarying vec3 vViewPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvViewPosition = - mvPosition.xyz;\n#endif\n}",meshnormal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n\tvarying vec3 vViewPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( 0.0, 0.0, 0.0, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\tgl_FragColor = vec4( packNormalToRGB( normal ), diffuseColor.a );\n\t#ifdef OPAQUE\n\t\tgl_FragColor.a = 1.0;\n\t#endif\n}",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n\t#include \n}",meshphong_frag:"#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshphysical_vert:"#define STANDARD\nvarying vec3 vViewPosition;\n#ifdef USE_TRANSMISSION\n\tvarying vec3 vWorldPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n#ifdef USE_TRANSMISSION\n\tvWorldPosition = worldPosition.xyz;\n#endif\n}",meshphysical_frag:"#define STANDARD\n#ifdef PHYSICAL\n\t#define IOR\n\t#define USE_SPECULAR\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef IOR\n\tuniform float ior;\n#endif\n#ifdef USE_SPECULAR\n\tuniform float specularIntensity;\n\tuniform vec3 specularColor;\n\t#ifdef USE_SPECULAR_COLORMAP\n\t\tuniform sampler2D specularColorMap;\n\t#endif\n\t#ifdef USE_SPECULAR_INTENSITYMAP\n\t\tuniform sampler2D specularIntensityMap;\n\t#endif\n#endif\n#ifdef USE_CLEARCOAT\n\tuniform float clearcoat;\n\tuniform float clearcoatRoughness;\n#endif\n#ifdef USE_DISPERSION\n\tuniform float dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n\tuniform float iridescence;\n\tuniform float iridescenceIOR;\n\tuniform float iridescenceThicknessMinimum;\n\tuniform float iridescenceThicknessMaximum;\n#endif\n#ifdef USE_SHEEN\n\tuniform vec3 sheenColor;\n\tuniform float sheenRoughness;\n\t#ifdef USE_SHEEN_COLORMAP\n\t\tuniform sampler2D sheenColorMap;\n\t#endif\n\t#ifdef USE_SHEEN_ROUGHNESSMAP\n\t\tuniform sampler2D sheenRoughnessMap;\n\t#endif\n#endif\n#ifdef USE_ANISOTROPY\n\tuniform vec2 anisotropyVector;\n\t#ifdef USE_ANISOTROPYMAP\n\t\tuniform sampler2D anisotropyMap;\n\t#endif\n#endif\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\n\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\n\t#include \n\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\n\t#ifdef USE_SHEEN\n\t\tfloat sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );\n\t\toutgoingLight = outgoingLight * sheenEnergyComp + sheenSpecularDirect + sheenSpecularIndirect;\n\t#endif\n\t#ifdef USE_CLEARCOAT\n\t\tfloat dotNVcc = saturate( dot( geometryClearcoatNormal, geometryViewDir ) );\n\t\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\n\t\toutgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + ( clearcoatSpecularDirect + clearcoatSpecularIndirect ) * material.clearcoat;\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshtoon_vert:"#define TOON\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n}",meshtoon_frag:"#define TOON\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",points_vert:"uniform float size;\nuniform float scale;\n#include \n#include \n#include \n#include \n#include \n#include \n#ifdef USE_POINTS_UV\n\tvarying vec2 vUv;\n\tuniform mat3 uvTransform;\n#endif\nvoid main() {\n\t#ifdef USE_POINTS_UV\n\t\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tgl_PointSize = size;\n\t#ifdef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n}",points_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",shadow_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",shadow_frag:"uniform vec3 color;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n\t#include \n\t#include \n\t#include \n}",sprite_vert:"uniform float rotation;\nuniform vec2 center;\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\n\tvec2 scale;\n\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\n\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\n\t#ifndef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) scale *= - mvPosition.z;\n\t#endif\n\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n\tvec2 rotatedPosition;\n\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n\tmvPosition.xy += rotatedPosition;\n\tgl_Position = projectionMatrix * mvPosition;\n\t#include \n\t#include \n\t#include \n}",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\tvec3 outgoingLight = vec3( 0.0 );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\t#include \n\t#include \n\t#include \n\t#include \n}"},Ln={common:{diffuse:{value:new vn(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new zi},alphaMap:{value:null},alphaMapTransform:{value:new zi},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new zi}},envmap:{envMap:{value:null},envMapRotation:{value:new zi},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new zi}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new zi}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new zi},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new zi},normalScale:{value:new ft(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new zi},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new zi}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new zi}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new zi}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new vn(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new vn(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new zi},alphaTest:{value:0},uvTransform:{value:new zi}},sprite:{diffuse:{value:new vn(16777215)},opacity:{value:1},center:{value:new ft(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new zi},alphaMap:{value:null},alphaMapTransform:{value:new zi},alphaTest:{value:0}}},Hh={basic:{uniforms:Ml([Ln.common,Ln.specularmap,Ln.envmap,Ln.aomap,Ln.lightmap,Ln.fog]),vertexShader:_r.meshbasic_vert,fragmentShader:_r.meshbasic_frag},lambert:{uniforms:Ml([Ln.common,Ln.specularmap,Ln.envmap,Ln.aomap,Ln.lightmap,Ln.emissivemap,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.fog,Ln.lights,{emissive:{value:new vn(0)}}]),vertexShader:_r.meshlambert_vert,fragmentShader:_r.meshlambert_frag},phong:{uniforms:Ml([Ln.common,Ln.specularmap,Ln.envmap,Ln.aomap,Ln.lightmap,Ln.emissivemap,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.fog,Ln.lights,{emissive:{value:new vn(0)},specular:{value:new vn(1118481)},shininess:{value:30}}]),vertexShader:_r.meshphong_vert,fragmentShader:_r.meshphong_frag},standard:{uniforms:Ml([Ln.common,Ln.envmap,Ln.aomap,Ln.lightmap,Ln.emissivemap,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.roughnessmap,Ln.metalnessmap,Ln.fog,Ln.lights,{emissive:{value:new vn(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:_r.meshphysical_vert,fragmentShader:_r.meshphysical_frag},toon:{uniforms:Ml([Ln.common,Ln.aomap,Ln.lightmap,Ln.emissivemap,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.gradientmap,Ln.fog,Ln.lights,{emissive:{value:new vn(0)}}]),vertexShader:_r.meshtoon_vert,fragmentShader:_r.meshtoon_frag},matcap:{uniforms:Ml([Ln.common,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,Ln.fog,{matcap:{value:null}}]),vertexShader:_r.meshmatcap_vert,fragmentShader:_r.meshmatcap_frag},points:{uniforms:Ml([Ln.points,Ln.fog]),vertexShader:_r.points_vert,fragmentShader:_r.points_frag},dashed:{uniforms:Ml([Ln.common,Ln.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:_r.linedashed_vert,fragmentShader:_r.linedashed_frag},depth:{uniforms:Ml([Ln.common,Ln.displacementmap]),vertexShader:_r.depth_vert,fragmentShader:_r.depth_frag},normal:{uniforms:Ml([Ln.common,Ln.bumpmap,Ln.normalmap,Ln.displacementmap,{opacity:{value:1}}]),vertexShader:_r.meshnormal_vert,fragmentShader:_r.meshnormal_frag},sprite:{uniforms:Ml([Ln.sprite,Ln.fog]),vertexShader:_r.sprite_vert,fragmentShader:_r.sprite_frag},background:{uniforms:{uvTransform:{value:new zi},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:_r.background_vert,fragmentShader:_r.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new zi}},vertexShader:_r.backgroundCube_vert,fragmentShader:_r.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:_r.cube_vert,fragmentShader:_r.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:_r.equirect_vert,fragmentShader:_r.equirect_frag},distanceRGBA:{uniforms:Ml([Ln.common,Ln.displacementmap,{referencePosition:{value:new pe},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:_r.distanceRGBA_vert,fragmentShader:_r.distanceRGBA_frag},shadow:{uniforms:Ml([Ln.lights,Ln.fog,{color:{value:new vn(0)},opacity:{value:1}}]),vertexShader:_r.shadow_vert,fragmentShader:_r.shadow_frag}};Hh.physical={uniforms:Ml([Hh.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new zi},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new zi},clearcoatNormalScale:{value:new ft(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new zi},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new zi},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new zi},sheen:{value:0},sheenColor:{value:new vn(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new zi},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new zi},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new zi},transmissionSamplerSize:{value:new ft},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new zi},attenuationDistance:{value:0},attenuationColor:{value:new vn(0)},specularColor:{value:new vn(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new zi},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new zi},anisotropyVector:{value:new ft},anisotropyMap:{value:null},anisotropyMapTransform:{value:new zi}}]),vertexShader:_r.meshphysical_vert,fragmentShader:_r.meshphysical_frag};const Dk={r:0,b:0,g:0},Gb=new Iu,Mee=new Gi;function Eee(n,t,e,i,r,s,l){const u=new vn(0);let p,m,f=!0===s?0:1,_=null,b=0,w=null;function F(O){let R=!0===O.isScene?O.background:null;return R&&R.isTexture&&(R=(O.backgroundBlurriness>0?e:t).get(R)),R}function I(O,R){O.getRGB(Dk,fQ(n)),i.buffers.color.setClear(Dk.r,Dk.g,Dk.b,R,l)}return{getClearColor:function(){return u},setClearColor:function(O,R=1){u.set(O),f=R,I(u,f)},getClearAlpha:function(){return f},setClearAlpha:function(O){f=O,I(u,f)},render:function D(O){let R=!1;const P=F(O);null===P?I(u,f):P&&P.isColor&&(I(P,1),R=!0);const ee=n.xr.getEnvironmentBlendMode();"additive"===ee?i.buffers.color.setClear(0,0,0,1,l):"alpha-blend"===ee&&i.buffers.color.setClear(0,0,0,0,l),(n.autoClear||R)&&(i.buffers.depth.setTest(!0),i.buffers.depth.setMask(!0),i.buffers.color.setMask(!0),n.clear(n.autoClearColor,n.autoClearDepth,n.autoClearStencil))},addToRenderList:function T(O,R){const P=F(R);P&&(P.isCubeTexture||P.mapping===K1)?(void 0===m&&(m=new dr(new jc(1,1,1),new ac({name:"BackgroundCubeMaterial",uniforms:Ew(Hh.backgroundCube.uniforms),vertexShader:Hh.backgroundCube.vertexShader,fragmentShader:Hh.backgroundCube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1})),m.geometry.deleteAttribute("normal"),m.geometry.deleteAttribute("uv"),m.onBeforeRender=function(ee,J,te){this.matrixWorld.copyPosition(te.matrixWorld)},Object.defineProperty(m.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(m)),Gb.copy(R.backgroundRotation),Gb.x*=-1,Gb.y*=-1,Gb.z*=-1,P.isCubeTexture&&!1===P.isRenderTargetTexture&&(Gb.y*=-1,Gb.z*=-1),m.material.uniforms.envMap.value=P,m.material.uniforms.flipEnvMap.value=P.isCubeTexture&&!1===P.isRenderTargetTexture?-1:1,m.material.uniforms.backgroundBlurriness.value=R.backgroundBlurriness,m.material.uniforms.backgroundIntensity.value=R.backgroundIntensity,m.material.uniforms.backgroundRotation.value.setFromMatrix4(Mee.makeRotationFromEuler(Gb)),m.material.toneMapped=Pr.getTransfer(P.colorSpace)!==Bo,(_!==P||b!==P.version||w!==n.toneMapping)&&(m.material.needsUpdate=!0,_=P,b=P.version,w=n.toneMapping),m.layers.enableAll(),O.unshift(m,m.geometry,m.material,0,0,null)):P&&P.isTexture&&(void 0===p&&(p=new dr(new Iw(2,2),new ac({name:"BackgroundMaterial",uniforms:Ew(Hh.background.uniforms),vertexShader:Hh.background.vertexShader,fragmentShader:Hh.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1})),p.geometry.deleteAttribute("normal"),Object.defineProperty(p.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(p)),p.material.uniforms.t2D.value=P,p.material.uniforms.backgroundIntensity.value=R.backgroundIntensity,p.material.toneMapped=Pr.getTransfer(P.colorSpace)!==Bo,!0===P.matrixAutoUpdate&&P.updateMatrix(),p.material.uniforms.uvTransform.value.copy(P.matrix),(_!==P||b!==P.version||w!==n.toneMapping)&&(p.material.needsUpdate=!0,_=P,b=P.version,w=n.toneMapping),p.layers.enableAll(),O.unshift(p,p.geometry,p.material,0,0,null))}}}function See(n,t){const e=n.getParameter(n.MAX_VERTEX_ATTRIBS),i={},r=b(null);let s=r,l=!1;function p(q){return n.bindVertexArray(q)}function m(q){return n.deleteVertexArray(q)}function b(q){const ce=[],ke=[],Ue=[];for(let de=0;de=0){const Mt=de[Fe];let Bt=ze[Fe];if(void 0===Bt&&("instanceMatrix"===Fe&&q.instanceMatrix&&(Bt=q.instanceMatrix),"instanceColor"===Fe&&q.instanceColor&&(Bt=q.instanceColor)),void 0===Mt||Mt.attribute!==Bt||Bt&&Mt.data!==Bt.data)return!0;Ce++}return s.attributesNum!==Ce||s.index!==Ue}(q,Ue,ke,de),ze&&function F(q,ce,ke,Ue){const de={},ze=ce.attributes;let Ce=0;const Oe=ke.getAttributes();for(const Fe in Oe)if(Oe[Fe].location>=0){let Mt=ze[Fe];void 0===Mt&&("instanceMatrix"===Fe&&q.instanceMatrix&&(Mt=q.instanceMatrix),"instanceColor"===Fe&&q.instanceColor&&(Mt=q.instanceColor));const Bt={};Bt.attribute=Mt,Mt&&Mt.data&&(Bt.data=Mt.data),de[Fe]=Bt,Ce++}s.attributes=de,s.attributesNum=Ce,s.index=Ue}(q,Ue,ke,de),null!==de&&t.update(de,n.ELEMENT_ARRAY_BUFFER),(ze||l)&&(l=!1,function P(q,ce,ke,Ue){D();const de=Ue.attributes,ze=ke.getAttributes(),Ce=ce.defaultAttributeValues;for(const Oe in ze){const Fe=ze[Oe];if(Fe.location>=0){let ht=de[Oe];if(void 0===ht&&("instanceMatrix"===Oe&&q.instanceMatrix&&(ht=q.instanceMatrix),"instanceColor"===Oe&&q.instanceColor&&(ht=q.instanceColor)),void 0!==ht){const Mt=ht.normalized,Bt=ht.itemSize,rn=t.get(ht);if(void 0===rn)continue;const Kn=rn.buffer,Me=rn.type,be=rn.bytesPerElement,Ae=Me===n.INT||Me===n.UNSIGNED_INT||ht.gpuType===BE;if(ht.isInterleavedBufferAttribute){const le=ht.data,dt=le.stride,Ot=ht.offset;if(le.isInstancedInterleavedBuffer){for(let at=0;at0&&n.getShaderPrecisionFormat(n.FRAGMENT_SHADER,n.HIGH_FLOAT).precision>0)return"highp";J="mediump"}return"mediump"===J&&n.getShaderPrecisionFormat(n.VERTEX_SHADER,n.MEDIUM_FLOAT).precision>0&&n.getShaderPrecisionFormat(n.FRAGMENT_SHADER,n.MEDIUM_FLOAT).precision>0?"mediump":"lowp"}let p=void 0!==e.precision?e.precision:"highp";const m=f(p);m!==p&&(console.warn("THREE.WebGLRenderer:",p,"not supported, using",m,"instead."),p=m);const _=!0===e.logarithmicDepthBuffer,b=n.getParameter(n.MAX_TEXTURE_IMAGE_UNITS),w=n.getParameter(n.MAX_VERTEX_TEXTURE_IMAGE_UNITS);return{isWebGL2:!0,getMaxAnisotropy:function s(){if(void 0!==r)return r;if(!0===t.has("EXT_texture_filter_anisotropic")){const J=t.get("EXT_texture_filter_anisotropic");r=n.getParameter(J.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else r=0;return r},getMaxPrecision:f,textureFormatReadable:function l(J){return!(J!==Da&&i.convert(J)!==n.getParameter(n.IMPLEMENTATION_COLOR_READ_FORMAT))},textureTypeReadable:function u(J){const te=J===mg&&(t.has("EXT_color_buffer_half_float")||t.has("EXT_color_buffer_float"));return!(J!==Cu&&i.convert(J)!==n.getParameter(n.IMPLEMENTATION_COLOR_READ_TYPE)&&J!==wl&&!te)},precision:p,logarithmicDepthBuffer:_,maxTextures:b,maxVertexTextures:w,maxTextureSize:n.getParameter(n.MAX_TEXTURE_SIZE),maxCubemapSize:n.getParameter(n.MAX_CUBE_MAP_TEXTURE_SIZE),maxAttributes:n.getParameter(n.MAX_VERTEX_ATTRIBS),maxVertexUniforms:n.getParameter(n.MAX_VERTEX_UNIFORM_VECTORS),maxVaryings:n.getParameter(n.MAX_VARYING_VECTORS),maxFragmentUniforms:n.getParameter(n.MAX_FRAGMENT_UNIFORM_VECTORS),vertexTextures:w>0,maxSamples:n.getParameter(n.MAX_SAMPLES)}}function Fee(n){const t=this;let e=null,i=0,r=!1,s=!1;const l=new Og,u=new zi,f={value:null,needsUpdate:!1};function m(_,b,w,F){const D=null!==_?_.length:0;let T=null;if(0!==D){if(T=f.value,!0!==F||null===T){const I=w+4*D,O=b.matrixWorldInverse;u.getNormalMatrix(O),(null===T||T.length0),t.numPlanes=i,t.numIntersection=0}();else{const O=s?0:i,R=4*O;let P=I.clippingState||null;f.value=P,P=m(F,b,R,w);for(let ee=0;ee!==R;++ee)P[ee]=e[ee];I.clippingState=P,this.numIntersection=D?this.numPlanes:0,this.numPlanes+=O}}}function Dee(n){let t=new WeakMap;function e(l,u){return 303===u?l.mapping=wu:304===u&&(l.mapping=Ag),l}function r(l){const u=l.target;u.removeEventListener("dispose",r);const f=t.get(u);void 0!==f&&(t.delete(u),f.dispose())}return{get:function i(l){if(l&&l.isTexture){const u=l.mapping;if(303===u||304===u){if(t.has(l))return e(t.get(l).texture,l.mapping);{const f=l.image;if(f&&f.height>0){const p=new wZ(f.height);return p.fromEquirectangularTexture(n,l),t.set(l,p),l.addEventListener("dispose",r),e(p.texture,l.mapping)}return null}}}return l},dispose:function s(){t=new WeakMap}}}class Bk extends I5{constructor(t=-1,e=1,i=1,r=-1,s=.1,l=2e3){super(),this.isOrthographicCamera=!0,this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=i,this.bottom=r,this.near=s,this.far=l,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=null===t.view?null:Object.assign({},t.view),this}setViewOffset(t,e,i,r,s,l){null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=i,this.view.offsetY=r,this.view.width=s,this.view.height=l,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),i=(this.right+this.left)/2,r=(this.top+this.bottom)/2;let s=i-t,l=i+t,u=r+e,f=r-e;if(null!==this.view&&this.view.enabled){const p=(this.right-this.left)/this.view.fullWidth/this.zoom,m=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=p*this.view.offsetX,l=s+p*this.view.width,u-=m*this.view.offsetY,f=u-m*this.view.height}this.projectionMatrix.makeOrthographic(s,l,u,f,this.near,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,null!==this.view&&(e.object.view=Object.assign({},this.view)),e}}const gQ=[.125,.215,.35,.446,.526,.582],D5=new Bk,_Q=new vn;let B5=null,k5=0,R5=0,P5=!1;const $b=(1+Math.sqrt(5))/2,Dw=1/$b,bQ=[new pe(-$b,Dw,0),new pe($b,Dw,0),new pe(-Dw,0,$b),new pe(Dw,0,$b),new pe(0,$b,-Dw),new pe(0,$b,Dw),new pe(-1,1,-1),new pe(1,1,-1),new pe(-1,1,1),new pe(1,1,1)];class vQ{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,i=.1,r=100){B5=this._renderer.getRenderTarget(),k5=this._renderer.getActiveCubeFace(),R5=this._renderer.getActiveMipmapLevel(),P5=this._renderer.xr.enabled,this._renderer.xr.enabled=!1,this._setSize(256);const s=this._allocateTargets();return s.depthBuffer=!0,this._sceneToCubeUV(t,i,r,s),e>0&&this._blur(s,0,0,e),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(t,e=null){return this._fromTexture(t,e)}fromCubemap(t,e=null){return this._fromTexture(t,e)}compileCubemapShader(){null===this._cubemapMaterial&&(this._cubemapMaterial=xQ(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){null===this._equirectMaterial&&(this._equirectMaterial=wQ(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),null!==this._cubemapMaterial&&this._cubemapMaterial.dispose(),null!==this._equirectMaterial&&this._equirectMaterial.dispose()}_setSize(t){this._lodMax=Math.floor(Math.log2(t)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){null!==this._blurMaterial&&this._blurMaterial.dispose(),null!==this._pingPongRenderTarget&&this._pingPongRenderTarget.dispose();for(let t=0;tn-4?f=gQ[l-n+4-1]:0===l&&(f=0),i.push(f);const p=1/(u-2),m=-p,_=1+p,b=[m,m,_,m,_,_,m,m,_,_,m,_],w=6,F=6,D=3,T=2,I=1,O=new Float32Array(D*F*w),R=new Float32Array(T*F*w),P=new Float32Array(I*F*w);for(let J=0;J2?0:-1;O.set([te,ie,0,te+2/3,ie,0,te+2/3,ie+1,0,te,ie,0,te+2/3,ie+1,0,te,ie+1,0],D*F*J),R.set(b,T*F*J),P.set([J,J,J,J,J,J],I*F*J)}const ee=new Yi;ee.setAttribute("position",new ae(O,D)),ee.setAttribute("uv",new ae(R,T)),ee.setAttribute("faceIndex",new ae(P,I)),t.push(ee),r>4&&r--}return{lodPlanes:t,sizeLods:e,sigmas:i}}(s)),this._blurMaterial=function kee(n,t,e){const i=new Float32Array(20),r=new pe(0,1,0);return new ac({name:"SphericalGaussianBlur",defines:{n:20,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/e,CUBEUV_MAX_MIP:`${n}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:i},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:r}},vertexShader:"\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t",fragmentShader:"\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\t\t\tuniform int samples;\n\t\t\tuniform float weights[ n ];\n\t\t\tuniform bool latitudinal;\n\t\t\tuniform float dTheta;\n\t\t\tuniform float mipInt;\n\t\t\tuniform vec3 poleAxis;\n\n\t\t\t#define ENVMAP_TYPE_CUBE_UV\n\t\t\t#include \n\n\t\t\tvec3 getSample( float theta, vec3 axis ) {\n\n\t\t\t\tfloat cosTheta = cos( theta );\n\t\t\t\t// Rodrigues' axis-angle rotation\n\t\t\t\tvec3 sampleDirection = vOutputDirection * cosTheta\n\t\t\t\t\t+ cross( axis, vOutputDirection ) * sin( theta )\n\t\t\t\t\t+ axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta );\n\n\t\t\t\treturn bilinearCubeUV( envMap, sampleDirection, mipInt );\n\n\t\t\t}\n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection );\n\n\t\t\t\tif ( all( equal( axis, vec3( 0.0 ) ) ) ) {\n\n\t\t\t\t\taxis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x );\n\n\t\t\t\t}\n\n\t\t\t\taxis = normalize( axis );\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t\t\t\tgl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis );\n\n\t\t\t\tfor ( int i = 1; i < n; i++ ) {\n\n\t\t\t\t\tif ( i >= samples ) {\n\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfloat theta = dTheta * float( i );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( theta, axis );\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t",blending:0,depthTest:!1,depthWrite:!1})}(s,t,e)}return r}_compileMaterial(t){const e=new dr(this._lodPlanes[0],t);this._renderer.compile(e,D5)}_sceneToCubeUV(t,e,i,r){const u=new Js(90,1,e,i),f=[1,-1,1,1,1,1],p=[1,1,1,-1,-1,-1],m=this._renderer,_=m.autoClear,b=m.toneMapping;m.getClearColor(_Q),m.toneMapping=Bh,m.autoClear=!1;const w=new h({name:"PMREM.Background",side:1,depthWrite:!1,depthTest:!1}),F=new dr(new jc,w);let D=!1;const T=t.background;T?T.isColor&&(w.color.copy(T),t.background=null,D=!0):(w.color.copy(_Q),D=!0);for(let I=0;I<6;I++){const O=I%3;0===O?(u.up.set(0,f[I],0),u.lookAt(p[I],0,0)):1===O?(u.up.set(0,0,f[I]),u.lookAt(0,p[I],0)):(u.up.set(0,f[I],0),u.lookAt(0,0,p[I]));const R=this._cubeSize;kk(r,O*R,I>2?R:0,R,R),m.setRenderTarget(r),D&&m.render(F,u),m.render(t,u)}F.geometry.dispose(),F.material.dispose(),m.toneMapping=b,m.autoClear=_,t.background=T}_textureToCubeUV(t,e){const i=this._renderer,r=t.mapping===wu||t.mapping===Ag;r?(null===this._cubemapMaterial&&(this._cubemapMaterial=xQ()),this._cubemapMaterial.uniforms.flipEnvMap.value=!1===t.isRenderTargetTexture?-1:1):null===this._equirectMaterial&&(this._equirectMaterial=wQ());const s=r?this._cubemapMaterial:this._equirectMaterial,l=new dr(this._lodPlanes[0],s);s.uniforms.envMap.value=t;const f=this._cubeSize;kk(e,0,0,3*f,2*f),i.setRenderTarget(e),i.render(l,D5)}_applyPMREM(t){const e=this._renderer,i=e.autoClear;e.autoClear=!1;const r=this._lodPlanes.length;for(let s=1;s20&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${T} samples when the maximum is set to 20`);const I=[];let O=0;for(let te=0;te<20;++te){const ie=te/D,W=Math.exp(-ie*ie/2);I.push(W),0===te?O+=W:teR-4?r-R+4:0),4*(this._cubeSize-P),3*P,2*P),f.setRenderTarget(e),f.render(_,D5)}}function yQ(n,t,e){const i=new oc(n,t,e);return i.texture.mapping=K1,i.texture.name="PMREM.cubeUv",i.scissorTest=!0,i}function kk(n,t,e,i,r){n.viewport.set(t,e,i,r),n.scissor.set(t,e,i,r)}function wQ(){return new ac({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:"\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t",fragmentShader:"\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\n\t\t\t#include \n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 outputDirection = normalize( vOutputDirection );\n\t\t\t\tvec2 uv = equirectUv( outputDirection );\n\n\t\t\t\tgl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 );\n\n\t\t\t}\n\t\t",blending:0,depthTest:!1,depthWrite:!1})}function xQ(){return new ac({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:"\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t",fragmentShader:"\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tuniform float flipEnvMap;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform samplerCube envMap;\n\n\t\t\tvoid main() {\n\n\t\t\t\tgl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) );\n\n\t\t\t}\n\t\t",blending:0,depthTest:!1,depthWrite:!1})}function Ree(n){let t=new WeakMap,e=null;function s(u){const f=u.target;f.removeEventListener("dispose",s);const p=t.get(f);void 0!==p&&(t.delete(f),p.dispose())}return{get:function i(u){if(u&&u.isTexture){const f=u.mapping,p=303===f||304===f,m=f===wu||f===Ag;if(p||m){let _=t.get(u);if(u.isRenderTargetTexture&&u.pmremVersion!==(void 0!==_?_.texture.pmremVersion:0))return null===e&&(e=new vQ(n)),_=p?e.fromEquirectangular(u,_):e.fromCubemap(u,_),_.texture.pmremVersion=u.pmremVersion,t.set(u,_),_.texture;if(void 0!==_)return _.texture;{const w=u.image;return p&&w&&w.height>0||m&&w&&function r(u){let f=0;for(let m=0;m<6;m++)void 0!==u[m]&&f++;return 6===f}(w)?(null===e&&(e=new vQ(n)),_=p?e.fromEquirectangular(u):e.fromCubemap(u),_.texture.pmremVersion=u.pmremVersion,t.set(u,_),u.addEventListener("dispose",s),_.texture):null}}}return u},dispose:function l(){t=new WeakMap,null!==e&&(e.dispose(),e=null)}}}function Pee(n){const t={};function e(i){if(void 0!==t[i])return t[i];let r;switch(i){case"WEBGL_depth_texture":r=n.getExtension("WEBGL_depth_texture")||n.getExtension("MOZ_WEBGL_depth_texture")||n.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":r=n.getExtension("EXT_texture_filter_anisotropic")||n.getExtension("MOZ_EXT_texture_filter_anisotropic")||n.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":r=n.getExtension("WEBGL_compressed_texture_s3tc")||n.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||n.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":r=n.getExtension("WEBGL_compressed_texture_pvrtc")||n.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:r=n.getExtension(i)}return t[i]=r,r}return{has:function(i){return null!==e(i)},init:function(){e("EXT_color_buffer_float"),e("WEBGL_clip_cull_distance"),e("OES_texture_float_linear"),e("EXT_color_buffer_half_float"),e("WEBGL_multisampled_render_to_texture"),e("WEBGL_render_shared_exponent")},get:function(i){const r=e(i);return null===r&&Dp("THREE.WebGLRenderer: "+i+" extension not supported."),r}}}function Oee(n,t,e,i){const r={},s=new WeakMap;function l(_){const b=_.target;null!==b.index&&t.remove(b.index);for(const F in b.attributes)t.remove(b.attributes[F]);for(const F in b.morphAttributes){const D=b.morphAttributes[F];for(let T=0,I=D.length;Tt.maxTextureSize&&(ee=Math.ceil(P/t.maxTextureSize),P=t.maxTextureSize);const J=new Float32Array(P*ee*4*_),te=new lk(J,P,ee,_);te.type=wl,te.needsUpdate=!0;const ie=4*R;for(let q=0;q<_;q++){const ce=T[q],ke=I[q],Ue=O[q],de=P*ee*4*q;for(let ze=0;ze0)return n;const r=t*e;let s=FQ[r];if(void 0===s&&(s=new Float32Array(r),FQ[r]=s),0!==t){i.toArray(s,0);for(let l=1,u=0;l!==t;++l)u+=e,n[l].toArray(s,u)}return s}function ea(n,t){if(n.length!==t.length)return!1;for(let e=0,i=n.length;e":" "} ${u}: ${e[l]}`)}return i.join("\n")}(n.getShaderSource(t),l)}return r}function Pte(n,t){const e=function Rte(n){const t=Pr.getPrimaries(Pr.workingColorSpace),e=Pr.getPrimaries(n);let i;switch(t===e?i="":t===Hc&&e===Tb?i="LinearDisplayP3ToLinearSRGB":t===Tb&&e===Hc&&(i="LinearSRGBToLinearDisplayP3"),n){case Ph:case Ip:return[i,"LinearTransferOETF"];case ic:case Cg:return[i,"sRGBTransferOETF"];default:return console.warn("THREE.WebGLProgram: Unsupported color space:",n),[i,"LinearTransferOETF"]}}(t);return`vec4 ${n}( vec4 value ) { return ${e[0]}( ${e[1]}( value ) ); }`}function Ote(n,t){let e;switch(t){case KL:e="Linear";break;case EB:e="Reinhard";break;case YL:e="Cineon";break;case SB:e="ACESFilmic";break;case IB:e="AgX";break;case FB:e="Neutral";break;case TB:e="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",t),e="Linear"}return"vec3 "+n+"( vec3 color ) { return "+e+"ToneMapping( color ); }"}const Ok=new pe;function fS(n){return""!==n}function LQ(n,t){const e=t.numSpotLightShadows+t.numSpotLightMaps-t.numSpotLightShadowsWithMaps;return n.replace(/NUM_DIR_LIGHTS/g,t.numDirLights).replace(/NUM_SPOT_LIGHTS/g,t.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,t.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,e).replace(/NUM_RECT_AREA_LIGHTS/g,t.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,t.numPointLights).replace(/NUM_HEMI_LIGHTS/g,t.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,t.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,t.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,t.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,t.numPointLightShadows)}function UQ(n,t){return n.replace(/NUM_CLIPPING_PLANES/g,t.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,t.numClippingPlanes-t.numClipIntersection)}const Hte=/^[ \t]*#include +<([\w\d./]+)>/gm;function L5(n){return n.replace(Hte,zte)}const Qte=new Map;function zte(n,t){let e=_r[t];if(void 0===e){const i=Qte.get(t);if(void 0===i)throw new Error("Can not resolve #include <"+t+">");e=_r[i],console.warn('THREE.WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.',t,i)}return L5(e)}const Gte=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function VQ(n){return n.replace(Gte,jte)}function jte(n,t,e,i){let r="";for(let s=parseInt(t);s0&&(T+="\n"),I=["#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,F].filter(fS).join("\n"),I.length>0&&(I+="\n")):(T=[HQ(e),"#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,F,e.extensionClipCullDistance?"#define USE_CLIP_DISTANCE":"",e.batching?"#define USE_BATCHING":"",e.batchingColor?"#define USE_BATCHING_COLOR":"",e.instancing?"#define USE_INSTANCING":"",e.instancingColor?"#define USE_INSTANCING_COLOR":"",e.instancingMorph?"#define USE_INSTANCING_MORPH":"",e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.map?"#define USE_MAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+m:"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",e.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",e.displacementMap?"#define USE_DISPLACEMENTMAP":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.anisotropy?"#define USE_ANISOTROPY":"",e.anisotropyMap?"#define USE_ANISOTROPYMAP":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",e.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaHash?"#define USE_ALPHAHASH":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",e.mapUv?"#define MAP_UV "+e.mapUv:"",e.alphaMapUv?"#define ALPHAMAP_UV "+e.alphaMapUv:"",e.lightMapUv?"#define LIGHTMAP_UV "+e.lightMapUv:"",e.aoMapUv?"#define AOMAP_UV "+e.aoMapUv:"",e.emissiveMapUv?"#define EMISSIVEMAP_UV "+e.emissiveMapUv:"",e.bumpMapUv?"#define BUMPMAP_UV "+e.bumpMapUv:"",e.normalMapUv?"#define NORMALMAP_UV "+e.normalMapUv:"",e.displacementMapUv?"#define DISPLACEMENTMAP_UV "+e.displacementMapUv:"",e.metalnessMapUv?"#define METALNESSMAP_UV "+e.metalnessMapUv:"",e.roughnessMapUv?"#define ROUGHNESSMAP_UV "+e.roughnessMapUv:"",e.anisotropyMapUv?"#define ANISOTROPYMAP_UV "+e.anisotropyMapUv:"",e.clearcoatMapUv?"#define CLEARCOATMAP_UV "+e.clearcoatMapUv:"",e.clearcoatNormalMapUv?"#define CLEARCOAT_NORMALMAP_UV "+e.clearcoatNormalMapUv:"",e.clearcoatRoughnessMapUv?"#define CLEARCOAT_ROUGHNESSMAP_UV "+e.clearcoatRoughnessMapUv:"",e.iridescenceMapUv?"#define IRIDESCENCEMAP_UV "+e.iridescenceMapUv:"",e.iridescenceThicknessMapUv?"#define IRIDESCENCE_THICKNESSMAP_UV "+e.iridescenceThicknessMapUv:"",e.sheenColorMapUv?"#define SHEEN_COLORMAP_UV "+e.sheenColorMapUv:"",e.sheenRoughnessMapUv?"#define SHEEN_ROUGHNESSMAP_UV "+e.sheenRoughnessMapUv:"",e.specularMapUv?"#define SPECULARMAP_UV "+e.specularMapUv:"",e.specularColorMapUv?"#define SPECULAR_COLORMAP_UV "+e.specularColorMapUv:"",e.specularIntensityMapUv?"#define SPECULAR_INTENSITYMAP_UV "+e.specularIntensityMapUv:"",e.transmissionMapUv?"#define TRANSMISSIONMAP_UV "+e.transmissionMapUv:"",e.thicknessMapUv?"#define THICKNESSMAP_UV "+e.thicknessMapUv:"",e.vertexTangents&&!1===e.flatShading?"#define USE_TANGENT":"",e.vertexColors?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUv1s?"#define USE_UV1":"",e.vertexUv2s?"#define USE_UV2":"",e.vertexUv3s?"#define USE_UV3":"",e.pointsUvs?"#define USE_POINTS_UV":"",e.flatShading?"#define FLAT_SHADED":"",e.skinning?"#define USE_SKINNING":"",e.morphTargets?"#define USE_MORPHTARGETS":"",e.morphNormals&&!1===e.flatShading?"#define USE_MORPHNORMALS":"",e.morphColors?"#define USE_MORPHCOLORS":"",e.morphTargetsCount>0?"#define MORPHTARGETS_TEXTURE_STRIDE "+e.morphTextureStride:"",e.morphTargetsCount>0?"#define MORPHTARGETS_COUNT "+e.morphTargetsCount:"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+f:"",e.sizeAttenuation?"#define USE_SIZEATTENUATION":"",e.numLightProbes>0?"#define USE_LIGHT_PROBES":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING","\tattribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR","\tattribute vec3 instanceColor;","#endif","#ifdef USE_INSTANCING_MORPH","\tuniform sampler2D morphTexture;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_UV1","\tattribute vec2 uv1;","#endif","#ifdef USE_UV2","\tattribute vec2 uv2;","#endif","#ifdef USE_UV3","\tattribute vec2 uv3;","#endif","#ifdef USE_TANGENT","\tattribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )","\tattribute vec4 color;","#elif defined( USE_COLOR )","\tattribute vec3 color;","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(fS).join("\n"),I=[HQ(e),"#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,F,e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.alphaToCoverage?"#define ALPHA_TO_COVERAGE":"",e.map?"#define USE_MAP":"",e.matcap?"#define USE_MATCAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+p:"",e.envMap?"#define "+m:"",e.envMap?"#define "+_:"",b?"#define CUBEUV_TEXEL_WIDTH "+b.texelWidth:"",b?"#define CUBEUV_TEXEL_HEIGHT "+b.texelHeight:"",b?"#define CUBEUV_MAX_MIP "+b.maxMip+".0":"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",e.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.anisotropy?"#define USE_ANISOTROPY":"",e.anisotropyMap?"#define USE_ANISOTROPYMAP":"",e.clearcoat?"#define USE_CLEARCOAT":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.dispersion?"#define USE_DISPERSION":"",e.iridescence?"#define USE_IRIDESCENCE":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",e.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaTest?"#define USE_ALPHATEST":"",e.alphaHash?"#define USE_ALPHAHASH":"",e.sheen?"#define USE_SHEEN":"",e.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.vertexTangents&&!1===e.flatShading?"#define USE_TANGENT":"",e.vertexColors||e.instancingColor||e.batchingColor?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUv1s?"#define USE_UV1":"",e.vertexUv2s?"#define USE_UV2":"",e.vertexUv3s?"#define USE_UV3":"",e.pointsUvs?"#define USE_POINTS_UV":"",e.gradientMap?"#define USE_GRADIENTMAP":"",e.flatShading?"#define FLAT_SHADED":"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+f:"",e.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",e.numLightProbes>0?"#define USE_LIGHT_PROBES":"",e.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",e.toneMapping!==Bh?"#define TONE_MAPPING":"",e.toneMapping!==Bh?_r.tonemapping_pars_fragment:"",e.toneMapping!==Bh?Ote("toneMapping",e.toneMapping):"",e.dithering?"#define DITHERING":"",e.opaque?"#define OPAQUE":"",_r.colorspace_pars_fragment,Pte("linearToOutputTexel",e.outputColorSpace),(Pr.getLuminanceCoefficients(Ok),["float luminance( const in vec3 rgb ) {",`\tconst vec3 weights = vec3( ${Ok.x.toFixed(4)}, ${Ok.y.toFixed(4)}, ${Ok.z.toFixed(4)} );`,"\treturn dot( weights, rgb );","}"].join("\n")),e.useDepthPacking?"#define DEPTH_PACKING "+e.depthPacking:"","\n"].filter(fS).join("\n")),l=L5(l),l=LQ(l,e),l=UQ(l,e),u=L5(u),u=LQ(u,e),u=UQ(u,e),l=VQ(l),u=VQ(u),!0!==e.isRawShaderMaterial&&(O="#version 300 es\n",T=[w,"#define attribute in","#define varying out","#define texture2D texture"].join("\n")+"\n"+T,I=["#define varying in",e.glslVersion===tk?"":"layout(location = 0) out highp vec4 pc_fragColor;",e.glslVersion===tk?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+I);const P=O+I+u,ee=OQ(r,r.VERTEX_SHADER,O+T+l),J=OQ(r,r.FRAGMENT_SHADER,P);function te(ce){if(n.debug.checkShaderErrors){const ke=r.getProgramInfoLog(D).trim(),Ue=r.getShaderInfoLog(ee).trim(),de=r.getShaderInfoLog(J).trim();let ze=!0,Ce=!0;if(!1===r.getProgramParameter(D,r.LINK_STATUS))if(ze=!1,"function"==typeof n.debug.onShaderError)n.debug.onShaderError(r,D,ee,J);else{const Oe=NQ(r,ee,"vertex"),Fe=NQ(r,J,"fragment");console.error("THREE.WebGLProgram: Shader Error "+r.getError()+" - VALIDATE_STATUS "+r.getProgramParameter(D,r.VALIDATE_STATUS)+"\n\nMaterial Name: "+ce.name+"\nMaterial Type: "+ce.type+"\n\nProgram Info Log: "+ke+"\n"+Oe+"\n"+Fe)}else""!==ke?console.warn("THREE.WebGLProgram: Program Info Log:",ke):(""===Ue||""===de)&&(Ce=!1);Ce&&(ce.diagnostics={runnable:ze,programLog:ke,vertexShader:{log:Ue,prefix:T},fragmentShader:{log:de,prefix:I}})}r.deleteShader(ee),r.deleteShader(J),ie=new Pk(r,D),W=function Vte(n,t){const e={},i=n.getProgramParameter(t,n.ACTIVE_ATTRIBUTES);for(let r=0;r0,xt=W.clearcoat>0,Ut=W.iridescence>0,jt=W.sheen>0,Ti=W.transmission>0,Dn=oe&&!!W.anisotropyMap,Yn=xt&&!!W.clearcoatMap,or=xt&&!!W.clearcoatNormalMap,hn=xt&&!!W.clearcoatRoughnessMap,Zn=Ut&&!!W.iridescenceMap,Br=Ut&&!!W.iridescenceThicknessMap,tr=jt&&!!W.sheenColorMap,di=jt&&!!W.sheenRoughnessMap,ur=!!W.specularMap,Er=!!W.specularColorMap,ss=!!W.specularIntensityMap,ut=Ti&&!!W.transmissionMap,xn=Ti&&!!W.thicknessMap,Kt=!!W.alphaMap,jr=!!W.extensions;let Qs=Bh;W.toneMapped&&(null===le||!0===le.isXRRenderTarget)&&(Qs=n.toneMapping);const Oa={shaderID:ht,shaderType:W.type,shaderName:W.name,vertexShader:Kn,fragmentShader:Me,defines:W.defines,customVertexShaderID:be,customFragmentShaderID:Ae,isRawShaderMaterial:!0===W.isRawShaderMaterial,glslVersion:W.glslVersion,precision:w,batching:Ot,batchingColor:Ot&&null!==Ue._colorsTexture,instancing:dt,instancingColor:dt&&null!==Ue.instanceColor,instancingMorph:dt&&null!==Ue.morphTexture,supportsVertexTextures:b,outputColorSpace:null===le?n.outputColorSpace:!0===le.isXRRenderTarget?le.texture.colorSpace:Ph,alphaToCoverage:!!W.alphaToCoverage,map:at,matcap:!!W.matcap,envMap:ue,envMapMode:ue&&Oe.mapping,envMapCubeUVHeight:Fe,aoMap:yt,lightMap:Ze,bumpMap:Ct,normalMap:_t,displacementMap:b&&It,emissiveMap:Pe,normalMapObjectSpace:_t&&1===W.normalMapType,normalMapTangentSpace:_t&&0===W.normalMapType,metalnessMap:Se,roughnessMap:_e,anisotropy:oe,anisotropyMap:Dn,clearcoat:xt,clearcoatMap:Yn,clearcoatNormalMap:or,clearcoatRoughnessMap:hn,dispersion:W.dispersion>0,iridescence:Ut,iridescenceMap:Zn,iridescenceThicknessMap:Br,sheen:jt,sheenColorMap:tr,sheenRoughnessMap:di,specularMap:ur,specularColorMap:Er,specularIntensityMap:ss,transmission:Ti,transmissionMap:ut,thicknessMap:xn,gradientMap:!!W.gradientMap,opaque:!1===W.transparent&&1===W.blending&&!1===W.alphaToCoverage,alphaMap:Kt,alphaTest:W.alphaTest>0,alphaHash:!!W.alphaHash,combine:W.combine,mapUv:at&&D(W.map.channel),aoMapUv:yt&&D(W.aoMap.channel),lightMapUv:Ze&&D(W.lightMap.channel),bumpMapUv:Ct&&D(W.bumpMap.channel),normalMapUv:_t&&D(W.normalMap.channel),displacementMapUv:It&&D(W.displacementMap.channel),emissiveMapUv:Pe&&D(W.emissiveMap.channel),metalnessMapUv:Se&&D(W.metalnessMap.channel),roughnessMapUv:_e&&D(W.roughnessMap.channel),anisotropyMapUv:Dn&&D(W.anisotropyMap.channel),clearcoatMapUv:Yn&&D(W.clearcoatMap.channel),clearcoatNormalMapUv:or&&D(W.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:hn&&D(W.clearcoatRoughnessMap.channel),iridescenceMapUv:Zn&&D(W.iridescenceMap.channel),iridescenceThicknessMapUv:Br&&D(W.iridescenceThicknessMap.channel),sheenColorMapUv:tr&&D(W.sheenColorMap.channel),sheenRoughnessMapUv:di&&D(W.sheenRoughnessMap.channel),specularMapUv:ur&&D(W.specularMap.channel),specularColorMapUv:Er&&D(W.specularColorMap.channel),specularIntensityMapUv:ss&&D(W.specularIntensityMap.channel),transmissionMapUv:ut&&D(W.transmissionMap.channel),thicknessMapUv:xn&&D(W.thicknessMap.channel),alphaMapUv:Kt&&D(W.alphaMap.channel),vertexTangents:!!ze.attributes.tangent&&(_t||oe),vertexColors:W.vertexColors,vertexAlphas:!0===W.vertexColors&&!!ze.attributes.color&&4===ze.attributes.color.itemSize,pointsUvs:!0===Ue.isPoints&&!!ze.attributes.uv&&(at||Kt),fog:!!de,useFog:!0===W.fog,fogExp2:!!de&&de.isFogExp2,flatShading:!0===W.flatShading,sizeAttenuation:!0===W.sizeAttenuation,logarithmicDepthBuffer:_,skinning:!0===Ue.isSkinnedMesh,morphTargets:void 0!==ze.morphAttributes.position,morphNormals:void 0!==ze.morphAttributes.normal,morphColors:void 0!==ze.morphAttributes.color,morphTargetsCount:Bt,morphTextureStride:rn,numDirLights:q.directional.length,numPointLights:q.point.length,numSpotLights:q.spot.length,numSpotLightMaps:q.spotLightMap.length,numRectAreaLights:q.rectArea.length,numHemiLights:q.hemi.length,numDirLightShadows:q.directionalShadowMap.length,numPointLightShadows:q.pointShadowMap.length,numSpotLightShadows:q.spotShadowMap.length,numSpotLightShadowsWithMaps:q.numSpotLightShadowsWithMaps,numLightProbes:q.numLightProbes,numClippingPlanes:l.numPlanes,numClipIntersection:l.numIntersection,dithering:W.dithering,shadowMapEnabled:n.shadowMap.enabled&&ce.length>0,shadowMapType:n.shadowMap.type,toneMapping:Qs,decodeVideoTexture:at&&!0===W.map.isVideoTexture&&Pr.getTransfer(W.map.colorSpace)===Bo,premultipliedAlpha:W.premultipliedAlpha,doubleSided:2===W.side,flipSided:1===W.side,useDepthPacking:W.depthPacking>=0,depthPacking:W.depthPacking||0,index0AttributeName:W.index0AttributeName,extensionClipCullDistance:jr&&!0===W.extensions.clipCullDistance&&i.has("WEBGL_clip_cull_distance"),extensionMultiDraw:(jr&&!0===W.extensions.multiDraw||Ot)&&i.has("WEBGL_multi_draw"),rendererExtensionParallelShaderCompile:i.has("KHR_parallel_shader_compile"),customProgramCacheKey:W.customProgramCacheKey()};return Oa.vertexUv1s=p.has(1),Oa.vertexUv2s=p.has(2),Oa.vertexUv3s=p.has(3),p.clear(),Oa},getProgramCacheKey:function I(W){const q=[];if(W.shaderID?q.push(W.shaderID):(q.push(W.customVertexShaderID),q.push(W.customFragmentShaderID)),void 0!==W.defines)for(const ce in W.defines)q.push(ce),q.push(W.defines[ce]);return!1===W.isRawShaderMaterial&&(function O(W,q){W.push(q.precision),W.push(q.outputColorSpace),W.push(q.envMapMode),W.push(q.envMapCubeUVHeight),W.push(q.mapUv),W.push(q.alphaMapUv),W.push(q.lightMapUv),W.push(q.aoMapUv),W.push(q.bumpMapUv),W.push(q.normalMapUv),W.push(q.displacementMapUv),W.push(q.emissiveMapUv),W.push(q.metalnessMapUv),W.push(q.roughnessMapUv),W.push(q.anisotropyMapUv),W.push(q.clearcoatMapUv),W.push(q.clearcoatNormalMapUv),W.push(q.clearcoatRoughnessMapUv),W.push(q.iridescenceMapUv),W.push(q.iridescenceThicknessMapUv),W.push(q.sheenColorMapUv),W.push(q.sheenRoughnessMapUv),W.push(q.specularMapUv),W.push(q.specularColorMapUv),W.push(q.specularIntensityMapUv),W.push(q.transmissionMapUv),W.push(q.thicknessMapUv),W.push(q.combine),W.push(q.fogExp2),W.push(q.sizeAttenuation),W.push(q.morphTargetsCount),W.push(q.morphAttributeCount),W.push(q.numDirLights),W.push(q.numPointLights),W.push(q.numSpotLights),W.push(q.numSpotLightMaps),W.push(q.numHemiLights),W.push(q.numRectAreaLights),W.push(q.numDirLightShadows),W.push(q.numPointLightShadows),W.push(q.numSpotLightShadows),W.push(q.numSpotLightShadowsWithMaps),W.push(q.numLightProbes),W.push(q.shadowMapType),W.push(q.toneMapping),W.push(q.numClippingPlanes),W.push(q.numClipIntersection),W.push(q.depthPacking)}(q,W),function R(W,q){u.disableAll(),q.supportsVertexTextures&&u.enable(0),q.instancing&&u.enable(1),q.instancingColor&&u.enable(2),q.instancingMorph&&u.enable(3),q.matcap&&u.enable(4),q.envMap&&u.enable(5),q.normalMapObjectSpace&&u.enable(6),q.normalMapTangentSpace&&u.enable(7),q.clearcoat&&u.enable(8),q.iridescence&&u.enable(9),q.alphaTest&&u.enable(10),q.vertexColors&&u.enable(11),q.vertexAlphas&&u.enable(12),q.vertexUv1s&&u.enable(13),q.vertexUv2s&&u.enable(14),q.vertexUv3s&&u.enable(15),q.vertexTangents&&u.enable(16),q.anisotropy&&u.enable(17),q.alphaHash&&u.enable(18),q.batching&&u.enable(19),q.dispersion&&u.enable(20),q.batchingColor&&u.enable(21),W.push(u.mask),u.disableAll(),q.fog&&u.enable(0),q.useFog&&u.enable(1),q.flatShading&&u.enable(2),q.logarithmicDepthBuffer&&u.enable(3),q.skinning&&u.enable(4),q.morphTargets&&u.enable(5),q.morphNormals&&u.enable(6),q.morphColors&&u.enable(7),q.premultipliedAlpha&&u.enable(8),q.shadowMapEnabled&&u.enable(9),q.doubleSided&&u.enable(10),q.flipSided&&u.enable(11),q.useDepthPacking&&u.enable(12),q.dithering&&u.enable(13),q.transmission&&u.enable(14),q.sheen&&u.enable(15),q.opaque&&u.enable(16),q.pointsUvs&&u.enable(17),q.decodeVideoTexture&&u.enable(18),q.alphaToCoverage&&u.enable(19),W.push(u.mask)}(q,W),q.push(n.outputColorSpace)),q.push(W.customProgramCacheKey),q.join()},getUniforms:function P(W){const q=F[W.type];let ce;return ce=q?T5.clone(Hh[q].uniforms):W.uniforms,ce},acquireProgram:function ee(W,q){let ce;for(let ke=0,Ue=m.length;ke0?i.push(I):!0===w.transparent?r.push(I):e.push(I)},unshift:function f(_,b,w,F,D,T){const I=l(_,b,w,F,D,T);w.transmission>0?i.unshift(I):!0===w.transparent?r.unshift(I):e.unshift(I)},finish:function m(){for(let _=t,b=n.length;_1&&e.sort(_||ine),i.length>1&&i.sort(b||QQ),r.length>1&&r.sort(b||QQ)}}}function rne(){let n=new WeakMap;return{get:function t(i,r){const s=n.get(i);let l;return void 0===s?(l=new zQ,n.set(i,[l])):r>=s.length?(l=new zQ,s.push(l)):l=s[r],l},dispose:function e(){n=new WeakMap}}}function one(){const n={};return{get:function(t){if(void 0!==n[t.id])return n[t.id];let e;switch(t.type){case"DirectionalLight":e={direction:new pe,color:new vn};break;case"SpotLight":e={position:new pe,direction:new pe,color:new vn,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":e={position:new pe,color:new vn,distance:0,decay:0};break;case"HemisphereLight":e={direction:new pe,skyColor:new vn,groundColor:new vn};break;case"RectAreaLight":e={color:new vn,position:new pe,halfWidth:new pe,halfHeight:new pe}}return n[t.id]=e,e}}}let ane=0;function lne(n,t){return(t.castShadow?2:0)-(n.castShadow?2:0)+(t.map?1:0)-(n.map?1:0)}function cne(n){const t=new one,e=function sne(){const n={};return{get:function(t){if(void 0!==n[t.id])return n[t.id];let e;switch(t.type){case"DirectionalLight":case"SpotLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new ft};break;case"PointLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new ft,shadowCameraNear:1,shadowCameraFar:1e3}}return n[t.id]=e,e}}}(),i={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let p=0;p<9;p++)i.probe.push(new pe);const r=new pe,s=new Gi,l=new Gi;return{setup:function u(p){let m=0,_=0,b=0;for(let W=0;W<9;W++)i.probe[W].set(0,0,0);let w=0,F=0,D=0,T=0,I=0,O=0,R=0,P=0,ee=0,J=0,te=0;p.sort(lne);for(let W=0,q=p.length;W0&&(!0===n.has("OES_texture_float_linear")?(i.rectAreaLTC1=Ln.LTC_FLOAT_1,i.rectAreaLTC2=Ln.LTC_FLOAT_2):(i.rectAreaLTC1=Ln.LTC_HALF_1,i.rectAreaLTC2=Ln.LTC_HALF_2)),i.ambient[0]=m,i.ambient[1]=_,i.ambient[2]=b;const ie=i.hash;(ie.directionalLength!==w||ie.pointLength!==F||ie.spotLength!==D||ie.rectAreaLength!==T||ie.hemiLength!==I||ie.numDirectionalShadows!==O||ie.numPointShadows!==R||ie.numSpotShadows!==P||ie.numSpotMaps!==ee||ie.numLightProbes!==te)&&(i.directional.length=w,i.spot.length=D,i.rectArea.length=T,i.point.length=F,i.hemi.length=I,i.directionalShadow.length=O,i.directionalShadowMap.length=O,i.pointShadow.length=R,i.pointShadowMap.length=R,i.spotShadow.length=P,i.spotShadowMap.length=P,i.directionalShadowMatrix.length=O,i.pointShadowMatrix.length=R,i.spotLightMatrix.length=P+ee-J,i.spotLightMap.length=ee,i.numSpotLightShadowsWithMaps=J,i.numLightProbes=te,ie.directionalLength=w,ie.pointLength=F,ie.spotLength=D,ie.rectAreaLength=T,ie.hemiLength=I,ie.numDirectionalShadows=O,ie.numPointShadows=R,ie.numSpotShadows=P,ie.numSpotMaps=ee,ie.numLightProbes=te,i.version=ane++)},setupView:function f(p,m){let _=0,b=0,w=0,F=0,D=0;const T=m.matrixWorldInverse;for(let I=0,O=p.length;I=l.length?(u=new GQ(n),l.push(u)):u=l[s],u},dispose:function i(){t=new WeakMap}}}class jQ extends d{constructor(t){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=3200,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this}}class $Q extends d{constructor(t){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(t)}copy(t){return super.copy(t),this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}function fne(n,t,e){let i=new Fk;const r=new ft,s=new ft,l=new so,u=new jQ({depthPacking:3201}),f=new $Q,p={},m=e.maxTextureSize,_={[tc]:1,[da]:0,[vu]:2},b=new ac({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new ft},radius:{value:4}},vertexShader:"void main() {\n\tgl_Position = vec4( position, 1.0 );\n}",fragmentShader:"uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\n#include \nvoid main() {\n\tconst float samples = float( VSM_SAMPLES );\n\tfloat mean = 0.0;\n\tfloat squared_mean = 0.0;\n\tfloat uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\n\tfloat uvStart = samples <= 1.0 ? 0.0 : - 1.0;\n\tfor ( float i = 0.0; i < samples; i ++ ) {\n\t\tfloat uvOffset = uvStart + i * uvStride;\n\t\t#ifdef HORIZONTAL_PASS\n\t\t\tvec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) );\n\t\t\tmean += distribution.x;\n\t\t\tsquared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\n\t\t#else\n\t\t\tfloat depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) );\n\t\t\tmean += depth;\n\t\t\tsquared_mean += depth * depth;\n\t\t#endif\n\t}\n\tmean = mean / samples;\n\tsquared_mean = squared_mean / samples;\n\tfloat std_dev = sqrt( squared_mean - mean * mean );\n\tgl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\n}"}),w=b.clone();w.defines.HORIZONTAL_PASS=1;const F=new Yi;F.setAttribute("position",new ae(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const D=new dr(F,b),T=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=pB;let I=this.type;function O(J,te){const ie=t.update(D);b.defines.VSM_SAMPLES!==J.blurSamples&&(b.defines.VSM_SAMPLES=J.blurSamples,w.defines.VSM_SAMPLES=J.blurSamples,b.needsUpdate=!0,w.needsUpdate=!0),null===J.mapPass&&(J.mapPass=new oc(r.x,r.y)),b.uniforms.shadow_pass.value=J.map.texture,b.uniforms.resolution.value=J.mapSize,b.uniforms.radius.value=J.radius,n.setRenderTarget(J.mapPass),n.clear(),n.renderBufferDirect(te,null,ie,b,D,null),w.uniforms.shadow_pass.value=J.mapPass.texture,w.uniforms.resolution.value=J.mapSize,w.uniforms.radius.value=J.radius,n.setRenderTarget(J.map),n.clear(),n.renderBufferDirect(te,null,ie,w,D,null)}function R(J,te,ie,W){let q=null;const ce=!0===ie.isPointLight?J.customDistanceMaterial:J.customDepthMaterial;if(void 0!==ce)q=ce;else if(q=!0===ie.isPointLight?f:u,n.localClippingEnabled&&!0===te.clipShadows&&Array.isArray(te.clippingPlanes)&&0!==te.clippingPlanes.length||te.displacementMap&&0!==te.displacementScale||te.alphaMap&&te.alphaTest>0||te.map&&te.alphaTest>0){const ke=q.uuid,Ue=te.uuid;let de=p[ke];void 0===de&&(de={},p[ke]=de);let ze=de[Ue];void 0===ze&&(ze=q.clone(),de[Ue]=ze,te.addEventListener("dispose",ee)),q=ze}return q.visible=te.visible,q.wireframe=te.wireframe,q.side=W===bu?null!==te.shadowSide?te.shadowSide:te.side:null!==te.shadowSide?te.shadowSide:_[te.side],q.alphaMap=te.alphaMap,q.alphaTest=te.alphaTest,q.map=te.map,q.clipShadows=te.clipShadows,q.clippingPlanes=te.clippingPlanes,q.clipIntersection=te.clipIntersection,q.displacementMap=te.displacementMap,q.displacementScale=te.displacementScale,q.displacementBias=te.displacementBias,q.wireframeLinewidth=te.wireframeLinewidth,q.linewidth=te.linewidth,!0===ie.isPointLight&&!0===q.isMeshDistanceMaterial&&(n.properties.get(q).light=ie),q}function P(J,te,ie,W,q){if(!1===J.visible)return;if(J.layers.test(te.layers)&&(J.isMesh||J.isLine||J.isPoints)&&(J.castShadow||J.receiveShadow&&q===bu)&&(!J.frustumCulled||i.intersectsObject(J))){J.modelViewMatrix.multiplyMatrices(ie.matrixWorldInverse,J.matrixWorld);const Ue=t.update(J),de=J.material;if(Array.isArray(de)){const ze=Ue.groups;for(let Ce=0,Oe=ze.length;Cem||r.y>m)&&(r.x>m&&(s.x=Math.floor(m/ht.x),r.x=s.x*ht.x,Fe.mapSize.x=s.x),r.y>m&&(s.y=Math.floor(m/ht.y),r.y=s.y*ht.y,Fe.mapSize.y=s.y)),null===Fe.map||!0===Ue||!0===de){const Bt=this.type!==bu?{minFilter:ua,magFilter:ua}:{};null!==Fe.map&&Fe.map.dispose(),Fe.map=new oc(r.x,r.y,Bt),Fe.map.texture.name=Oe.name+".shadowMap",Fe.camera.updateProjectionMatrix()}n.setRenderTarget(Fe.map),n.clear();const Mt=Fe.getViewportCount();for(let Bt=0;Bt=1):-1!==Oe.indexOf("OpenGL ES")&&(Ce=parseFloat(/^OpenGL ES (\d)/.exec(Oe)[1]),ze=Ce>=2);let Fe=null,ht={};const Mt=n.getParameter(n.SCISSOR_BOX),Bt=n.getParameter(n.VIEWPORT),rn=(new so).fromArray(Mt),Kn=(new so).fromArray(Bt);function Me(ut,xn,$t,Kt){const In=new Uint8Array(4),nr=n.createTexture();n.bindTexture(ut,nr),n.texParameteri(ut,n.TEXTURE_MIN_FILTER,n.NEAREST),n.texParameteri(ut,n.TEXTURE_MAG_FILTER,n.NEAREST);for(let jr=0;jr<$t;jr++)ut===n.TEXTURE_3D||ut===n.TEXTURE_2D_ARRAY?n.texImage3D(xn,0,n.RGBA,1,1,Kt,0,n.RGBA,n.UNSIGNED_BYTE,In):n.texImage2D(xn+jr,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,In);return nr}const be={};function Ae(ut){!0!==p[ut]&&(n.enable(ut),p[ut]=!0)}function le(ut){!1!==p[ut]&&(n.disable(ut),p[ut]=!1)}be[n.TEXTURE_2D]=Me(n.TEXTURE_2D,n.TEXTURE_2D,1),be[n.TEXTURE_CUBE_MAP]=Me(n.TEXTURE_CUBE_MAP,n.TEXTURE_CUBE_MAP_POSITIVE_X,6),be[n.TEXTURE_2D_ARRAY]=Me(n.TEXTURE_2D_ARRAY,n.TEXTURE_2D_ARRAY,1,1),be[n.TEXTURE_3D]=Me(n.TEXTURE_3D,n.TEXTURE_3D,1,1),r.setClear(0,0,0,1),s.setClear(1),l.setClear(0),Ae(n.DEPTH_TEST),s.setFunc(3),Ct(!1),_t(1),Ae(n.CULL_FACE),yt(0);const zt={[fg]:n.FUNC_ADD,[mb]:n.FUNC_SUBTRACT,[VL]:n.FUNC_REVERSE_SUBTRACT};zt[103]=n.MIN,zt[104]=n.MAX;const ue={[_B]:n.ZERO,[QL]:n.ONE,[zL]:n.SRC_COLOR,[gb]:n.SRC_ALPHA,[bB]:n.SRC_ALPHA_SATURATE,[ME]:n.DST_COLOR,[jL]:n.DST_ALPHA,[GL]:n.ONE_MINUS_SRC_COLOR,[$1]:n.ONE_MINUS_SRC_ALPHA,[L9]:n.ONE_MINUS_DST_COLOR,[q1]:n.ONE_MINUS_DST_ALPHA,[$L]:n.CONSTANT_COLOR,[vB]:n.ONE_MINUS_CONSTANT_COLOR,[pg]:n.CONSTANT_ALPHA,[qL]:n.ONE_MINUS_CONSTANT_ALPHA};function yt(ut,xn,$t,Kt,In,nr,jr,Qs,Oa,uo){if(0!==ut){if(!1===F&&(Ae(n.BLEND),F=!0),5===ut)In=In||xn,nr=nr||$t,jr=jr||Kt,(xn!==T||In!==R)&&(n.blendEquationSeparate(zt[xn],zt[In]),T=xn,R=In),($t!==I||Kt!==O||nr!==P||jr!==ee)&&(n.blendFuncSeparate(ue[$t],ue[Kt],ue[nr],ue[jr]),I=$t,O=Kt,P=nr,ee=jr),(!1===Qs.equals(J)||Oa!==te)&&(n.blendColor(Qs.r,Qs.g,Qs.b,Oa),J.copy(Qs),te=Oa),D=ut,ie=!1;else if(ut!==D||uo!==ie){if((100!==T||100!==R)&&(n.blendEquation(n.FUNC_ADD),T=100,R=100),uo)switch(ut){case 1:n.blendFuncSeparate(n.ONE,n.ONE_MINUS_SRC_ALPHA,n.ONE,n.ONE_MINUS_SRC_ALPHA);break;case 2:n.blendFunc(n.ONE,n.ONE);break;case 3:n.blendFuncSeparate(n.ZERO,n.ONE_MINUS_SRC_COLOR,n.ZERO,n.ONE);break;case 4:n.blendFuncSeparate(n.ZERO,n.SRC_COLOR,n.ZERO,n.SRC_ALPHA);break;default:console.error("THREE.WebGLState: Invalid blending: ",ut)}else switch(ut){case 1:n.blendFuncSeparate(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA,n.ONE,n.ONE_MINUS_SRC_ALPHA);break;case 2:n.blendFunc(n.SRC_ALPHA,n.ONE);break;case 3:n.blendFuncSeparate(n.ZERO,n.ONE_MINUS_SRC_COLOR,n.ZERO,n.ONE);break;case 4:n.blendFunc(n.ZERO,n.SRC_COLOR);break;default:console.error("THREE.WebGLState: Invalid blending: ",ut)}I=null,O=null,P=null,ee=null,J.set(0,0,0),te=0,D=ut,ie=uo}}else!0===F&&(le(n.BLEND),F=!1)}function Ct(ut){W!==ut&&(n.frontFace(ut?n.CW:n.CCW),W=ut)}function _t(ut){0!==ut?(Ae(n.CULL_FACE),ut!==q&&n.cullFace(1===ut?n.BACK:2===ut?n.FRONT:n.FRONT_AND_BACK)):le(n.CULL_FACE),q=ut}function Pe(ut,xn,$t){ut?(Ae(n.POLYGON_OFFSET_FILL),(ke!==xn||Ue!==$t)&&(n.polygonOffset(xn,$t),ke=xn,Ue=$t)):le(n.POLYGON_OFFSET_FILL)}return{buffers:{color:r,depth:s,stencil:l},enable:Ae,disable:le,bindFramebuffer:function dt(ut,xn){return m[ut]!==xn&&(n.bindFramebuffer(ut,xn),m[ut]=xn,ut===n.DRAW_FRAMEBUFFER&&(m[n.FRAMEBUFFER]=xn),ut===n.FRAMEBUFFER&&(m[n.DRAW_FRAMEBUFFER]=xn),!0)},drawBuffers:function Ot(ut,xn){let $t=b,Kt=!1;if(ut){$t=_.get(xn),void 0===$t&&($t=[],_.set(xn,$t));const In=ut.textures;if($t.length!==In.length||$t[0]!==n.COLOR_ATTACHMENT0){for(let nr=0,jr=In.length;nr"u")&&/OculusBrowser/g.test(navigator.userAgent),p=new ft,m=new WeakMap;let _;const b=new WeakMap;let w=!1;try{w=typeof OffscreenCanvas<"u"&&null!==new OffscreenCanvas(1,1).getContext("2d")}catch{}function F(_e,oe){return w?new OffscreenCanvas(_e,oe):uw("canvas")}function D(_e,oe,xt){let Ht=1;const Ut=Se(_e);if((Ut.width>xt||Ut.height>xt)&&(Ht=xt/Math.max(Ut.width,Ut.height)),Ht<1){if(typeof HTMLImageElement<"u"&&_e instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&_e instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&_e instanceof ImageBitmap||typeof VideoFrame<"u"&&_e instanceof VideoFrame){const jt=Math.floor(Ht*Ut.width),Ti=Math.floor(Ht*Ut.height);void 0===_&&(_=F(jt,Ti));const Dn=oe?F(jt,Ti):_;return Dn.width=jt,Dn.height=Ti,Dn.getContext("2d").drawImage(_e,0,0,jt,Ti),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+Ut.width+"x"+Ut.height+") to ("+jt+"x"+Ti+")."),Dn}return"data"in _e&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+Ut.width+"x"+Ut.height+")."),_e}return _e}function T(_e){return _e.generateMipmaps&&_e.minFilter!==ua&&_e.minFilter!==vs}function I(_e){n.generateMipmap(_e)}function O(_e,oe,xt,Ht,Ut=!1){if(null!==_e){if(void 0!==n[_e])return n[_e];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+_e+"'")}let jt=oe;if(oe===n.RED&&(xt===n.FLOAT&&(jt=n.R32F),xt===n.HALF_FLOAT&&(jt=n.R16F),xt===n.UNSIGNED_BYTE&&(jt=n.R8)),oe===n.RED_INTEGER&&(xt===n.UNSIGNED_BYTE&&(jt=n.R8UI),xt===n.UNSIGNED_SHORT&&(jt=n.R16UI),xt===n.UNSIGNED_INT&&(jt=n.R32UI),xt===n.BYTE&&(jt=n.R8I),xt===n.SHORT&&(jt=n.R16I),xt===n.INT&&(jt=n.R32I)),oe===n.RG&&(xt===n.FLOAT&&(jt=n.RG32F),xt===n.HALF_FLOAT&&(jt=n.RG16F),xt===n.UNSIGNED_BYTE&&(jt=n.RG8)),oe===n.RG_INTEGER&&(xt===n.UNSIGNED_BYTE&&(jt=n.RG8UI),xt===n.UNSIGNED_SHORT&&(jt=n.RG16UI),xt===n.UNSIGNED_INT&&(jt=n.RG32UI),xt===n.BYTE&&(jt=n.RG8I),xt===n.SHORT&&(jt=n.RG16I),xt===n.INT&&(jt=n.RG32I)),oe===n.RGB&&xt===n.UNSIGNED_INT_5_9_9_9_REV&&(jt=n.RGB9_E5),oe===n.RGBA){const Ti=Ut?Sb:Pr.getTransfer(Ht);xt===n.FLOAT&&(jt=n.RGBA32F),xt===n.HALF_FLOAT&&(jt=n.RGBA16F),xt===n.UNSIGNED_BYTE&&(jt=Ti===Bo?n.SRGB8_ALPHA8:n.RGBA8),xt===n.UNSIGNED_SHORT_4_4_4_4&&(jt=n.RGBA4),xt===n.UNSIGNED_SHORT_5_5_5_1&&(jt=n.RGB5_A1)}return(jt===n.R16F||jt===n.R32F||jt===n.RG16F||jt===n.RG32F||jt===n.RGBA16F||jt===n.RGBA32F)&&t.get("EXT_color_buffer_float"),jt}function R(_e,oe){let xt;return _e?null===oe||oe===Mu||oe===gg?xt=n.DEPTH24_STENCIL8:oe===wl?xt=n.DEPTH32F_STENCIL8:oe===bb&&(xt=n.DEPTH24_STENCIL8,console.warn("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")):null===oe||oe===Mu||oe===gg?xt=n.DEPTH_COMPONENT24:oe===wl?xt=n.DEPTH_COMPONENT32F:oe===bb&&(xt=n.DEPTH_COMPONENT16),xt}function P(_e,oe){return!0===T(_e)||_e.isFramebufferTexture&&_e.minFilter!==ua&&_e.minFilter!==vs?Math.log2(Math.max(oe.width,oe.height))+1:void 0!==_e.mipmaps&&_e.mipmaps.length>0?_e.mipmaps.length:_e.isCompressedTexture&&Array.isArray(_e.image)?oe.mipmaps.length:1}function ee(_e){const oe=_e.target;oe.removeEventListener("dispose",ee),function te(_e){const oe=i.get(_e);if(void 0===oe.__webglInit)return;const xt=_e.source,Ht=b.get(xt);if(Ht){const Ut=Ht[oe.__cacheKey];Ut.usedTimes--,0===Ut.usedTimes&&ie(_e),0===Object.keys(Ht).length&&b.delete(xt)}i.remove(_e)}(oe),oe.isVideoTexture&&m.delete(oe)}function J(_e){const oe=_e.target;oe.removeEventListener("dispose",J),function W(_e){const oe=i.get(_e);if(_e.depthTexture&&_e.depthTexture.dispose(),_e.isWebGLCubeRenderTarget)for(let Ht=0;Ht<6;Ht++){if(Array.isArray(oe.__webglFramebuffer[Ht]))for(let Ut=0;Ut0&&xt.__version!==_e.version){const Ht=_e.image;if(null===Ht)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else{if(!1!==Ht.complete)return void Kn(xt,_e,oe);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}e.bindTexture(n.TEXTURE_2D,xt.__webglTexture,n.TEXTURE0+oe)}const Fe={[_b]:n.REPEAT,[Sd]:n.CLAMP_TO_EDGE,[IE]:n.MIRRORED_REPEAT},ht={[ua]:n.NEAREST,[FE]:n.NEAREST_MIPMAP_NEAREST,[Y1]:n.NEAREST_MIPMAP_LINEAR,[vs]:n.LINEAR,[kh]:n.LINEAR_MIPMAP_NEAREST,[xu]:n.LINEAR_MIPMAP_LINEAR},Mt={[KB]:n.NEVER,[K9]:n.ALWAYS,[YB]:n.LESS,[ZB]:n.LEQUAL,[l5]:n.EQUAL,[X9]:n.GEQUAL,[q9]:n.GREATER,[W9]:n.NOTEQUAL};function Bt(_e,oe){if(oe.type===wl&&!1===t.has("OES_texture_float_linear")&&(oe.magFilter===vs||1007===oe.magFilter||1005===oe.magFilter||oe.magFilter===xu||oe.minFilter===vs||1007===oe.minFilter||1005===oe.minFilter||oe.minFilter===xu)&&console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."),n.texParameteri(_e,n.TEXTURE_WRAP_S,Fe[oe.wrapS]),n.texParameteri(_e,n.TEXTURE_WRAP_T,Fe[oe.wrapT]),(_e===n.TEXTURE_3D||_e===n.TEXTURE_2D_ARRAY)&&n.texParameteri(_e,n.TEXTURE_WRAP_R,Fe[oe.wrapR]),n.texParameteri(_e,n.TEXTURE_MAG_FILTER,ht[oe.magFilter]),n.texParameteri(_e,n.TEXTURE_MIN_FILTER,ht[oe.minFilter]),oe.compareFunction&&(n.texParameteri(_e,n.TEXTURE_COMPARE_MODE,n.COMPARE_REF_TO_TEXTURE),n.texParameteri(_e,n.TEXTURE_COMPARE_FUNC,Mt[oe.compareFunction])),!0===t.has("EXT_texture_filter_anisotropic")){if(oe.magFilter===ua||1005!==oe.minFilter&&oe.minFilter!==xu||oe.type===wl&&!1===t.has("OES_texture_float_linear"))return;if(oe.anisotropy>1||i.get(oe).__currentAnisotropy){const xt=t.get("EXT_texture_filter_anisotropic");n.texParameterf(_e,xt.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(oe.anisotropy,r.getMaxAnisotropy())),i.get(oe).__currentAnisotropy=oe.anisotropy}}}function rn(_e,oe){let xt=!1;void 0===_e.__webglInit&&(_e.__webglInit=!0,oe.addEventListener("dispose",ee));const Ht=oe.source;let Ut=b.get(Ht);void 0===Ut&&(Ut={},b.set(Ht,Ut));const jt=function Ue(_e){const oe=[];return oe.push(_e.wrapS),oe.push(_e.wrapT),oe.push(_e.wrapR||0),oe.push(_e.magFilter),oe.push(_e.minFilter),oe.push(_e.anisotropy),oe.push(_e.internalFormat),oe.push(_e.format),oe.push(_e.type),oe.push(_e.generateMipmaps),oe.push(_e.premultiplyAlpha),oe.push(_e.flipY),oe.push(_e.unpackAlignment),oe.push(_e.colorSpace),oe.join()}(oe);if(jt!==_e.__cacheKey){void 0===Ut[jt]&&(Ut[jt]={texture:n.createTexture(),usedTimes:0},l.memory.textures++,xt=!0),Ut[jt].usedTimes++;const Ti=Ut[_e.__cacheKey];void 0!==Ti&&(Ut[_e.__cacheKey].usedTimes--,0===Ti.usedTimes&&ie(oe)),_e.__cacheKey=jt,_e.__webglTexture=Ut[jt].texture}return xt}function Kn(_e,oe,xt){let Ht=n.TEXTURE_2D;(oe.isDataArrayTexture||oe.isCompressedArrayTexture)&&(Ht=n.TEXTURE_2D_ARRAY),oe.isData3DTexture&&(Ht=n.TEXTURE_3D);const Ut=rn(_e,oe),jt=oe.source;e.bindTexture(Ht,_e.__webglTexture,n.TEXTURE0+xt);const Ti=i.get(jt);if(jt.version!==Ti.__version||!0===Ut){e.activeTexture(n.TEXTURE0+xt);const Dn=Pr.getPrimaries(Pr.workingColorSpace),Yn=""===oe.colorSpace?null:Pr.getPrimaries(oe.colorSpace),or=""===oe.colorSpace||Dn===Yn?n.NONE:n.BROWSER_DEFAULT_WEBGL;n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,oe.flipY),n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,oe.premultiplyAlpha),n.pixelStorei(n.UNPACK_ALIGNMENT,oe.unpackAlignment),n.pixelStorei(n.UNPACK_COLORSPACE_CONVERSION_WEBGL,or);let hn=D(oe.image,!1,r.maxTextureSize);hn=Pe(oe,hn);const Zn=s.convert(oe.format,oe.colorSpace),Br=s.convert(oe.type);let di,tr=O(oe.internalFormat,Zn,Br,oe.colorSpace,oe.isVideoTexture);Bt(Ht,oe);const ur=oe.mipmaps,Er=!0!==oe.isVideoTexture,ss=void 0===Ti.__version||!0===Ut,ut=jt.dataReady,xn=P(oe,hn);if(oe.isDepthTexture)tr=R(oe.format===bg,oe.type),ss&&(Er?e.texStorage2D(n.TEXTURE_2D,1,tr,hn.width,hn.height):e.texImage2D(n.TEXTURE_2D,0,tr,hn.width,hn.height,0,Zn,Br,null));else if(oe.isDataTexture)if(ur.length>0){Er&&ss&&e.texStorage2D(n.TEXTURE_2D,xn,tr,ur[0].width,ur[0].height);for(let $t=0,Kt=ur.length;$t0){const In=U5(di.width,di.height,oe.format,oe.type);for(const nr of oe.layerUpdates){const jr=di.data.subarray(nr*In/di.data.BYTES_PER_ELEMENT,(nr+1)*In/di.data.BYTES_PER_ELEMENT);e.compressedTexSubImage3D(n.TEXTURE_2D_ARRAY,$t,0,0,nr,di.width,di.height,1,Zn,jr,0,0)}oe.clearLayerUpdates()}else e.compressedTexSubImage3D(n.TEXTURE_2D_ARRAY,$t,0,0,0,di.width,di.height,hn.depth,Zn,di.data,0,0)}else e.compressedTexImage3D(n.TEXTURE_2D_ARRAY,$t,tr,di.width,di.height,hn.depth,0,di.data,0,0);else console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");else Er?ut&&e.texSubImage3D(n.TEXTURE_2D_ARRAY,$t,0,0,0,di.width,di.height,hn.depth,Zn,Br,di.data):e.texImage3D(n.TEXTURE_2D_ARRAY,$t,tr,di.width,di.height,hn.depth,0,Zn,Br,di.data)}else{Er&&ss&&e.texStorage2D(n.TEXTURE_2D,xn,tr,ur[0].width,ur[0].height);for(let $t=0,Kt=ur.length;$t0){const $t=U5(hn.width,hn.height,oe.format,oe.type);for(const Kt of oe.layerUpdates){const In=hn.data.subarray(Kt*$t/hn.data.BYTES_PER_ELEMENT,(Kt+1)*$t/hn.data.BYTES_PER_ELEMENT);e.texSubImage3D(n.TEXTURE_2D_ARRAY,0,0,0,Kt,hn.width,hn.height,1,Zn,Br,In)}oe.clearLayerUpdates()}else e.texSubImage3D(n.TEXTURE_2D_ARRAY,0,0,0,0,hn.width,hn.height,hn.depth,Zn,Br,hn.data)}else e.texImage3D(n.TEXTURE_2D_ARRAY,0,tr,hn.width,hn.height,hn.depth,0,Zn,Br,hn.data);else if(oe.isData3DTexture)Er?(ss&&e.texStorage3D(n.TEXTURE_3D,xn,tr,hn.width,hn.height,hn.depth),ut&&e.texSubImage3D(n.TEXTURE_3D,0,0,0,0,hn.width,hn.height,hn.depth,Zn,Br,hn.data)):e.texImage3D(n.TEXTURE_3D,0,tr,hn.width,hn.height,hn.depth,0,Zn,Br,hn.data);else if(oe.isFramebufferTexture){if(ss)if(Er)e.texStorage2D(n.TEXTURE_2D,xn,tr,hn.width,hn.height);else{let $t=hn.width,Kt=hn.height;for(let In=0;In>=1,Kt>>=1}}else if(ur.length>0){if(Er&&ss){const $t=Se(ur[0]);e.texStorage2D(n.TEXTURE_2D,xn,tr,$t.width,$t.height)}for(let $t=0,Kt=ur.length;$t>jt),Zn=Math.max(1,oe.height>>jt);Ut===n.TEXTURE_3D||Ut===n.TEXTURE_2D_ARRAY?e.texImage3D(Ut,jt,Yn,hn,Zn,oe.depth,0,Ti,Dn,null):e.texImage2D(Ut,jt,Yn,hn,Zn,0,Ti,Dn,null)}e.bindFramebuffer(n.FRAMEBUFFER,_e),_t(oe)?u.framebufferTexture2DMultisampleEXT(n.FRAMEBUFFER,Ht,Ut,i.get(xt).__webglTexture,0,Ct(oe)):(Ut===n.TEXTURE_2D||Ut>=n.TEXTURE_CUBE_MAP_POSITIVE_X&&Ut<=n.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&n.framebufferTexture2D(n.FRAMEBUFFER,Ht,Ut,i.get(xt).__webglTexture,jt),e.bindFramebuffer(n.FRAMEBUFFER,null)}function Ae(_e,oe,xt){if(n.bindRenderbuffer(n.RENDERBUFFER,_e),oe.depthBuffer){const Ht=oe.depthTexture,jt=R(oe.stencilBuffer,Ht&&Ht.isDepthTexture?Ht.type:null),Ti=oe.stencilBuffer?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,Dn=Ct(oe);_t(oe)?u.renderbufferStorageMultisampleEXT(n.RENDERBUFFER,Dn,jt,oe.width,oe.height):xt?n.renderbufferStorageMultisample(n.RENDERBUFFER,Dn,jt,oe.width,oe.height):n.renderbufferStorage(n.RENDERBUFFER,jt,oe.width,oe.height),n.framebufferRenderbuffer(n.FRAMEBUFFER,Ti,n.RENDERBUFFER,_e)}else{const Ht=oe.textures;for(let Ut=0;Ut{delete oe.__boundDepthTexture,delete oe.__depthDisposeCallback,Ht.removeEventListener("dispose",Ut)};Ht.addEventListener("dispose",Ut),oe.__depthDisposeCallback=Ut}oe.__boundDepthTexture=Ht}if(_e.depthTexture&&!oe.__autoAllocateDepthBuffer){if(xt)throw new Error("target.depthTexture not supported in Cube render targets");!function le(_e,oe){if(oe&&oe.isWebGLCubeRenderTarget)throw new Error("Depth Texture with cube render targets is not supported");if(e.bindFramebuffer(n.FRAMEBUFFER,_e),!oe.depthTexture||!oe.depthTexture.isDepthTexture)throw new Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");(!i.get(oe.depthTexture).__webglTexture||oe.depthTexture.image.width!==oe.width||oe.depthTexture.image.height!==oe.height)&&(oe.depthTexture.image.width=oe.width,oe.depthTexture.image.height=oe.height,oe.depthTexture.needsUpdate=!0),de(oe.depthTexture,0);const Ht=i.get(oe.depthTexture).__webglTexture,Ut=Ct(oe);if(oe.depthTexture.format===_g)_t(oe)?u.framebufferTexture2DMultisampleEXT(n.FRAMEBUFFER,n.DEPTH_ATTACHMENT,n.TEXTURE_2D,Ht,0,Ut):n.framebufferTexture2D(n.FRAMEBUFFER,n.DEPTH_ATTACHMENT,n.TEXTURE_2D,Ht,0);else{if(oe.depthTexture.format!==bg)throw new Error("Unknown depthTexture format");_t(oe)?u.framebufferTexture2DMultisampleEXT(n.FRAMEBUFFER,n.DEPTH_STENCIL_ATTACHMENT,n.TEXTURE_2D,Ht,0,Ut):n.framebufferTexture2D(n.FRAMEBUFFER,n.DEPTH_STENCIL_ATTACHMENT,n.TEXTURE_2D,Ht,0)}}(oe.__webglFramebuffer,_e)}else if(xt){oe.__webglDepthbuffer=[];for(let Ht=0;Ht<6;Ht++)if(e.bindFramebuffer(n.FRAMEBUFFER,oe.__webglFramebuffer[Ht]),void 0===oe.__webglDepthbuffer[Ht])oe.__webglDepthbuffer[Ht]=n.createRenderbuffer(),Ae(oe.__webglDepthbuffer[Ht],_e,!1);else{const Ut=_e.stencilBuffer?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,jt=oe.__webglDepthbuffer[Ht];n.bindRenderbuffer(n.RENDERBUFFER,jt),n.framebufferRenderbuffer(n.FRAMEBUFFER,Ut,n.RENDERBUFFER,jt)}}else if(e.bindFramebuffer(n.FRAMEBUFFER,oe.__webglFramebuffer),void 0===oe.__webglDepthbuffer)oe.__webglDepthbuffer=n.createRenderbuffer(),Ae(oe.__webglDepthbuffer,_e,!1);else{const Ht=_e.stencilBuffer?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,Ut=oe.__webglDepthbuffer;n.bindRenderbuffer(n.RENDERBUFFER,Ut),n.framebufferRenderbuffer(n.FRAMEBUFFER,Ht,n.RENDERBUFFER,Ut)}e.bindFramebuffer(n.FRAMEBUFFER,null)}const ue=[],yt=[];function Ct(_e){return Math.min(r.maxSamples,_e.samples)}function _t(_e){const oe=i.get(_e);return _e.samples>0&&!0===t.has("WEBGL_multisampled_render_to_texture")&&!1!==oe.__useRenderToTexture}function Pe(_e,oe){const xt=_e.colorSpace,Ht=_e.format,Ut=_e.type;return!0===_e.isCompressedTexture||!0===_e.isVideoTexture||xt!==Ph&&""!==xt&&(Pr.getTransfer(xt)===Bo?(Ht!==Da||Ut!==Cu)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture color space:",xt)),oe}function Se(_e){return typeof HTMLImageElement<"u"&&_e instanceof HTMLImageElement?(p.width=_e.naturalWidth||_e.width,p.height=_e.naturalHeight||_e.height):typeof VideoFrame<"u"&&_e instanceof VideoFrame?(p.width=_e.displayWidth,p.height=_e.displayHeight):(p.width=_e.width,p.height=_e.height),p}this.allocateTextureUnit=function ke(){const _e=q;return _e>=r.maxTextures&&console.warn("THREE.WebGLTextures: Trying to use "+_e+" texture units while this GPU supports only "+r.maxTextures),q+=1,_e},this.resetTextureUnits=function ce(){q=0},this.setTexture2D=de,this.setTexture2DArray=function ze(_e,oe){const xt=i.get(_e);_e.version>0&&xt.__version!==_e.version?Kn(xt,_e,oe):e.bindTexture(n.TEXTURE_2D_ARRAY,xt.__webglTexture,n.TEXTURE0+oe)},this.setTexture3D=function Ce(_e,oe){const xt=i.get(_e);_e.version>0&&xt.__version!==_e.version?Kn(xt,_e,oe):e.bindTexture(n.TEXTURE_3D,xt.__webglTexture,n.TEXTURE0+oe)},this.setTextureCube=function Oe(_e,oe){const xt=i.get(_e);_e.version>0&&xt.__version!==_e.version?function Me(_e,oe,xt){if(6!==oe.image.length)return;const Ht=rn(_e,oe),Ut=oe.source;e.bindTexture(n.TEXTURE_CUBE_MAP,_e.__webglTexture,n.TEXTURE0+xt);const jt=i.get(Ut);if(Ut.version!==jt.__version||!0===Ht){e.activeTexture(n.TEXTURE0+xt);const Ti=Pr.getPrimaries(Pr.workingColorSpace),Dn=""===oe.colorSpace?null:Pr.getPrimaries(oe.colorSpace),Yn=""===oe.colorSpace||Ti===Dn?n.NONE:n.BROWSER_DEFAULT_WEBGL;n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,oe.flipY),n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,oe.premultiplyAlpha),n.pixelStorei(n.UNPACK_ALIGNMENT,oe.unpackAlignment),n.pixelStorei(n.UNPACK_COLORSPACE_CONVERSION_WEBGL,Yn);const or=oe.isCompressedTexture||oe.image[0].isCompressedTexture,hn=oe.image[0]&&oe.image[0].isDataTexture,Zn=[];for(let Kt=0;Kt<6;Kt++)Zn[Kt]=or||hn?hn?oe.image[Kt].image:oe.image[Kt]:D(oe.image[Kt],!0,r.maxCubemapSize),Zn[Kt]=Pe(oe,Zn[Kt]);const Br=Zn[0],tr=s.convert(oe.format,oe.colorSpace),di=s.convert(oe.type),ur=O(oe.internalFormat,tr,di,oe.colorSpace),Er=!0!==oe.isVideoTexture,ss=void 0===jt.__version||!0===Ht,ut=Ut.dataReady;let $t,xn=P(oe,Br);if(Bt(n.TEXTURE_CUBE_MAP,oe),or){Er&&ss&&e.texStorage2D(n.TEXTURE_CUBE_MAP,xn,ur,Br.width,Br.height);for(let Kt=0;Kt<6;Kt++){$t=Zn[Kt].mipmaps;for(let In=0;In<$t.length;In++){const nr=$t[In];oe.format!==Da?null!==tr?Er?ut&&e.compressedTexSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In,0,0,nr.width,nr.height,tr,nr.data):e.compressedTexImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In,ur,nr.width,nr.height,0,nr.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In,0,0,nr.width,nr.height,tr,di,nr.data):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In,ur,nr.width,nr.height,0,tr,di,nr.data)}}}else{if($t=oe.mipmaps,Er&&ss){$t.length>0&&xn++;const Kt=Se(Zn[0]);e.texStorage2D(n.TEXTURE_CUBE_MAP,xn,ur,Kt.width,Kt.height)}for(let Kt=0;Kt<6;Kt++)if(hn){Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,0,0,0,Zn[Kt].width,Zn[Kt].height,tr,di,Zn[Kt].data):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,0,ur,Zn[Kt].width,Zn[Kt].height,0,tr,di,Zn[Kt].data);for(let In=0;In<$t.length;In++){const jr=$t[In].image[Kt].image;Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In+1,0,0,jr.width,jr.height,tr,di,jr.data):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In+1,ur,jr.width,jr.height,0,tr,di,jr.data)}}else{Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,0,0,0,tr,di,Zn[Kt]):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,0,ur,tr,di,Zn[Kt]);for(let In=0;In<$t.length;In++){const nr=$t[In];Er?ut&&e.texSubImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In+1,0,0,tr,di,nr.image[Kt]):e.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+Kt,In+1,ur,tr,di,nr.image[Kt])}}}T(oe)&&I(n.TEXTURE_CUBE_MAP),jt.__version=Ut.version,oe.onUpdate&&oe.onUpdate(oe)}_e.__version=oe.version}(xt,_e,oe):e.bindTexture(n.TEXTURE_CUBE_MAP,xt.__webglTexture,n.TEXTURE0+oe)},this.rebindTextures=function Ot(_e,oe,xt){const Ht=i.get(_e);void 0!==oe&&be(Ht.__webglFramebuffer,_e,_e.texture,n.COLOR_ATTACHMENT0,n.TEXTURE_2D,0),void 0!==xt&&dt(_e)},this.setupRenderTarget=function at(_e){const oe=_e.texture,xt=i.get(_e),Ht=i.get(oe);_e.addEventListener("dispose",J);const Ut=_e.textures,jt=!0===_e.isWebGLCubeRenderTarget,Ti=Ut.length>1;if(Ti||(void 0===Ht.__webglTexture&&(Ht.__webglTexture=n.createTexture()),Ht.__version=oe.version,l.memory.textures++),jt){xt.__webglFramebuffer=[];for(let Dn=0;Dn<6;Dn++)if(oe.mipmaps&&oe.mipmaps.length>0){xt.__webglFramebuffer[Dn]=[];for(let Yn=0;Yn0){xt.__webglFramebuffer=[];for(let Dn=0;Dn0&&!1===_t(_e)){xt.__webglMultisampledFramebuffer=n.createFramebuffer(),xt.__webglColorRenderbuffer=[],e.bindFramebuffer(n.FRAMEBUFFER,xt.__webglMultisampledFramebuffer);for(let Dn=0;Dn0)for(let Yn=0;Yn0)for(let Yn=0;Yn0)if(!1===_t(_e)){const oe=_e.textures,xt=_e.width,Ht=_e.height;let Ut=n.COLOR_BUFFER_BIT;const jt=_e.stencilBuffer?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,Ti=i.get(_e),Dn=oe.length>1;if(Dn)for(let Yn=0;Ynw+F?(p.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!p.inputState.pinching&&b<=w-F&&(p.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else null!==f&&t.gripSpace&&(s=e.getPose(t.gripSpace,i),null!==s&&(f.matrix.fromArray(s.transform.matrix),f.matrix.decompose(f.position,f.rotation,f.scale),f.matrixWorldNeedsUpdate=!0,s.linearVelocity?(f.hasLinearVelocity=!0,f.linearVelocity.copy(s.linearVelocity)):f.hasLinearVelocity=!1,s.angularVelocity?(f.hasAngularVelocity=!0,f.angularVelocity.copy(s.angularVelocity)):f.hasAngularVelocity=!1));null!==u&&(r=e.getPose(t.targetRaySpace,i),null===r&&null!==s&&(r=s),null!==r&&(u.matrix.fromArray(r.transform.matrix),u.matrix.decompose(u.position,u.rotation,u.scale),u.matrixWorldNeedsUpdate=!0,r.linearVelocity?(u.hasLinearVelocity=!0,u.linearVelocity.copy(r.linearVelocity)):u.hasLinearVelocity=!1,r.angularVelocity?(u.hasAngularVelocity=!0,u.angularVelocity.copy(r.angularVelocity)):u.hasAngularVelocity=!1,this.dispatchEvent(wne)))}return null!==u&&(u.visible=null!==r),null!==f&&(f.visible=null!==s),null!==p&&(p.visible=null!==l),this}_getHandJoint(t,e){if(void 0===t.joints[e.jointName]){const i=new lc;i.matrixAutoUpdate=!1,i.visible=!1,t.joints[e.jointName]=i,t.add(i)}return t.joints[e.jointName]}}class Mne{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(t,e,i){if(null===this.texture){const r=new Wa;t.properties.get(r).__webglTexture=e.texture,(e.depthNear!=i.depthNear||e.depthFar!=i.depthFar)&&(this.depthNear=e.depthNear,this.depthFar=e.depthFar),this.texture=r}}getMesh(t){if(null!==this.texture&&null===this.mesh){const e=t.cameras[0].viewport,i=new ac({vertexShader:"\nvoid main() {\n\n\tgl_Position = vec4( position, 1.0 );\n\n}",fragmentShader:"\nuniform sampler2DArray depthColor;\nuniform float depthWidth;\nuniform float depthHeight;\n\nvoid main() {\n\n\tvec2 coord = vec2( gl_FragCoord.x / depthWidth, gl_FragCoord.y / depthHeight );\n\n\tif ( coord.x >= 1.0 ) {\n\n\t\tgl_FragDepth = texture( depthColor, vec3( coord.x - 1.0, coord.y, 1 ) ).r;\n\n\t} else {\n\n\t\tgl_FragDepth = texture( depthColor, vec3( coord.x, coord.y, 0 ) ).r;\n\n\t}\n\n}",uniforms:{depthColor:{value:this.texture},depthWidth:{value:e.z},depthHeight:{value:e.w}}});this.mesh=new dr(new Iw(20,20),i)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}}class Ene extends rc{constructor(t,e){super();const i=this;let r=null,s=1,l=null,u="local-floor",f=1,p=null,m=null,_=null,b=null,w=null,F=null;const D=new Mne,T=e.getContextAttributes();let I=null,O=null;const R=[],P=[],ee=new ft;let J=null;const te=new Js;te.layers.enable(1),te.viewport=new so;const ie=new Js;ie.layers.enable(2),ie.viewport=new so;const W=[te,ie],q=new yne;q.layers.enable(1),q.layers.enable(2);let ce=null,ke=null;function Ue(Me){const be=P.indexOf(Me.inputSource);if(-1===be)return;const Ae=R[be];void 0!==Ae&&(Ae.update(Me.inputSource,Me.frame,p||l),Ae.dispatchEvent({type:Me.type,data:Me.inputSource}))}function de(){r.removeEventListener("select",Ue),r.removeEventListener("selectstart",Ue),r.removeEventListener("selectend",Ue),r.removeEventListener("squeeze",Ue),r.removeEventListener("squeezestart",Ue),r.removeEventListener("squeezeend",Ue),r.removeEventListener("end",de),r.removeEventListener("inputsourceschange",ze);for(let Me=0;Me=0&&(P[le]=null,R[le].disconnect(Ae))}for(let be=0;be=P.length){P.push(Ae),le=Ot;break}if(null===P[Ot]){P[Ot]=Ae,le=Ot;break}}if(-1===le)break}const dt=R[le];dt&&dt.connect(Ae)}}this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(Me){let be=R[Me];return void 0===be&&(be=new V5,R[Me]=be),be.getTargetRaySpace()},this.getControllerGrip=function(Me){let be=R[Me];return void 0===be&&(be=new V5,R[Me]=be),be.getGripSpace()},this.getHand=function(Me){let be=R[Me];return void 0===be&&(be=new V5,R[Me]=be),be.getHandSpace()},this.setFramebufferScaleFactor=function(Me){s=Me,!0===i.isPresenting&&console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(Me){u=Me,!0===i.isPresenting&&console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return p||l},this.setReferenceSpace=function(Me){p=Me},this.getBaseLayer=function(){return null!==b?b:w},this.getBinding=function(){return _},this.getFrame=function(){return F},this.getSession=function(){return r},this.setSession=function(){var Me=Mn(function*(be){if(r=be,null!==r){if(I=t.getRenderTarget(),r.addEventListener("select",Ue),r.addEventListener("selectstart",Ue),r.addEventListener("selectend",Ue),r.addEventListener("squeeze",Ue),r.addEventListener("squeezestart",Ue),r.addEventListener("squeezeend",Ue),r.addEventListener("end",de),r.addEventListener("inputsourceschange",ze),!0!==T.xrCompatible&&(yield e.makeXRCompatible()),J=t.getPixelRatio(),t.getSize(ee),void 0===r.renderState.layers)w=new XRWebGLLayer(r,e,{antialias:T.antialias,alpha:!0,depth:T.depth,stencil:T.stencil,framebufferScaleFactor:s}),r.updateRenderState({baseLayer:w}),t.setPixelRatio(1),t.setSize(w.framebufferWidth,w.framebufferHeight,!1),O=new oc(w.framebufferWidth,w.framebufferHeight,{format:Da,type:Cu,colorSpace:t.outputColorSpace,stencilBuffer:T.stencil});else{let Ae=null,le=null,dt=null;T.depth&&(dt=T.stencil?e.DEPTH24_STENCIL8:e.DEPTH_COMPONENT24,Ae=T.stencil?bg:_g,le=T.stencil?gg:Mu);const Ot={colorFormat:e.RGBA8,depthFormat:dt,scaleFactor:s};_=new XRWebGLBinding(r,e),b=_.createProjectionLayer(Ot),r.updateRenderState({layers:[b]}),t.setPixelRatio(1),t.setSize(b.textureWidth,b.textureHeight,!1),O=new oc(b.textureWidth,b.textureHeight,{format:Da,type:Cu,depthTexture:new CQ(b.textureWidth,b.textureHeight,le,void 0,void 0,void 0,void 0,void 0,void 0,Ae),stencilBuffer:T.stencil,colorSpace:t.outputColorSpace,samples:T.antialias?4:0,resolveDepthBuffer:!1===b.ignoreDepthValues})}O.isXRRenderTarget=!0,this.setFoveation(f),p=null,l=yield r.requestReferenceSpace(u),Kn.setContext(r),Kn.start(),i.isPresenting=!0,i.dispatchEvent({type:"sessionstart"})}});return function(be){return Me.apply(this,arguments)}}(),this.getEnvironmentBlendMode=function(){if(null!==r)return r.environmentBlendMode},this.getDepthTexture=function(){return D.getDepthTexture()};const Ce=new pe,Oe=new pe;function ht(Me,be){null===be?Me.matrixWorld.copy(Me.matrix):Me.matrixWorld.multiplyMatrices(be.matrixWorld,Me.matrix),Me.matrixWorldInverse.copy(Me.matrixWorld).invert()}this.updateCamera=function(Me){if(null===r)return;let be=Me.near,Ae=Me.far;null!==D.texture&&(D.depthNear>0&&(be=D.depthNear),D.depthFar>0&&(Ae=D.depthFar)),q.near=ie.near=te.near=be,q.far=ie.far=te.far=Ae,(ce!==q.near||ke!==q.far)&&(r.updateRenderState({depthNear:q.near,depthFar:q.far}),ce=q.near,ke=q.far);const le=Me.parent,dt=q.cameras;ht(q,le);for(let Ot=0;Ot0&&(T.alphaTest.value=I.alphaTest);const O=t.get(I),R=O.envMap,P=O.envMapRotation;R&&(T.envMap.value=R,qb.copy(P),qb.x*=-1,qb.y*=-1,qb.z*=-1,R.isCubeTexture&&!1===R.isRenderTargetTexture&&(qb.y*=-1,qb.z*=-1),T.envMapRotation.value.setFromMatrix4(Sne.makeRotationFromEuler(qb)),T.flipEnvMap.value=R.isCubeTexture&&!1===R.isRenderTargetTexture?-1:1,T.reflectivity.value=I.reflectivity,T.ior.value=I.ior,T.refractionRatio.value=I.refractionRatio),I.lightMap&&(T.lightMap.value=I.lightMap,T.lightMapIntensity.value=I.lightMapIntensity,e(I.lightMap,T.lightMapTransform)),I.aoMap&&(T.aoMap.value=I.aoMap,T.aoMapIntensity.value=I.aoMapIntensity,e(I.aoMap,T.aoMapTransform))}return{refreshFogUniforms:function i(T,I){I.color.getRGB(T.fogColor.value,fQ(n)),I.isFog?(T.fogNear.value=I.near,T.fogFar.value=I.far):I.isFogExp2&&(T.fogDensity.value=I.density)},refreshMaterialUniforms:function r(T,I,O,R,P){I.isMeshBasicMaterial||I.isMeshLambertMaterial?s(T,I):I.isMeshToonMaterial?(s(T,I),function _(T,I){I.gradientMap&&(T.gradientMap.value=I.gradientMap)}(T,I)):I.isMeshPhongMaterial?(s(T,I),function m(T,I){T.specular.value.copy(I.specular),T.shininess.value=Math.max(I.shininess,1e-4)}(T,I)):I.isMeshStandardMaterial?(s(T,I),function b(T,I){T.metalness.value=I.metalness,I.metalnessMap&&(T.metalnessMap.value=I.metalnessMap,e(I.metalnessMap,T.metalnessMapTransform)),T.roughness.value=I.roughness,I.roughnessMap&&(T.roughnessMap.value=I.roughnessMap,e(I.roughnessMap,T.roughnessMapTransform)),I.envMap&&(T.envMapIntensity.value=I.envMapIntensity)}(T,I),I.isMeshPhysicalMaterial&&function w(T,I,O){T.ior.value=I.ior,I.sheen>0&&(T.sheenColor.value.copy(I.sheenColor).multiplyScalar(I.sheen),T.sheenRoughness.value=I.sheenRoughness,I.sheenColorMap&&(T.sheenColorMap.value=I.sheenColorMap,e(I.sheenColorMap,T.sheenColorMapTransform)),I.sheenRoughnessMap&&(T.sheenRoughnessMap.value=I.sheenRoughnessMap,e(I.sheenRoughnessMap,T.sheenRoughnessMapTransform))),I.clearcoat>0&&(T.clearcoat.value=I.clearcoat,T.clearcoatRoughness.value=I.clearcoatRoughness,I.clearcoatMap&&(T.clearcoatMap.value=I.clearcoatMap,e(I.clearcoatMap,T.clearcoatMapTransform)),I.clearcoatRoughnessMap&&(T.clearcoatRoughnessMap.value=I.clearcoatRoughnessMap,e(I.clearcoatRoughnessMap,T.clearcoatRoughnessMapTransform)),I.clearcoatNormalMap&&(T.clearcoatNormalMap.value=I.clearcoatNormalMap,e(I.clearcoatNormalMap,T.clearcoatNormalMapTransform),T.clearcoatNormalScale.value.copy(I.clearcoatNormalScale),1===I.side&&T.clearcoatNormalScale.value.negate())),I.dispersion>0&&(T.dispersion.value=I.dispersion),I.iridescence>0&&(T.iridescence.value=I.iridescence,T.iridescenceIOR.value=I.iridescenceIOR,T.iridescenceThicknessMinimum.value=I.iridescenceThicknessRange[0],T.iridescenceThicknessMaximum.value=I.iridescenceThicknessRange[1],I.iridescenceMap&&(T.iridescenceMap.value=I.iridescenceMap,e(I.iridescenceMap,T.iridescenceMapTransform)),I.iridescenceThicknessMap&&(T.iridescenceThicknessMap.value=I.iridescenceThicknessMap,e(I.iridescenceThicknessMap,T.iridescenceThicknessMapTransform))),I.transmission>0&&(T.transmission.value=I.transmission,T.transmissionSamplerMap.value=O.texture,T.transmissionSamplerSize.value.set(O.width,O.height),I.transmissionMap&&(T.transmissionMap.value=I.transmissionMap,e(I.transmissionMap,T.transmissionMapTransform)),T.thickness.value=I.thickness,I.thicknessMap&&(T.thicknessMap.value=I.thicknessMap,e(I.thicknessMap,T.thicknessMapTransform)),T.attenuationDistance.value=I.attenuationDistance,T.attenuationColor.value.copy(I.attenuationColor)),I.anisotropy>0&&(T.anisotropyVector.value.set(I.anisotropy*Math.cos(I.anisotropyRotation),I.anisotropy*Math.sin(I.anisotropyRotation)),I.anisotropyMap&&(T.anisotropyMap.value=I.anisotropyMap,e(I.anisotropyMap,T.anisotropyMapTransform))),T.specularIntensity.value=I.specularIntensity,T.specularColor.value.copy(I.specularColor),I.specularColorMap&&(T.specularColorMap.value=I.specularColorMap,e(I.specularColorMap,T.specularColorMapTransform)),I.specularIntensityMap&&(T.specularIntensityMap.value=I.specularIntensityMap,e(I.specularIntensityMap,T.specularIntensityMapTransform))}(T,I,P)):I.isMeshMatcapMaterial?(s(T,I),function F(T,I){I.matcap&&(T.matcap.value=I.matcap)}(T,I)):I.isMeshDepthMaterial?s(T,I):I.isMeshDistanceMaterial?(s(T,I),function D(T,I){const O=t.get(I).light;T.referencePosition.value.setFromMatrixPosition(O.matrixWorld),T.nearDistance.value=O.shadow.camera.near,T.farDistance.value=O.shadow.camera.far}(T,I)):I.isMeshNormalMaterial?s(T,I):I.isLineBasicMaterial?(function l(T,I){T.diffuse.value.copy(I.color),T.opacity.value=I.opacity,I.map&&(T.map.value=I.map,e(I.map,T.mapTransform))}(T,I),I.isLineDashedMaterial&&function u(T,I){T.dashSize.value=I.dashSize,T.totalSize.value=I.dashSize+I.gapSize,T.scale.value=I.scale}(T,I)):I.isPointsMaterial?function f(T,I,O,R){T.diffuse.value.copy(I.color),T.opacity.value=I.opacity,T.size.value=I.size*O,T.scale.value=.5*R,I.map&&(T.map.value=I.map,e(I.map,T.uvTransform)),I.alphaMap&&(T.alphaMap.value=I.alphaMap,e(I.alphaMap,T.alphaMapTransform)),I.alphaTest>0&&(T.alphaTest.value=I.alphaTest)}(T,I,O,R):I.isSpriteMaterial?function p(T,I){T.diffuse.value.copy(I.color),T.opacity.value=I.opacity,T.rotation.value=I.rotation,I.map&&(T.map.value=I.map,e(I.map,T.mapTransform)),I.alphaMap&&(T.alphaMap.value=I.alphaMap,e(I.alphaMap,T.alphaMapTransform)),I.alphaTest>0&&(T.alphaTest.value=I.alphaTest)}(T,I):I.isShadowMaterial?(T.color.value.copy(I.color),T.opacity.value=I.opacity):I.isShaderMaterial&&(I.uniformsNeedUpdate=!1)}}}function Ine(n,t,e,i){let r={},s={},l=[];const u=n.getParameter(n.MAX_UNIFORM_BUFFER_BINDINGS);function w(O,R,P,ee){const J=O.value,te=R+"_"+P;if(void 0===ee[te])return ee[te]="number"==typeof J||"boolean"==typeof J?J:J.clone(),!0;{const ie=ee[te];if("number"==typeof J||"boolean"==typeof J){if(ie!==J)return ee[te]=J,!0}else if(!1===ie.equals(J))return ie.copy(J),!0}return!1}function D(O){const R={boundary:0,storage:0};return"number"==typeof O||"boolean"==typeof O?(R.boundary=4,R.storage=4):O.isVector2?(R.boundary=8,R.storage=8):O.isVector3||O.isColor?(R.boundary=16,R.storage=12):O.isVector4?(R.boundary=16,R.storage=16):O.isMatrix3?(R.boundary=48,R.storage=48):O.isMatrix4?(R.boundary=64,R.storage=64):O.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",O),R}function T(O){const R=O.target;R.removeEventListener("dispose",T);const P=l.indexOf(R.__bindingPointIndex);l.splice(P,1),n.deleteBuffer(r[R.id]),delete r[R.id],delete s[R.id]}return{bind:function f(O,R){i.uniformBlockBinding(O,R.program)},update:function p(O,R){let P=r[O.id];void 0===P&&(function F(O){const R=O.uniforms;let P=0;for(let te=0,ie=R.length;te0&&(P+=16-J),O.__size=P,O.__cache={}}(O),P=function m(O){const R=function _(){for(let O=0;O0),Ri=!!Ft.morphAttributes.position,Zr=!!Ft.morphAttributes.normal,jo=!!Ft.morphAttributes.color;let ws=Bh;Dt.toneMapped&&(null===te||!0===te.isXRRenderTarget)&&(ws=R.toneMapping);const Kc=Ft.morphAttributes.position||Ft.morphAttributes.normal||Ft.morphAttributes.color,ho=void 0!==Kc?Kc.length:0,Pi=Pe.get(Dt),Na=T.state.lights;!0!==Me||!0!==be&&ye===W||or.setState(Dt,ye,ye===W&&Dt.id===ie);let fo=!1;Dt.version===Pi.__version?(Pi.needsLights&&Pi.lightsStateVersion!==Na.state.version||Pi.outputColorSpace!==Ci||bt.isBatchedMesh&&!1===Pi.batching||!bt.isBatchedMesh&&!0===Pi.batching||bt.isBatchedMesh&&!0===Pi.batchingColor&&null===bt.colorTexture||bt.isBatchedMesh&&!1===Pi.batchingColor&&null!==bt.colorTexture||bt.isInstancedMesh&&!1===Pi.instancing||!bt.isInstancedMesh&&!0===Pi.instancing||bt.isSkinnedMesh&&!1===Pi.skinning||!bt.isSkinnedMesh&&!0===Pi.skinning||bt.isInstancedMesh&&!0===Pi.instancingColor&&null===bt.instanceColor||bt.isInstancedMesh&&!1===Pi.instancingColor&&null!==bt.instanceColor||bt.isInstancedMesh&&!0===Pi.instancingMorph&&null===bt.morphTexture||bt.isInstancedMesh&&!1===Pi.instancingMorph&&null!==bt.morphTexture||Pi.envMap!==_i||!0===Dt.fog&&Pi.fog!==Cn||void 0!==Pi.numClippingPlanes&&(Pi.numClippingPlanes!==or.numPlanes||Pi.numIntersection!==or.numIntersection)||Pi.vertexAlphas!==Xi||Pi.vertexTangents!==sr||Pi.morphTargets!==Ri||Pi.morphNormals!==Zr||Pi.morphColors!==jo||Pi.toneMapping!==ws||Pi.morphTargetsCount!==ho)&&(fo=!0):(fo=!0,Pi.__version=Dt.version);let ju=Pi.currentProgram;!0===fo&&(ju=GP(Dt,lt,bt));let Sx=!1,Yc=!1,DV=!1;const zs=ju.getUniforms(),m0=Pi.uniforms;if(_t.useProgram(ju.program)&&(Sx=!0,Yc=!0,DV=!0),Dt.id!==ie&&(ie=Dt.id,Yc=!0),Sx||W!==ye){zs.setValue(ue,"projectionMatrix",ye.projectionMatrix),zs.setValue(ue,"viewMatrix",ye.matrixWorldInverse);const Pd=zs.map.cameraPosition;void 0!==Pd&&Pd.setValue(ue,le.setFromMatrixPosition(ye.matrixWorld)),Ct.logarithmicDepthBuffer&&zs.setValue(ue,"logDepthBufFC",2/(Math.log(ye.far+1)/Math.LN2)),(Dt.isMeshPhongMaterial||Dt.isMeshToonMaterial||Dt.isMeshLambertMaterial||Dt.isMeshBasicMaterial||Dt.isMeshStandardMaterial||Dt.isShaderMaterial)&&zs.setValue(ue,"isOrthographic",!0===ye.isOrthographicCamera),W!==ye&&(W=ye,Yc=!0,DV=!0)}if(bt.isSkinnedMesh){zs.setOptional(ue,bt,"bindMatrix"),zs.setOptional(ue,bt,"bindMatrixInverse");const Pd=bt.skeleton;Pd&&(null===Pd.boneTexture&&Pd.computeBoneTexture(),zs.setValue(ue,"boneTexture",Pd.boneTexture,Se))}bt.isBatchedMesh&&(zs.setOptional(ue,bt,"batchingTexture"),zs.setValue(ue,"batchingTexture",bt._matricesTexture,Se),zs.setOptional(ue,bt,"batchingIdTexture"),zs.setValue(ue,"batchingIdTexture",bt._indirectTexture,Se),zs.setOptional(ue,bt,"batchingColorTexture"),null!==bt._colorsTexture&&zs.setValue(ue,"batchingColorTexture",bt._colorsTexture,Se));const BV=Ft.morphAttributes;if((void 0!==BV.position||void 0!==BV.normal||void 0!==BV.color)&&Br.update(bt,Ft,ju),(Yc||Pi.receiveShadow!==bt.receiveShadow)&&(Pi.receiveShadow=bt.receiveShadow,zs.setValue(ue,"receiveShadow",bt.receiveShadow)),Dt.isMeshGouraudMaterial&&null!==Dt.envMap&&(m0.envMap.value=_i,m0.flipEnvMap.value=_i.isCubeTexture&&!1===_i.isRenderTargetTexture?-1:1),Dt.isMeshStandardMaterial&&null===Dt.envMap&&null!==lt.environment&&(m0.envMapIntensity.value=lt.environmentIntensity),Yc&&(zs.setValue(ue,"toneMappingExposure",R.toneMappingExposure),Pi.needsLights&&function gEe(ye,lt){ye.ambientLightColor.needsUpdate=lt,ye.lightProbe.needsUpdate=lt,ye.directionalLights.needsUpdate=lt,ye.directionalLightShadows.needsUpdate=lt,ye.pointLights.needsUpdate=lt,ye.pointLightShadows.needsUpdate=lt,ye.spotLights.needsUpdate=lt,ye.spotLightShadows.needsUpdate=lt,ye.rectAreaLights.needsUpdate=lt,ye.hemisphereLights.needsUpdate=lt}(m0,DV),Cn&&!0===Dt.fog&&Ti.refreshFogUniforms(m0,Cn),Ti.refreshMaterialUniforms(m0,Dt,Oe,Ce,T.state.transmissionRenderTarget[ye.id]),Pk.upload(ue,OY(Pi),m0,Se)),Dt.isShaderMaterial&&!0===Dt.uniformsNeedUpdate&&(Pk.upload(ue,OY(Pi),m0,Se),Dt.uniformsNeedUpdate=!1),Dt.isSpriteMaterial&&zs.setValue(ue,"center",bt.center),zs.setValue(ue,"modelViewMatrix",bt.modelViewMatrix),zs.setValue(ue,"normalMatrix",bt.normalMatrix),zs.setValue(ue,"modelMatrix",bt.matrixWorld),Dt.isShaderMaterial||Dt.isRawShaderMaterial){const Pd=Dt.uniformsGroups;for(let kV=0,bEe=Pd.length;kV{function Cn(){Dt.forEach(function(Jn){Pe.get(Jn).currentProgram.isReady()&&Dt.delete(Jn)}),0!==Dt.size?setTimeout(Cn,10):bt(ye)}null!==Ze.get("KHR_parallel_shader_compile")?Cn():setTimeout(Cn,10)})};let uo=null;function af(){xv.stop()}function BY(){xv.start()}const xv=new mQ;function FV(ye,lt,Ft,Dt){if(!1===ye.visible)return;if(ye.layers.test(lt.layers))if(ye.isGroup)Ft=ye.renderOrder;else if(ye.isLOD)!0===ye.autoUpdate&&ye.update(lt);else if(ye.isLight)T.pushLight(ye),ye.castShadow&&T.pushShadow(ye);else if(ye.isSprite){if(!ye.frustumCulled||Kn.intersectsSprite(ye)){Dt&&dt.setFromMatrixPosition(ye.matrixWorld).applyMatrix4(Ae);const Jn=Ut.update(ye),Ci=ye.material;Ci.visible&&D.push(ye,Jn,Ci,Ft,dt.z,null)}}else if((ye.isMesh||ye.isLine||ye.isPoints)&&(!ye.frustumCulled||Kn.intersectsObject(ye))){const Jn=Ut.update(ye),Ci=ye.material;if(Dt&&(void 0!==ye.boundingSphere?(null===ye.boundingSphere&&ye.computeBoundingSphere(),dt.copy(ye.boundingSphere.center)):(null===Jn.boundingSphere&&Jn.computeBoundingSphere(),dt.copy(Jn.boundingSphere.center)),dt.applyMatrix4(ye.matrixWorld).applyMatrix4(Ae)),Array.isArray(Ci)){const _i=Jn.groups;for(let Xi=0,sr=_i.length;Xi0&&zP(bt,lt,Ft),Cn.length>0&&zP(Cn,lt,Ft),Jn.length>0&&zP(Jn,lt,Ft),_t.buffers.depth.setTest(!0),_t.buffers.depth.setMask(!0),_t.buffers.color.setMask(!0),_t.setPolygonOffset(!1)}function RY(ye,lt,Ft,Dt){if(null!==(!0===Ft.isScene?Ft.overrideMaterial:null))return;void 0===T.state.transmissionRenderTarget[Dt.id]&&(T.state.transmissionRenderTarget[Dt.id]=new oc(1,1,{generateMipmaps:!0,type:Ze.has("EXT_color_buffer_half_float")||Ze.has("EXT_color_buffer_float")?mg:Cu,minFilter:xu,samples:4,stencilBuffer:s,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:Pr.workingColorSpace}));const Cn=T.state.transmissionRenderTarget[Dt.id],Jn=Dt.viewport||q;Cn.setSize(Jn.z,Jn.w);const Ci=R.getRenderTarget();R.setRenderTarget(Cn),R.getClearColor(Ue),de=R.getClearAlpha(),de<1&&R.setClearColor(16777215,.5),R.clear(),at&&Zn.render(Ft);const _i=R.toneMapping;R.toneMapping=Bh;const Xi=Dt.viewport;if(void 0!==Dt.viewport&&(Dt.viewport=void 0),T.setupLightsView(Dt),!0===Me&&or.setGlobalState(R.clippingPlanes,Dt),zP(ye,Ft,Dt),Se.updateMultisampleRenderTarget(Cn),Se.updateRenderTargetMipmap(Cn),!1===Ze.has("WEBGL_multisampled_render_to_texture")){let sr=!1;for(let Ri=0,Zr=lt.length;Ri0)for(let Jn=0,Ci=Cn.length;Jn0&&RY(Dt,bt,ye,lt),at&&Zn.render(ye),kY(D,ye,lt);null!==te&&(Se.updateMultisampleRenderTarget(te),Se.updateRenderTargetMipmap(te)),!0===ye.isScene&&ye.onAfterRender(R,ye,lt),Er.resetDefaultState(),ie=-1,W=null,O.pop(),O.length>0?(T=O[O.length-1],!0===Me&&or.setGlobalState(R.clippingPlanes,T.state.camera)):T=null,I.pop(),D=I.length>0?I[I.length-1]:null},this.getActiveCubeFace=function(){return ee},this.getActiveMipmapLevel=function(){return J},this.getRenderTarget=function(){return te},this.setRenderTargetTextures=function(ye,lt,Ft){Pe.get(ye.texture).__webglTexture=lt,Pe.get(ye.depthTexture).__webglTexture=Ft;const Dt=Pe.get(ye);Dt.__hasExternalTextures=!0,Dt.__autoAllocateDepthBuffer=void 0===Ft,Dt.__autoAllocateDepthBuffer||!0===Ze.has("WEBGL_multisampled_render_to_texture")&&(console.warn("THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided"),Dt.__useRenderToTexture=!1)},this.setRenderTargetFramebuffer=function(ye,lt){const Ft=Pe.get(ye);Ft.__webglFramebuffer=lt,Ft.__useDefaultFramebuffer=void 0===lt},this.setRenderTarget=function(ye,lt=0,Ft=0){te=ye,ee=lt,J=Ft;let Dt=!0,bt=null,Cn=!1,Jn=!1;if(ye){const _i=Pe.get(ye);if(void 0!==_i.__useDefaultFramebuffer)_t.bindFramebuffer(ue.FRAMEBUFFER,null),Dt=!1;else if(void 0===_i.__webglFramebuffer)Se.setupRenderTarget(ye);else if(_i.__hasExternalTextures)Se.rebindTextures(ye,Pe.get(ye.texture).__webglTexture,Pe.get(ye.depthTexture).__webglTexture);else if(ye.depthBuffer){const Ri=ye.depthTexture;if(_i.__boundDepthTexture!==Ri){if(null!==Ri&&Pe.has(Ri)&&(ye.width!==Ri.image.width||ye.height!==Ri.image.height))throw new Error("WebGLRenderTarget: Attached DepthTexture is initialized to the incorrect size.");Se.setupDepthRenderbuffer(ye)}}const Xi=ye.texture;(Xi.isData3DTexture||Xi.isDataArrayTexture||Xi.isCompressedArrayTexture)&&(Jn=!0);const sr=Pe.get(ye).__webglFramebuffer;ye.isWebGLCubeRenderTarget?(bt=Array.isArray(sr[lt])?sr[lt][Ft]:sr[lt],Cn=!0):bt=ye.samples>0&&!1===Se.useMultisampledRTT(ye)?Pe.get(ye).__webglMultisampledFramebuffer:Array.isArray(sr)?sr[Ft]:sr,q.copy(ye.viewport),ce.copy(ye.scissor),ke=ye.scissorTest}else q.copy(Mt).multiplyScalar(Oe).floor(),ce.copy(Bt).multiplyScalar(Oe).floor(),ke=rn;if(_t.bindFramebuffer(ue.FRAMEBUFFER,bt)&&Dt&&_t.drawBuffers(ye,bt),_t.viewport(q),_t.scissor(ce),_t.setScissorTest(ke),Cn){const _i=Pe.get(ye.texture);ue.framebufferTexture2D(ue.FRAMEBUFFER,ue.COLOR_ATTACHMENT0,ue.TEXTURE_CUBE_MAP_POSITIVE_X+lt,_i.__webglTexture,Ft)}else if(Jn){const _i=Pe.get(ye.texture);ue.framebufferTextureLayer(ue.FRAMEBUFFER,ue.COLOR_ATTACHMENT0,_i.__webglTexture,Ft||0,lt||0)}ie=-1},this.readRenderTargetPixels=function(ye,lt,Ft,Dt,bt,Cn,Jn){if(!ye||!ye.isWebGLRenderTarget)return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let Ci=Pe.get(ye).__webglFramebuffer;if(ye.isWebGLCubeRenderTarget&&void 0!==Jn&&(Ci=Ci[Jn]),Ci){_t.bindFramebuffer(ue.FRAMEBUFFER,Ci);try{const _i=ye.texture,Xi=_i.format,sr=_i.type;if(!Ct.textureFormatReadable(Xi))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");if(!Ct.textureTypeReadable(sr))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");lt>=0&<<=ye.width-Dt&&Ft>=0&&Ft<=ye.height-bt&&ue.readPixels(lt,Ft,Dt,bt,ur.convert(Xi),ur.convert(sr),Cn)}finally{const _i=null!==te?Pe.get(te).__webglFramebuffer:null;_t.bindFramebuffer(ue.FRAMEBUFFER,_i)}}},this.readRenderTargetPixelsAsync=function(){var ye=Mn(function*(lt,Ft,Dt,bt,Cn,Jn,Ci){if(!lt||!lt.isWebGLRenderTarget)throw new Error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let _i=Pe.get(lt).__webglFramebuffer;if(lt.isWebGLCubeRenderTarget&&void 0!==Ci&&(_i=_i[Ci]),_i){_t.bindFramebuffer(ue.FRAMEBUFFER,_i);try{const Xi=lt.texture,sr=Xi.format,Ri=Xi.type;if(!Ct.textureFormatReadable(sr))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");if(!Ct.textureTypeReadable(Ri))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");if(Ft>=0&&Ft<=lt.width-bt&&Dt>=0&&Dt<=lt.height-Cn){const Zr=ue.createBuffer();ue.bindBuffer(ue.PIXEL_PACK_BUFFER,Zr),ue.bufferData(ue.PIXEL_PACK_BUFFER,Jn.byteLength,ue.STREAM_READ),ue.readPixels(Ft,Dt,bt,Cn,ur.convert(sr),ur.convert(Ri),0),ue.flush();const jo=ue.fenceSync(ue.SYNC_GPU_COMMANDS_COMPLETE,0);yield function ak(n,t,e){return new Promise(function(i,r){setTimeout(function s(){switch(n.clientWaitSync(t,n.SYNC_FLUSH_COMMANDS_BIT,0)){case n.WAIT_FAILED:r();break;case n.TIMEOUT_EXPIRED:setTimeout(s,e);break;default:i()}},e)})}(ue,jo,4);try{ue.bindBuffer(ue.PIXEL_PACK_BUFFER,Zr),ue.getBufferSubData(ue.PIXEL_PACK_BUFFER,0,Jn)}finally{ue.deleteBuffer(Zr),ue.deleteSync(jo)}return Jn}}finally{const Xi=null!==te?Pe.get(te).__webglFramebuffer:null;_t.bindFramebuffer(ue.FRAMEBUFFER,Xi)}}});return function(lt,Ft,Dt,bt,Cn,Jn,Ci){return ye.apply(this,arguments)}}(),this.copyFramebufferToTexture=function(ye,lt=null,Ft=0){!0!==ye.isTexture&&(Dp("WebGLRenderer: copyFramebufferToTexture function signature has changed."),lt=arguments[0]||null,ye=arguments[1]);const Dt=Math.pow(2,-Ft),bt=Math.floor(ye.image.width*Dt),Cn=Math.floor(ye.image.height*Dt),Jn=null!==lt?lt.x:0,Ci=null!==lt?lt.y:0;Se.setTexture2D(ye,0),ue.copyTexSubImage2D(ue.TEXTURE_2D,Ft,0,0,Jn,Ci,bt,Cn),_t.unbindTexture()},this.copyTextureToTexture=function(ye,lt,Ft=null,Dt=null,bt=0){let Cn,Jn,Ci,_i,Xi,sr;!0!==ye.isTexture&&(Dp("WebGLRenderer: copyTextureToTexture function signature has changed."),Dt=arguments[0]||null,ye=arguments[1],lt=arguments[2],bt=arguments[3]||0,Ft=null),null!==Ft?(Cn=Ft.max.x-Ft.min.x,Jn=Ft.max.y-Ft.min.y,Ci=Ft.min.x,_i=Ft.min.y):(Cn=ye.image.width,Jn=ye.image.height,Ci=0,_i=0),null!==Dt?(Xi=Dt.x,sr=Dt.y):(Xi=0,sr=0);const Ri=ur.convert(lt.format),Zr=ur.convert(lt.type);Se.setTexture2D(lt,0),ue.pixelStorei(ue.UNPACK_FLIP_Y_WEBGL,lt.flipY),ue.pixelStorei(ue.UNPACK_PREMULTIPLY_ALPHA_WEBGL,lt.premultiplyAlpha),ue.pixelStorei(ue.UNPACK_ALIGNMENT,lt.unpackAlignment);const jo=ue.getParameter(ue.UNPACK_ROW_LENGTH),ws=ue.getParameter(ue.UNPACK_IMAGE_HEIGHT),Kc=ue.getParameter(ue.UNPACK_SKIP_PIXELS),ho=ue.getParameter(ue.UNPACK_SKIP_ROWS),Pi=ue.getParameter(ue.UNPACK_SKIP_IMAGES),Na=ye.isCompressedTexture?ye.mipmaps[bt]:ye.image;ue.pixelStorei(ue.UNPACK_ROW_LENGTH,Na.width),ue.pixelStorei(ue.UNPACK_IMAGE_HEIGHT,Na.height),ue.pixelStorei(ue.UNPACK_SKIP_PIXELS,Ci),ue.pixelStorei(ue.UNPACK_SKIP_ROWS,_i),ye.isDataTexture?ue.texSubImage2D(ue.TEXTURE_2D,bt,Xi,sr,Cn,Jn,Ri,Zr,Na.data):ye.isCompressedTexture?ue.compressedTexSubImage2D(ue.TEXTURE_2D,bt,Xi,sr,Na.width,Na.height,Ri,Na.data):ue.texSubImage2D(ue.TEXTURE_2D,bt,Xi,sr,Cn,Jn,Ri,Zr,Na),ue.pixelStorei(ue.UNPACK_ROW_LENGTH,jo),ue.pixelStorei(ue.UNPACK_IMAGE_HEIGHT,ws),ue.pixelStorei(ue.UNPACK_SKIP_PIXELS,Kc),ue.pixelStorei(ue.UNPACK_SKIP_ROWS,ho),ue.pixelStorei(ue.UNPACK_SKIP_IMAGES,Pi),0===bt&<.generateMipmaps&&ue.generateMipmap(ue.TEXTURE_2D),_t.unbindTexture()},this.copyTextureToTexture3D=function(ye,lt,Ft=null,Dt=null,bt=0){let Cn,Jn,Ci,_i,Xi,sr,Ri,Zr,jo;!0!==ye.isTexture&&(Dp("WebGLRenderer: copyTextureToTexture3D function signature has changed."),Ft=arguments[0]||null,Dt=arguments[1]||null,ye=arguments[2],lt=arguments[3],bt=arguments[4]||0);const ws=ye.isCompressedTexture?ye.mipmaps[bt]:ye.image;null!==Ft?(Cn=Ft.max.x-Ft.min.x,Jn=Ft.max.y-Ft.min.y,Ci=Ft.max.z-Ft.min.z,_i=Ft.min.x,Xi=Ft.min.y,sr=Ft.min.z):(Cn=ws.width,Jn=ws.height,Ci=ws.depth,_i=0,Xi=0,sr=0),null!==Dt?(Ri=Dt.x,Zr=Dt.y,jo=Dt.z):(Ri=0,Zr=0,jo=0);const Kc=ur.convert(lt.format),ho=ur.convert(lt.type);let Pi;if(lt.isData3DTexture)Se.setTexture3D(lt,0),Pi=ue.TEXTURE_3D;else{if(!lt.isDataArrayTexture&&!lt.isCompressedArrayTexture)return void console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");Se.setTexture2DArray(lt,0),Pi=ue.TEXTURE_2D_ARRAY}ue.pixelStorei(ue.UNPACK_FLIP_Y_WEBGL,lt.flipY),ue.pixelStorei(ue.UNPACK_PREMULTIPLY_ALPHA_WEBGL,lt.premultiplyAlpha),ue.pixelStorei(ue.UNPACK_ALIGNMENT,lt.unpackAlignment);const Na=ue.getParameter(ue.UNPACK_ROW_LENGTH),fo=ue.getParameter(ue.UNPACK_IMAGE_HEIGHT),ju=ue.getParameter(ue.UNPACK_SKIP_PIXELS),Sx=ue.getParameter(ue.UNPACK_SKIP_ROWS),Yc=ue.getParameter(ue.UNPACK_SKIP_IMAGES);ue.pixelStorei(ue.UNPACK_ROW_LENGTH,ws.width),ue.pixelStorei(ue.UNPACK_IMAGE_HEIGHT,ws.height),ue.pixelStorei(ue.UNPACK_SKIP_PIXELS,_i),ue.pixelStorei(ue.UNPACK_SKIP_ROWS,Xi),ue.pixelStorei(ue.UNPACK_SKIP_IMAGES,sr),ye.isDataTexture||ye.isData3DTexture?ue.texSubImage3D(Pi,bt,Ri,Zr,jo,Cn,Jn,Ci,Kc,ho,ws.data):lt.isCompressedArrayTexture?ue.compressedTexSubImage3D(Pi,bt,Ri,Zr,jo,Cn,Jn,Ci,Kc,ws.data):ue.texSubImage3D(Pi,bt,Ri,Zr,jo,Cn,Jn,Ci,Kc,ho,ws),ue.pixelStorei(ue.UNPACK_ROW_LENGTH,Na),ue.pixelStorei(ue.UNPACK_IMAGE_HEIGHT,fo),ue.pixelStorei(ue.UNPACK_SKIP_PIXELS,ju),ue.pixelStorei(ue.UNPACK_SKIP_ROWS,Sx),ue.pixelStorei(ue.UNPACK_SKIP_IMAGES,Yc),0===bt&<.generateMipmaps&&ue.generateMipmap(Pi),_t.unbindTexture()},this.initRenderTarget=function(ye){void 0===Pe.get(ye).__webglFramebuffer&&Se.setupRenderTarget(ye)},this.initTexture=function(ye){ye.isCubeTexture?Se.setTextureCube(ye,0):ye.isData3DTexture?Se.setTexture3D(ye,0):ye.isDataArrayTexture||ye.isCompressedArrayTexture?Se.setTexture2DArray(ye,0):Se.setTexture2D(ye,0),_t.unbindTexture()},this.resetState=function(){ee=0,J=0,te=null,_t.reset(),Er.reset()},typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return Qc}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(t){this._outputColorSpace=t;const e=this.getContext();e.drawingBufferColorSpace=t===Cg?"display-p3":"srgb",e.unpackColorSpace=Pr.workingColorSpace===Ip?"display-p3":"srgb"}}class Nk extends Oo{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new Iu,this.environmentIntensity=1,this.environmentRotation=new Iu,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(t,e){return super.copy(t,e),null!==t.background&&(this.background=t.background.clone()),null!==t.environment&&(this.environment=t.environment.clone()),null!==t.fog&&(this.fog=t.fog.clone()),this.backgroundBlurriness=t.backgroundBlurriness,this.backgroundIntensity=t.backgroundIntensity,this.backgroundRotation.copy(t.backgroundRotation),this.environmentIntensity=t.environmentIntensity,this.environmentRotation.copy(t.environmentRotation),null!==t.overrideMaterial&&(this.overrideMaterial=t.overrideMaterial.clone()),this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return null!==this.fog&&(e.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(e.object.backgroundBlurriness=this.backgroundBlurriness),1!==this.backgroundIntensity&&(e.object.backgroundIntensity=this.backgroundIntensity),e.object.backgroundRotation=this.backgroundRotation.toArray(),1!==this.environmentIntensity&&(e.object.environmentIntensity=this.environmentIntensity),e.object.environmentRotation=this.environmentRotation.toArray(),e}}class G5{constructor(t,e){this.isInterleavedBuffer=!0,this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.usage=35044,this._updateRange={offset:0,count:-1},this.updateRanges=[],this.version=0,this.uuid=xl()}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}get updateRange(){return Dp("THREE.InterleavedBuffer: updateRange() is deprecated and will be removed in r169. Use addUpdateRange() instead."),this._updateRange}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.usage=t.usage,this}copyAt(t,e,i){t*=this.stride,i*=e.stride;for(let r=0,s=this.stride;rt.far||e.push({distance:f,point:pS.clone(),uv:sc.getInterpolation(pS,Lk,mS,Uk,WQ,$5,XQ,new ft),face:null,object:this})}copy(t,e){return super.copy(t,e),void 0!==t.center&&this.center.copy(t.center),this.material=t.material,this}}function Vk(n,t,e,i,r,s){Nw.subVectors(n,e).addScalar(.5).multiply(i),void 0!==r?(AS.x=s*Nw.x-r*Nw.y,AS.y=r*Nw.x+s*Nw.y):AS.copy(Nw),n.copy(t),n.x+=AS.x,n.y+=AS.y,n.applyMatrix4(qQ)}class Ya extends d{constructor(t){super(),this.isLineBasicMaterial=!0,this.type="LineBasicMaterial",this.color=new vn(16777215),this.map=null,this.linewidth=1,this.linecap="round",this.linejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this.fog=t.fog,this}}const $k=new pe,qk=new pe,lz=new Gi,yS=new Uh,Wk=new ha,eU=new pe,cz=new pe;class ku extends Oo{constructor(t=new Yi,e=new Ya){super(),this.isLine=!0,this.type="Line",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}computeLineDistances(){const t=this.geometry;if(null===t.index){const e=t.attributes.position,i=[0];for(let r=1,s=e.count;r0){const r=e[i[0]];if(void 0!==r){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,l=r.length;si)return;eU.applyMatrix4(n.matrixWorld);const f=t.ray.origin.distanceTo(eU);return ft.far?void 0:{distance:f,point:cz.clone().applyMatrix4(n.matrixWorld),index:r,face:null,faceIndex:null,object:n}}const dz=new pe,uz=new pe;class Lp extends ku{constructor(t,e){super(t,e),this.isLineSegments=!0,this.type="LineSegments"}computeLineDistances(){const t=this.geometry;if(null===t.index){const e=t.attributes.position,i=[];for(let r=0,s=e.count;r0)){f=r;break}f=r-1}if(r=f,i[r]===l)return r/(s-1);const m=i[r];return(r+(l-m)/(i[r+1]-m))/(s-1)}getTangent(t,e){let r=t-1e-4,s=t+1e-4;r<0&&(r=0),s>1&&(s=1);const l=this.getPoint(r),u=this.getPoint(s),f=e||(l.isVector2?new ft:new pe);return f.copy(u).sub(l).normalize(),f}getTangentAt(t,e){const i=this.getUtoTmapping(t);return this.getTangent(i,e)}computeFrenetFrames(t,e){const i=new pe,r=[],s=[],l=[],u=new pe,f=new Gi;for(let w=0;w<=t;w++)r[w]=this.getTangentAt(w/t,new pe);s[0]=new pe,l[0]=new pe;let p=Number.MAX_VALUE;const m=Math.abs(r[0].x),_=Math.abs(r[0].y),b=Math.abs(r[0].z);m<=p&&(p=m,i.set(1,0,0)),_<=p&&(p=_,i.set(0,1,0)),b<=p&&i.set(0,0,1),u.crossVectors(r[0],i).normalize(),s[0].crossVectors(r[0],u),l[0].crossVectors(r[0],s[0]);for(let w=1;w<=t;w++){if(s[w]=s[w-1].clone(),l[w]=l[w-1].clone(),u.crossVectors(r[w-1],r[w]),u.length()>Number.EPSILON){u.normalize();const F=Math.acos(Xo(r[w-1].dot(r[w]),-1,1));s[w].applyMatrix4(f.makeRotationAxis(u,F))}l[w].crossVectors(r[w],s[w])}if(!0===e){let w=Math.acos(Xo(s[0].dot(s[t]),-1,1));w/=t,r[0].dot(u.crossVectors(s[0],s[t]))>0&&(w=-w);for(let F=1;F<=t;F++)s[F].applyMatrix4(f.makeRotationAxis(r[F],w*F)),l[F].crossVectors(r[F],s[F])}return{tangents:r,normals:s,binormals:l}}clone(){return(new this.constructor).copy(this)}copy(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}toJSON(){const t={metadata:{version:4.6,type:"Curve",generator:"Curve.toJSON"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t}fromJSON(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}class iU extends Qh{constructor(t=0,e=0,i=1,r=1,s=0,l=2*Math.PI,u=!1,f=0){super(),this.isEllipseCurve=!0,this.type="EllipseCurve",this.aX=t,this.aY=e,this.xRadius=i,this.yRadius=r,this.aStartAngle=s,this.aEndAngle=l,this.aClockwise=u,this.aRotation=f}getPoint(t,e=new ft){const i=e,r=2*Math.PI;let s=this.aEndAngle-this.aStartAngle;const l=Math.abs(s)r;)s-=r;sr.length-2?r.length-1:l+1],_=r[l>r.length-3?r.length-1:l+2];return i.set(Az(u,f.x,p.x,m.x,_.x),Az(u,f.y,p.y,m.y,_.y)),i}copy(t){super.copy(t),this.points=[];for(let e=0,i=t.points.length;e0?0:(Math.floor(Math.abs(u)/s)+1)*s:0===f&&u===s-1&&(u=s-2,f=1),this.closed||u>0?p=r[(u-1)%s]:(Zk.subVectors(r[0],r[1]).add(r[0]),p=Zk);const _=r[u%s],b=r[(u+1)%s];if(this.closed||u+2=i){const l=r[s]-i,u=this.curves[s],f=u.getLength();return u.getPointAt(0===f?0:1-l/f,e)}s++}return null}getLength(){const t=this.getCurveLengths();return t[t.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;const t=[];let e=0;for(let i=0,r=this.curves.length;i1&&!e[e.length-1].equals(e[0])&&e.push(e[0]),e}copy(t){super.copy(t),this.curves=[];for(let e=0,i=t.curves.length;e0){const _=p.getPoint(0);_.equals(this.currentPoint)||this.lineTo(_.x,_.y)}this.curves.push(p);const m=p.getPoint(1);return this.currentPoint.copy(m),this}copy(t){return super.copy(t),this.currentPoint.copy(t.currentPoint),this}toJSON(){const t=super.toJSON();return t.currentPoint=this.currentPoint.toArray(),t}fromJSON(t){return super.fromJSON(t),this.currentPoint.fromArray(t.currentPoint),this}}class CS extends Yi{constructor(t=1,e=1,i=1,r=32,s=1,l=!1,u=0,f=2*Math.PI){super(),this.type="CylinderGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:i,radialSegments:r,heightSegments:s,openEnded:l,thetaStart:u,thetaLength:f};const p=this;r=Math.floor(r),s=Math.floor(s);const m=[],_=[],b=[],w=[];let F=0;const D=[],T=i/2;let I=0;function R(P){const ee=F,J=new ft,te=new pe;let ie=0;const W=!0===P?t:e,q=!0===P?1:-1;for(let ke=1;ke<=r;ke++)_.push(0,T*q,0),b.push(0,q,0),w.push(.5,.5),F++;const ce=F;for(let ke=0;ke<=r;ke++){const de=ke/r*f+u,ze=Math.cos(de),Ce=Math.sin(de);te.x=W*Ce,te.y=T*q,te.z=W*ze,_.push(te.x,te.y,te.z),b.push(0,q,0),J.x=.5*ze+.5,J.y=.5*Ce*q+.5,w.push(J.x,J.y),F++}for(let ke=0;ke0&&R(!0),e>0&&R(!1)),this.setIndex(m),this.setAttribute("position",new Zt(_,3)),this.setAttribute("normal",new Zt(b,3)),this.setAttribute("uv",new Zt(w,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new CS(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}}class Lg extends Xb{constructor(t){super(t),this.uuid=xl(),this.type="Shape",this.holes=[]}getPointsHoles(t){const e=[];for(let i=0,r=this.holes.length;i0)for(s=t;s=t;s-=i)l=Mz(s,n[s],n[s+1],l);return l&&o3(l,l.next)&&(SS(l),l=l.next),l}function Yb(n,t){if(!n)return n;t||(t=n);let i,e=n;do{if(i=!1,e.steiner||!o3(e,e.next)&&0!==rs(e.prev,e,e.next))e=e.next;else{if(SS(e),e=t=e.prev,e===e.next)break;i=!0}}while(i||e!==t);return t}function MS(n,t,e,i,r,s,l){if(!n)return;!l&&s&&function Aie(n,t,e,i){let r=n;do{0===r.z&&(r.z=fU(r.x,r.y,t,e,i)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next}while(r!==n);r.prevZ.nextZ=null,r.prevZ=null,function mie(n){let t,e,i,r,s,l,u,f,p=1;do{for(e=n,n=null,s=null,l=0;e;){for(l++,i=e,u=0,t=0;t0||f>0&&i;)0!==u&&(0===f||!i||e.z<=i.z)?(r=e,e=e.nextZ,u--):(r=i,i=i.nextZ,f--),s?s.nextZ=r:n=r,r.prevZ=s,s=r;e=i}s.nextZ=null,p*=2}while(l>1)}(r)}(n,i,r,s);let f,p,u=n;for(;n.prev!==n.next;)if(f=n.prev,p=n.next,s?aie(n,i,r,s):sie(n))t.push(f.i/e|0),t.push(n.i/e|0),t.push(p.i/e|0),SS(n),n=p.next,u=p.next;else if((n=p)===u){l?1===l?MS(n=lie(Yb(n),t,e),t,e,i,r,s,2):2===l&&cie(n,t,e,i,r,s):MS(Yb(n),t,e,i,r,s,1);break}}function sie(n){const t=n.prev,e=n,i=n.next;if(rs(t,e,i)>=0)return!1;const r=t.x,s=e.x,l=i.x,u=t.y,f=e.y,p=i.y,m=rs?r>l?r:l:s>l?s:l,w=u>f?u>p?u:p:f>p?f:p;let F=i.next;for(;F!==t;){if(F.x>=m&&F.x<=b&&F.y>=_&&F.y<=w&&Uw(r,u,s,f,l,p,F.x,F.y)&&rs(F.prev,F,F.next)>=0)return!1;F=F.next}return!0}function aie(n,t,e,i){const r=n.prev,s=n,l=n.next;if(rs(r,s,l)>=0)return!1;const u=r.x,f=s.x,p=l.x,m=r.y,_=s.y,b=l.y,w=uf?u>p?u:p:f>p?f:p,T=m>_?m>b?m:b:_>b?_:b,I=fU(w,F,t,e,i),O=fU(D,T,t,e,i);let R=n.prevZ,P=n.nextZ;for(;R&&R.z>=I&&P&&P.z<=O;){if(R.x>=w&&R.x<=D&&R.y>=F&&R.y<=T&&R!==r&&R!==l&&Uw(u,m,f,_,p,b,R.x,R.y)&&rs(R.prev,R,R.next)>=0||(R=R.prevZ,P.x>=w&&P.x<=D&&P.y>=F&&P.y<=T&&P!==r&&P!==l&&Uw(u,m,f,_,p,b,P.x,P.y)&&rs(P.prev,P,P.next)>=0))return!1;P=P.nextZ}for(;R&&R.z>=I;){if(R.x>=w&&R.x<=D&&R.y>=F&&R.y<=T&&R!==r&&R!==l&&Uw(u,m,f,_,p,b,R.x,R.y)&&rs(R.prev,R,R.next)>=0)return!1;R=R.prevZ}for(;P&&P.z<=O;){if(P.x>=w&&P.x<=D&&P.y>=F&&P.y<=T&&P!==r&&P!==l&&Uw(u,m,f,_,p,b,P.x,P.y)&&rs(P.prev,P,P.next)>=0)return!1;P=P.nextZ}return!0}function lie(n,t,e){let i=n;do{const r=i.prev,s=i.next.next;!o3(r,s)&&xz(r,i,i.next,s)&&ES(r,s)&&ES(s,r)&&(t.push(r.i/e|0),t.push(i.i/e|0),t.push(s.i/e|0),SS(i),SS(i.next),i=n=s),i=i.next}while(i!==n);return Yb(i)}function cie(n,t,e,i,r,s){let l=n;do{let u=l.next.next;for(;u!==l.prev;){if(l.i!==u.i&&_ie(l,u)){let f=Cz(l,u);return l=Yb(l,l.next),f=Yb(f,f.next),MS(l,t,e,i,r,s,0),void MS(f,t,e,i,r,s,0)}u=u.next}l=l.next}while(l!==n)}function uie(n,t){return n.x-t.x}function hie(n,t){const e=function fie(n,t){let r,e=t,i=-1/0;const s=n.x,l=n.y;do{if(l<=e.y&&l>=e.next.y&&e.next.y!==e.y){const b=e.x+(l-e.y)*(e.next.x-e.x)/(e.next.y-e.y);if(b<=s&&b>i&&(i=b,r=e.x=e.x&&e.x>=f&&s!==e.x&&Uw(lr.x||e.x===r.x&&pie(r,e)))&&(r=e,m=_)),e=e.next}while(e!==u);return r}(n,t);if(!e)return t;const i=Cz(e,n);return Yb(i,i.next),Yb(e,e.next)}function pie(n,t){return rs(n.prev,n,t.prev)<0&&rs(t.next,n,n.next)<0}function fU(n,t,e,i,r){return(n=1431655765&((n=858993459&((n=252645135&((n=16711935&((n=(n-e)*r|0)|n<<8))|n<<4))|n<<2))|n<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-i)*r|0)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function gie(n){let t=n,e=n;do{(t.x=(n-l)*(s-u)&&(n-l)*(i-u)>=(e-l)*(t-u)&&(e-l)*(s-u)>=(r-l)*(i-u)}function _ie(n,t){return n.next.i!==t.i&&n.prev.i!==t.i&&!function bie(n,t){let e=n;do{if(e.i!==n.i&&e.next.i!==n.i&&e.i!==t.i&&e.next.i!==t.i&&xz(e,e.next,n,t))return!0;e=e.next}while(e!==n);return!1}(n,t)&&(ES(n,t)&&ES(t,n)&&function vie(n,t){let e=n,i=!1;const r=(n.x+t.x)/2,s=(n.y+t.y)/2;do{e.y>s!=e.next.y>s&&e.next.y!==e.y&&r<(e.next.x-e.x)*(s-e.y)/(e.next.y-e.y)+e.x&&(i=!i),e=e.next}while(e!==n);return i}(n,t)&&(rs(n.prev,n,t.prev)||rs(n,t.prev,t))||o3(n,t)&&rs(n.prev,n,n.next)>0&&rs(t.prev,t,t.next)>0)}function rs(n,t,e){return(t.y-n.y)*(e.x-t.x)-(t.x-n.x)*(e.y-t.y)}function o3(n,t){return n.x===t.x&&n.y===t.y}function xz(n,t,e,i){const r=a3(rs(n,t,e)),s=a3(rs(n,t,i)),l=a3(rs(e,i,n)),u=a3(rs(e,i,t));return!!(r!==s&&l!==u||0===r&&s3(n,e,t)||0===s&&s3(n,i,t)||0===l&&s3(e,n,i)||0===u&&s3(e,t,i))}function s3(n,t,e){return t.x<=Math.max(n.x,e.x)&&t.x>=Math.min(n.x,e.x)&&t.y<=Math.max(n.y,e.y)&&t.y>=Math.min(n.y,e.y)}function a3(n){return n>0?1:n<0?-1:0}function ES(n,t){return rs(n.prev,n,n.next)<0?rs(n,t,n.next)>=0&&rs(n,n.prev,t)>=0:rs(n,t,n.prev)<0||rs(n,n.next,t)<0}function Cz(n,t){const e=new pU(n.i,n.x,n.y),i=new pU(t.i,t.x,t.y),r=n.next,s=t.prev;return n.next=t,t.prev=n,e.next=r,r.prev=e,i.next=e,e.prev=i,s.next=i,i.prev=s,i}function Mz(n,t,e,i){const r=new pU(n,t,e);return i?(r.next=i.next,r.prev=i,i.next.prev=r,i.next=r):(r.prev=r,r.next=r),r}function SS(n){n.next.prev=n.prev,n.prev.next=n.next,n.prevZ&&(n.prevZ.nextZ=n.nextZ),n.nextZ&&(n.nextZ.prevZ=n.prevZ)}function pU(n,t,e){this.i=n,this.x=t,this.y=e,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}class zh{static area(t){const e=t.length;let i=0;for(let r=e-1,s=0;s80*e){u=p=n[0],f=m=n[1];for(let F=e;Fp&&(p=_),b>m&&(m=b);w=Math.max(p-u,m-f),w=0!==w?32767/w:0}return MS(s,l,e,u,f,w,0),l}(i,r);for(let f=0;f2&&n[t-1].equals(n[0])&&n.pop()}function Sz(n,t){for(let e=0;eNumber.EPSILON){const Ut=Math.sqrt(xt),jt=Math.sqrt(_e*_e+oe*oe),Ti=yt.x-Se/Ut,Dn=yt.y+Pe/Ut,hn=((Ze.x-oe/jt-Ti)*oe-(Ze.y+_e/jt-Dn)*_e)/(Pe*oe-Se*_e);Ct=Ti+Pe*hn-ue.x,_t=Dn+Se*hn-ue.y;const Zn=Ct*Ct+_t*_t;if(Zn<=2)return new ft(Ct,_t);It=Math.sqrt(Zn/2)}else{let Ut=!1;Pe>Number.EPSILON?_e>Number.EPSILON&&(Ut=!0):Pe<-Number.EPSILON?_e<-Number.EPSILON&&(Ut=!0):Math.sign(Se)===Math.sign(oe)&&(Ut=!0),Ut?(Ct=-Se,_t=Pe,It=Math.sqrt(xt)):(Ct=Pe,_t=Se,It=Math.sqrt(xt/2))}return new ft(Ct/It,_t/It)}const ht=[];for(let ue=0,yt=de.length,Ze=yt-1,Ct=ue+1;ue=0;ue--){const yt=ue/T,Ze=w*Math.cos(yt*Math.PI/2),Ct=F*Math.sin(yt*Math.PI/2)+D;for(let _t=0,It=de.length;_t=0;){const Ct=Ze;let _t=Ze-1;_t<0&&(_t=ue.length-1);for(let It=0,Pe=m+2*T;It=s)break e;{const u=e[1];t=s)break t}l=i,i=0}}for(;i>>1;te;)--l;if(++l,0!==s||l!==r){s>=l&&(l=Math.max(l,1),s=l-1);const u=this.getValueSize();this.times=i.slice(s,l),this.values=this.values.slice(s*u,l*u)}return this}validate(){let t=!0;const e=this.getValueSize();e-Math.floor(e)!=0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),t=!1);const i=this.times,r=this.values,s=i.length;0===s&&(console.error("THREE.KeyframeTrack: Track is empty.",this),t=!1);let l=null;for(let u=0;u!==s;u++){const f=i[u];if("number"==typeof f&&isNaN(f)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,u,f),t=!1;break}if(null!==l&&l>f){console.error("THREE.KeyframeTrack: Out of order keys.",this,u,f,l),t=!1;break}l=f}if(void 0!==r&&function Bz(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}(r))for(let u=0,f=r.length;u!==f;++u){const p=r[u];if(isNaN(p)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,u,p),t=!1;break}}return t}optimize(){const t=this.times.slice(),e=this.values.slice(),i=this.getValueSize(),r=2302===this.getInterpolation(),s=t.length-1;let l=1;for(let u=1;u0){t[l]=t[s];for(let u=s*i,f=l*i,p=0;p!==i;++p)e[f+p]=e[u+p];++l}return l!==t.length?(this.times=t.slice(0,l),this.values=e.slice(0,l*i)):(this.times=t,this.values=e),this}clone(){const t=this.times.slice(),e=this.values.slice(),r=new(0,this.constructor)(this.name,t,e);return r.createInterpolant=this.createInterpolant,r}}Gh.prototype.TimeBufferType=Float32Array,Gh.prototype.ValueBufferType=Float32Array,Gh.prototype.DefaultInterpolation=2301;class Hw extends Gh{constructor(t,e,i){super(t,e,i)}}Hw.prototype.ValueTypeName="bool",Hw.prototype.ValueBufferType=Array,Hw.prototype.DefaultInterpolation=2300,Hw.prototype.InterpolantFactoryMethodLinear=void 0,Hw.prototype.InterpolantFactoryMethodSmooth=void 0;(class Pz extends Gh{}).prototype.ValueTypeName="color";(class h3 extends Gh{}).prototype.ValueTypeName="number";class Nie extends u3{constructor(t,e,i,r){super(t,e,i,r)}interpolate_(t,e,i,r){const s=this.resultBuffer,l=this.sampleValues,u=this.valueSize,f=(i-e)/(r-e);let p=t*u;for(let m=p+u;p!==m;p+=4)Vs.slerpFlat(s,0,l,p-u,l,p,f);return s}}class f3 extends Gh{InterpolantFactoryMethodLinear(t){return new Nie(this.times,this.values,this.getValueSize(),t)}}f3.prototype.ValueTypeName="quaternion",f3.prototype.InterpolantFactoryMethodSmooth=void 0;class Qw extends Gh{constructor(t,e,i){super(t,e,i)}}Qw.prototype.ValueTypeName="string",Qw.prototype.ValueBufferType=Array,Qw.prototype.DefaultInterpolation=2300,Qw.prototype.InterpolantFactoryMethodLinear=void 0,Qw.prototype.InterpolantFactoryMethodSmooth=void 0;(class p3 extends Gh{}).prototype.ValueTypeName="vector";const Ug={enabled:!1,files:{},add:function(n,t){!1!==this.enabled&&(this.files[n]=t)},get:function(n){if(!1!==this.enabled)return this.files[n]},remove:function(n){delete this.files[n]},clear:function(){this.files={}}};class Oz{constructor(t,e,i){const r=this;let f,s=!1,l=0,u=0;const p=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=i,this.itemStart=function(m){u++,!1===s&&void 0!==r.onStart&&r.onStart(m,l,u),s=!0},this.itemEnd=function(m){l++,void 0!==r.onProgress&&r.onProgress(m,l,u),l===u&&(s=!1,void 0!==r.onLoad&&r.onLoad())},this.itemError=function(m){void 0!==r.onError&&r.onError(m)},this.resolveURL=function(m){return f?f(m):m},this.setURLModifier=function(m){return f=m,this},this.addHandler=function(m,_){return p.push(m,_),this},this.removeHandler=function(m){const _=p.indexOf(m);return-1!==_&&p.splice(_,2),this},this.getHandler=function(m){for(let _=0,b=p.length;_{class n{constructor(e){this.manager=void 0!==e?e:Vie,this.crossOrigin="anonymous",this.withCredentials=!1,this.path="",this.resourcePath="",this.requestHeader={}}load(){}loadAsync(e,i){const r=this;return new Promise(function(s,l){r.load(e,s,i,l)})}parse(){}setCrossOrigin(e){return this.crossOrigin=e,this}setWithCredentials(e){return this.withCredentials=e,this}setPath(e){return this.path=e,this}setResourcePath(e){return this.resourcePath=e,this}setRequestHeader(e){return this.requestHeader=e,this}}return n.DEFAULT_MATERIAL_NAME="__DEFAULT",n})();const Up={};class Hie extends Error{constructor(t,e){super(t),this.response=e}}class jh extends cc{constructor(t){super(t)}load(t,e,i,r){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);const s=Ug.get(t);if(void 0!==s)return this.manager.itemStart(t),setTimeout(()=>{e&&e(s),this.manager.itemEnd(t)},0),s;if(void 0!==Up[t])return void Up[t].push({onLoad:e,onProgress:i,onError:r});Up[t]=[],Up[t].push({onLoad:e,onProgress:i,onError:r});const l=new Request(t,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),u=this.mimeType,f=this.responseType;fetch(l).then(p=>{if(200===p.status||0===p.status){if(0===p.status&&console.warn("THREE.FileLoader: HTTP Status 0 received."),typeof ReadableStream>"u"||void 0===p.body||void 0===p.body.getReader)return p;const m=Up[t],_=p.body.getReader(),b=p.headers.get("X-File-Size")||p.headers.get("Content-Length"),w=b?parseInt(b):0,F=0!==w;let D=0;const T=new ReadableStream({start(I){!function O(){_.read().then(({done:R,value:P})=>{if(R)I.close();else{D+=P.byteLength;const ee=new ProgressEvent("progress",{lengthComputable:F,loaded:D,total:w});for(let J=0,te=m.length;J{I.error(R)})}()}});return new Response(T)}throw new Hie(`fetch for "${p.url}" responded with ${p.status}: ${p.statusText}`,p)}).then(p=>{switch(f){case"arraybuffer":return p.arrayBuffer();case"blob":return p.blob();case"document":return p.text().then(m=>(new DOMParser).parseFromString(m,u));case"json":return p.json();default:if(void 0===u)return p.text();{const _=/charset="?([^;"\s]*)"?/i.exec(u),b=_&&_[1]?_[1].toLowerCase():void 0,w=new TextDecoder(b);return p.arrayBuffer().then(F=>w.decode(F))}}}).then(p=>{Ug.add(t,p);const m=Up[t];delete Up[t];for(let _=0,b=m.length;_{const m=Up[t];if(void 0===m)throw this.manager.itemError(t),p;delete Up[t];for(let _=0,b=m.length;_{this.manager.itemEnd(t)}),this.manager.itemStart(t)}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}}class Jb extends Oo{constructor(t,e=1){super(),this.isLight=!0,this.type="Light",this.color=new vn(t),this.intensity=e}dispose(){}copy(t,e){return super.copy(t,e),this.color.copy(t.color),this.intensity=t.intensity,this}toJSON(t){const e=super.toJSON(t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,void 0!==this.groundColor&&(e.object.groundColor=this.groundColor.getHex()),void 0!==this.distance&&(e.object.distance=this.distance),void 0!==this.angle&&(e.object.angle=this.angle),void 0!==this.decay&&(e.object.decay=this.decay),void 0!==this.penumbra&&(e.object.penumbra=this.penumbra),void 0!==this.shadow&&(e.object.shadow=this.shadow.toJSON()),void 0!==this.target&&(e.object.target=this.target.uuid),e}}const CU=new Gi,Nz=new pe,Lz=new pe;class MU{constructor(t){this.camera=t,this.intensity=1,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new ft(512,512),this.map=null,this.mapPass=null,this.matrix=new Gi,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new Fk,this._frameExtents=new ft(1,1),this._viewportCount=1,this._viewports=[new so(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(t){const e=this.camera,i=this.matrix;Nz.setFromMatrixPosition(t.matrixWorld),e.position.copy(Nz),Lz.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(Lz),e.updateMatrixWorld(),CU.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(CU),i.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),i.multiply(CU)}getViewport(t){return this._viewports[t]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(t){return this.camera=t.camera.clone(),this.intensity=t.intensity,this.bias=t.bias,this.radius=t.radius,this.mapSize.copy(t.mapSize),this}clone(){return(new this.constructor).copy(this)}toJSON(){const t={};return 1!==this.intensity&&(t.intensity=this.intensity),0!==this.bias&&(t.bias=this.bias),0!==this.normalBias&&(t.normalBias=this.normalBias),1!==this.radius&&(t.radius=this.radius),(512!==this.mapSize.x||512!==this.mapSize.y)&&(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}}class qie extends MU{constructor(){super(new Bk(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}}class IS extends Jb{constructor(t,e){super(t,e),this.isDirectionalLight=!0,this.type="DirectionalLight",this.position.copy(Oo.DEFAULT_UP),this.updateMatrix(),this.target=new Oo,this.shadow=new qie}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}class SU extends Jb{constructor(t,e){super(t,e),this.isAmbientLight=!0,this.type="AmbientLight"}}class $z{constructor(t=!0){this.autoStart=t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=qz(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let t=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){const e=qz();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}}function qz(){return(typeof performance>"u"?Date:performance).now()}const IU="\\[\\]\\.:\\/",rre=new RegExp("["+IU+"]","g"),FU="[^"+IU+"]",ore="[^"+IU.replace("\\.","")+"]",dre=new RegExp("^"+/((?:WC+[\/:])*)/.source.replace("WC",FU)+/(WCOD+)?/.source.replace("WCOD",ore)+/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",FU)+/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",FU)+"$"),ure=["material","materials","bones","map"];class hre{constructor(t,e,i){const r=i||zo.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,r)}getValue(t,e){this.bind();const r=this._bindings[this._targetGroup.nCachedObjects_];void 0!==r&&r.getValue(t,e)}setValue(t,e){const i=this._bindings;for(let r=this._targetGroup.nCachedObjects_,s=i.length;r!==s;++r)i[r].setValue(t,e)}bind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,i=t.length;e!==i;++e)t[e].bind()}unbind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,i=t.length;e!==i;++e)t[e].unbind()}}let zo=(()=>{class n{constructor(e,i,r){this.path=i,this.parsedPath=r||n.parseTrackName(i),this.node=n.findNode(e,this.parsedPath.nodeName),this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,i,r){return e&&e.isAnimationObjectGroup?new n.Composite(e,i,r):new n(e,i,r)}static sanitizeNodeName(e){return e.replace(/\s/g,"_").replace(rre,"")}static parseTrackName(e){const i=dre.exec(e);if(null===i)throw new Error("PropertyBinding: Cannot parse trackName: "+e);const r={nodeName:i[2],objectName:i[3],objectIndex:i[4],propertyName:i[5],propertyIndex:i[6]},s=r.nodeName&&r.nodeName.lastIndexOf(".");if(void 0!==s&&-1!==s){const l=r.nodeName.substring(s+1);-1!==ure.indexOf(l)&&(r.nodeName=r.nodeName.substring(0,s),r.objectName=l)}if(null===r.propertyName||0===r.propertyName.length)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+e);return r}static findNode(e,i){if(void 0===i||""===i||"."===i||-1===i||i===e.name||i===e.uuid)return e;if(e.skeleton){const r=e.skeleton.getBoneByName(i);if(void 0!==r)return r}if(e.children){const r=function(l){for(let u=0;u=this.min.x&&t.x<=this.max.x&&t.y>=this.min.y&&t.y<=this.max.y}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(t){return t.max.x>=this.min.x&&t.min.x<=this.max.x&&t.max.y>=this.min.y&&t.min.y<=this.max.y}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,nG).distanceTo(t)}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}const w3=new Ss;class _re extends Lp{constructor(t,e=16776960){const i=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),r=new Float32Array(24),s=new Yi;s.setIndex(new ae(i,1)),s.setAttribute("position",new ae(r,3)),super(s,new Ya({color:e,toneMapped:!1})),this.object=t,this.type="BoxHelper",this.matrixAutoUpdate=!1,this.update()}update(t){if(void 0!==t&&console.warn("THREE.BoxHelper: .update() has no longer arguments."),void 0!==this.object&&w3.setFromObject(this.object),w3.isEmpty())return;const e=w3.min,i=w3.max,r=this.geometry.attributes.position,s=r.array;s[0]=i.x,s[1]=i.y,s[2]=i.z,s[3]=e.x,s[4]=i.y,s[5]=i.z,s[6]=e.x,s[7]=e.y,s[8]=i.z,s[9]=i.x,s[10]=e.y,s[11]=i.z,s[12]=i.x,s[13]=i.y,s[14]=e.z,s[15]=e.x,s[16]=i.y,s[17]=e.z,s[18]=e.x,s[19]=e.y,s[20]=e.z,s[21]=i.x,s[22]=e.y,s[23]=e.z,r.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(t){return this.object=t,this.update(),this}copy(t,e){return super.copy(t,e),this.object=t.object,this}dispose(){this.geometry.dispose(),this.material.dispose()}}const dG=new pe;let x3,kU;class bre extends Oo{constructor(t=new pe(0,0,1),e=new pe(0,0,0),i=1,r=16776960,s=.2*i,l=.2*s){super(),this.type="ArrowHelper",void 0===x3&&(x3=new Yi,x3.setAttribute("position",new Zt([0,0,0,0,1,0],3)),kU=new CS(0,.5,1,5,1),kU.translate(0,-.5,0)),this.position.copy(e),this.line=new ku(x3,new Ya({color:r,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new dr(kU,new h({color:r,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(t),this.setLength(i,s,l)}setDirection(t){if(t.y>.99999)this.quaternion.set(0,0,0,1);else if(t.y<-.99999)this.quaternion.set(1,0,0,0);else{dG.set(t.z,0,-t.x).normalize();const e=Math.acos(t.y);this.quaternion.setFromAxisAngle(dG,e)}}setLength(t,e=.2*t,i=.2*e){this.line.scale.set(1,Math.max(1e-4,t-e),1),this.line.updateMatrix(),this.cone.scale.set(i,e,i),this.cone.position.y=t,this.cone.updateMatrix()}setColor(t){this.line.material.color.set(t),this.cone.material.color.set(t)}copy(t){return super.copy(t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}}class vre extends Lp{constructor(t=1){const e=[0,0,0,t,0,0,0,0,0,0,t,0,0,0,0,0,0,t],r=new Yi;r.setAttribute("position",new Zt(e,3)),r.setAttribute("color",new Zt([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3)),super(r,new Ya({vertexColors:!0,toneMapped:!1})),this.type="AxesHelper"}setColors(t,e,i){const r=new vn,s=this.geometry.attributes.color.array;return r.set(t),r.toArray(s,0),r.toArray(s,3),r.set(e),r.toArray(s,6),r.toArray(s,9),r.set(i),r.toArray(s,12),r.toArray(s,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}}class Hg{constructor(){this.type="ShapePath",this.color=new vn,this.subPaths=[],this.currentPath=null}moveTo(t,e){return this.currentPath=new Xb,this.subPaths.push(this.currentPath),this.currentPath.moveTo(t,e),this}lineTo(t,e){return this.currentPath.lineTo(t,e),this}quadraticCurveTo(t,e,i,r){return this.currentPath.quadraticCurveTo(t,e,i,r),this}bezierCurveTo(t,e,i,r,s,l){return this.currentPath.bezierCurveTo(t,e,i,r,s,l),this}splineThru(t){return this.currentPath.splineThru(t),this}toShapes(t){function i(I,O){const R=O.length;let P=!1;for(let ee=R-1,J=0;JNumber.EPSILON){if(q<0&&(te=O[J],W=-W,ie=O[ee],q=-q),I.yie.y)continue;if(I.y===te.y){if(I.x===te.x)return!0}else{const ce=q*(I.x-te.x)-W*(I.y-te.y);if(0===ce)return!0;if(ce<0)continue;P=!P}}else{if(I.y!==te.y)continue;if(ie.x<=I.x&&I.x<=te.x||te.x<=I.x&&I.x<=ie.x)return!0}}return P}const r=zh.isClockWise,s=this.subPaths;if(0===s.length)return[];let l,u,f;const p=[];if(1===s.length)return u=s[0],f=new Lg,f.curves=u.curves,p.push(f),p;let m=!r(s[0].getPoints());m=t?!m:m;const _=[],b=[];let D,T,w=[],F=0;b[F]=void 0,w[F]=[];for(let I=0,O=s.length;I1){let I=!1,O=0;for(let R=0,P=b.length;R0&&!1===I&&(w=_)}for(let I=0,O=b.length;In.appSettings,uG=sn(ko,n=>n.screenshotToClipboardEnabled),PU=".png",hG="~",C3="_";function fG(n){return n.some(t=>t.selectedAs!==At.None)}function M3(n){return n.filter(t=>t.selectedAs!==At.None)}function dc(n){return n.some(t=>t.selectedAs===At.Reference)}function pG(n){return n.some(t=>t.selectedAs===At.Partial)}function E3(n,t){return n.fileMeta.fileChecksum===t.fileMeta.fileChecksum}let $h=(()=>{class n{static{this.VIEW_ANGLE=45}static{this.NEAR=50}static{this.FAR=2e5}init(e,i){this.camera=new Js(n.VIEW_ANGLE,e/i,n.NEAR,n.FAR),this.setPosition(new pe(0,300,1e3))}setPosition(e){this.camera.position.set(e.x,e.y,e.z),this.camera.lookAt(0,0,0)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var Dre=v(3205),AG=v.n(Dre);class mG{constructor(t,e,i){this.h=t,this.s=e,this.l=i}toHex(){return`#${AG().hsl.hex([this.h,this.s,this.l])}`}decreaseLightness(t){this.l-=t}getLightness(){return this.l}setLightness(t){this.l=t}toString(){return`hsl(${this.h}, ${this.s}%, ${this.l}%)`}}class Dr{static{this.colorToVector3Map=new Map}static{this.colorToVector3ArrayMap=new Map}static{this.hexToNumberMap=new Map}static getVector3(t){let e=this.colorToVector3Map.get(t);return void 0===e&&(e=Dr.colorToVector3(t),this.colorToVector3Map.set(t,e)),e}static getVector3Array(t){let e=this.colorToVector3ArrayMap.get(t);return void 0===e&&(e=Dr.colorToVector3Array(t),this.colorToVector3ArrayMap.set(t,e)),e}static getNumber(t){let e=this.hexToNumberMap.get(t);return void 0===e&&(e=Dr.convertHexToNumber(t),this.hexToNumberMap.set(t,e)),e}static convertHexToNumber(t){return+`0x${t.slice(1)}`}static convertNumberToHex(t){const e=t.toString(16);return`#${"0".repeat(6-e.length)}${e}`}static convertHexToRgba(t,e=1){return`rgba(${this.encodeHex(t).join(",")},${e})`}static convertHexToColorObject(t){const e=this.encodeHex(t);return new vn(...e)}static convertColorToHex(t){return[t.r,t.g,t.b].reduce((e,i)=>e+Math.round(i).toString(16).padStart(2,"0"),"#")}static hexToHSL(t){const e=AG().hex.hsl(t);return new mG(...e)}static colorToVector3(t){const e=Dr.convertHexToNumber(t);return new pe((e>>16&255)/255,(e>>8&255)/255,(255&e)/255)}static colorToVector3Array(t){const e=Dr.convertHexToNumber(t);return[(e>>16&255)/255,(e>>8&255)/255,(255&e)/255]}static vector3ToRGB(t){const e=Math.floor(255*t.x),i=Math.floor(255*t.y),r=Math.floor(255*t.z);return new vn(e,i,r)}static gradient(t,e,i){const r=this.convertHexToColorObject(t),l=this.convertHexToColorObject(e).sub(r),u=[];for(let f=0;f<=i;f++){const p=l.clone().multiplyScalar(1/i*f),m=r.clone().add(p);u[f]=this.convertColorToHex(m)}return u}static getImageDataUri(t){const e=this.encodeHex(t),i=this.encodeRGB(e[0],e[1],e[2]);return this.generatePixel(i)}static encodeHex(t){let e=t.slice(1);return 3===e.length&&(e=`${e[0]}${e[0]}${e[1]}${e[1]}${e[2]}${e[2]}`),[Number.parseInt(`${e[0]}${e[1]}`,16),Number.parseInt(`${e[2]}${e[3]}`,16),Number.parseInt(`${e[4]}${e[5]}`,16)]}static encodeRGB(t,e,i){return this.encodeTriplet(0,t,e)+this.encodeTriplet(i,255,255)}static encodeTriplet(t,e,i){const r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",l=(3&t)<<4|e>>4,u=(15&e)<<2|i>>6,f=63&i;return r.charAt(t>>2)+r.charAt(l)+r.charAt(u)+r.charAt(f)}static generatePixel(t){return`data:image/gif;base64,R0lGODlhAQABAPAA${t}/yH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==`}}function Bre(n){n.x0=Math.round(n.x0),n.y0=Math.round(n.y0),n.x1=Math.round(n.x1),n.y1=Math.round(n.y1)}function kre(n,t,e,i,r){for(var l,s=n.children,u=-1,f=s.length,p=n.value&&(i-t)/n.value;++uO&&(O=p),J=T*T*ee,(R=Math.max(O/J,J/I))>P){T-=p;break}P=R}l.push(f={value:T,dice:w1?i:1)},e}((1+Math.sqrt(5))/2);function FS(){return 0}function DS(n){return function(){return n}}function Lre(){var n=Nre,t=!1,e=1,i=1,r=[0],s=FS,l=FS,u=FS,f=FS,p=FS;function m(b){return b.x0=b.y0=0,b.x1=e,b.y1=i,b.eachBefore(_),r=[0],t&&b.eachBefore(Bre),b}function _(b){var w=r[b.depth],F=b.x0+w,D=b.y0+w,T=b.x1-w,I=b.y1-w;Tn.dynamicSettings,zw=sn($c,n=>n.searchPattern);function _G(n,t){return function Vre(n){return n.startsWith(`${Fa.rootPath}/`)}(t)?BS(n,t):t}function BS(n,t){const e=Fa.rootPath.length+1,i=t.length<=e?"":`/${t.slice(e)}`;return`${Fa.rootPath}/${n}${i}`}function OU(n,t){do{t=t.slice(0,t.lastIndexOf("/"));const e=n.get(t);if(e)return e}while(t!==Fa.rootPath&&t.length>0)}let bG=(()=>{class n{static{this.projectNameArray=[]}static{this.fileNameArray=[]}static{this.fileChecksumArray=[]}static{this.fileSizesSum=0}static calculateAggregationFile(e){const i=C(e.map(r=>r.file));if(1===i.length)return i[0];this.resetVariables();for(const r of i)this.projectNameArray.push(r.fileMeta.projectName.replace(" ","_")),this.fileNameArray.push(uu.withoutCCExtension(r.fileMeta.fileName).replace(" ","_")),this.fileChecksumArray.push(r.fileMeta.fileChecksum),this.fileSizesSum+=r.fileMeta.exportedFileSize;return this.getNewAggregatedMap(i)}static getNewAggregatedMap(e){const i={fileMeta:{projectName:`project_aggregation_of_${this.projectNameArray.join("_and_")}`,fileName:`file_aggregation_of_${this.fileNameArray.join("_and_")}`,fileChecksum:this.fileChecksumArray.join(";"),apiVersion:s1.f4.X,exportedFileSize:this.fileSizesSum},map:{name:Fa.rootName,type:ts.FOLDER,children:[],attributes:{},path:Fa.rootPath},settings:{fileSettings:{edges:[],blacklist:[],attributeTypes:{nodes:{},edges:{}},attributeDescriptors:{},markedPackages:[]}}};for(const r of e)i.map.children.push(this.extractNodeFromMap(r));return this.aggregateRootAttributes(i),i}static aggregateRootAttributes(e){for(const{attributes:i}of e.map.children)for(const r of Object.keys(i))void 0===e.map.attributes[r]&&(e.map.attributes[r]=0),e.map.attributes[r]+=i[r]}static extractNodeFromMap(e){const i={name:e.fileMeta.fileName,children:e.map.children,type:e.map.type};e.map.path&&(i.path=BS(e.fileMeta.fileName,e.map.path));for(const r of Object.keys(e.map))"name"!==r&&"path"!==r&&"children"!==r&&(i[r]=e.map[r]);return this.updatePathOfAllChildren(e.fileMeta.fileName,i.children),i}static updatePathOfAllChildren(e,i){for(const r of i)r.path&&(r.path=BS(e,r.path)),r.children&&this.updatePathOfAllChildren(e,r.children)}static resetVariables(){this.projectNameArray=[],this.fileNameArray=[],this.fileChecksumArray=[],this.fileSizesSum=0}}return n})();const kS=n=>n.fileSettings,Ru=sn(kS,n=>n.blacklist);var vG=Object.prototype.hasOwnProperty;function yG(n,t,e){for(e of n.keys())if(Qg(e,t))return e}function Qg(n,t){var e,i,r;if(n===t)return!0;if(n&&t&&(e=n.constructor)===t.constructor){if(e===Date)return n.getTime()===t.getTime();if(e===RegExp)return n.toString()===t.toString();if(e===Array){if((i=n.length)===t.length)for(;i--&&Qg(n[i],t[i]););return-1===i}if(e===Set){if(n.size!==t.size)return!1;for(i of n)if((r=i)&&"object"==typeof r&&!(r=yG(t,r))||!t.has(r))return!1;return!0}if(e===Map){if(n.size!==t.size)return!1;for(i of n)if((r=i[0])&&"object"==typeof r&&!(r=yG(t,r))||!Qg(i[1],t.get(r)))return!1;return!0}if(e===ArrayBuffer)n=new Uint8Array(n),t=new Uint8Array(t);else if(e===DataView){if((i=n.byteLength)===t.byteLength)for(;i--&&n.getInt8(i)===t.getInt8(i););return-1===i}if(ArrayBuffer.isView(n)){if((i=n.byteLength)===t.byteLength)for(;i--&&n[i]===t[i];);return-1===i}if(!e||"object"==typeof n){for(e in i=0,n)if(vG.call(n,e)&&++i&&!vG.call(t,e)||!(e in t)||!Qg(n[e],t[e]))return!1;return Object.keys(t).length===i}}return n!=n&&t!=t}function wG(n,t){return n.filter(e=>!Qg(e,t))}function xG(n,t){return[...n.slice(0,t),...n.slice(t+1)]}function CG(n,t){return MG(n,t)?n:[...n,C(t)]}function MG(n,t){return n.some(e=>Qg(e,t))}function EG(n,t){if(n===t||0===n.length&&0===t.length)return!0;if(dc(n)||dc(t))return function Gre(n,t){if(dc(n)!==dc(t))return!1;const e=n.find(l=>l.selectedAs===At.Reference),i=t.find(l=>l.selectedAs===At.Reference);if(e.file.fileMeta.fileChecksum!==i.file.fileMeta.fileChecksum)return!1;const r=n.find(l=>l.selectedAs===At.Comparison),s=t.find(l=>l.selectedAs===At.Comparison);return!(r?.file.fileMeta.fileChecksum!==s?.file.fileMeta.fileChecksum||!r!=!s)}(n,t);const e=n.filter(r=>r.selectedAs===At.Partial).map(r=>r.file.fileMeta.fileChecksum),i=t.filter(r=>r.selectedAs===At.Partial).map(r=>r.file.fileMeta.fileChecksum);return e.length===i.length&&function Qre(n,t){if(n.length!==t.length)return!1;let e=[...t];return n.every(i=>{const r=function zre(n,t){return n.findIndex(e=>Qg(e,t))}(e,i);return r>=0&&(e=xG(e,r),!0)})}(e,i)}const uc=lh(n=>ah(n,EG,EG))(wn,M3);function SG(n,t){const e=new Map,i=new Set;for(const{file:s}of n)for(const{data:l}of oo(s.map))i.add(l.path);for(const s of n)for(const l of s.file.settings.fileSettings.edges)if(jre(l,i,t))for(const u of Object.keys(l.attributes))qre($re(e,u),TG(n.length,s,l.fromNodeName),TG(n.length,s,l.toNodeName));const r=function Wre(n){const t=[];for(const[e,i]of n){const r=[];let s=0,l=Number.MAX_SAFE_INTEGER;for(const u of i.values()){const f=u.incoming+u.outgoing;r.push(f),f>s&&(s=f),f<=l&&(l=f)}t.push({name:e,values:r,maxValue:s,minValue:l})}return t}(e);return Pc(r),{edgeMetricData:r,nodeEdgeMetricsMap:e}}function TG(n,t,e){return n>1?`/root/${t.file.fileMeta.fileName}${e.replace("/root","")}`:e}function jre(n,t,e){return!(!t.has(n.fromNodeName)||!t.has(n.toNodeName)||cu(n.fromNodeName,e,"exclude")||cu(n.toNodeName,e,"exclude"))}function $re(n,t){let e=n.get(t);return e||(e=new Map,n.set(t,e)),e}function qre(n,t,e){const i=n.get(t);void 0===i?n.set(t,{incoming:0,outgoing:1}):i.outgoing+=1;const r=n.get(e);void 0===r?n.set(e,{incoming:1,outgoing:0}):r.incoming+=1}const ka=sn(uc,Ru,(n,t)=>({nodeMetricData:qo(n,t),...SG(n,t)})),Xre=sn(ka,n=>n.edgeMetricData.map(t=>t.name));class Kre{static createCodeMapFromHashMap(t){let e;for(const[i,r]of t)i===Fa.rootPath?e=r:OU(t,i).children.push(r);return e}static getDeltaFile(t,e){const i=this.getDeltaNodesByPath(t.map,e.map),r=this.createCodeMapFromHashMap(i),s=this.getFileMetaData(t,e);return this.getNewCCFileWithDeltas(r,s)}static getDeltaNodesByPath(t,e){const i=new Map,r=this.getReferenceNodesByPath(t);return this.addExistingAndNewNodesToDeltaMap(r,e,i),this.addDeletedNodesToDeltaMap(r,i),i}static getReferenceNodesByPath(t){const e=new Map;for(const{data:i}of oo(t))e.set(i.path,i);return e}static addExistingAndNewNodesToDeltaMap(t,e,i){for(const{data:r}of oo(e)){const s=t.get(r.path);if(s){(s.children||r.children)&&(s.children=[]);const{deltaList:u,differenceExists:f}=this.compareAttributeValues(s.attributes,r.attributes);s.deltas=u;const p=f?1:0;s.attributes=r.attributes,s.fileCount={added:0,removed:0,changed:p}}else r.children&&(r.children=[]),r.deltas={...r.attributes},r.fileCount={added:r.type===ts.FILE?1:0,removed:0,changed:0};const l=s??r;i.set(l.path,l),t.delete(l.path)}}static addDeletedNodesToDeltaMap(t,e){for(const i of t.values()){i.children&&(i.children=[]),i.deltas={},i.fileCount={added:0,removed:i.type===ts.FILE?1:0,changed:0};for(const[r,s]of Object.entries(i.attributes))i.deltas[r]=-s,i.attributes[r]=0;e.set(i.path,i)}}static compareAttributeValues(t,e){const i={};let r=!1;const s=new Set(Object.keys(t));for(const l of Object.keys(e))s.add(l);for(const l of s){const u=t[l]??0,f=e[l]??0;u!==f&&(r=!0),i[l]=f-u}return{deltaList:i,differenceExists:r}}static getFileMetaData(t,e){return{fileName:`delta_between_${uu.withoutCCExtension(t.fileMeta.fileName)}_and_${uu.withoutCCExtension(e.fileMeta.fileName)}`,fileChecksum:`${t.fileMeta.fileChecksum};${e.fileMeta.fileChecksum}`,apiVersion:s1.f4.X,projectName:`delta_between_${t.fileMeta.projectName}_and_${e.fileMeta.projectName}`,exportedFileSize:t.fileMeta.exportedFileSize+e.fileMeta.exportedFileSize}}static getNewCCFileWithDeltas(t,e){return{map:t,fileMeta:e,settings:{fileSettings:{edges:[],blacklist:[],attributeTypes:{nodes:{},edges:{}},attributeDescriptors:{},markedPackages:[]}}}}}const Zre=(n,t,e)=>{const i=new Map;for(const r of e){const s=n.get(r);s&&i.set(r,s.get(t.data.path))}return i},NU=sn(kS,n=>n.attributeTypes),IG=Object.freeze({unifiedMapNode:void 0,unifiedFileMeta:void 0}),Fd=sn(ka,uc,NU,Ru,Xre,(n,t,e,i,r)=>{if(!fG(t)||!n.nodeMetricData)return IG;const s=eoe(C(t));return s?.map?(du.decorateMap(s.map,n,i),((n,t,e)=>{if(0!==e.length)for(const i of oo(t))if(Ro(i)){const r=Zre(n,i,e);for(const[s,l]of r)i.data.edgeAttributes[s]=l}})(n.nodeEdgeMetricsMap,s.map,r),du.decorateParentNodesWithAggregatedAttributes(s.map,dc(t),e),{unifiedMapNode:s.map,unifiedFileMeta:s.fileMeta}):IG}),eoe=n=>{if(pG(n))return bG.calculateAggregationFile(n);if(dc(n)){const[t,e]=n;return e&&t.file.map.name!==e.file.map.name?bG.calculateAggregationFile(n):(n=>{if(2===n.length){let[t,e]=n;if(t.selectedAs!==At.Reference){const i=e;e=t,t=i}return Kre.getDeltaFile(t.file,e.file)}return n[0].file})(n)}},FG=sn(Fd,zw,(n,t)=>function Ure(n,t){if(0===(t=t.trimStart()).length||!n)return[];const e=WI(t),i=[];for(const{data:r}of oo(n))e.ignoredNodePaths.ignores(Rm(r.path))===e.condition&&i.push(r);return i}(n.unifiedMapNode,t)),LU=sn(FG,n=>new Set(n.map(t=>t.path))),UU={getColorByTrueGradient(n,t,e,i){const r=(t.from+t.to)/2,s=Dr.convertHexToColorObject(n.neutral);if(i<=r){const f=i/r,p=Dr.convertHexToColorObject(n.positive);return Dr.convertColorToHex((new vn).lerpColors(p,s,f))}const l=(i-r)/(e.maxValue-r),u=Dr.convertHexToColorObject(n.negative);return Dr.convertColorToHex((new vn).lerpColors(s,u,l))},getColorByFocusedGradient(n,t,e,i){const r=(t.from+t.to)/2,s=Dr.convertHexToColorObject(n.neutral);if(i=t.to&&t.to!==e.maxValue)return n.negative;if(i===r)return n.neutral;if(in.colorMetric),Vp=sn(ka,zg,(n,t)=>{const e=n.nodeMetricData.find(i=>i.name===t);return{values:e?.values??[],minValue:e?.minValue??0,maxValue:e?.maxValue??0}}),Is=250;function RG(n,t,e,i){const r=U_(n.files);if(i)return 2;let s=t.attributes[n.dynamicSettings.heightMetric]||0;s*=r;const l=n.dynamicSettings.heightMetric;return 1===n.fileSettings.attributeDescriptors[l]?.direction?n.appSettings.invertHeight?s:e-s:n.appSettings.invertHeight?e-s:s}function PG(n,t,e,i){const r=e.deltas?.[i.dynamicSettings.heightMetric]?0:2;return Math.max(Math.abs(t*n),r)}function HU(n,t,e,i){return!(n.isExcluded||t&&e.appSettings.hideFlatBuildings&&i)&&(!(e.dynamicSettings.focusedNodePath.length>0)||n.path.startsWith(e.dynamicSettings.focusedNodePath[0]))}function T3(n,t,e,i,r){return n>e?new pe(i.x-r+n/4,i.y+t,i.z-r+e/2):new pe(i.x-r+n/2,i.y+t,i.z-r+e/4)}function OG(n,t,e,i,r){return n>e?new pe(i.x-r+.75*n,i.y+t,i.z-r+e/2):new pe(i.x-r+n/2,i.y+t,i.z-r+.75*e)}function I3(n,t){if(n.isFlattened)return!0;const e=LU(t);return e&&t.dynamicSettings.searchPattern?.length>0?0===e.size||function ooe(n,t){return!LU(t).has(n.path)}(n,t):!(!t.appSettings.showOnlyBuildingsWithEdges||!t.fileSettings.edges.some(i=>i.visible))&&function roe(n,t){return void 0===n.edgeAttributes[t.dynamicSettings.edgeMetric]||!t.fileSettings.edges.some(e=>n.path===e.fromNodeName||n.path===e.toNodeName)}(n,t)}function QU(n,{appSettings:t,dynamicSettings:e},i,r,s){const{mapColors:l}=t;if(r)return l.base;const u=n.attributes[e.colorMetric];if(void 0===u)return l.base;if(s)return l.flat;const{colorRange:f,colorMode:p}=e;return"unary"===e.colorMetric?l.positive:p===Gl.absolute?u0)for(const i of n.children)e+=kG(i,t);return e},buildNodeFrom:function ioe(n,t,e,i,r){const s=U_(i.files),{x0:l,x1:u,y0:f,y1:p,data:m}=n,_=Ro(n),b=I3(m,i),w=RG(i,m,e,b),F=m.path.split("/").length-2,D=_?PG(w,t,m,i)*s:2,T=u-l,I=p-f,O=2*n.depth,R=(m.deltas?.[i.dynamicSettings.heightMetric]??0)*t*s,P=D+(R<0?Math.abs(R):0);return{name:m.name,id:m.id,width:T,height:D,length:I,depth:F,mapNodeDepth:n.depth,x0:l,z0:O,y0:f,isLeaf:_,attributes:m.attributes,edgeAttributes:m.edgeAttributes,deltas:m.deltas,heightDelta:R,visible:HU(m,_,i,b),path:m.path,link:m.link,markingColor:l1(m,i.fileSettings.markedPackages),flat:b,color:QU(m,i,Vp(i),r,b),incomingEdgePoint:T3(T,P,I,new pe(l,O,f),Is),outgoingEdgePoint:OG(T,P,I,new pe(l,O,f),Is)}},isNodeFlat:I3,resolveHeightValue:PG,getHeightValue:RG,FOLDER_HEIGHT:2,MIN_BUILDING_HEIGHT:2,HEIGHT_VALUE_WHEN_METRIC_NOT_FOUND:0},NG=.4,LG=120,UG=95,soe=.035,aoe=.028,zU=3;function VG(n,t,e,i,r,s,l,u,f,p,m){const _=[];for(const b of n.children){const w=b.data.fixedPosition,F=QG(b.data,t,m,f);for(const D of F.treeMap.descendants()){const T=w.width/F.width,I=w.height/F.height;D.x0=(D.x0*T+w.left)*i,D.x1=(D.x1*T+w.left)*i,D.y0=(D.y0*I+w.top)*e,D.y1=(D.y1*I+w.top)*e,D.x0+=r,D.x1+=r,D.y0+=s,D.y1+=s;const O=Za.buildNodeFrom(D,l,u,t,p);if(_.push(O),HG(b.data)){Array.prototype.push.apply(_,VG(b,t,O.length/100,O.width/100,D.x0,D.y0,l,u,f,p,m));break}}}return _}function HG(n){return!!n.children[0]?.fixedPosition}function QG(n,t,e,i){const r=oo(n),s=zG(r),{enableFloorLabels:l,experimentalFeaturesEnabled:u}=t.appSettings,{margin:f}=t.dynamicSettings,p=f*NG*e;let m,_;void 0!==n.fixedPosition?(m=n.fixedPosition.width,_=n.fixedPosition.height):(m=2*Is,_=2*Is);let b=0;r.eachAfter(I=>{!Ro(I)&&l&&(0===I.depth&&(b+=LG),I.depth>0&&I.depth{if(!D&&null===I.parent&&(D=I),D&&l){if(0===I.depth)return Math.max((D.x1-D.x0)*soe,LG);if(I.depth>0&&I.depthfunction uoe(n,{dynamicSettings:t,appSettings:e,fileSettings:i},r,s){if(n.isExcluded)return 0;if(n.deltas&&function doe(n,t){return 0===n.attributes[t.areaMetric]&&n.deltas[t.heightMetric]<0}(n,t))return Math.abs(n.deltas[t.areaMetric]);if(Ro(n)&&n.attributes?.[t.areaMetric]){const l=t.areaMetric;return 1===i.attributeDescriptors[l]?.direction?e.invertArea?n.attributes[t.areaMetric]:r-n.attributes[t.areaMetric]:e.invertArea?r-n.attributes[t.areaMetric]:n.attributes[t.areaMetric]}return s?.5:0}(I,t,i,u)*e)),height:F,width:w}}function zG(n){let t=0,e=0;return n.each(({data:i})=>{(i.isExcluded||i.isFlattened)&&e++,t++}),2*Math.sqrt(t-e)}class RS{static getMapResolutionScaling(t){const{width:e}=document.getElementById("codeMapScene"),i=RS.getScalingThreshold(e);return t>i?i/t:1}static getScalingThreshold(t){return Math.min(4*t,10240)}static isLabelNode(t){return!t.isLeaf&&t.mapNodeDepthe&&(r=e,s=t),i.width=r,i.height=s;const l=i.getContext("2d");return l.fillStyle="white",l.textAlign="center",l.textBaseline="middle",{textCanvas:i,context:l}}writeLabelsOnCanvas(t,e,i){const{width:r,length:s}=this.rootNode;for(const l of e){let u=0===l.depth?Math.max(Math.floor(.03*r),120):Math.max(Math.floor(.023*r),95);u*=i,t.font=`${u}px Arial`;const f=Gw.getLabelAndSetContextFont(l,t,i,u);t.fillText(f.labelText,(s-l.y0-l.length/2)*i,(l.x0+l.width)*i-f.fontSize/2)}}drawLevelPlaneGeometry(t,e,i,r,s){const l=new $ne(t);l.wrapS=_b,l.wrapT=_b,l.repeat.x=-1,l.needsUpdate=!0,l.rotation=90*Math.PI/180;const u=new Iw(e,i),f=new h({side:1,map:l,transparent:!0}),p=new dr(u,f);p.rotateX(90*Math.PI/180),u.translate(e/2,i/2,-this.folderGeometryHeight*this.scaling.y*(r+1)-2),p.scale.set(this.scaling.x/s,this.scaling.z/s,1),p.position.set(-this.mapSize*this.scaling.x,0,-this.mapSize*this.scaling.z),this.floorLabelPlanes.push(p),this.floorLabelPlaneLevel.set(p,r)}static getLabelAndSetContextFont(t,e,i,r){const s=t.name,l=t.length*i;e.font=`${r}px Arial`;const u=e.measureText(s),f=Gw.getFontScaleFactor(l,u.width);return f<=.5?(r*=.5,r=Math.floor(Math.min(r,t.width*i)),e.font=`${r}px Arial`,{labelText:Gw.getFittingLabelText(e,l,s),fontSize:r}):(r=Math.floor(Math.min(r*f,t.width*i)),e.font=`${r}px Arial`,{labelText:s,fontSize:r})}static getFontScaleFactor(t,e){return e=e&&s>1;)s-=1,l=`${i.slice(0,s)}\u2026`;return l}}const GU=bn("SET_SELECTED_BUILDING_ID",{_as:"props",_p:void 0}),jw=sn(Fd,n=>{if(!n.unifiedMapNode)return new Map;const t=new Map([[n.unifiedMapNode.id,n.unifiedMapNode]]);for(const{data:e}of oo(n.unifiedMapNode))t.set(e.id,e);return t}),$w=sn(ko,n=>n.mapColors),Hp=bn("SET_MAP_COLORS",{_as:"props",_p:void 0}),F3=bn("INVERT_COLOR_RANGE"),D3=bn("INVERT_DELTA_COLORS"),Mr=n=>(t,e)=>void 0===e.value?n:e.value,B3=n=>(t,e)=>void 0===e.value?n:{...t,...e.value},qh={positive:"#69AE40",neutral:"#ddcc00",negative:"#820E0E",selected:"#EB8319",positiveDelta:"#64d051",negativeDelta:"#ff0E0E",base:"#666666",flat:"#AAAAAA",markingColors:["#FF1D8E","#1d8eff","#1DFFFF","#8eff1d","#8e1dff"],incomingEdge:"#00ffff",outgoingEdge:"#ff00ff",labelColorAndAlpha:{rgb:"#e0e0e0",alpha:.7}},hoe=Di(qh,yn(Hp,B3(qh)),yn(F3,n=>({...n,positive:n.negative,negative:n.positive})),yn(D3,n=>({...n,positiveDelta:n.negativeDelta,negativeDelta:n.positiveDelta})));class jU{constructor(){this.listeners={}}on(t,e){this.listeners[t]??=[],this.listeners[t].push(e)}emit(t,e){if(!this.listeners[t]?.length)return!1;for(const i of this.listeners[t])i(e);return!0}}let PS=(()=>{class n{constructor(){this.idToBuilding=new Map}setIdToBuilding(e){this.idToBuilding=new Map;for(const i of e)this.idToBuilding.set(i.node.id,i)}get(e){return this.idToBuilding.get(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();class k3{constructor(){this.isPass=!0,this.enabled=!0,this.needsSwap=!0,this.clear=!1,this.renderToScreen=!1}setSize(){}render(){console.error("THREE.Pass: .render() must be implemented in derived pass.")}dispose(){}}const foe=new Bk(-1,1,1,-1,0,1),Aoe=new class poe extends Yi{constructor(){super(),this.setAttribute("position",new Zt([-1,3,0,-1,-1,0,3,-1,0],3)),this.setAttribute("uv",new Zt([0,2,0,0,2,0],2))}};class moe{constructor(t){this._mesh=new dr(Aoe,t)}dispose(){this._mesh.geometry.dispose()}render(t){t.render(this._mesh,foe)}get material(){return this._mesh.material}set material(t){this._mesh.material=t}}class goe extends k3{constructor(t,e,i=null,r=null,s=null){super(),this.scene=t,this.camera=e,this.overrideMaterial=i,this.clearColor=r,this.clearAlpha=s,this.clear=!0,this.clearDepth=!1,this.needsSwap=!1,this._oldClearColor=new vn}render(t,e,i){const r=t.autoClear;let s,l;t.autoClear=!1,null!==this.overrideMaterial&&(l=this.scene.overrideMaterial,this.scene.overrideMaterial=this.overrideMaterial),null!==this.clearColor&&(t.getClearColor(this._oldClearColor),t.setClearColor(this.clearColor,t.getClearAlpha())),null!==this.clearAlpha&&(s=t.getClearAlpha(),t.setClearAlpha(this.clearAlpha)),1==this.clearDepth&&t.clearDepth(),t.setRenderTarget(this.renderToScreen?null:i),!0===this.clear&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),t.render(this.scene,this.camera),null!==this.clearColor&&t.setClearColor(this._oldClearColor),null!==this.clearAlpha&&t.setClearAlpha(s),null!==this.overrideMaterial&&(this.scene.overrideMaterial=l),t.autoClear=r}}const boe=class _oe{static isWebGL2Available(){try{const t=document.createElement("canvas");return!(!window.WebGL2RenderingContext||!t.getContext("webgl2"))}catch{return!1}}static isColorSpaceAvailable(t){try{const e=document.createElement("canvas"),i=window.WebGL2RenderingContext&&e.getContext("webgl2");return i.drawingBufferColorSpace=t,i.drawingBufferColorSpace===t}catch{return!1}}static getWebGL2ErrorMessage(){return this.getErrorMessage(2)}static getErrorMessage(t){const i={1:window.WebGLRenderingContext,2:window.WebGL2RenderingContext};let r='Your $0 does not seem to support
    $1';const s=document.createElement("div");return s.id="webglmessage",s.style.fontFamily="monospace",s.style.fontSize="13px",s.style.fontWeight="normal",s.style.textAlign="center",s.style.background="#fff",s.style.color="#000",s.style.padding="1.5em",s.style.width="400px",s.style.margin="5em auto 0",r=r.replace("$0",i[t]?"graphics card":"browser"),r=r.replace("$1",{1:"WebGL",2:"WebGL 2"}[t]),s.innerHTML=r,s}static isWebGLAvailable(){console.warn("isWebGLAvailable() has been deprecated and will be removed in r178. Use isWebGL2Available() instead.");try{const t=document.createElement("canvas");return!(!window.WebGLRenderingContext||!t.getContext("webgl")&&!t.getContext("experimental-webgl"))}catch{return!1}}static getWebGLErrorMessage(){return console.warn("getWebGLErrorMessage() has been deprecated and will be removed in r178. Use getWebGL2ErrorMessage() instead."),this.getErrorMessage(1)}};class GG extends k3{constructor(t,e){super(),this.textureID=void 0!==e?e:"tDiffuse",t instanceof ac?(this.uniforms=t.uniforms,this.material=t):t&&(this.uniforms=T5.clone(t.uniforms),this.material=new ac({name:void 0!==t.name?t.name:"unspecified",defines:Object.assign({},t.defines),uniforms:this.uniforms,vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})),this.fsQuad=new moe(this.material)}render(t,e,i){this.uniforms[this.textureID]&&(this.uniforms[this.textureID].value=i.texture),this.fsQuad.material=this.material,this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(e),this.clear&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),this.fsQuad.render(t))}dispose(){this.material.dispose(),this.fsQuad.dispose()}}class $U extends k3{constructor(t,e){super(),this.scene=t,this.camera=e,this.clear=!0,this.needsSwap=!1,this.inverse=!1}render(t,e,i){const r=t.getContext(),s=t.state;let l,u;s.buffers.color.setMask(!1),s.buffers.depth.setMask(!1),s.buffers.color.setLocked(!0),s.buffers.depth.setLocked(!0),this.inverse?(l=0,u=1):(l=1,u=0),s.buffers.stencil.setTest(!0),s.buffers.stencil.setOp(r.REPLACE,r.REPLACE,r.REPLACE),s.buffers.stencil.setFunc(r.ALWAYS,l,4294967295),s.buffers.stencil.setClear(u),s.buffers.stencil.setLocked(!0),t.setRenderTarget(i),this.clear&&t.clear(),t.render(this.scene,this.camera),t.setRenderTarget(e),this.clear&&t.clear(),t.render(this.scene,this.camera),s.buffers.color.setLocked(!1),s.buffers.depth.setLocked(!1),s.buffers.color.setMask(!0),s.buffers.depth.setMask(!0),s.buffers.stencil.setLocked(!1),s.buffers.stencil.setFunc(r.EQUAL,1,4294967295),s.buffers.stencil.setOp(r.KEEP,r.KEEP,r.KEEP),s.buffers.stencil.setLocked(!0)}}class jG extends k3{constructor(){super(),this.needsSwap=!1}render(t){t.state.buffers.stencil.setLocked(!1),t.state.buffers.stencil.setTest(!1)}}const voe={name:"CopyShader",uniforms:{tDiffuse:{value:null},opacity:{value:1}},vertexShader:"\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvUv = uv;\n\t\t\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n\t\t}",fragmentShader:"\n\n\t\tuniform float opacity;\n\n\t\tuniform sampler2D tDiffuse;\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvec4 texel = texture2D( tDiffuse, vUv );\n\t\t\tgl_FragColor = opacity * texel;\n\n\n\t\t}"};class yoe{constructor(t,e){if(this.renderer=t,this._pixelRatio=t.getPixelRatio(),void 0===e){const i=t.getSize(new ft);this._width=i.width,this._height=i.height,(e=new oc(this._width*this._pixelRatio,this._height*this._pixelRatio,{type:mg})).texture.name="EffectComposer.rt1"}else this._width=e.width,this._height=e.height;this.renderTarget1=e,this.renderTarget2=e.clone(),this.renderTarget2.texture.name="EffectComposer.rt2",this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2,this.renderToScreen=!0,this.passes=[],this.copyPass=new GG(voe),this.copyPass.material.blending=0,this.clock=new $z}swapBuffers(){const t=this.readBuffer;this.readBuffer=this.writeBuffer,this.writeBuffer=t}addPass(t){this.passes.push(t),t.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}insertPass(t,e){this.passes.splice(e,0,t),t.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}removePass(t){const e=this.passes.indexOf(t);-1!==e&&this.passes.splice(e,1)}isLastEnabledPass(t){for(let e=t+1;en.isWhiteBackground);class woe{constructor(){this.vertexShader=v(889),this.fragmentShader=v(6655),this.uniforms={tDiffuse:{value:null},resolution:{value:new ft(1/1024,1/512)}}}}class wr{static{this.BACKGROUND_COLOR={white:16777215,normal:16053483}}static{this.CLEAR_COLOR=wr.BACKGROUND_COLOR.normal}static{this.CLEAR_ALPHA=1}static{this.RENDER_OPTIONS={antialias:!0,preserveDrawingBuffer:!0,alpha:!0}}static{this.enableFXAA=!1}static{this.setPixelRatio=!1}constructor(t,e){this.store=t,this.state=e,this.setBackgroundColorToState=i=>{wr.CLEAR_COLOR=i?wr.BACKGROUND_COLOR.white:wr.BACKGROUND_COLOR.normal,this.renderer?.setClearColor(wr.CLEAR_COLOR,wr.CLEAR_ALPHA)},this.initGL=(i,r)=>{if(this.setGLOptions(),this.renderer=new H5(wr.RENDER_OPTIONS),wr.setPixelRatio&&this.renderer.setPixelRatio(window.devicePixelRatio),wr.enableFXAA)if(boe.isWebGL2Available){const s=this.renderer.getDrawingBufferSize(new ft),l=new oc(s.width,s.height,{format:Da});this.composer=new $G(this.renderer,l)}else this.composer=new $G(this.renderer);this.renderer.setSize(i,r),this.renderer.domElement.id="codeMapScene",wr.enableFXAA&&this.initComposer()},this.setGLOptions=()=>{switch(this.state.getValue().appSettings.sharpnessMode){case gd.Standard:wr.RENDER_OPTIONS.antialias=!0,wr.enableFXAA=!1,wr.setPixelRatio=!1;break;case gd.PixelRatioNoAA:wr.RENDER_OPTIONS.antialias=!1,wr.enableFXAA=!1,wr.setPixelRatio=!0;break;case gd.PixelRatioFXAA:wr.RENDER_OPTIONS.antialias=!1,wr.enableFXAA=!0,wr.setPixelRatio=!0;break;case gd.PixelRatioAA:wr.RENDER_OPTIONS.antialias=!0,wr.enableFXAA=!1,wr.setPixelRatio=!0}},this.initComposer=()=>{const i=this.renderer.getPixelRatio();this.composer.setSize(window.innerWidth*i,window.innerHeight*i);const r=new goe(this.scene,this.camera);this.composer.addPass(r);const s=new GG(new woe);s.renderToScreen=!1,s.uniforms.resolution.value.x=1/(window.innerWidth*i),s.uniforms.resolution.value.y=1/(window.innerHeight*i),this.composer.addPass(s)},this.getInfo=()=>wr.enableFXAA?this.composer.getInfo():this.renderer.info.render,this.getMemoryInfo=()=>wr.enableFXAA?this.composer.getMemoryInfo():this.renderer.info.memory}init(t,e,i,r){this.scene=i,this.camera=r,this.initGL(t,e),this.store.select(qG).subscribe(this.setBackgroundColorToState)}render(){const{scene:t,camera:e,composer:i,renderer:r}=this;wr.enableFXAA?i?.render():r?.render(t,e)}static{this.\u0275fac=function(e){return new(e||wr)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:wr,factory:wr.\u0275fac,providedIn:"root"})}}let Dd=(()=>{class n{constructor(e,i,r,s){this.store=e,this.state=i,this.idToBuilding=r,this.threeRendererService=s,this.eventEmitter=new jU,this.selected=null,this.highlighted=[],this.constantHighlight=new Map,this.folderLabelColorHighlighted=Dr.convertHexToNumber("#FFFFFF"),this.folderLabelColorNotHighlighted=Dr.convertHexToNumber("#7A7777"),this.rayPoint=new pe(0,0,0),this.normedTransformVector=new pe(0,0,0),this.highlightedLabel=null,this.highlightedLineIndex=-1,this.highlightedLine=null,this.subscription=this.store.select($w).subscribe(l=>{this.folderLabelColorSelected=l.selected,this.numberSelectionColor=Dr.convertHexToNumber(this.folderLabelColorSelected)}),this.scene=new Nk,this.mapGeometry=new lc,this.lights=new lc,this.labels=new lc,this.floorLabelPlanes=new lc,this.edgeArrows=new lc,this.initLights(),this.scene.add(this.mapGeometry),this.scene.add(this.edgeArrows),this.scene.add(this.labels),this.scene.add(this.lights),this.scene.add(this.floorLabelPlanes)}ngOnDestroy(){this.subscription.unsubscribe()}initFloorLabels(e){this.floorLabelPlanes.clear();const{layoutAlgorithm:i,enableFloorLabels:r}=this.state.getValue().appSettings;if(i!==za.SquarifiedTreeMap||!r)return;const s=this.getRootNode(e);if(!s)return;const l=this.state.getValue().appSettings.scaling,u=this.state.getValue().appSettings.experimentalFeaturesEnabled,f=new pe(l.x,l.y,l.z);this.floorLabelDrawer=new Gw(this.mapMesh.getNodes(),s,Is,f,u);const p=this.floorLabelDrawer.draw(this.state.getValue());p.length>0&&(this.floorLabelPlanes.add(...p),this.scene.add(this.floorLabelPlanes))}getRootNode(e){return e.find(i=>0===i.id)}getConstantHighlight(){return this.constantHighlight}highlightBuildings(){const e=this.state.getValue();this.getMapMesh().highlightBuilding(this.highlighted,this.selected,e,this.constantHighlight),this.mapGeometry.children[0]&&this.highlightMaterial(this.mapGeometry.children[0].material),this.threeRendererService.render()}selectMaterial(e){e.find(({userData:r})=>r.id===this.selected.node.id)?.color.setHex(this.numberSelectionColor)}resetMaterial(e){const i=this.selected?this.selected.node.id:-1;for(const r of e)r.userData.id!==i&&r.color?.setHex(this.folderLabelColorHighlighted)}scaleHeight(){const e=this.state.getValue().appSettings.scaling;this.floorLabelDrawer?.translatePlaneCanvases(e),this.mapGeometry.scale.set(e.x,e.y,e.z),this.mapGeometry.position.set(-Is*e.x,0,-Is*e.z),this.mapMesh.setScale(e)}highlightMaterial(e){const i=new Set(this.highlighted.map(({node:s})=>s.id)),r=new Set;for(const{node:s}of this.constantHighlight.values())r.add(s.id);for(const s of e){const l=s.userData.id;this.selected&&l===this.selected.node.id?s.color.setHex(this.numberSelectionColor):i.has(l)||r.has(l)?s.color.setHex(this.folderLabelColorHighlighted):s.color?.setHex(this.folderLabelColorNotHighlighted)}}highlightSingleBuilding(e){this.highlighted=[],this.addBuildingToHighlightingList(e),this.highlightBuildings()}addBuildingToHighlightingList(e){this.highlighted.push(e)}clearHoverHighlight(){this.highlighted=[],this.highlightBuildings()}clearHighlight(){this.getMapMesh()&&(this.getMapMesh().clearHighlight(this.selected),this.highlighted=[],this.constantHighlight.clear(),this.mapGeometry.children[0]&&this.resetMaterial(this.mapGeometry.children[0].material))}selectBuilding(e){e.id!==this.selected?.id&&this.store.dispatch(GU({value:e.node.id})),this.getMapMesh().selectBuilding(e,this.folderLabelColorSelected),this.selected=e,this.highlightBuildings(),this.eventEmitter.emit("onBuildingSelected",{building:this.selected}),this.mapGeometry.children[0]&&this.selectMaterial(this.mapGeometry.children[0].material)}animateLabel(e,i,r){if(null!==e&&null!==i){this.resetLabel(),e.material&&(e.material.opacity=1),this.highlightedLineIndex=this.getHoveredLabelLineIndex(r,e),this.highlightedLine=r[this.highlightedLineIndex],this.rayPoint=new pe,this.rayPoint.subVectors(i.ray.origin,e.position);const s=Math.sqrt(this.rayPoint.x**2+this.rayPoint.y**2+this.rayPoint.z**2);this.normedTransformVector=new pe(this.rayPoint.x/s,this.rayPoint.y/s,this.rayPoint.z/s);const u=this.calculateMaxDistance(e,r,i.ray.origin);this.normedTransformVector.multiplyScalar(u),e.position.add(this.normedTransformVector),this.toggleLineAnimation(e),this.highlightedLabel=e}}resetLineHighlight(){this.highlightedLineIndex=-1,this.highlightedLine=null}resetLabel(){null!==this.highlightedLabel&&(this.highlightedLabel.position.sub(this.normedTransformVector),this.highlightedLabel.material.opacity=qh.labelColorAndAlpha.alpha,this.highlightedLine&&this.toggleLineAnimation(this.highlightedLabel),this.highlightedLabel=null)}getHoveredLabelLineIndex(e,i){const r=e.findIndex(({uuid:s})=>s===i.uuid);if(r>=0)return r+1}toggleLineAnimation(e){const i=new pe(e.position.x,e.position.y,e.position.z),s=[...this.highlightedLine.geometry.attributes.position.array],l=(new Yi).setFromPoints([new pe(s[0],s[1],s[2]),i]),u=new ku(l,this.highlightedLine.material);this.labels.children.splice(this.highlightedLineIndex,1,u)}getLabelForHoveredNode(e,i){for(let r=0;r=i.min[r]&&i.max[r]>=e.min[r])}getIntersectionDistanceFunction(e,i){return r=>{const s=this.normedTransformVector.clone();s.multiplyScalar(r),e.translate(s);const l=this.isOverlapping(i,e,"x")+this.isOverlapping(i,e,"y");return 2===l||1===l&&this.isOverlapping(i,e,"z")?r:0}}calculateMaxDistance(e,i,r){const s=(new Ss).setFromObject(e),l=new pe;s.getCenter(l);const u=r.distanceTo(l);let f=u/20;for(let p=0;p0&&this.clearHighlight()}clearSelection(){this.selected&&(this.getMapMesh().clearSelection(this.selected),this.store.dispatch(GU({value:null})),this.eventEmitter.emit("onBuildingDeselected")),this.highlighted.length>0&&this.highlightBuildings(),this.selected=null,this.mapGeometry.children[0]&&this.resetMaterial(this.mapGeometry.children[0].material)}initLights(){const e=new SU(7368816),i=new IS(14737632,1.5);i.position.set(50,10,8).normalize();const r=new IS(14737632,1.5);r.position.set(-50,10,-8).normalize(),this.lights.add(e),this.lights.add(i),this.lights.add(r)}setMapMesh(e,i){this.mapMesh=i,this.initFloorLabels(e),this.mapGeometry.children.length=0,this.mapGeometry.position.x=-Is,this.mapGeometry.position.y=0,this.mapGeometry.position.z=-Is,this.mapGeometry.add(this.mapMesh.getThreeMesh()),this.idToBuilding.setIdToBuilding(this.mapMesh.getMeshDescription().buildings)}getMapMesh(){return this.mapMesh}getSelectedBuilding(){return this.selected}getHighlightedBuilding(){return this.highlighted[0]}dispose(){this.mapMesh?.dispose()}subscribe(e,i){this.eventEmitter.on(e,r=>{i(r)})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(PS),o.KVO(wr))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function xoe(n,t){if(1&n){const e=o.RV6();o.j41(0,"cc-action-icon",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.makeScreenshotToClipboard())}),o.k0s()}if(2&n){const e=o.XpG();o.AVh("disabled",!e.isWriteToClipboardAllowed),o.FS9("title",e.TITLE_CLIPBOARD_BUTTON),o.Y8G("icon","fa fa-camera")}}function Coe(n,t){if(1&n){const e=o.RV6();o.j41(0,"cc-action-icon",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.makeScreenshotToFile())}),o.k0s()}if(2&n){const e=o.XpG();o.FS9("title",e.TITLE_FILE_BUTTON),o.Y8G("icon","fa fa-camera")}}let Moe=(()=>{class n{constructor(e,i,r,s,l){this.threeCameraService=e,this.threeSceneService=i,this.threeRendererService=r,this.store=s,this.state=l,this.SCREENSHOT_HOTKEY_TO_FILE="Ctrl+Alt+S",this.SCREENSHOT_HOTKEY_TO_CLIPBOARD="Ctrl+Alt+F",this.isScreenshotToClipboardEnabled$=this.store.select(uG)}ngOnInit(){this.isWriteToClipboardAllowed=function xre(){return"clipboard"in navigator&&"write"in navigator.clipboard}(),this.TITLE_CLIPBOARD_BUTTON=this.createTitleClipboardButton(),this.TITLE_FILE_BUTTON=this.createTitleFileButton(),Ed(this.SCREENSHOT_HOTKEY_TO_FILE,()=>{this.makeScreenshotToFile()}),Ed(this.SCREENSHOT_HOTKEY_TO_CLIPBOARD,()=>{this.makeScreenshotToClipboard()})}makeScreenshotToFile(){var e=this;return Mn(function*(){const i=e.threeRendererService.renderer,r=e.saveRenderSettings(i),s=yield e.buildScreenShotCanvas(i);e.downloadScreenshot(s,e.state.getValue().files),e.applyRenderSettings(i,r)})()}makeScreenshotToClipboard(){var e=this;return Mn(function*(){if(!e.isWriteToClipboardAllowed)return;const i=e.threeRendererService.renderer,r=e.saveRenderSettings(i),s=yield e.buildScreenShotCanvas(i),l=new Promise(f=>s.toBlob(f));e.applyRenderSettings(i,r);const u=yield l;yield function wre(n){return RU.apply(this,arguments)}(u)})()}downloadScreenshot(e,i){const r=e.toDataURL("image/png"),s=document.createElement("a");s.download=function Sre(n,t){const e=dc(n)?"delta":"",r=M3(n).map(u=>function Tre(n){return n.file.fileMeta.fileName.replace(/(.cc)?.json$/,"")}(u)),s=function Ire(n){return n.length<=3?n.join(C3):[n.at(0),hG,n.at(-1)].join(C3)}(r);return function Fre(n,t,e){const i=[t,n].filter(s=>s.length>0).join(C3),r=255-e.length-PU.length;return i.length<=r?[i,C3,e,PU].join(""):[i.slice(0,r-1),hG,e,PU].join("")}(s,e,t)}(i,"map"),s.href=r,document.body.appendChild(s),s.click(),s.remove()}saveRenderSettings(e){const i=e.getPixelRatio(),r=new vn;return e.getClearColor(r),{pixelRatio:i,clearColor:r}}applyRenderSettings(e,i){const{pixelRatio:r,clearColor:s}=i;e.setPixelRatio(r),e.setClearColor(s),e.render(this.threeSceneService.scene,this.threeCameraService.camera)}buildScreenShotCanvas(e){var i=this;return Mn(function*(){e.setPixelRatio(window.devicePixelRatio),e.setClearColor(new vn(0,0,0),0),e.render(i.threeSceneService.scene,i.threeCameraService.camera);const r=new Set(["cc-logo","cc-tool-bar","cc-view-cube","cc-ribbon-bar","cc-file-extension-bar","cc-attribute-side-bar","cc-loading-file-progess-spinner"]),s=new Set(["legend-panel-button"]),l=document.querySelector("body")?.offsetHeight,u=document.querySelector("cc-ribbon-bar")?.offsetHeight,f=document.querySelector("cc-tool-bar")?.offsetHeight,p=document.querySelector("cc-file-extension-bar")?.offsetHeight,m=u+f+p,_=yield fB()(document.querySelector("body"),{removeContainer:!0,backgroundColor:"#00",scrollY:-m,height:l-m,ignoreElements:b=>r.has(b.tagName.toLowerCase())||s.has(b.id)||"10000"===b.style.zIndex});return i.getCroppedCanvas(_)})()}getCroppedCanvas(e){const i=e.getContext("2d"),r=e.width,s=e.height,u=i.getImageData(0,0,r,s).data;let f=r,p=s,m=0,_=0;for(let F=0;F0&&(f=Math.min(f,F),m=Math.max(m,F),p=Math.min(p,D),_=Math.max(_,D));const b=document.createElement("canvas"),w=b.getContext("2d");return b.width=m-f+1,b.height=_-p+1,w.drawImage(e,f,p,b.width,b.height,0,0,b.width,b.height),b}createTitleClipboardButton(){return this.isWriteToClipboardAllowed?`Take a screenshot of the map with ${this.SCREENSHOT_HOTKEY_TO_CLIPBOARD} (copy to clipboard) or ${this.SCREENSHOT_HOTKEY_TO_FILE} (save as file)`:"Firefox does not support copying to clipboard"}createTitleFileButton(){return`Take a screenshot of the map with ${this.SCREENSHOT_HOTKEY_TO_FILE} (save as file) or ${this.SCREENSHOT_HOTKEY_TO_CLIPBOARD} (copy to clipboard)`}static{this.\u0275fac=function(i){return new(i||n)(o.rXU($h),o.rXU(Dd),o.rXU(wr),o.rXU(Yt),o.rXU(Vi))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-screenshot-button"]],standalone:!0,features:[o.aNF],decls:4,vars:6,consts:[[3,"icon","title","disabled"],[3,"icon","title"],[3,"click","icon","title"]],template:function(i,r){1&i&&(o.DNE(0,xoe,1,4,"cc-action-icon",0),o.nI1(1,"async"),o.DNE(2,Coe,1,2,"cc-action-icon",1),o.nI1(3,"async")),2&i&&(o.vxM(o.bMT(1,2,r.isScreenshotToClipboardEnabled$)?0:-1),o.R7$(2),o.vxM(o.bMT(3,4,r.isScreenshotToClipboardEnabled$)?-1:2))},dependencies:[pl,zn],encapsulation:2})}}return n})();function Eoe(n){return`\t\u2022 ${n.filePath} (${n.value})\n`}function Soe(n){return`${n.toUpperCase()}\n`}function Doe(n){return n.type===ts.FILE&&void 0!==n.attributes}function Boe(n,t,e){for(const[i,r]of Object.entries(n.attributes)){const s=t?.[i]?.direction,l={filePath:n.path,value:r};if(e.has(i)){const u=e.get(i);koe(u,l,s),e.set(i,u.slice(0,10))}else e.set(i,[l])}}function koe(n,t,e){const i=function Roe(n){return 1===n?(t,e)=>t.value-e.value:(t,e)=>e.value-t.value}(e),r=n.findIndex(s=>i(t,s)<0);-1===r?n.push(t):n.splice(r,0,t)}let Poe=(()=>{class n{constructor(e){this.state=e}getClipboardText(){const r=function Foe(n,t){const e=new Map;for(const{data:i}of oo(n))Doe(i)&&Boe(i,t,e);return e}(this.getUnifiedMapNode(),this.state.getValue().fileSettings.attributeDescriptors);return function Toe(n){let t="";for(const[e,i]of n.entries()){t+=Soe(e);for(const r of i)t+=Eoe(r)}return t}(r)}getUnifiedMapNode(){const{unifiedMapNode:e}=Fd(this.state.getValue());return e}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),Ooe=(()=>{class n{constructor(e){this.copyToClipboardService=e}copyNamesToClipBoard(){var e=this;return Mn(function*(){yield navigator.clipboard.writeText(e.copyToClipboardService.getClipboardText())})()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Poe))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-copy-to-clipboard-button"]],standalone:!0,features:[o.aNF],decls:1,vars:0,consts:[["icon","fa fa-clipboard","title","Copy filenames with highest metric values to clipboard",3,"click"]],template:function(i,r){1&i&&(o.j41(0,"cc-action-icon",0),o.bIt("click",function(){return r.copyNamesToClipBoard()}),o.k0s())},dependencies:[pl],encapsulation:2})}}return n})();const WG={type:"change"},qU={type:"start"},XG={type:"end"},R3=new Uh,KG=new Og,Noe=Math.cos(70*Ib_DEG2RAD),na=new pe,hc=2*Math.PI,WU=1e-6;class XU extends yre{constructor(t,e=null){super(t,e),this.state=-1,this.enabled=!0,this.target=new pe,this.cursor=new pe,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minTargetRadius=0,this.maxTargetRadius=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"},this.mouseButtons={LEFT:0,MIDDLE:1,RIGHT:2},this.touches={ONE:0,TWO:2},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this._lastPosition=new pe,this._lastQuaternion=new Vs,this._lastTargetPosition=new pe,this._quat=(new Vs).setFromUnitVectors(t.up,new pe(0,1,0)),this._quatInverse=this._quat.clone().invert(),this._spherical=new eG,this._sphericalDelta=new eG,this._scale=1,this._panOffset=new pe,this._rotateStart=new ft,this._rotateEnd=new ft,this._rotateDelta=new ft,this._panStart=new ft,this._panEnd=new ft,this._panDelta=new ft,this._dollyStart=new ft,this._dollyEnd=new ft,this._dollyDelta=new ft,this._dollyDirection=new pe,this._mouse=new ft,this._performCursorZoom=!1,this._pointers=[],this._pointerPositions={},this._controlActive=!1,this._onPointerMove=Uoe.bind(this),this._onPointerDown=Loe.bind(this),this._onPointerUp=Voe.bind(this),this._onContextMenu=qoe.bind(this),this._onMouseWheel=zoe.bind(this),this._onKeyDown=Goe.bind(this),this._onTouchStart=joe.bind(this),this._onTouchMove=$oe.bind(this),this._onMouseDown=Hoe.bind(this),this._onMouseMove=Qoe.bind(this),this._interceptControlDown=Woe.bind(this),this._interceptControlUp=Xoe.bind(this),null!==this.domElement&&this.connect(),this.update()}connect(){this.domElement.addEventListener("pointerdown",this._onPointerDown),this.domElement.addEventListener("pointercancel",this._onPointerUp),this.domElement.addEventListener("contextmenu",this._onContextMenu),this.domElement.addEventListener("wheel",this._onMouseWheel,{passive:!1}),this.domElement.getRootNode().addEventListener("keydown",this._interceptControlDown,{passive:!0,capture:!0}),this.domElement.style.touchAction="none"}disconnect(){this.domElement.removeEventListener("pointerdown",this._onPointerDown),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.domElement.removeEventListener("pointercancel",this._onPointerUp),this.domElement.removeEventListener("wheel",this._onMouseWheel),this.domElement.removeEventListener("contextmenu",this._onContextMenu),this.stopListenToKeyEvents(),this.domElement.getRootNode().removeEventListener("keydown",this._interceptControlDown,{capture:!0}),this.domElement.style.touchAction="auto"}dispose(){this.disconnect()}getPolarAngle(){return this._spherical.phi}getAzimuthalAngle(){return this._spherical.theta}getDistance(){return this.object.position.distanceTo(this.target)}listenToKeyEvents(t){t.addEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=t}stopListenToKeyEvents(){null!==this._domElementKeyEvents&&(this._domElementKeyEvents.removeEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=null)}saveState(){this.target0.copy(this.target),this.position0.copy(this.object.position),this.zoom0=this.object.zoom}reset(){this.target.copy(this.target0),this.object.position.copy(this.position0),this.object.zoom=this.zoom0,this.object.updateProjectionMatrix(),this.dispatchEvent(WG),this.update(),this.state=-1}update(t=null){const e=this.object.position;na.copy(e).sub(this.target),na.applyQuaternion(this._quat),this._spherical.setFromVector3(na),this.autoRotate&&-1===this.state&&this._rotateLeft(this._getAutoRotationAngle(t)),this.enableDamping?(this._spherical.theta+=this._sphericalDelta.theta*this.dampingFactor,this._spherical.phi+=this._sphericalDelta.phi*this.dampingFactor):(this._spherical.theta+=this._sphericalDelta.theta,this._spherical.phi+=this._sphericalDelta.phi);let i=this.minAzimuthAngle,r=this.maxAzimuthAngle;isFinite(i)&&isFinite(r)&&(i<-Math.PI?i+=hc:i>Math.PI&&(i-=hc),r<-Math.PI?r+=hc:r>Math.PI&&(r-=hc),this._spherical.theta=i<=r?Math.max(i,Math.min(r,this._spherical.theta)):this._spherical.theta>(i+r)/2?Math.max(i,this._spherical.theta):Math.min(r,this._spherical.theta)),this._spherical.phi=Math.max(this.minPolarAngle,Math.min(this.maxPolarAngle,this._spherical.phi)),this._spherical.makeSafe(),!0===this.enableDamping?this.target.addScaledVector(this._panOffset,this.dampingFactor):this.target.add(this._panOffset),this.target.sub(this.cursor),this.target.clampLength(this.minTargetRadius,this.maxTargetRadius),this.target.add(this.cursor);let s=!1;if(this.zoomToCursor&&this._performCursorZoom||this.object.isOrthographicCamera)this._spherical.radius=this._clampDistance(this._spherical.radius);else{const l=this._spherical.radius;this._spherical.radius=this._clampDistance(this._spherical.radius*this._scale),s=l!=this._spherical.radius}if(na.setFromSpherical(this._spherical),na.applyQuaternion(this._quatInverse),e.copy(this.target).add(na),this.object.lookAt(this.target),!0===this.enableDamping?(this._sphericalDelta.theta*=1-this.dampingFactor,this._sphericalDelta.phi*=1-this.dampingFactor,this._panOffset.multiplyScalar(1-this.dampingFactor)):(this._sphericalDelta.set(0,0,0),this._panOffset.set(0,0,0)),this.zoomToCursor&&this._performCursorZoom){let l=null;if(this.object.isPerspectiveCamera){const u=na.length();l=this._clampDistance(u*this._scale);const f=u-l;this.object.position.addScaledVector(this._dollyDirection,f),this.object.updateMatrixWorld(),s=!!f}else if(this.object.isOrthographicCamera){const u=new pe(this._mouse.x,this._mouse.y,0);u.unproject(this.object);const f=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),this.object.updateProjectionMatrix(),s=f!==this.object.zoom;const p=new pe(this._mouse.x,this._mouse.y,0);p.unproject(this.object),this.object.position.sub(p).add(u),this.object.updateMatrixWorld(),l=na.length()}else console.warn("WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled."),this.zoomToCursor=!1;null!==l&&(this.screenSpacePanning?this.target.set(0,0,-1).transformDirection(this.object.matrix).multiplyScalar(l).add(this.object.position):(R3.origin.copy(this.object.position),R3.direction.set(0,0,-1).transformDirection(this.object.matrix),Math.abs(this.object.up.dot(R3.direction))WU||8*(1-this._lastQuaternion.dot(this.object.quaternion))>WU||this._lastTargetPosition.distanceToSquared(this.target)>WU)&&(this.dispatchEvent(WG),this._lastPosition.copy(this.object.position),this._lastQuaternion.copy(this.object.quaternion),this._lastTargetPosition.copy(this.target),!0)}_getAutoRotationAngle(t){return null!==t?hc/60*this.autoRotateSpeed*t:hc/60/60*this.autoRotateSpeed}_getZoomScale(t){const e=Math.abs(.01*t);return Math.pow(.95,this.zoomSpeed*e)}_rotateLeft(t){this._sphericalDelta.theta-=t}_rotateUp(t){this._sphericalDelta.phi-=t}_panLeft(t,e){na.setFromMatrixColumn(e,0),na.multiplyScalar(-t),this._panOffset.add(na)}_panUp(t,e){!0===this.screenSpacePanning?na.setFromMatrixColumn(e,1):(na.setFromMatrixColumn(e,0),na.crossVectors(this.object.up,na)),na.multiplyScalar(t),this._panOffset.add(na)}_pan(t,e){const i=this.domElement;if(this.object.isPerspectiveCamera){na.copy(this.object.position).sub(this.target);let s=na.length();s*=Math.tan(this.object.fov/2*Math.PI/180),this._panLeft(2*t*s/i.clientHeight,this.object.matrix),this._panUp(2*e*s/i.clientHeight,this.object.matrix)}else this.object.isOrthographicCamera?(this._panLeft(t*(this.object.right-this.object.left)/this.object.zoom/i.clientWidth,this.object.matrix),this._panUp(e*(this.object.top-this.object.bottom)/this.object.zoom/i.clientHeight,this.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),this.enablePan=!1)}_dollyOut(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale/=t:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_dollyIn(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale*=t:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_updateZoomParameters(t,e){if(!this.zoomToCursor)return;this._performCursorZoom=!0;const i=this.domElement.getBoundingClientRect(),s=e-i.top,u=i.height;this._mouse.x=(t-i.left)/i.width*2-1,this._mouse.y=-s/u*2+1,this._dollyDirection.set(this._mouse.x,this._mouse.y,1).unproject(this.object).sub(this.object.position).normalize()}_clampDistance(t){return Math.max(this.minDistance,Math.min(this.maxDistance,t))}_handleMouseDownRotate(t){this._rotateStart.set(t.clientX,t.clientY)}_handleMouseDownDolly(t){this._updateZoomParameters(t.clientX,t.clientX),this._dollyStart.set(t.clientX,t.clientY)}_handleMouseDownPan(t){this._panStart.set(t.clientX,t.clientY)}_handleMouseMoveRotate(t){this._rotateEnd.set(t.clientX,t.clientY),this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const e=this.domElement;this._rotateLeft(hc*this._rotateDelta.x/e.clientHeight),this._rotateUp(hc*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd),this.update()}_handleMouseMoveDolly(t){this._dollyEnd.set(t.clientX,t.clientY),this._dollyDelta.subVectors(this._dollyEnd,this._dollyStart),this._dollyDelta.y>0?this._dollyOut(this._getZoomScale(this._dollyDelta.y)):this._dollyDelta.y<0&&this._dollyIn(this._getZoomScale(this._dollyDelta.y)),this._dollyStart.copy(this._dollyEnd),this.update()}_handleMouseMovePan(t){this._panEnd.set(t.clientX,t.clientY),this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd),this.update()}_handleMouseWheel(t){this._updateZoomParameters(t.clientX,t.clientY),t.deltaY<0?this._dollyIn(this._getZoomScale(t.deltaY)):t.deltaY>0&&this._dollyOut(this._getZoomScale(t.deltaY)),this.update()}_handleKeyDown(t){let e=!1;switch(t.code){case this.keys.UP:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateUp(hc*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,this.keyPanSpeed),e=!0;break;case this.keys.BOTTOM:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateUp(-hc*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,-this.keyPanSpeed),e=!0;break;case this.keys.LEFT:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateLeft(hc*this.rotateSpeed/this.domElement.clientHeight):this._pan(this.keyPanSpeed,0),e=!0;break;case this.keys.RIGHT:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateLeft(-hc*this.rotateSpeed/this.domElement.clientHeight):this._pan(-this.keyPanSpeed,0),e=!0}e&&(t.preventDefault(),this.update())}_handleTouchStartRotate(t){if(1===this._pointers.length)this._rotateStart.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t);this._rotateStart.set(.5*(t.pageX+e.x),.5*(t.pageY+e.y))}}_handleTouchStartPan(t){if(1===this._pointers.length)this._panStart.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t);this._panStart.set(.5*(t.pageX+e.x),.5*(t.pageY+e.y))}}_handleTouchStartDolly(t){const e=this._getSecondPointerPosition(t),i=t.pageX-e.x,r=t.pageY-e.y,s=Math.sqrt(i*i+r*r);this._dollyStart.set(0,s)}_handleTouchStartDollyPan(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enablePan&&this._handleTouchStartPan(t)}_handleTouchStartDollyRotate(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enableRotate&&this._handleTouchStartRotate(t)}_handleTouchMoveRotate(t){if(1==this._pointers.length)this._rotateEnd.set(t.pageX,t.pageY);else{const i=this._getSecondPointerPosition(t);this._rotateEnd.set(.5*(t.pageX+i.x),.5*(t.pageY+i.y))}this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const e=this.domElement;this._rotateLeft(hc*this._rotateDelta.x/e.clientHeight),this._rotateUp(hc*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd)}_handleTouchMovePan(t){if(1===this._pointers.length)this._panEnd.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t);this._panEnd.set(.5*(t.pageX+e.x),.5*(t.pageY+e.y))}this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd)}_handleTouchMoveDolly(t){const e=this._getSecondPointerPosition(t),i=t.pageX-e.x,r=t.pageY-e.y,s=Math.sqrt(i*i+r*r);this._dollyEnd.set(0,s),this._dollyDelta.set(0,Math.pow(this._dollyEnd.y/this._dollyStart.y,this.zoomSpeed)),this._dollyOut(this._dollyDelta.y),this._dollyStart.copy(this._dollyEnd),this._updateZoomParameters(.5*(t.pageX+e.x),.5*(t.pageY+e.y))}_handleTouchMoveDollyPan(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enablePan&&this._handleTouchMovePan(t)}_handleTouchMoveDollyRotate(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enableRotate&&this._handleTouchMoveRotate(t)}_addPointer(t){this._pointers.push(t.pointerId)}_removePointer(t){delete this._pointerPositions[t.pointerId];for(let e=0;e>1|(21845&Go)<<1;LS[Go]=((65280&(Gg=(61680&(Gg=(52428&Gg)>>2|(13107&Gg)<<2))>>4|(3855&Gg)<<4))>>8|(255&Gg)<<8)>>1}var Wh=function(n,t,e){for(var i=n.length,r=0,s=new Sl(t);r>f]=p}else for(u=new Sl(i),r=0;r>15-n[r]);return u},jg=new vo(288);for(Go=0;Go<144;++Go)jg[Go]=8;for(Go=144;Go<256;++Go)jg[Go]=9;for(Go=256;Go<280;++Go)jg[Go]=7;for(Go=280;Go<288;++Go)jg[Go]=8;var US=new vo(32);for(Go=0;Go<32;++Go)US[Go]=5;var nj=Wh(jg,9,0),rj=Wh(US,5,0),VS=function(n){return(n+7)/8|0},$g=function(n,t,e){return(null==t||t<0)&&(t=0),(null==e||e>n.length)&&(e=n.length),new vo(n.subarray(t,e))},sj=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],Nr=function(n,t,e){var i=new Error(t||sj[n]);if(i.code=n,Error.captureStackTrace&&Error.captureStackTrace(i,Nr),!e)throw i;return i},Xh=function(n,t,e){var i=t/8|0;n[i]|=e<<=7&t,n[i+1]|=e>>8},Kw=function(n,t,e){var i=t/8|0;n[i]|=e<<=7&t,n[i+1]|=e>>8,n[i+2]|=e>>16},U3=function(n,t){for(var e=[],i=0;ib&&(b=s[i].s);var w=new Sl(b+1),F=V3(e[m-1],w,0);if(F>t){i=0;var D=0,T=F-t,I=1<t))break;D+=I-(1<>=T;D>0;){var R=s[i].s;w[R]=0&&D;--i){var P=s[i].s;w[P]==t&&(--w[P],++D)}F=t}return{t:new vo(w),l:F}},V3=function(n,t,e){return-1==n.s?Math.max(V3(n.l,t,e+1),V3(n.r,t,e+1)):t[n.s]=e},ZU=function(n){for(var t=n.length;t&&!n[--t];);for(var e=new Sl(++t),i=0,r=n[0],s=1,l=function(f){e[i++]=f},u=1;u<=t;++u)if(n[u]==r&&u!=t)++s;else{if(!r&&s>2){for(;s>138;s-=138)l(32754);s>2&&(l(s>10?s-11<<5|28690:s-3<<5|12305),s=0)}else if(s>3){for(l(r),--s;s>6;s-=6)l(8304);s>2&&(l(s-3<<5|8208),s=0)}for(;s--;)l(r);s=1,r=n[u]}return{c:e.subarray(0,i),n:t}},Yw=function(n,t){for(var e=0,i=0;i>8,n[r+2]=255^n[r],n[r+3]=255^n[r+1];for(var s=0;s4&&!q[NS[ke-1]];--ke);var Ce,Oe,Fe,ht,Ue=p+5<<3,de=Yw(r,jg)+Yw(s,US)+l,ze=Yw(r,b)+Yw(s,D)+l+14+3*ke+Yw(te,q)+2*te[16]+3*te[17]+7*te[18];if(f>=0&&Ue<=de&&Ue<=ze)return JU(t,m,n.subarray(f,f+p));if(Xh(t,m,1+(ze15&&(Xh(t,m,Kn[ie]>>5&127),m+=Kn[ie]>>12)}}else Ce=nj,Oe=jg,Fe=rj,ht=US;for(ie=0;ie255){var Me;Kw(t,m,Ce[257+(Me=be>>18&31)]),m+=Oe[Me+257],Me>7&&(Xh(t,m,be>>23&31),m+=Ww[Me]);var Ae=31&be;Kw(t,m,Fe[Ae]),m+=ht[Ae],Ae>3&&(Kw(t,m,be>>5&8191),m+=Xw[Ae])}else Kw(t,m,Ce[be]),m+=Oe[be]}return Kw(t,m,Ce[256]),m+Oe[256]},aj=new OS([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),t8=new vo(0),cj=function(){for(var n=new Int32Array(256),t=0;t<256;++t){for(var e=t,i=9;--i;)e=(1&e&&-306674912)^e>>>1;n[t]=e}return n}(),H3=function(){var n=-1;return{p:function(t){for(var e=n,i=0;i>>8;n=e},d:function(){return~n}}},Q3=function(n,t,e,i,r){if(!r&&(r={l:1},t.dictionary)){var s=t.dictionary.subarray(-32768),l=new vo(s.length+n.length);l.set(s),l.set(n,s.length),n=l,r.w=s.length}return function(n,t,e,i,r,s){var l=s.z||n.length,u=new vo(i+l+5*(1+Math.ceil(l/7e3))+r),f=u.subarray(i,u.length-r),p=s.l,m=7&(s.r||0);if(t){m&&(f[0]=s.r>>3);for(var _=aj[t-1],b=_>>13,w=8191&_,F=(1<7e3||q>24576)&&(Ce>423||!p)){m=e8(n,f,0,P,ee,J,ie,q,ke,W-ke,m),q=te=ie=0,ke=W;for(var Oe=0;Oe<286;++Oe)ee[Oe]=0;for(Oe=0;Oe<30;++Oe)J[Oe]=0}var Fe=2,ht=0,Mt=w,Bt=de-ze&32767;if(Ce>2&&Ue==R(W-Bt))for(var rn=Math.min(b,Ce)-1,Kn=Math.min(32767,W),Me=Math.min(258,Ce);Bt<=Kn&&--Mt&&de!=ze;){if(n[W+Fe]==n[W+Fe-Bt]){for(var be=0;beFe){if(Fe=be,ht=Bt,be>rn)break;var Ae=Math.min(Bt,be-2),le=0;for(Oe=0;Oele&&(le=at,ze=dt)}}}Bt+=(de=ze)-(ze=D[de])&32767}if(ht){P[q++]=268435456|P3[Fe]<<18|YU[ht];var zt=31&P3[Fe],ue=31&YU[ht];ie+=Ww[zt]+Xw[ue],++ee[257+zt],++J[ue],ce=W+Fe,++te}else P[q++]=n[W],++ee[n[W]]}}for(W=Math.max(W,ce);W=l&&(f[m/8|0]=p,yt=l),m=JU(f,m+1,n.subarray(W,yt))}s.i=l}return $g(u,0,i+VS(m)+r)}(n,null==t.level?6:t.level,null==t.mem?r.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(n.length)))):20:12+t.mem,e,i,r)},z3=function(n,t){var e={};for(var i in n)e[i]=n[i];for(var i in t)e[i]=t[i];return e},Ko=function(n,t,e){for(;e;++t)n[t]=e,e>>>=8};function j3(n,t){return Q3(n,t||{},0,0)}var c8=function(n,t,e,i){for(var r in n){var s=n[r],l=t+r,u=i;Array.isArray(s)&&(u=z3(i,s[1]),s=s[0]),s instanceof vo?e[l]=[s,u]:(e[l+="/"]=[new vo(0),u],c8(s,l,e,i))}},yj=typeof TextEncoder<"u"&&new TextEncoder,d8=typeof TextDecoder<"u"&&new TextDecoder;try{d8.decode(t8,{stream:!0})}catch{}function Wg(n,t){if(t){for(var e=new vo(n.length),i=0;i>1)),l=0,u=function(m){s[l++]=m};for(i=0;is.length){var f=new vo(l+8+(r-i<<1));f.set(s),s=f}var p=n.charCodeAt(i);p<128||t?u(p):p<2048?(u(192|p>>6),u(128|63&p)):p>55295&&p<57344?(u(240|(p=65536+(1047552&p)|1023&n.charCodeAt(++i))>>18),u(128|p>>12&63),u(128|p>>6&63),u(128|63&p)):(u(224|p>>12),u(128|p>>6&63),u(128|63&p))}return $g(s,0,l)}var QS=function(n){var t=0;if(n)for(var e in n){var i=n[e].length;i>65535&&Nr(9),t+=i+4}return t},$3=function(n,t,e,i,r,s,l,u){var f=i.length,p=e.extra,m=u&&u.length,_=QS(p);Ko(n,t,null!=l?33639248:67324752),t+=4,null!=l&&(n[t++]=20,n[t++]=e.os),n[t]=20,t+=2,n[t++]=e.flag<<1|(s<0&&8),n[t++]=r&&8,n[t++]=255&e.compression,n[t++]=e.compression>>8;var b=new Date(null==e.mtime?Date.now():e.mtime),w=b.getFullYear()-1980;if((w<0||w>119)&&Nr(10),Ko(n,t,w<<25|b.getMonth()+1<<21|b.getDate()<<16|b.getHours()<<11|b.getMinutes()<<5|b.getSeconds()>>1),t+=4,-1!=s&&(Ko(n,t,e.crc),Ko(n,t+4,s<0?-s-2:s),Ko(n,t+8,e.size)),Ko(n,t+12,f),Ko(n,t+14,_),t+=16,null!=l&&(Ko(n,t,m),Ko(n,t+6,e.attrs),Ko(n,t+10,l),t+=14),n.set(i,t),t+=f,_)for(var F in p){var D=p[F],T=D.length;Ko(n,t,+F),Ko(n,t+2,T),n.set(D,t+4),t+=4+T}return m&&(n.set(u,t),t+=m),t};function Ase(n){return` \n \n \n \n \n \n`}function u8(){return(u8=Mn(function*(n){const{vertices:t,triangles:e,volumes:i}=function Mj(n){const t=[],e=[],i=[],r=new Map,s=new Map;for(const u of n.children)h8(u,t,e,r,1,s,i);return{vertices:t,triangles:e,volumes:i}}(n),r=function gse(n,t){const i=function bse(n){let t=" \n";for(const e of n)t+=` ${e}\n`;return t+=" \n",t}(n),r=function vse(n){let t=" \n";for(const e of n)t+=` ${e}\n`;return t+=" \n",t}(t);return'\n\n PrusaSlicer-2.7.2\n \n \n \n'+i+r+' \n \n \n \n\n'}(t,e),s=function fse(n){let t='\n\n \n \n';for(const e of n)t+=Ase(e);return t+=" \n\n",t}(i);return function dse(n,t){t||(t={});var e={},i=[];c8(n,"",e,t);var r=0,s=0;for(var l in e){var u=e[l],f=u[0],p=u[1],m=0==p.level?0:8,b=(_=Wg(l)).length,w=p.comment,F=w&&Wg(w),D=F&&F.length,T=QS(p.extra);b>65535&&Nr(11);var I=m?j3(f,p):f,O=I.length,R=H3();R.p(f),i.push(z3(p,{size:f.length,crc:R.d(),c:I,f:_,m:F,u:b!=l.length||F&&w.length!=D,o:r,compression:m})),r+=30+b+T+O,s+=76+2*(b+T)+(D||0)+O}for(var P=new vo(s+22),ee=r,J=s-r,te=0;te\n \n \n')},Metadata:{"Slic3r_PE_model.config":Wg(s)},"[Content_Types].xml":Wg('\n\n \n \n')},{comment:"created by CodeCharta"}).buffer})).apply(this,arguments)}function h8(n,t,e,i,r,s,l,u=void 0){if(!n.visible)return;for(const m of n.children){let _=n.matrix;u&&(_=u.clone().multiply(n.matrix)),h8(m,t,e,i,r,s,l,_)}const f=function Ej(n){const t=new Map;if(n.geometry.attributes.color)for(let e=0;el);t.set(i,r)}return t}(n),p=new Map;for(const[m,_]of f.entries()){const b=e.length;Sj(t,i,p,_,n,u),Tj(n.geometry,e,p,_),Ij(n,m,b,e.length-1,l,r,s),r++}}function Sj(n,t,e,i,r,s){const l=r.geometry.attributes.position;for(const u of i){const f=new pe(l.getX(u),l.getY(u),l.getZ(u));f.applyMatrix4(r.matrix),s&&f.applyMatrix4(s);const p=``;t.has(p)?e.set(u,t.get(p)):(n.push(p),t.set(p,n.length-1),e.set(u,n.length-1))}}function Tj(n,t,e,i){if(n.index){const r=n.index;for(let s=0;s`;t.push(p)}}}else for(let r=0;r`;t.push(s)}}function Ij(n,t,e,i,r,s,l){l.has(t)||l.set(t,l.size+1);const u=l.get(t);r.push({id:s,name:"Map"===n.name?`${n.name} 0x${t}`:n.name,color:t,extruder:u,firstTriangleId:e,lastTriangleId:i})}function f8(n,t){return(n instanceof ae?[n.getX(t),n.getY(t),n.getZ(t)]:[n[t],n[t+1],n[t+2]]).map(i=>Math.round(255*i).toString(16).padStart(2,"0")).join("")}"function"==typeof queueMicrotask?queueMicrotask:"function"==typeof setTimeout&&setTimeout;class p8{constructor(t){this.isFont=!0,this.type="Font",this.data=t}generateShapes(t,e=100){const i=[],r=function xse(n,t,e){const i=Array.from(n),r=t/e.resolution,s=(e.boundingBox.yMax-e.boundingBox.yMin+e.underlineThickness)*r,l=[];let u=0,f=0;for(let p=0;p{e.geometry=r});const i=new ac;return i.copy(t.defaultMaterial),i.polygonOffset=!0,i.polygonOffsetUnits=1,i.polygonOffsetFactor=.1,e.material=i,e.updateColor(t.numberOfColors),new Promise(r=>{r(e)})})()}changeSize(t){this.boundingBoxCalculated=!1,this.createBaseplateGeometryStrategy.create(t).then(e=>{this.geometry=e})}}class ov extends Ou{constructor(t,e,i=1,r=!0){super(t,e),this.minWidth=i,this.manualVisibility=r}setManualVisibility(t){this.manualVisibility=t,this.updateVisibility()}setCurrentWidth(t){this.currentWidth=t,this.updateVisibility()}updateVisibility(){this.visible=this.manualVisibility&&this.visibleBecauseOfColor&&(!this.currentWidth||this.currentWidth>=this.minWidth)}updateColor(t){this.visibleBecauseOfColor=this.colorChangeStrategy.execute(t,this);for(const e of this.children)e instanceof Ou&&e.updateColor(t);this.updateVisibility()}}class fc{execute(t,e){if(t<=1)return!1;let i;return i=t<4?[1,1,1]:4===t?[1,1,0]:[1,1,1],e.material.color.setRGB(i[0],i[1],i[2]),!0}}class Tse extends ov{constructor(){super("Map",new fc,1,!1)}init(t){var e=this;return Mn(function*(){e.material=t.originalMapMesh.clone().material,e.originalColors=t.originalMapMesh.geometry.attributes.color;const i=t.originalMapMesh.geometry.clone();return i.computeBoundingBox(),i.rotateX(Math.PI/2),e.updateMapGeometry(t,i),i.computeBoundingBox(),i.rotateZ(-Math.PI/2),e.geometry=i,e})()}updateMapGeometry(t,e){const i=t.width-2*t.mapSideOffset,s=i/e.boundingBox.max.x;return e.scale(s,s,s),e.translate(-i/2,i/2,0),this.updateMapColors(this.originalColors,e,t.numberOfColors),e}updateMapColors(t,e,i){const r=[];for(let s=0;s.75&&u>.75?p=i<4?[1,1,1]:[1,1,0]:l>.45&&u<.1?p=i<4?[1,1,1]:[1,0,0]:l<5&&u>.6?p=i<4?[1,1,1]:[0,1,0]:(console.error("Unknown color"),p=[1,1,1]),r.push(...p)}e.setAttribute("color",new Zt(r,3))}changeSize(t,e){var i=this;return Mn(function*(){const r=(t.width-2*t.mapSideOffset)/(e-2*t.mapSideOffset);i.geometry.scale(r,r,r)})()}updateColor(t){this.updateMapColors(this.originalColors,this.geometry,t)}}const Ise=ic;class A8 extends cc{constructor(t){super(t),this.defaultDPI=90,this.defaultUnit="px"}load(t,e,i,r){const s=this,l=new jh(s.manager);l.setPath(s.path),l.setRequestHeader(s.requestHeader),l.setWithCredentials(s.withCredentials),l.load(t,function(u){try{e(s.parse(u))}catch(f){r?r(f):console.error(f),s.manager.itemError(t)}},i,r)}parse(t){const e=this;function l(Me,be,Ae,le,dt,Ot,at,zt){if(0==be||0==Ae)return void Me.lineTo(zt.x,zt.y);le=le*Math.PI/180,be=Math.abs(be),Ae=Math.abs(Ae);const ue=(at.x-zt.x)/2,yt=(at.y-zt.y)/2,Ze=Math.cos(le)*ue+Math.sin(le)*yt,Ct=-Math.sin(le)*ue+Math.cos(le)*yt;let _t=be*be,It=Ae*Ae;const Pe=Ze*Ze,Se=Ct*Ct,_e=Pe/_t+Se/It;if(_e>1){const hn=Math.sqrt(_e);_t=(be*=hn)*be,It=(Ae*=hn)*Ae}const oe=_t*Se+It*Pe;let Ht=Math.sqrt(Math.max(0,(_t*It-oe)/oe));dt===Ot&&(Ht=-Ht);const Ut=Ht*be*Ct/Ae,jt=-Ht*Ae*Ze/be,Ti=Math.cos(le)*Ut-Math.sin(le)*jt+(at.x+zt.x)/2,Dn=Math.sin(le)*Ut+Math.cos(le)*jt+(at.y+zt.y)/2,Yn=u(1,0,(Ze-Ut)/be,(Ct-jt)/Ae),or=u((Ze-Ut)/be,(Ct-jt)/Ae,(-Ze-Ut)/be,(-Ct-jt)/Ae)%(2*Math.PI);Me.currentPath.absellipse(Ti,Dn,be,Ae,Yn,Yn+or,0===Ot,le)}function u(Me,be,Ae,le){const dt=Me*Ae+be*le,Ot=Math.sqrt(Me*Me+be*be)*Math.sqrt(Ae*Ae+le*le);let at=Math.acos(Math.max(-1,Math.min(1,dt/Ot)));return Me*le-be*Ae<0&&(at=-at),at}function F(Me,be){be=Object.assign({},be);let Ae={};if(Me.hasAttribute("class")){const at=Me.getAttribute("class").split(/\s/).filter(Boolean).map(zt=>zt.trim());for(let zt=0;ztNumber.EPSILON}function W(Me){const be=Me.elements;return Math.sqrt(be[0]*be[0]+be[1]*be[1])}function q(Me){const be=Me.elements;return Math.sqrt(be[3]*be[3]+be[4]*be[4])}const ke=[],Ue={},de=[],ze=new zi,Ce=new zi,Oe=new zi,Fe=new zi,ht=new ft,Mt=new pe,Bt=new zi,rn=(new DOMParser).parseFromString(t,"image/svg+xml");return function i(Me,be){if(1!==Me.nodeType)return;const Ae=function P(Me){if(!(Me.hasAttribute("transform")||"use"===Me.nodeName&&(Me.hasAttribute("x")||Me.hasAttribute("y"))))return null;const be=function ee(Me){const be=new zi,Ae=ze;if("use"===Me.nodeName&&(Me.hasAttribute("x")||Me.hasAttribute("y"))){const le=R(Me.getAttribute("x")),dt=R(Me.getAttribute("y"));be.translate(le,dt)}if(Me.hasAttribute("transform")){const le=Me.getAttribute("transform").split(")");for(let dt=le.length-1;dt>=0;dt--){const Ot=le[dt].trim();if(""===Ot)continue;const at=Ot.indexOf("(");if(at>0&&at=1){let Ct=0;yt.length>=2&&(Ct=yt[1]),Ae.translate(yt[0],Ct)}break;case"rotate":if(yt.length>=1){let Ze=0,Ct=0,_t=0;Ze=yt[0]*Math.PI/180,yt.length>=3&&(Ct=yt[1],_t=yt[2]),Ce.makeTranslation(-Ct,-_t),Oe.makeRotation(Ze),Fe.multiplyMatrices(Oe,Ce),Ce.makeTranslation(Ct,_t),Ae.multiplyMatrices(Ce,Fe)}break;case"scale":if(yt.length>=1){const Ze=yt[0];let Ct=Ze;yt.length>=2&&(Ct=yt[1]),Ae.scale(Ze,Ct)}break;case"skewX":1===yt.length&&Ae.set(1,Math.tan(yt[0]*Math.PI/180),0,0,1,0,0,0,1);break;case"skewY":1===yt.length&&Ae.set(1,0,0,Math.tan(yt[0]*Math.PI/180),1,0,0,0,1);break;case"matrix":6===yt.length&&Ae.set(yt[0],yt[2],yt[4],yt[1],yt[3],yt[5],0,0,1)}}be.premultiply(Ae)}}return be}(Me);return de.length>0&&be.premultiply(de[de.length-1]),Bt.copy(be),de.push(be),be}(Me);let le=!1,dt=null;switch(Me.nodeName){case"svg":case"g":be=F(Me,be);break;case"style":!function s(Me){if(Me.sheet&&Me.sheet.cssRules&&Me.sheet.cssRules.length)for(let be=0;bedt.trim());for(let dt=0;dt""!==at));Ue[le[dt]]=Object.assign(Ue[le[dt]]||{},Ot)}}}(Me);break;case"path":be=F(Me,be),Me.hasAttribute("d")&&(dt=function r(Me){const be=new Hg,Ae=new ft,le=new ft,dt=new ft;let Ot=!0,at=!1;const zt=Me.getAttribute("d");if(""===zt||"none"===zt)return null;const ue=zt.match(/[a-df-z][^a-df-z]*/gi);for(let yt=0,Ze=ue.length;yt0&&(Ae.copy(dt),be.currentPath.currentPoint.copy(Ae),Ot=!0);break;default:console.warn(Ct)}at=!1}return be}(Me));break;case"rect":be=F(Me,be),dt=function f(Me){const be=R(Me.getAttribute("x")||0),Ae=R(Me.getAttribute("y")||0),le=R(Me.getAttribute("rx")||Me.getAttribute("ry")||0),dt=R(Me.getAttribute("ry")||Me.getAttribute("rx")||0),Ot=R(Me.getAttribute("width")),at=R(Me.getAttribute("height")),zt=.448084975506,ue=new Hg;return ue.moveTo(be+le,Ae),ue.lineTo(be+Ot-le,Ae),(0!==le||0!==dt)&&ue.bezierCurveTo(be+Ot-le*zt,Ae,be+Ot,Ae+dt*zt,be+Ot,Ae+dt),ue.lineTo(be+Ot,Ae+at-dt),(0!==le||0!==dt)&&ue.bezierCurveTo(be+Ot,Ae+at-dt*zt,be+Ot-le*zt,Ae+at,be+Ot-le,Ae+at),ue.lineTo(be+le,Ae+at),(0!==le||0!==dt)&&ue.bezierCurveTo(be+le*zt,Ae+at,be,Ae+at-dt*zt,be,Ae+at-dt),ue.lineTo(be,Ae+dt),(0!==le||0!==dt)&&ue.bezierCurveTo(be,Ae+dt*zt,be+le*zt,Ae,be+le,Ae),ue}(Me);break;case"polygon":be=F(Me,be),dt=function p(Me){const le=new Hg;let dt=0;return Me.getAttribute("points").replace(/([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g,function be(Ot,at,zt){const ue=R(at),yt=R(zt);0===dt?le.moveTo(ue,yt):le.lineTo(ue,yt),dt++}),le.currentPath.autoClose=!0,le}(Me);break;case"polyline":be=F(Me,be),dt=function m(Me){const le=new Hg;let dt=0;return Me.getAttribute("points").replace(/([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g,function be(Ot,at,zt){const ue=R(at),yt=R(zt);0===dt?le.moveTo(ue,yt):le.lineTo(ue,yt),dt++}),le.currentPath.autoClose=!1,le}(Me);break;case"circle":be=F(Me,be),dt=function _(Me){const be=R(Me.getAttribute("cx")||0),Ae=R(Me.getAttribute("cy")||0),le=R(Me.getAttribute("r")||0),dt=new Xb;dt.absarc(be,Ae,le,0,2*Math.PI);const Ot=new Hg;return Ot.subPaths.push(dt),Ot}(Me);break;case"ellipse":be=F(Me,be),dt=function b(Me){const be=R(Me.getAttribute("cx")||0),Ae=R(Me.getAttribute("cy")||0),le=R(Me.getAttribute("rx")||0),dt=R(Me.getAttribute("ry")||0),Ot=new Xb;Ot.absellipse(be,Ae,le,dt,0,2*Math.PI);const at=new Hg;return at.subPaths.push(Ot),at}(Me);break;case"line":be=F(Me,be),dt=function w(Me){const be=R(Me.getAttribute("x1")||0),Ae=R(Me.getAttribute("y1")||0),le=R(Me.getAttribute("x2")||0),dt=R(Me.getAttribute("y2")||0),Ot=new Hg;return Ot.moveTo(be,Ae),Ot.lineTo(le,dt),Ot.currentPath.autoClose=!1,Ot}(Me);break;case"defs":le=!0;break;case"use":be=F(Me,be);const zt=(Me.getAttributeNS("http://www.w3.org/1999/xlink","href")||"").substring(1),ue=Me.viewportElement.getElementById(zt);ue?i(ue,be):console.warn("SVGLoader: 'use node' references non-existent node id: "+zt)}dt&&(void 0!==be.fill&&"none"!==be.fill&&dt.color.setStyle(be.fill,Ise),function J(Me,be){function Ae(at){Mt.set(at.x,at.y,1).applyMatrix3(be),at.set(Mt.x,Mt.y)}function le(at){const zt=at.xRadius,ue=at.yRadius,yt=Math.cos(at.aRotation),Ze=Math.sin(at.aRotation),Ct=new pe(zt*yt,zt*Ze,0),_t=new pe(-ue*Ze,ue*yt,0),It=Ct.applyMatrix3(be),Pe=_t.applyMatrix3(be),Se=ze.set(It.x,Pe.x,0,It.y,Pe.y,0,0,0,1),_e=Ce.copy(Se).invert(),Ht=Oe.copy(_e).transpose().multiply(_e).elements,Ut=function ce(Me,be,Ae){let le,dt,Ot,at,zt;const ue=Me+Ae,yt=Me-Ae,Ze=Math.sqrt(yt*yt+4*be*be);return ue>0?(le=.5*(ue+Ze),zt=1/le,dt=Me*zt*Ae-be*zt*be):ue<0?dt=.5*(ue-Ze):(le=.5*Ze,dt=-.5*Ze),Ot=yt>0?yt+Ze:yt-Ze,Math.abs(Ot)>2*Math.abs(be)?(zt=-2*be/Ot,at=1/Math.sqrt(1+zt*zt),Ot=zt*at):0===Math.abs(be)?(Ot=1,at=0):(zt=-.5*Ot/be,Ot=1/Math.sqrt(1+zt*zt),at=zt*Ot),yt>0&&(zt=Ot,Ot=-at,at=zt),{rt1:le,rt2:dt,cs:Ot,sn:at}}(Ht[0],Ht[1],Ht[4]),jt=Math.sqrt(Ut.rt1),Ti=Math.sqrt(Ut.rt2);if(at.xRadius=1/jt,at.yRadius=1/Ti,at.aRotation=Math.atan2(Ut.sn,Ut.cs),!((at.aEndAngle-at.aStartAngle)%(2*Math.PI){const{x:tr,y:di}=new pe(Math.cos(Br),Math.sin(Br),0).applyMatrix3(hn);return Math.atan2(di,tr)};at.aStartAngle=Zn(at.aStartAngle),at.aEndAngle=Zn(at.aEndAngle),te(be)&&(at.aClockwise=!at.aClockwise)}}function dt(at){const zt=W(be),ue=q(be);at.xRadius*=zt,at.yRadius*=ue;const yt=zt>Number.EPSILON?Math.atan2(be.elements[1],be.elements[0]):Math.atan2(-be.elements[3],be.elements[4]);at.aRotation+=yt,te(be)&&(at.aStartAngle*=-1,at.aEndAngle*=-1,at.aClockwise=!at.aClockwise)}const Ot=Me.subPaths;for(let at=0,zt=Ot.length;at0?Bt.copy(de[de.length-1]):Bt.identity())}(rn.documentElement,{fill:"#000",fillOpacity:1,strokeOpacity:1,strokeWidth:1,strokeLineJoin:"miter",strokeLineCap:"butt",strokeMiterLimit:4}),{paths:ke,xml:rn.documentElement}}static createShapes(t){const r={loc:0,t:0};function s(D,T,I,O){const R=D.x,P=T.x,ee=I.x,J=O.x,te=D.y,ie=T.y,W=I.y,q=O.y,ce=(J-ee)*(te-W)-(q-W)*(R-ee),Ue=(q-W)*(P-R)-(J-ee)*(ie-te),de=ce/Ue,ze=((P-R)*(te-W)-(ie-te)*(R-ee))/Ue;if(0===Ue&&0!==ce||de<=0||de>=1||ze<0||ze>1)return null;if(0===ce&&0===Ue){for(let Ce=0;Ce<2;Ce++){if(l(0===Ce?I:O,D,T),0==r.loc){const Oe=0===Ce?I:O;return{x:Oe.x,y:Oe.y,t:r.t}}if(2==r.loc)return{x:+(R+r.t*(P-R)).toPrecision(10),y:+(te+r.t*(ie-te)).toPrecision(10),t:r.t}}return null}for(let Fe=0;Fe<2;Fe++)if(l(0===Fe?I:O,D,T),0==r.loc){const ht=0===Fe?I:O;return{x:ht.x,y:ht.y,t:r.t}}return{x:+(R+de*(P-R)).toPrecision(10),y:+(te+de*(ie-te)).toPrecision(10),t:de}}function l(D,T,I){const O=I.x-T.x,R=I.y-T.y,P=D.x-T.x,ee=D.y-T.y,J=O*ee-P*R;if(D.x===T.x&&D.y===T.y)return r.loc=0,void(r.t=0);if(D.x===I.x&&D.y===I.y)return r.loc=1,void(r.t=1);if(J<-Number.EPSILON)return void(r.loc=3);if(J>Number.EPSILON)return void(r.loc=4);if(O*P<0||R*ee<0)return void(r.loc=5);if(Math.sqrt(O*O+R*R){const T=D.getPoints();let I=-999999999,O=999999999,R=-999999999,P=999999999;for(let ee=0;eeI&&(I=J.y),J.yR&&(R=J.x),J.x=P&&(m=P-1),{curves:D.curves,points:T,isCW:zh.isClockWise(T),identifier:-1,boundingBox:new mre(new ft(P,O),new ft(R,I))}});b=b.filter(D=>D.points.length>1);for(let D=0;Dfunction p(D,T,I,O,R){(null==R||""===R)&&(R="nonzero");const P=new ft;D.boundingBox.getCenter(P);const J=function f(D,T,I){const O=new ft;T.getCenter(O);const R=[];return I.forEach(P=>{P.boundingBox.containsPoint(O)&&function u(D,T){const I=[],O=[];for(let R=1;Rq.t<=W.t+Number.EPSILON&&q.t>=W.t-Number.EPSILON)&&(I.push(W),O.push(new ft(W.x,W.y)))}}return O}(D,P.points).forEach(J=>{R.push({identifier:P.identifier,isCW:P.isCW,point:J})})}),R.sort((P,ee)=>P.point.x-ee.point.x),R}([new ft(I,P.y),new ft(O,P.y)],D.boundingBox,T);J.sort((ke,Ue)=>ke.point.x-Ue.point.x);const te=[],ie=[];J.forEach(ke=>{ke.identifier===D.identifier?te.push(ke):ie.push(ke)});const W=te[0].point.x,q=[];let ce=0;for(;ce0&&q[q.length-1]===ie[ce].identifier?q.pop():q.push(ie[ce].identifier),ce++;if(q.push(D.identifier),"evenodd"===R)return{identifier:D.identifier,isHole:q.length%2==0,for:q[q.length-2]};if("nonzero"===R){let ke=!0,Ue=null,de=null;for(let ze=0;ze{if(!w[D.identifier].isHole){const I=new Lg;I.curves=D.curves,w.filter(R=>R.isHole&&R.for===D.identifier).forEach(R=>{const P=b[R.identifier],ee=new Xb;ee.curves=P.curves,I.holes.push(ee)}),F.push(I)}}),F}static getStrokeStyle(t,e,i,r,s){return{strokeColor:e=void 0!==e?e:"#000",strokeWidth:t=void 0!==t?t:1,strokeLineJoin:i=void 0!==i?i:"miter",strokeLineCap:r=void 0!==r?r:"butt",strokeMiterLimit:s=void 0!==s?s:4}}static pointsToStroke(t,e,i,r){const s=[],l=[],u=[];if(0===A8.pointsToStrokeWithBuffers(t,e,i,r,s,l,u))return null;const f=new Yi;return f.setAttribute("position",new Zt(s,3)),f.setAttribute("normal",new Zt(l,3)),f.setAttribute("uv",new Zt(u,2)),f}static pointsToStrokeWithBuffers(t,e,i,r,s,l,u,f){const p=new ft,m=new ft,_=new ft,b=new ft,w=new ft,F=new ft,D=new ft,T=new ft,I=new ft,O=new ft,R=new ft,P=new ft,ee=new ft,J=new ft,te=new ft,ie=new ft,W=new ft;i=void 0!==i?i:12,r=void 0!==r?r:.001,f=void 0!==f?f:0;const q=(t=function yt(Ze){let Ct=!1;for(let It=1,Pe=Ze.length-1;It=r&&_t.push(Ze[It]);return _t.push(Ze[Ze.length-1]),_t}(t)).length;if(q<2)return 0;const ce=t[0].equals(t[q-1]);let ke,de,Ue=t[0];const ze=e.strokeWidth/2,Ce=1/(q-1);let Fe,ht,Mt,Bt,Oe=0,rn=!1,Kn=0,Me=3*f,be=2*f;Ae(t[0],t[1],p).multiplyScalar(ze),T.copy(t[0]).sub(p),I.copy(t[0]).add(p),O.copy(T),R.copy(I);for(let Ze=1;ZeNumber.EPSILON){const It=ze/_t;_.multiplyScalar(-It),b.subVectors(ke,Ue),w.copy(b).setLength(It).add(_),ie.copy(w).negate();const Pe=w.length(),Se=b.length();b.divideScalar(Se),F.subVectors(de,ke);const _e=F.length();switch(F.divideScalar(_e),b.dot(ie){r.load(i,function(u){const f=u.paths,p=[];for(const F of f){const D=F.toShapes(!0);for(const T of D){const I=new Vw(T,{depth:t.printHeight,bevelEnabled:!1});p.push(I)}}const m=W3(p);m.computeBoundingBox();const w=e.size/Math.max(m.boundingBox.max.x-m.boundingBox.min.x,m.boundingBox.max.y-m.boundingBox.min.y);m.scale(w,w,1),m.center(),"back"===e.side?m.rotateZ(Math.PI):(m.rotateZ(Math.PI),m.rotateY(Math.PI)),s(m)},void 0,function(u){console.error(`Error loading ${i}`),l(u)})})})()}}class Fse extends ov{constructor(t){super(t,new fc,120,!0),this.name="BackMWLogo"}init(t){var e=this;return Mn(function*(){const i=new zS;return e.geometry=yield i.create(t,{filePath:"codeCharta/assets/mw_logo_text.svg",size:.31,side:"back"}),e.position.set(0,.37,t.printHeight/2-t.baseplateHeight),e.updateColor(t.numberOfColors),e})()}}class Dj extends Vw{constructor(t,e={}){const i=e.font;if(void 0===i)super();else{const r=i.generateShapes(t,e.size);void 0===e.depth&&void 0!==e.height&&console.warn("THREE.TextGeometry: .height is now depreciated. Please use .depth instead"),e.depth=void 0!==e.depth?e.depth:void 0!==e.height?e.height:50,void 0===e.bevelThickness&&(e.bevelThickness=10),void 0===e.bevelSize&&(e.bevelSize=8),void 0===e.bevelEnabled&&(e.bevelEnabled=!1),super(r,e)}this.type="TextGeometry"}}class Bj{create(t,e){var i=this;return Mn(function*(){const{font:r,side:s,text:l,xPosition:u,yPosition:f,align:p}=e;if(!l)return new Yi;let{textSize:m}=e;m||(m=.025);const _="center"===p&&l.includes("\n")?i.createMultilineCenteredTextGeometry(l,r,m,t.printHeight):new Dj(l,{font:r,size:m,height:t.printHeight});return _.center(),"back"===s&&_.rotateY(Math.PI),_.computeBoundingBox(),_.translate(("front"===s?1:-1)*(("center"===p?0:(_.boundingBox.max.x-_.boundingBox.min.x)/2)+u),f,"front"===s?t.printHeight/2:t.printHeight/2-t.baseplateHeight),_})()}createMultilineCenteredTextGeometry(t,e,i,r){const s=t.split("\n"),l=[];for(const[u,f]of s.entries()){const p=new Dj(f,{font:e,size:i,height:r});p.center(),p.translate(0,-u*i*1.5,0),l.push(p)}return W3(l)}}class GS extends ov{constructor(t,e=new fc,i,r,s,l=new Bj){super(t,e,i,r),this.createTextGeometryOptions=s,this.createTextGeometryStrategy=l}init(t){var e=this;return Mn(function*(){return e.geometry=yield e.createTextGeometryStrategy.create(t,e.createTextGeometryOptions),e.updateColor(t.numberOfColors),e})()}updateText(t){var e=this;return Mn(function*(){e.geometry=yield e.createTextGeometryStrategy.create(t,e.createTextGeometryOptions),e.boundingBoxCalculated=!1})()}updateTextGeometryOptions(t){this.createTextGeometryOptions.text=t}}class Dse extends GS{constructor(t,e){const i={font:e,text:"IT Stabilization & Modernization\nmaibornwolff.de/service/it-sanierung",side:"back",xPosition:0,yPosition:.23,align:"center"};super(t,new fc,200,!0,i)}}var Bse=v(8314);class kse extends ov{constructor(t){super(t,new fc,0,!1)}init(t){var e=this;return Mn(function*(){return e.geometry=yield e.create(t),e.position.set(.45,.45,t.printHeight/2-t.baseplateHeight),e.updateColor(t.numberOfColors),e})()}changeText(t){var e=this;return Mn(function*(){e.geometry=yield e.create(t)})()}create(t){var e=this;return Mn(function*(){if(!t.qrCodeText||0===t.qrCodeText.length)return new Yi;const i=document.createElement("canvas");yield Bse.mo(i,t.qrCodeText,{errorCorrectionLevel:"H"});const s=i.getContext("2d").getImageData(0,0,i.width,i.height),l=[],u=.6/s.width;for(let f=0;fsuper.init,i=this;return Mn(function*(){const r=yield i.createColoredBackTextChildren(t);for(const s of r)i.add(s);return e().call(i,t),i})()}createTextGeometry(t,e,i){var r=this;return Mn(function*(){return t.create(i,{font:r.font,text:e,side:"back",xPosition:.05,yPosition:.015,align:"left"})})()}getText(){return`${this.metricDescriptionBlockOptions.nodeMetricData.name}\n${this.metricDescriptionBlockOptions.title}\n`}createColoredBackTextChildren(t){var e=this;return Mn(function*(){const i=e.metricDescriptionBlockOptions,r=[],s=["Value ranges:",`${i.nodeMetricData.minValue} - ${i.colorRange.from-1}`,"/",`${i.colorRange.from} - ${i.colorRange.to-1}`,"/",`${i.colorRange.to} - ${i.nodeMetricData.maxValue}`],l=[new fc,new Ose,new fc,new Nse,new fc,new Lse];let u=.05;for(let f=0;f{if(e instanceof dr&&e.visible){e.geometry.computeBoundingBox();const{min:i,max:r}=e.geometry.boundingBox;t.min=Math.min(t.min,i.x),t.max=Math.max(t.max,r.x)}}),this.position.x=(t.max-t.min)/2}createColorAttributes(){return{colorIcon:"color_icon_for_3D_print.svg",colorIconScale:.075}}createHeightAttributes(){return{heightIcon:"height_icon_for_3D_print.svg",heightIconScale:.09}}createAreaAttributes(){return{areaIcon:"area_icon_for_3D_print.svg",areaIconScale:.075}}}class Hse extends Ou{constructor(t){super("BackPrintContainer",new fc),this.font=t}init(t){var e=this;return Mn(function*(){return e.childrenMeshes=new Map,e.childrenMeshes.set("BackMWLogo",new Fse("BackMWLogo")),e.childrenMeshes.set("BackBelowLogoText",new Dse("BackBelowLogoText",e.font)),e.childrenMeshes.set("QrCode",new kse("QrCode")),e.childrenMeshes.set("CodeChartaLogo",new Rse("CodeChartaLogo")),e.childrenMeshes.set("CodeChartaText",new Pse("CodeChartaText",e.font)),e.childrenMeshes.set("MetricDescriptionsContainer",new Vse("MetricDescriptionsContainer",e.font)),yield Promise.all([...e.childrenMeshes.values()].map(function(){var i=Mn(function*(r){yield r.init(t),e.add(r)});return function(r){return i.apply(this,arguments)}}())),e.changeSize(t,1),e})()}changeSize(t,e){const i=t.width/e;this.scale.set(this.scale.x*i,this.scale.y*i,this.scale.z),this.traverse(r=>{r instanceof ov&&r.setCurrentWidth(t.width)})}isQRCodeVisible(){return this.childrenMeshes.get("QrCode").visible}updateQrCodeText(t,e){var i=this;return Mn(function*(){e.qrCodeText=t,yield i.childrenMeshes.get("QrCode").changeText(e)})()}updateQrCodeVisibility(t){this.childrenMeshes.get("QrCode").setManualVisibility(t)}getChildrenMeshes(){return this.childrenMeshes}}class _8{execute(t,e){let i;return i=t<4?[1,1,1]:4===t?[1,1,0]:[1,1,1],e.material.color.setRGB(i[0],i[1],i[2]),!0}}class Qse extends GS{constructor(t,e,i){let r=i.frontText;r||(r="FrontText");const s={font:e,side:"front",text:r,xPosition:0,yPosition:i.frontTextSize/2,textSize:i.frontTextSize,align:"center"};super(t,new _8,0,!0,s),this.name="Front Text"}}class zse extends GS{constructor(t,e,i){const r={font:e,text:i.secondRowText,side:"front",xPosition:0,yPosition:-i.secondRowTextSize,textSize:i.secondRowTextSize,align:"center"};super(t,new _8,0,!1,r)}}class b8 extends Ou{constructor(t,e){super(t,new _8),this.alignment=e}changeRelativeSize(t){const e=this.getWidth();this.boundingBoxCalculated=!1;const i=t.secondRowVisible,r=i?(t.frontTextSize+t.secondRowTextSize)/t.frontTextSize:1;this.scale.x=r,this.scale.y=r;const s=i?-1:1,l="left"===this.alignment?-1:1;this.translateY(s*t.secondRowTextSize);const u=i?e/this.getWidth():this.getWidth()/e;this.translateX(2*u*l*s)}}class Gse extends b8{constructor(t){super(t,"right")}init(t,e=new zS){var i=this;return Mn(function*(){const r=t.frontTextSize*t.width/250;return i.geometry=yield e.create(t,{filePath:"codeCharta/assets/mw_logo.svg",size:r,side:"front"}),i.position.set(t.width/2-r/2-t.mapSideOffset/2,r/2,t.printHeight/2),t.secondRowVisible&&i.changeRelativeSize(t),i.updateColor(t.numberOfColors),i})()}changeSize(t,e){this.position.x+=(t.width-e)/2}}class jse extends b8{constructor(t,e){super(t,"left"),this.filePath=e}init(t){var e=this;return Mn(function*(){const i=new zS,r=t.frontTextSize*t.width/200;return e.geometry=yield i.create(t,{filePath:e.filePath,size:r,side:"front"}),e.position.set(-t.width/2+r/2+t.mapSideOffset/2,r/2,t.printHeight/2),t.secondRowVisible&&e.changeRelativeSize(t),e.updateColor(t.numberOfColors),e})()}setColor(t){this.material.color.set(t)}rotate(){this.geometry.rotateZ(Math.PI/2)}flip(){this.geometry.rotateY(Math.PI)}changeSize(t,e){this.position.x-=(t.width-e)/2}}class $se extends Ou{constructor(t){super("FrontPrintContainer",new fc),this.font=t}init(t){var e=this;return Mn(function*(){return e.childrenMeshes=new Map,e.childrenMeshes.set("FrontText",new Qse("FrontText",e.font,t)),e.childrenMeshes.set("SecondRowText",new zse("SecondRowText",e.font,t)),e.childrenMeshes.set("FrontMWLogo",new Gse("FrontMWLogo")),yield Promise.all([...e.childrenMeshes.values()].map(function(){var i=Mn(function*(r){yield r.init(t),e.add(r)});return function(r){return i.apply(this,arguments)}}())),e.position.y=-t.width/2-t.mapSideOffset/2,e})()}addCustomLogo(t,e){var i=this;return Mn(function*(){i.childrenMeshes.has("CustomLogo")&&i.removeCustomLogo();const r=yield new jse("CustomLogo",t).init(e);i.add(r),i.childrenMeshes.set(r.name,r)})()}rotateCustomLogo(){this.childrenMeshes.get("CustomLogo").rotate()}flipCustomLogo(){this.childrenMeshes.get("CustomLogo").flip()}removeCustomLogo(){this.remove(this.childrenMeshes.get("CustomLogo")),this.childrenMeshes.delete("CustomLogo")}updateCustomLogoColor(t){this.childrenMeshes.get("CustomLogo").setColor(t)}updateFrontText(t,e){var i=this;return Mn(function*(){const r=i.childrenMeshes.get("FrontText");r.updateTextGeometryOptions(t),yield r.updateText(e)})()}changeSize(t,e){this.position.y-=(t.width-e)/2;for(const i of this.childrenMeshes.values())i instanceof b8&&i.isGeneralSizeChangeMesh()&&i.changeSize(t,e)}updateSecondRowText(t,e){var i=this;return Mn(function*(){const r=i.childrenMeshes.get("SecondRowText");r.updateTextGeometryOptions(t),yield r.updateText(e)})()}updateSecondRowVisibility(t){const e=this.childrenMeshes.get("FrontMWLogo"),i=this.childrenMeshes.get("SecondRowText"),r=this.childrenMeshes.get("CustomLogo");i.setManualVisibility(t.secondRowVisible),e.changeRelativeSize(t),r?.changeRelativeSize(t)}getChildrenMeshes(){return this.childrenMeshes}}const kj=JSON.parse('{"glyphs":{"0":{"x_min":73,"x_max":715,"ha":792,"o":"m 394 -29 q 153 129 242 -29 q 73 479 73 272 q 152 829 73 687 q 394 989 241 989 q 634 829 545 989 q 715 479 715 684 q 635 129 715 270 q 394 -29 546 -29 m 394 89 q 546 211 489 89 q 598 479 598 322 q 548 748 598 640 q 394 871 491 871 q 241 748 298 871 q 190 479 190 637 q 239 211 190 319 q 394 89 296 89 "},"1":{"x_min":215.671875,"x_max":574,"ha":792,"o":"m 574 0 l 442 0 l 442 697 l 215 697 l 215 796 q 386 833 330 796 q 475 986 447 875 l 574 986 l 574 0 "},"2":{"x_min":59,"x_max":731,"ha":792,"o":"m 731 0 l 59 0 q 197 314 59 188 q 457 487 199 315 q 598 691 598 580 q 543 819 598 772 q 411 867 488 867 q 272 811 328 867 q 209 630 209 747 l 81 630 q 182 901 81 805 q 408 986 271 986 q 629 909 536 986 q 731 694 731 826 q 613 449 731 541 q 378 316 495 383 q 201 122 235 234 l 731 122 l 731 0 "},"3":{"x_min":54,"x_max":737,"ha":792,"o":"m 737 284 q 635 55 737 141 q 399 -25 541 -25 q 156 52 248 -25 q 54 308 54 140 l 185 308 q 245 147 185 202 q 395 96 302 96 q 539 140 484 96 q 602 280 602 190 q 510 429 602 390 q 324 454 451 454 l 324 565 q 487 584 441 565 q 565 719 565 617 q 515 835 565 791 q 395 879 466 879 q 255 824 307 879 q 203 661 203 769 l 78 661 q 166 909 78 822 q 387 992 250 992 q 603 921 513 992 q 701 723 701 844 q 669 607 701 656 q 578 524 637 558 q 696 434 655 499 q 737 284 737 369 "},"4":{"x_min":48,"x_max":742.453125,"ha":792,"o":"m 742 243 l 602 243 l 602 0 l 476 0 l 476 243 l 48 243 l 48 368 l 476 958 l 602 958 l 602 354 l 742 354 l 742 243 m 476 354 l 476 792 l 162 354 l 476 354 "},"5":{"x_min":54.171875,"x_max":738,"ha":792,"o":"m 738 314 q 626 60 738 153 q 382 -23 526 -23 q 155 47 248 -23 q 54 256 54 125 l 183 256 q 259 132 204 174 q 382 91 314 91 q 533 149 471 91 q 602 314 602 213 q 538 469 602 411 q 386 528 475 528 q 284 506 332 528 q 197 439 237 484 l 81 439 l 159 958 l 684 958 l 684 840 l 254 840 l 214 579 q 306 627 258 612 q 407 643 354 643 q 636 552 540 643 q 738 314 738 457 "},"6":{"x_min":53,"x_max":739,"ha":792,"o":"m 739 312 q 633 62 739 162 q 400 -31 534 -31 q 162 78 257 -31 q 53 439 53 206 q 178 859 53 712 q 441 986 284 986 q 643 912 559 986 q 732 713 732 833 l 601 713 q 544 830 594 786 q 426 875 494 875 q 268 793 331 875 q 193 517 193 697 q 301 597 240 570 q 427 624 362 624 q 643 540 552 624 q 739 312 739 451 m 603 298 q 540 461 603 400 q 404 516 484 516 q 268 461 323 516 q 207 300 207 401 q 269 137 207 198 q 405 83 325 83 q 541 137 486 83 q 603 298 603 197 "},"7":{"x_min":58.71875,"x_max":730.953125,"ha":792,"o":"m 730 839 q 469 448 560 641 q 335 0 378 255 l 192 0 q 328 441 235 252 q 593 830 421 630 l 58 830 l 58 958 l 730 958 l 730 839 "},"8":{"x_min":55,"x_max":736,"ha":792,"o":"m 571 527 q 694 424 652 491 q 736 280 736 358 q 648 71 736 158 q 395 -26 551 -26 q 142 69 238 -26 q 55 279 55 157 q 96 425 55 359 q 220 527 138 491 q 120 615 153 562 q 88 726 88 668 q 171 904 88 827 q 395 986 261 986 q 618 905 529 986 q 702 727 702 830 q 670 616 702 667 q 571 527 638 565 m 394 565 q 519 610 475 565 q 563 717 563 655 q 521 823 563 781 q 392 872 474 872 q 265 824 312 872 q 224 720 224 783 q 265 613 224 656 q 394 565 312 565 m 395 91 q 545 150 488 91 q 597 280 597 204 q 546 408 597 355 q 395 465 492 465 q 244 408 299 465 q 194 280 194 356 q 244 150 194 203 q 395 91 299 91 "},"9":{"x_min":53,"x_max":739,"ha":792,"o":"m 739 524 q 619 94 739 241 q 362 -32 516 -32 q 150 47 242 -32 q 59 244 59 126 l 191 244 q 246 129 191 176 q 373 82 301 82 q 526 161 466 82 q 597 440 597 255 q 363 334 501 334 q 130 432 216 334 q 53 650 53 521 q 134 880 53 786 q 383 986 226 986 q 659 841 566 986 q 739 524 739 719 m 388 449 q 535 514 480 449 q 585 658 585 573 q 535 805 585 744 q 388 873 480 873 q 242 809 294 873 q 191 658 191 745 q 239 514 191 572 q 388 449 292 449 "},"\u03bf":{"x_min":0,"x_max":712,"ha":815,"o":"m 356 -25 q 96 88 192 -25 q 0 368 0 201 q 92 642 0 533 q 356 761 192 761 q 617 644 517 761 q 712 368 712 533 q 619 91 712 201 q 356 -25 520 -25 m 356 85 q 527 175 465 85 q 583 369 583 255 q 528 562 583 484 q 356 651 466 651 q 189 560 250 651 q 135 369 135 481 q 187 177 135 257 q 356 85 250 85 "},"S":{"x_min":0,"x_max":788,"ha":890,"o":"m 788 291 q 662 54 788 144 q 397 -26 550 -26 q 116 68 226 -26 q 0 337 0 168 l 131 337 q 200 152 131 220 q 384 85 269 85 q 557 129 479 85 q 650 270 650 183 q 490 429 650 379 q 194 513 341 470 q 33 739 33 584 q 142 964 33 881 q 388 1041 242 1041 q 644 957 543 1041 q 756 716 756 867 l 625 716 q 561 874 625 816 q 395 933 497 933 q 243 891 309 933 q 164 759 164 841 q 325 609 164 656 q 625 526 475 568 q 788 291 788 454 "},"\xa6":{"x_min":343,"x_max":449,"ha":792,"o":"m 449 462 l 343 462 l 343 986 l 449 986 l 449 462 m 449 -242 l 343 -242 l 343 280 l 449 280 l 449 -242 "},"/":{"x_min":183.25,"x_max":608.328125,"ha":792,"o":"m 608 1041 l 266 -129 l 183 -129 l 520 1041 l 608 1041 "},"\u03a4":{"x_min":-0.4375,"x_max":777.453125,"ha":839,"o":"m 777 893 l 458 893 l 458 0 l 319 0 l 319 892 l 0 892 l 0 1013 l 777 1013 l 777 893 "},"y":{"x_min":0,"x_max":684.78125,"ha":771,"o":"m 684 738 l 388 -83 q 311 -216 356 -167 q 173 -279 252 -279 q 97 -266 133 -279 l 97 -149 q 132 -155 109 -151 q 168 -160 155 -160 q 240 -114 213 -160 q 274 -26 248 -98 l 0 738 l 137 737 l 341 139 l 548 737 l 684 738 "},"\u03a0":{"x_min":0,"x_max":803,"ha":917,"o":"m 803 0 l 667 0 l 667 886 l 140 886 l 140 0 l 0 0 l 0 1012 l 803 1012 l 803 0 "},"\u0390":{"x_min":-111,"x_max":339,"ha":361,"o":"m 339 800 l 229 800 l 229 925 l 339 925 l 339 800 m -1 800 l -111 800 l -111 925 l -1 925 l -1 800 m 284 3 q 233 -10 258 -5 q 182 -15 207 -15 q 85 26 119 -15 q 42 200 42 79 l 42 737 l 167 737 l 168 215 q 172 141 168 157 q 226 101 183 101 q 248 103 239 101 q 284 112 257 104 l 284 3 m 302 1040 l 113 819 l 30 819 l 165 1040 l 302 1040 "},"g":{"x_min":0,"x_max":686,"ha":838,"o":"m 686 34 q 586 -213 686 -121 q 331 -306 487 -306 q 131 -252 216 -306 q 31 -84 31 -190 l 155 -84 q 228 -174 166 -138 q 345 -207 284 -207 q 514 -109 454 -207 q 564 89 564 -27 q 461 6 521 36 q 335 -23 401 -23 q 88 100 184 -23 q 0 370 0 215 q 87 634 0 522 q 330 758 183 758 q 457 728 398 758 q 564 644 515 699 l 564 737 l 686 737 l 686 34 m 582 367 q 529 560 582 481 q 358 652 468 652 q 189 561 250 652 q 135 369 135 482 q 189 176 135 255 q 361 85 251 85 q 529 176 468 85 q 582 367 582 255 "},"\xb2":{"x_min":0,"x_max":442,"ha":539,"o":"m 442 383 l 0 383 q 91 566 0 492 q 260 668 176 617 q 354 798 354 727 q 315 875 354 845 q 227 905 277 905 q 136 869 173 905 q 99 761 99 833 l 14 761 q 82 922 14 864 q 232 974 141 974 q 379 926 316 974 q 442 797 442 878 q 351 635 442 704 q 183 539 321 611 q 92 455 92 491 l 442 455 l 442 383 "},"\u2013":{"x_min":0,"x_max":705.5625,"ha":803,"o":"m 705 334 l 0 334 l 0 410 l 705 410 l 705 334 "},"\u039a":{"x_min":0,"x_max":819.5625,"ha":893,"o":"m 819 0 l 650 0 l 294 509 l 139 356 l 139 0 l 0 0 l 0 1013 l 139 1013 l 139 526 l 626 1013 l 809 1013 l 395 600 l 819 0 "},"\u0192":{"x_min":-46.265625,"x_max":392,"ha":513,"o":"m 392 651 l 259 651 l 79 -279 l -46 -278 l 134 651 l 14 651 l 14 751 l 135 751 q 151 948 135 900 q 304 1041 185 1041 q 334 1040 319 1041 q 392 1034 348 1039 l 392 922 q 337 931 360 931 q 271 883 287 931 q 260 793 260 853 l 260 751 l 392 751 l 392 651 "},"e":{"x_min":0,"x_max":714,"ha":813,"o":"m 714 326 l 140 326 q 200 157 140 227 q 359 87 260 87 q 488 130 431 87 q 561 245 545 174 l 697 245 q 577 48 670 123 q 358 -26 484 -26 q 97 85 195 -26 q 0 363 0 197 q 94 642 0 529 q 358 765 195 765 q 626 627 529 765 q 714 326 714 503 m 576 429 q 507 583 564 522 q 355 650 445 650 q 206 583 266 650 q 140 429 152 522 l 576 429 "},"\u03cc":{"x_min":0,"x_max":712,"ha":815,"o":"m 356 -25 q 94 91 194 -25 q 0 368 0 202 q 92 642 0 533 q 356 761 192 761 q 617 644 517 761 q 712 368 712 533 q 619 91 712 201 q 356 -25 520 -25 m 356 85 q 527 175 465 85 q 583 369 583 255 q 528 562 583 484 q 356 651 466 651 q 189 560 250 651 q 135 369 135 481 q 187 177 135 257 q 356 85 250 85 m 576 1040 l 387 819 l 303 819 l 438 1040 l 576 1040 "},"J":{"x_min":0,"x_max":588,"ha":699,"o":"m 588 279 q 287 -26 588 -26 q 58 73 126 -26 q 0 327 0 158 l 133 327 q 160 172 133 227 q 288 96 198 96 q 426 171 391 96 q 449 336 449 219 l 449 1013 l 588 1013 l 588 279 "},"\xbb":{"x_min":-1,"x_max":503,"ha":601,"o":"m 503 302 l 280 136 l 281 256 l 429 373 l 281 486 l 280 608 l 503 440 l 503 302 m 221 302 l 0 136 l 0 255 l 145 372 l 0 486 l -1 608 l 221 440 l 221 302 "},"\xa9":{"x_min":-3,"x_max":1008,"ha":1106,"o":"m 502 -7 q 123 151 263 -7 q -3 501 -3 294 q 123 851 -3 706 q 502 1011 263 1011 q 881 851 739 1011 q 1008 501 1008 708 q 883 151 1008 292 q 502 -7 744 -7 m 502 60 q 830 197 709 60 q 940 501 940 322 q 831 805 940 681 q 502 944 709 944 q 174 805 296 944 q 65 501 65 680 q 173 197 65 320 q 502 60 294 60 m 741 394 q 661 246 731 302 q 496 190 591 190 q 294 285 369 190 q 228 497 228 370 q 295 714 228 625 q 499 813 370 813 q 656 762 588 813 q 733 625 724 711 l 634 625 q 589 704 629 673 q 498 735 550 735 q 377 666 421 735 q 334 504 334 597 q 374 340 334 408 q 490 272 415 272 q 589 304 549 272 q 638 394 628 337 l 741 394 "},"\u03ce":{"x_min":0,"x_max":922,"ha":1030,"o":"m 687 1040 l 498 819 l 415 819 l 549 1040 l 687 1040 m 922 339 q 856 97 922 203 q 650 -26 780 -26 q 538 9 587 -26 q 461 103 489 44 q 387 12 436 46 q 277 -22 339 -22 q 69 97 147 -22 q 0 338 0 202 q 45 551 0 444 q 161 737 84 643 l 302 737 q 175 552 219 647 q 124 336 124 446 q 155 179 124 248 q 275 88 197 88 q 375 163 341 88 q 400 294 400 219 l 400 572 l 524 572 l 524 294 q 561 135 524 192 q 643 88 591 88 q 762 182 719 88 q 797 341 797 257 q 745 555 797 450 q 619 737 705 637 l 760 737 q 874 551 835 640 q 922 339 922 444 "},"^":{"x_min":193.0625,"x_max":598.609375,"ha":792,"o":"m 598 772 l 515 772 l 395 931 l 277 772 l 193 772 l 326 1013 l 462 1013 l 598 772 "},"\xab":{"x_min":0,"x_max":507.203125,"ha":604,"o":"m 506 136 l 284 302 l 284 440 l 506 608 l 507 485 l 360 371 l 506 255 l 506 136 m 222 136 l 0 302 l 0 440 l 222 608 l 221 486 l 73 373 l 222 256 l 222 136 "},"D":{"x_min":0,"x_max":828,"ha":935,"o":"m 389 1013 q 714 867 593 1013 q 828 521 828 729 q 712 161 828 309 q 382 0 587 0 l 0 0 l 0 1013 l 389 1013 m 376 124 q 607 247 523 124 q 681 510 681 355 q 607 771 681 662 q 376 896 522 896 l 139 896 l 139 124 l 376 124 "},"\u2219":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 585 l 0 585 l 0 738 l 142 738 l 142 585 "},"\xff":{"x_min":0,"x_max":47,"ha":125,"o":"m 47 3 q 37 -7 47 -7 q 28 0 30 -7 q 39 -4 32 -4 q 45 3 45 -1 l 37 0 q 28 9 28 0 q 39 19 28 19 l 47 16 l 47 19 l 47 3 m 37 1 q 44 8 44 1 q 37 16 44 16 q 30 8 30 16 q 37 1 30 1 m 26 1 l 23 22 l 14 0 l 3 22 l 3 3 l 0 25 l 13 1 l 22 25 l 26 1 "},"w":{"x_min":0,"x_max":1009.71875,"ha":1100,"o":"m 1009 738 l 783 0 l 658 0 l 501 567 l 345 0 l 222 0 l 0 738 l 130 738 l 284 174 l 432 737 l 576 738 l 721 173 l 881 737 l 1009 738 "},"$":{"x_min":0,"x_max":700,"ha":793,"o":"m 664 717 l 542 717 q 490 825 531 785 q 381 872 450 865 l 381 551 q 620 446 540 522 q 700 241 700 370 q 618 45 700 116 q 381 -25 536 -25 l 381 -152 l 307 -152 l 307 -25 q 81 62 162 -25 q 0 297 0 149 l 124 297 q 169 146 124 204 q 307 81 215 89 l 307 441 q 80 536 148 469 q 13 725 13 603 q 96 910 13 839 q 307 982 180 982 l 307 1077 l 381 1077 l 381 982 q 574 917 494 982 q 664 717 664 845 m 307 565 l 307 872 q 187 831 233 872 q 142 724 142 791 q 180 618 142 656 q 307 565 218 580 m 381 76 q 562 237 562 96 q 517 361 562 313 q 381 423 472 409 l 381 76 "},"\\\\":{"x_min":-0.015625,"x_max":425.0625,"ha":522,"o":"m 425 -129 l 337 -129 l 0 1041 l 83 1041 l 425 -129 "},"\xb5":{"x_min":0,"x_max":697.21875,"ha":747,"o":"m 697 -4 q 629 -14 658 -14 q 498 97 513 -14 q 422 9 470 41 q 313 -23 374 -23 q 207 4 258 -23 q 119 81 156 32 l 119 -278 l 0 -278 l 0 738 l 124 738 l 124 343 q 165 173 124 246 q 308 83 216 83 q 452 178 402 83 q 493 359 493 255 l 493 738 l 617 738 l 617 214 q 623 136 617 160 q 673 92 637 92 q 697 96 684 92 l 697 -4 "},"\u0399":{"x_min":42,"x_max":181,"ha":297,"o":"m 181 0 l 42 0 l 42 1013 l 181 1013 l 181 0 "},"\u038e":{"x_min":0,"x_max":1144.5,"ha":1214,"o":"m 1144 1012 l 807 416 l 807 0 l 667 0 l 667 416 l 325 1012 l 465 1012 l 736 533 l 1004 1012 l 1144 1012 m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 "},"\u2019":{"x_min":0,"x_max":139,"ha":236,"o":"m 139 851 q 102 737 139 784 q 0 669 65 690 l 0 734 q 59 787 42 741 q 72 873 72 821 l 0 873 l 0 1013 l 139 1013 l 139 851 "},"\u039d":{"x_min":0,"x_max":801,"ha":915,"o":"m 801 0 l 651 0 l 131 822 l 131 0 l 0 0 l 0 1013 l 151 1013 l 670 191 l 670 1013 l 801 1013 l 801 0 "},"-":{"x_min":8.71875,"x_max":350.390625,"ha":478,"o":"m 350 317 l 8 317 l 8 428 l 350 428 l 350 317 "},"Q":{"x_min":0,"x_max":968,"ha":1072,"o":"m 954 5 l 887 -79 l 744 35 q 622 -11 687 2 q 483 -26 556 -26 q 127 130 262 -26 q 0 504 0 279 q 127 880 0 728 q 484 1041 262 1041 q 841 884 708 1041 q 968 507 968 735 q 933 293 968 398 q 832 104 899 188 l 954 5 m 723 191 q 802 330 777 248 q 828 499 828 412 q 744 790 828 673 q 483 922 650 922 q 228 791 322 922 q 142 505 142 673 q 227 221 142 337 q 487 91 323 91 q 632 123 566 91 l 520 215 l 587 301 l 723 191 "},"\u03c2":{"x_min":1,"x_max":676.28125,"ha":740,"o":"m 676 460 l 551 460 q 498 595 542 546 q 365 651 448 651 q 199 578 263 651 q 136 401 136 505 q 266 178 136 241 q 508 106 387 142 q 640 -50 640 62 q 625 -158 640 -105 q 583 -278 611 -211 l 465 -278 q 498 -182 490 -211 q 515 -80 515 -126 q 381 12 515 -15 q 134 91 197 51 q 1 388 1 179 q 100 651 1 542 q 354 761 199 761 q 587 680 498 761 q 676 460 676 599 "},"M":{"x_min":0,"x_max":954,"ha":1067,"o":"m 954 0 l 819 0 l 819 869 l 537 0 l 405 0 l 128 866 l 128 0 l 0 0 l 0 1013 l 200 1013 l 472 160 l 757 1013 l 954 1013 l 954 0 "},"\u03a8":{"x_min":0,"x_max":1006,"ha":1094,"o":"m 1006 678 q 914 319 1006 429 q 571 200 814 200 l 571 0 l 433 0 l 433 200 q 92 319 194 200 q 0 678 0 429 l 0 1013 l 139 1013 l 139 679 q 191 417 139 492 q 433 326 255 326 l 433 1013 l 571 1013 l 571 326 l 580 326 q 813 423 747 326 q 868 679 868 502 l 868 1013 l 1006 1013 l 1006 678 "},"C":{"x_min":0,"x_max":886,"ha":944,"o":"m 886 379 q 760 87 886 201 q 455 -26 634 -26 q 112 136 236 -26 q 0 509 0 283 q 118 882 0 737 q 469 1041 245 1041 q 748 955 630 1041 q 879 708 879 859 l 745 708 q 649 862 724 805 q 473 920 573 920 q 219 791 312 920 q 136 509 136 675 q 217 229 136 344 q 470 99 311 99 q 672 179 591 99 q 753 379 753 259 l 886 379 "},"!":{"x_min":0,"x_max":138,"ha":236,"o":"m 138 684 q 116 409 138 629 q 105 244 105 299 l 33 244 q 16 465 33 313 q 0 684 0 616 l 0 1013 l 138 1013 l 138 684 m 138 0 l 0 0 l 0 151 l 138 151 l 138 0 "},"{":{"x_min":0,"x_max":480.5625,"ha":578,"o":"m 480 -286 q 237 -213 303 -286 q 187 -45 187 -159 q 194 48 187 -15 q 201 141 201 112 q 164 264 201 225 q 0 314 118 314 l 0 417 q 164 471 119 417 q 201 605 201 514 q 199 665 201 644 q 193 772 193 769 q 241 941 193 887 q 480 1015 308 1015 l 480 915 q 336 866 375 915 q 306 742 306 828 q 310 662 306 717 q 314 577 314 606 q 288 452 314 500 q 176 365 256 391 q 289 275 257 337 q 314 143 314 226 q 313 84 314 107 q 310 -11 310 -5 q 339 -131 310 -94 q 480 -182 377 -182 l 480 -286 "},"X":{"x_min":-0.015625,"x_max":854.15625,"ha":940,"o":"m 854 0 l 683 0 l 423 409 l 166 0 l 0 0 l 347 519 l 18 1013 l 186 1013 l 428 637 l 675 1013 l 836 1013 l 504 520 l 854 0 "},"#":{"x_min":0,"x_max":963.890625,"ha":1061,"o":"m 963 690 l 927 590 l 719 590 l 655 410 l 876 410 l 840 310 l 618 310 l 508 -3 l 393 -2 l 506 309 l 329 310 l 215 -2 l 102 -3 l 212 310 l 0 310 l 36 410 l 248 409 l 312 590 l 86 590 l 120 690 l 347 690 l 459 1006 l 573 1006 l 462 690 l 640 690 l 751 1006 l 865 1006 l 754 690 l 963 690 m 606 590 l 425 590 l 362 410 l 543 410 l 606 590 "},"\u03b9":{"x_min":42,"x_max":284,"ha":361,"o":"m 284 3 q 233 -10 258 -5 q 182 -15 207 -15 q 85 26 119 -15 q 42 200 42 79 l 42 738 l 167 738 l 168 215 q 172 141 168 157 q 226 101 183 101 q 248 103 239 101 q 284 112 257 104 l 284 3 "},"\u0386":{"x_min":0,"x_max":906.953125,"ha":982,"o":"m 283 1040 l 88 799 l 5 799 l 145 1040 l 283 1040 m 906 0 l 756 0 l 650 303 l 251 303 l 143 0 l 0 0 l 376 1012 l 529 1012 l 906 0 m 609 421 l 452 866 l 293 421 l 609 421 "},")":{"x_min":0,"x_max":318,"ha":415,"o":"m 318 365 q 257 25 318 191 q 87 -290 197 -141 l 0 -290 q 140 21 93 -128 q 193 360 193 189 q 141 704 193 537 q 0 1024 97 850 l 87 1024 q 257 706 197 871 q 318 365 318 542 "},"\u03b5":{"x_min":0,"x_max":634.71875,"ha":714,"o":"m 634 234 q 527 38 634 110 q 300 -25 433 -25 q 98 29 183 -25 q 0 204 0 93 q 37 314 0 265 q 128 390 67 353 q 56 460 82 419 q 26 555 26 505 q 114 712 26 654 q 295 763 191 763 q 499 700 416 763 q 589 515 589 631 l 478 515 q 419 618 464 580 q 307 657 374 657 q 207 630 253 657 q 151 547 151 598 q 238 445 151 469 q 389 434 280 434 l 389 331 l 349 331 q 206 315 255 331 q 125 210 125 287 q 183 107 125 145 q 302 76 233 76 q 436 117 379 76 q 509 234 493 159 l 634 234 "},"\u0394":{"x_min":0,"x_max":952.78125,"ha":1028,"o":"m 952 0 l 0 0 l 400 1013 l 551 1013 l 952 0 m 762 124 l 476 867 l 187 124 l 762 124 "},"}":{"x_min":0,"x_max":481,"ha":578,"o":"m 481 314 q 318 262 364 314 q 282 136 282 222 q 284 65 282 97 q 293 -58 293 -48 q 241 -217 293 -166 q 0 -286 174 -286 l 0 -182 q 143 -130 105 -182 q 171 -2 171 -93 q 168 81 171 22 q 165 144 165 140 q 188 275 165 229 q 306 365 220 339 q 191 455 224 391 q 165 588 165 505 q 168 681 165 624 q 171 742 171 737 q 141 865 171 827 q 0 915 102 915 l 0 1015 q 243 942 176 1015 q 293 773 293 888 q 287 675 293 741 q 282 590 282 608 q 318 466 282 505 q 481 417 364 417 l 481 314 "},"\u2030":{"x_min":-3,"x_max":1672,"ha":1821,"o":"m 846 0 q 664 76 732 0 q 603 244 603 145 q 662 412 603 344 q 846 489 729 489 q 1027 412 959 489 q 1089 244 1089 343 q 1029 76 1089 144 q 846 0 962 0 m 845 103 q 945 143 910 103 q 981 243 981 184 q 947 340 981 301 q 845 385 910 385 q 745 342 782 385 q 709 243 709 300 q 742 147 709 186 q 845 103 781 103 m 888 986 l 284 -25 l 199 -25 l 803 986 l 888 986 m 241 468 q 58 545 126 468 q -3 715 -3 615 q 56 881 -3 813 q 238 958 124 958 q 421 881 353 958 q 483 712 483 813 q 423 544 483 612 q 241 468 356 468 m 241 855 q 137 811 175 855 q 100 710 100 768 q 136 612 100 653 q 240 572 172 572 q 344 614 306 572 q 382 713 382 656 q 347 810 382 771 q 241 855 308 855 m 1428 0 q 1246 76 1314 0 q 1185 244 1185 145 q 1244 412 1185 344 q 1428 489 1311 489 q 1610 412 1542 489 q 1672 244 1672 343 q 1612 76 1672 144 q 1428 0 1545 0 m 1427 103 q 1528 143 1492 103 q 1564 243 1564 184 q 1530 340 1564 301 q 1427 385 1492 385 q 1327 342 1364 385 q 1291 243 1291 300 q 1324 147 1291 186 q 1427 103 1363 103 "},"a":{"x_min":0,"x_max":698.609375,"ha":794,"o":"m 698 0 q 661 -12 679 -7 q 615 -17 643 -17 q 536 12 564 -17 q 500 96 508 41 q 384 6 456 37 q 236 -25 312 -25 q 65 31 130 -25 q 0 194 0 88 q 118 390 0 334 q 328 435 180 420 q 488 483 476 451 q 495 523 495 504 q 442 619 495 584 q 325 654 389 654 q 209 617 257 654 q 152 513 161 580 l 33 513 q 123 705 33 633 q 332 772 207 772 q 528 712 448 772 q 617 531 617 645 l 617 163 q 624 108 617 126 q 664 90 632 90 l 698 94 l 698 0 m 491 262 l 491 372 q 272 329 350 347 q 128 201 128 294 q 166 113 128 144 q 264 83 205 83 q 414 130 346 83 q 491 262 491 183 "},"\u2014":{"x_min":0,"x_max":941.671875,"ha":1039,"o":"m 941 334 l 0 334 l 0 410 l 941 410 l 941 334 "},"=":{"x_min":8.71875,"x_max":780.953125,"ha":792,"o":"m 780 510 l 8 510 l 8 606 l 780 606 l 780 510 m 780 235 l 8 235 l 8 332 l 780 332 l 780 235 "},"N":{"x_min":0,"x_max":801,"ha":914,"o":"m 801 0 l 651 0 l 131 823 l 131 0 l 0 0 l 0 1013 l 151 1013 l 670 193 l 670 1013 l 801 1013 l 801 0 "},"\u03c1":{"x_min":0,"x_max":712,"ha":797,"o":"m 712 369 q 620 94 712 207 q 362 -26 521 -26 q 230 2 292 -26 q 119 83 167 30 l 119 -278 l 0 -278 l 0 362 q 91 643 0 531 q 355 764 190 764 q 617 647 517 764 q 712 369 712 536 m 583 366 q 530 559 583 480 q 359 651 469 651 q 190 562 252 651 q 135 370 135 483 q 189 176 135 257 q 359 85 250 85 q 528 175 466 85 q 583 366 583 254 "},"\xaf":{"x_min":0,"x_max":941.671875,"ha":938,"o":"m 941 1033 l 0 1033 l 0 1109 l 941 1109 l 941 1033 "},"Z":{"x_min":0,"x_max":779,"ha":849,"o":"m 779 0 l 0 0 l 0 113 l 621 896 l 40 896 l 40 1013 l 779 1013 l 778 887 l 171 124 l 779 124 l 779 0 "},"u":{"x_min":0,"x_max":617,"ha":729,"o":"m 617 0 l 499 0 l 499 110 q 391 10 460 45 q 246 -25 322 -25 q 61 58 127 -25 q 0 258 0 136 l 0 738 l 125 738 l 125 284 q 156 148 125 202 q 273 82 197 82 q 433 165 369 82 q 493 340 493 243 l 493 738 l 617 738 l 617 0 "},"k":{"x_min":0,"x_max":612.484375,"ha":697,"o":"m 612 738 l 338 465 l 608 0 l 469 0 l 251 382 l 121 251 l 121 0 l 0 0 l 0 1013 l 121 1013 l 121 402 l 456 738 l 612 738 "},"\u0397":{"x_min":0,"x_max":803,"ha":917,"o":"m 803 0 l 667 0 l 667 475 l 140 475 l 140 0 l 0 0 l 0 1013 l 140 1013 l 140 599 l 667 599 l 667 1013 l 803 1013 l 803 0 "},"\u0391":{"x_min":0,"x_max":906.953125,"ha":985,"o":"m 906 0 l 756 0 l 650 303 l 251 303 l 143 0 l 0 0 l 376 1013 l 529 1013 l 906 0 m 609 421 l 452 866 l 293 421 l 609 421 "},"s":{"x_min":0,"x_max":604,"ha":697,"o":"m 604 217 q 501 36 604 104 q 292 -23 411 -23 q 86 43 166 -23 q 0 238 0 114 l 121 237 q 175 122 121 164 q 300 85 223 85 q 415 112 363 85 q 479 207 479 147 q 361 309 479 276 q 140 372 141 370 q 21 544 21 426 q 111 708 21 647 q 298 761 190 761 q 492 705 413 761 q 583 531 583 643 l 462 531 q 412 625 462 594 q 298 657 363 657 q 199 636 242 657 q 143 558 143 608 q 262 454 143 486 q 484 394 479 397 q 604 217 604 341 "},"B":{"x_min":0,"x_max":778,"ha":876,"o":"m 580 546 q 724 469 670 535 q 778 311 778 403 q 673 83 778 171 q 432 0 575 0 l 0 0 l 0 1013 l 411 1013 q 629 957 541 1013 q 732 768 732 892 q 691 633 732 693 q 580 546 650 572 m 393 899 l 139 899 l 139 588 l 379 588 q 521 624 462 588 q 592 744 592 667 q 531 859 592 819 q 393 899 471 899 m 419 124 q 566 169 504 124 q 635 303 635 219 q 559 436 635 389 q 402 477 494 477 l 139 477 l 139 124 l 419 124 "},"\u2026":{"x_min":0,"x_max":614,"ha":708,"o":"m 142 0 l 0 0 l 0 151 l 142 151 l 142 0 m 378 0 l 236 0 l 236 151 l 378 151 l 378 0 m 614 0 l 472 0 l 472 151 l 614 151 l 614 0 "},"?":{"x_min":0,"x_max":607,"ha":704,"o":"m 607 777 q 543 599 607 674 q 422 474 482 537 q 357 272 357 391 l 236 272 q 297 487 236 395 q 411 619 298 490 q 474 762 474 691 q 422 885 474 838 q 301 933 371 933 q 179 880 228 933 q 124 706 124 819 l 0 706 q 94 963 0 872 q 302 1044 177 1044 q 511 973 423 1044 q 607 777 607 895 m 370 0 l 230 0 l 230 151 l 370 151 l 370 0 "},"H":{"x_min":0,"x_max":803,"ha":915,"o":"m 803 0 l 667 0 l 667 475 l 140 475 l 140 0 l 0 0 l 0 1013 l 140 1013 l 140 599 l 667 599 l 667 1013 l 803 1013 l 803 0 "},"\u03bd":{"x_min":0,"x_max":675,"ha":761,"o":"m 675 738 l 404 0 l 272 0 l 0 738 l 133 738 l 340 147 l 541 738 l 675 738 "},"c":{"x_min":1,"x_max":701.390625,"ha":775,"o":"m 701 264 q 584 53 681 133 q 353 -26 487 -26 q 91 91 188 -26 q 1 370 1 201 q 92 645 1 537 q 353 761 190 761 q 572 688 479 761 q 690 493 666 615 l 556 493 q 487 606 545 562 q 356 650 428 650 q 186 563 246 650 q 134 372 134 487 q 188 179 134 258 q 359 88 250 88 q 492 136 437 88 q 566 264 548 185 l 701 264 "},"\xb6":{"x_min":0,"x_max":566.671875,"ha":678,"o":"m 21 892 l 52 892 l 98 761 l 145 892 l 176 892 l 178 741 l 157 741 l 157 867 l 108 741 l 88 741 l 40 871 l 40 741 l 21 741 l 21 892 m 308 854 l 308 731 q 252 691 308 691 q 227 691 240 691 q 207 696 213 695 l 207 712 l 253 706 q 288 733 288 706 l 288 763 q 244 741 279 741 q 193 797 193 741 q 261 860 193 860 q 287 860 273 860 q 308 854 302 855 m 288 842 l 263 843 q 213 796 213 843 q 248 756 213 756 q 288 796 288 756 l 288 842 m 566 988 l 502 988 l 502 -1 l 439 -1 l 439 988 l 317 988 l 317 -1 l 252 -1 l 252 602 q 81 653 155 602 q 0 805 0 711 q 101 989 0 918 q 309 1053 194 1053 l 566 1053 l 566 988 "},"\u03b2":{"x_min":0,"x_max":660,"ha":745,"o":"m 471 550 q 610 450 561 522 q 660 280 660 378 q 578 64 660 151 q 367 -22 497 -22 q 239 5 299 -22 q 126 82 178 32 l 126 -278 l 0 -278 l 0 593 q 54 903 0 801 q 318 1042 127 1042 q 519 964 436 1042 q 603 771 603 887 q 567 644 603 701 q 471 550 532 586 m 337 79 q 476 138 418 79 q 535 279 535 198 q 427 437 535 386 q 226 477 344 477 l 226 583 q 398 620 329 583 q 486 762 486 668 q 435 884 486 833 q 312 935 384 935 q 169 861 219 935 q 126 698 126 797 l 126 362 q 170 169 126 242 q 337 79 224 79 "},"\u039c":{"x_min":0,"x_max":954,"ha":1068,"o":"m 954 0 l 819 0 l 819 868 l 537 0 l 405 0 l 128 865 l 128 0 l 0 0 l 0 1013 l 199 1013 l 472 158 l 758 1013 l 954 1013 l 954 0 "},"\u038c":{"x_min":0.109375,"x_max":1120,"ha":1217,"o":"m 1120 505 q 994 132 1120 282 q 642 -29 861 -29 q 290 130 422 -29 q 167 505 167 280 q 294 883 167 730 q 650 1046 430 1046 q 999 882 868 1046 q 1120 505 1120 730 m 977 504 q 896 784 977 669 q 644 915 804 915 q 391 785 484 915 q 307 504 307 669 q 391 224 307 339 q 644 95 486 95 q 894 224 803 95 q 977 504 977 339 m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 "},"\u0389":{"x_min":0,"x_max":1158,"ha":1275,"o":"m 1158 0 l 1022 0 l 1022 475 l 496 475 l 496 0 l 356 0 l 356 1012 l 496 1012 l 496 599 l 1022 599 l 1022 1012 l 1158 1012 l 1158 0 m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 "},"\u2022":{"x_min":0,"x_max":663.890625,"ha":775,"o":"m 663 529 q 566 293 663 391 q 331 196 469 196 q 97 294 194 196 q 0 529 0 393 q 96 763 0 665 q 331 861 193 861 q 566 763 469 861 q 663 529 663 665 "},"\xa5":{"x_min":0.1875,"x_max":819.546875,"ha":886,"o":"m 563 561 l 697 561 l 696 487 l 520 487 l 482 416 l 482 380 l 697 380 l 695 308 l 482 308 l 482 0 l 342 0 l 342 308 l 125 308 l 125 380 l 342 380 l 342 417 l 303 487 l 125 487 l 125 561 l 258 561 l 0 1013 l 140 1013 l 411 533 l 679 1013 l 819 1013 l 563 561 "},"(":{"x_min":0,"x_max":318.0625,"ha":415,"o":"m 318 -290 l 230 -290 q 61 23 122 -142 q 0 365 0 190 q 62 712 0 540 q 230 1024 119 869 l 318 1024 q 175 705 219 853 q 125 360 125 542 q 176 22 125 187 q 318 -290 223 -127 "},"U":{"x_min":0,"x_max":796,"ha":904,"o":"m 796 393 q 681 93 796 212 q 386 -25 566 -25 q 101 95 208 -25 q 0 393 0 211 l 0 1013 l 138 1013 l 138 391 q 204 191 138 270 q 394 107 276 107 q 586 191 512 107 q 656 391 656 270 l 656 1013 l 796 1013 l 796 393 "},"\u03b3":{"x_min":0.5,"x_max":744.953125,"ha":822,"o":"m 744 737 l 463 54 l 463 -278 l 338 -278 l 338 54 l 154 495 q 104 597 124 569 q 13 651 67 651 l 0 651 l 0 751 l 39 753 q 168 711 121 753 q 242 594 207 676 l 403 208 l 617 737 l 744 737 "},"\u03b1":{"x_min":0,"x_max":765.5625,"ha":809,"o":"m 765 -4 q 698 -14 726 -14 q 564 97 586 -14 q 466 7 525 40 q 337 -26 407 -26 q 88 98 186 -26 q 0 369 0 212 q 88 637 0 525 q 337 760 184 760 q 465 728 407 760 q 563 637 524 696 l 563 739 l 685 739 l 685 222 q 693 141 685 168 q 748 94 708 94 q 765 96 760 94 l 765 -4 m 584 371 q 531 562 584 485 q 360 653 470 653 q 192 566 254 653 q 135 379 135 489 q 186 181 135 261 q 358 84 247 84 q 528 176 465 84 q 584 371 584 260 "},"F":{"x_min":0,"x_max":683.328125,"ha":717,"o":"m 683 888 l 140 888 l 140 583 l 613 583 l 613 458 l 140 458 l 140 0 l 0 0 l 0 1013 l 683 1013 l 683 888 "},"\xad":{"x_min":0,"x_max":705.5625,"ha":803,"o":"m 705 334 l 0 334 l 0 410 l 705 410 l 705 334 "},":":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 585 l 0 585 l 0 738 l 142 738 l 142 585 m 142 0 l 0 0 l 0 151 l 142 151 l 142 0 "},"\u03a7":{"x_min":0,"x_max":854.171875,"ha":935,"o":"m 854 0 l 683 0 l 423 409 l 166 0 l 0 0 l 347 519 l 18 1013 l 186 1013 l 427 637 l 675 1013 l 836 1013 l 504 521 l 854 0 "},"*":{"x_min":116,"x_max":674,"ha":792,"o":"m 674 768 l 475 713 l 610 544 l 517 477 l 394 652 l 272 478 l 178 544 l 314 713 l 116 766 l 153 876 l 341 812 l 342 1013 l 446 1013 l 446 811 l 635 874 l 674 768 "},"\u2020":{"x_min":0,"x_max":777,"ha":835,"o":"m 458 804 l 777 804 l 777 683 l 458 683 l 458 0 l 319 0 l 319 681 l 0 683 l 0 804 l 319 804 l 319 1015 l 458 1013 l 458 804 "},"\xb0":{"x_min":0,"x_max":347,"ha":444,"o":"m 173 802 q 43 856 91 802 q 0 977 0 905 q 45 1101 0 1049 q 173 1153 90 1153 q 303 1098 255 1153 q 347 977 347 1049 q 303 856 347 905 q 173 802 256 802 m 173 884 q 238 910 214 884 q 262 973 262 937 q 239 1038 262 1012 q 173 1064 217 1064 q 108 1037 132 1064 q 85 973 85 1010 q 108 910 85 937 q 173 884 132 884 "},"V":{"x_min":0,"x_max":862.71875,"ha":940,"o":"m 862 1013 l 505 0 l 361 0 l 0 1013 l 143 1013 l 434 165 l 718 1012 l 862 1013 "},"\u039e":{"x_min":0,"x_max":734.71875,"ha":763,"o":"m 723 889 l 9 889 l 9 1013 l 723 1013 l 723 889 m 673 463 l 61 463 l 61 589 l 673 589 l 673 463 m 734 0 l 0 0 l 0 124 l 734 124 l 734 0 "},"\xa0":{"x_min":0,"x_max":0,"ha":853},"\u03ab":{"x_min":0.328125,"x_max":819.515625,"ha":889,"o":"m 588 1046 l 460 1046 l 460 1189 l 588 1189 l 588 1046 m 360 1046 l 232 1046 l 232 1189 l 360 1189 l 360 1046 m 819 1012 l 482 416 l 482 0 l 342 0 l 342 416 l 0 1012 l 140 1012 l 411 533 l 679 1012 l 819 1012 "},"\u201d":{"x_min":0,"x_max":347,"ha":454,"o":"m 139 851 q 102 737 139 784 q 0 669 65 690 l 0 734 q 59 787 42 741 q 72 873 72 821 l 0 873 l 0 1013 l 139 1013 l 139 851 m 347 851 q 310 737 347 784 q 208 669 273 690 l 208 734 q 267 787 250 741 q 280 873 280 821 l 208 873 l 208 1013 l 347 1013 l 347 851 "},"@":{"x_min":0,"x_max":1260,"ha":1357,"o":"m 1098 -45 q 877 -160 1001 -117 q 633 -203 752 -203 q 155 -29 327 -203 q 0 360 0 127 q 176 802 0 616 q 687 1008 372 1008 q 1123 854 969 1008 q 1260 517 1260 718 q 1155 216 1260 341 q 868 82 1044 82 q 772 106 801 82 q 737 202 737 135 q 647 113 700 144 q 527 82 594 82 q 367 147 420 82 q 314 312 314 212 q 401 565 314 452 q 639 690 498 690 q 810 588 760 690 l 849 668 l 938 668 q 877 441 900 532 q 833 226 833 268 q 853 182 833 198 q 902 167 873 167 q 1088 272 1012 167 q 1159 512 1159 372 q 1051 793 1159 681 q 687 925 925 925 q 248 747 415 925 q 97 361 97 586 q 226 26 97 159 q 627 -122 370 -122 q 856 -87 737 -122 q 1061 8 976 -53 l 1098 -45 m 786 488 q 738 580 777 545 q 643 615 700 615 q 483 517 548 615 q 425 322 425 430 q 457 203 425 250 q 552 156 490 156 q 722 273 665 156 q 786 488 738 309 "},"\u038a":{"x_min":0,"x_max":499,"ha":613,"o":"m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 m 499 0 l 360 0 l 360 1012 l 499 1012 l 499 0 "},"i":{"x_min":14,"x_max":136,"ha":275,"o":"m 136 873 l 14 873 l 14 1013 l 136 1013 l 136 873 m 136 0 l 14 0 l 14 737 l 136 737 l 136 0 "},"\u0392":{"x_min":0,"x_max":778,"ha":877,"o":"m 580 545 q 724 468 671 534 q 778 310 778 402 q 673 83 778 170 q 432 0 575 0 l 0 0 l 0 1013 l 411 1013 q 629 957 541 1013 q 732 768 732 891 q 691 632 732 692 q 580 545 650 571 m 393 899 l 139 899 l 139 587 l 379 587 q 521 623 462 587 q 592 744 592 666 q 531 859 592 819 q 393 899 471 899 m 419 124 q 566 169 504 124 q 635 302 635 219 q 559 435 635 388 q 402 476 494 476 l 139 476 l 139 124 l 419 124 "},"\u03c5":{"x_min":0,"x_max":617,"ha":725,"o":"m 617 352 q 540 94 617 199 q 308 -24 455 -24 q 76 94 161 -24 q 0 352 0 199 l 0 739 l 126 739 l 126 355 q 169 185 126 257 q 312 98 220 98 q 451 185 402 98 q 492 355 492 257 l 492 739 l 617 739 l 617 352 "},"]":{"x_min":0,"x_max":275,"ha":372,"o":"m 275 -281 l 0 -281 l 0 -187 l 151 -187 l 151 920 l 0 920 l 0 1013 l 275 1013 l 275 -281 "},"m":{"x_min":0,"x_max":1019,"ha":1128,"o":"m 1019 0 l 897 0 l 897 454 q 860 591 897 536 q 739 660 816 660 q 613 586 659 660 q 573 436 573 522 l 573 0 l 447 0 l 447 455 q 412 591 447 535 q 294 657 372 657 q 165 586 213 657 q 122 437 122 521 l 122 0 l 0 0 l 0 738 l 117 738 l 117 640 q 202 730 150 697 q 316 763 254 763 q 437 730 381 763 q 525 642 494 697 q 621 731 559 700 q 753 763 682 763 q 943 694 867 763 q 1019 512 1019 625 l 1019 0 "},"\u03c7":{"x_min":8.328125,"x_max":780.5625,"ha":815,"o":"m 780 -278 q 715 -294 747 -294 q 616 -257 663 -294 q 548 -175 576 -227 l 379 133 l 143 -277 l 9 -277 l 313 254 l 163 522 q 127 586 131 580 q 36 640 91 640 q 8 637 27 640 l 8 752 l 52 757 q 162 719 113 757 q 236 627 200 690 l 383 372 l 594 737 l 726 737 l 448 250 l 625 -69 q 670 -153 647 -110 q 743 -188 695 -188 q 780 -184 759 -188 l 780 -278 "},"\u03af":{"x_min":42,"x_max":326.71875,"ha":361,"o":"m 284 3 q 233 -10 258 -5 q 182 -15 207 -15 q 85 26 119 -15 q 42 200 42 79 l 42 737 l 167 737 l 168 215 q 172 141 168 157 q 226 101 183 101 q 248 102 239 101 q 284 112 257 104 l 284 3 m 326 1040 l 137 819 l 54 819 l 189 1040 l 326 1040 "},"\u0396":{"x_min":0,"x_max":779.171875,"ha":850,"o":"m 779 0 l 0 0 l 0 113 l 620 896 l 40 896 l 40 1013 l 779 1013 l 779 887 l 170 124 l 779 124 l 779 0 "},"R":{"x_min":0,"x_max":781.953125,"ha":907,"o":"m 781 0 l 623 0 q 587 242 590 52 q 407 433 585 433 l 138 433 l 138 0 l 0 0 l 0 1013 l 396 1013 q 636 946 539 1013 q 749 731 749 868 q 711 597 749 659 q 608 502 674 534 q 718 370 696 474 q 729 207 722 352 q 781 26 736 62 l 781 0 m 373 551 q 533 594 465 551 q 614 731 614 645 q 532 859 614 815 q 373 896 465 896 l 138 896 l 138 551 l 373 551 "},"o":{"x_min":0,"x_max":713,"ha":821,"o":"m 357 -25 q 94 91 194 -25 q 0 368 0 202 q 93 642 0 533 q 357 761 193 761 q 618 644 518 761 q 713 368 713 533 q 619 91 713 201 q 357 -25 521 -25 m 357 85 q 528 175 465 85 q 584 369 584 255 q 529 562 584 484 q 357 651 467 651 q 189 560 250 651 q 135 369 135 481 q 187 177 135 257 q 357 85 250 85 "},"K":{"x_min":0,"x_max":819.46875,"ha":906,"o":"m 819 0 l 649 0 l 294 509 l 139 355 l 139 0 l 0 0 l 0 1013 l 139 1013 l 139 526 l 626 1013 l 809 1013 l 395 600 l 819 0 "},",":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 -12 q 105 -132 142 -82 q 0 -205 68 -182 l 0 -138 q 57 -82 40 -124 q 70 0 70 -51 l 0 0 l 0 151 l 142 151 l 142 -12 "},"d":{"x_min":0,"x_max":683,"ha":796,"o":"m 683 0 l 564 0 l 564 93 q 456 6 516 38 q 327 -25 395 -25 q 87 100 181 -25 q 0 365 0 215 q 90 639 0 525 q 343 763 187 763 q 564 647 486 763 l 564 1013 l 683 1013 l 683 0 m 582 373 q 529 562 582 484 q 361 653 468 653 q 190 561 253 653 q 135 365 135 479 q 189 175 135 254 q 358 85 251 85 q 529 178 468 85 q 582 373 582 258 "},"\xa8":{"x_min":-109,"x_max":247,"ha":232,"o":"m 247 1046 l 119 1046 l 119 1189 l 247 1189 l 247 1046 m 19 1046 l -109 1046 l -109 1189 l 19 1189 l 19 1046 "},"E":{"x_min":0,"x_max":736.109375,"ha":789,"o":"m 736 0 l 0 0 l 0 1013 l 725 1013 l 725 889 l 139 889 l 139 585 l 677 585 l 677 467 l 139 467 l 139 125 l 736 125 l 736 0 "},"Y":{"x_min":0,"x_max":820,"ha":886,"o":"m 820 1013 l 482 416 l 482 0 l 342 0 l 342 416 l 0 1013 l 140 1013 l 411 534 l 679 1012 l 820 1013 "},"\\"":{"x_min":0,"x_max":299,"ha":396,"o":"m 299 606 l 203 606 l 203 988 l 299 988 l 299 606 m 96 606 l 0 606 l 0 988 l 96 988 l 96 606 "},"\u2039":{"x_min":17.984375,"x_max":773.609375,"ha":792,"o":"m 773 40 l 18 376 l 17 465 l 773 799 l 773 692 l 159 420 l 773 149 l 773 40 "},"\u201e":{"x_min":0,"x_max":364,"ha":467,"o":"m 141 -12 q 104 -132 141 -82 q 0 -205 67 -182 l 0 -138 q 56 -82 40 -124 q 69 0 69 -51 l 0 0 l 0 151 l 141 151 l 141 -12 m 364 -12 q 327 -132 364 -82 q 222 -205 290 -182 l 222 -138 q 279 -82 262 -124 q 292 0 292 -51 l 222 0 l 222 151 l 364 151 l 364 -12 "},"\u03b4":{"x_min":1,"x_max":710,"ha":810,"o":"m 710 360 q 616 87 710 196 q 356 -28 518 -28 q 99 82 197 -28 q 1 356 1 192 q 100 606 1 509 q 355 703 199 703 q 180 829 288 754 q 70 903 124 866 l 70 1012 l 643 1012 l 643 901 l 258 901 q 462 763 422 794 q 636 592 577 677 q 710 360 710 485 m 584 365 q 552 501 584 447 q 451 602 521 555 q 372 611 411 611 q 197 541 258 611 q 136 355 136 472 q 190 171 136 245 q 358 85 252 85 q 528 173 465 85 q 584 365 584 252 "},"\u03ad":{"x_min":0,"x_max":634.71875,"ha":714,"o":"m 634 234 q 527 38 634 110 q 300 -25 433 -25 q 98 29 183 -25 q 0 204 0 93 q 37 313 0 265 q 128 390 67 352 q 56 459 82 419 q 26 555 26 505 q 114 712 26 654 q 295 763 191 763 q 499 700 416 763 q 589 515 589 631 l 478 515 q 419 618 464 580 q 307 657 374 657 q 207 630 253 657 q 151 547 151 598 q 238 445 151 469 q 389 434 280 434 l 389 331 l 349 331 q 206 315 255 331 q 125 210 125 287 q 183 107 125 145 q 302 76 233 76 q 436 117 379 76 q 509 234 493 159 l 634 234 m 520 1040 l 331 819 l 248 819 l 383 1040 l 520 1040 "},"\u03c9":{"x_min":0,"x_max":922,"ha":1031,"o":"m 922 339 q 856 97 922 203 q 650 -26 780 -26 q 538 9 587 -26 q 461 103 489 44 q 387 12 436 46 q 277 -22 339 -22 q 69 97 147 -22 q 0 339 0 203 q 45 551 0 444 q 161 738 84 643 l 302 738 q 175 553 219 647 q 124 336 124 446 q 155 179 124 249 q 275 88 197 88 q 375 163 341 88 q 400 294 400 219 l 400 572 l 524 572 l 524 294 q 561 135 524 192 q 643 88 591 88 q 762 182 719 88 q 797 342 797 257 q 745 556 797 450 q 619 738 705 638 l 760 738 q 874 551 835 640 q 922 339 922 444 "},"\xb4":{"x_min":0,"x_max":96,"ha":251,"o":"m 96 606 l 0 606 l 0 988 l 96 988 l 96 606 "},"\xb1":{"x_min":11,"x_max":781,"ha":792,"o":"m 781 490 l 446 490 l 446 255 l 349 255 l 349 490 l 11 490 l 11 586 l 349 586 l 349 819 l 446 819 l 446 586 l 781 586 l 781 490 m 781 21 l 11 21 l 11 115 l 781 115 l 781 21 "},"|":{"x_min":343,"x_max":449,"ha":792,"o":"m 449 462 l 343 462 l 343 986 l 449 986 l 449 462 m 449 -242 l 343 -242 l 343 280 l 449 280 l 449 -242 "},"\u03cb":{"x_min":0,"x_max":617,"ha":725,"o":"m 482 800 l 372 800 l 372 925 l 482 925 l 482 800 m 239 800 l 129 800 l 129 925 l 239 925 l 239 800 m 617 352 q 540 93 617 199 q 308 -24 455 -24 q 76 93 161 -24 q 0 352 0 199 l 0 738 l 126 738 l 126 354 q 169 185 126 257 q 312 98 220 98 q 451 185 402 98 q 492 354 492 257 l 492 738 l 617 738 l 617 352 "},"\xa7":{"x_min":0,"x_max":593,"ha":690,"o":"m 593 425 q 554 312 593 369 q 467 233 516 254 q 537 83 537 172 q 459 -74 537 -12 q 288 -133 387 -133 q 115 -69 184 -133 q 47 96 47 -6 l 166 96 q 199 7 166 40 q 288 -26 232 -26 q 371 -5 332 -26 q 420 60 420 21 q 311 201 420 139 q 108 309 210 255 q 0 490 0 383 q 33 602 0 551 q 124 687 66 654 q 75 743 93 712 q 58 812 58 773 q 133 984 58 920 q 300 1043 201 1043 q 458 987 394 1043 q 529 814 529 925 l 411 814 q 370 908 404 877 q 289 939 336 939 q 213 911 246 939 q 180 841 180 883 q 286 720 180 779 q 484 612 480 615 q 593 425 593 534 m 467 409 q 355 544 467 473 q 196 630 228 612 q 146 587 162 609 q 124 525 124 558 q 239 387 124 462 q 398 298 369 315 q 448 345 429 316 q 467 409 467 375 "},"b":{"x_min":0,"x_max":685,"ha":783,"o":"m 685 372 q 597 99 685 213 q 347 -25 501 -25 q 219 5 277 -25 q 121 93 161 36 l 121 0 l 0 0 l 0 1013 l 121 1013 l 121 634 q 214 723 157 692 q 341 754 272 754 q 591 637 493 754 q 685 372 685 526 m 554 356 q 499 550 554 470 q 328 644 437 644 q 162 556 223 644 q 108 369 108 478 q 160 176 108 256 q 330 83 221 83 q 498 169 435 83 q 554 356 554 245 "},"q":{"x_min":0,"x_max":683,"ha":876,"o":"m 683 -278 l 564 -278 l 564 97 q 474 8 533 39 q 345 -23 415 -23 q 91 93 188 -23 q 0 364 0 203 q 87 635 0 522 q 337 760 184 760 q 466 727 408 760 q 564 637 523 695 l 564 737 l 683 737 l 683 -278 m 582 375 q 527 564 582 488 q 358 652 466 652 q 190 565 253 652 q 135 377 135 488 q 189 179 135 261 q 361 84 251 84 q 530 179 469 84 q 582 375 582 260 "},"\u03a9":{"x_min":-0.171875,"x_max":969.5625,"ha":1068,"o":"m 969 0 l 555 0 l 555 123 q 744 308 675 194 q 814 558 814 423 q 726 812 814 709 q 484 922 633 922 q 244 820 334 922 q 154 567 154 719 q 223 316 154 433 q 412 123 292 199 l 412 0 l 0 0 l 0 124 l 217 124 q 68 327 122 210 q 15 572 15 444 q 144 911 15 781 q 484 1041 274 1041 q 822 909 691 1041 q 953 569 953 777 q 899 326 953 443 q 750 124 846 210 l 969 124 l 969 0 "},"\u03cd":{"x_min":0,"x_max":617,"ha":725,"o":"m 617 352 q 540 93 617 199 q 308 -24 455 -24 q 76 93 161 -24 q 0 352 0 199 l 0 738 l 126 738 l 126 354 q 169 185 126 257 q 312 98 220 98 q 451 185 402 98 q 492 354 492 257 l 492 738 l 617 738 l 617 352 m 535 1040 l 346 819 l 262 819 l 397 1040 l 535 1040 "},"z":{"x_min":-0.015625,"x_max":613.890625,"ha":697,"o":"m 613 0 l 0 0 l 0 100 l 433 630 l 20 630 l 20 738 l 594 738 l 593 636 l 163 110 l 613 110 l 613 0 "},"\u2122":{"x_min":0,"x_max":894,"ha":1000,"o":"m 389 951 l 229 951 l 229 503 l 160 503 l 160 951 l 0 951 l 0 1011 l 389 1011 l 389 951 m 894 503 l 827 503 l 827 939 l 685 503 l 620 503 l 481 937 l 481 503 l 417 503 l 417 1011 l 517 1011 l 653 580 l 796 1010 l 894 1011 l 894 503 "},"\u03ae":{"x_min":0.78125,"x_max":697,"ha":810,"o":"m 697 -278 l 572 -278 l 572 454 q 540 587 572 536 q 425 650 501 650 q 271 579 337 650 q 206 420 206 509 l 206 0 l 81 0 l 81 489 q 73 588 81 562 q 0 644 56 644 l 0 741 q 68 755 38 755 q 158 721 124 755 q 200 630 193 687 q 297 726 234 692 q 434 761 359 761 q 620 692 544 761 q 697 516 697 624 l 697 -278 m 479 1040 l 290 819 l 207 819 l 341 1040 l 479 1040 "},"\u0398":{"x_min":0,"x_max":960,"ha":1056,"o":"m 960 507 q 833 129 960 280 q 476 -32 698 -32 q 123 129 255 -32 q 0 507 0 280 q 123 883 0 732 q 476 1045 255 1045 q 832 883 696 1045 q 960 507 960 732 m 817 500 q 733 789 817 669 q 476 924 639 924 q 223 792 317 924 q 142 507 142 675 q 222 222 142 339 q 476 89 315 89 q 730 218 636 89 q 817 500 817 334 m 716 449 l 243 449 l 243 571 l 716 571 l 716 449 "},"\xae":{"x_min":-3,"x_max":1008,"ha":1106,"o":"m 503 532 q 614 562 566 532 q 672 658 672 598 q 614 747 672 716 q 503 772 569 772 l 338 772 l 338 532 l 503 532 m 502 -7 q 123 151 263 -7 q -3 501 -3 294 q 123 851 -3 706 q 502 1011 263 1011 q 881 851 739 1011 q 1008 501 1008 708 q 883 151 1008 292 q 502 -7 744 -7 m 502 60 q 830 197 709 60 q 940 501 940 322 q 831 805 940 681 q 502 944 709 944 q 174 805 296 944 q 65 501 65 680 q 173 197 65 320 q 502 60 294 60 m 788 146 l 678 146 q 653 316 655 183 q 527 449 652 449 l 338 449 l 338 146 l 241 146 l 241 854 l 518 854 q 688 808 621 854 q 766 658 766 755 q 739 563 766 607 q 668 497 713 519 q 751 331 747 472 q 788 164 756 190 l 788 146 "},"~":{"x_min":0,"x_max":833,"ha":931,"o":"m 833 958 q 778 753 833 831 q 594 665 716 665 q 402 761 502 665 q 240 857 302 857 q 131 795 166 857 q 104 665 104 745 l 0 665 q 54 867 0 789 q 237 958 116 958 q 429 861 331 958 q 594 765 527 765 q 704 827 670 765 q 729 958 729 874 l 833 958 "},"\u0395":{"x_min":0,"x_max":736.21875,"ha":778,"o":"m 736 0 l 0 0 l 0 1013 l 725 1013 l 725 889 l 139 889 l 139 585 l 677 585 l 677 467 l 139 467 l 139 125 l 736 125 l 736 0 "},"\xb3":{"x_min":0,"x_max":450,"ha":547,"o":"m 450 552 q 379 413 450 464 q 220 366 313 366 q 69 414 130 366 q 0 567 0 470 l 85 567 q 126 470 85 504 q 225 437 168 437 q 320 467 280 437 q 360 552 360 498 q 318 632 360 608 q 213 657 276 657 q 195 657 203 657 q 176 657 181 657 l 176 722 q 279 733 249 722 q 334 815 334 752 q 300 881 334 856 q 220 907 267 907 q 133 875 169 907 q 97 781 97 844 l 15 781 q 78 926 15 875 q 220 972 135 972 q 364 930 303 972 q 426 817 426 888 q 344 697 426 733 q 421 642 392 681 q 450 552 450 603 "},"[":{"x_min":0,"x_max":273.609375,"ha":371,"o":"m 273 -281 l 0 -281 l 0 1013 l 273 1013 l 273 920 l 124 920 l 124 -187 l 273 -187 l 273 -281 "},"L":{"x_min":0,"x_max":645.828125,"ha":696,"o":"m 645 0 l 0 0 l 0 1013 l 140 1013 l 140 126 l 645 126 l 645 0 "},"\u03c3":{"x_min":0,"x_max":803.390625,"ha":894,"o":"m 803 628 l 633 628 q 713 368 713 512 q 618 93 713 204 q 357 -25 518 -25 q 94 91 194 -25 q 0 368 0 201 q 94 644 0 533 q 356 761 194 761 q 481 750 398 761 q 608 739 564 739 l 803 739 l 803 628 m 360 85 q 529 180 467 85 q 584 374 584 262 q 527 566 584 490 q 352 651 463 651 q 187 559 247 651 q 135 368 135 478 q 189 175 135 254 q 360 85 251 85 "},"\u03b6":{"x_min":0,"x_max":573,"ha":642,"o":"m 573 -40 q 553 -162 573 -97 q 510 -278 543 -193 l 400 -278 q 441 -187 428 -219 q 462 -90 462 -132 q 378 -14 462 -14 q 108 45 197 -14 q 0 290 0 117 q 108 631 0 462 q 353 901 194 767 l 55 901 l 55 1012 l 561 1012 l 561 924 q 261 669 382 831 q 128 301 128 489 q 243 117 128 149 q 458 98 350 108 q 573 -40 573 80 "},"\u03b8":{"x_min":0,"x_max":674,"ha":778,"o":"m 674 496 q 601 160 674 304 q 336 -26 508 -26 q 73 153 165 -26 q 0 485 0 296 q 72 840 0 683 q 343 1045 166 1045 q 605 844 516 1045 q 674 496 674 692 m 546 579 q 498 798 546 691 q 336 935 437 935 q 178 798 237 935 q 126 579 137 701 l 546 579 m 546 475 l 126 475 q 170 233 126 348 q 338 80 230 80 q 504 233 447 80 q 546 475 546 346 "},"\u039f":{"x_min":0,"x_max":958,"ha":1054,"o":"m 485 1042 q 834 883 703 1042 q 958 511 958 735 q 834 136 958 287 q 481 -26 701 -26 q 126 130 261 -26 q 0 504 0 279 q 127 880 0 729 q 485 1042 263 1042 m 480 98 q 731 225 638 98 q 815 504 815 340 q 733 783 815 670 q 480 913 640 913 q 226 785 321 913 q 142 504 142 671 q 226 224 142 339 q 480 98 319 98 "},"\u0393":{"x_min":0,"x_max":705.28125,"ha":749,"o":"m 705 886 l 140 886 l 140 0 l 0 0 l 0 1012 l 705 1012 l 705 886 "}," ":{"x_min":0,"x_max":0,"ha":375},"%":{"x_min":-3,"x_max":1089,"ha":1186,"o":"m 845 0 q 663 76 731 0 q 602 244 602 145 q 661 412 602 344 q 845 489 728 489 q 1027 412 959 489 q 1089 244 1089 343 q 1029 76 1089 144 q 845 0 962 0 m 844 103 q 945 143 909 103 q 981 243 981 184 q 947 340 981 301 q 844 385 909 385 q 744 342 781 385 q 708 243 708 300 q 741 147 708 186 q 844 103 780 103 m 888 986 l 284 -25 l 199 -25 l 803 986 l 888 986 m 241 468 q 58 545 126 468 q -3 715 -3 615 q 56 881 -3 813 q 238 958 124 958 q 421 881 353 958 q 483 712 483 813 q 423 544 483 612 q 241 468 356 468 m 241 855 q 137 811 175 855 q 100 710 100 768 q 136 612 100 653 q 240 572 172 572 q 344 614 306 572 q 382 713 382 656 q 347 810 382 771 q 241 855 308 855 "},"P":{"x_min":0,"x_max":726,"ha":806,"o":"m 424 1013 q 640 931 555 1013 q 726 719 726 850 q 637 506 726 587 q 413 426 548 426 l 140 426 l 140 0 l 0 0 l 0 1013 l 424 1013 m 379 889 l 140 889 l 140 548 l 372 548 q 522 589 459 548 q 593 720 593 637 q 528 845 593 801 q 379 889 463 889 "},"\u0388":{"x_min":0,"x_max":1078.21875,"ha":1118,"o":"m 1078 0 l 342 0 l 342 1013 l 1067 1013 l 1067 889 l 481 889 l 481 585 l 1019 585 l 1019 467 l 481 467 l 481 125 l 1078 125 l 1078 0 m 277 1040 l 83 799 l 0 799 l 140 1040 l 277 1040 "},"\u038f":{"x_min":0.125,"x_max":1136.546875,"ha":1235,"o":"m 1136 0 l 722 0 l 722 123 q 911 309 842 194 q 981 558 981 423 q 893 813 981 710 q 651 923 800 923 q 411 821 501 923 q 321 568 321 720 q 390 316 321 433 q 579 123 459 200 l 579 0 l 166 0 l 166 124 l 384 124 q 235 327 289 210 q 182 572 182 444 q 311 912 182 782 q 651 1042 441 1042 q 989 910 858 1042 q 1120 569 1120 778 q 1066 326 1120 443 q 917 124 1013 210 l 1136 124 l 1136 0 m 277 1040 l 83 800 l 0 800 l 140 1041 l 277 1040 "},"_":{"x_min":0,"x_max":705.5625,"ha":803,"o":"m 705 -334 l 0 -334 l 0 -234 l 705 -234 l 705 -334 "},"\u03aa":{"x_min":-110,"x_max":246,"ha":275,"o":"m 246 1046 l 118 1046 l 118 1189 l 246 1189 l 246 1046 m 18 1046 l -110 1046 l -110 1189 l 18 1189 l 18 1046 m 136 0 l 0 0 l 0 1012 l 136 1012 l 136 0 "},"+":{"x_min":23,"x_max":768,"ha":792,"o":"m 768 372 l 444 372 l 444 0 l 347 0 l 347 372 l 23 372 l 23 468 l 347 468 l 347 840 l 444 840 l 444 468 l 768 468 l 768 372 "},"\xbd":{"x_min":0,"x_max":1050,"ha":1149,"o":"m 1050 0 l 625 0 q 712 178 625 108 q 878 277 722 187 q 967 385 967 328 q 932 456 967 429 q 850 484 897 484 q 759 450 798 484 q 721 352 721 416 l 640 352 q 706 502 640 448 q 851 551 766 551 q 987 509 931 551 q 1050 385 1050 462 q 976 251 1050 301 q 829 179 902 215 q 717 68 740 133 l 1050 68 l 1050 0 m 834 985 l 215 -28 l 130 -28 l 750 984 l 834 985 m 224 422 l 142 422 l 142 811 l 0 811 l 0 867 q 104 889 62 867 q 164 973 157 916 l 224 973 l 224 422 "},"\u03a1":{"x_min":0,"x_max":720,"ha":783,"o":"m 424 1013 q 637 933 554 1013 q 720 723 720 853 q 633 508 720 591 q 413 426 546 426 l 140 426 l 140 0 l 0 0 l 0 1013 l 424 1013 m 378 889 l 140 889 l 140 548 l 371 548 q 521 589 458 548 q 592 720 592 637 q 527 845 592 801 q 378 889 463 889 "},"\'":{"x_min":0,"x_max":139,"ha":236,"o":"m 139 851 q 102 737 139 784 q 0 669 65 690 l 0 734 q 59 787 42 741 q 72 873 72 821 l 0 873 l 0 1013 l 139 1013 l 139 851 "},"\xaa":{"x_min":0,"x_max":350,"ha":397,"o":"m 350 625 q 307 616 328 616 q 266 631 281 616 q 247 673 251 645 q 190 628 225 644 q 116 613 156 613 q 32 641 64 613 q 0 722 0 669 q 72 826 0 800 q 247 866 159 846 l 247 887 q 220 934 247 916 q 162 953 194 953 q 104 934 129 953 q 76 882 80 915 l 16 882 q 60 976 16 941 q 166 1011 104 1011 q 266 979 224 1011 q 308 891 308 948 l 308 706 q 311 679 308 688 q 331 670 315 670 l 350 672 l 350 625 m 247 757 l 247 811 q 136 790 175 798 q 64 726 64 773 q 83 682 64 697 q 132 667 103 667 q 207 690 174 667 q 247 757 247 718 "},"\u0385":{"x_min":0,"x_max":450,"ha":553,"o":"m 450 800 l 340 800 l 340 925 l 450 925 l 450 800 m 406 1040 l 212 800 l 129 800 l 269 1040 l 406 1040 m 110 800 l 0 800 l 0 925 l 110 925 l 110 800 "},"T":{"x_min":0,"x_max":777,"ha":835,"o":"m 777 894 l 458 894 l 458 0 l 319 0 l 319 894 l 0 894 l 0 1013 l 777 1013 l 777 894 "},"\u03a6":{"x_min":0,"x_max":915,"ha":997,"o":"m 527 0 l 389 0 l 389 122 q 110 231 220 122 q 0 509 0 340 q 110 785 0 677 q 389 893 220 893 l 389 1013 l 527 1013 l 527 893 q 804 786 693 893 q 915 509 915 679 q 805 231 915 341 q 527 122 696 122 l 527 0 m 527 226 q 712 310 641 226 q 779 507 779 389 q 712 705 779 627 q 527 787 641 787 l 527 226 m 389 226 l 389 787 q 205 698 275 775 q 136 505 136 620 q 206 308 136 391 q 389 226 276 226 "},"\u204b":{"x_min":0,"x_max":0,"ha":694},"j":{"x_min":-77.78125,"x_max":167,"ha":349,"o":"m 167 871 l 42 871 l 42 1013 l 167 1013 l 167 871 m 167 -80 q 121 -231 167 -184 q -26 -278 76 -278 l -77 -278 l -77 -164 l -41 -164 q 26 -143 11 -164 q 42 -65 42 -122 l 42 737 l 167 737 l 167 -80 "},"\u03a3":{"x_min":0,"x_max":756.953125,"ha":819,"o":"m 756 0 l 0 0 l 0 107 l 395 523 l 22 904 l 22 1013 l 745 1013 l 745 889 l 209 889 l 566 523 l 187 125 l 756 125 l 756 0 "},"\u203a":{"x_min":18.0625,"x_max":774,"ha":792,"o":"m 774 376 l 18 40 l 18 149 l 631 421 l 18 692 l 18 799 l 774 465 l 774 376 "},"<":{"x_min":17.984375,"x_max":773.609375,"ha":792,"o":"m 773 40 l 18 376 l 17 465 l 773 799 l 773 692 l 159 420 l 773 149 l 773 40 "},"\xa3":{"x_min":0,"x_max":704.484375,"ha":801,"o":"m 704 41 q 623 -10 664 5 q 543 -26 583 -26 q 359 15 501 -26 q 243 36 288 36 q 158 23 197 36 q 73 -21 119 10 l 6 76 q 125 195 90 150 q 175 331 175 262 q 147 443 175 383 l 0 443 l 0 512 l 108 512 q 43 734 43 623 q 120 929 43 854 q 358 1010 204 1010 q 579 936 487 1010 q 678 729 678 857 l 678 684 l 552 684 q 504 838 552 780 q 362 896 457 896 q 216 852 263 896 q 176 747 176 815 q 199 627 176 697 q 248 512 217 574 l 468 512 l 468 443 l 279 443 q 297 356 297 398 q 230 194 297 279 q 153 107 211 170 q 227 133 190 125 q 293 142 264 142 q 410 119 339 142 q 516 96 482 96 q 579 105 550 96 q 648 142 608 115 l 704 41 "},"t":{"x_min":0,"x_max":367,"ha":458,"o":"m 367 0 q 312 -5 339 -2 q 262 -8 284 -8 q 145 28 183 -8 q 108 143 108 64 l 108 638 l 0 638 l 0 738 l 108 738 l 108 944 l 232 944 l 232 738 l 367 738 l 367 638 l 232 638 l 232 185 q 248 121 232 140 q 307 102 264 102 q 345 104 330 102 q 367 107 360 107 l 367 0 "},"\xac":{"x_min":0,"x_max":706,"ha":803,"o":"m 706 411 l 706 158 l 630 158 l 630 335 l 0 335 l 0 411 l 706 411 "},"\u03bb":{"x_min":0,"x_max":750,"ha":803,"o":"m 750 -7 q 679 -15 716 -15 q 538 59 591 -15 q 466 214 512 97 l 336 551 l 126 0 l 0 0 l 270 705 q 223 837 247 770 q 116 899 190 899 q 90 898 100 899 l 90 1004 q 152 1011 125 1011 q 298 938 244 1011 q 373 783 326 901 l 605 192 q 649 115 629 136 q 716 95 669 95 l 736 95 q 750 97 745 97 l 750 -7 "},"W":{"x_min":0,"x_max":1263.890625,"ha":1351,"o":"m 1263 1013 l 995 0 l 859 0 l 627 837 l 405 0 l 265 0 l 0 1013 l 136 1013 l 342 202 l 556 1013 l 701 1013 l 921 207 l 1133 1012 l 1263 1013 "},">":{"x_min":18.0625,"x_max":774,"ha":792,"o":"m 774 376 l 18 40 l 18 149 l 631 421 l 18 692 l 18 799 l 774 465 l 774 376 "},"v":{"x_min":0,"x_max":675.15625,"ha":761,"o":"m 675 738 l 404 0 l 272 0 l 0 738 l 133 737 l 340 147 l 541 737 l 675 738 "},"\u03c4":{"x_min":0.28125,"x_max":644.5,"ha":703,"o":"m 644 628 l 382 628 l 382 179 q 388 120 382 137 q 436 91 401 91 q 474 94 447 91 q 504 97 501 97 l 504 0 q 454 -9 482 -5 q 401 -14 426 -14 q 278 67 308 -14 q 260 233 260 118 l 260 628 l 0 628 l 0 739 l 644 739 l 644 628 "},"\u03be":{"x_min":0,"x_max":624.9375,"ha":699,"o":"m 624 -37 q 608 -153 624 -96 q 563 -278 593 -211 l 454 -278 q 491 -183 486 -200 q 511 -83 511 -126 q 484 -23 511 -44 q 370 1 452 1 q 323 0 354 1 q 283 -1 293 -1 q 84 76 169 -1 q 0 266 0 154 q 56 431 0 358 q 197 538 108 498 q 94 613 134 562 q 54 730 54 665 q 77 823 54 780 q 143 901 101 867 l 27 901 l 27 1012 l 576 1012 l 576 901 l 380 901 q 244 863 303 901 q 178 745 178 820 q 312 600 178 636 q 532 582 380 582 l 532 479 q 276 455 361 479 q 118 281 118 410 q 165 173 118 217 q 274 120 208 133 q 494 101 384 110 q 624 -37 624 76 "},"&":{"x_min":-3,"x_max":894.25,"ha":992,"o":"m 894 0 l 725 0 l 624 123 q 471 0 553 40 q 306 -41 390 -41 q 168 -7 231 -41 q 62 92 105 26 q 14 187 31 139 q -3 276 -3 235 q 55 433 -3 358 q 248 581 114 508 q 170 689 196 640 q 137 817 137 751 q 214 985 137 922 q 384 1041 284 1041 q 548 988 483 1041 q 622 824 622 928 q 563 666 622 739 q 431 556 516 608 l 621 326 q 649 407 639 361 q 663 493 653 426 l 781 493 q 703 229 781 352 l 894 0 m 504 818 q 468 908 504 877 q 384 940 433 940 q 293 907 331 940 q 255 818 255 875 q 289 714 255 767 q 363 628 313 678 q 477 729 446 682 q 504 818 504 771 m 556 209 l 314 499 q 179 395 223 449 q 135 283 135 341 q 146 222 135 253 q 183 158 158 192 q 333 80 241 80 q 556 209 448 80 "},"\u039b":{"x_min":0,"x_max":862.5,"ha":942,"o":"m 862 0 l 719 0 l 426 847 l 143 0 l 0 0 l 356 1013 l 501 1013 l 862 0 "},"I":{"x_min":41,"x_max":180,"ha":293,"o":"m 180 0 l 41 0 l 41 1013 l 180 1013 l 180 0 "},"G":{"x_min":0,"x_max":921,"ha":1011,"o":"m 921 0 l 832 0 l 801 136 q 655 15 741 58 q 470 -28 568 -28 q 126 133 259 -28 q 0 499 0 284 q 125 881 0 731 q 486 1043 259 1043 q 763 957 647 1043 q 905 709 890 864 l 772 709 q 668 866 747 807 q 486 926 589 926 q 228 795 322 926 q 142 507 142 677 q 228 224 142 342 q 483 94 323 94 q 712 195 625 94 q 796 435 796 291 l 477 435 l 477 549 l 921 549 l 921 0 "},"\u03b0":{"x_min":0,"x_max":617,"ha":725,"o":"m 524 800 l 414 800 l 414 925 l 524 925 l 524 800 m 183 800 l 73 800 l 73 925 l 183 925 l 183 800 m 617 352 q 540 93 617 199 q 308 -24 455 -24 q 76 93 161 -24 q 0 352 0 199 l 0 738 l 126 738 l 126 354 q 169 185 126 257 q 312 98 220 98 q 451 185 402 98 q 492 354 492 257 l 492 738 l 617 738 l 617 352 m 489 1040 l 300 819 l 216 819 l 351 1040 l 489 1040 "},"`":{"x_min":0,"x_max":138.890625,"ha":236,"o":"m 138 699 l 0 699 l 0 861 q 36 974 0 929 q 138 1041 72 1020 l 138 977 q 82 931 95 969 q 69 839 69 893 l 138 839 l 138 699 "},"\xb7":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 585 l 0 585 l 0 738 l 142 738 l 142 585 "},"\u03a5":{"x_min":0.328125,"x_max":819.515625,"ha":889,"o":"m 819 1013 l 482 416 l 482 0 l 342 0 l 342 416 l 0 1013 l 140 1013 l 411 533 l 679 1013 l 819 1013 "},"r":{"x_min":0,"x_max":355.5625,"ha":432,"o":"m 355 621 l 343 621 q 179 569 236 621 q 122 411 122 518 l 122 0 l 0 0 l 0 737 l 117 737 l 117 604 q 204 719 146 686 q 355 753 262 753 l 355 621 "},"x":{"x_min":0,"x_max":675,"ha":764,"o":"m 675 0 l 525 0 l 331 286 l 144 0 l 0 0 l 256 379 l 12 738 l 157 737 l 336 473 l 516 738 l 661 738 l 412 380 l 675 0 "},"\u03bc":{"x_min":0,"x_max":696.609375,"ha":747,"o":"m 696 -4 q 628 -14 657 -14 q 498 97 513 -14 q 422 8 470 41 q 313 -24 374 -24 q 207 3 258 -24 q 120 80 157 31 l 120 -278 l 0 -278 l 0 738 l 124 738 l 124 343 q 165 172 124 246 q 308 82 216 82 q 451 177 402 82 q 492 358 492 254 l 492 738 l 616 738 l 616 214 q 623 136 616 160 q 673 92 636 92 q 696 95 684 92 l 696 -4 "},"h":{"x_min":0,"x_max":615,"ha":724,"o":"m 615 472 l 615 0 l 490 0 l 490 454 q 456 590 490 535 q 338 654 416 654 q 186 588 251 654 q 122 436 122 522 l 122 0 l 0 0 l 0 1013 l 122 1013 l 122 633 q 218 727 149 694 q 362 760 287 760 q 552 676 484 760 q 615 472 615 600 "},".":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 0 l 0 0 l 0 151 l 142 151 l 142 0 "},"\u03c6":{"x_min":-2,"x_max":878,"ha":974,"o":"m 496 -279 l 378 -279 l 378 -17 q 101 88 204 -17 q -2 367 -2 194 q 68 626 -2 510 q 283 758 151 758 l 283 646 q 167 537 209 626 q 133 373 133 462 q 192 177 133 254 q 378 93 259 93 l 378 758 q 445 764 426 763 q 476 765 464 765 q 765 659 653 765 q 878 377 878 553 q 771 96 878 209 q 496 -17 665 -17 l 496 -279 m 496 93 l 514 93 q 687 183 623 93 q 746 380 746 265 q 691 569 746 491 q 522 658 629 658 l 496 656 l 496 93 "},";":{"x_min":0,"x_max":142,"ha":239,"o":"m 142 585 l 0 585 l 0 738 l 142 738 l 142 585 m 142 -12 q 105 -132 142 -82 q 0 -206 68 -182 l 0 -138 q 58 -82 43 -123 q 68 0 68 -56 l 0 0 l 0 151 l 142 151 l 142 -12 "},"f":{"x_min":0,"x_max":378,"ha":472,"o":"m 378 638 l 246 638 l 246 0 l 121 0 l 121 638 l 0 638 l 0 738 l 121 738 q 137 935 121 887 q 290 1028 171 1028 q 320 1027 305 1028 q 378 1021 334 1026 l 378 908 q 323 918 346 918 q 257 870 273 918 q 246 780 246 840 l 246 738 l 378 738 l 378 638 "},"\u201c":{"x_min":1,"x_max":348.21875,"ha":454,"o":"m 140 670 l 1 670 l 1 830 q 37 943 1 897 q 140 1011 74 990 l 140 947 q 82 900 97 940 q 68 810 68 861 l 140 810 l 140 670 m 348 670 l 209 670 l 209 830 q 245 943 209 897 q 348 1011 282 990 l 348 947 q 290 900 305 940 q 276 810 276 861 l 348 810 l 348 670 "},"A":{"x_min":0.03125,"x_max":906.953125,"ha":1008,"o":"m 906 0 l 756 0 l 648 303 l 251 303 l 142 0 l 0 0 l 376 1013 l 529 1013 l 906 0 m 610 421 l 452 867 l 293 421 l 610 421 "},"\u2018":{"x_min":1,"x_max":139.890625,"ha":236,"o":"m 139 670 l 1 670 l 1 830 q 37 943 1 897 q 139 1011 74 990 l 139 947 q 82 900 97 940 q 68 810 68 861 l 139 810 l 139 670 "},"\u03ca":{"x_min":-70,"x_max":283,"ha":361,"o":"m 283 800 l 173 800 l 173 925 l 283 925 l 283 800 m 40 800 l -70 800 l -70 925 l 40 925 l 40 800 m 283 3 q 232 -10 257 -5 q 181 -15 206 -15 q 84 26 118 -15 q 41 200 41 79 l 41 737 l 166 737 l 167 215 q 171 141 167 157 q 225 101 182 101 q 247 103 238 101 q 283 112 256 104 l 283 3 "},"\u03c0":{"x_min":-0.21875,"x_max":773.21875,"ha":857,"o":"m 773 -7 l 707 -11 q 575 40 607 -11 q 552 174 552 77 l 552 226 l 552 626 l 222 626 l 222 0 l 97 0 l 97 626 l 0 626 l 0 737 l 773 737 l 773 626 l 676 626 l 676 171 q 695 103 676 117 q 773 90 714 90 l 773 -7 "},"\u03ac":{"x_min":0,"x_max":765.5625,"ha":809,"o":"m 765 -4 q 698 -14 726 -14 q 564 97 586 -14 q 466 7 525 40 q 337 -26 407 -26 q 88 98 186 -26 q 0 369 0 212 q 88 637 0 525 q 337 760 184 760 q 465 727 407 760 q 563 637 524 695 l 563 738 l 685 738 l 685 222 q 693 141 685 168 q 748 94 708 94 q 765 95 760 94 l 765 -4 m 584 371 q 531 562 584 485 q 360 653 470 653 q 192 566 254 653 q 135 379 135 489 q 186 181 135 261 q 358 84 247 84 q 528 176 465 84 q 584 371 584 260 m 604 1040 l 415 819 l 332 819 l 466 1040 l 604 1040 "},"O":{"x_min":0,"x_max":958,"ha":1057,"o":"m 485 1041 q 834 882 702 1041 q 958 512 958 734 q 834 136 958 287 q 481 -26 702 -26 q 126 130 261 -26 q 0 504 0 279 q 127 880 0 728 q 485 1041 263 1041 m 480 98 q 731 225 638 98 q 815 504 815 340 q 733 783 815 669 q 480 912 640 912 q 226 784 321 912 q 142 504 142 670 q 226 224 142 339 q 480 98 319 98 "},"n":{"x_min":0,"x_max":615,"ha":724,"o":"m 615 463 l 615 0 l 490 0 l 490 454 q 453 592 490 537 q 331 656 410 656 q 178 585 240 656 q 117 421 117 514 l 117 0 l 0 0 l 0 738 l 117 738 l 117 630 q 218 728 150 693 q 359 764 286 764 q 552 675 484 764 q 615 463 615 593 "},"l":{"x_min":41,"x_max":166,"ha":279,"o":"m 166 0 l 41 0 l 41 1013 l 166 1013 l 166 0 "},"\xa4":{"x_min":40.09375,"x_max":728.796875,"ha":825,"o":"m 728 304 l 649 224 l 512 363 q 383 331 458 331 q 256 363 310 331 l 119 224 l 40 304 l 177 441 q 150 553 150 493 q 184 673 150 621 l 40 818 l 119 898 l 267 749 q 321 766 291 759 q 384 773 351 773 q 447 766 417 773 q 501 749 477 759 l 649 898 l 728 818 l 585 675 q 612 618 604 648 q 621 553 621 587 q 591 441 621 491 l 728 304 m 384 682 q 280 643 318 682 q 243 551 243 604 q 279 461 243 499 q 383 423 316 423 q 487 461 449 423 q 525 553 525 500 q 490 641 525 605 q 384 682 451 682 "},"\u03ba":{"x_min":0,"x_max":632.328125,"ha":679,"o":"m 632 0 l 482 0 l 225 384 l 124 288 l 124 0 l 0 0 l 0 738 l 124 738 l 124 446 l 433 738 l 596 738 l 312 466 l 632 0 "},"p":{"x_min":0,"x_max":685,"ha":786,"o":"m 685 364 q 598 96 685 205 q 350 -23 504 -23 q 121 89 205 -23 l 121 -278 l 0 -278 l 0 738 l 121 738 l 121 633 q 220 726 159 691 q 351 761 280 761 q 598 636 504 761 q 685 364 685 522 m 557 371 q 501 560 557 481 q 330 651 437 651 q 162 559 223 651 q 108 366 108 479 q 162 177 108 254 q 333 87 224 87 q 502 178 441 87 q 557 371 557 258 "},"\u2021":{"x_min":0,"x_max":777,"ha":835,"o":"m 458 238 l 458 0 l 319 0 l 319 238 l 0 238 l 0 360 l 319 360 l 319 681 l 0 683 l 0 804 l 319 804 l 319 1015 l 458 1013 l 458 804 l 777 804 l 777 683 l 458 683 l 458 360 l 777 360 l 777 238 l 458 238 "},"\u03c8":{"x_min":0,"x_max":808,"ha":907,"o":"m 465 -278 l 341 -278 l 341 -15 q 87 102 180 -15 q 0 378 0 210 l 0 739 l 133 739 l 133 379 q 182 195 133 275 q 341 98 242 98 l 341 922 l 465 922 l 465 98 q 623 195 563 98 q 675 382 675 278 l 675 742 l 808 742 l 808 381 q 720 104 808 213 q 466 -13 627 -13 l 465 -278 "},"\u03b7":{"x_min":0.78125,"x_max":697,"ha":810,"o":"m 697 -278 l 572 -278 l 572 454 q 540 587 572 536 q 425 650 501 650 q 271 579 337 650 q 206 420 206 509 l 206 0 l 81 0 l 81 489 q 73 588 81 562 q 0 644 56 644 l 0 741 q 68 755 38 755 q 158 720 124 755 q 200 630 193 686 q 297 726 234 692 q 434 761 359 761 q 620 692 544 761 q 697 516 697 624 l 697 -278 "}},"cssFontWeight":"normal","ascender":1189,"underlinePosition":-100,"cssFontStyle":"normal","boundingBox":{"yMin":-334,"xMin":-111,"yMax":1189,"xMax":1672},"resolution":1000,"original_font_information":{"postscript_name":"Helvetiker-Regular","version_string":"Version 1.00 2004 initial release","vendor_url":"http://www.magenta.gr/","full_font_name":"Helvetiker","font_family_name":"Helvetiker","copyright":"Copyright (c) \u039cagenta ltd, 2004","description":"","trademark":"","designer":"","designer_url":"","unique_font_identifier":"\u039cagenta ltd:Helvetiker:22-10-104","license_url":"http://www.ellak.gr/fonts/MgOpen/license.html","license_description":"Copyright (c) 2004 by MAGENTA Ltd. All Rights Reserved.\\r\\n\\r\\nPermission is hereby granted, free of charge, to any person obtaining a copy of the fonts accompanying this license (\\"Fonts\\") and associated documentation files (the \\"Font Software\\"), to reproduce and distribute the Font Software, including without limitation the rights to use, copy, merge, publish, distribute, and/or sell copies of the Font Software, and to permit persons to whom the Font Software is furnished to do so, subject to the following conditions: \\r\\n\\r\\nThe above copyright and this permission notice shall be included in all copies of one or more of the Font Software typefaces.\\r\\n\\r\\nThe Font Software may be modified, altered, or added to, and in particular the designs of glyphs or characters in the Fonts may be modified and additional glyphs or characters may be added to the Fonts, only if the fonts are renamed to names not containing the word \\"MgOpen\\", or if the modifications are accepted for inclusion in the Font Software itself by the each appointed Administrator.\\r\\n\\r\\nThis License becomes null and void to the extent applicable to Fonts or Font Software that has been modified and is distributed under the \\"MgOpen\\" name.\\r\\n\\r\\nThe Font Software may be sold as part of a larger software package but no copy of one or more of the Font Software typefaces may be sold by itself. \\r\\n\\r\\nTHE FONT SOFTWARE IS PROVIDED \\"AS IS\\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL MAGENTA OR PERSONS OR BODIES IN CHARGE OF ADMINISTRATION AND MAINTENANCE OF THE FONT SOFTWARE BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.","manufacturer_name":"\u039cagenta ltd","font_sub_family_name":"Regular"},"descender":-334,"familyName":"Helvetiker","lineHeight":1522,"underlineThickness":50}');class qse{constructor(t,e=new $se(new p8(kj)),i=new Hse(new p8(kj)),r=new Sse,s=new Tse){this.geometryOptions=t,this.frontPrintContainerMesh=e,this.backPrintContainerMesh=i,this.baseplateMesh=r,this.mapMesh=s,this.printMesh=new dr,this.printMesh.name="PrintMesh"}initialize(){var t=this;return Mn(function*(){t.baseplateMesh=yield t.baseplateMesh.init(t.geometryOptions),t.printMesh.add(t.baseplateMesh),t.mapMesh=yield t.mapMesh.init(t.geometryOptions),t.printMesh.add(t.mapMesh),t.frontPrintContainerMesh=yield t.frontPrintContainerMesh.init(t.geometryOptions),t.printMesh.add(t.frontPrintContainerMesh),t.backPrintContainerMesh=yield t.backPrintContainerMesh.init(t.geometryOptions),t.printMesh.add(t.backPrintContainerMesh),t.calculateCurrentSize()})()}getThreeMesh(){return this.printMesh}getMapMesh(){return this.mapMesh}getSize(){return this.currentSize}updateSize(t){var e=this;return Mn(function*(){e.geometryOptions.width=t;const i=e.currentSize.x;return yield Promise.all([...e.printMesh.children].map(function(){var r=Mn(function*(s){s instanceof Ou&&s.isGeneralSizeChangeMesh()&&s.changeSize(e.geometryOptions,i)});return function(s){return r.apply(this,arguments)}}())),e.calculateCurrentSize(),e.backPrintContainerMesh.isQRCodeVisible()})()}updateNumberOfColors(t){this.geometryOptions.numberOfColors=t;for(const e of this.printMesh.children)e instanceof Ou&&e.updateColor(t)}addCustomLogo(t){var e=this;return Mn(function*(){e.frontPrintContainerMesh.addCustomLogo(t,e.geometryOptions)})()}rotateCustomLogo(){this.frontPrintContainerMesh.rotateCustomLogo()}flipCustomLogo(){this.frontPrintContainerMesh.flipCustomLogo()}removeCustomLogo(){this.frontPrintContainerMesh.removeCustomLogo()}updateCustomLogoColor(t){this.frontPrintContainerMesh.updateCustomLogoColor(t)}updateFrontText(t){this.frontPrintContainerMesh.updateFrontText(t,this.geometryOptions)}updateSecondRowVisibility(t){this.geometryOptions.secondRowVisible!==t&&(this.geometryOptions.secondRowVisible=t,this.frontPrintContainerMesh.updateSecondRowVisibility(this.geometryOptions),this.baseplateMesh.changeSize(this.geometryOptions))}updateSecondRowText(t){var e=this;return Mn(function*(){yield e.frontPrintContainerMesh.updateSecondRowText(t,e.geometryOptions)})()}calculateCurrentSize(){const t=this.baseplateMesh.getWidth(),e=this.baseplateMesh.getDepth(),i=this.baseplateMesh.getHeight()+this.mapMesh.getHeight();this.currentSize=new pe(t,e,i)}updateQrCodeText(t){var e=this;return Mn(function*(){yield e.backPrintContainerMesh.updateQrCodeText(t,e.geometryOptions)})()}updateQrCodeVisibility(t){this.backPrintContainerMesh.updateQrCodeVisibility(t)}}function Rj(n,t,e,i,r){const u=n.z,f=n.x,p=n.y-e;return t.geometry.boundingBox||t.geometry.computeBoundingBox(),Math.min(f,p,(u-i)*t.geometry.boundingBox.max.x/(t.geometry.boundingBox.max.z-t.geometry.boundingBox.min.z)+2*r)}const{isArray:Wse}=Array,{getPrototypeOf:Xse,prototype:Kse,keys:Yse}=Object;function Pj(n){if(1===n.length){const t=n[0];if(Wse(t))return{args:t,keys:null};if(function Zse(n){return n&&"object"==typeof n&&Xse(n)===Kse}(t)){const e=Yse(t);return{args:e.map(i=>t[i]),keys:e}}}return{args:n,keys:null}}function Oj(n,t){return n.reduce((e,i,r)=>(e[i]=t[r],e),{})}let Nj=(()=>{class n{constructor(e,i){this._renderer=e,this._elementRef=i,this.onChange=r=>{},this.onTouched=()=>{}}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.sFG),o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n})}}return n})(),sv=(()=>{class n extends Nj{static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,features:[o.Vt3]})}}return n})();const Aa=new o.nKC(""),tae={provide:Aa,useExisting:(0,o.Rfq)(()=>Xg),multi:!0},iae=new o.nKC("");let Xg=(()=>{class n extends Nj{constructor(e,i,r){super(e,i),this._compositionMode=r,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function nae(){const n=Z()?Z().getUserAgent():"";return/android (\d+)/.test(n.toLowerCase())}())}writeValue(e){this.setProperty("value",e??"")}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.sFG),o.rXU(o.aKT),o.rXU(iae,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(i,r){1&i&&o.bIt("input",function(l){return r._handleInput(l.target.value)})("blur",function(){return r.onTouched()})("compositionstart",function(){return r._compositionStart()})("compositionend",function(l){return r._compositionEnd(l.target.value)})},features:[o.Jv_([tae]),o.Vt3]})}}return n})();function Kg(n){return null==n||("string"==typeof n||Array.isArray(n))&&0===n.length}function Uj(n){return null!=n&&"number"==typeof n.length}const Hs=new o.nKC(""),Yg=new o.nKC(""),rae=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class v8{static min(t){return function Vj(n){return t=>{if(Kg(t.value)||Kg(n))return null;const e=parseFloat(t.value);return!isNaN(e)&&e{if(Kg(t.value)||Kg(n))return null;const e=parseFloat(t.value);return!isNaN(e)&&e>n?{max:{max:n,actual:t.value}}:null}}(t)}static required(t){return Qj(t)}static requiredTrue(t){return function zj(n){return!0===n.value?null:{required:!0}}(t)}static email(t){return function Gj(n){return Kg(n.value)||rae.test(n.value)?null:{email:!0}}(t)}static minLength(t){return function jj(n){return t=>Kg(t.value)||!Uj(t.value)?null:t.value.lengthUj(t.value)&&t.value.length>n?{maxlength:{requiredLength:n,actualLength:t.value.length}}:null}(t)}static pattern(t){return function qj(n){if(!n)return X3;let t,e;return"string"==typeof n?(e="","^"!==n.charAt(0)&&(e+="^"),e+=n,"$"!==n.charAt(n.length-1)&&(e+="$"),t=new RegExp(e)):(e=n.toString(),t=n),i=>{if(Kg(i.value))return null;const r=i.value;return t.test(r)?null:{pattern:{requiredPattern:e,actualValue:r}}}}(t)}static nullValidator(t){return null}static compose(t){return Jj(t)}static composeAsync(t){return e$(t)}}function Qj(n){return Kg(n.value)?{required:!0}:null}function X3(n){return null}function Wj(n){return null!=n}function Xj(n){return(0,o.jNT)(n)?sa(n):n}function Kj(n){let t={};return n.forEach(e=>{t=null!=e?{...t,...e}:t}),0===Object.keys(t).length?null:t}function Yj(n,t){return t.map(e=>e(n))}function Zj(n){return n.map(t=>function oae(n){return!n.validate}(t)?t:e=>t.validate(e))}function Jj(n){if(!n)return null;const t=n.filter(Wj);return 0==t.length?null:function(e){return Kj(Yj(e,t))}}function y8(n){return null!=n?Jj(Zj(n)):null}function e$(n){if(!n)return null;const t=n.filter(Wj);return 0==t.length?null:function(e){return function Jse(...n){const t=RA(n),{args:e,keys:i}=Pj(n),r=new qr.c(s=>{const{length:l}=e;if(!l)return void s.complete();const u=new Array(l);let f=l,p=l;for(let m=0;m{_||(_=!0,p--),u[m]=b},()=>f--,void 0,()=>{(!f||!_)&&(p||s.next(i?Oj(i,u):u),s.complete())}))}});return t?r.pipe(kc(t)):r}(Yj(e,t).map(Xj)).pipe((0,qn.T)(Kj))}}function w8(n){return null!=n?e$(Zj(n)):null}function t$(n,t){return null===n?[t]:Array.isArray(n)?[...n,t]:[n,t]}function n$(n){return n._rawValidators}function i$(n){return n._rawAsyncValidators}function x8(n){return n?Array.isArray(n)?n:[n]:[]}function K3(n,t){return Array.isArray(n)?n.includes(t):n===t}function r$(n,t){const e=x8(t);return x8(n).forEach(r=>{K3(e,r)||e.push(r)}),e}function o$(n,t){return x8(t).filter(e=>!K3(n,e))}class s${constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=y8(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=w8(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Tl extends s${get formDirective(){return null}get path(){return null}}class Kh extends s${constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class a${constructor(t){this._cd=t}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}}let Jw=(()=>{class n extends a${constructor(e){super(e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Kh,2))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,r){2&i&&o.AVh("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)},features:[o.Vt3]})}}return n})();const jS="VALID",Z3="INVALID",ex="PENDING",$S="DISABLED";class tx{}class c$ extends tx{constructor(t,e){super(),this.value=t,this.source=e}}class E8 extends tx{constructor(t,e){super(),this.pristine=t,this.source=e}}class S8 extends tx{constructor(t,e){super(),this.touched=t,this.source=e}}class J3 extends tx{constructor(t,e){super(),this.status=t,this.source=e}}class uae extends tx{constructor(t){super(),this.source=t}}class hae extends tx{constructor(t){super(),this.source=t}}function T8(n){return(eR(n)?n.validators:n)||null}function I8(n,t){return(eR(t)?t.asyncValidators:n)||null}function eR(n){return null!=n&&!Array.isArray(n)&&"object"==typeof n}class F8{constructor(t,e){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=null,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this._status=(0,o.EWP)(()=>this.statusReactive()),this.statusReactive=(0,o.vPA)(void 0),this._pristine=(0,o.EWP)(()=>this.pristineReactive()),this.pristineReactive=(0,o.vPA)(!0),this._touched=(0,o.EWP)(()=>this.touchedReactive()),this.touchedReactive=(0,o.vPA)(!1),this._events=new mi.B,this.events=this._events.asObservable(),this._onDisabledChange=[],this._assignValidators(t),this._assignAsyncValidators(e)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get status(){return(0,o.O8t)(this.statusReactive)}set status(t){(0,o.O8t)(()=>this.statusReactive.set(t))}get valid(){return this.status===jS}get invalid(){return this.status===Z3}get pending(){return this.status==ex}get disabled(){return this.status===$S}get enabled(){return this.status!==$S}get pristine(){return(0,o.O8t)(this.pristineReactive)}set pristine(t){(0,o.O8t)(()=>this.pristineReactive.set(t))}get dirty(){return!this.pristine}get touched(){return(0,o.O8t)(this.touchedReactive)}set touched(t){(0,o.O8t)(()=>this.touchedReactive.set(t))}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(r$(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(r$(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(o$(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(o$(t,this._rawAsyncValidators))}hasValidator(t){return K3(this._rawValidators,t)}hasAsyncValidator(t){return K3(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){const e=!1===this.touched;this.touched=!0;const i=t.sourceControl??this;this._parent&&!t.onlySelf&&this._parent.markAsTouched({...t,sourceControl:i}),e&&!1!==t.emitEvent&&this._events.next(new S8(!0,i))}markAllAsTouched(t={}){this.markAsTouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(t))}markAsUntouched(t={}){const e=!0===this.touched;this.touched=!1,this._pendingTouched=!1;const i=t.sourceControl??this;this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:i})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t,i),e&&!1!==t.emitEvent&&this._events.next(new S8(!1,i))}markAsDirty(t={}){const e=!0===this.pristine;this.pristine=!1;const i=t.sourceControl??this;this._parent&&!t.onlySelf&&this._parent.markAsDirty({...t,sourceControl:i}),e&&!1!==t.emitEvent&&this._events.next(new E8(!1,i))}markAsPristine(t={}){const e=!1===this.pristine;this.pristine=!0,this._pendingDirty=!1;const i=t.sourceControl??this;this._forEachChild(r=>{r.markAsPristine({onlySelf:!0,emitEvent:t.emitEvent})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t,i),e&&!1!==t.emitEvent&&this._events.next(new E8(!0,i))}markAsPending(t={}){this.status=ex;const e=t.sourceControl??this;!1!==t.emitEvent&&(this._events.next(new J3(this.status,e)),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.markAsPending({...t,sourceControl:e})}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=$S,this.errors=null,this._forEachChild(r=>{r.disable({...t,onlySelf:!0})}),this._updateValue();const i=t.sourceControl??this;!1!==t.emitEvent&&(this._events.next(new c$(this.value,i)),this._events.next(new J3(this.status,i)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...t,skipPristineCheck:e},this),this._onDisabledChange.forEach(r=>r(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=jS,this._forEachChild(i=>{i.enable({...t,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors({...t,skipPristineCheck:e},this),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(t,e){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine({},e),this._parent._updateTouched({},e))}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){const i=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===jS||this.status===ex)&&this._runAsyncValidator(i,t.emitEvent)}const e=t.sourceControl??this;!1!==t.emitEvent&&(this._events.next(new c$(this.value,e)),this._events.next(new J3(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity({...t,sourceControl:e})}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?$S:jS}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t,e){if(this.asyncValidator){this.status=ex,this._hasOwnPendingAsyncValidator={emitEvent:!1!==e};const i=Xj(this.asyncValidator(this));this._asyncValidationSubscription=i.subscribe(r=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(r,{emitEvent:e,shouldHaveEmitted:t})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();const t=this._hasOwnPendingAsyncValidator?.emitEvent??!1;return this._hasOwnPendingAsyncValidator=null,t}return!1}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent,this,e.shouldHaveEmitted)}get(t){let e=t;return null==e||(Array.isArray(e)||(e=e.split(".")),0===e.length)?null:e.reduce((i,r)=>i&&i._find(r),this)}getError(t,e){const i=e?this.get(e):this;return i&&i.errors?i.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t,e,i){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),(t||i)&&this._events.next(new J3(this.status,e)),this._parent&&this._parent._updateControlsErrors(t,e,i)}_initObservables(){this.valueChanges=new o.bkB,this.statusChanges=new o.bkB}_calculateStatus(){return this._allControlsDisabled()?$S:this.errors?Z3:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(ex)?ex:this._anyControlsHaveStatus(Z3)?Z3:jS}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t,e){const i=!this._anyControlsDirty(),r=this.pristine!==i;this.pristine=i,this._parent&&!t.onlySelf&&this._parent._updatePristine(t,e),r&&this._events.next(new E8(this.pristine,e))}_updateTouched(t={},e){this.touched=this._anyControlsTouched(),this._events.next(new S8(this.touched,e)),this._parent&&!t.onlySelf&&this._parent._updateTouched(t,e)}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){eR(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=function fae(n){return Array.isArray(n)?y8(n):n||null}(this._rawValidators)}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=function pae(n){return Array.isArray(n)?w8(n):n||null}(this._rawAsyncValidators)}}class D8 extends F8{constructor(t,e,i){super(T8(e),I8(i,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e,i={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,i={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){(function u$(n,t,e){n._forEachChild((i,r)=>{if(void 0===e[r])throw new o.wOt(1002,"")})})(this,0,t),Object.keys(t).forEach(i=>{(function d$(n,t,e){const i=n.controls;if(!(t?Object.keys(i):i).length)throw new o.wOt(1e3,"");if(!i[e])throw new o.wOt(1001,"")})(this,!0,i),this.controls[i].setValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){null!=t&&(Object.keys(t).forEach(i=>{const r=this.controls[i];r&&r.patchValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(t={},e={}){this._forEachChild((i,r)=>{i.reset(t?t[r]:null,{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,i)=>(t[i]=e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(e,i)=>!!i._syncPendingControls()||e);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){Object.keys(this.controls).forEach(e=>{const i=this.controls[e];i&&t(i,e)})}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const[e,i]of Object.entries(this.controls))if(this.contains(e)&&t(i))return!0;return!1}_reduceValue(){return this._reduceChildren({},(e,i,r)=>((i.enabled||this.disabled)&&(e[r]=i.value),e))}_reduceChildren(t,e){let i=t;return this._forEachChild((r,s)=>{i=e(i,r,s)}),i}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(t){return this.controls.hasOwnProperty(t)?this.controls[t]:null}}const av=new o.nKC("CallSetDisabledState",{providedIn:"root",factory:()=>qS}),qS="always";function WS(n,t,e=qS){B8(n,t),t.valueAccessor.writeValue(n.value),(n.disabled||"always"===e)&&t.valueAccessor.setDisabledState?.(n.disabled),function gae(n,t){t.valueAccessor.registerOnChange(e=>{n._pendingValue=e,n._pendingChange=!0,n._pendingDirty=!0,"change"===n.updateOn&&h$(n,t)})}(n,t),function bae(n,t){const e=(i,r)=>{t.valueAccessor.writeValue(i),r&&t.viewToModelUpdate(i)};n.registerOnChange(e),t._registerOnDestroy(()=>{n._unregisterOnChange(e)})}(n,t),function _ae(n,t){t.valueAccessor.registerOnTouched(()=>{n._pendingTouched=!0,"blur"===n.updateOn&&n._pendingChange&&h$(n,t),"submit"!==n.updateOn&&n.markAsTouched()})}(n,t),function mae(n,t){if(t.valueAccessor.setDisabledState){const e=i=>{t.valueAccessor.setDisabledState(i)};n.registerOnDisabledChange(e),t._registerOnDestroy(()=>{n._unregisterOnDisabledChange(e)})}}(n,t)}function nR(n,t,e=!0){const i=()=>{};t.valueAccessor&&(t.valueAccessor.registerOnChange(i),t.valueAccessor.registerOnTouched(i)),rR(n,t),n&&(t._invokeOnDestroyCallbacks(),n._registerOnCollectionChange(()=>{}))}function iR(n,t){n.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(t)})}function B8(n,t){const e=n$(n);null!==t.validator?n.setValidators(t$(e,t.validator)):"function"==typeof e&&n.setValidators([e]);const i=i$(n);null!==t.asyncValidator?n.setAsyncValidators(t$(i,t.asyncValidator)):"function"==typeof i&&n.setAsyncValidators([i]);const r=()=>n.updateValueAndValidity();iR(t._rawValidators,r),iR(t._rawAsyncValidators,r)}function rR(n,t){let e=!1;if(null!==n){if(null!==t.validator){const r=n$(n);if(Array.isArray(r)&&r.length>0){const s=r.filter(l=>l!==t.validator);s.length!==r.length&&(e=!0,n.setValidators(s))}}if(null!==t.asyncValidator){const r=i$(n);if(Array.isArray(r)&&r.length>0){const s=r.filter(l=>l!==t.asyncValidator);s.length!==r.length&&(e=!0,n.setAsyncValidators(s))}}}const i=()=>{};return iR(t._rawValidators,i),iR(t._rawAsyncValidators,i),e}function h$(n,t){n._pendingDirty&&n.markAsDirty(),n.setValue(n._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(n._pendingValue),n._pendingChange=!1}function f$(n,t){B8(n,t)}function R8(n,t){if(!n.hasOwnProperty("model"))return!1;const e=n.model;return!!e.isFirstChange()||!Object.is(t,e.currentValue)}function p$(n,t){n._syncPendingControls(),t.forEach(e=>{const i=e.control;"submit"===i.updateOn&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function P8(n,t){if(!t)return null;let e,i,r;return Array.isArray(t),t.forEach(s=>{s.constructor===Xg?e=s:function wae(n){return Object.getPrototypeOf(n.constructor)===sv}(s)?i=s:r=s}),r||i||e||null}const Cae={provide:Tl,useExisting:(0,o.Rfq)(()=>KS)},XS=Promise.resolve();let KS=(()=>{class n extends Tl{get submitted(){return(0,o.O8t)(this.submittedReactive)}constructor(e,i,r){super(),this.callSetDisabledState=r,this._submitted=(0,o.EWP)(()=>this.submittedReactive()),this.submittedReactive=(0,o.vPA)(!1),this._directives=new Set,this.ngSubmit=new o.bkB,this.form=new D8({},y8(e),w8(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){XS.then(()=>{const i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),WS(e.control,e,this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){XS.then(()=>{const i=this._findContainer(e.path);i&&i.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){XS.then(()=>{const i=this._findContainer(e.path),r=new D8({});f$(r,e),i.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){XS.then(()=>{const i=this._findContainer(e.path);i&&i.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){XS.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),p$(this.form,this._directives),this.ngSubmit.emit(e),"dialog"===e?.target?.method}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Hs,10),o.rXU(Yg,10),o.rXU(av,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,r){1&i&&o.bIt("submit",function(l){return r.onSubmit(l)})("reset",function(){return r.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[o.Jv_([Cae]),o.Vt3]})}}return n})();function A$(n,t){const e=n.indexOf(t);e>-1&&n.splice(e,1)}function m$(n){return"object"==typeof n&&null!==n&&2===Object.keys(n).length&&"value"in n&&"disabled"in n}const O8=class extends F8{constructor(t=null,e,i){super(T8(e),I8(i,e)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),eR(e)&&(e.nonNullable||e.initialValueIsDefault)&&(this.defaultValue=m$(t)?t.value:t)}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(i=>i(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=this.defaultValue,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){A$(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){A$(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){m$(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}},g$=O8,Sae={provide:Kh,useExisting:(0,o.Rfq)(()=>nx)},v$=Promise.resolve();let nx=(()=>{class n extends Kh{constructor(e,i,r,s,l,u){super(),this._changeDetectorRef=l,this.callSetDisabledState=u,this.control=new O8,this._registered=!1,this.name="",this.update=new o.bkB,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=P8(0,s)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){const i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),R8(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){WS(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(e){v$.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){const i=e.isDisabled.currentValue,r=0!==i&&(0,o.L39)(i);v$.then(()=>{r&&!this.control.disabled?this.control.disable():!r&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?function tR(n,t){return[...t.path,n]}(e,this._parent):[e]}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Tl,9),o.rXU(Hs,10),o.rXU(Yg,10),o.rXU(Aa,10),o.rXU(o.gRc,8),o.rXU(av,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[o.Jv_([Sae]),o.Vt3,o.OA$]})}}return n})();const N8=new o.nKC(""),kae={provide:Kh,useExisting:(0,o.Rfq)(()=>oR)};let oR=(()=>{class n extends Kh{set isDisabled(e){}static{this._ngModelWarningSentOnce=!1}constructor(e,i,r,s,l){super(),this._ngModelWarningConfig=s,this.callSetDisabledState=l,this.update=new o.bkB,this._ngModelWarningSent=!1,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=P8(0,r)}ngOnChanges(e){if(this._isControlChanged(e)){const i=e.form.previousValue;i&&nR(i,this,!1),WS(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}R8(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&nR(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Hs,10),o.rXU(Yg,10),o.rXU(Aa,10),o.rXU(N8,8),o.rXU(av,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[o.Jv_([kae]),o.Vt3,o.OA$]})}}return n})();const Rae={provide:Tl,useExisting:(0,o.Rfq)(()=>YS)};let YS=(()=>{class n extends Tl{get submitted(){return(0,o.O8t)(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}constructor(e,i,r){super(),this.callSetDisabledState=r,this._submitted=(0,o.EWP)(()=>this._submittedReactive()),this._submittedReactive=(0,o.vPA)(!1),this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new o.bkB,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(rR(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(e){const i=this.form.get(e.path);return WS(i,e,this.callSetDisabledState),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){nR(e.control||null,e,!1),function xae(n,t){const e=n.indexOf(t);e>-1&&n.splice(e,1)}(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}getFormArray(e){return this.form.get(e.path)}updateModel(e,i){this.form.get(e.path).setValue(i)}onSubmit(e){return this._submittedReactive.set(!0),p$(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new uae(this.control)),"dialog"===e?.target?.method}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this._submittedReactive.set(!1),this.form._events.next(new hae(this.form))}_updateDomValue(){this.directives.forEach(e=>{const i=e.control,r=this.form.get(e.path);i!==r&&(nR(i||null,e),(n=>n instanceof O8)(r)&&(WS(r,e,this.callSetDisabledState),e.control=r))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){const i=this.form.get(e.path);f$(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){if(this.form){const i=this.form.get(e.path);i&&function vae(n,t){return rR(n,t)}(i,e)&&i.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){B8(this.form,this),this._oldForm&&rR(this._oldForm,this)}_checkFormPresent(){}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Hs,10),o.rXU(Yg,10),o.rXU(av,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","formGroup",""]],hostBindings:function(i,r){1&i&&o.bIt("submit",function(l){return r.onSubmit(l)})("reset",function(){return r.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[o.Jv_([Rae]),o.Vt3,o.OA$]})}}return n})(),lv=(()=>{class n{constructor(){this._validator=X3}ngOnChanges(e){if(this.inputName in e){const i=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):X3,this._onChange&&this._onChange()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return null!=e}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,features:[o.OA$]})}}return n})();const $ae={provide:Hs,useExisting:(0,o.Rfq)(()=>sR),multi:!0};let sR=(()=>{class n extends lv{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=o.L39,this.createValidator=e=>Qj}enabled(e){return e}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(i,r){2&i&&o.BMQ("required",r._enabled?"":null)},inputs:{required:"required"},features:[o.Jv_([$ae]),o.Vt3]})}}return n})(),O$=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275mod=o.$C({type:n})}static{this.\u0275inj=o.G2t({})}}return n})(),ZS=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:av,useValue:e.callSetDisabledState??qS}]}}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275mod=o.$C({type:n})}static{this.\u0275inj=o.G2t({imports:[O$]})}}return n})(),N$=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:N8,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:av,useValue:e.callSetDisabledState??qS}]}}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275mod=o.$C({type:n})}static{this.\u0275inj=o.G2t({imports:[O$]})}}return n})();const Jae=["switch"],ele=["*"];function tle(n,t){1&n&&(o.j41(0,"span",10),o.qSk(),o.j41(1,"svg",12),o.nrm(2,"path",13),o.k0s(),o.j41(3,"svg",14),o.nrm(4,"path",15),o.k0s()())}const nle=new o.nKC("mat-slide-toggle-default-options",{providedIn:"root",factory:()=>({disableToggleValue:!1,hideIcon:!1,disabledInteractive:!1})}),ile={provide:Aa,useExisting:(0,o.Rfq)(()=>JS),multi:!0};class L${constructor(t,e){this.source=t,this.checked=e}}let rle=0,JS=(()=>{class n{_createChangeEvent(e){return new L$(this,e)}get buttonId(){return`${this.id||this._uniqueId}-button`}focus(){this._switchElement.nativeElement.focus()}get checked(){return this._checked}set checked(e){this._checked=e,this._changeDetectorRef.markForCheck()}get inputId(){return`${this.id||this._uniqueId}-input`}constructor(e,i,r,s,l,u){this._elementRef=e,this._focusMonitor=i,this._changeDetectorRef=r,this.defaults=l,this._onChange=f=>{},this._onTouched=()=>{},this._validatorOnChange=()=>{},this._checked=!1,this.name=null,this.labelPosition="after",this.ariaLabel=null,this.ariaLabelledby=null,this.disabled=!1,this.disableRipple=!1,this.tabIndex=0,this.change=new o.bkB,this.toggleChange=new o.bkB,this.tabIndex=parseInt(s)||0,this.color=l.color||"accent",this._noopAnimations="NoopAnimations"===u,this.id=this._uniqueId="mat-mdc-slide-toggle-"+ ++rle,this.hideIcon=l.hideIcon??!1,this.disabledInteractive=l.disabledInteractive??!1,this._labelId=this._uniqueId+"-label"}ngAfterContentInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{"keyboard"===e||"program"===e?(this._focused=!0,this._changeDetectorRef.markForCheck()):e||Promise.resolve().then(()=>{this._focused=!1,this._onTouched(),this._changeDetectorRef.markForCheck()})})}ngOnChanges(e){e.required&&this._validatorOnChange()}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}writeValue(e){this.checked=!!e}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}validate(e){return this.required&&!0!==e.value?{required:!0}:null}registerOnValidatorChange(e){this._validatorOnChange=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck()}toggle(){this.checked=!this.checked,this._onChange(this.checked)}_emitChangeEvent(){this._onChange(this.checked),this.change.emit(this._createChangeEvent(this.checked))}_handleClick(){this.disabled||(this.toggleChange.emit(),this.defaults.disableToggleValue||(this.checked=!this.checked,this._onChange(this.checked),this.change.emit(new L$(this,this.checked))))}_getAriaLabelledBy(){return this.ariaLabelledby?this.ariaLabelledby:this.ariaLabel?null:this._labelId}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Yl),o.rXU(o.gRc),o.kS0("tabindex"),o.rXU(nle),o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-slide-toggle"]],viewQuery:function(i,r){if(1&i&&o.GBs(Jae,5),2&i){let s;o.mGM(s=o.lsd())&&(r._switchElement=s.first)}},hostAttrs:[1,"mat-mdc-slide-toggle"],hostVars:13,hostBindings:function(i,r){2&i&&(o.Mr5("id",r.id),o.BMQ("tabindex",null)("aria-label",null)("name",null)("aria-labelledby",null),o.HbH(r.color?"mat-"+r.color:""),o.AVh("mat-mdc-slide-toggle-focused",r._focused)("mat-mdc-slide-toggle-checked",r.checked)("_mat-animation-noopable",r._noopAnimations))},inputs:{name:"name",id:"id",labelPosition:"labelPosition",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],required:[2,"required","required",o.L39],color:"color",disabled:[2,"disabled","disabled",o.L39],disableRipple:[2,"disableRipple","disableRipple",o.L39],tabIndex:[2,"tabIndex","tabIndex",e=>null==e?0:(0,o.Udg)(e)],checked:[2,"checked","checked",o.L39],hideIcon:[2,"hideIcon","hideIcon",o.L39],disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39]},outputs:{change:"change",toggleChange:"toggleChange"},exportAs:["matSlideToggle"],standalone:!0,features:[o.Jv_([ile,{provide:Hs,useExisting:n,multi:!0}]),o.GFd,o.OA$,o.aNF],ngContentSelectors:ele,decls:13,vars:27,consts:[["switch",""],["mat-internal-form-field","",3,"labelPosition"],["role","switch","type","button",1,"mdc-switch",3,"click","tabIndex","disabled"],[1,"mdc-switch__track"],[1,"mdc-switch__handle-track"],[1,"mdc-switch__handle"],[1,"mdc-switch__shadow"],[1,"mdc-elevation-overlay"],[1,"mdc-switch__ripple"],["mat-ripple","",1,"mat-mdc-slide-toggle-ripple","mat-mdc-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-switch__icons"],[1,"mdc-label",3,"click","for"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--on"],["d","M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--off"],["d","M20 13H4v-2h16v2z"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(),o.j41(0,"div",1)(1,"button",2,0),o.bIt("click",function(){return o.eBV(s),o.Njj(r._handleClick())}),o.nrm(3,"span",3),o.j41(4,"span",4)(5,"span",5)(6,"span",6),o.nrm(7,"span",7),o.k0s(),o.j41(8,"span",8),o.nrm(9,"span",9),o.k0s(),o.DNE(10,tle,5,0,"span",10),o.k0s()()(),o.j41(11,"label",11),o.bIt("click",function(u){return o.eBV(s),o.Njj(u.stopPropagation())}),o.SdG(12),o.k0s()()}if(2&i){const s=o.sdS(2);o.Y8G("labelPosition",r.labelPosition),o.R7$(),o.AVh("mdc-switch--selected",r.checked)("mdc-switch--unselected",!r.checked)("mdc-switch--checked",r.checked)("mdc-switch--disabled",r.disabled)("mat-mdc-slide-toggle-disabled-interactive",r.disabledInteractive),o.Y8G("tabIndex",r.disabled&&!r.disabledInteractive?-1:r.tabIndex)("disabled",r.disabled&&!r.disabledInteractive),o.BMQ("id",r.buttonId)("name",r.name)("aria-label",r.ariaLabel)("aria-labelledby",r._getAriaLabelledBy())("aria-describedby",r.ariaDescribedby)("aria-required",r.required||null)("aria-checked",r.checked)("aria-disabled",r.disabled&&r.disabledInteractive?"true":null),o.R7$(8),o.Y8G("matRippleTrigger",s)("matRippleDisabled",r.disableRipple||r.disabled)("matRippleCentered",!0),o.R7$(),o.vxM(r.hideIcon?-1:10),o.R7$(),o.Y8G("for",r.buttonId),o.BMQ("id",r._labelId)}},dependencies:[ml,MI],styles:['.mdc-switch{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;margin:0;outline:none;overflow:visible;padding:0;position:relative;width:var(--mdc-switch-track-width)}.mdc-switch.mdc-switch--disabled{cursor:default;pointer-events:none}.mdc-switch.mat-mdc-slide-toggle-disabled-interactive{pointer-events:auto}.mdc-switch__track{overflow:hidden;position:relative;width:100%;height:var(--mdc-switch-track-height);border-radius:var(--mdc-switch-track-shape, var(--mat-app-corner-full))}.mdc-switch--disabled.mdc-switch .mdc-switch__track{opacity:var(--mdc-switch-disabled-track-opacity)}.mdc-switch__track::before,.mdc-switch__track::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";height:100%;left:0;position:absolute;width:100%;border-width:var(--mat-switch-track-outline-width);border-color:var(--mat-switch-track-outline-color, var(--mat-app-outline))}.cdk-high-contrast-active .mdc-switch__track::before,.cdk-high-contrast-active .mdc-switch__track::after{border-color:currentColor}.mdc-switch--selected .mdc-switch__track::before,.mdc-switch--selected .mdc-switch__track::after{border-width:var(--mat-switch-selected-track-outline-width);border-color:var(--mat-switch-selected-track-outline-color)}.mdc-switch--disabled .mdc-switch__track::before,.mdc-switch--disabled .mdc-switch__track::after{border-width:var(--mat-switch-disabled-unselected-track-outline-width);border-color:var(--mat-switch-disabled-unselected-track-outline-color, var(--mat-app-on-surface))}.mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:translateX(0);background:var(--mdc-switch-unselected-track-color, var(--mat-app-surface-variant))}.mdc-switch--selected .mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.6, 1);transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch--selected .mdc-switch__track::before{transform:translateX(-100%)}.mdc-switch--selected .mdc-switch__track::before{opacity:var(--mat-switch-hidden-track-opacity);transition:var(--mat-switch-hidden-track-transition)}.mdc-switch--unselected .mdc-switch__track::before{opacity:var(--mat-switch-visible-track-opacity);transition:var(--mat-switch-visible-track-transition)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::before{background:var(--mdc-switch-unselected-hover-track-color, var(--mat-app-surface-variant))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::before{background:var(--mdc-switch-unselected-focus-track-color, var(--mat-app-surface-variant))}.mdc-switch:enabled:active .mdc-switch__track::before{background:var(--mdc-switch-unselected-pressed-track-color, var(--mat-app-surface-variant))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::before,.mdc-switch.mdc-switch--disabled .mdc-switch__track::before{background:var(--mdc-switch-disabled-unselected-track-color, var(--mat-app-surface-variant))}.mdc-switch__track::after{transform:translateX(-100%);background:var(--mdc-switch-selected-track-color, var(--mat-app-primary))}[dir=rtl] .mdc-switch__track::after{transform:translateX(100%)}.mdc-switch--selected .mdc-switch__track::after{transform:translateX(0)}.mdc-switch--selected .mdc-switch__track::after{opacity:var(--mat-switch-visible-track-opacity);transition:var(--mat-switch-visible-track-transition)}.mdc-switch--unselected .mdc-switch__track::after{opacity:var(--mat-switch-hidden-track-opacity);transition:var(--mat-switch-hidden-track-transition)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::after{background:var(--mdc-switch-selected-hover-track-color, var(--mat-app-primary))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::after{background:var(--mdc-switch-selected-focus-track-color, var(--mat-app-primary))}.mdc-switch:enabled:active .mdc-switch__track::after{background:var(--mdc-switch-selected-pressed-track-color, var(--mat-app-primary))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::after,.mdc-switch.mdc-switch--disabled .mdc-switch__track::after{background:var(--mdc-switch-disabled-selected-track-color, var(--mat-app-on-surface))}.mdc-switch__handle-track{height:100%;pointer-events:none;position:absolute;top:0;transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);left:0;right:auto;transform:translateX(0);width:calc(100% - var(--mdc-switch-handle-width))}[dir=rtl] .mdc-switch__handle-track{left:auto;right:0}.mdc-switch--selected .mdc-switch__handle-track{transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch__handle-track{transform:translateX(-100%)}.mdc-switch__handle{display:flex;pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);left:0;right:auto;transition:width 75ms cubic-bezier(0.4, 0, 0.2, 1),height 75ms cubic-bezier(0.4, 0, 0.2, 1),margin 75ms cubic-bezier(0.4, 0, 0.2, 1);width:var(--mdc-switch-handle-width);height:var(--mdc-switch-handle-height);border-radius:var(--mdc-switch-handle-shape, var(--mat-app-corner-full))}[dir=rtl] .mdc-switch__handle{left:auto;right:0}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle{width:var(--mat-switch-unselected-handle-size);height:var(--mat-switch-unselected-handle-size);margin:var(--mat-switch-unselected-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-switch-unselected-with-icon-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle{width:var(--mat-switch-selected-handle-size);height:var(--mat-switch-selected-handle-size);margin:var(--mat-switch-selected-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-switch-selected-with-icon-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch__handle:has(.mdc-switch__icons){width:var(--mat-switch-with-icon-handle-size);height:var(--mat-switch-with-icon-handle-size)}.mat-mdc-slide-toggle .mdc-switch:active:not(.mdc-switch--disabled) .mdc-switch__handle{width:var(--mat-switch-pressed-handle-size);height:var(--mat-switch-pressed-handle-size)}.mat-mdc-slide-toggle .mdc-switch--selected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-switch-selected-pressed-handle-horizontal-margin)}.mat-mdc-slide-toggle .mdc-switch--unselected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-switch-unselected-pressed-handle-horizontal-margin)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__handle::after{opacity:var(--mat-switch-disabled-selected-handle-opacity)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__handle::after{opacity:var(--mat-switch-disabled-unselected-handle-opacity)}.mdc-switch__handle::before,.mdc-switch__handle::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";width:100%;height:100%;left:0;position:absolute;top:0;transition:background-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1),border-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);z-index:-1}.cdk-high-contrast-active .mdc-switch__handle::before,.cdk-high-contrast-active .mdc-switch__handle::after{border-color:currentColor}.mdc-switch--selected:enabled .mdc-switch__handle::after{background:var(--mdc-switch-selected-handle-color, var(--mat-app-on-primary))}.mdc-switch--selected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mdc-switch-selected-hover-handle-color, var(--mat-app-primary-container))}.mdc-switch--selected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mdc-switch-selected-focus-handle-color, var(--mat-app-primary-container))}.mdc-switch--selected:enabled:active .mdc-switch__handle::after{background:var(--mdc-switch-selected-pressed-handle-color, var(--mat-app-primary-container))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:hover:not(:focus):not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:focus:not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:active .mdc-switch__handle::after,.mdc-switch--selected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mdc-switch-disabled-selected-handle-color, var(--mat-app-surface))}.mdc-switch--unselected:enabled .mdc-switch__handle::after{background:var(--mdc-switch-unselected-handle-color, var(--mat-app-outline))}.mdc-switch--unselected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mdc-switch-unselected-hover-handle-color, var(--mat-app-on-surface-variant))}.mdc-switch--unselected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mdc-switch-unselected-focus-handle-color, var(--mat-app-on-surface-variant))}.mdc-switch--unselected:enabled:active .mdc-switch__handle::after{background:var(--mdc-switch-unselected-pressed-handle-color, var(--mat-app-on-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mdc-switch-disabled-unselected-handle-color, var(--mat-app-on-surface))}.mdc-switch__handle::before{background:var(--mdc-switch-handle-surface-color)}.mdc-switch__shadow{border-radius:inherit;bottom:0;left:0;position:absolute;right:0;top:0}.mdc-switch:enabled .mdc-switch__shadow{box-shadow:var(--mdc-switch-handle-elevation-shadow)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__shadow,.mdc-switch.mdc-switch--disabled .mdc-switch__shadow{box-shadow:var(--mdc-switch-disabled-handle-elevation-shadow)}.mdc-switch__ripple{left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);z-index:-1;width:var(--mdc-switch-state-layer-size);height:var(--mdc-switch-state-layer-size)}.mdc-switch__ripple::after{content:"";opacity:0}.mdc-switch--disabled .mdc-switch__ripple::after{display:none}.mat-mdc-slide-toggle-disabled-interactive .mdc-switch__ripple::after{display:block}.mdc-switch:hover .mdc-switch__ripple::after{opacity:.04;transition:75ms opacity cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle.mat-mdc-slide-toggle-focused .mdc-switch .mdc-switch__ripple::after{opacity:.12}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:focus .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:active .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:hover:not(:focus) .mdc-switch__ripple::after,.mdc-switch--unselected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mdc-switch-unselected-hover-state-layer-color, var(--mat-app-on-surface))}.mdc-switch--unselected:enabled:focus .mdc-switch__ripple::after{background:var(--mdc-switch-unselected-focus-state-layer-color, var(--mat-app-on-surface))}.mdc-switch--unselected:enabled:active .mdc-switch__ripple::after{background:var(--mdc-switch-unselected-pressed-state-layer-color, var(--mat-app-on-surface));opacity:var(--mdc-switch-unselected-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch--selected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mdc-switch-selected-hover-state-layer-color, var(--mat-app-primary))}.mdc-switch--selected:enabled:focus .mdc-switch__ripple::after{background:var(--mdc-switch-selected-focus-state-layer-color, var(--mat-app-primary))}.mdc-switch--selected:enabled:active .mdc-switch__ripple::after{background:var(--mdc-switch-selected-pressed-state-layer-color, var(--mat-app-primary));opacity:var(--mdc-switch-selected-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch__icons{position:relative;height:100%;width:100%;z-index:1}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__icons{opacity:var(--mdc-switch-disabled-unselected-icon-opacity)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__icons{opacity:var(--mdc-switch-disabled-selected-icon-opacity)}.mdc-switch__icon{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;opacity:0;transition:opacity 30ms 0ms cubic-bezier(0.4, 0, 1, 1)}.mdc-switch--unselected .mdc-switch__icon{width:var(--mdc-switch-unselected-icon-size);height:var(--mdc-switch-unselected-icon-size);fill:var(--mdc-switch-unselected-icon-color, var(--mat-app-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mdc-switch-disabled-unselected-icon-color, var(--mat-app-surface-variant))}.mdc-switch--selected .mdc-switch__icon{width:var(--mdc-switch-selected-icon-size);height:var(--mdc-switch-selected-icon-size);fill:var(--mdc-switch-selected-icon-color, var(--mat-app-on-primary-container))}.mdc-switch--selected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mdc-switch-disabled-selected-icon-color, var(--mat-app-on-surface))}.mdc-switch--selected .mdc-switch__icon--on,.mdc-switch--unselected .mdc-switch__icon--off{opacity:1;transition:opacity 45ms 30ms cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle{-webkit-user-select:none;user-select:none;display:inline-block;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:0}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple,.mat-mdc-slide-toggle .mdc-switch__ripple::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple:not(:empty),.mat-mdc-slide-toggle .mdc-switch__ripple::after:not(:empty){transform:translateZ(0)}.mat-mdc-slide-toggle.mat-mdc-slide-toggle-focused .mat-mdc-focus-indicator::before{content:""}.mat-mdc-slide-toggle .mat-internal-form-field{color:var(--mat-switch-label-text-color, var(--mat-app-on-surface));font-family:var(--mat-switch-label-text-font, var(--mat-app-body-medium-font));line-height:var(--mat-switch-label-text-line-height, var(--mat-app-body-medium-line-height));font-size:var(--mat-switch-label-text-size, var(--mat-app-body-medium-size));letter-spacing:var(--mat-switch-label-text-tracking, var(--mat-app-body-medium-tracking));font-weight:var(--mat-switch-label-text-weight, var(--mat-app-body-medium-weight))}.mat-mdc-slide-toggle .mat-ripple-element{opacity:.12}.mat-mdc-slide-toggle .mat-mdc-focus-indicator::before{border-radius:50%}.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle-track,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__icon,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::after,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::after{transition:none}.mat-mdc-slide-toggle .mdc-switch:enabled+.mdc-label{cursor:pointer}.mat-mdc-slide-toggle .mdc-switch--disabled+label{color:var(--mdc-switch-disabled-label-text-color)}'],encapsulation:2,changeDetection:0})}}return n})();const ale=["*",[["mat-toolbar-row"]]],lle=["*","mat-toolbar-row"];let cle=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"],standalone:!0})}}return n})(),Zg=(()=>{class n{constructor(e,i,r){this._elementRef=e,this._platform=i,this._document=r}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Io),o.rXU(V))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-toolbar"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,cle,5),2&i){let l;o.mGM(l=o.lsd())&&(r._toolbarRows=l)}},hostAttrs:[1,"mat-toolbar"],hostVars:6,hostBindings:function(i,r){2&i&&(o.HbH(r.color?"mat-"+r.color:""),o.AVh("mat-toolbar-multiple-rows",r._toolbarRows.length>0)("mat-toolbar-single-row",0===r._toolbarRows.length))},inputs:{color:"color"},exportAs:["matToolbar"],standalone:!0,features:[o.aNF],ngContentSelectors:lle,decls:2,vars:0,template:function(i,r){1&i&&(o.NAR(ale),o.SdG(0),o.SdG(1,1))},styles:[".mat-toolbar{background:var(--mat-toolbar-container-background-color, var(--mat-app-surface));color:var(--mat-toolbar-container-text-color, var(--mat-app-on-surface))}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font-family:var(--mat-toolbar-title-text-font, var(--mat-app-title-large-font));font-size:var(--mat-toolbar-title-text-size, var(--mat-app-title-large-size));line-height:var(--mat-toolbar-title-text-line-height, var(--mat-app-title-large-line-height));font-weight:var(--mat-toolbar-title-text-weight, var(--mat-app-title-large-weight));letter-spacing:var(--mat-toolbar-title-text-tracking, var(--mat-app-title-large-tracking));margin:0}.cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar .mat-mdc-button-base.mat-mdc-button-base.mat-unthemed{--mdc-text-button-label-text-color:var(--mat-toolbar-container-text-color, var(--mat-app-on-surface));--mdc-outlined-button-label-text-color:var(--mat-toolbar-container-text-color, var(--mat-app-on-surface))}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap;height:var(--mat-toolbar-standard-height)}@media(max-width: 599px){.mat-toolbar-row,.mat-toolbar-single-row{height:var(--mat-toolbar-mobile-height)}}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%;min-height:var(--mat-toolbar-standard-height)}@media(max-width: 599px){.mat-toolbar-multiple-rows{min-height:var(--mat-toolbar-mobile-height)}}"],encapsulation:2,changeDetection:0})}}return n})();class dle extends mi.B{constructor(t=1/0,e=1/0,i=Cf){super(),this._bufferSize=t,this._windowTime=e,this._timestampProvider=i,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=e===1/0,this._bufferSize=Math.max(1,t),this._windowTime=Math.max(1,e)}next(t){const{isStopped:e,_buffer:i,_infiniteTimeWindow:r,_timestampProvider:s,_windowTime:l}=this;e||(i.push(t),!r&&i.push(s.now()+l)),this._trimBuffer(),super.next(t)}_subscribe(t){this._throwIfClosed(),this._trimBuffer();const e=this._innerSubscribe(t),{_infiniteTimeWindow:i,_buffer:r}=this,s=r.slice();for(let l=0;lnew mi.B,resetOnError:e=!0,resetOnComplete:i=!0,resetOnRefCountZero:r=!0}=n;return s=>{let l,u,f,p=0,m=!1,_=!1;const b=()=>{u?.unsubscribe(),u=void 0},w=()=>{b(),l=f=void 0,m=_=!1},F=()=>{const D=l;w(),D?.unsubscribe()};return(0,Ir.N)((D,T)=>{p++,!_&&!m&&b();const I=f=f??t();T.add(()=>{p--,0===p&&!_&&!m&&(u=z8(F,r))}),I.subscribe(T),!l&&p>0&&(l=new Q8.Ms({next:O=>I.next(O),error:O=>{_=!0,b(),u=z8(w,e,O),I.error(O)},complete:()=>{m=!0,b(),u=z8(w,i),I.complete()}}),Rr(D).subscribe(l))})(s)}}function z8(n,t,...e){if(!0===t)return void n();if(!1===t)return;const i=new Q8.Ms({next:()=>{i.unsubscribe(),n()}});return Rr(t(...e)).subscribe(i)}class hle{constructor(t){this._box=t,this._destroyed=new mi.B,this._resizeSubject=new mi.B,this._elementObservables=new Map,typeof ResizeObserver<"u"&&(this._resizeObserver=new ResizeObserver(e=>this._resizeSubject.next(e)))}observe(t){return this._elementObservables.has(t)||this._elementObservables.set(t,new qr.c(e=>{const i=this._resizeSubject.subscribe(e);return this._resizeObserver?.observe(t,{box:this._box}),()=>{this._resizeObserver?.unobserve(t),i.unsubscribe(),this._elementObservables.delete(t)}}).pipe(hr(e=>e.some(i=>i.target===t)),function ule(n,t,e){let i,r=!1;return n&&"object"==typeof n?({bufferSize:i=1/0,windowTime:t=1/0,refCount:r=!1,scheduler:e}=n):i=n??1/0,lR({connector:()=>new dle(i,t,e),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:r})}({bufferSize:1,refCount:!0}),bo(this._destroyed))),this._elementObservables.get(t)}destroy(){this._destroyed.next(),this._destroyed.complete(),this._resizeSubject.complete(),this._elementObservables.clear()}}let fle=(()=>{class n{constructor(){this._observers=new Map,this._ngZone=(0,o.WQX)(o.SKi)}ngOnDestroy(){for(const[,e]of this._observers)e.destroy();this._observers.clear()}observe(e,i){const r=i?.box||"content-box";return this._observers.has(r)||this._observers.set(r,new hle(r)),this._observers.get(r).observe(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const ple=["notch"],Ale=["matFormFieldNotchedOutline",""],mle=["*"],gle=["textField"],_le=["iconPrefixContainer"],ble=["textPrefixContainer"],vle=["iconSuffixContainer"],yle=["textSuffixContainer"],wle=["*",[["mat-label"]],[["","matPrefix",""],["","matIconPrefix",""]],[["","matTextPrefix",""]],[["","matTextSuffix",""]],[["","matSuffix",""],["","matIconSuffix",""]],[["mat-error"],["","matError",""]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],xle=["*","mat-label","[matPrefix], [matIconPrefix]","[matTextPrefix]","[matTextSuffix]","[matSuffix], [matIconSuffix]","mat-error, [matError]","mat-hint:not([align='end'])","mat-hint[align='end']"];function Cle(n,t){1&n&&o.nrm(0,"span",21)}function Mle(n,t){if(1&n&&(o.j41(0,"label",20),o.SdG(1,1),o.DNE(2,Cle,1,0,"span",21),o.k0s()),2&n){const e=o.XpG(2);o.Y8G("floating",e._shouldLabelFloat())("monitorResize",e._hasOutline())("id",e._labelId),o.BMQ("for",e._control.disableAutomaticLabeling?null:e._control.id),o.R7$(2),o.vxM(!e.hideRequiredMarker&&e._control.required?2:-1)}}function Ele(n,t){if(1&n&&o.DNE(0,Mle,3,5,"label",20),2&n){const e=o.XpG();o.vxM(e._hasFloatingLabel()?0:-1)}}function Sle(n,t){1&n&&o.nrm(0,"div",7)}function Tle(n,t){}function Ile(n,t){if(1&n&&o.DNE(0,Tle,0,0,"ng-template",13),2&n){o.XpG(2);const e=o.sdS(1);o.Y8G("ngTemplateOutlet",e)}}function Fle(n,t){if(1&n&&(o.j41(0,"div",9),o.DNE(1,Ile,1,1,null,13),o.k0s()),2&n){const e=o.XpG();o.Y8G("matFormFieldNotchedOutlineOpen",e._shouldLabelFloat()),o.R7$(),o.vxM(e._forceDisplayInfixLabel()?-1:1)}}function Dle(n,t){1&n&&(o.j41(0,"div",10,2),o.SdG(2,2),o.k0s())}function Ble(n,t){1&n&&(o.j41(0,"div",11,3),o.SdG(2,3),o.k0s())}function kle(n,t){}function Rle(n,t){if(1&n&&o.DNE(0,kle,0,0,"ng-template",13),2&n){o.XpG();const e=o.sdS(1);o.Y8G("ngTemplateOutlet",e)}}function Ple(n,t){1&n&&(o.j41(0,"div",14,4),o.SdG(2,4),o.k0s())}function Ole(n,t){1&n&&(o.j41(0,"div",15,5),o.SdG(2,5),o.k0s())}function Nle(n,t){1&n&&o.nrm(0,"div",16)}function Lle(n,t){if(1&n&&(o.j41(0,"div",18),o.SdG(1,6),o.k0s()),2&n){const e=o.XpG();o.Y8G("@transitionMessages",e._subscriptAnimationState)}}function Ule(n,t){if(1&n&&(o.j41(0,"mat-hint",22),o.EFF(1),o.k0s()),2&n){const e=o.XpG(2);o.Y8G("id",e._hintLabelId),o.R7$(),o.JRh(e.hintLabel)}}function Vle(n,t){if(1&n&&(o.j41(0,"div",19),o.DNE(1,Ule,2,2,"mat-hint",22),o.SdG(2,7),o.nrm(3,"div",23),o.SdG(4,8),o.k0s()),2&n){const e=o.XpG();o.Y8G("@transitionMessages",e._subscriptAnimationState),o.R7$(),o.vxM(e.hintLabel?1:-1)}}let Nu=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-label"]],standalone:!0})}}return n})(),Hle=0;const U$=new o.nKC("MatError");let V$=(()=>{class n{constructor(e,i){this.id="mat-mdc-error-"+Hle++,e||i.nativeElement.setAttribute("aria-live","polite")}static{this.\u0275fac=function(i){return new(i||n)(o.kS0("aria-live"),o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-error"],["","matError",""]],hostAttrs:["aria-atomic","true",1,"mat-mdc-form-field-error","mat-mdc-form-field-bottom-align"],hostVars:1,hostBindings:function(i,r){2&i&&o.Mr5("id",r.id)},inputs:{id:"id"},standalone:!0,features:[o.Jv_([{provide:U$,useExisting:n}])]})}}return n})(),Qle=0,G8=(()=>{class n{constructor(){this.align="start",this.id="mat-mdc-hint-"+Qle++}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-hint"]],hostAttrs:[1,"mat-mdc-form-field-hint","mat-mdc-form-field-bottom-align"],hostVars:4,hostBindings:function(i,r){2&i&&(o.Mr5("id",r.id),o.BMQ("align",null),o.AVh("mat-mdc-form-field-hint-end","end"===r.align))},inputs:{align:"align",id:"id"},standalone:!0})}}return n})();const H$=new o.nKC("MatPrefix");let Q$=(()=>{class n{constructor(){this._isText=!1}set _isTextSelector(e){this._isText=!0}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matPrefix",""],["","matIconPrefix",""],["","matTextPrefix",""]],inputs:{_isTextSelector:[0,"matTextPrefix","_isTextSelector"]},standalone:!0,features:[o.Jv_([{provide:H$,useExisting:n}])]})}}return n})();const zle=new o.nKC("MatSuffix"),z$=new o.nKC("FloatingLabelParent");let G$=(()=>{class n{get floating(){return this._floating}set floating(e){this._floating=e,this.monitorResize&&this._handleResize()}get monitorResize(){return this._monitorResize}set monitorResize(e){this._monitorResize=e,this._monitorResize?this._subscribeToResize():this._resizeSubscription.unsubscribe()}constructor(e){this._elementRef=e,this._floating=!1,this._monitorResize=!1,this._resizeObserver=(0,o.WQX)(fle),this._ngZone=(0,o.WQX)(o.SKi),this._parent=(0,o.WQX)(z$),this._resizeSubscription=new un.yU}ngOnDestroy(){this._resizeSubscription.unsubscribe()}getWidth(){return function Gle(n){if(null!==n.offsetParent)return n.scrollWidth;const e=n.cloneNode(!0);e.style.setProperty("position","absolute"),e.style.setProperty("transform","translate(-9999px, -9999px)"),document.documentElement.appendChild(e);const i=e.scrollWidth;return e.remove(),i}(this._elementRef.nativeElement)}get element(){return this._elementRef.nativeElement}_handleResize(){setTimeout(()=>this._parent._handleLabelResized())}_subscribeToResize(){this._resizeSubscription.unsubscribe(),this._ngZone.runOutsideAngular(()=>{this._resizeSubscription=this._resizeObserver.observe(this._elementRef.nativeElement,{box:"border-box"}).subscribe(()=>this._handleResize())})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["label","matFormFieldFloatingLabel",""]],hostAttrs:[1,"mdc-floating-label","mat-mdc-floating-label"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mdc-floating-label--float-above",r.floating)},inputs:{floating:"floating",monitorResize:"monitorResize"},standalone:!0})}}return n})();const j$="mdc-line-ripple--active",cR="mdc-line-ripple--deactivating";let $$=(()=>{class n{constructor(e,i){this._elementRef=e,this._handleTransitionEnd=r=>{const s=this._elementRef.nativeElement.classList,l=s.contains(cR);"opacity"===r.propertyName&&l&&s.remove(j$,cR)},i.runOutsideAngular(()=>{e.nativeElement.addEventListener("transitionend",this._handleTransitionEnd)})}activate(){const e=this._elementRef.nativeElement.classList;e.remove(cR),e.add(j$)}deactivate(){this._elementRef.nativeElement.classList.add(cR)}ngOnDestroy(){this._elementRef.nativeElement.removeEventListener("transitionend",this._handleTransitionEnd)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["div","matFormFieldLineRipple",""]],hostAttrs:[1,"mdc-line-ripple"],standalone:!0})}}return n})(),q$=(()=>{class n{constructor(e,i){this._elementRef=e,this._ngZone=i,this.open=!1}ngAfterViewInit(){const e=this._elementRef.nativeElement.querySelector(".mdc-floating-label");e?(this._elementRef.nativeElement.classList.add("mdc-notched-outline--upgraded"),"function"==typeof requestAnimationFrame&&(e.style.transitionDuration="0s",this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>e.style.transitionDuration="")}))):this._elementRef.nativeElement.classList.add("mdc-notched-outline--no-label")}_setNotchWidth(e){this._notch.nativeElement.style.width=this.open&&e?`calc(${e}px * var(--mat-mdc-form-field-floating-label-scale, 0.75) + 9px)`:""}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["div","matFormFieldNotchedOutline",""]],viewQuery:function(i,r){if(1&i&&o.GBs(ple,5),2&i){let s;o.mGM(s=o.lsd())&&(r._notch=s.first)}},hostAttrs:[1,"mdc-notched-outline"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mdc-notched-outline--notched",r.open)},inputs:{open:[0,"matFormFieldNotchedOutlineOpen","open"]},standalone:!0,features:[o.aNF],attrs:Ale,ngContentSelectors:mle,decls:5,vars:0,consts:[["notch",""],[1,"mat-mdc-notch-piece","mdc-notched-outline__leading"],[1,"mat-mdc-notch-piece","mdc-notched-outline__notch"],[1,"mat-mdc-notch-piece","mdc-notched-outline__trailing"]],template:function(i,r){1&i&&(o.NAR(),o.nrm(0,"div",1),o.j41(1,"div",2,0),o.SdG(3),o.k0s(),o.nrm(4,"div",3))},encapsulation:2,changeDetection:0})}}return n})();const jle={transitionMessages:(0,Nn.hZ)("transitionMessages",[(0,Nn.wk)("enter",(0,Nn.iF)({opacity:1,transform:"translateY(0%)"})),(0,Nn.kY)("void => enter",[(0,Nn.iF)({opacity:0,transform:"translateY(-5px)"}),(0,Nn.i0)("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let j8=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n})}}return n})();const $8=new o.nKC("MatFormField"),$le=new o.nKC("MAT_FORM_FIELD_DEFAULT_OPTIONS");let W$=0,Lu=(()=>{class n{get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(e){this._hideRequiredMarker=gi(e)}get floatLabel(){return this._floatLabel||this._defaults?.floatLabel||"auto"}set floatLabel(e){e!==this._floatLabel&&(this._floatLabel=e,this._changeDetectorRef.markForCheck())}get appearance(){return this._appearance}set appearance(e){const i=this._appearance;this._appearance=e||this._defaults?.appearance||"fill","outline"===this._appearance&&this._appearance!==i&&(this._needsOutlineLabelOffsetUpdate=!0)}get subscriptSizing(){return this._subscriptSizing||this._defaults?.subscriptSizing||"fixed"}set subscriptSizing(e){this._subscriptSizing=e||this._defaults?.subscriptSizing||"fixed"}get hintLabel(){return this._hintLabel}set hintLabel(e){this._hintLabel=e,this._processHints()}get _control(){return this._explicitFormFieldControl||this._formFieldControl}set _control(e){this._explicitFormFieldControl=e}constructor(e,i,r,s,l,u,f,p){this._elementRef=e,this._changeDetectorRef=i,this._dir=s,this._platform=l,this._defaults=u,this._animationMode=f,this._labelChild=(0,o.sbv)(Nu),this._hideRequiredMarker=!1,this.color="primary",this._appearance="fill",this._subscriptSizing=null,this._hintLabel="",this._hasIconPrefix=!1,this._hasTextPrefix=!1,this._hasIconSuffix=!1,this._hasTextSuffix=!1,this._labelId="mat-mdc-form-field-label-"+W$++,this._hintLabelId="mat-mdc-hint-"+W$++,this._subscriptAnimationState="",this._destroyed=new mi.B,this._isFocused=null,this._needsOutlineLabelOffsetUpdate=!1,this._previousControl=null,this._injector=(0,o.WQX)(o.zZn),this.getLabelId=(0,o.EWP)(()=>this._hasFloatingLabel()?this._labelId:null),this._hasFloatingLabel=(0,o.EWP)(()=>!!this._labelChild()),u&&(u.appearance&&(this.appearance=u.appearance),this._hideRequiredMarker=!!u?.hideRequiredMarker,u.color&&(this.color=u.color))}ngAfterViewInit(){this._updateFocusState(),this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngAfterContentInit(){this._assertFormFieldControl(),this._initializeSubscript(),this._initializePrefixAndSuffix(),this._initializeOutlineLabelOffsetSubscriptions()}ngAfterContentChecked(){this._assertFormFieldControl(),this._control!==this._previousControl&&(this._initializeControl(this._previousControl),this._previousControl=this._control)}ngOnDestroy(){this._stateChanges?.unsubscribe(),this._valueChanges?.unsubscribe(),this._destroyed.next(),this._destroyed.complete()}getConnectedOverlayOrigin(){return this._textField||this._elementRef}_animateAndLockLabel(){this._hasFloatingLabel()&&(this.floatLabel="always")}_initializeControl(e){const i=this._control,r="mat-mdc-form-field-type-";e&&this._elementRef.nativeElement.classList.remove(r+e.controlType),i.controlType&&this._elementRef.nativeElement.classList.add(r+i.controlType),this._stateChanges?.unsubscribe(),this._stateChanges=i.stateChanges.subscribe(()=>{this._updateFocusState(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._valueChanges?.unsubscribe(),i.ngControl&&i.ngControl.valueChanges&&(this._valueChanges=i.ngControl.valueChanges.pipe(bo(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()))}_checkPrefixAndSuffixTypes(){this._hasIconPrefix=!!this._prefixChildren.find(e=>!e._isText),this._hasTextPrefix=!!this._prefixChildren.find(e=>e._isText),this._hasIconSuffix=!!this._suffixChildren.find(e=>!e._isText),this._hasTextSuffix=!!this._suffixChildren.find(e=>e._isText)}_initializePrefixAndSuffix(){this._checkPrefixAndSuffixTypes(),ql(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._checkPrefixAndSuffixTypes(),this._changeDetectorRef.markForCheck()})}_initializeSubscript(){this._hintChildren.changes.subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._validateHints(),this._syncDescribedByIds()}_assertFormFieldControl(){}_updateFocusState(){this._control.focused&&!this._isFocused?(this._isFocused=!0,this._lineRipple?.activate()):!this._control.focused&&(this._isFocused||null===this._isFocused)&&(this._isFocused=!1,this._lineRipple?.deactivate()),this._textField?.nativeElement.classList.toggle("mdc-text-field--focused",this._control.focused)}_initializeOutlineLabelOffsetSubscriptions(){this._prefixChildren.changes.subscribe(()=>this._needsOutlineLabelOffsetUpdate=!0),(0,o.Tzd)(()=>{this._needsOutlineLabelOffsetUpdate&&(this._needsOutlineLabelOffsetUpdate=!1,this._updateOutlineLabelOffset())},{injector:this._injector}),this._dir.change.pipe(bo(this._destroyed)).subscribe(()=>this._needsOutlineLabelOffsetUpdate=!0)}_shouldAlwaysFloat(){return"always"===this.floatLabel}_hasOutline(){return"outline"===this.appearance}_forceDisplayInfixLabel(){return!this._platform.isBrowser&&this._prefixChildren.length&&!this._shouldLabelFloat()}_shouldLabelFloat(){return!!this._hasFloatingLabel()&&(this._control.shouldLabelFloat||this._shouldAlwaysFloat())}_shouldForward(e){const i=this._control?this._control.ngControl:null;return i&&i[e]}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_handleLabelResized(){this._refreshOutlineNotchWidth()}_refreshOutlineNotchWidth(){this._hasOutline()&&this._floatingLabel&&this._shouldLabelFloat()?this._notchedOutline?._setNotchWidth(this._floatingLabel.getWidth()):this._notchedOutline?._setNotchWidth(0)}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_syncDescribedByIds(){if(this._control){let e=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&e.push(...this._control.userAriaDescribedBy.split(" ")),"hint"===this._getDisplayedMessages()){const i=this._hintChildren?this._hintChildren.find(s=>"start"===s.align):null,r=this._hintChildren?this._hintChildren.find(s=>"end"===s.align):null;i?e.push(i.id):this._hintLabel&&e.push(this._hintLabelId),r&&e.push(r.id)}else this._errorChildren&&e.push(...this._errorChildren.map(i=>i.id));this._control.setDescribedByIds(e)}}_updateOutlineLabelOffset(){if(!this._hasOutline()||!this._floatingLabel)return;const e=this._floatingLabel.element;if(!this._iconPrefixContainer&&!this._textPrefixContainer)return void(e.style.transform="");if(!this._isAttachedToDom())return void(this._needsOutlineLabelOffsetUpdate=!0);const i=this._iconPrefixContainer?.nativeElement,r=this._textPrefixContainer?.nativeElement,s=this._iconSuffixContainer?.nativeElement,l=this._textSuffixContainer?.nativeElement,u=i?.getBoundingClientRect().width??0,f=r?.getBoundingClientRect().width??0,p=s?.getBoundingClientRect().width??0,m=l?.getBoundingClientRect().width??0;e.style.transform=`var(\n --mat-mdc-form-field-label-transform,\n translateY(-50%) translateX(calc(${"rtl"===this._dir.value?"-1":"1"} * (${u+f}px + var(--mat-mdc-form-field-label-offset-x, 0px))))\n )`,this._elementRef.nativeElement.style.setProperty("--mat-form-field-notch-max-width",`calc(100% - ${u+f+p+m}px)`)}_isAttachedToDom(){const e=this._elementRef.nativeElement;if(e.getRootNode){const i=e.getRootNode();return i&&i!==e}return document.documentElement.contains(e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.gRc),o.rXU(o.SKi),o.rXU(Ks),o.rXU(Io),o.rXU($le,8),o.rXU(o.bc$,8),o.rXU(V))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-form-field"]],contentQueries:function(i,r,s){if(1&i&&(o.C6U(s,r._labelChild,Nu,5),o.wni(s,j8,5),o.wni(s,H$,5),o.wni(s,zle,5),o.wni(s,U$,5),o.wni(s,G8,5)),2&i){let l;o.NyB(),o.mGM(l=o.lsd())&&(r._formFieldControl=l.first),o.mGM(l=o.lsd())&&(r._prefixChildren=l),o.mGM(l=o.lsd())&&(r._suffixChildren=l),o.mGM(l=o.lsd())&&(r._errorChildren=l),o.mGM(l=o.lsd())&&(r._hintChildren=l)}},viewQuery:function(i,r){if(1&i&&(o.GBs(gle,5),o.GBs(_le,5),o.GBs(ble,5),o.GBs(vle,5),o.GBs(yle,5),o.GBs(G$,5),o.GBs(q$,5),o.GBs($$,5)),2&i){let s;o.mGM(s=o.lsd())&&(r._textField=s.first),o.mGM(s=o.lsd())&&(r._iconPrefixContainer=s.first),o.mGM(s=o.lsd())&&(r._textPrefixContainer=s.first),o.mGM(s=o.lsd())&&(r._iconSuffixContainer=s.first),o.mGM(s=o.lsd())&&(r._textSuffixContainer=s.first),o.mGM(s=o.lsd())&&(r._floatingLabel=s.first),o.mGM(s=o.lsd())&&(r._notchedOutline=s.first),o.mGM(s=o.lsd())&&(r._lineRipple=s.first)}},hostAttrs:[1,"mat-mdc-form-field"],hostVars:42,hostBindings:function(i,r){2&i&&o.AVh("mat-mdc-form-field-label-always-float",r._shouldAlwaysFloat())("mat-mdc-form-field-has-icon-prefix",r._hasIconPrefix)("mat-mdc-form-field-has-icon-suffix",r._hasIconSuffix)("mat-form-field-invalid",r._control.errorState)("mat-form-field-disabled",r._control.disabled)("mat-form-field-autofilled",r._control.autofilled)("mat-form-field-no-animations","NoopAnimations"===r._animationMode)("mat-form-field-appearance-fill","fill"==r.appearance)("mat-form-field-appearance-outline","outline"==r.appearance)("mat-form-field-hide-placeholder",r._hasFloatingLabel()&&!r._shouldLabelFloat())("mat-focused",r._control.focused)("mat-primary","accent"!==r.color&&"warn"!==r.color)("mat-accent","accent"===r.color)("mat-warn","warn"===r.color)("ng-untouched",r._shouldForward("untouched"))("ng-touched",r._shouldForward("touched"))("ng-pristine",r._shouldForward("pristine"))("ng-dirty",r._shouldForward("dirty"))("ng-valid",r._shouldForward("valid"))("ng-invalid",r._shouldForward("invalid"))("ng-pending",r._shouldForward("pending"))},inputs:{hideRequiredMarker:"hideRequiredMarker",color:"color",floatLabel:"floatLabel",appearance:"appearance",subscriptSizing:"subscriptSizing",hintLabel:"hintLabel"},exportAs:["matFormField"],standalone:!0,features:[o.Jv_([{provide:$8,useExisting:n},{provide:z$,useExisting:n}]),o.aNF],ngContentSelectors:xle,decls:18,vars:21,consts:[["labelTemplate",""],["textField",""],["iconPrefixContainer",""],["textPrefixContainer",""],["textSuffixContainer",""],["iconSuffixContainer",""],[1,"mat-mdc-text-field-wrapper","mdc-text-field",3,"click"],[1,"mat-mdc-form-field-focus-overlay"],[1,"mat-mdc-form-field-flex"],["matFormFieldNotchedOutline","",3,"matFormFieldNotchedOutlineOpen"],[1,"mat-mdc-form-field-icon-prefix"],[1,"mat-mdc-form-field-text-prefix"],[1,"mat-mdc-form-field-infix"],[3,"ngTemplateOutlet"],[1,"mat-mdc-form-field-text-suffix"],[1,"mat-mdc-form-field-icon-suffix"],["matFormFieldLineRipple",""],[1,"mat-mdc-form-field-subscript-wrapper","mat-mdc-form-field-bottom-align"],[1,"mat-mdc-form-field-error-wrapper"],[1,"mat-mdc-form-field-hint-wrapper"],["matFormFieldFloatingLabel","",3,"floating","monitorResize","id"],["aria-hidden","true",1,"mat-mdc-form-field-required-marker","mdc-floating-label--required"],[3,"id"],[1,"mat-mdc-form-field-hint-spacer"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(wle),o.DNE(0,Ele,1,1,"ng-template",null,0,o.C5r),o.j41(2,"div",6,1),o.bIt("click",function(u){return o.eBV(s),o.Njj(r._control.onContainerClick(u))}),o.DNE(4,Sle,1,0,"div",7),o.j41(5,"div",8),o.DNE(6,Fle,2,2,"div",9)(7,Dle,3,0,"div",10)(8,Ble,3,0,"div",11),o.j41(9,"div",12),o.DNE(10,Rle,1,1,null,13),o.SdG(11),o.k0s(),o.DNE(12,Ple,3,0,"div",14)(13,Ole,3,0,"div",15),o.k0s(),o.DNE(14,Nle,1,0,"div",16),o.k0s(),o.j41(15,"div",17),o.DNE(16,Lle,2,1,"div",18)(17,Vle,5,2,"div",19),o.k0s()}if(2&i){let s;o.R7$(2),o.AVh("mdc-text-field--filled",!r._hasOutline())("mdc-text-field--outlined",r._hasOutline())("mdc-text-field--no-label",!r._hasFloatingLabel())("mdc-text-field--disabled",r._control.disabled)("mdc-text-field--invalid",r._control.errorState),o.R7$(2),o.vxM(r._hasOutline()||r._control.disabled?-1:4),o.R7$(2),o.vxM(r._hasOutline()?6:-1),o.R7$(),o.vxM(r._hasIconPrefix?7:-1),o.R7$(),o.vxM(r._hasTextPrefix?8:-1),o.R7$(2),o.vxM(!r._hasOutline()||r._forceDisplayInfixLabel()?10:-1),o.R7$(2),o.vxM(r._hasTextSuffix?12:-1),o.R7$(),o.vxM(r._hasIconSuffix?13:-1),o.R7$(),o.vxM(r._hasOutline()?-1:14),o.R7$(),o.AVh("mat-mdc-form-field-subscript-dynamic-size","dynamic"===r.subscriptSizing),o.R7$(),o.vxM("error"===(s=r._getDisplayedMessages())?16:"hint"===s?17:-1)}},dependencies:[G$,q$,yi,$$,G8],styles:['.mdc-text-field{display:inline-flex;align-items:baseline;padding:0 16px;position:relative;box-sizing:border-box;overflow:hidden;will-change:opacity,transform,color;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.mdc-text-field__input{width:100%;min-width:0;border:none;border-radius:0;background:none;padding:0;-moz-appearance:none;-webkit-appearance:none;height:28px}.mdc-text-field__input::-webkit-calendar-picker-indicator{display:none}.mdc-text-field__input::-ms-clear{display:none}.mdc-text-field__input:focus{outline:none}.mdc-text-field__input:invalid{box-shadow:none}.mdc-text-field__input::placeholder{opacity:0}.mdc-text-field__input::-moz-placeholder{opacity:0}.mdc-text-field__input::-webkit-input-placeholder{opacity:0}.mdc-text-field__input:-ms-input-placeholder{opacity:0}.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mdc-text-field--focused .mdc-text-field__input::placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{opacity:1}.mdc-text-field--outlined .mdc-text-field__input,.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input{height:100%}.mdc-text-field--outlined .mdc-text-field__input{display:flex;border:none !important;background-color:rgba(0,0,0,0)}.mdc-text-field--disabled .mdc-text-field__input{pointer-events:auto}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mdc-filled-text-field-input-text-color, var(--mat-app-on-surface));caret-color:var(--mdc-filled-text-field-caret-color, var(--mat-app-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mdc-filled-text-field-error-caret-color)}.mdc-text-field--filled.mdc-text-field--disabled .mdc-text-field__input{color:var(--mdc-filled-text-field-disabled-input-text-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mdc-outlined-text-field-input-text-color, var(--mat-app-on-surface));caret-color:var(--mdc-outlined-text-field-caret-color, var(--mat-app-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mdc-outlined-text-field-error-caret-color)}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--mdc-outlined-text-field-disabled-input-text-color)}.mdc-text-field--disabled .cdk-high-contrast-active .mdc-text-field__input{background-color:Window}.mdc-text-field--filled{height:56px;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:var(--mdc-filled-text-field-container-shape, var(--mat-app-corner-extra-small-top));border-top-right-radius:var(--mdc-filled-text-field-container-shape, var(--mat-app-corner-extra-small-top))}.mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:var(--mdc-filled-text-field-container-color, var(--mat-app-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled{background-color:var(--mdc-filled-text-field-disabled-container-color)}.mdc-text-field--outlined{height:56px;overflow:visible;padding-right:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)));padding-left:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)) + 4px)}[dir=rtl] .mdc-text-field--outlined{padding-right:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)) + 4px);padding-left:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))}.mdc-floating-label{position:absolute;left:0;transform-origin:left top;line-height:1.15rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform}[dir=rtl] .mdc-floating-label{right:0;left:auto;transform-origin:right top;text-align:right}.mdc-text-field .mdc-floating-label{top:50%;transform:translateY(-50%);pointer-events:none}.mdc-notched-outline .mdc-floating-label{display:inline-block;position:relative;max-width:100%}.mdc-text-field--outlined .mdc-floating-label{left:4px;right:auto}[dir=rtl] .mdc-text-field--outlined .mdc-floating-label{left:auto;right:4px}.mdc-text-field--filled .mdc-floating-label{left:16px;right:auto}[dir=rtl] .mdc-text-field--filled .mdc-floating-label{left:auto;right:16px}.mdc-text-field--disabled .mdc-floating-label{cursor:default}.cdk-high-contrast-active .mdc-text-field--disabled .mdc-floating-label{z-index:1}.mdc-text-field--filled.mdc-text-field--no-label .mdc-floating-label{display:none}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mdc-filled-text-field-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mdc-filled-text-field-focus-label-text-color, var(--mat-app-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mdc-filled-text-field-hover-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-floating-label{color:var(--mdc-filled-text-field-disabled-label-text-color)}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mdc-filled-text-field-error-label-text-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mdc-filled-text-field-error-focus-label-text-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mdc-filled-text-field-error-hover-label-text-color, var(--mat-app-on-error-container))}.mdc-text-field--filled .mdc-floating-label{font-family:var(--mdc-filled-text-field-label-text-font, var(--mat-app-body-large-font));font-size:var(--mdc-filled-text-field-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-filled-text-field-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-filled-text-field-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mdc-outlined-text-field-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mdc-outlined-text-field-focus-label-text-color, var(--mat-app-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mdc-outlined-text-field-hover-label-text-color, var(--mat-app-on-surface))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-floating-label{color:var(--mdc-outlined-text-field-disabled-label-text-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mdc-outlined-text-field-error-label-text-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mdc-outlined-text-field-error-focus-label-text-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mdc-outlined-text-field-error-hover-label-text-color, var(--mat-app-on-error-container))}.mdc-text-field--outlined .mdc-floating-label{font-family:var(--mdc-outlined-text-field-label-text-font, var(--mat-app-body-large-font));font-size:var(--mdc-outlined-text-field-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-outlined-text-field-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-outlined-text-field-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-floating-label--float-above{cursor:auto;transform:translateY(-106%) scale(0.75)}.mdc-text-field--filled .mdc-floating-label--float-above{transform:translateY(-106%) scale(0.75)}.mdc-text-field--outlined .mdc-floating-label--float-above{transform:translateY(-37.25px) scale(1);font-size:.75rem}.mdc-notched-outline .mdc-floating-label--float-above{text-overflow:clip}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:133.3333333333%}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{transform:translateY(-34.75px) scale(0.75)}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:1rem}.mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:1px;margin-right:0;content:"*"}[dir=rtl] .mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:0;margin-right:1px}.mdc-notched-outline{display:flex;position:absolute;top:0;right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;height:100%;text-align:left;pointer-events:none}[dir=rtl] .mdc-notched-outline{text-align:right}.mdc-text-field--outlined .mdc-notched-outline{z-index:1}.mat-mdc-notch-piece{box-sizing:border-box;height:100%;pointer-events:none;border-top:1px solid;border-bottom:1px solid}.mdc-text-field--focused .mat-mdc-notch-piece{border-width:2px}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-outline-color, var(--mat-app-outline));border-width:var(--mdc-outlined-text-field-outline-width)}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-hover-outline-color, var(--mat-app-on-surface))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-focus-outline-color, var(--mat-app-primary))}.mdc-text-field--outlined.mdc-text-field--disabled .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-disabled-outline-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-outline-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-notched-outline .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-hover-outline-color, var(--mat-app-on-error-container))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-focus-outline-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mat-mdc-notch-piece{border-width:var(--mdc-outlined-text-field-focus-outline-width)}.mdc-notched-outline__leading{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading{width:max(12px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))}[dir=rtl] .mdc-notched-outline__leading{border-left:none;border-right:1px solid;border-bottom-left-radius:0;border-top-left-radius:0;border-top-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-notched-outline__trailing{flex-grow:1;border-left:none;border-right:1px solid;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}[dir=rtl] .mdc-notched-outline__trailing{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-notched-outline__notch{flex:0 0 auto;width:auto}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__notch{max-width:min(var(--mat-form-field-notch-max-width, 100%),100% - max(12px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))*2)}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:1px}.mdc-text-field--focused.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:2px}.mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:0;padding-right:8px;border-top:none;--mat-form-field-notch-max-width: 100%}[dir=rtl] .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:8px;padding-right:0}.mdc-notched-outline--no-label .mdc-notched-outline__notch{display:none}.mdc-line-ripple::before,.mdc-line-ripple::after{position:absolute;bottom:0;left:0;width:100%;border-bottom-style:solid;content:""}.mdc-line-ripple::before{z-index:1;border-bottom-width:var(--mdc-filled-text-field-active-indicator-height)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-active-indicator-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-hover-active-indicator-color, var(--mat-app-on-surface))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-disabled-active-indicator-color)}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-error-active-indicator-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-error-hover-active-indicator-color, var(--mat-app-on-error-container))}.mdc-line-ripple::after{transform:scaleX(0);opacity:0;z-index:2}.mdc-text-field--filled .mdc-line-ripple::after{border-bottom-width:var(--mdc-filled-text-field-focus-active-indicator-height)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mdc-filled-text-field-focus-active-indicator-color, var(--mat-app-primary))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mdc-filled-text-field-error-focus-active-indicator-color, var(--mat-app-error))}.mdc-line-ripple--active::after{transform:scaleX(1);opacity:1}.mdc-line-ripple--deactivating::after{opacity:0}.mdc-text-field--disabled{pointer-events:none}.mat-mdc-form-field-textarea-control{vertical-align:middle;resize:vertical;box-sizing:border-box;height:auto;margin:0;padding:0;border:none;overflow:auto}.mat-mdc-form-field-input-control.mat-mdc-form-field-input-control{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font:inherit;letter-spacing:inherit;text-decoration:inherit;text-transform:inherit;border:none}.mat-mdc-form-field .mat-mdc-floating-label.mdc-floating-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;line-height:normal;pointer-events:all;will-change:auto}.mat-mdc-form-field:not(.mat-form-field-disabled) .mat-mdc-floating-label.mdc-floating-label{cursor:inherit}.mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input,.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:auto}.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control.mdc-text-field__input[type=color]{height:23px}.mat-mdc-text-field-wrapper{height:auto;flex:auto;will-change:auto}.mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-left:0;--mat-mdc-form-field-label-offset-x: -16px}.mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-right:0}[dir=rtl] .mat-mdc-text-field-wrapper{padding-left:16px;padding-right:16px}[dir=rtl] .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-left:0}[dir=rtl] .mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-right:0}.mat-form-field-disabled .mdc-text-field__input::placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-mdc-form-field-label-always-float .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms;opacity:1}.mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .mat-mdc-floating-label{left:auto;right:auto}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input{display:inline-block}.mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field .mdc-notched-outline__notch{padding-top:0}.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:1px solid rgba(0,0,0,0)}[dir=rtl] .mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:none;border-right:1px solid rgba(0,0,0,0)}.mat-mdc-form-field-infix{min-height:var(--mat-form-field-container-height);padding-top:var(--mat-form-field-filled-with-label-container-padding-top);padding-bottom:var(--mat-form-field-filled-with-label-container-padding-bottom)}.mdc-text-field--outlined .mat-mdc-form-field-infix,.mdc-text-field--no-label .mat-mdc-form-field-infix{padding-top:var(--mat-form-field-container-vertical-padding);padding-bottom:var(--mat-form-field-container-vertical-padding)}.mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:calc(var(--mat-form-field-container-height)/2)}.mdc-text-field--filled .mat-mdc-floating-label{display:var(--mat-form-field-filled-label-display, block)}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{--mat-mdc-form-field-label-transform: translateY(calc(calc(6.75px + var(--mat-form-field-container-height) / 2) * -1)) scale(var(--mat-mdc-form-field-floating-label-scale, 0.75));transform:var(--mat-mdc-form-field-label-transform)}.mat-mdc-form-field-subscript-wrapper{box-sizing:border-box;width:100%;position:relative}.mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-error-wrapper{position:absolute;top:0;left:0;right:0;padding:0 16px}.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper{position:static}.mat-mdc-form-field-bottom-align::before{content:"";display:inline-block;height:16px}.mat-mdc-form-field-bottom-align.mat-mdc-form-field-subscript-dynamic-size::before{content:unset}.mat-mdc-form-field-hint-end{order:1}.mat-mdc-form-field-hint-wrapper{display:flex}.mat-mdc-form-field-hint-spacer{flex:1 0 1em}.mat-mdc-form-field-error{display:block;color:var(--mat-form-field-error-text-color, var(--mat-app-error))}.mat-mdc-form-field-subscript-wrapper,.mat-mdc-form-field-bottom-align::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-subscript-text-font, var(--mat-app-body-small-font));line-height:var(--mat-form-field-subscript-text-line-height, var(--mat-app-body-small-line-height));font-size:var(--mat-form-field-subscript-text-size, var(--mat-app-body-small-size));letter-spacing:var(--mat-form-field-subscript-text-tracking, var(--mat-app-body-small-tracking));font-weight:var(--mat-form-field-subscript-text-weight, var(--mat-app-body-small-weight))}.mat-mdc-form-field-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;opacity:0;pointer-events:none;background-color:var(--mat-form-field-state-layer-color, var(--mat-app-on-surface))}.mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-form-field.mat-focused .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-focus-state-layer-opacity)}select.mat-mdc-form-field-input-control{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(0,0,0,0);display:inline-flex;box-sizing:border-box}select.mat-mdc-form-field-input-control:not(:disabled){cursor:pointer}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option{color:var(--mat-form-field-select-option-text-color)}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option:disabled{color:var(--mat-form-field-select-disabled-option-text-color)}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{content:"";width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;position:absolute;right:0;top:50%;margin-top:-2.5px;pointer-events:none;color:var(--mat-form-field-enabled-select-arrow-color, var(--mat-app-on-surface-variant))}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{right:auto;left:0}.mat-mdc-form-field-type-mat-native-select.mat-focused .mat-mdc-form-field-infix::after{color:var(--mat-form-field-focus-select-arrow-color, var(--mat-app-primary))}.mat-mdc-form-field-type-mat-native-select.mat-form-field-disabled .mat-mdc-form-field-infix::after{color:var(--mat-form-field-disabled-select-arrow-color)}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:15px}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:0;padding-left:15px}.cdk-high-contrast-active .mat-form-field-appearance-fill .mat-mdc-text-field-wrapper{outline:solid 1px}.cdk-high-contrast-active .mat-form-field-appearance-fill.mat-form-field-disabled .mat-mdc-text-field-wrapper{outline-color:GrayText}.cdk-high-contrast-active .mat-form-field-appearance-fill.mat-focused .mat-mdc-text-field-wrapper{outline:dashed 3px}.cdk-high-contrast-active .mat-mdc-form-field.mat-focused .mdc-notched-outline{border:dashed 3px}.mat-mdc-form-field-input-control[type=date],.mat-mdc-form-field-input-control[type=datetime],.mat-mdc-form-field-input-control[type=datetime-local],.mat-mdc-form-field-input-control[type=month],.mat-mdc-form-field-input-control[type=week],.mat-mdc-form-field-input-control[type=time]{line-height:1}.mat-mdc-form-field-input-control::-webkit-datetime-edit{line-height:1;padding:0;margin-bottom:-2px}.mat-mdc-form-field{--mat-mdc-form-field-floating-label-scale: 0.75;display:inline-flex;flex-direction:column;min-width:0;text-align:left;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-container-text-font, var(--mat-app-body-large-font));line-height:var(--mat-form-field-container-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mat-form-field-container-text-size, var(--mat-app-body-large-size));letter-spacing:var(--mat-form-field-container-text-tracking, var(--mat-app-body-large-tracking));font-weight:var(--mat-form-field-container-text-weight, var(--mat-app-body-large-weight))}[dir=rtl] .mat-mdc-form-field{text-align:right}.mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{font-size:calc(var(--mat-form-field-outlined-label-text-populated-size)*var(--mat-mdc-form-field-floating-label-scale))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:var(--mat-form-field-outlined-label-text-populated-size)}.mat-mdc-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-mdc-text-field-wrapper{width:100%;z-index:0}.mat-mdc-form-field-icon-prefix,.mat-mdc-form-field-icon-suffix{align-self:center;line-height:0;pointer-events:auto;position:relative;z-index:1}.mat-mdc-form-field-icon-prefix>.mat-icon,.mat-mdc-form-field-icon-suffix>.mat-icon{padding:0 12px;box-sizing:content-box}.mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-leading-icon-color, var(--mat-app-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-disabled-leading-icon-color)}.mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-trailing-icon-color, var(--mat-app-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-disabled-trailing-icon-color)}.mat-form-field-invalid .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-trailing-icon-color, var(--mat-app-error))}.mat-form-field-invalid:not(.mat-focused):not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-hover-trailing-icon-color, var(--mat-app-on-error-container))}.mat-form-field-invalid.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-focus-trailing-icon-color, var(--mat-app-error))}.mat-mdc-form-field-icon-prefix,[dir=rtl] .mat-mdc-form-field-icon-suffix{padding:0 4px 0 0}.mat-mdc-form-field-icon-suffix,[dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 0 0 4px}.mat-mdc-form-field-subscript-wrapper .mat-icon,.mat-mdc-form-field label .mat-icon{width:1em;height:1em;font-size:inherit}.mat-mdc-form-field-infix{flex:auto;min-width:0;width:180px;position:relative;box-sizing:border-box}.mat-mdc-form-field-infix:has(textarea[cols]){width:auto}.mat-mdc-form-field .mdc-notched-outline__notch{margin-left:-1px;-webkit-clip-path:inset(-9em -999em -9em 1px);clip-path:inset(-9em -999em -9em 1px)}[dir=rtl] .mat-mdc-form-field .mdc-notched-outline__notch{margin-left:0;margin-right:-1px;-webkit-clip-path:inset(-9em 1px -9em -999em);clip-path:inset(-9em 1px -9em -999em)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-floating-label{transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input{transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::-moz-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::-webkit-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input:-ms-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field--filled:not(.mdc-ripple-upgraded):focus .mdc-text-field__ripple::before{transition-duration:75ms}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-line-ripple::after{transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-notched-outline .mdc-floating-label{max-width:calc(100% + 1px)}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:calc(133.3333333333% + 1px)}'],encapsulation:2,data:{animation:[jle.transitionMessages]},changeDetection:0})}}return n})();class dR{get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}constructor(t=!1,e,i=!0,r){this._multiple=t,this._emitChanges=i,this.compareWith=r,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new mi.B,e&&e.length&&(t?e.forEach(s=>this._markSelected(s)):this._markSelected(e[0]),this._selectedToEmit.length=0)}select(...t){this._verifyValueAssignment(t),t.forEach(i=>this._markSelected(i));const e=this._hasQueuedChanges();return this._emitChangeEvent(),e}deselect(...t){this._verifyValueAssignment(t),t.forEach(i=>this._unmarkSelected(i));const e=this._hasQueuedChanges();return this._emitChangeEvent(),e}setSelection(...t){this._verifyValueAssignment(t);const e=this.selected,i=new Set(t);t.forEach(s=>this._markSelected(s)),e.filter(s=>!i.has(this._getConcreteValue(s,i))).forEach(s=>this._unmarkSelected(s));const r=this._hasQueuedChanges();return this._emitChangeEvent(),r}toggle(t){return this.isSelected(t)?this.deselect(t):this.select(t)}clear(t=!0){this._unmarkAll();const e=this._hasQueuedChanges();return t&&this._emitChangeEvent(),e}isSelected(t){return this._selection.has(this._getConcreteValue(t))}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(t){this._multiple&&this.selected&&this._selected.sort(t)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(t){t=this._getConcreteValue(t),this.isSelected(t)||(this._multiple||this._unmarkAll(),this.isSelected(t)||this._selection.add(t),this._emitChanges&&this._selectedToEmit.push(t))}_unmarkSelected(t){t=this._getConcreteValue(t),this.isSelected(t)&&(this._selection.delete(t),this._emitChanges&&this._deselectedToEmit.push(t))}_unmarkAll(){this.isEmpty()||this._selection.forEach(t=>this._unmarkSelected(t))}_verifyValueAssignment(t){}_hasQueuedChanges(){return!(!this._deselectedToEmit.length&&!this._selectedToEmit.length)}_getConcreteValue(t,e){if(this.compareWith){e=e??this._selection;for(let i of e)if(this.compareWith(t,i))return i;return t}return t}}let Y$=(()=>{class n{constructor(){this._listeners=[]}notify(e,i){for(let r of this._listeners)r(e,i)}listen(e){return this._listeners.push(e),()=>{this._listeners=this._listeners.filter(i=>e!==i)}}ngOnDestroy(){this._listeners=[]}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function Qp(n,t){return(0,Ir.N)((e,i)=>{let r=null,s=0,l=!1;const u=()=>l&&!r&&i.complete();e.subscribe((0,lr._)(i,f=>{r?.unsubscribe();let p=0;const m=s++;Rr(n(f,m)).subscribe(r=(0,lr._)(i,_=>i.next(t?t(f,_,m,p++):_),()=>{r=null,u()}))},()=>{l=!0,u()}))})}const Kle=["trigger"],Yle=["panel"],Zle=[[["mat-select-trigger"]],"*"],Jle=["mat-select-trigger","*"];function ece(n,t){if(1&n&&(o.j41(0,"span",4),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.JRh(e.placeholder)}}function tce(n,t){1&n&&o.SdG(0)}function nce(n,t){if(1&n&&(o.j41(0,"span",11),o.EFF(1),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.JRh(e.triggerValue)}}function ice(n,t){if(1&n&&(o.j41(0,"span",5),o.DNE(1,tce,1,0)(2,nce,2,1,"span",11),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.vxM(e.customTrigger?1:2)}}function rce(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",12,1),o.bIt("@transformPanel.done",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._panelDoneAnimatingStream.next(r.toState))})("keydown",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._handleKeydown(r))}),o.SdG(2,1),o.k0s()}if(2&n){const e=o.XpG();o.ZvI("mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open ",e._getPanelTheme(),""),o.Y8G("ngClass",e.panelClass)("@transformPanel","showing"),o.BMQ("id",e.id+"-panel")("aria-multiselectable",e.multiple)("aria-label",e.ariaLabel||null)("aria-labelledby",e._getPanelAriaLabelledby())}}const oce={transformPanelWrap:(0,Nn.hZ)("transformPanelWrap",[(0,Nn.kY)("* => void",(0,Nn.P)("@transformPanel",[(0,Nn.MA)()],{optional:!0}))]),transformPanel:(0,Nn.hZ)("transformPanel",[(0,Nn.wk)("void",(0,Nn.iF)({opacity:0,transform:"scale(1, 0.8)"})),(0,Nn.kY)("void => showing",(0,Nn.i0)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,Nn.iF)({opacity:1,transform:"scale(1, 1)"}))),(0,Nn.kY)("* => void",(0,Nn.i0)("100ms linear",(0,Nn.iF)({opacity:0})))])};let Z$=0;const J$=new o.nKC("mat-select-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.reposition()}}),ace=new o.nKC("MAT_SELECT_CONFIG"),eq=new o.nKC("MatSelectTrigger");class lce{constructor(t,e){this.source=t,this.value=e}}let e0=(()=>{class n{_scrollOptionIntoView(e){const i=this.options.toArray()[e];if(i){const r=this.panel.nativeElement,s=function eN(n,t,e){if(e.length){let i=t.toArray(),r=e.toArray(),s=0;for(let l=0;le+i?Math.max(0,n-i+t):e}(l.offsetTop,l.offsetHeight,r.scrollTop,r.offsetHeight)}}_positioningSettled(){this._scrollOptionIntoView(this._keyManager.activeItemIndex||0)}_getChangeEvent(e){return new lce(this,e)}get focused(){return this._focused||this._panelOpen}get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._syncParentProperties()}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}get required(){return this._required??this.ngControl?.control?.hasValidator(v8.required)??!1}set required(e){this._required=e,this.stateChanges.next()}get multiple(){return this._multiple}set multiple(e){this._multiple=e}get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this._assignValue(e)&&this._onChange(e)}get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}get id(){return this._id}set id(e){this._id=e||this._uid,this.stateChanges.next()}get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}constructor(e,i,r,s,l,u,f,p,m,_,b,w,F,D){this._viewportRuler=e,this._changeDetectorRef=i,this._elementRef=l,this._dir=u,this._parentFormField=m,this.ngControl=_,this._liveAnnouncer=F,this._defaultOptions=D,this._positions=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"}],this._panelOpen=!1,this._compareWith=(T,I)=>T===I,this._uid="mat-select-"+Z$++,this._triggerAriaLabelledBy=null,this._destroy=new mi.B,this.stateChanges=new mi.B,this.disableAutomaticLabeling=!0,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+Z$++,this._panelDoneAnimatingStream=new mi.B,this._overlayPanelClass=this._defaultOptions?.overlayPanelClass||"",this._focused=!1,this.controlType="mat-select",this.disabled=!1,this.disableRipple=!1,this.tabIndex=0,this._hideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1,this._multiple=!1,this.disableOptionCentering=this._defaultOptions?.disableOptionCentering??!1,this.ariaLabel="",this.panelWidth=this._defaultOptions&&typeof this._defaultOptions.panelWidth<"u"?this._defaultOptions.panelWidth:"auto",this._initialized=new mi.B,this.optionSelectionChanges=Ky(()=>{const T=this.options;return T?T.changes.pipe(su(T),Qp(()=>ql(...T.map(I=>I.onSelectionChange)))):this._initialized.pipe(Qp(()=>this.optionSelectionChanges))}),this.openedChange=new o.bkB,this._openedStream=this.openedChange.pipe(hr(T=>T),(0,qn.T)(()=>{})),this._closedStream=this.openedChange.pipe(hr(T=>!T),(0,qn.T)(()=>{})),this.selectionChange=new o.bkB,this.valueChange=new o.bkB,this._trackedModal=null,this._skipPredicate=T=>!this.panelOpen&&T.disabled,this.ngControl&&(this.ngControl.valueAccessor=this),null!=D?.typeaheadDebounceInterval&&(this.typeaheadDebounceInterval=D.typeaheadDebounceInterval),this._errorStateTracker=new au(s,_,p,f,this.stateChanges),this._scrollStrategyFactory=w,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(b)||0,this.id=this.id}ngOnInit(){this._selectionModel=new dR(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(kr(),bo(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen)),this._viewportRuler.change().pipe(bo(this._destroy)).subscribe(()=>{this.panelOpen&&(this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._changeDetectorRef.detectChanges())})}ngAfterContentInit(){this._initialized.next(),this._initialized.complete(),this._initKeyManager(),this._selectionModel.changed.pipe(bo(this._destroy)).subscribe(e=>{e.added.forEach(i=>i.select()),e.removed.forEach(i=>i.deselect())}),this.options.changes.pipe(su(null),bo(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const e=this._getTriggerAriaLabelledby(),i=this.ngControl;if(e!==this._triggerAriaLabelledBy){const r=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?r.setAttribute("aria-labelledby",e):r.removeAttribute("aria-labelledby")}i&&(this._previousControl!==i.control&&(void 0!==this._previousControl&&null!==i.disabled&&i.disabled!==this.disabled&&(this.disabled=i.disabled),this._previousControl=i.control),this.updateErrorState())}ngOnChanges(e){(e.disabled||e.userAriaDescribedBy)&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this.typeaheadDebounceInterval)}ngOnDestroy(){this._keyManager?.destroy(),this._destroy.next(),this._destroy.complete(),this.stateChanges.complete(),this._clearFromModal()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._parentFormField&&(this._preferredOverlayOrigin=this._parentFormField.getConnectedOverlayOrigin()),this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._applyModalPanelOwnership(),this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_applyModalPanelOwnership(){const e=this._elementRef.nativeElement.closest('body > .cdk-overlay-container [aria-modal="true"]');if(!e)return;const i=`${this.id}-panel`;this._trackedModal&&NT(this._trackedModal,"aria-owns",i),Qy(e,"aria-owns",i),this._trackedModal=e}_clearFromModal(){this._trackedModal&&(NT(this._trackedModal,"aria-owns",`${this.id}-panel`),this._trackedModal=null)}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched(),this.stateChanges.next())}writeValue(e){this._assignValue(e)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel?.selected||[]:this._selectionModel?.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const e=this._selectionModel.selected.map(i=>i.viewValue);return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}updateErrorState(){this._errorStateTracker.updateErrorState()}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}_handleClosedKeydown(e){const i=e.keyCode,r=40===i||38===i||37===i||39===i,s=13===i||32===i,l=this._keyManager;if(!l.isTyping()&&s&&!Kl(e)||(this.multiple||e.altKey)&&r)e.preventDefault(),this.open();else if(!this.multiple){const u=this.selected;l.onKeydown(e);const f=this.selected;f&&u!==f&&this._liveAnnouncer.announce(f.viewValue,1e4)}}_handleOpenKeydown(e){const i=this._keyManager,r=e.keyCode,s=40===r||38===r,l=i.isTyping();if(s&&e.altKey)e.preventDefault(),this.close();else if(l||13!==r&&32!==r||!i.activeItem||Kl(e))if(!l&&this._multiple&&65===r&&e.ctrlKey){e.preventDefault();const u=this.options.some(f=>!f.disabled&&!f.selected);this.options.forEach(f=>{f.disabled||(u?f.select():f.deselect())})}else{const u=i.activeItemIndex;i.onKeydown(e),this._multiple&&s&&e.shiftKey&&i.activeItem&&i.activeItemIndex!==u&&i.activeItem._selectViaInteraction()}else e.preventDefault(),i.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,this._keyManager?.cancelTypeahead(),!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe(ms(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(e){if(this.options.forEach(i=>i.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(i=>this._selectOptionByValue(i)),this._sortValues();else{const i=this._selectOptionByValue(e);i?this._keyManager.updateActiveItem(i):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(e){const i=this.options.find(r=>{if(this._selectionModel.isSelected(r))return!1;try{return null!=r.value&&this._compareWith(r.value,e)}catch{return!1}});return i&&this._selectionModel.select(i),i}_assignValue(e){return!!(e!==this._value||this._multiple&&Array.isArray(e))&&(this.options&&this._setSelectionByValue(e),this._value=e,!0)}_getOverlayWidth(e){return"auto"===this.panelWidth?(e instanceof Hy?e.elementRef:e||this._elementRef).nativeElement.getBoundingClientRect().width:null===this.panelWidth?"":this.panelWidth}_syncParentProperties(){if(this.options)for(const e of this.options)e._changeDetectorRef.markForCheck()}_initKeyManager(){this._keyManager=new VT(this.options).withTypeAhead(this.typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withPageUpDown().withAllowedModifierKeys(["shiftKey"]).skipPredicate(this._skipPredicate),this._keyManager.tabOut.subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const e=ql(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(bo(e)).subscribe(i=>{this._onSelect(i.source,i.isUserInput),i.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),ql(...this.options.map(i=>i._stateChanges)).pipe(bo(e)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this.stateChanges.next()})}_onSelect(e,i){const r=this._selectionModel.isSelected(e);null!=e.value||this._multiple?(r!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),i&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),i&&this.focus())):(e.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(e.value)),r!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const e=this.options.toArray();this._selectionModel.sort((i,r)=>this.sortComparator?this.sortComparator(i,r,e):e.indexOf(i)-e.indexOf(r)),this.stateChanges.next()}}_propagateChanges(e){let i;i=this.multiple?this.selected.map(r=>r.value):this.selected?this.selected.value:e,this._value=i,this.valueChange.emit(i),this._onChange(i),this.selectionChange.emit(this._getChangeEvent(i)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){if(this._keyManager)if(this.empty){let e=-1;for(let i=0;i0}focus(e){this._elementRef.nativeElement.focus(e)}_getPanelAriaLabelledby(){if(this.ariaLabel)return null;const e=this._parentFormField?.getLabelId();return this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){if(this.ariaLabel)return null;const e=this._parentFormField?.getLabelId();let i=(e?e+" ":"")+this._valueId;return this.ariaLabelledby&&(i+=" "+this.ariaLabelledby),i}_panelDoneAnimating(e){this.openedChange.emit(e)}setDescribedByIds(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this.panelOpen||!this.empty||this.focused&&!!this.placeholder}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(dT),o.rXU(o.gRc),o.rXU(o.SKi),o.rXU(mI),o.rXU(o.aKT),o.rXU(Ks,8),o.rXU(KS,8),o.rXU(YS,8),o.rXU($8,8),o.rXU(Kh,10),o.kS0("tabindex"),o.rXU(J$),o.rXU(RO),o.rXU(ace,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-select"]],contentQueries:function(i,r,s){if(1&i&&(o.wni(s,eq,5),o.wni(s,yd,5),o.wni(s,wI,5)),2&i){let l;o.mGM(l=o.lsd())&&(r.customTrigger=l.first),o.mGM(l=o.lsd())&&(r.options=l),o.mGM(l=o.lsd())&&(r.optionGroups=l)}},viewQuery:function(i,r){if(1&i&&(o.GBs(Kle,5),o.GBs(Yle,5),o.GBs(OT,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.trigger=s.first),o.mGM(s=o.lsd())&&(r.panel=s.first),o.mGM(s=o.lsd())&&(r._overlayDir=s.first)}},hostAttrs:["role","combobox","aria-haspopup","listbox",1,"mat-mdc-select"],hostVars:19,hostBindings:function(i,r){1&i&&o.bIt("keydown",function(l){return r._handleKeydown(l)})("focus",function(){return r._onFocus()})("blur",function(){return r._onBlur()}),2&i&&(o.BMQ("id",r.id)("tabindex",r.disabled?-1:r.tabIndex)("aria-controls",r.panelOpen?r.id+"-panel":null)("aria-expanded",r.panelOpen)("aria-label",r.ariaLabel||null)("aria-required",r.required.toString())("aria-disabled",r.disabled.toString())("aria-invalid",r.errorState)("aria-activedescendant",r._getAriaActiveDescendant()),o.AVh("mat-mdc-select-disabled",r.disabled)("mat-mdc-select-invalid",r.errorState)("mat-mdc-select-required",r.required)("mat-mdc-select-empty",r.empty)("mat-mdc-select-multiple",r.multiple))},inputs:{userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],panelClass:"panelClass",disabled:[2,"disabled","disabled",o.L39],disableRipple:[2,"disableRipple","disableRipple",o.L39],tabIndex:[2,"tabIndex","tabIndex",e=>null==e?0:(0,o.Udg)(e)],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",o.L39],placeholder:"placeholder",required:[2,"required","required",o.L39],multiple:[2,"multiple","multiple",o.L39],disableOptionCentering:[2,"disableOptionCentering","disableOptionCentering",o.L39],compareWith:"compareWith",value:"value",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:[2,"typeaheadDebounceInterval","typeaheadDebounceInterval",o.Udg],sortComparator:"sortComparator",id:"id",panelWidth:"panelWidth"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},exportAs:["matSelect"],standalone:!0,features:[o.Jv_([{provide:j8,useExisting:n},{provide:yI,useExisting:n}]),o.GFd,o.OA$,o.aNF],ngContentSelectors:Jle,decls:11,vars:8,consts:[["fallbackOverlayOrigin","cdkOverlayOrigin","trigger",""],["panel",""],["cdk-overlay-origin","",1,"mat-mdc-select-trigger",3,"click"],[1,"mat-mdc-select-value"],[1,"mat-mdc-select-placeholder","mat-mdc-select-min-line"],[1,"mat-mdc-select-value-text"],[1,"mat-mdc-select-arrow-wrapper"],[1,"mat-mdc-select-arrow"],["viewBox","0 0 24 24","width","24px","height","24px","focusable","false","aria-hidden","true"],["d","M7 10l5 5 5-5z"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"backdropClick","attach","detach","cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayWidth"],[1,"mat-mdc-select-min-line"],["role","listbox","tabindex","-1",3,"keydown","ngClass"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(Zle),o.j41(0,"div",2,0),o.bIt("click",function(){return o.eBV(s),o.Njj(r.open())}),o.j41(3,"div",3),o.DNE(4,ece,2,1,"span",4)(5,ice,3,1,"span",5),o.k0s(),o.j41(6,"div",6)(7,"div",7),o.qSk(),o.j41(8,"svg",8),o.nrm(9,"path",9),o.k0s()()()(),o.DNE(10,rce,3,9,"ng-template",10),o.bIt("backdropClick",function(){return o.eBV(s),o.Njj(r.close())})("attach",function(){return o.eBV(s),o.Njj(r._onAttached())})("detach",function(){return o.eBV(s),o.Njj(r.close())})}if(2&i){const s=o.sdS(1);o.R7$(3),o.BMQ("id",r._valueId),o.R7$(),o.vxM(r.empty?4:5),o.R7$(6),o.Y8G("cdkConnectedOverlayPanelClass",r._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",r._scrollStrategy)("cdkConnectedOverlayOrigin",r._preferredOverlayOrigin||s)("cdkConnectedOverlayOpen",r.panelOpen)("cdkConnectedOverlayPositions",r._positions)("cdkConnectedOverlayWidth",r._overlayWidth)}},dependencies:[Hy,OT,Sn],styles:['.mat-mdc-select{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color, var(--mat-app-on-surface));font-family:var(--mat-select-trigger-text-font, var(--mat-app-body-large-font));line-height:var(--mat-select-trigger-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mat-select-trigger-text-size, var(--mat-app-body-large-size));font-weight:var(--mat-select-trigger-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mat-select-trigger-text-tracking, var(--mat-app-body-large-tracking))}div.mat-mdc-select-panel{box-shadow:var(--mat-select-container-elevation-shadow)}.mat-mdc-select-disabled{color:var(--mat-select-disabled-trigger-text-color)}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-invalid .mat-mdc-select-arrow,.mat-form-field-invalid:not(.mat-form-field-disabled) .mat-mdc-form-field-infix::after{color:var(--mat-select-invalid-arrow-color, var(--mat-app-error))}.mat-mdc-select-arrow{width:10px;height:5px;position:relative;color:var(--mat-select-enabled-arrow-color, var(--mat-app-on-surface-variant))}.mat-mdc-form-field.mat-focused .mat-mdc-select-arrow{color:var(--mat-select-focused-arrow-color, var(--mat-app-primary))}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-disabled .mat-mdc-select-arrow{color:var(--mat-select-disabled-arrow-color)}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}div.mat-mdc-select-panel{width:100%;max-height:275px;outline:0;overflow:auto;padding:8px 0;border-radius:4px;box-sizing:border-box;position:static;background-color:var(--mat-select-panel-background-color, var(--mat-app-surface-container))}.cdk-high-contrast-active div.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) div.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above div.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}div.mat-mdc-select-panel .mat-mdc-option{--mdc-list-list-item-container-color: var(--mat-select-panel-background-color)}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);color:var(--mat-select-placeholder-text-color, var(--mat-app-on-surface-variant))}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100%/0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;visibility:hidden}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:var(--mat-select-arrow-transform)}'],encapsulation:2,data:{animation:[oce.transformPanel]},changeDetection:0})}}return n})(),tq=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-select-trigger"]],standalone:!0,features:[o.Jv_([{provide:eq,useExisting:n}])]})}}return n})();const cce=["*"],hce=[[["","mat-card-avatar",""],["","matCardAvatar",""]],[["mat-card-title"],["mat-card-subtitle"],["","mat-card-title",""],["","mat-card-subtitle",""],["","matCardTitle",""],["","matCardSubtitle",""]],"*"],fce=["[mat-card-avatar], [matCardAvatar]","mat-card-title, mat-card-subtitle,\n [mat-card-title], [mat-card-subtitle],\n [matCardTitle], [matCardSubtitle]","*"],pce=new o.nKC("MAT_CARD_CONFIG");let e2=(()=>{class n{constructor(e){this.appearance=e?.appearance||"raised"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(pce,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-card"]],hostAttrs:[1,"mat-mdc-card","mdc-card"],hostVars:4,hostBindings:function(i,r){2&i&&o.AVh("mat-mdc-card-outlined","outlined"===r.appearance)("mdc-card--outlined","outlined"===r.appearance)},inputs:{appearance:"appearance"},exportAs:["matCard"],standalone:!0,features:[o.aNF],ngContentSelectors:cce,decls:1,vars:0,template:function(i,r){1&i&&(o.NAR(),o.SdG(0))},styles:['.mat-mdc-card{display:flex;flex-direction:column;box-sizing:border-box;position:relative;border-style:solid;border-width:0;background-color:var(--mdc-elevated-card-container-color, var(--mat-app-surface-container-low));border-color:var(--mdc-elevated-card-container-color, var(--mat-app-surface-container-low));border-radius:var(--mdc-elevated-card-container-shape, var(--mat-app-corner-medium));box-shadow:var(--mdc-elevated-card-container-elevation, var(--mat-app-level1))}.mat-mdc-card::after{position:absolute;top:0;left:0;width:100%;height:100%;border:solid 1px rgba(0,0,0,0);content:"";display:block;pointer-events:none;box-sizing:border-box;border-radius:var(--mdc-elevated-card-container-shape, var(--mat-app-corner-medium))}.mat-mdc-card-outlined{background-color:var(--mdc-outlined-card-container-color, var(--mat-app-surface));border-radius:var(--mdc-outlined-card-container-shape, var(--mat-app-corner-medium));border-width:var(--mdc-outlined-card-outline-width);border-color:var(--mdc-outlined-card-outline-color, var(--mat-app-outline-variant));box-shadow:var(--mdc-outlined-card-container-elevation, var(--mat-app-level0))}.mat-mdc-card-outlined::after{border:none}.mdc-card__media{position:relative;box-sizing:border-box;background-repeat:no-repeat;background-position:center;background-size:cover}.mdc-card__media::before{display:block;content:""}.mdc-card__media:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.mdc-card__media:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.mat-mdc-card-actions{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;min-height:52px;padding:8px}.mat-mdc-card-title{font-family:var(--mat-card-title-text-font, var(--mat-app-title-large-font));line-height:var(--mat-card-title-text-line-height, var(--mat-app-title-large-line-height));font-size:var(--mat-card-title-text-size, var(--mat-app-title-large-size));letter-spacing:var(--mat-card-title-text-tracking, var(--mat-app-title-large-tracking));font-weight:var(--mat-card-title-text-weight, var(--mat-app-title-large-weight))}.mat-mdc-card-subtitle{color:var(--mat-card-subtitle-text-color, var(--mat-app-on-surface));font-family:var(--mat-card-subtitle-text-font, var(--mat-app-title-medium-font));line-height:var(--mat-card-subtitle-text-line-height, var(--mat-app-title-medium-line-height));font-size:var(--mat-card-subtitle-text-size, var(--mat-app-title-medium-size));letter-spacing:var(--mat-card-subtitle-text-tracking, var(--mat-app-title-medium-tracking));font-weight:var(--mat-card-subtitle-text-weight, var(--mat-app-title-medium-weight))}.mat-mdc-card-title,.mat-mdc-card-subtitle{display:block;margin:0}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle{padding:16px 16px 0}.mat-mdc-card-header{display:flex;padding:16px 16px 0}.mat-mdc-card-content{display:block;padding:0 16px}.mat-mdc-card-content:first-child{padding-top:16px}.mat-mdc-card-content:last-child{padding-bottom:16px}.mat-mdc-card-title-group{display:flex;justify-content:space-between;width:100%}.mat-mdc-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;margin-bottom:16px;object-fit:cover}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title{line-height:normal}.mat-mdc-card-sm-image{width:80px;height:80px}.mat-mdc-card-md-image{width:112px;height:112px}.mat-mdc-card-lg-image{width:152px;height:152px}.mat-mdc-card-xl-image{width:240px;height:240px}.mat-mdc-card-subtitle~.mat-mdc-card-title,.mat-mdc-card-title~.mat-mdc-card-subtitle,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-title-group .mat-mdc-card-title,.mat-mdc-card-title-group .mat-mdc-card-subtitle{padding-top:0}.mat-mdc-card-content>:last-child:not(.mat-mdc-card-footer){margin-bottom:0}.mat-mdc-card-actions-align-end{justify-content:flex-end}'],encapsulation:2,changeDetection:0})}}return n})(),nq=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-card-content"]],hostAttrs:[1,"mat-mdc-card-content"],standalone:!0})}}return n})(),iq=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-card-header"]],hostAttrs:[1,"mat-mdc-card-header"],standalone:!0,features:[o.aNF],ngContentSelectors:fce,decls:4,vars:0,consts:[[1,"mat-mdc-card-header-text"]],template:function(i,r){1&i&&(o.NAR(hce),o.SdG(0),o.j41(1,"div",0),o.SdG(2,1),o.k0s(),o.SdG(3,2))},encapsulation:2,changeDetection:0})}}return n})();const bce=["knob"],vce=["valueIndicatorContainer"];function yce(n,t){if(1&n&&(o.j41(0,"div",2,1)(2,"div",5)(3,"span",6),o.EFF(4),o.k0s()()()),2&n){const e=o.XpG();o.R7$(4),o.JRh(e.valueIndicatorText)}}const wce=["trackActive"],xce=["*"];function Cce(n,t){if(1&n&&o.nrm(0,"div"),2&n){const e=t.$implicit,i=t.$index,r=o.XpG(3);o.HbH(0===e?"mdc-slider__tick-mark--active":"mdc-slider__tick-mark--inactive"),o.xc7("transform",r._calcTickMarkTransform(i))}}function Mce(n,t){if(1&n&&o.Z7z(0,Cce,1,4,"div",8,o.Vm6),2&n){const e=o.XpG(2);o.Dyx(e._tickMarks)}}function Ece(n,t){if(1&n&&(o.j41(0,"div",6,1),o.DNE(2,Mce,2,0),o.k0s()),2&n){const e=o.XpG();o.R7$(2),o.vxM(e._cachedWidth?2:-1)}}function Sce(n,t){if(1&n&&o.nrm(0,"mat-slider-visual-thumb",7),2&n){const e=o.XpG();o.Y8G("discrete",e.discrete)("thumbPosition",1)("valueIndicatorText",e.startValueIndicatorText)}}var Wi=function(n){return n[n.START=1]="START",n[n.END=2]="END",n}(Wi||{}),ix=function(n){return n[n.ACTIVE=0]="ACTIVE",n[n.INACTIVE=1]="INACTIVE",n}(ix||{});const uR=new o.nKC("_MatSlider"),rq=new o.nKC("_MatSliderThumb"),oq=new o.nKC("_MatSliderRangeThumb"),sq=new o.nKC("_MatSliderVisualThumb");let Tce=(()=>{class n{constructor(e,i,r,s){this._cdr=e,this._ngZone=i,this._slider=s,this._isHovered=!1,this._isActive=!1,this._isValueIndicatorVisible=!1,this._platform=(0,o.WQX)(Io),this._onPointerMove=l=>{if(this._sliderInput._isFocused)return;const u=this._hostElement.getBoundingClientRect(),f=this._slider._isCursorOnSliderThumb(l,u);this._isHovered=f,f?this._showHoverRipple():this._hideRipple(this._hoverRippleRef)},this._onMouseLeave=()=>{this._isHovered=!1,this._hideRipple(this._hoverRippleRef)},this._onFocus=()=>{this._hideRipple(this._hoverRippleRef),this._showFocusRipple(),this._hostElement.classList.add("mdc-slider__thumb--focused")},this._onBlur=()=>{this._isActive||this._hideRipple(this._focusRippleRef),this._isHovered&&this._showHoverRipple(),this._hostElement.classList.remove("mdc-slider__thumb--focused")},this._onDragStart=l=>{0===l.button&&(this._isActive=!0,this._showActiveRipple())},this._onDragEnd=()=>{this._isActive=!1,this._hideRipple(this._activeRippleRef),this._sliderInput._isFocused||this._hideRipple(this._focusRippleRef),this._platform.SAFARI&&this._showHoverRipple()},this._hostElement=r.nativeElement}ngAfterViewInit(){const e=this._slider._getInput(this.thumbPosition);e&&(this._ripple.radius=24,this._sliderInput=e,this._sliderInputEl=this._sliderInput._hostElement,this._ngZone.runOutsideAngular(()=>{const i=this._sliderInputEl;i.addEventListener("pointermove",this._onPointerMove),i.addEventListener("pointerdown",this._onDragStart),i.addEventListener("pointerup",this._onDragEnd),i.addEventListener("pointerleave",this._onMouseLeave),i.addEventListener("focus",this._onFocus),i.addEventListener("blur",this._onBlur)}))}ngOnDestroy(){const e=this._sliderInputEl;e&&(e.removeEventListener("pointermove",this._onPointerMove),e.removeEventListener("pointerdown",this._onDragStart),e.removeEventListener("pointerup",this._onDragEnd),e.removeEventListener("pointerleave",this._onMouseLeave),e.removeEventListener("focus",this._onFocus),e.removeEventListener("blur",this._onBlur))}_showHoverRipple(){this._isShowingRipple(this._hoverRippleRef)||(this._hoverRippleRef=this._showRipple({enterDuration:0,exitDuration:0}),this._hoverRippleRef?.element.classList.add("mat-mdc-slider-hover-ripple"))}_showFocusRipple(){this._isShowingRipple(this._focusRippleRef)||(this._focusRippleRef=this._showRipple({enterDuration:0,exitDuration:0},!0),this._focusRippleRef?.element.classList.add("mat-mdc-slider-focus-ripple"))}_showActiveRipple(){this._isShowingRipple(this._activeRippleRef)||(this._activeRippleRef=this._showRipple({enterDuration:225,exitDuration:400}),this._activeRippleRef?.element.classList.add("mat-mdc-slider-active-ripple"))}_isShowingRipple(e){return e?.state===Ls.FADING_IN||e?.state===Ls.VISIBLE}_showRipple(e,i){if(!this._slider.disabled&&(this._showValueIndicator(),this._slider._isRange&&this._slider._getThumb(this.thumbPosition===Wi.START?Wi.END:Wi.START)._showValueIndicator(),!this._slider._globalRippleOptions?.disabled||i))return this._ripple.launch({animation:this._slider._noopAnimations?{enterDuration:0,exitDuration:0}:e,centered:!0,persistent:!0})}_hideRipple(e){if(e?.fadeOut(),this._isShowingAnyRipple())return;this._slider._isRange||this._hideValueIndicator();const i=this._getSibling();i._isShowingAnyRipple()||(this._hideValueIndicator(),i._hideValueIndicator())}_showValueIndicator(){this._hostElement.classList.add("mdc-slider__thumb--with-indicator")}_hideValueIndicator(){this._hostElement.classList.remove("mdc-slider__thumb--with-indicator")}_getSibling(){return this._slider._getThumb(this.thumbPosition===Wi.START?Wi.END:Wi.START)}_getValueIndicatorContainer(){return this._valueIndicatorContainer?.nativeElement}_getKnob(){return this._knob.nativeElement}_isShowingAnyRipple(){return this._isShowingRipple(this._hoverRippleRef)||this._isShowingRipple(this._focusRippleRef)||this._isShowingRipple(this._activeRippleRef)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc),o.rXU(o.SKi),o.rXU(o.aKT),o.rXU(uR))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-slider-visual-thumb"]],viewQuery:function(i,r){if(1&i&&(o.GBs(ml,5),o.GBs(bce,5),o.GBs(vce,5)),2&i){let s;o.mGM(s=o.lsd())&&(r._ripple=s.first),o.mGM(s=o.lsd())&&(r._knob=s.first),o.mGM(s=o.lsd())&&(r._valueIndicatorContainer=s.first)}},hostAttrs:[1,"mdc-slider__thumb","mat-mdc-slider-visual-thumb"],inputs:{discrete:"discrete",thumbPosition:"thumbPosition",valueIndicatorText:"valueIndicatorText"},standalone:!0,features:[o.Jv_([{provide:sq,useExisting:n}]),o.aNF],decls:4,vars:2,consts:[["knob",""],["valueIndicatorContainer",""],[1,"mdc-slider__value-indicator-container"],[1,"mdc-slider__thumb-knob"],["matRipple","",1,"mat-mdc-focus-indicator",3,"matRippleDisabled"],[1,"mdc-slider__value-indicator"],[1,"mdc-slider__value-indicator-text"]],template:function(i,r){1&i&&(o.DNE(0,yce,5,1,"div",2),o.nrm(1,"div",3,0)(3,"div",4)),2&i&&(o.vxM(r.discrete?0:-1),o.R7$(3),o.Y8G("matRippleDisabled",!0))},dependencies:[ml],styles:[".mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}.mat-mdc-slider .mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--active,.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--inactive{position:absolute;left:2px}"],encapsulation:2,changeDetection:0})}}return n})(),aq=(()=>{class n{get disabled(){return this._disabled}set disabled(e){this._disabled=e;const i=this._getInput(Wi.END),r=this._getInput(Wi.START);i&&(i.disabled=this._disabled),r&&(r.disabled=this._disabled)}get discrete(){return this._discrete}set discrete(e){this._discrete=e,this._updateValueIndicatorUIs()}get min(){return this._min}set min(e){const i=isNaN(e)?this._min:e;this._min!==i&&this._updateMin(i)}_updateMin(e){const i=this._min;this._min=e,this._isRange?this._updateMinRange({old:i,new:e}):this._updateMinNonRange(e),this._onMinMaxOrStepChange()}_updateMinRange(e){const i=this._getInput(Wi.END),r=this._getInput(Wi.START),s=i.value,l=r.value;r.min=e.new,i.min=Math.max(e.new,r.value),r.max=Math.min(i.max,i.value),r._updateWidthInactive(),i._updateWidthInactive(),e.newe.old?this._onTranslateXChangeBySideEffect(r,i):this._onTranslateXChangeBySideEffect(i,r),s!==i.value&&this._onValueChange(i),l!==r.value&&this._onValueChange(r)}_updateMaxNonRange(e){const i=this._getInput(Wi.END);if(i){const r=i.value;i.max=e,i._updateThumbUIByValue(),this._updateTrackUI(i),r!==i.value&&this._onValueChange(i)}}get step(){return this._step}set step(e){const i=isNaN(e)?this._step:e;this._step!==i&&this._updateStep(i)}_updateStep(e){this._step=e,this._isRange?this._updateStepRange():this._updateStepNonRange(),this._onMinMaxOrStepChange()}_updateStepRange(){const e=this._getInput(Wi.END),i=this._getInput(Wi.START),r=e.value,s=i.value,l=i.value;e.min=this._min,i.max=this._max,e.step=this._step,i.step=this._step,this._platform.SAFARI&&(e.value=e.value,i.value=i.value),e.min=Math.max(this._min,i.value),i.max=Math.min(this._max,e.value),i._updateWidthInactive(),e._updateWidthInactive(),e.value`${f}`,this._rippleRadius=24,this.startValueIndicatorText="",this.endValueIndicatorText="",this._isRange=!1,this._isRtl=!1,this._hasViewInitialized=!1,this._tickMarkTrackWidth=0,this._hasAnimation=!1,this._resizeTimer=null,this._platform=(0,o.WQX)(Io),this._knobRadius=8,this._thumbsOverlap=!1,this._noopAnimations="NoopAnimations"===u,this._dirChangeSubscription=this._dir.change.subscribe(()=>this._onDirChange()),this._isRtl="rtl"===this._dir.value}ngAfterViewInit(){this._platform.isBrowser&&this._updateDimensions();const e=this._getInput(Wi.END),i=this._getInput(Wi.START);this._isRange=!!e&&!!i,this._cdr.detectChanges();const r=this._getThumb(Wi.END);this._rippleRadius=r._ripple.radius,this._inputPadding=this._rippleRadius-this._knobRadius,this._isRange?this._initUIRange(e,i):this._initUINonRange(e),this._updateTrackUI(e),this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._observeHostResize(),this._cdr.detectChanges()}_initUINonRange(e){e.initProps(),e.initUI(),this._updateValueIndicatorUI(e),this._hasViewInitialized=!0,e._updateThumbUIByValue()}_initUIRange(e,i){e.initProps(),e.initUI(),i.initProps(),i.initUI(),e._updateMinMax(),i._updateMinMax(),e._updateStaticStyles(),i._updateStaticStyles(),this._updateValueIndicatorUIs(),this._hasViewInitialized=!0,e._updateThumbUIByValue(),i._updateThumbUIByValue()}ngOnDestroy(){this._dirChangeSubscription.unsubscribe(),this._resizeObserver?.disconnect(),this._resizeObserver=null}_onDirChange(){this._isRtl="rtl"===this._dir.value,this._isRange?this._onDirChangeRange():this._onDirChangeNonRange(),this._updateTickMarkUI()}_onDirChangeRange(){const e=this._getInput(Wi.END),i=this._getInput(Wi.START);e._setIsLeftThumb(),i._setIsLeftThumb(),e.translateX=e._calcTranslateXByValue(),i.translateX=i._calcTranslateXByValue(),e._updateStaticStyles(),i._updateStaticStyles(),e._updateWidthInactive(),i._updateWidthInactive(),e._updateThumbUIByValue(),i._updateThumbUIByValue()}_onDirChangeNonRange(){this._getInput(Wi.END)._updateThumbUIByValue()}_observeHostResize(){typeof ResizeObserver>"u"||!ResizeObserver||this._ngZone.runOutsideAngular(()=>{this._resizeObserver=new ResizeObserver(()=>{this._isActive()||(this._resizeTimer&&clearTimeout(this._resizeTimer),this._onResize())}),this._resizeObserver.observe(this._elementRef.nativeElement)})}_isActive(){return this._getThumb(Wi.START)._isActive||this._getThumb(Wi.END)._isActive}_getValue(e=Wi.END){const i=this._getInput(e);return i?i.value:this.min}_skipUpdate(){return!(!this._getInput(Wi.START)?._skipUIUpdate&&!this._getInput(Wi.END)?._skipUIUpdate)}_updateDimensions(){this._cachedWidth=this._elementRef.nativeElement.offsetWidth,this._cachedLeft=this._elementRef.nativeElement.getBoundingClientRect().left}_setTrackActiveStyles(e){const i=this._trackActive.nativeElement.style;i.left=e.left,i.right=e.right,i.transformOrigin=e.transformOrigin,i.transform=e.transform}_calcTickMarkTransform(e){return`translateX(${e*(this._tickMarkTrackWidth/(this._tickMarks.length-1))}px`}_onTranslateXChange(e){this._hasViewInitialized&&(this._updateThumbUI(e),this._updateTrackUI(e),this._updateOverlappingThumbUI(e))}_onTranslateXChangeBySideEffect(e,i){this._hasViewInitialized&&(e._updateThumbUIByValue(),i._updateThumbUIByValue())}_onValueChange(e){this._hasViewInitialized&&(this._updateValueIndicatorUI(e),this._updateTickMarkUI(),this._cdr.detectChanges())}_onMinMaxOrStepChange(){this._hasViewInitialized&&(this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._cdr.markForCheck())}_onResize(){if(this._hasViewInitialized){if(this._updateDimensions(),this._isRange){const e=this._getInput(Wi.END),i=this._getInput(Wi.START);e._updateThumbUIByValue(),i._updateThumbUIByValue(),e._updateStaticStyles(),i._updateStaticStyles(),e._updateMinMax(),i._updateMinMax(),e._updateWidthInactive(),i._updateWidthInactive()}else{const e=this._getInput(Wi.END);e&&e._updateThumbUIByValue()}this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._cdr.detectChanges()}}_areThumbsOverlapping(){const e=this._getInput(Wi.START),i=this._getInput(Wi.END);return!(!e||!i)&&i.translateX-e.translateX<20}_updateOverlappingThumbClassNames(e){const i=e.getSibling(),r=this._getThumb(e.thumbPosition);this._getThumb(i.thumbPosition)._hostElement.classList.remove("mdc-slider__thumb--top"),r._hostElement.classList.toggle("mdc-slider__thumb--top",this._thumbsOverlap)}_updateOverlappingThumbUI(e){!this._isRange||this._skipUpdate()||this._thumbsOverlap!==this._areThumbsOverlapping()&&(this._thumbsOverlap=!this._thumbsOverlap,this._updateOverlappingThumbClassNames(e))}_updateThumbUI(e){this._skipUpdate()||(this._getThumb(e.thumbPosition===Wi.END?Wi.END:Wi.START)._hostElement.style.transform=`translateX(${e.translateX}px)`)}_updateValueIndicatorUI(e){if(this._skipUpdate())return;const i=this.displayWith(e.value);if(this._hasViewInitialized?e._valuetext.set(i):e._hostElement.setAttribute("aria-valuetext",i),this.discrete){e.thumbPosition===Wi.START?this.startValueIndicatorText=i:this.endValueIndicatorText=i;const r=this._getThumb(e.thumbPosition);i.length<3?r._hostElement.classList.add("mdc-slider__thumb--short-value"):r._hostElement.classList.remove("mdc-slider__thumb--short-value")}}_updateValueIndicatorUIs(){const e=this._getInput(Wi.END),i=this._getInput(Wi.START);e&&this._updateValueIndicatorUI(e),i&&this._updateValueIndicatorUI(i)}_updateTickMarkTrackUI(){if(!this.showTickMarks||this._skipUpdate())return;const e=this._step&&this._step>0?this._step:1,r=(Math.floor(this.max/e)*e-this.min)/(this.max-this.min);this._tickMarkTrackWidth=this._cachedWidth*r-6}_updateTrackUI(e){this._skipUpdate()||(this._isRange?this._updateTrackUIRange(e):this._updateTrackUINonRange(e))}_updateTrackUIRange(e){const i=e.getSibling();if(!i||!this._cachedWidth)return;const r=Math.abs(i.translateX-e.translateX)/this._cachedWidth;this._setTrackActiveStyles(e._isLeftThumb&&this._cachedWidth?{left:"auto",right:this._cachedWidth-i.translateX+"px",transformOrigin:"right",transform:`scaleX(${r})`}:{left:`${i.translateX}px`,right:"auto",transformOrigin:"left",transform:`scaleX(${r})`})}_updateTrackUINonRange(e){this._setTrackActiveStyles(this._isRtl?{left:"auto",right:"0px",transformOrigin:"right",transform:`scaleX(${1-e.fillPercentage})`}:{left:"0px",right:"auto",transformOrigin:"left",transform:`scaleX(${e.fillPercentage})`})}_updateTickMarkUI(){if(!this.showTickMarks||void 0===this.step||void 0===this.min||void 0===this.max)return;const e=this.step>0?this.step:1;this._isRange?this._updateTickMarkUIRange(e):this._updateTickMarkUINonRange(e),this._isRtl&&this._tickMarks.reverse()}_updateTickMarkUINonRange(e){const i=this._getValue();let r=Math.max(Math.round((i-this.min)/e),0),s=Math.max(Math.round((this.max-i)/e),0);this._isRtl?r++:s++,this._tickMarks=Array(r).fill(ix.ACTIVE).concat(Array(s).fill(ix.INACTIVE))}_updateTickMarkUIRange(e){const i=this._getValue(),r=this._getValue(Wi.START),s=Math.max(Math.round((r-this.min)/e),0),l=Math.max(Math.round((i-r)/e)+1,0),u=Math.max(Math.round((this.max-i)/e),0);this._tickMarks=Array(s).fill(ix.INACTIVE).concat(Array(l).fill(ix.ACTIVE),Array(u).fill(ix.INACTIVE))}_getInput(e){return e===Wi.END&&this._input?this._input:this._inputs?.length?e===Wi.START?this._inputs.first:this._inputs.last:void 0}_getThumb(e){return e===Wi.END?this._thumbs?.last:this._thumbs?.first}_setTransition(e){this._hasAnimation=!this._platform.IOS&&e&&!this._noopAnimations,this._elementRef.nativeElement.classList.toggle("mat-mdc-slider-with-animation",this._hasAnimation)}_isCursorOnSliderThumb(e,i){const r=i.width/2,f=e.clientY-(i.y+r);return Math.pow(e.clientX-(i.x+r),2)+Math.pow(f,2)hR),multi:!0};let hR=(()=>{class n{get value(){return(0,o.Udg)(this._hostElement.value,0)}set value(e){const i=(e=isNaN(e)?0:e)+"";this._hasSetInitialValue?this._isActive||this._setValue(i):this._initialValue=i}_setValue(e){this._hostElement.value=e,this._updateThumbUIByValue(),this._slider._onValueChange(this),this._cdr.detectChanges(),this._slider._cdr.markForCheck()}get translateX(){return this._slider.min>=this._slider.max?(this._translateX=this._tickMarkOffset,this._translateX):(void 0===this._translateX&&(this._translateX=this._calcTranslateXByValue()),this._translateX)}set translateX(e){this._translateX=e}get min(){return(0,o.Udg)(this._hostElement.min,0)}set min(e){this._hostElement.min=e+"",this._cdr.detectChanges()}get max(){return(0,o.Udg)(this._hostElement.max,0)}set max(e){this._hostElement.max=e+"",this._cdr.detectChanges()}get step(){return(0,o.Udg)(this._hostElement.step,0)}set step(e){this._hostElement.step=e+"",this._cdr.detectChanges()}get disabled(){return(0,o.L39)(this._hostElement.disabled)}set disabled(e){this._hostElement.disabled=e,this._cdr.detectChanges(),this._slider.disabled!==this.disabled&&(this._slider.disabled=this.disabled)}get percentage(){return this._slider.min>=this._slider.max?this._slider._isRtl?1:0:(this.value-this._slider.min)/(this._slider.max-this._slider.min)}get fillPercentage(){return this._slider._cachedWidth?0===this._translateX?0:this.translateX/this._slider._cachedWidth:this._slider._isRtl?1:0}_setIsFocused(e){this._isFocused=e}constructor(e,i,r,s){this._ngZone=e,this._elementRef=i,this._cdr=r,this._slider=s,this.valueChange=new o.bkB,this.dragStart=new o.bkB,this.dragEnd=new o.bkB,this.thumbPosition=Wi.END,this._valuetext=(0,o.vPA)(""),this._knobRadius=8,this._tickMarkOffset=3,this._isActive=!1,this._isFocused=!1,this._hasSetInitialValue=!1,this._destroyed=new mi.B,this._skipUIUpdate=!1,this._onTouchedFn=()=>{},this._isControlInitialized=!1,this._platform=(0,o.WQX)(Io),this._hostElement=i.nativeElement,this._ngZone.runOutsideAngular(()=>{this._hostElement.addEventListener("pointerdown",this._onPointerDown.bind(this)),this._hostElement.addEventListener("pointermove",this._onPointerMove.bind(this)),this._hostElement.addEventListener("pointerup",this._onPointerUp.bind(this))})}ngOnDestroy(){this._hostElement.removeEventListener("pointerdown",this._onPointerDown),this._hostElement.removeEventListener("pointermove",this._onPointerMove),this._hostElement.removeEventListener("pointerup",this._onPointerUp),this._destroyed.next(),this._destroyed.complete(),this.dragStart.complete(),this.dragEnd.complete()}initProps(){this._updateWidthInactive(),this.disabled!==this._slider.disabled&&(this._slider.disabled=!0),this.step=this._slider.step,this.min=this._slider.min,this.max=this._slider.max,this._initValue()}initUI(){this._updateThumbUIByValue()}_initValue(){this._hasSetInitialValue=!0,void 0===this._initialValue?this.value=this._getDefaultValue():(this._hostElement.value=this._initialValue,this._updateThumbUIByValue(),this._slider._onValueChange(this),this._cdr.detectChanges())}_getDefaultValue(){return this.min}_onBlur(){this._setIsFocused(!1),this._onTouchedFn()}_onFocus(){this._slider._setTransition(!1),this._slider._updateTrackUI(this),this._setIsFocused(!0)}_onChange(){this.valueChange.emit(this.value),this._isActive&&this._updateThumbUIByValue({withAnimation:!0})}_onInput(){this._onChangeFn?.(this.value),(this._slider.step||!this._isActive)&&this._updateThumbUIByValue({withAnimation:!0}),this._slider._onValueChange(this)}_onNgControlValueChange(){(!this._isActive||!this._isFocused)&&(this._slider._onValueChange(this),this._updateThumbUIByValue()),this._slider.disabled=this._formControl.disabled}_onPointerDown(e){if(!this.disabled&&0===e.button){if(this._platform.IOS){const i=this._slider._isCursorOnSliderThumb(e,this._slider._getThumb(this.thumbPosition)._hostElement.getBoundingClientRect());return this._isActive=i,this._updateWidthActive(),void this._slider._updateDimensions()}this._isActive=!0,this._setIsFocused(!0),this._updateWidthActive(),this._slider._updateDimensions(),this._slider.step||this._updateThumbUIByPointerEvent(e,{withAnimation:!0}),this.disabled||(this._handleValueCorrection(e),this.dragStart.emit({source:this,parent:this._slider,value:this.value}))}}_handleValueCorrection(e){this._skipUIUpdate=!0,setTimeout(()=>{this._skipUIUpdate=!1,this._fixValue(e)},0)}_fixValue(e){const i=e.clientX-this._slider._cachedLeft,r=this._slider._cachedWidth,s=0===this._slider.step?1:this._slider.step,l=Math.floor((this._slider.max-this._slider.min)/s),p=Math.round((this._slider._isRtl?1-i/r:i/r)*l)/l*(this._slider.max-this._slider.min)+this._slider.min,m=Math.round(p/s)*s;if(m===this.value)return this._slider._onValueChange(this),void(this._slider.step>0?this._updateThumbUIByValue():this._updateThumbUIByPointerEvent(e,{withAnimation:this._slider._hasAnimation}));this.value=m,this.valueChange.emit(this.value),this._onChangeFn?.(this.value),this._slider._onValueChange(this),this._slider.step>0?this._updateThumbUIByValue():this._updateThumbUIByPointerEvent(e,{withAnimation:this._slider._hasAnimation})}_onPointerMove(e){!this._slider.step&&this._isActive&&this._updateThumbUIByPointerEvent(e)}_onPointerUp(){this._isActive&&(this._isActive=!1,this._platform.SAFARI&&this._setIsFocused(!1),this.dragEnd.emit({source:this,parent:this._slider,value:this.value}),setTimeout(()=>this._updateWidthInactive(),this._platform.IOS?10:0))}_clamp(e){const i=this._tickMarkOffset;return Math.max(Math.min(e,this._slider._cachedWidth-this._tickMarkOffset),i)}_calcTranslateXByValue(){return this._slider._isRtl?(1-this.percentage)*(this._slider._cachedWidth-2*this._tickMarkOffset)+this._tickMarkOffset:this.percentage*(this._slider._cachedWidth-2*this._tickMarkOffset)+this._tickMarkOffset}_calcTranslateXByPointerEvent(e){return e.clientX-this._slider._cachedLeft}_updateWidthActive(){}_updateWidthInactive(){this._hostElement.style.padding=`0 ${this._slider._inputPadding}px`,this._hostElement.style.width=`calc(100% + ${this._slider._inputPadding-2*this._tickMarkOffset}px)`,this._hostElement.style.left=`-${this._slider._rippleRadius-this._tickMarkOffset}px`}_updateThumbUIByValue(e){this.translateX=this._clamp(this._calcTranslateXByValue()),this._updateThumbUI(e)}_updateThumbUIByPointerEvent(e,i){this.translateX=this._clamp(this._calcTranslateXByPointerEvent(e)),this._updateThumbUI(i)}_updateThumbUI(e){this._slider._setTransition(!!e?.withAnimation),this._slider._onTranslateXChange(this)}writeValue(e){(this._isControlInitialized||null!==e)&&(this.value=e)}registerOnChange(e){this._onChangeFn=e,this._isControlInitialized=!0}registerOnTouched(e){this._onTouchedFn=e}setDisabledState(e){this.disabled=e}focus(){this._hostElement.focus()}blur(){this._hostElement.blur()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.SKi),o.rXU(o.aKT),o.rXU(o.gRc),o.rXU(uR))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["input","matSliderThumb",""]],hostAttrs:["type","range",1,"mdc-slider__input"],hostVars:1,hostBindings:function(i,r){1&i&&o.bIt("change",function(){return r._onChange()})("input",function(){return r._onInput()})("blur",function(){return r._onBlur()})("focus",function(){return r._onFocus()}),2&i&&o.BMQ("aria-valuetext",r._valuetext())},inputs:{value:[2,"value","value",o.Udg]},outputs:{valueChange:"valueChange",dragStart:"dragStart",dragEnd:"dragEnd"},exportAs:["matSliderThumb"],standalone:!0,features:[o.Jv_([Fce,{provide:rq,useExisting:n}]),o.GFd]})}}return n})();const lq=$f({passive:!0});let kce=(()=>{class n{constructor(e,i){this._platform=e,this._ngZone=i,this._monitoredElements=new Map}monitor(e){if(!this._platform.isBrowser)return gh;const i=Mi(e),r=this._monitoredElements.get(i);if(r)return r.subject;const s=new mi.B,l="cdk-text-field-autofilled",u=f=>{"cdk-text-field-autofill-start"!==f.animationName||i.classList.contains(l)?"cdk-text-field-autofill-end"===f.animationName&&i.classList.contains(l)&&(i.classList.remove(l),this._ngZone.run(()=>s.next({target:f.target,isAutofilled:!1}))):(i.classList.add(l),this._ngZone.run(()=>s.next({target:f.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{i.addEventListener("animationstart",u,lq),i.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(i,{subject:s,unlisten:()=>{i.removeEventListener("animationstart",u,lq)}}),s}stopMonitoring(e){const i=Mi(e),r=this._monitoredElements.get(i);r&&(r.unlisten(),r.subject.complete(),i.classList.remove("cdk-text-field-autofill-monitored"),i.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(i))}ngOnDestroy(){this._monitoredElements.forEach((e,i)=>this.stopMonitoring(i))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Io),o.KVO(o.SKi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),cq=(()=>{class n{get minRows(){return this._minRows}set minRows(e){this._minRows=jn(e),this._setMinHeight()}get maxRows(){return this._maxRows}set maxRows(e){this._maxRows=jn(e),this._setMaxHeight()}get enabled(){return this._enabled}set enabled(e){this._enabled!==e&&((this._enabled=e)?this.resizeToFitContent(!0):this.reset())}get placeholder(){return this._textareaElement.placeholder}set placeholder(e){this._cachedPlaceholderHeight=void 0,e?this._textareaElement.setAttribute("placeholder",e):this._textareaElement.removeAttribute("placeholder"),this._cacheTextareaPlaceholderHeight()}constructor(e,i,r,s){this._elementRef=e,this._platform=i,this._ngZone=r,this._destroyed=new mi.B,this._enabled=!0,this._previousMinRows=-1,this._isViewInited=!1,this._handleFocusEvent=l=>{this._hasFocus="focus"===l.type},this._document=s,this._textareaElement=this._elementRef.nativeElement}_setMinHeight(){const e=this.minRows&&this._cachedLineHeight?this.minRows*this._cachedLineHeight+"px":null;e&&(this._textareaElement.style.minHeight=e)}_setMaxHeight(){const e=this.maxRows&&this._cachedLineHeight?this.maxRows*this._cachedLineHeight+"px":null;e&&(this._textareaElement.style.maxHeight=e)}ngAfterViewInit(){this._platform.isBrowser&&(this._initialHeight=this._textareaElement.style.height,this.resizeToFitContent(),this._ngZone.runOutsideAngular(()=>{Os(this._getWindow(),"resize").pipe(h_(16),bo(this._destroyed)).subscribe(()=>this.resizeToFitContent(!0)),this._textareaElement.addEventListener("focus",this._handleFocusEvent),this._textareaElement.addEventListener("blur",this._handleFocusEvent)}),this._isViewInited=!0,this.resizeToFitContent(!0))}ngOnDestroy(){this._textareaElement.removeEventListener("focus",this._handleFocusEvent),this._textareaElement.removeEventListener("blur",this._handleFocusEvent),this._destroyed.next(),this._destroyed.complete()}_cacheTextareaLineHeight(){if(this._cachedLineHeight)return;let e=this._textareaElement.cloneNode(!1);e.rows=1,e.style.position="absolute",e.style.visibility="hidden",e.style.border="none",e.style.padding="0",e.style.height="",e.style.minHeight="",e.style.maxHeight="",e.style.overflow="hidden",this._textareaElement.parentNode.appendChild(e),this._cachedLineHeight=e.clientHeight,e.remove(),this._setMinHeight(),this._setMaxHeight()}_measureScrollHeight(){const e=this._textareaElement,i=e.style.marginBottom||"",r=this._platform.FIREFOX,s=r&&this._hasFocus,l=r?"cdk-textarea-autosize-measuring-firefox":"cdk-textarea-autosize-measuring";s&&(e.style.marginBottom=`${e.clientHeight}px`),e.classList.add(l);const u=e.scrollHeight-4;return e.classList.remove(l),s&&(e.style.marginBottom=i),u}_cacheTextareaPlaceholderHeight(){if(!this._isViewInited||null!=this._cachedPlaceholderHeight)return;if(!this.placeholder)return void(this._cachedPlaceholderHeight=0);const e=this._textareaElement.value;this._textareaElement.value=this._textareaElement.placeholder,this._cachedPlaceholderHeight=this._measureScrollHeight(),this._textareaElement.value=e}ngDoCheck(){this._platform.isBrowser&&this.resizeToFitContent()}resizeToFitContent(e=!1){if(!this._enabled||(this._cacheTextareaLineHeight(),this._cacheTextareaPlaceholderHeight(),!this._cachedLineHeight))return;const i=this._elementRef.nativeElement,r=i.value;if(!e&&this._minRows===this._previousMinRows&&r===this._previousValue)return;const s=this._measureScrollHeight(),l=Math.max(s,this._cachedPlaceholderHeight||0);i.style.height=`${l}px`,this._ngZone.runOutsideAngular(()=>{typeof requestAnimationFrame<"u"?requestAnimationFrame(()=>this._scrollToCaretPosition(i)):setTimeout(()=>this._scrollToCaretPosition(i))}),this._previousValue=r,this._previousMinRows=this._minRows}reset(){void 0!==this._initialHeight&&(this._textareaElement.style.height=this._initialHeight)}_noopInputHandler(){}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_scrollToCaretPosition(e){const{selectionStart:i,selectionEnd:r}=e;!this._destroyed.isStopped&&this._hasFocus&&e.setSelectionRange(i,r)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Io),o.rXU(o.SKi),o.rXU(V,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["textarea","cdkTextareaAutosize",""]],hostAttrs:["rows","1",1,"cdk-textarea-autosize"],hostBindings:function(i,r){1&i&&o.bIt("input",function(){return r._noopInputHandler()})},inputs:{minRows:[0,"cdkAutosizeMinRows","minRows"],maxRows:[0,"cdkAutosizeMaxRows","maxRows"],enabled:[2,"cdkTextareaAutosize","enabled",o.L39],placeholder:"placeholder"},exportAs:["cdkTextareaAutosize"],standalone:!0,features:[o.GFd]})}}return n})();const Rce=new o.nKC("MAT_INPUT_VALUE_ACCESSOR"),Pce=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let Oce=0,t0=(()=>{class n{get disabled(){return this._disabled}set disabled(e){this._disabled=gi(e),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(e){this._id=e||this._uid}get required(){return this._required??this.ngControl?.control?.hasValidator(v8.required)??!1}set required(e){this._required=gi(e)}get type(){return this._type}set type(e){this._type=e||"text",this._validateType(),!this._isTextarea&&Dy().has(this._type)&&(this._elementRef.nativeElement.type=this._type),this._ensureWheelDefaultBehavior()}get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}get value(){return this._inputValueAccessor.value}set value(e){e!==this.value&&(this._inputValueAccessor.value=e,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(e){this._readonly=gi(e)}get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}constructor(e,i,r,s,l,u,f,p,m,_){this._elementRef=e,this._platform=i,this.ngControl=r,this._autofillMonitor=p,this._ngZone=m,this._formField=_,this._uid="mat-input-"+Oce++,this._webkitBlinkWheelListenerAttached=!1,this.focused=!1,this.stateChanges=new mi.B,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(F=>Dy().has(F)),this._iOSKeyupListener=F=>{const D=F.target;!D.value&&0===D.selectionStart&&0===D.selectionEnd&&(D.setSelectionRange(1,1),D.setSelectionRange(0,0))},this._webkitBlinkWheelListener=()=>{};const b=this._elementRef.nativeElement,w=b.nodeName.toLowerCase();this._inputValueAccessor=f||b,this._previousNativeValue=this.value,this.id=this.id,i.IOS&&m.runOutsideAngular(()=>{e.nativeElement.addEventListener("keyup",this._iOSKeyupListener)}),this._errorStateTracker=new au(u,r,l,s,this.stateChanges),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===w,this._isTextarea="textarea"===w,this._isInFormField=!!_,this._isNativeSelect&&(this.controlType=b.multiple?"mat-native-select-multiple":"mat-native-select")}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(e=>{this.autofilled=e.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._platform.IOS&&this._elementRef.nativeElement.removeEventListener("keyup",this._iOSKeyupListener),this._webkitBlinkWheelListenerAttached&&this._elementRef.nativeElement.removeEventListener("wheel",this._webkitBlinkWheelListener)}ngDoCheck(){this.ngControl&&(this.updateErrorState(),null!==this.ngControl.disabled&&this.ngControl.disabled!==this.disabled&&(this.disabled=this.ngControl.disabled,this.stateChanges.next())),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(e){this._elementRef.nativeElement.focus(e)}updateErrorState(){this._errorStateTracker.updateErrorState()}_focusChanged(e){e!==this.focused&&(this.focused=e,this.stateChanges.next())}_onInput(){}_dirtyCheckNativeValue(){const e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}_dirtyCheckPlaceholder(){const e=this._getPlaceholder();if(e!==this._previousPlaceholder){const i=this._elementRef.nativeElement;this._previousPlaceholder=e,e?i.setAttribute("placeholder",e):i.removeAttribute("placeholder")}}_getPlaceholder(){return this.placeholder||null}_validateType(){Pce.indexOf(this._type)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let e=this._elementRef.nativeElement.validity;return e&&e.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const e=this._elementRef.nativeElement,i=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&i&&i.label)}return this.focused||!this.empty}setDescribedByIds(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){const e=this._elementRef.nativeElement;return this._isNativeSelect&&(e.multiple||e.size>1)}_ensureWheelDefaultBehavior(){!this._webkitBlinkWheelListenerAttached&&"number"===this._type&&(this._platform.BLINK||this._platform.WEBKIT)&&(this._ngZone.runOutsideAngular(()=>{this._elementRef.nativeElement.addEventListener("wheel",this._webkitBlinkWheelListener)}),this._webkitBlinkWheelListenerAttached=!0),this._webkitBlinkWheelListenerAttached&&"number"!==this._type&&(this._elementRef.nativeElement.removeEventListener("wheel",this._webkitBlinkWheelListener),this._webkitBlinkWheelListenerAttached=!0)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Io),o.rXU(Kh,10),o.rXU(KS,8),o.rXU(YS,8),o.rXU(mI),o.rXU(Rce,10),o.rXU(kce),o.rXU(o.SKi),o.rXU($8,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-mdc-input-element"],hostVars:18,hostBindings:function(i,r){1&i&&o.bIt("focus",function(){return r._focusChanged(!0)})("blur",function(){return r._focusChanged(!1)})("input",function(){return r._onInput()}),2&i&&(o.Mr5("id",r.id)("disabled",r.disabled)("required",r.required),o.BMQ("name",r.name||null)("readonly",r.readonly&&!r._isNativeSelect||null)("aria-invalid",r.empty&&r.required?null:r.errorState)("aria-required",r.required)("id",r.id),o.AVh("mat-input-server",r._isServer)("mat-mdc-form-field-textarea-control",r._isInFormField&&r._isTextarea)("mat-mdc-form-field-input-control",r._isInFormField)("mdc-text-field__input",r._isInFormField)("mat-mdc-native-select-inline",r._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],standalone:!0,features:[o.Jv_([{provide:j8,useExisting:n}]),o.OA$]})}}return n})();function dq(){return(0,Ir.N)((n,t)=>{n.subscribe((0,lr._)(t,J0.l))})}function uq(n,t){return t?e=>$C(t.pipe(ms(1),dq()),e.pipe(uq(n))):Xs((e,i)=>Rr(n(e,i)).pipe(ms(1),function Nce(n){return(0,qn.T)(()=>n)}(e)))}function hq(n,t=tu){const e=Gf(n,t);return uq(()=>e)}const Lce=["mat-menu-item",""],Uce=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],Vce=["mat-icon, [matMenuItemIcon]","*"];function Hce(n,t){1&n&&(o.qSk(),o.j41(0,"svg",2),o.nrm(1,"polygon",3),o.k0s())}const Qce=["*"];function zce(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",0),o.bIt("keydown",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._handleKeydown(r))})("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.closed.emit("click"))})("@transformMenu.start",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._onAnimationStart(r))})("@transformMenu.done",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s._onAnimationDone(r))}),o.j41(1,"div",1),o.SdG(2),o.k0s()()}if(2&n){const e=o.XpG();o.HbH(e._classList),o.Y8G("id",e.panelId)("@transformMenu",e._panelAnimationState),o.BMQ("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}const q8=new o.nKC("MAT_MENU_PANEL");let fR=(()=>{class n{constructor(e,i,r,s,l){this._elementRef=e,this._document=i,this._focusMonitor=r,this._parentMenu=s,this._changeDetectorRef=l,this.role="menuitem",this.disabled=!1,this.disableRipple=!1,this._hovered=new mi.B,this._focused=new mi.B,this._highlighted=!1,this._triggersSubmenu=!1,s?.addItem?.(this)}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,i):this._getHostElement().focus(i),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){const e=this._elementRef.nativeElement.cloneNode(!0),i=e.querySelectorAll("mat-icon, .material-icons");for(let r=0;r enter",(0,Nn.i0)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,Nn.iF)({opacity:1,transform:"scale(1)"}))),(0,Nn.kY)("* => void",(0,Nn.i0)("100ms 25ms linear",(0,Nn.iF)({opacity:0})))]),fadeInItems:(0,Nn.hZ)("fadeInItems",[(0,Nn.wk)("showing",(0,Nn.iF)({opacity:1})),(0,Nn.kY)("void => *",[(0,Nn.iF)({opacity:0}),(0,Nn.i0)("400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let jce=0;const $ce=new o.nKC("mat-menu-default-options",{providedIn:"root",factory:function qce(){return{overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"}}});let Yh=(()=>{class n{get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}set panelClass(e){const i=this._previousPanelClass,r={...this._classList};i&&i.length&&i.split(" ").forEach(s=>{r[s]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(s=>{r[s]=!0}),this._elementRef.nativeElement.className=""),this._classList=r}get classList(){return this.panelClass}set classList(e){this.panelClass=e}constructor(e,i,r,s){this._elementRef=e,this._changeDetectorRef=s,this._elevationPrefix="mat-elevation-z",this._baseElevation=null,this._directDescendantItems=new o.rOR,this._classList={},this._panelAnimationState="void",this._animationDone=new mi.B,this.closed=new o.bkB,this.close=this.closed,this.panelId="mat-menu-panel-"+jce++,this._injector=(0,o.WQX)(o.zZn),this.overlayPanelClass=r.overlayPanelClass||"",this._xPosition=r.xPosition,this._yPosition=r.yPosition,this.backdropClass=r.backdropClass,this.overlapTrigger=r.overlapTrigger,this.hasBackdrop=r.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new ou(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(su(this._directDescendantItems),Qp(e=>ql(...e.map(i=>i._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{const i=this._keyManager;if("enter"===this._panelAnimationState&&i.activeItem?._hasFocus()){const r=e.toArray(),s=Math.max(0,Math.min(r.length-1,i.activeItemIndex||0));r[s]&&!r[s].disabled?i.setActiveItem(s):i.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusRef?.destroy()}_hovered(){return this._directDescendantItems.changes.pipe(su(this._directDescendantItems),Qp(i=>ql(...i.map(r=>r._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){const i=e.keyCode,r=this._keyManager;switch(i){case 27:Kl(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&"ltr"===this.direction&&this.closed.emit("keydown");break;case 39:this.parentMenu&&"rtl"===this.direction&&this.closed.emit("keydown");break;default:return(38===i||40===i)&&r.setFocusOrigin("keyboard"),void r.onKeydown(e)}e.stopPropagation()}focusFirstItem(e="program"){this._firstItemFocusRef?.destroy(),this._firstItemFocusRef=(0,o.mal)(()=>{let i=null;if(this._directDescendantItems.length&&(i=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),!i||!i.contains(document.activeElement)){const r=this._keyManager;r.setFocusOrigin(e).setFirstItemActive(),!r.activeItem&&i&&i.focus()}},{injector:this._injector})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){if(null===this._baseElevation){const u=("function"==typeof getComputedStyle?getComputedStyle(this._elementRef.nativeElement):null)?.getPropertyValue("--mat-menu-base-elevation-level")||"8";this._baseElevation=parseInt(u)}const i=Math.min(this._baseElevation+e,24),r=`${this._elevationPrefix}${i}`,s=Object.keys(this._classList).find(l=>l.startsWith(this._elevationPrefix));if(!s||s===this._previousElevation){const l={...this._classList};this._previousElevation&&(l[this._previousElevation]=!1),l[r]=!0,this._previousElevation=r,this._classList=l}}setPositionClasses(e=this.xPosition,i=this.yPosition){this._classList={...this._classList,"mat-menu-before":"before"===e,"mat-menu-after":"after"===e,"mat-menu-above":"above"===i,"mat-menu-below":"below"===i},this._changeDetectorRef?.markForCheck()}_startAnimation(){this._panelAnimationState="enter"}_resetAnimation(){this._panelAnimationState="void"}_onAnimationDone(e){this._animationDone.next(e),this._isAnimating=!1}_onAnimationStart(e){this._isAnimating=!0,"enter"===e.toState&&0===this._keyManager.activeItemIndex&&(e.element.scrollTop=0)}_updateDirectDescendants(){this._allItems.changes.pipe(su(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(i=>i._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi),o.rXU($ce),o.rXU(o.gRc))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-menu"]],contentQueries:function(i,r,s){if(1&i&&(o.wni(s,Gce,5),o.wni(s,fR,5),o.wni(s,fR,4)),2&i){let l;o.mGM(l=o.lsd())&&(r.lazyContent=l.first),o.mGM(l=o.lsd())&&(r._allItems=l),o.mGM(l=o.lsd())&&(r.items=l)}},viewQuery:function(i,r){if(1&i&&o.GBs(o.C4Q,5),2&i){let s;o.mGM(s=o.lsd())&&(r.templateRef=s.first)}},hostVars:3,hostBindings:function(i,r){2&i&&o.BMQ("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},inputs:{backdropClass:"backdropClass",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:[2,"overlapTrigger","overlapTrigger",o.L39],hasBackdrop:[2,"hasBackdrop","hasBackdrop",e=>null==e?null:(0,o.L39)(e)],panelClass:[0,"class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"},exportAs:["matMenu"],standalone:!0,features:[o.Jv_([{provide:q8,useExisting:n}]),o.GFd,o.aNF],ngContentSelectors:Qce,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-mdc-menu-panel","mat-mdc-elevation-specific",3,"keydown","click","id"],[1,"mat-mdc-menu-content"]],template:function(i,r){1&i&&(o.NAR(),o.DNE(0,zce,3,7,"ng-template"))},styles:['mat-menu{display:none}.mat-mdc-menu-content{margin:0;padding:8px 0;outline:0}.mat-mdc-menu-content,.mat-mdc-menu-content .mat-mdc-menu-item .mat-mdc-menu-item-text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;flex:1;white-space:normal;font-family:var(--mat-menu-item-label-text-font, var(--mat-app-label-large-font));line-height:var(--mat-menu-item-label-text-line-height, var(--mat-app-label-large-line-height));font-size:var(--mat-menu-item-label-text-size, var(--mat-app-label-large-size));letter-spacing:var(--mat-menu-item-label-text-tracking, var(--mat-app-label-large-tracking));font-weight:var(--mat-menu-item-label-text-weight, var(--mat-app-label-large-weight))}.mat-mdc-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;outline:0;border-radius:var(--mat-menu-container-shape, var(--mat-app-corner-extra-small));background-color:var(--mat-menu-container-color, var(--mat-app-surface-container));will-change:transform,opacity}.mat-mdc-menu-panel.ng-animating{pointer-events:none}.mat-mdc-menu-panel.ng-animating:has(.mat-mdc-menu-content:empty){display:none}.cdk-high-contrast-active .mat-mdc-menu-panel{outline:solid 1px}.mat-mdc-menu-panel .mat-divider{color:var(--mat-menu-divider-color, var(--mat-app-surface-variant));margin-bottom:var(--mat-menu-divider-bottom-spacing);margin-top:var(--mat-menu-divider-top-spacing)}.mat-mdc-menu-item{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;padding-left:var(--mat-menu-item-leading-spacing);padding-right:var(--mat-menu-item-trailing-spacing);-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer;width:100%;text-align:left;box-sizing:border-box;color:inherit;font-size:inherit;background:none;text-decoration:none;margin:0;min-height:48px}[dir=rtl] .mat-mdc-menu-item{padding-right:var(--mat-menu-item-leading-spacing);padding-left:var(--mat-menu-item-trailing-spacing)}.mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-leading-spacing);padding-right:var(--mat-menu-item-with-icon-trailing-spacing)}[dir=rtl] .mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-right:var(--mat-menu-item-with-icon-leading-spacing);padding-left:var(--mat-menu-item-with-icon-trailing-spacing)}.mat-mdc-menu-item::-moz-focus-inner{border:0}.mat-mdc-menu-item,.mat-mdc-menu-item:visited,.mat-mdc-menu-item:link{color:var(--mat-menu-item-label-text-color, var(--mat-app-on-surface))}.mat-mdc-menu-item .mat-icon-no-color,.mat-mdc-menu-item .mat-mdc-menu-submenu-icon{color:var(--mat-menu-item-icon-color, var(--mat-app-on-surface-variant))}.mat-mdc-menu-item[disabled]{cursor:default;opacity:.38}.mat-mdc-menu-item[disabled]::after{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.mat-mdc-menu-item:focus{outline:0}.mat-mdc-menu-item .mat-icon{flex-shrink:0;margin-right:var(--mat-menu-item-spacing);height:var(--mat-menu-item-icon-size);width:var(--mat-menu-item-icon-size)}[dir=rtl] .mat-mdc-menu-item{text-align:right}[dir=rtl] .mat-mdc-menu-item .mat-icon{margin-right:0;margin-left:var(--mat-menu-item-spacing)}.mat-mdc-menu-item:not([disabled]):hover{background-color:var(--mat-menu-item-hover-state-layer-color)}.mat-mdc-menu-item:not([disabled]).cdk-program-focused,.mat-mdc-menu-item:not([disabled]).cdk-keyboard-focused,.mat-mdc-menu-item:not([disabled]).mat-mdc-menu-item-highlighted{background-color:var(--mat-menu-item-focus-state-layer-color)}.cdk-high-contrast-active .mat-mdc-menu-item{margin-top:1px}.mat-mdc-menu-submenu-icon{width:var(--mat-menu-item-icon-size);height:10px;fill:currentColor;padding-left:var(--mat-menu-item-spacing)}[dir=rtl] .mat-mdc-menu-submenu-icon{padding-right:var(--mat-menu-item-spacing);padding-left:0}[dir=rtl] .mat-mdc-menu-submenu-icon polygon{transform:scaleX(-1);transform-origin:center}.cdk-high-contrast-active .mat-mdc-menu-submenu-icon{fill:CanvasText}.mat-mdc-menu-item .mat-mdc-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}'],encapsulation:2,data:{animation:[pR.transformMenu,pR.fadeInItems]},changeDetection:0})}}return n})();const fq=new o.nKC("mat-menu-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.reposition()}}),pq=$f({passive:!0});let rx=(()=>{class n{get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(e){this.menu=e}get menu(){return this._menu}set menu(e){e!==this._menu&&(this._menu=e,this._menuCloseSubscription.unsubscribe(),e&&(this._menuCloseSubscription=e.close.subscribe(i=>{this._destroyMenu(i),("click"===i||"tab"===i)&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(i)})),this._menuItemInstance?._setTriggersSubmenu(this.triggersSubmenu()))}constructor(e,i,r,s,l,u,f,p,m){this._overlay=e,this._element=i,this._viewContainerRef=r,this._menuItemInstance=u,this._dir=f,this._focusMonitor=p,this._ngZone=m,this._overlayRef=null,this._menuOpen=!1,this._closingActionsSubscription=un.yU.EMPTY,this._hoverSubscription=un.yU.EMPTY,this._menuCloseSubscription=un.yU.EMPTY,this._changeDetectorRef=(0,o.WQX)(o.gRc),this._handleTouchStart=_=>{T_(_)||(this._openedBy="touch")},this._openedBy=void 0,this.restoreFocus=!0,this.menuOpened=new o.bkB,this.onMenuOpen=this.menuOpened,this.menuClosed=new o.bkB,this.onMenuClose=this.menuClosed,this._scrollStrategy=s,this._parentMaterialMenu=l instanceof Yh?l:void 0,i.nativeElement.addEventListener("touchstart",this._handleTouchStart,pq)}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null),this._element.nativeElement.removeEventListener("touchstart",this._handleTouchStart,pq),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._hoverSubscription.unsubscribe()}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this.menu)}toggleMenu(){return this._menuOpen?this.closeMenu():this.openMenu()}openMenu(){const e=this.menu;if(this._menuOpen||!e)return;const i=this._createOverlay(e),r=i.getConfig(),s=r.positionStrategy;this._setPosition(e,s),r.hasBackdrop=null==e.hasBackdrop?!this.triggersSubmenu():e.hasBackdrop,i.attach(this._getPortal(e)),e.lazyContent&&e.lazyContent.attach(this.menuData),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this.closeMenu()),this._initMenu(e),e instanceof Yh&&(e._startAnimation(),e._directDescendantItems.changes.pipe(bo(e.close)).subscribe(()=>{s.withLockedPosition(!1).reapplyLastPosition(),s.withLockedPosition(!0)}))}closeMenu(){this.menu?.close.emit()}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}updatePosition(){this._overlayRef?.updatePosition()}_destroyMenu(e){if(!this._overlayRef||!this.menuOpen)return;const i=this.menu;this._closingActionsSubscription.unsubscribe(),this._overlayRef.detach(),this.restoreFocus&&("keydown"===e||!this._openedBy||!this.triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,i instanceof Yh?(i._resetAnimation(),i.lazyContent?i._animationDone.pipe(hr(r=>"void"===r.toState),ms(1),bo(i.lazyContent._attached)).subscribe({next:()=>i.lazyContent.detach(),complete:()=>this._setIsMenuOpen(!1)}):this._setIsMenuOpen(!1)):(this._setIsMenuOpen(!1),i?.lazyContent?.detach())}_initMenu(e){e.parentMenu=this.triggersSubmenu()?this._parentMaterialMenu:void 0,e.direction=this.dir,this._setMenuElevation(e),e.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0)}_setMenuElevation(e){if(e.setElevation){let i=0,r=e.parentMenu;for(;r;)i++,r=r.parentMenu;e.setElevation(i)}}_setIsMenuOpen(e){e!==this._menuOpen&&(this._menuOpen=e,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this.triggersSubmenu()&&this._menuItemInstance._setHighlighted(e),this._changeDetectorRef.markForCheck())}_createOverlay(e){if(!this._overlayRef){const i=this._getOverlayConfig(e);this._subscribeToPositions(e,i.positionStrategy),this._overlayRef=this._overlay.create(i),this._overlayRef.keydownEvents().subscribe()}return this._overlayRef}_getOverlayConfig(e){return new gm({positionStrategy:this._overlay.position().flexibleConnectedTo(this._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:e.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:e.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir})}_subscribeToPositions(e,i){e.setPositionClasses&&i.positionChanges.subscribe(r=>{const s="start"===r.connectionPair.overlayX?"after":"before",l="top"===r.connectionPair.overlayY?"below":"above";this._ngZone?this._ngZone.run(()=>e.setPositionClasses(s,l)):e.setPositionClasses(s,l)})}_setPosition(e,i){let[r,s]="before"===e.xPosition?["end","start"]:["start","end"],[l,u]="above"===e.yPosition?["bottom","top"]:["top","bottom"],[f,p]=[l,u],[m,_]=[r,s],b=0;if(this.triggersSubmenu()){if(_=r="before"===e.xPosition?"start":"end",s=m="end"===r?"start":"end",this._parentMaterialMenu){if(null==this._parentInnerPadding){const w=this._parentMaterialMenu.items.first;this._parentInnerPadding=w?w._getHostElement().offsetTop:0}b="bottom"===l?this._parentInnerPadding:-this._parentInnerPadding}}else e.overlapTrigger||(f="top"===l?"bottom":"top",p="top"===u?"bottom":"top");i.withPositions([{originX:r,originY:f,overlayX:m,overlayY:l,offsetY:b},{originX:s,originY:f,overlayX:_,overlayY:l,offsetY:b},{originX:r,originY:p,overlayX:m,overlayY:u,offsetY:-b},{originX:s,originY:p,overlayX:_,overlayY:u,offsetY:-b}])}_menuClosingActions(){const e=this._overlayRef.backdropClick(),i=this._overlayRef.detachments();return ql(e,this._parentMaterialMenu?this._parentMaterialMenu.closed:Mo(),this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(hr(l=>l!==this._menuItemInstance),hr(()=>this._menuOpen)):Mo(),i)}_handleMousedown(e){vm(e)||(this._openedBy=0===e.button?"mouse":void 0,this.triggersSubmenu()&&e.preventDefault())}_handleKeydown(e){const i=e.keyCode;(13===i||32===i)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(39===i&&"ltr"===this.dir||37===i&&"rtl"===this.dir)&&(this._openedBy="keyboard",this.openMenu())}_handleClick(e){this.triggersSubmenu()?(e.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){!this.triggersSubmenu()||!this._parentMaterialMenu||(this._hoverSubscription=this._parentMaterialMenu._hovered().pipe(hr(e=>e===this._menuItemInstance&&!e.disabled),hq(0,u_)).subscribe(()=>{this._openedBy="mouse",this.menu instanceof Yh&&this.menu._isAnimating?this.menu._animationDone.pipe(ms(1),hq(0,u_),bo(this._parentMaterialMenu._hovered())).subscribe(()=>this.openMenu()):this.openMenu()}))}_getPortal(e){return(!this._portal||this._portal.templateRef!==e.templateRef)&&(this._portal=new A_(e.templateRef,this._viewContainerRef)),this._portal}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Ns),o.rXU(o.aKT),o.rXU(o.c1b),o.rXU(fq),o.rXU(q8,8),o.rXU(fR,10),o.rXU(Ks,8),o.rXU(Yl),o.rXU(o.SKi))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-mdc-menu-trigger"],hostVars:3,hostBindings:function(i,r){1&i&&o.bIt("click",function(l){return r._handleClick(l)})("mousedown",function(l){return r._handleMousedown(l)})("keydown",function(l){return r._handleKeydown(l)}),2&i&&o.BMQ("aria-haspopup",r.menu?"menu":null)("aria-expanded",r.menuOpen)("aria-controls",r.menuOpen?r.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:[0,"mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:[0,"matMenuTriggerFor","menu"],menuData:[0,"matMenuTriggerData","menuData"],restoreFocus:[0,"matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"},exportAs:["matMenuTrigger"],standalone:!0})}}return n})();function Pa(n,t){(function Xce(n){return"string"==typeof n&&-1!==n.indexOf(".")&&1===parseFloat(n)})(n)&&(n="100%");var e=function Kce(n){return"string"==typeof n&&-1!==n.indexOf("%")}(n);return n=360===t?n:Math.min(t,Math.max(0,parseFloat(n))),e&&(n=parseInt(String(n*t),10)/100),Math.abs(n-t)<1e-6?1:n=360===t?(n<0?n%t+t:n%t)/parseFloat(String(t)):n%t/parseFloat(String(t))}function AR(n){return Math.min(1,Math.max(0,n))}function Aq(n){return n=parseFloat(n),(isNaN(n)||n<0||n>1)&&(n=1),n}function mR(n){return n<=1?"".concat(100*Number(n),"%"):n}function cv(n){return 1===n.length?"0"+n:String(n)}function mq(n,t,e){n=Pa(n,255),t=Pa(t,255),e=Pa(e,255);var i=Math.max(n,t,e),r=Math.min(n,t,e),s=0,l=0,u=(i+r)/2;if(i===r)l=0,s=0;else{var f=i-r;switch(l=u>.5?f/(2-i-r):f/(i+r),i){case n:s=(t-e)/f+(t1&&(e-=1),e<1/6?n+6*e*(t-n):e<.5?t:e<2/3?n+(t-n)*(2/3-e)*6:n}function gq(n,t,e){n=Pa(n,255),t=Pa(t,255),e=Pa(e,255);var i=Math.max(n,t,e),r=Math.min(n,t,e),s=0,l=i,u=i-r,f=0===i?0:u/i;if(i===r)s=0;else{switch(i){case n:s=(t-e)/u+(t>16,g:(65280&n)>>8,b:255&n}}(t)),this.originalInput=t;var r=function nde(n){var t={r:0,g:0,b:0},e=1,i=null,r=null,s=null,l=!1,u=!1;return"string"==typeof n&&(n=function ode(n){if(0===(n=n.trim().toLowerCase()).length)return!1;var t=!1;if(X8[n])n=X8[n],t=!0;else if("transparent"===n)return{r:0,g:0,b:0,a:0,format:"name"};var e=Uu.rgb.exec(n);return e?{r:e[1],g:e[2],b:e[3]}:(e=Uu.rgba.exec(n))?{r:e[1],g:e[2],b:e[3],a:e[4]}:(e=Uu.hsl.exec(n))?{h:e[1],s:e[2],l:e[3]}:(e=Uu.hsla.exec(n))?{h:e[1],s:e[2],l:e[3],a:e[4]}:(e=Uu.hsv.exec(n))?{h:e[1],s:e[2],v:e[3]}:(e=Uu.hsva.exec(n))?{h:e[1],s:e[2],v:e[3],a:e[4]}:(e=Uu.hex8.exec(n))?{r:qc(e[1]),g:qc(e[2]),b:qc(e[3]),a:vq(e[4]),format:t?"name":"hex8"}:(e=Uu.hex6.exec(n))?{r:qc(e[1]),g:qc(e[2]),b:qc(e[3]),format:t?"name":"hex"}:(e=Uu.hex4.exec(n))?{r:qc(e[1]+e[1]),g:qc(e[2]+e[2]),b:qc(e[3]+e[3]),a:vq(e[4]+e[4]),format:t?"name":"hex8"}:!!(e=Uu.hex3.exec(n))&&{r:qc(e[1]+e[1]),g:qc(e[2]+e[2]),b:qc(e[3]+e[3]),format:t?"name":"hex"}}(n)),"object"==typeof n&&(zp(n.r)&&zp(n.g)&&zp(n.b)?(t=function Yce(n,t,e){return{r:255*Pa(n,255),g:255*Pa(t,255),b:255*Pa(e,255)}}(n.r,n.g,n.b),l=!0,u="%"===String(n.r).substr(-1)?"prgb":"rgb"):zp(n.h)&&zp(n.s)&&zp(n.v)?(i=mR(n.s),r=mR(n.v),t=function Jce(n,t,e){n=6*Pa(n,360),t=Pa(t,100),e=Pa(e,100);var i=Math.floor(n),r=n-i,s=e*(1-t),l=e*(1-r*t),u=e*(1-(1-r)*t),f=i%6;return{r:255*[e,l,s,s,u,e][f],g:255*[u,e,e,l,s,s][f],b:255*[s,s,u,e,e,l][f]}}(n.h,i,r),l=!0,u="hsv"):zp(n.h)&&zp(n.s)&&zp(n.l)&&(i=mR(n.s),s=mR(n.l),t=function Zce(n,t,e){var i,r,s;if(n=Pa(n,360),t=Pa(t,100),e=Pa(e,100),0===t)r=e,s=e,i=e;else{var l=e<.5?e*(1+t):e+t-e*t,u=2*e-l;i=W8(u,l,n+1/3),r=W8(u,l,n),s=W8(u,l,n-1/3)}return{r:255*i,g:255*r,b:255*s}}(n.h,i,s),l=!0,u="hsl"),Object.prototype.hasOwnProperty.call(n,"a")&&(e=n.a)),e=Aq(e),{ok:l,format:n.format||u,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:e}}(t);this.originalInput=t,this.r=r.r,this.g=r.g,this.b=r.b,this.a=r.a,this.roundA=Math.round(100*this.a)/100,this.format=null!==(i=e.format)&&void 0!==i?i:r.format,this.gradientType=e.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=r.ok}return n.prototype.isDark=function(){return this.getBrightness()<128},n.prototype.isLight=function(){return!this.isDark()},n.prototype.getBrightness=function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},n.prototype.getLuminance=function(){var t=this.toRgb(),s=t.r/255,l=t.g/255,u=t.b/255;return.2126*(s<=.03928?s/12.92:Math.pow((s+.055)/1.055,2.4))+.7152*(l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4))+.0722*(u<=.03928?u/12.92:Math.pow((u+.055)/1.055,2.4))},n.prototype.getAlpha=function(){return this.a},n.prototype.setAlpha=function(t){return this.a=Aq(t),this.roundA=Math.round(100*this.a)/100,this},n.prototype.isMonochrome=function(){return 0===this.toHsl().s},n.prototype.toHsv=function(){var t=gq(this.r,this.g,this.b);return{h:360*t.h,s:t.s,v:t.v,a:this.a}},n.prototype.toHsvString=function(){var t=gq(this.r,this.g,this.b),e=Math.round(360*t.h),i=Math.round(100*t.s),r=Math.round(100*t.v);return 1===this.a?"hsv(".concat(e,", ").concat(i,"%, ").concat(r,"%)"):"hsva(".concat(e,", ").concat(i,"%, ").concat(r,"%, ").concat(this.roundA,")")},n.prototype.toHsl=function(){var t=mq(this.r,this.g,this.b);return{h:360*t.h,s:t.s,l:t.l,a:this.a}},n.prototype.toHslString=function(){var t=mq(this.r,this.g,this.b),e=Math.round(360*t.h),i=Math.round(100*t.s),r=Math.round(100*t.l);return 1===this.a?"hsl(".concat(e,", ").concat(i,"%, ").concat(r,"%)"):"hsla(".concat(e,", ").concat(i,"%, ").concat(r,"%, ").concat(this.roundA,")")},n.prototype.toHex=function(t){return void 0===t&&(t=!1),_q(this.r,this.g,this.b,t)},n.prototype.toHexString=function(t){return void 0===t&&(t=!1),"#"+this.toHex(t)},n.prototype.toHex8=function(t){return void 0===t&&(t=!1),function ede(n,t,e,i,r){var s=[cv(Math.round(n).toString(16)),cv(Math.round(t).toString(16)),cv(Math.round(e).toString(16)),cv(bq(i))];return r&&s[0].startsWith(s[0].charAt(1))&&s[1].startsWith(s[1].charAt(1))&&s[2].startsWith(s[2].charAt(1))&&s[3].startsWith(s[3].charAt(1))?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")}(this.r,this.g,this.b,this.a,t)},n.prototype.toHex8String=function(t){return void 0===t&&(t=!1),"#"+this.toHex8(t)},n.prototype.toHexShortString=function(t){return void 0===t&&(t=!1),1===this.a?this.toHexString(t):this.toHex8String(t)},n.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},n.prototype.toRgbString=function(){var t=Math.round(this.r),e=Math.round(this.g),i=Math.round(this.b);return 1===this.a?"rgb(".concat(t,", ").concat(e,", ").concat(i,")"):"rgba(".concat(t,", ").concat(e,", ").concat(i,", ").concat(this.roundA,")")},n.prototype.toPercentageRgb=function(){var t=function(e){return"".concat(Math.round(100*Pa(e,255)),"%")};return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},n.prototype.toPercentageRgbString=function(){var t=function(e){return Math.round(100*Pa(e,255))};return 1===this.a?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},n.prototype.toName=function(){if(0===this.a)return"transparent";if(this.a<1)return!1;for(var t="#"+_q(this.r,this.g,this.b,!1),e=0,i=Object.entries(X8);e=0&&(t.startsWith("hex")||"name"===t)?"name"===t&&0===this.a?this.toName():this.toRgbString():("rgb"===t&&(i=this.toRgbString()),"prgb"===t&&(i=this.toPercentageRgbString()),("hex"===t||"hex6"===t)&&(i=this.toHexString()),"hex3"===t&&(i=this.toHexString(!0)),"hex4"===t&&(i=this.toHex8String(!0)),"hex8"===t&&(i=this.toHex8String()),"name"===t&&(i=this.toName()),"hsl"===t&&(i=this.toHslString()),"hsv"===t&&(i=this.toHsvString()),i||this.toHexString())},n.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},n.prototype.clone=function(){return new n(this.toString())},n.prototype.lighten=function(t){void 0===t&&(t=10);var e=this.toHsl();return e.l+=t/100,e.l=AR(e.l),new n(e)},n.prototype.brighten=function(t){void 0===t&&(t=10);var e=this.toRgb();return e.r=Math.max(0,Math.min(255,e.r-Math.round(-t/100*255))),e.g=Math.max(0,Math.min(255,e.g-Math.round(-t/100*255))),e.b=Math.max(0,Math.min(255,e.b-Math.round(-t/100*255))),new n(e)},n.prototype.darken=function(t){void 0===t&&(t=10);var e=this.toHsl();return e.l-=t/100,e.l=AR(e.l),new n(e)},n.prototype.tint=function(t){return void 0===t&&(t=10),this.mix("white",t)},n.prototype.shade=function(t){return void 0===t&&(t=10),this.mix("black",t)},n.prototype.desaturate=function(t){void 0===t&&(t=10);var e=this.toHsl();return e.s-=t/100,e.s=AR(e.s),new n(e)},n.prototype.saturate=function(t){void 0===t&&(t=10);var e=this.toHsl();return e.s+=t/100,e.s=AR(e.s),new n(e)},n.prototype.greyscale=function(){return this.desaturate(100)},n.prototype.spin=function(t){var e=this.toHsl(),i=(e.h+t)%360;return e.h=i<0?360+i:i,new n(e)},n.prototype.mix=function(t,e){void 0===e&&(e=50);var i=this.toRgb(),r=new n(t).toRgb(),s=e/100;return new n({r:(r.r-i.r)*s+i.r,g:(r.g-i.g)*s+i.g,b:(r.b-i.b)*s+i.b,a:(r.a-i.a)*s+i.a})},n.prototype.analogous=function(t,e){void 0===t&&(t=6),void 0===e&&(e=30);var i=this.toHsl(),r=360/e,s=[this];for(i.h=(i.h-(r*t>>1)+720)%360;--t;)i.h=(i.h+r)%360,s.push(new n(i));return s},n.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new n(t)},n.prototype.monochromatic=function(t){void 0===t&&(t=6);for(var e=this.toHsv(),i=e.h,r=e.s,s=e.v,l=[],u=1/t;t--;)l.push(new n({h:i,s:r,v:s})),s=(s+u)%1;return l},n.prototype.splitcomplement=function(){var t=this.toHsl(),e=t.h;return[this,new n({h:(e+72)%360,s:t.s,l:t.l}),new n({h:(e+216)%360,s:t.s,l:t.l})]},n.prototype.onBackground=function(t){var e=this.toRgb(),i=new n(t).toRgb(),r=e.a+i.a*(1-e.a);return new n({r:(e.r*e.a+i.r*i.a*(1-e.a))/r,g:(e.g*e.a+i.g*i.a*(1-e.a))/r,b:(e.b*e.a+i.b*i.a*(1-e.a))/r,a:r})},n.prototype.triad=function(){return this.polyad(3)},n.prototype.tetrad=function(){return this.polyad(4)},n.prototype.polyad=function(t){for(var e=this.toHsl(),i=e.h,r=[this],s=360/t,l=1;l{class n{constructor(){this.white="transparent",this.size=8,this.grey="rgba(0,0,0,.08)"}ngOnInit(){const e=function cde(n,t,e){const i=`${n}-${t}-${e}`;if(Z8[i])return Z8[i];const r=function lde(n,t,e){if(typeof document>"u")return null;const i=document.createElement("canvas");i.width=2*e,i.height=2*e;const r=i.getContext("2d");return r?(r.fillStyle=n,r.fillRect(0,0,i.width,i.height),r.fillStyle=t,r.fillRect(0,0,e,e),r.translate(e,e),r.fillRect(0,0,e,e),i.toDataURL()):null}(n,t,e);return r?(Z8[i]=r,r):null}(this.white,this.grey,this.size);this.gridStyles={borderRadius:this.borderRadius,boxShadow:this.boxShadow,background:`url(${e}) center left`}}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-checkboard"]],inputs:{white:"white",size:"size",grey:"grey",boxShadow:"boxShadow",borderRadius:"borderRadius"},decls:1,vars:1,consts:[[1,"grid",3,"ngStyle"]],template:function(e,i){1&e&&o.nrm(0,"div",0),2&e&&o.Y8G("ngStyle",i.gridStyles)},dependencies:[ma],styles:[".grid[_ngcontent-%COMP%]{top:0px;right:0px;bottom:0px;left:0px;position:absolute}"],changeDetection:0}),n})(),wq=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba]]}),n})(),J8=(()=>{class n{constructor(e){this.el=e,this.coordinatesChange=new mi.B,this.mousechange=new mi.B,this.mouseListening=!1}mousemove(e,i,r,s=!1){this.mouseListening&&(e.preventDefault(),this.mousechange.next({$event:e,x:i,y:r,isTouch:s}))}mouseup(){this.mouseListening=!1}mousedown(e,i,r,s=!1){e.preventDefault(),this.mouseListening=!0,this.mousechange.next({$event:e,x:i,y:r,isTouch:s})}ngOnInit(){this.sub=this.mousechange.pipe(kr((e,i)=>e.x===i.x&&e.y===i.y)).subscribe(e=>this.handleChange(e.x,e.y,e.$event,e.isTouch))}ngOnDestroy(){this.sub.unsubscribe()}handleChange(e,i,r,s){const l=this.el.nativeElement.clientWidth,u=this.el.nativeElement.clientHeight,f=e-(this.el.nativeElement.getBoundingClientRect().left+window.pageXOffset);let p=i-this.el.nativeElement.getBoundingClientRect().top;s||(p-=window.pageYOffset),this.coordinatesChange.next({x:e,y:i,top:p,left:f,containerWidth:l,containerHeight:u,$event:r})}}return n.\u0275fac=function(e){return new(e||n)(o.rXU(o.aKT))},n.\u0275dir=o.FsC({type:n,selectors:[["","ngx-color-coordinates",""]],hostBindings:function(e,i){1&e&&o.bIt("mousemove",function(s){return i.mousemove(s,s.pageX,s.pageY)},!1,o.tSv)("touchmove",function(s){return i.mousemove(s,s.touches[0].clientX,s.touches[0].clientY,!0)},!1,o.tSv)("mouseup",function(){return i.mouseup()},!1,o.tSv)("touchend",function(){return i.mouseup()},!1,o.tSv)("mousedown",function(s){return i.mousedown(s,s.pageX,s.pageY)})("touchstart",function(s){return i.mousedown(s,s.touches[0].clientX,s.touches[0].clientY,!0)})},outputs:{coordinatesChange:"coordinatesChange"}}),n})(),e6=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({}),n})(),dde=(()=>{class n{constructor(){this.direction="horizontal",this.onChange=new o.bkB}ngOnChanges(){"vertical"===this.direction?(this.pointerLeft=0,this.pointerTop=100*this.rgb.a,this.gradient={background:`linear-gradient(to bottom, rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 0) 0%,\n rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 1) 100%)`}):(this.gradient={background:`linear-gradient(to right, rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 0) 0%,\n rgba(${this.rgb.r},${this.rgb.g},${this.rgb.b}, 1) 100%)`},this.pointerLeft=100*this.rgb.a)}handleChange({top:e,left:i,containerHeight:r,containerWidth:s,$event:l}){let u;if("vertical"===this.direction){let f;f=e<0?0:e>r?1:Math.round(100*e/r)/100,this.hsl.a!==f&&(u={h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:f,source:"rgb"})}else{let f;f=i<0?0:i>s?1:Math.round(100*i/s)/100,this.hsl.a!==f&&(u={h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:f,source:"rgb"})}u&&this.onChange.emit({data:u,$event:l})}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-alpha"]],inputs:{hsl:"hsl",rgb:"rgb",pointer:"pointer",shadow:"shadow",radius:"radius",direction:"direction"},outputs:{onChange:"onChange"},features:[o.OA$],decls:7,vars:15,consts:[[1,"alpha"],[1,"alpha-checkboard"],[1,"alpha-gradient",3,"ngStyle"],["ngx-color-coordinates","",3,"coordinatesChange"],[1,"alpha-pointer"],[1,"alpha-slider",3,"ngStyle"]],template:function(e,i){1&e&&(o.j41(0,"div",0)(1,"div",1),o.nrm(2,"color-checkboard"),o.k0s(),o.nrm(3,"div",2),o.j41(4,"div",3),o.bIt("coordinatesChange",function(s){return i.handleChange(s)}),o.j41(5,"div",4),o.nrm(6,"div",5),o.k0s()()()),2&e&&(o.xc7("border-radius",i.radius),o.R7$(3),o.xc7("box-shadow",i.shadow)("border-radius",i.radius),o.Y8G("ngStyle",i.gradient),o.R7$(),o.ZvI("alpha-container color-alpha-",i.direction,""),o.R7$(),o.xc7("left",i.pointerLeft,"%")("top",i.pointerTop,"%"),o.R7$(),o.Y8G("ngStyle",i.pointer))},dependencies:[yq,ma,J8],styles:[".alpha[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.alpha-checkboard[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.alpha-gradient[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.alpha-container[_ngcontent-%COMP%]{position:relative;height:100%;margin:0 3px}.alpha-pointer[_ngcontent-%COMP%]{position:absolute}.alpha-slider[_ngcontent-%COMP%]{width:4px;border-radius:1px;height:8px;box-shadow:0 0 2px #0009;background:#fff;margin-top:1px;transform:translate(-2px)}"],changeDetection:0}),n})(),ude=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba,wq,e6]]}),n})();function xq(n){let e=0,i=0;return["r","g","b","a","h","s","l","v"].forEach(r=>{n[r]&&(e+=1,isNaN(n[r])||(i+=1),("s"===r||"l"===r)&&/^\d+%$/.test(n[r])&&(i+=1))}),e===i&&n}function n2(n,t,e){const i=new t2(n.hex?n.hex:n);e&&i.setAlpha(1);const r=i.toHsl(),s=i.toHsv(),l=i.toRgb(),u=i.toHex();return 0===r.s&&(r.h=t||0,s.h=t||0),{hsl:r,hex:"000000"===u&&0===l.a?"transparent":i.toHexString(),rgb:l,hsv:s,oldHue:n.h||t||r.h,source:n.source}}var ox=function(n){return n.HEX="hex",n.HSL="hsl",n.HSV="hsv",n.RGB="rgb",n}(ox||{});let Cq=(()=>{class n{constructor(){this.mode=ox.HEX,this.color={h:250,s:.5,l:.2,a:1},this.colorChange=new o.bkB,this.onChange=new o.bkB,this.onChangeComplete=new o.bkB,this.onSwatchHover=new o.bkB,this._onChangeCompleteSubscription=new un.yU,this._onSwatchHoverSubscription=new un.yU}ngOnInit(){this.changes=this.onChange.pipe(x_(100),ro(e=>{switch(this.onChangeComplete.emit(e),this.mode){case ox.HEX:this.colorChange.emit(e.color.hex);break;case ox.HSL:this.colorChange.emit(e.color.hsl);break;case ox.HSV:this.colorChange.emit(e.color.hsv);break;case ox.RGB:this.colorChange.emit(e.color.rgb);break;default:const i=`The mode '${this.mode}' is not supported`;if((0,o.naY)())throw new Error(i);console.warn(i)}})).subscribe(),this.setState(n2(this.color,0)),this.currentColor=this.hex}ngOnChanges(){this.setState(n2(this.color,this.oldHue))}ngOnDestroy(){this.changes?.unsubscribe(),this._onChangeCompleteSubscription.unsubscribe(),this._onSwatchHoverSubscription.unsubscribe()}setState(e){this.oldHue=e.oldHue,this.hsl=e.hsl,this.hsv=e.hsv,this.rgb=e.rgb,this.hex=e.hex,this.source=e.source,this.afterValidChange()}handleChange(e,i){if(xq(e)){const s=n2(e,e.h||this.oldHue,this.disableAlpha);this.setState(s),this.onChange.emit({color:s,$event:i}),this.afterValidChange()}}afterValidChange(){}handleSwatchHover(e,i){if(xq(e)){const s=n2(e,e.h||this.oldHue);this.setState(s),this.onSwatchHover.emit({color:s,$event:i})}}registerOnChange(e){this._onChangeCompleteSubscription.add(this.onChangeComplete.pipe(ro(i=>e(i.color.hex))).subscribe())}registerOnTouched(e){this._onSwatchHoverSubscription.add(this.onSwatchHover.pipe(ro(()=>e())).subscribe())}setDisabledState(e){}writeValue(e){this.color=e}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-wrap"]],inputs:{className:"className",mode:"mode",color:"color"},outputs:{colorChange:"colorChange",onChange:"onChange",onChangeComplete:"onChangeComplete",onSwatchHover:"onSwatchHover"},features:[o.Jv_([{provide:Aa,useExisting:(0,o.Rfq)(()=>n),multi:!0}]),o.OA$],decls:0,vars:0,template:function(e,i){},encapsulation:2}),n})(),fde=0,pde=(()=>{class n{constructor(){this.placeholder="",this.onChange=new o.bkB,this.focus=!1,this.uniqueId="editableInput-"+ ++fde}ngOnInit(){this.wrapStyle=this.style&&this.style.wrap?this.style.wrap:{},this.inputStyle=this.style&&this.style.input?this.style.input:{},this.labelStyle=this.style&&this.style.label?this.style.label:{},this.dragLabel&&(this.labelStyle.cursor="ew-resize")}handleFocus(e){this.focus=!0}handleFocusOut(e){this.focus=!1,this.currentValue=this.blurValue}handleKeydown(e){const i=String(e.target.value),r=i.indexOf("%")>-1,s=Number(i.replace(/%/g,""));if(isNaN(s))return;const l=this.arrowOffset||1;38===e.keyCode&&(this.onChange.emit(this.label?{data:{[this.label]:s+l},$event:e}:{data:s+l,$event:e}),this.currentValue=r?`${s+l}%`:s+l),40===e.keyCode&&(this.onChange.emit(this.label?{data:{[this.label]:s-l},$event:e}:{data:s-l,$event:e}),this.currentValue=r?s-l+"%":s-l)}handleKeyup(e){40===e.keyCode||38===e.keyCode||`${this.currentValue}`!==e.target.value&&this.onChange.emit(this.label?{data:{[this.label]:e.target.value},$event:e}:{data:e.target.value,$event:e})}ngOnChanges(){this.focus||(this.currentValue=String(this.value).toUpperCase()),this.blurValue=String(this.value).toUpperCase()}ngOnDestroy(){this.unsubscribe()}subscribe(){this.mousemove=Os(document,"mousemove").subscribe(e=>this.handleDrag(e)),this.mouseup=Os(document,"mouseup").subscribe(()=>this.unsubscribe())}unsubscribe(){this.mousemove&&this.mousemove.unsubscribe(),this.mouseup&&this.mouseup.unsubscribe()}handleMousedown(e){this.dragLabel&&(e.preventDefault(),this.handleDrag(e),this.subscribe())}handleDrag(e){if(this.dragLabel){const i=Math.round(this.value+e.movementX);i>=0&&i<=this.dragMax&&this.onChange.emit({data:{[this.label]:i},$event:e})}}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-editable-input"]],inputs:{style:"style",label:"label",value:"value",arrowOffset:"arrowOffset",dragLabel:"dragLabel",dragMax:"dragMax",placeholder:"placeholder"},outputs:{onChange:"onChange"},features:[o.OA$],decls:3,vars:6,consts:[[1,"wrap",3,"ngStyle"],["spellCheck","false",3,"keydown","keyup","focus","focusout","ngStyle","value","placeholder"],[3,"id","ngStyle","mousedown",4,"ngIf"],[3,"mousedown","id","ngStyle"]],template:function(e,i){1&e&&(o.j41(0,"div",0)(1,"input",1),o.bIt("keydown",function(s){return i.handleKeydown(s)})("keyup",function(s){return i.handleKeyup(s)})("focus",function(s){return i.handleFocus(s)})("focusout",function(s){return i.handleFocusOut(s)}),o.k0s(),o.DNE(2,sde,2,3,"span",2),o.k0s()),2&e&&(o.Y8G("ngStyle",i.wrapStyle),o.R7$(),o.Y8G("ngStyle",i.inputStyle)("value",i.currentValue)("placeholder",i.placeholder),o.BMQ("aria-labelledby",i.uniqueId),o.R7$(),o.Y8G("ngIf",i.label))},dependencies:[ma,Gn],styles:["[_nghost-%COMP%]{display:flex}.wrap[_ngcontent-%COMP%]{position:relative}"],changeDetection:0}),n})(),Ade=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba]]}),n})(),mde=(()=>{class n{constructor(){this.hidePointer=!1,this.direction="horizontal",this.onChange=new o.bkB,this.left="0px",this.top=""}ngOnChanges(){"horizontal"===this.direction?this.left=100*this.hsl.h/360+"%":this.top=-100*this.hsl.h/360+100+"%"}handleChange({top:e,left:i,containerHeight:r,containerWidth:s,$event:l}){let u;if("vertical"===this.direction){let f;f=e<0?359:e>r?0:360*(-100*e/r+100)/100,this.hsl.h!==f&&(u={h:f,s:this.hsl.s,l:this.hsl.l,a:this.hsl.a,source:"rgb"})}else{let f;f=i<0?0:i>s?359:100*i/s*360/100,this.hsl.h!==f&&(u={h:f,s:this.hsl.s,l:this.hsl.l,a:this.hsl.a,source:"rgb"})}u&&this.onChange.emit({data:u,$event:l})}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-hue"]],inputs:{hsl:"hsl",pointer:"pointer",radius:"radius",shadow:"shadow",hidePointer:"hidePointer",direction:"direction"},outputs:{onChange:"onChange"},features:[o.OA$],decls:3,vars:8,consts:[["ngx-color-coordinates","",1,"color-hue-container",3,"coordinatesChange"],["class","color-hue-pointer",3,"left","top",4,"ngIf"],[1,"color-hue-pointer"],[1,"color-hue-slider",3,"ngStyle"]],template:function(e,i){1&e&&(o.j41(0,"div")(1,"div",0),o.bIt("coordinatesChange",function(s){return i.handleChange(s)}),o.DNE(2,ade,2,5,"div",1),o.k0s()()),2&e&&(o.ZvI("color-hue color-hue-",i.direction,""),o.xc7("border-radius",i.radius,"px")("box-shadow",i.shadow),o.R7$(2),o.Y8G("ngIf",!i.hidePointer))},dependencies:[J8,Gn,ma],styles:[".color-hue[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.color-hue-container[_ngcontent-%COMP%]{margin:0 2px;position:relative;height:100%}.color-hue-pointer[_ngcontent-%COMP%]{position:absolute}.color-hue-slider[_ngcontent-%COMP%]{margin-top:1px;width:4px;border-radius:1px;height:8px;box-shadow:0 0 2px #0009;background:#fff;transform:translate(-2px)}.color-hue-horizontal[_ngcontent-%COMP%]{background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)}.color-hue-vertical[_ngcontent-%COMP%]{background:linear-gradient(to top,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)}"],changeDetection:0}),n})(),gde=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba,e6]]}),n})(),_de=(()=>{class n{constructor(){this.onChange=new o.bkB}ngOnChanges(){this.background=`hsl(${this.hsl.h}, 100%, 50%)`,this.pointerTop=-100*this.hsv.v+1+100+"%",this.pointerLeft=100*this.hsv.s+"%"}handleChange({top:e,left:i,containerHeight:r,containerWidth:s,$event:l}){i<0?i=0:i>s?i=s:e<0?e=0:e>r&&(e=r);let f=-e/r+1;f=f>0?f:0,f=f>1?1:f,this.onChange.emit({data:{h:this.hsl.h,s:i/s,v:f,a:this.hsl.a,source:"hsva"},$event:l})}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-saturation"]],inputs:{hsl:"hsl",hsv:"hsv",radius:"radius",pointer:"pointer",circle:"circle"},outputs:{onChange:"onChange"},features:[o.OA$],decls:5,vars:8,consts:[["ngx-color-coordinates","",1,"color-saturation",3,"coordinatesChange"],[1,"saturation-white"],[1,"saturation-black"],[1,"saturation-pointer",3,"ngStyle"],[1,"saturation-circle",3,"ngStyle"]],template:function(e,i){1&e&&(o.j41(0,"div",0),o.bIt("coordinatesChange",function(s){return i.handleChange(s)}),o.j41(1,"div",1),o.nrm(2,"div",2),o.j41(3,"div",3),o.nrm(4,"div",4),o.k0s()()()),2&e&&(o.xc7("background",i.background),o.R7$(3),o.xc7("top",i.pointerTop)("left",i.pointerLeft),o.Y8G("ngStyle",i.pointer),o.R7$(),o.Y8G("ngStyle",i.circle))},dependencies:[J8,ma],styles:[".saturation-white[_ngcontent-%COMP%]{background:linear-gradient(to right,#fff,rgba(255,255,255,0));position:absolute;top:0;bottom:0;left:0;right:0}.saturation-black[_ngcontent-%COMP%]{background:linear-gradient(to top,#000,rgba(0,0,0,0));position:absolute;top:0;bottom:0;left:0;right:0}.color-saturation[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0}.saturation-pointer[_ngcontent-%COMP%]{position:absolute;cursor:default}.saturation-circle[_ngcontent-%COMP%]{width:4px;height:4px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;cursor:hand;transform:translate(-2px,-4px)}"],changeDetection:0}),n})(),bde=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba,e6]]}),n})();const Gp=(n,t)=>({input:n,label:t});function vde(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",11)(1,"color-editable-input",12),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()()}if(2&n){const e=o.XpG();o.R7$(),o.Aen(o.l_i(3,Gp,e.input,e.label)),o.Y8G("value",e.hex)}}function yde(n,t){if(1&n){const e=o.RV6();o.j41(0,"color-editable-input",17),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG(2);return o.Njj(s.handleChange(r))}),o.k0s()}if(2&n){const e=o.XpG(2);o.Aen(o.l_i(4,Gp,e.input,e.label)),o.Y8G("value",e.rgb.a)("arrowOffset",.01)}}function wde(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",11)(1,"color-editable-input",13),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(2,"div",11)(3,"color-editable-input",14),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(4,"div",11)(5,"color-editable-input",15),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(6,"div",11),o.DNE(7,yde,1,7,"color-editable-input",16),o.k0s()}if(2&n){const e=o.XpG();o.R7$(),o.Aen(o.l_i(10,Gp,e.input,e.label)),o.Y8G("value",e.rgb.r),o.R7$(2),o.Aen(o.l_i(13,Gp,e.input,e.label)),o.Y8G("value",e.rgb.g),o.R7$(2),o.Aen(o.l_i(16,Gp,e.input,e.label)),o.Y8G("value",e.rgb.b),o.R7$(2),o.Y8G("ngIf",!e.disableAlpha)}}function xde(n,t){if(1&n){const e=o.RV6();o.j41(0,"color-editable-input",17),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG(2);return o.Njj(s.handleChange(r))}),o.k0s()}if(2&n){const e=o.XpG(2);o.Aen(o.l_i(4,Gp,e.input,e.label)),o.Y8G("value",e.hsl.a)("arrowOffset",.01)}}function Cde(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",11)(1,"color-editable-input",18),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(2,"div",11)(3,"color-editable-input",19),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(4,"div",11)(5,"color-editable-input",20),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleChange(r))}),o.k0s()(),o.j41(6,"div",11),o.DNE(7,xde,1,7,"color-editable-input",16),o.k0s()}if(2&n){const e=o.XpG();o.R7$(),o.Aen(o.l_i(10,Gp,e.input,e.label)),o.Y8G("value",e.round(e.hsl.h)),o.R7$(2),o.Aen(o.l_i(13,Gp,e.input,e.label)),o.Y8G("value",e.round(100*e.hsl.s)+"%"),o.R7$(2),o.Aen(o.l_i(16,Gp,e.input,e.label)),o.Y8G("value",e.round(100*e.hsl.l)+"%"),o.R7$(2),o.Y8G("ngIf",!e.disableAlpha)}}function Mde(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",12)(1,"color-alpha",13),o.bIt("onChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleValueChange(r))}),o.k0s()()}if(2&n){const e=o.XpG();o.R7$(),o.Y8G("radius",2)("rgb",e.rgb)("hsl",e.hsl)("pointer",e.pointer)}}let Ede=(()=>{class n{constructor(){this.onChange=new o.bkB,this.view="",this.input={fontSize:"11px",color:"#333",width:"100%",borderRadius:"2px",border:"none",boxShadow:"inset 0 0 0 1px #dadada",height:"21px","text-align":"center"},this.label={"text-transform":"uppercase",fontSize:"11px","line-height":"11px",color:"#969696","text-align":"center",display:"block",marginTop:"12px"}}ngOnInit(){1===this.hsl.a&&"hex"!==this.view?this.view="hex":"rgb"!==this.view&&"hsl"!==this.view&&(this.view="rgb")}toggleViews(){"hex"===this.view?this.view="rgb":"rgb"===this.view?this.view="hsl":"hsl"===this.view&&(this.view=1===this.hsl.a?"hex":"rgb")}round(e){return Math.round(e)}handleChange({data:e,$event:i}){if(e.hex){if(function hde(n){return new t2(n).isValid}(e.hex)){const r=new t2(e.hex);this.onChange.emit({data:{hex:this.disableAlpha?r.toHex():r.toHex8(),source:"hex"},$event:i})}}else if(e.r||e.g||e.b)this.onChange.emit({data:{r:e.r||this.rgb.r,g:e.g||this.rgb.g,b:e.b||this.rgb.b,source:"rgb"},$event:i});else if(e.a)e.a<0?e.a=0:e.a>1&&(e.a=1),this.disableAlpha&&(e.a=1),this.onChange.emit({data:{h:this.hsl.h,s:this.hsl.s,l:this.hsl.l,a:Math.round(100*e.a)/100,source:"rgb"},$event:i});else if(e.h||e.s||e.l){const r=e.s&&e.s.replace("%",""),s=e.l&&e.l.replace("%","");this.onChange.emit({data:{h:e.h||this.hsl.h,s:Number(r||this.hsl.s),l:Number(s||this.hsl.l),source:"hsl"},$event:i})}}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-chrome-fields"]],inputs:{disableAlpha:"disableAlpha",hsl:"hsl",rgb:"rgb",hex:"hex"},outputs:{onChange:"onChange"},decls:13,vars:3,consts:[["icon",""],["iconUp",""],["iconDown",""],[1,"chrome-wrap"],[1,"chrome-fields"],[3,"ngIf"],[1,"chrome-toggle"],[1,"chrome-icon",3,"click"],["viewBox","0 0 24 24",1,"chrome-toggle-svg"],["fill","#333","d","M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"],["fill","#333","d","M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15Z"],[1,"chrome-field"],["label","hex",3,"onChange","value"],["label","r",3,"onChange","value"],["label","g",3,"onChange","value"],["label","b",3,"onChange","value"],["label","a",3,"style","value","arrowOffset","onChange",4,"ngIf"],["label","a",3,"onChange","value","arrowOffset"],["label","h",3,"onChange","value"],["label","s",3,"onChange","value"],["label","l",3,"onChange","value"]],template:function(e,i){if(1&e){const r=o.RV6();o.j41(0,"div",3)(1,"div",4),o.DNE(2,vde,2,6,"ng-template",5)(3,wde,8,19,"ng-template",5)(4,Cde,8,19,"ng-template",5),o.k0s(),o.j41(5,"div",6)(6,"div",7,0),o.bIt("click",function(){return o.eBV(r),o.Njj(i.toggleViews())}),o.qSk(),o.j41(8,"svg",8),o.nrm(9,"path",9,1)(11,"path",10,2),o.k0s()()()()}2&e&&(o.R7$(2),o.Y8G("ngIf","hex"===i.view),o.R7$(),o.Y8G("ngIf","rgb"===i.view),o.R7$(),o.Y8G("ngIf","hsl"===i.view))},dependencies:[pde,Gn],styles:[".chrome-wrap[_ngcontent-%COMP%]{padding-top:16px;display:flex}.chrome-fields[_ngcontent-%COMP%]{flex:1;display:flex;margin-left:-6px}.chrome-field[_ngcontent-%COMP%]{padding-left:6px;width:100%}.chrome-toggle[_ngcontent-%COMP%]{width:32px;text-align:right;position:relative}.chrome-icon[_ngcontent-%COMP%]{margin-right:-4px;margin-top:12px;cursor:pointer;position:relative}.chrome-toggle-svg[_ngcontent-%COMP%]{width:24px;height:24px;border:1px transparent solid;border-radius:5px}.chrome-toggle-svg[_ngcontent-%COMP%]:hover{background:#eee}"],changeDetection:0}),n})(),Sde=(()=>{class n extends Cq{constructor(){super(),this.disableAlpha=!1,this.circle={width:"12px",height:"12px",borderRadius:"6px",boxShadow:"rgb(255, 255, 255) 0px 0px 0px 1px inset",transform:"translate(-6px, -8px)"},this.pointer={width:"12px",height:"12px",borderRadius:"6px",transform:"translate(-6px, -2px)",backgroundColor:"rgb(248, 248, 248)",boxShadow:"0 1px 4px 0 rgba(0, 0, 0, 0.37)"}}afterValidChange(){this.activeBackground=`rgba(${this.rgb.r}, ${this.rgb.g}, ${this.rgb.b}, ${this.disableAlpha?1:this.rgb.a})`}handleValueChange({data:e,$event:i}){this.handleChange(e,i)}}return n.\u0275fac=function(e){return new(e||n)},n.\u0275cmp=o.VBU({type:n,selectors:[["color-chrome"]],inputs:{disableAlpha:"disableAlpha"},features:[o.Jv_([{provide:Aa,useExisting:(0,o.Rfq)(()=>n),multi:!0},{provide:Cq,useExisting:(0,o.Rfq)(()=>n)}]),o.Vt3],decls:14,vars:16,consts:[[1,"saturation"],[3,"onChange","hsl","hsv","circle"],[1,"chrome-body"],[1,"chrome-controls"],[1,"chrome-color"],[1,"chrome-swatch"],[1,"chrome-active"],[1,"chrome-toggles"],[1,"chrome-hue"],[3,"onChange","radius","hsl","pointer"],["class","chrome-alpha",4,"ngIf"],[3,"onChange","rgb","hsl","hex","disableAlpha"],[1,"chrome-alpha"],[3,"onChange","radius","rgb","hsl","pointer"]],template:function(e,i){1&e&&(o.j41(0,"div")(1,"div",0)(2,"color-saturation",1),o.bIt("onChange",function(s){return i.handleValueChange(s)}),o.k0s()(),o.j41(3,"div",2)(4,"div",3)(5,"div",4)(6,"div",5),o.nrm(7,"div",6)(8,"color-checkboard"),o.k0s()(),o.j41(9,"div",7)(10,"div",8)(11,"color-hue",9),o.bIt("onChange",function(s){return i.handleValueChange(s)}),o.k0s()(),o.DNE(12,Mde,2,4,"div",10),o.k0s()(),o.j41(13,"color-chrome-fields",11),o.bIt("onChange",function(s){return i.handleValueChange(s)}),o.k0s()()()),2&e&&(o.ZvI("chrome-picker ",i.className,""),o.R7$(2),o.Y8G("hsl",i.hsl)("hsv",i.hsv)("circle",i.circle),o.R7$(5),o.xc7("background",i.activeBackground),o.R7$(4),o.Y8G("radius",2)("hsl",i.hsl)("pointer",i.pointer),o.R7$(),o.Y8G("ngIf",!i.disableAlpha),o.R7$(),o.Y8G("rgb",i.rgb)("hsl",i.hsl)("hex",i.hex)("disableAlpha",i.disableAlpha))},dependencies:()=>[_de,yq,mde,dde,Ede,Gn],styles:['.chrome-picker[_ngcontent-%COMP%]{background:#fff;border-radius:2px;box-shadow:0 0 2px #0000004d,0 4px 8px #0000004d;box-sizing:initial;width:225px;font-family:"Menlo"}.chrome-controls[_ngcontent-%COMP%]{display:flex}.chrome-color[_ngcontent-%COMP%]{width:42px}.chrome-body[_ngcontent-%COMP%]{padding:14px 14px 12px}.chrome-active[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;right:0;border-radius:20px;box-shadow:inset 0 0 0 1px #0000001a;z-index:2}.chrome-swatch[_ngcontent-%COMP%]{width:28px;height:28px;border-radius:15px;position:relative;overflow:hidden}.saturation[_ngcontent-%COMP%]{width:100%;padding-bottom:55%;position:relative;border-radius:2px 2px 0 0;overflow:hidden}.chrome-toggles[_ngcontent-%COMP%]{flex:1}.chrome-hue[_ngcontent-%COMP%]{height:10px;position:relative;margin-bottom:8px}.chrome-alpha[_ngcontent-%COMP%]{height:10px;position:relative}'],changeDetection:0}),n})(),Tde=(()=>{class n{}return n.\u0275fac=function(e){return new(e||n)},n.\u0275mod=o.$C({type:n}),n.\u0275inj=o.G2t({imports:[[ba,ude,wq,Ade,gde,bde]]}),n})();const Ide=["colorPickerMenuTrigger"],Fde=(n,t)=>({isOpen:n,isHovered:t});let Mq=(()=>{class n{constructor(){this.openXPosition="after",this.onColorChange=new o.bkB,this.isHovered=!1,this.isClickInside=!1}handleChangeComplete(e){this.onColorChange.emit(e)}onMouseEnter(){this.isHovered=!0}onMouseLeave(){this.isHovered=!1}onClick(){this.isClickInside=!0,this.colorPickerMenuTrigger.openMenu()}handleDocumentClick(){!this.isClickInside&&this.colorPickerMenuTrigger.menuOpen&&this.colorPickerMenuTrigger.closeMenu(),this.isClickInside=!1}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-color-picker"]],viewQuery:function(i,r){if(1&i&&o.GBs(Ide,5),2&i){let s;o.mGM(s=o.lsd())&&(r.colorPickerMenuTrigger=s.first)}},hostBindings:function(i,r){1&i&&o.bIt("mouseenter",function(){return r.onMouseEnter()})("mouseleave",function(){return r.onMouseLeave()})("click",function(){return r.onClick()})("click",function(){return r.handleDocumentClick()},!1,o.EBC)},inputs:{hexColor:"hexColor",openXPosition:"openXPosition",triggerTemplate:"triggerTemplate"},outputs:{onColorChange:"onColorChange"},standalone:!0,features:[o.aNF],decls:6,vars:10,consts:[["colorPickerMenuTrigger","matMenuTrigger"],["menu","matMenu"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"matMenuTriggerFor"],[1,"cc-color-picker-menu",3,"xPosition","hasBackdrop"],["role","colorpicker",3,"click","onChangeComplete","disableAlpha","color"]],template:function(i,r){if(1&i){const s=o.RV6();o.eu8(0,2),o.nrm(1,"span",3,0),o.j41(3,"mat-menu",4,1)(5,"color-chrome",5),o.bIt("click",function(u){return o.eBV(s),o.Njj(u.stopPropagation())})("onChangeComplete",function(u){return o.eBV(s),o.Njj(r.handleChangeComplete(u.color.hex))}),o.k0s()()}if(2&i){const s=o.sdS(2),l=o.sdS(4);o.Y8G("ngTemplateOutlet",r.triggerTemplate)("ngTemplateOutletContext",o.l_i(7,Fde,s.menuOpen,r.isHovered)),o.R7$(),o.Y8G("matMenuTriggerFor",l),o.R7$(2),o.Y8G("xPosition",r.openXPosition)("hasBackdrop",!1),o.R7$(2),o.Y8G("disableAlpha",!0)("color",r.hexColor)}},dependencies:[yi,rx,Yh,Tde,Sde],encapsulation:2})}}return n})(),Bde=(()=>{class n{transform(e){return(n=>(299*Number.parseInt(n.slice(1,3),16)+587*Number.parseInt(n.slice(3,5),16)+114*Number.parseInt(n.slice(5,7),16))/1e3>=128?"black":"white")(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"readableColorForBackground",type:n,pure:!0,standalone:!0})}}return n})();function kde(n,t){1&n&&o.nrm(0,"br")}function Rde(n,t){if(1&n&&(o.j41(0,"span"),o.EFF(1),o.DNE(2,kde,1,0,"br"),o.k0s()),2&n){const e=t.$implicit,i=t.$index,r=t.$count;o.R7$(),o.SpI(" ",e," "),o.R7$(),o.vxM(i!==r-1?2:-1)}}function Pde(n,t){if(1&n&&(o.j41(0,"div",2)(1,"div",3),o.nrm(2,"span",4)(3,"span",5),o.nI1(4,"readableColorForBackground"),o.k0s(),o.j41(5,"div",6),o.Z7z(6,Rde,3,2,"span",null,o.fX1),o.k0s()()),2&n){const e=t.isOpen,i=t.isHovered,r=o.XpG();o.R7$(2),o.xc7("background-color",r.hexColor),o.R7$(),o.xc7("color",o.bMT(4,6,r.hexColor))("opacity",i||e?"1":"0"),o.R7$(3),o.Dyx(r.labels)}}let t6=(()=>{class n{constructor(){this.onColorChange=new o.bkB}handleColorChange(e){this.onColorChange.emit(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-labelled-color-picker"]],inputs:{hexColor:"hexColor",labels:"labels"},outputs:{onColorChange:"onColorChange"},standalone:!0,features:[o.aNF],decls:3,vars:3,consts:[["colorPickerTriggerTemplate",""],[3,"onColorChange","hexColor","openXPosition","triggerTemplate"],[1,"cc-labelled-color-picker-container"],[1,"cc-color-swatch-container"],[1,"cc-color-swatch"],[1,"cc-color-brush","fa","fa-paint-brush"],[1,"cc-labelled-color-picker-label"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"cc-color-picker",1),o.bIt("onColorChange",function(u){return o.eBV(s),o.Njj(r.handleColorChange(u))}),o.k0s(),o.DNE(1,Pde,8,8,"ng-template",null,0,o.C5r)}if(2&i){const s=o.sdS(2);o.Y8G("hexColor",r.hexColor)("openXPosition","before")("triggerTemplate",s)}},dependencies:[Mq,Bde],styles:[".cc-labelled-color-picker-container[_ngcontent-%COMP%]{display:flex;height:40px;align-items:center}.cc-labelled-color-picker-container[_ngcontent-%COMP%]:hover{cursor:pointer}.cc-labelled-color-picker-container[_ngcontent-%COMP%] .cc-color-swatch-container[_ngcontent-%COMP%]{position:relative;margin:0 11px;width:18px;height:18px}.cc-labelled-color-picker-container[_ngcontent-%COMP%] .cc-color-swatch-container[_ngcontent-%COMP%] .cc-color-swatch[_ngcontent-%COMP%]{display:inline-block;width:inherit;height:inherit;border-radius:2px;border:1px solid black}.cc-labelled-color-picker-container[_ngcontent-%COMP%] .cc-color-swatch-container[_ngcontent-%COMP%] .cc-color-brush[_ngcontent-%COMP%]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);opacity:0}.cc-labelled-color-picker-container[_ngcontent-%COMP%] > .cc-labelled-color-picker-label[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;direction:rtl}.cc-labelled-color-picker-container[_ngcontent-%COMP%] > .cc-labelled-color-picker-label[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{unicode-bidi:plaintext}"]})}}return n})();const Ode=["rendererContainer"],Nde=["fileInput"],Lde=()=>["Color"];function Ude(n,t){if(1&n&&(o.j41(0,"mat-option",9),o.EFF(1),o.j41(2,"span",35),o.EFF(3),o.k0s()()),2&n){const e=t.$implicit;o.Y8G("value",e),o.R7$(),o.SpI("",e.name," "),o.R7$(2),o.LHq(" (x: ",e.x,"cm, y: ",e.y,"cm, z: ",e.z,"cm, colors ",e.numberOfColors," )")}}let Eq=(()=>{class n{constructor(e,i){this.state=e,this.threeSceneService=i,this.logoColor="#ffffff",this.isFileSelected=!1,this.isPrintMeshLoaded=!1,this.secondRow={defaultText:(new Date).toLocaleDateString(),name:"Second Row Text",isVisible:!1,currentText:void 0},this.qrCode={defaultText:"maibornwolff.de/service/it-sanierung",name:"QrCode",isVisible:!1,currentText:void 0},this.printers=[{name:"Prusa MK3S (single color)",x:245,y:205,z:205,numberOfColors:1},{name:"BambuLab A1 + AMS Lite",x:251,y:251,z:251,numberOfColors:4},{name:"Prusa XL (5 colors)",x:355,y:335,z:355,numberOfColors:5}],this.selectedPrinter=this.printers[2],this.layerHeight=.2,this.frontTextSize=8,this.secondRowTextSize=6,this.frontPrintDepth=.6,this.mapSideOffset=10,this.baseplateHeight=1,this.logoSize=10,this.maxWidth=Rj(new pe(this.selectedPrinter.x,this.selectedPrinter.y,this.selectedPrinter.z),this.threeSceneService.getMapMesh().getThreeMesh(),this.frontTextSize,this.baseplateHeight,this.mapSideOffset),this.currentSize=new pe,this.currentSize.x=this.maxWidth,this.wantedWidth=this.maxWidth,this.currentNumberOfColors=this.selectedPrinter.numberOfColors,this.isPrintMeshLoaded=!1,this.secondRow.currentText=this.secondRow.defaultText,this.qrCode.currentText=this.qrCode.defaultText,this.areaMetric=this.state.getValue().dynamicSettings.areaMetric,this.heightMetric=this.state.getValue().dynamicSettings.heightMetric,this.colorMetric=this.state.getValue().dynamicSettings.colorMetric;const r=M3(this.state.getValue().files),s=this.state.getValue().fileSettings.blacklist,l=qo(r,s);this.nodeMetricData=l.filter(u=>u.name===this.areaMetric||u.name===this.heightMetric||u.name===this.colorMetric)}ngAfterViewInit(){var e=this;return Mn(function*(){yield e.createScene(),e.isPrintMeshLoaded=!0})()}onScaleChange(){this.previewMesh.updateSize(this.wantedWidth).then(e=>{this.qrCode.isVisible=e}),this.currentSize=this.previewMesh.getSize()}onFrontTextChange(){this.previewMesh.updateFrontText(this.frontText)}onFileSelected(e){const i=e.target.files[0];if(i){this.isFileSelected=!0;const r=new FileReader;r.readAsDataURL(i),r.onload=()=>{this.previewMesh.addCustomLogo(r.result)}}else this.isFileSelected=!1}onRotateLogo(){this.previewMesh.rotateCustomLogo()}onFlipLogo(){this.previewMesh.flipCustomLogo()}onRemoveLogo(){this.isFileSelected=!1,this.fileInput.nativeElement.value="",this.previewMesh.removeCustomLogo()}onSelectedPrinterChange(){const e=this.selectedPrinter.numberOfColors;this.currentNumberOfColors!==e&&(this.previewMesh.updateNumberOfColors(e),this.currentNumberOfColors=e),this.makeMapMaxSize(),this.updateCameraPosition(this.printPreviewScene.getObjectByName("camera"))}onLogoColorChange(e){this.logoColor=e,this.previewMesh.updateCustomLogoColor(this.logoColor)}onQrCodeTextChange(){this.onTextChange(this.qrCode),this.previewMesh.updateQrCodeText(this.qrCode.currentText),this.previewMesh.updateQrCodeVisibility(this.qrCode.isVisible)}onQrCodeVisibilityChange(e){this.qrCode.isVisible!==e.checked&&(this.qrCode.isVisible=e.checked,this.previewMesh.updateQrCodeVisibility(this.qrCode.isVisible))}onSecondRowTextChange(){this.onTextChange(this.secondRow),this.previewMesh.updateSecondRowText(this.secondRow.currentText),this.previewMesh.updateSecondRowVisibility(this.secondRow.isVisible)}onSecondRowVisibilityChange(e){this.secondRow.isVisible!==e.checked&&(this.secondRow.isVisible=e.checked,this.previewMesh.updateSecondRowVisibility(this.secondRow.isVisible))}onTextChange(e){""!==e.currentText?e.isVisible||(e.isVisible=!0):e.isVisible=!1}createScene(){var e=this;return Mn(function*(){const i=new Nk;i.name="printPreviewScene",e.printPreviewScene=i,i.background=new vn(15527388);const r=e.threeSceneService.scene.clone().children[3];r.name="lights",i.add(r);const s=new Js(45,1.15,50,2e5);s.name="camera",s.up=new pe(0,0,1),i.add(s),e.initRenderer(i,s),e.previewMesh=new qse(e.initGeometryOptions()),yield e.previewMesh.initialize(),e.currentSize=e.previewMesh.getSize(),i.add(e.previewMesh.getThreeMesh()),e.updateCameraPosition(s)})()}initRenderer(e,i){const r=this.getGL(),s=new ft;r.getSize(s);const l=this.rendererContainer.nativeElement.offsetWidth;r.setSize(l,s.y*(l/s.x),!0),this.rendererContainer.nativeElement.appendChild(r.domElement);const f=new XU(i,r.domElement),p=function(){requestAnimationFrame(p),f.update(),r.render(e,i)};p()}getGL(){return new H5}updateCameraPosition(e){e.position.set(.2*-this.currentSize.x,1.2*-this.currentSize.y,3*this.currentSize.z)}download3MFFile(){var e=this;return Mn(function*(){const i=yield function wse(n){return u8.apply(this,arguments)}(e.printPreviewScene.getObjectByName("PrintMesh"));e.downloadFile(i,"3mf")})()}makeMapMaxSize(){this.wantedWidth=Rj(new pe(this.selectedPrinter.x,this.selectedPrinter.y,this.selectedPrinter.z),this.threeSceneService.getMapMesh().getThreeMesh(),this.frontTextSize,this.baseplateHeight,this.mapSideOffset),this.previewMesh.updateSize(this.wantedWidth).then(e=>{this.qrCode.isVisible=e}),this.currentSize=this.previewMesh.getSize(),this.maxWidth=this.currentSize.x}downloadStlFile(){const e=(new Koe).parse(this.previewMesh.getMapMesh(),{binary:!0});this.downloadFile(e,"stl")}initGeometryOptions(){const e=this.state.getValue().fileSettings.attributeDescriptors,i=qw,r=e[this.areaMetric]?.title||i.get(this.areaMetric),s=e[this.heightMetric]?.title||i.get(this.heightMetric),l=e[this.colorMetric]?.title||i.get(this.colorMetric);return{originalMapMesh:this.threeSceneService.getMapMesh().getThreeMesh(),width:this.wantedWidth,areaMetricTitle:r,areaMetricData:this.nodeMetricData.find(u=>u.name===this.areaMetric),heightMetricTitle:s,heightMetricData:this.nodeMetricData.find(u=>u.name===this.heightMetric),colorMetricTitle:l,colorMetricData:this.nodeMetricData.find(u=>u.name===this.colorMetric),colorRange:this.state.getValue().dynamicSettings.colorRange,frontText:this.frontText,secondRowText:this.secondRow.currentText,secondRowVisible:this.secondRow.isVisible,qrCodeText:this.qrCode.currentText,defaultMaterial:this.threeSceneService.getMapMesh().getThreeMesh().material[0].clone(),numberOfColors:this.currentNumberOfColors,layerHeight:this.layerHeight,frontTextSize:this.frontTextSize,secondRowTextSize:this.secondRowTextSize,printHeight:this.frontPrintDepth,mapSideOffset:this.mapSideOffset,baseplateHeight:this.baseplateHeight,logoSize:this.logoSize}}downloadFile(e,i){const r=wn(this.state.getValue()),s=Fd(this.state.getValue()).unifiedFileMeta?.fileName,l=`${uu.getNewFileName(s,dc(r))}.${i}`;Lm.downloadData(e,l)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi),o.rXU(Dd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-export-3D-map-dialog"]],viewQuery:function(i,r){if(1&i&&(o.GBs(Ode,5),o.GBs(Nde,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.rendererContainer=s.first),o.mGM(s=o.lsd())&&(r.fileInput=s.first)}},inputs:{logoColor:"logoColor"},standalone:!0,features:[o.aNF],decls:84,vars:25,consts:[["rendererContainer",""],["slider",""],["fileInput",""],["color","primary"],[1,"cc-export-3D-map-dialog"],[1,"preview"],["appearance","outline",1,"cc-export-3D-map-dialog-content"],["appearance","outline"],["data-testid","selectPrinter",3,"selectionChange","valueChange","value"],["data-testid","selectedPrinter",3,"value"],["appearance","outlined"],[1,"slider-container"],["data-testid","onScaleChange","discrete","true","min","100","step","1",3,"change","max"],["matSliderThumb","",3,"ngModelChange","ngModel"],["data-testid","printSizeOverview"],["matInput","","data-testid","frontText",3,"ngModelChange","input","ngModel","placeholder"],[1,"cc-manual-visibility-content"],["data-testid","secondRowToggle",3,"change","checked"],["appearance","outline",3,"hidden"],["matInput","","data-testid","secondRowText",3,"ngModelChange","input","ngModel"],["data-testid","qrCodeToggle",3,"change","checked"],["matInput","","data-testid","qrCodeText",3,"ngModelChange","input","ngModel"],["type","file","accept",".svg",1,"cc-file-input",3,"change"],["mat-button","","title","Remove Logo Button",3,"click","hidden"],[1,"fa","fa-times"],[3,"hidden"],["mat-button","","title","Rotate Logo Button",3,"click"],[1,"fa","fa-rotate-right"],["mat-button","","title","Flip Logo Button",3,"click"],[1,"fa","fa-arrows-h"],[3,"onColorChange","hexColor","labels"],["align","end"],["mat-button","","title","Download 3MF Button",3,"click","disabled"],[1,"fa","fa-download"],["mat-button","","title","Download Stl Button",3,"click","disabled"],[1,"cc-printer-specs"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"mat-toolbar",3),o.EFF(1,"3D Print CodeCharta Map"),o.k0s(),o.j41(2,"div",4),o.nrm(3,"div",5,0),o.j41(5,"mat-dialog-content",6)(6,"mat-form-field",7)(7,"mat-label"),o.EFF(8,"Printer preset"),o.k0s(),o.j41(9,"mat-select",8),o.bIt("selectionChange",function(){return o.eBV(s),o.Njj(r.onSelectedPrinterChange())}),o.mxI("valueChange",function(u){return o.eBV(s),o.DH7(r.selectedPrinter,u)||(r.selectedPrinter=u),o.Njj(u)}),o.j41(10,"mat-select-trigger"),o.EFF(11),o.k0s(),o.Z7z(12,Ude,4,6,"mat-option",9,o.fX1),o.k0s()(),o.j41(14,"mat-card",10)(15,"mat-card-header"),o.EFF(16,"Scale:"),o.k0s(),o.j41(17,"mat-card-content")(18,"div",11)(19,"mat-slider",12),o.bIt("change",function(){return o.eBV(s),o.Njj(r.onScaleChange())}),o.j41(20,"input",13,1),o.mxI("ngModelChange",function(u){return o.eBV(s),o.DH7(r.wantedWidth,u)||(r.wantedWidth=u),o.Njj(u)}),o.k0s()()(),o.j41(22,"div",14)(23,"span"),o.EFF(24),o.k0s(),o.nrm(25,"br"),o.j41(26,"span"),o.EFF(27),o.k0s(),o.nrm(28,"br"),o.j41(29,"span"),o.EFF(30),o.k0s()()()(),o.j41(31,"mat-form-field",7)(32,"mat-label"),o.EFF(33,"Bottom center label text"),o.k0s(),o.j41(34,"input",15),o.mxI("ngModelChange",function(u){return o.eBV(s),o.DH7(r.frontText,u)||(r.frontText=u),o.Njj(u)}),o.bIt("input",function(){return o.eBV(s),o.Njj(r.onFrontTextChange())}),o.k0s()(),o.j41(35,"mat-card",10)(36,"mat-card-header"),o.EFF(37,"Second row center text"),o.k0s(),o.j41(38,"mat-card-content",16)(39,"mat-slide-toggle",17),o.bIt("change",function(u){return o.eBV(s),o.Njj(r.onSecondRowVisibilityChange(u))}),o.EFF(40," Show second row text "),o.k0s(),o.j41(41,"mat-form-field",18)(42,"mat-label"),o.EFF(43,"Text"),o.k0s(),o.j41(44,"input",19),o.mxI("ngModelChange",function(u){return o.eBV(s),o.DH7(r.secondRow.currentText,u)||(r.secondRow.currentText=u),o.Njj(u)}),o.bIt("input",function(){return o.eBV(s),o.Njj(r.onSecondRowTextChange())}),o.k0s()()()(),o.j41(45,"mat-card",10)(46,"mat-card-header"),o.EFF(47,"QR-Code"),o.k0s(),o.j41(48,"mat-card-content",16)(49,"mat-slide-toggle",20),o.bIt("change",function(u){return o.eBV(s),o.Njj(r.onQrCodeVisibilityChange(u))}),o.EFF(50," Show QR-Code "),o.k0s(),o.j41(51,"mat-form-field",18)(52,"mat-label"),o.EFF(53,"QR-Code text"),o.k0s(),o.j41(54,"input",21),o.mxI("ngModelChange",function(u){return o.eBV(s),o.DH7(r.qrCode.currentText,u)||(r.qrCode.currentText=u),o.Njj(u)}),o.bIt("input",function(){return o.eBV(s),o.Njj(r.onQrCodeTextChange())}),o.k0s()()()(),o.j41(55,"mat-card",10)(56,"mat-card-header"),o.EFF(57,"Bottom left logo (SVG):"),o.k0s(),o.j41(58,"mat-card-content")(59,"input",22,2),o.bIt("change",function(u){return o.eBV(s),o.Njj(r.onFileSelected(u))}),o.k0s(),o.j41(61,"button",23),o.bIt("click",function(){return o.eBV(s),o.Njj(r.onRemoveLogo())}),o.j41(62,"span"),o.nrm(63,"i",24),o.EFF(64," Remove Logo"),o.k0s()(),o.j41(65,"div",25)(66,"button",26),o.bIt("click",function(){return o.eBV(s),o.Njj(r.onRotateLogo())}),o.j41(67,"span"),o.nrm(68,"i",27),o.EFF(69," Rotate Logo"),o.k0s()(),o.j41(70,"button",28),o.bIt("click",function(){return o.eBV(s),o.Njj(r.onFlipLogo())}),o.j41(71,"span"),o.nrm(72,"i",29),o.EFF(73," Flip Logo"),o.k0s()(),o.j41(74,"cc-labelled-color-picker",30),o.bIt("onColorChange",function(u){return o.eBV(s),o.Njj(r.onLogoColorChange(u))}),o.k0s()()()()(),o.j41(75,"mat-dialog-actions",31)(76,"button",32),o.bIt("click",function(){return o.eBV(s),o.Njj(r.download3MFFile())}),o.j41(77,"span"),o.nrm(78,"i",33),o.EFF(79," Download 3MF"),o.k0s()(),o.j41(80,"button",34),o.bIt("click",function(){return o.eBV(s),o.Njj(r.downloadStlFile())}),o.j41(81,"span"),o.nrm(82,"i",33),o.EFF(83," Download minimal STL"),o.k0s()()()()}2&i&&(o.R7$(9),o.R50("value",r.selectedPrinter),o.R7$(2),o.SpI(" ",r.selectedPrinter.name," "),o.R7$(),o.Dyx(r.printers),o.R7$(7),o.Y8G("max",r.maxWidth),o.R7$(),o.R50("ngModel",r.wantedWidth),o.R7$(4),o.Lme("Width: ",(r.currentSize.x/10).toFixed(1),"cm (max. ",(r.selectedPrinter.x/10).toFixed(1),")"),o.R7$(3),o.Lme("Depth: ",(r.currentSize.y/10).toFixed(1),"cm (max. ",(r.selectedPrinter.y/10).toFixed(1),")"),o.R7$(3),o.Lme("Height: ",(r.currentSize.z/10).toFixed(1),"cm (max. ",(r.selectedPrinter.z/10).toFixed(1),")"),o.R7$(4),o.R50("ngModel",r.frontText),o.Y8G("placeholder","CodeCharta"),o.R7$(5),o.Y8G("checked",r.secondRow.isVisible),o.R7$(2),o.Y8G("hidden",r.secondRow.isVisible),o.R7$(3),o.R50("ngModel",r.secondRow.currentText),o.R7$(5),o.Y8G("checked",r.qrCode.isVisible),o.R7$(2),o.Y8G("hidden",r.qrCode.isVisible),o.R7$(3),o.R50("ngModel",r.qrCode.currentText),o.R7$(7),o.Y8G("hidden",!r.isFileSelected),o.R7$(4),o.Y8G("hidden",!r.isFileSelected),o.R7$(9),o.Y8G("hexColor",r.logoColor)("labels",o.lJ4(24,Lde)),o.R7$(2),o.Y8G("disabled",!r.isPrintMeshLoaded),o.R7$(4),o.Y8G("disabled",!r.isPrintMeshLoaded))},dependencies:[Zg,Al,Lu,Nu,e0,tq,yd,e2,iq,nq,aq,hR,ZS,Xg,Jw,nx,t0,JS,ns,t6,Zl],styles:[".cc-printer-specs[_ngcontent-%COMP%]{color:#888}.cc-file-input[_ngcontent-%COMP%]{margin-top:16px}"]})}}return n})();const Sq=sn($c,n=>n.colorMode),sx=bn("SET_COLOR_MODE",{_as:"props",_p:void 0});let Vde=(()=>{class n{constructor(e,i,r){this.dialog=e,this.state=i,this.store=r}export3DMap(){this.state.getValue().dynamicSettings.colorMode!==Gl.absolute?this.dialog.open(lu,{data:this.buildErrorDialog()}):this.dialog.open(Eq,{panelClass:"cc-export-3D-map-dialog"})}buildErrorDialog(){return{title:"Map could not be exported",message:'

    3D map can only be exported when color mode is set to absolute.
    You can change this under Color Metric Options or use "Change and continue" to directly change the color mode and continue.

    ',resolveErrorData:{buttonText:"Change and continue",onResolveErrorClick:()=>{this.store.dispatch(sx({value:Gl.absolute})),this.store.select(Sq).pipe(ms(1)).subscribe(l=>{l===Gl.absolute&&setTimeout(()=>{this.dialog.open(Eq,{panelClass:"cc-export-3D-map-dialog"})},100)})}}}}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es),o.rXU(Vi),o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-export-3d-map-button"]],standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[["title","Download 3MF code file",3,"click","icon"]],template:function(i,r){1&i&&(o.j41(0,"cc-action-icon",0),o.bIt("click",function(){return r.export3DMap()}),o.k0s()),2&i&&o.Y8G("icon","fa fa-print")},dependencies:[pl],encapsulation:2})}}return n})();const n6=(0,v(1853).L)(n=>function(){n(this),this.name="EmptyError",this.message="no elements in sequence"});function zde(n=Gde){return(0,Ir.N)((t,e)=>{let i=!1;t.subscribe((0,lr._)(e,r=>{i=!0,e.next(r)},()=>i?e.complete():e.error(n())))})}function Gde(){return new n6}function r2(n,t){const e=arguments.length>=2;return i=>i.pipe(n?hr((r,s)=>n(r,s,i)):Ll.D,ms(1),e?function Qde(n){return(0,Ir.N)((t,e)=>{let i=!1;t.subscribe((0,lr._)(e,r=>{i=!0,e.next(r)},()=>{i||e.next(n),e.complete()}))})}(t):zde(()=>new n6))}const Vu=v(4999),r0=bn("SET_AMOUNT_OF_TOP_LABELS",{_as:"props",_p:void 0}),o2=bn("SET_COLOR_LABELS",{_as:"props",_p:void 0}),ax=bn("SET_EDGE_HEIGHT",{_as:"props",_p:void 0}),gR=bn("SET_SCREENSHOT_TO_CLIPBOARD_ENABLED",{_as:"props",_p:void 0}),_R=bn("SET_EXPERIMENTAL_FEATURES_ENABLED",{_as:"props",_p:void 0}),s2=bn("SET_ENABLE_FLOOR_LABELS",{_as:"props",_p:void 0}),a2=bn("SET_HIDE_FLAT_BUILDINGS",{_as:"props",_p:void 0}),l2=bn("SET_INVERT_AREA",{_as:"props",_p:void 0}),c2=bn("SET_INVERT_HEIGHT",{_as:"props",_p:void 0}),i6=bn("SET_IS_EDGE_METRIC_VISIBLE",{_as:"props",_p:void 0}),bR=bn("TOGGLE_IS_EDGE_METRIC_VISIBLE"),r6=bn("SET_IS_COLOR_METRIC_LINKED_TO_HEIGHT_METRIC",{_as:"props",_p:void 0}),o6=bn("TOGGLE_IS_COLOR_METRIC_LINKED_TO_HEIGHT_METRIC"),vR=bn("SET_PRESENTATION_MODE",{_as:"props",_p:void 0}),d2=bn("SET_IS_WHITE_BACKGROUND",{_as:"props",_p:void 0}),u2=bn("SET_LAYOUT_ALGORITHM",{_as:"props",_p:void 0}),h2=bn("SET_MAX_TREE_MAP_FILES",{_as:"props",_p:void 0}),yR=bn("SET_RESET_CAMERA_IF_NEW_FILE_IS_LOADED",{_as:"props",_p:void 0}),lx=bn("SET_SCALING",{_as:"props",_p:void 0}),f2=bn("SET_SHARPNESS_MODE",{_as:"props",_p:void 0}),p2=bn("SET_SHOW_METRIC_LABEL_NAME_VALUE",{_as:"props",_p:void 0}),A2=bn("SET_SHOW_METRIC_LABEL_NODE_NAME",{_as:"props",_p:void 0}),m2=bn("SET_SHOW_ONLY_BUILDINGS_WITH_EDGES",{_as:"props",_p:void 0}),jp=bn("SET_AREA_METRIC",{_as:"props",_p:void 0}),Hu=bn("SET_COLOR_METRIC",{_as:"props",_p:void 0}),Zh=bn("SET_COLOR_RANGE",{_as:"props",_p:void 0}),g2=bn("SET_DISTRIBUTION_METRIC",{_as:"props",_p:void 0}),$p=bn("SET_EDGE_METRIC",{_as:"props",_p:void 0}),wR=bn("SET_ALL_FOCUSED_NODES",{_as:"props",_p:void 0}),xR=bn("FOCUS_NODE",{_as:"props",_p:void 0}),_2=bn("UNFOCUS_ALL_NODES"),CR=bn("UNFOCUS_NODE"),qp=bn("SET_HEIGHT_METRIC",{_as:"props",_p:void 0}),cx=bn("SET_MARGIN",{_as:"props",_p:void 0}),o0=bn("SET_SEARCH_PATTERN",{_as:"props",_p:void 0}),MR=bn("SET_SORTING_OPTION",{_as:"props",_p:void 0}),s6=bn("SET_ATTRIBUTE_DESCRIPTORS",{_as:"props",_p:void 0}),a6=bn("SET_ATTRIBUTE_TYPES",{_as:"props",_p:void 0}),l6=bn("UPDATE_ATTRIBUTE_TYPE",{_as:"props",_p:void 0}),c6=bn("SET_BLACKLIST",{_as:"props",_p:void 0}),d6=bn("ADD_BLACKLIST_ITEM",{_as:"props",_p:void 0}),ER=bn("ADD_BLACKLIST_ITEMS",{_as:"props",_p:void 0}),SR=bn("REMOVE_BLACKLIST_ITEM",{_as:"props",_p:void 0}),u6=bn("ADD_BLACKLIST_ITEMS_IF_NOT_RESULTS_IN_EMPTY_MAP",{_as:"props",_p:void 0}),h6=bn("SET_EDGES",{_as:"props",_p:void 0}),Iq=bn("ADD_EDGE",{_as:"props",_p:void 0}),Fq=bn("REMOVE_EDGE",{_as:"props",_p:void 0}),TR=bn("SET_MARKED_PACKAGES",{_as:"props",_p:void 0}),b2=bn("MARK_PACKAGES",{_as:"props",_p:void 0}),IR=bn("UNMARK_PACKAGE",{_as:"props",_p:void 0});function Dq(n,t){this.v=n,this.k=t}function Bq(n){return new Dq(n,0)}function v2(n){var t,e;function i(s,l){try{var u=n[s](l),f=u.value,p=f instanceof Dq;Promise.resolve(p?f.v:f).then(function(m){if(p){var _="return"===s?"return":"next";if(!f.k||m.done)return i(_,m);m=n[_](m).value}r(u.done?"return":"normal",m)},function(m){i("throw",m)})}catch(m){r("throw",m)}}function r(s,l){switch(s){case"return":t.resolve({value:l,done:!0});break;case"throw":t.reject(l);break;default:t.resolve({value:l,done:!1})}(t=t.next)?i(t.key,t.arg):e=null}this._invoke=function(s,l){return new Promise(function(u,f){var p={key:s,arg:l,resolve:u,reject:f,next:null};e?e=e.next=p:(t=e=p,i(s,l))})},"function"!=typeof n.return&&(this.return=void 0)}v2.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},v2.prototype.next=function(n){return this._invoke("next",n)},v2.prototype.throw=function(n){return this._invoke("throw",n)},v2.prototype.return=function(n){return this._invoke("return",n)};const f6=(n,t)=>t.some(e=>n instanceof e);let kq,Rq;const p6=new WeakMap,A6=new WeakMap,FR=new WeakMap;let m6={get(n,t,e){if(n instanceof IDBTransaction){if("done"===t)return p6.get(n);if("store"===t)return e.objectStoreNames[1]?void 0:e.objectStore(e.objectStoreNames[0])}return s0(n[t])},set:(n,t,e)=>(n[t]=e,!0),has:(n,t)=>n instanceof IDBTransaction&&("done"===t||"store"===t)||t in n};function Pq(n){m6=n(m6)}function Yde(n){return"function"==typeof n?function Kde(n){return function qde(){return Rq||(Rq=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}().includes(n)?function(...t){return n.apply(g6(this),t),s0(this.request)}:function(...t){return s0(n.apply(g6(this),t))}}(n):(n instanceof IDBTransaction&&function Xde(n){if(p6.has(n))return;const t=new Promise((e,i)=>{const r=()=>{n.removeEventListener("complete",s),n.removeEventListener("error",l),n.removeEventListener("abort",l)},s=()=>{e(),r()},l=()=>{i(n.error||new DOMException("AbortError","AbortError")),r()};n.addEventListener("complete",s),n.addEventListener("error",l),n.addEventListener("abort",l)});p6.set(n,t)}(n),f6(n,function $de(){return kq||(kq=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}())?new Proxy(n,m6):n)}function s0(n){if(n instanceof IDBRequest)return function Wde(n){const t=new Promise((e,i)=>{const r=()=>{n.removeEventListener("success",s),n.removeEventListener("error",l)},s=()=>{e(s0(n.result)),r()},l=()=>{i(n.error),r()};n.addEventListener("success",s),n.addEventListener("error",l)});return FR.set(t,n),t}(n);if(A6.has(n))return A6.get(n);const t=Yde(n);return t!==n&&(A6.set(n,t),FR.set(t,n)),t}const g6=n=>FR.get(n),Jde=["get","getKey","getAll","getAllKeys","count"],eue=["put","add","delete","clear"],_6=new Map;function Oq(n,t){if(!(n instanceof IDBDatabase)||t in n||"string"!=typeof t)return;if(_6.get(t))return _6.get(t);const e=t.replace(/FromIndex$/,""),i=t!==e,r=eue.includes(e);if(!(e in(i?IDBIndex:IDBObjectStore).prototype)||!r&&!Jde.includes(e))return;const s=function(){var l=Mn(function*(u,...f){const p=this.transaction(u,r?"readwrite":"readonly");let m=p.store;return i&&(m=m.index(f.shift())),(yield Promise.all([m[e](...f),r&&p.done]))[0]});return function(f){return l.apply(this,arguments)}}();return _6.set(t,s),s}Pq(n=>({...n,get:(t,e,i)=>Oq(t,e)||n.get(t,e,i),has:(t,e)=>!!Oq(t,e)||n.has(t,e)}));const tue=["continue","continuePrimaryKey","advance"],Nq={},b6=new WeakMap,Lq=new WeakMap,nue={get(n,t){if(!tue.includes(t))return n[t];let e=Nq[t];return e||(e=Nq[t]=function(...i){b6.set(this,Lq.get(this)[t](...i))}),e}};function iue(){return v6.apply(this,arguments)}function v6(){return v6=function jde(n){return function(){return new v2(n.apply(this,arguments))}}(function*(...n){let t=this;if(t instanceof IDBCursor||(t=yield Bq(t.openCursor(...n))),!t)return;const e=new Proxy(t,nue);for(Lq.set(e,t),FR.set(e,g6(t));t;)yield e,t=yield Bq(b6.get(e)||t.continue()),b6.delete(e)}),v6.apply(this,arguments)}function Uq(n,t){return t===Symbol.asyncIterator&&f6(n,[IDBIndex,IDBObjectStore,IDBCursor])||"iterate"===t&&f6(n,[IDBIndex,IDBObjectStore])}Pq(n=>({...n,get:(t,e,i)=>Uq(t,e)?iue:n.get(t,e,i),has:(t,e)=>Uq(t,e)||n.has(t,e)}));const rue="CodeCharta",oue=1,y2="ccstate",Vq="id",y6=1001;function w6(){return(w6=Mn(function*(n){const e=(yield E6()).transaction(y2,"readwrite");yield e.store.put({[Vq]:y6,state:n}),yield e.done})).apply(this,arguments)}function x6(){return C6.apply(this,arguments)}function C6(){return(C6=Mn(function*(){return(yield(yield E6()).get(y2,y6))?.state||null})).apply(this,arguments)}function M6(){return(M6=Mn(function*(){const t=(yield E6()).transaction(y2,"readwrite");yield t.store.delete(y6),yield t.done})).apply(this,arguments)}function E6(){return S6.apply(this,arguments)}function S6(){return(S6=Mn(function*(){return function Zde(n,t,{blocked:e,upgrade:i,blocking:r,terminated:s}={}){const l=indexedDB.open(n,t),u=s0(l);return i&&l.addEventListener("upgradeneeded",f=>{i(s0(l.result),f.oldVersion,f.newVersion,s0(l.transaction),f)}),e&&l.addEventListener("blocked",f=>e(f.oldVersion,f.newVersion,f)),u.then(f=>{s&&f.addEventListener("close",()=>s()),r&&f.addEventListener("versionchange",p=>r(p.oldVersion,p.newVersion,p))}).catch(()=>{}),u}(rue,oue,{upgrade(n){n.objectStoreNames.contains(y2)||n.createObjectStore(y2,{keyPath:Vq})}})})).apply(this,arguments)}const lue=JSON.parse('{"projectName":"Sample Project with Edges","apiVersion":"1.2","fileChecksum":"valid-md5-sample1","nodes":[{"name":"root","type":"Folder","attributes":{},"children":[{"name":"sample1OnlyLeaf.scss","type":"File","attributes":{"rloc":400,"functions":10,"sonar_complexity":100,"pairingRate":32,"avgCommits":17},"link":"http://www.google.de"},{"name":"bigLeaf.ts","type":"File","attributes":{"rloc":100,"functions":10,"sonar_complexity":1,"pairingRate":77,"avgCommits":56},"link":"http://www.google.de"},{"name":"ParentLeaf","type":"Folder","attributes":{},"children":[{"name":"smallLeaf.html","type":"File","attributes":{"rloc":30,"functions":100,"sonar_complexity":100,"pairingRate":60,"avgCommits":51}},{"name":"otherSmallLeaf.ts","type":"File","attributes":{"rloc":70,"functions":1000,"sonar_complexity":10,"pairingRate":65,"avgCommits":22}}]}]}],"edges":[{"fromNodeName":"/root/bigLeaf.ts","toNodeName":"/root/ParentLeaf/smallLeaf.html","attributes":{"pairingRate":89,"avgCommits":34}},{"fromNodeName":"/root/sample1OnlyLeaf.scss","toNodeName":"/root/ParentLeaf/smallLeaf.html","attributes":{"pairingRate":32,"avgCommits":17}},{"fromNodeName":"/root/ParentLeaf/otherSmallLeaf.ts","toNodeName":"/root/bigLeaf.ts","attributes":{"pairingRate":65,"avgCommits":22}}],"attributeTypes":{"nodes":{"rloc":"absolute","functions":"absolute","sonar_complexity":"absolute","pairingRate":"relative"},"edges":{"pairingRate":"relative","avgCommits":"absolute"}}}'),cue=JSON.parse('{"projectName":"Sample Project","apiVersion":"1.2","fileChecksum":"valid-md5-sample2","nodes":[{"name":"root","type":"Folder","attributes":{},"children":[{"name":"bigLeaf.ts","type":"File","attributes":{"rloc":120,"functions":10,"sonar_complexity":1},"link":"http://www.google.de"},{"name":"ParentLeaf","type":"Folder","attributes":{},"children":[{"name":"smallLeaf.html","type":"File","attributes":{"rloc":30,"functions":101,"sonar_complexity":80}},{"name":"otherSmallLeaf.ts","type":"File","attributes":{"rloc":70,"functions":10,"sonar_complexity":100}},{"name":"sample2LeafMergedIn.kt","type":"File","attributes":{"rloc":600,"functions":10,"sonar_complexity":1},"link":"http://www.google.de"}]}]}],"attributeTypes":{"nodes":{"rloc":"absolute","functions":"absolute","sonar_complexity":"absolute"}}}');class Wp{constructor(t,e,i){this.kind=t,this.value=e,this.error=i,this.hasValue="N"===t}observe(t){return Hq(this,t)}do(t,e,i){const{kind:r,value:s,error:l}=this;return"N"===r?t?.(s):"E"===r?e?.(l):i?.()}accept(t,e,i){var r;return(0,Yr.T)(null===(r=t)||void 0===r?void 0:r.next)?this.observe(t):this.do(t,e,i)}toObservable(){const{kind:t,value:e,error:i}=this,r="N"===t?Mo(e):"E"===t?function due(n,t){const e=(0,Yr.T)(n)?n:()=>n,i=r=>r.error(e());return new qr.c(t?r=>t.schedule(i,0,r):i)}(()=>i):"C"===t?gh:0;if(!r)throw new TypeError(`Unexpected notification kind ${t}`);return r}static createNext(t){return new Wp("N",t)}static createError(t){return new Wp("E",void 0,t)}static createComplete(){return Wp.completeNotification}}function Hq(n,t){var e,i,r;const{kind:s,value:l,error:u}=n;if("string"!=typeof s)throw new TypeError('Invalid notification, missing "kind"');"N"===s?null===(e=t.next)||void 0===e||e.call(t,l):"E"===s?null===(i=t.error)||void 0===i||i.call(t,u):null===(r=t.complete)||void 0===r||r.call(t)}function Qq(n){return(0,Ir.N)((t,e)=>{let s,i=null,r=!1;i=t.subscribe((0,lr._)(e,void 0,void 0,l=>{s=Rr(n(l,Qq(n)(t))),i?(i.unsubscribe(),i=null,s.subscribe(e)):r=!0})),r&&(i.unsubscribe(),i=null,s.subscribe(e))})}function zq(n,t,e,i){return(0,Ir.N)((r,s)=>{let l;t&&"function"!=typeof t?({duration:e,element:l,connector:i}=t):l=t;const u=new Map,f=F=>{u.forEach(F),F(s)},p=F=>f(D=>D.error(F));let m=0,_=!1;const b=new lr.H(s,F=>{try{const D=n(F);let T=u.get(D);if(!T){u.set(D,T=i?i():new mi.B);const I=function w(F,D){const T=new qr.c(I=>{m++;const O=D.subscribe(I);return()=>{O.unsubscribe(),0==--m&&_&&b.unsubscribe()}});return T.key=F,T}(D,T);if(s.next(I),e){const O=(0,lr._)(T,()=>{T.complete(),O?.unsubscribe()},void 0,void 0,()=>u.delete(D));b.add(Rr(e(I)).subscribe(O))}}T.next(l?l(F):F)}catch(D){p(D)}},()=>f(F=>F.complete()),p,()=>u.clear(),()=>(_=!0,0===m));r.subscribe(b)})}function Gq(n,t){return t?e=>e.pipe(Gq((i,r)=>Rr(n(i,r)).pipe((0,qn.T)((s,l)=>t(i,s,r,l))))):(0,Ir.N)((e,i)=>{let r=0,s=null,l=!1;e.subscribe((0,lr._)(i,u=>{s||(s=(0,lr._)(i,void 0,()=>{s=null,l&&i.complete()}),Rr(n(u,r++)).subscribe(s))},()=>{l=!0,!s&&i.complete()}))})}Wp.completeNotification=new Wp("C");const pue={dispatch:!0,functional:!1,useEffectsErrorHandler:!0},DR="__@ngrx/effects_create__";function os(n,t={}){const e=t.functional?n:n(),i={...pue,...t};return Object.defineProperty(e,DR,{value:i}),e}function $q(n){return Object.getPrototypeOf(n)}function T6(n){return"function"==typeof n}function bue(n,t,e){const i=$q(n),s=i&&"Object"!==i.constructor.name?i.constructor.name:null,l=function jq(n){return function Aue(n){return Object.getOwnPropertyNames(n).filter(i=>!(!n[i]||!n[i].hasOwnProperty(DR))&&n[i][DR].hasOwnProperty("dispatch")).map(i=>({propertyName:i,...n[i][DR]}))}(n)}(n).map(({propertyName:u,dispatch:f,useEffectsErrorHandler:p})=>{const m="function"==typeof n[u]?n[u]():n[u],_=p?e(m,t):m;return!1===f?_.pipe(dq()):_.pipe(function hue(){return(0,Ir.N)((n,t)=>{n.subscribe((0,lr._)(t,e=>{t.next(Wp.createNext(e))},()=>{t.next(Wp.createComplete()),t.complete()},e=>{t.next(Wp.createError(e)),t.complete()}))})}()).pipe((0,qn.T)(w=>({effect:n[u],notification:w,propertyName:u,sourceName:s,sourceInstance:n})))});return ql(...l)}function qq(n,t,e=10){return n.pipe(Qq(i=>(t&&t.handleError(i),e<=1?n:qq(n,t,e-1))))}let Xp=(()=>{class n extends qr.c{constructor(e){super(),e&&(this.source=e)}lift(e){const i=new n;return i.source=this,i.operator=e,i}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Sc))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function Jh(...n){return hr(t=>n.some(e=>"string"==typeof e?e===t.type:e.type===t.type))}new o.nKC("@ngrx/effects Internal Root Guard"),new o.nKC("@ngrx/effects User Provided Effects"),new o.nKC("@ngrx/effects Internal Root Effects"),new o.nKC("@ngrx/effects Internal Root Effects Instances"),new o.nKC("@ngrx/effects Internal Feature Effects"),new o.nKC("@ngrx/effects Internal Feature Effects Instance Groups");const wue=new o.nKC("@ngrx/effects Effects Error Handler",{providedIn:"root",factory:()=>qq}),xue=bn("@ngrx/effects/init");function kue(n){return I6(n,"ngrxOnInitEffects")}function I6(n,t){return n&&t in n&&"function"==typeof n[t]}let Wq=(()=>{class n extends mi.B{constructor(e,i){super(),this.errorHandler=e,this.effectsErrorHandler=i}addEffects(e){this.next(e)}toActions(){return this.pipe(zq(e=>function mue(n){return!!n.constructor&&"Object"!==n.constructor.name&&"Function"!==n.constructor.name}(e)?$q(e):e),Xs(e=>e.pipe(zq(Rue))),Xs(e=>{const i=e.pipe(Gq(s=>function Pue(n,t){return e=>{const i=bue(e,n,t);return function Due(n){return I6(n,"ngrxOnRunEffects")}(e)?e.ngrxOnRunEffects(i):i}}(this.errorHandler,this.effectsErrorHandler)(s)),(0,qn.T)(s=>(function Cue(n,t){if("N"===n.notification.kind){const e=n.notification.value;!function Mue(n){return"function"!=typeof n&&n&&n.type&&"string"==typeof n.type}(e)&&t.handleError(new Error(`Effect ${function Eue({propertyName:n,sourceInstance:t,sourceName:e}){const i="function"==typeof t[n];return e?`"${e}.${String(n)}${i?"()":""}"`:`"${String(n)}()"`}(n)} dispatched an invalid action: ${function Sue(n){try{return JSON.stringify(n)}catch{return n}}(e)}`))}}(s,this.errorHandler),s.notification)),hr(s=>"N"===s.kind&&null!=s.value),function fue(){return(0,Ir.N)((n,t)=>{n.subscribe((0,lr._)(t,e=>Hq(e,t)))})}());return ql(i,e.pipe(ms(1),hr(kue),(0,qn.T)(s=>s.ngrxOnInitEffects())))}))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(o.zcH),o.KVO(wue))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function Rue(n){return function Iue(n){return I6(n,"ngrxOnIdentifyEffects")}(n)?n.ngrxOnIdentifyEffects():""}let Xq=(()=>{class n{get isStarted(){return!!this.effectsSubscription}constructor(e,i){this.effectSources=e,this.store=i,this.effectsSubscription=null}start(){this.effectsSubscription||(this.effectsSubscription=this.effectSources.toActions().subscribe(this.store))}ngOnDestroy(){this.effectsSubscription&&(this.effectsSubscription.unsubscribe(),this.effectsSubscription=null)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Wq),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const Nue=[$p,qp,Hu,jp,xh];var Wc=function(n){return n.areaMetric="area",n.heightMetric="height",n.colorMetric="color",n.edgeMetric="edge",n.currentFilesAreSampleFiles="currentFilesAreSampleFiles",n}(Wc||{});let Lue=(()=>{class n{constructor(e,i,r,s){this.loadInitialFileService=e,this.actions$=i,this.state=r,this.store=s,this.saveMetricsInQueryParameters$=os(()=>this.actions$.pipe(Jh(...Nue),ul(this.store.select(ka)),(0,qn.T)(l=>l[1].edgeMetricData&&l[1].edgeMetricData.length>0),x_(100),ro(l=>{this.updateMetricQueryParameters(l)})),{dispatch:!1})}updateMetricQueryParameters(e){const i=this.state.getValue(),{edgeMetric:r,heightMetric:s,colorMetric:l,areaMetric:u}=i.dynamicSettings;this.loadInitialFileService.checkFileQueryParameterPresent()&&(this.addOrUpdateQueryParameter(Wc.areaMetric,u),this.addOrUpdateQueryParameter(Wc.heightMetric,s),this.addOrUpdateQueryParameter(Wc.colorMetric,l),e?this.addOrUpdateQueryParameter(Wc.edgeMetric,r):this.deleteQueryParameterIfExists(Wc.edgeMetric),i.appStatus.currentFilesAreSampleFiles?this.addOrUpdateQueryParameter(Wc.currentFilesAreSampleFiles,!0):this.deleteQueryParameterIfExists(Wc.currentFilesAreSampleFiles))}addOrUpdateQueryParameter(e,i){const r=new URL(window.location.href),s=r.search.slice(1),l=s.length>0?s.split("&"):[],u=[];let f=!1;for(const p of l)p.split("=")[0]===e?(u.push(`${e}=${encodeURIComponent(i)}`),f=!0):u.push(p);f||u.push(`${e}=${encodeURIComponent(i)}`),r.search=u.join("&"),window.history.replaceState(null,"",r.toString())}deleteQueryParameterIfExists(e){const i=new URL(window.location.href),r=i.search.slice(1),s=r.length>0?r.split("&"):[],l=[];for(const u of s){const[f,p]=u.split("=");f!==e&&l.push(`${f}=${p}`)}i.search=l.join("&"),window.history.replaceState(null,"",i.toString())}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(O6),o.KVO(Xp),o.KVO(Vi),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function Kq(n,t){const e="object"==typeof t;return new Promise((i,r)=>{const s=new Q8.Ms({next:l=>{i(l),s.unsubscribe()},error:r,complete:()=>{e?i(t.defaultValue):r(new n6)}});n.subscribe(s)})}class Yq{constructor(t){this.httpClient=t}getParameterByName(t){const e=t.replaceAll(/[[\]]/g,"\\$&"),r=new RegExp(`[?&]${e}(=([^&#]*)|&|#|$)`).exec(window.location.href);return r?r[2]?decodeURIComponent(r[2].replaceAll("+"," ")):"":null}getFileDataFromQueryParam(){var t=this;return Mn(function*(){const i=new URLSearchParams(window.location.search).getAll("file");if(0===i.length)throw new Error("Filename is missing");return Promise.all(i.map(function(){var r=Mn(function*(s){return t.getFileDataFromFile(s)});return function(s){return r.apply(this,arguments)}}()))})()}getFileDataFromFile(t){var e=this;return Mn(function*(){if(!t)throw new Error("Filename is missing");return t.endsWith(".gz")?e.getUnzippedFile(t):e.getFile(t)})()}getUnzippedFile(t){var e=this;return Mn(function*(){const i=yield Kq(e.httpClient.get(t,{responseType:"arraybuffer",observe:"response"}));if(i.status>=200&&i.status<300){const l=HI(N1(i.body,{to:"string"}));return{fileName:e.getFileName(t,l.projectName),fileSize:13,content:l}}throw new Error(`Could not load file "${t}"`)})()}getFile(t){var e=this;return Mn(function*(){const i=yield Kq(e.httpClient.get(t,{observe:"response"}));if(i.status>=200&&i.status<300){const s=HI(i.body);return{fileName:t=e.getFileName(t,s.projectName),fileSize:15,content:s}}throw new Error(`Could not load file "${t}"`)})()}getFileName(t,e){return e?.trim()||t.split("/").pop()}}function Zq(n){return(0,Ir.N)((t,e)=>{try{t.subscribe(e)}finally{e.add(n)}})}class BR{}class kR{}class kd{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?"string"==typeof t?this.lazyInit=()=>{this.headers=new Map,t.split("\n").forEach(e=>{const i=e.indexOf(":");if(i>0){const r=e.slice(0,i),s=r.toLowerCase(),l=e.slice(i+1).trim();this.maybeSetNormalizedName(r,s),this.headers.has(s)?this.headers.get(s).push(l):this.headers.set(s,[l])}})}:typeof Headers<"u"&&t instanceof Headers?(this.headers=new Map,t.forEach((e,i)=>{this.setHeaderEntries(i,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(t).forEach(([e,i])=>{this.setHeaderEntries(e,i)})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof kd?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new kd;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof kd?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let i=t.value;if("string"==typeof i&&(i=[i]),0===i.length)return;this.maybeSetNormalizedName(t.name,e);const r=("a"===t.op?this.headers.get(e):void 0)||[];r.push(...i),this.headers.set(e,r);break;case"d":const s=t.value;if(s){let l=this.headers.get(e);if(!l)return;l=l.filter(u=>-1===s.indexOf(u)),0===l.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,l)}else this.headers.delete(e),this.normalizedNames.delete(e)}}setHeaderEntries(t,e){const i=(Array.isArray(e)?e:[e]).map(s=>s.toString()),r=t.toLowerCase();this.headers.set(r,i),this.maybeSetNormalizedName(t,r)}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class Vue{encodeKey(t){return Jq(t)}encodeValue(t){return Jq(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const Que=/%(\d[a-f0-9])/gi,zue={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function Jq(n){return encodeURIComponent(n).replace(Que,(t,e)=>zue[e]??t)}function RR(n){return`${n}`}class a0{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new Vue,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function Hue(n,t){const e=new Map;return n.length>0&&n.replace(/^\?/,"").split("&").forEach(r=>{const s=r.indexOf("="),[l,u]=-1==s?[t.decodeKey(r),""]:[t.decodeKey(r.slice(0,s)),t.decodeValue(r.slice(s+1))],f=e.get(l)||[];f.push(u),e.set(l,f)}),e}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const i=t.fromObject[e],r=Array.isArray(i)?i.map(RR):[RR(i)];this.map.set(e,r)})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}appendAll(t){const e=[];return Object.keys(t).forEach(i=>{const r=t[i];Array.isArray(r)?r.forEach(s=>{e.push({param:i,value:s,op:"a"})}):e.push({param:i,value:r,op:"a"})}),this.clone(e)}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(i=>e+"="+this.encoder.encodeValue(i)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const e=new a0({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(t),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(RR(t.value)),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let i=this.map.get(t.param)||[];const r=i.indexOf(RR(t.value));-1!==r&&i.splice(r,1),i.length>0?this.map.set(t.param,i):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}class Gue{constructor(){this.map=new Map}set(t,e){return this.map.set(t,e),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}has(t){return this.map.has(t)}keys(){return this.map.keys()}}function eW(n){return typeof ArrayBuffer<"u"&&n instanceof ArrayBuffer}function tW(n){return typeof Blob<"u"&&n instanceof Blob}function nW(n){return typeof FormData<"u"&&n instanceof FormData}class w2{constructor(t,e,i,r){let s;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function jue(n){switch(n){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==i?i:null,s=r):s=i,s&&(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.context&&(this.context=s.context),s.params&&(this.params=s.params),this.transferCache=s.transferCache),this.headers??=new kd,this.context??=new Gue,this.params){const l=this.params.toString();if(0===l.length)this.urlWithParams=e;else{const u=e.indexOf("?");this.urlWithParams=e+(-1===u?"?":ub.set(w,t.setHeaders[w]),p)),t.setParams&&(m=Object.keys(t.setParams).reduce((b,w)=>b.set(w,t.setParams[w]),m)),new w2(e,i,l,{params:m,headers:p,context:_,reportProgress:f,responseType:r,withCredentials:u,transferCache:s})}}var l0=function(n){return n[n.Sent=0]="Sent",n[n.UploadProgress=1]="UploadProgress",n[n.ResponseHeader=2]="ResponseHeader",n[n.DownloadProgress=3]="DownloadProgress",n[n.Response=4]="Response",n[n.User=5]="User",n}(l0||{});class F6{constructor(t,e=200,i="OK"){this.headers=t.headers||new kd,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||i,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class PR extends F6{constructor(t={}){super(t),this.type=l0.ResponseHeader}clone(t={}){return new PR({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class dv extends F6{constructor(t={}){super(t),this.type=l0.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new dv({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class dx extends F6{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function D6(n,t){return{body:t,headers:n.headers,context:n.context,observe:n.observe,params:n.params,reportProgress:n.reportProgress,responseType:n.responseType,withCredentials:n.withCredentials,transferCache:n.transferCache}}let B6=(()=>{class n{constructor(e){this.handler=e}request(e,i,r={}){let s;if(e instanceof w2)s=e;else{let f,p;f=r.headers instanceof kd?r.headers:new kd(r.headers),r.params&&(p=r.params instanceof a0?r.params:new a0({fromObject:r.params})),s=new w2(e,i,void 0!==r.body?r.body:null,{headers:f,context:r.context,params:p,reportProgress:r.reportProgress,responseType:r.responseType||"json",withCredentials:r.withCredentials,transferCache:r.transferCache})}const l=Mo(s).pipe(function Uue(n,t){return(0,Yr.T)(t)?Xs(n,t,1):Xs(n,1)}(f=>this.handler.handle(f)));if(e instanceof w2||"events"===r.observe)return l;const u=l.pipe(hr(f=>f instanceof dv));switch(r.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return u.pipe((0,qn.T)(f=>{if(null!==f.body&&!(f.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return f.body}));case"blob":return u.pipe((0,qn.T)(f=>{if(null!==f.body&&!(f.body instanceof Blob))throw new Error("Response is not a Blob.");return f.body}));case"text":return u.pipe((0,qn.T)(f=>{if(null!==f.body&&"string"!=typeof f.body)throw new Error("Response is not a string.");return f.body}));default:return u.pipe((0,qn.T)(f=>f.body))}case"response":return u;default:throw new Error(`Unreachable: unhandled observe type ${r.observe}}`)}}delete(e,i={}){return this.request("DELETE",e,i)}get(e,i={}){return this.request("GET",e,i)}head(e,i={}){return this.request("HEAD",e,i)}jsonp(e,i){return this.request("JSONP",e,{params:(new a0).append(i,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,i={}){return this.request("OPTIONS",e,i)}patch(e,i,r={}){return this.request("PATCH",e,D6(r,i))}post(e,i,r={}){return this.request("POST",e,D6(r,i))}put(e,i,r={}){return this.request("PUT",e,D6(r,i))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(BR))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const Xue=/^\)\]\}',?\n/;function rW(n){if(n.url)return n.url;const t="X-Request-URL".toLocaleLowerCase();return n.headers.get(t)}let k6=(()=>{class n{constructor(){this.fetchImpl=(0,o.WQX)(Yue,{optional:!0})?.fetch??((...e)=>globalThis.fetch(...e)),this.ngZone=(0,o.WQX)(o.SKi)}handle(e){return new qr.c(i=>{const r=new AbortController;return this.doRequest(e,r.signal,i).then(R6,s=>i.error(new dx({error:s}))),()=>r.abort()})}doRequest(e,i,r){var s=this;return Mn(function*(){const l=s.createRequestInit(e);let u;try{const F=s.ngZone.runOutsideAngular(()=>s.fetchImpl(e.urlWithParams,{signal:i,...l}));(function Zue(n){n.then(R6,R6)})(F),r.next({type:l0.Sent}),u=yield F}catch(F){return void r.error(new dx({error:F,status:F.status??0,statusText:F.statusText,url:e.urlWithParams,headers:F.headers}))}const f=new kd(u.headers),p=u.statusText,m=rW(u)??e.urlWithParams;let _=u.status,b=null;if(e.reportProgress&&r.next(new PR({headers:f,status:_,statusText:p,url:m})),u.body){const F=u.headers.get("content-length"),D=[],T=u.body.getReader();let O,R,I=0;const P=typeof Zone<"u"&&Zone.current;yield s.ngZone.runOutsideAngular(Mn(function*(){for(;;){const{done:J,value:te}=yield T.read();if(J)break;if(D.push(te),I+=te.length,e.reportProgress){R="text"===e.responseType?(R??"")+(O??=new TextDecoder).decode(te,{stream:!0}):void 0;const ie=()=>r.next({type:l0.DownloadProgress,total:F?+F:void 0,loaded:I,partialText:R});P?P.run(ie):ie()}}}));const ee=s.concatChunks(D,I);try{const J=u.headers.get("Content-Type")??"";b=s.parseBody(e,ee,J)}catch(J){return void r.error(new dx({error:J,headers:new kd(u.headers),status:u.status,statusText:u.statusText,url:rW(u)??e.urlWithParams}))}}0===_&&(_=b?200:0),_>=200&&_<300?(r.next(new dv({body:b,headers:f,status:_,statusText:p,url:m})),r.complete()):r.error(new dx({error:b,headers:f,status:_,statusText:p,url:m}))})()}parseBody(e,i,r){switch(e.responseType){case"json":const s=(new TextDecoder).decode(i).replace(Xue,"");return""===s?null:JSON.parse(s);case"text":return(new TextDecoder).decode(i);case"blob":return new Blob([i],{type:r});case"arraybuffer":return i.buffer}}createRequestInit(e){const i={},r=e.withCredentials?"include":void 0;if(e.headers.forEach((s,l)=>i[s]=l.join(",")),e.headers.has("Accept")||(i.Accept="application/json, text/plain, */*"),!e.headers.has("Content-Type")){const s=e.detectContentTypeHeader();null!==s&&(i["Content-Type"]=s)}return{body:e.serializeBody(),method:e.method,headers:i,credentials:r}}concatChunks(e,i){const r=new Uint8Array(i);let s=0;for(const l of e)r.set(l,s),s+=l.length;return r}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();class Yue{}function R6(){}function oW(n,t){return t(n)}function Jue(n,t){return(e,i)=>t.intercept(e,{handle:r=>n(r,i)})}const the=new o.nKC(""),x2=new o.nKC(""),sW=new o.nKC(""),aW=new o.nKC("",{providedIn:"root",factory:()=>!0});function nhe(){let n=null;return(t,e)=>{null===n&&(n=((0,o.WQX)(the,{optional:!0})??[]).reduceRight(Jue,oW));const i=(0,o.WQX)(o.TgB);if((0,o.WQX)(aW)){const s=i.add();return n(t,e).pipe(Zq(()=>i.remove(s)))}return n(t,e)}}let lW=(()=>{class n extends BR{constructor(e,i){super(),this.backend=e,this.injector=i,this.chain=null,this.pendingTasks=(0,o.WQX)(o.TgB),this.contributeToStability=(0,o.WQX)(aW)}handle(e){if(null===this.chain){const i=Array.from(new Set([...this.injector.get(x2),...this.injector.get(sW,[])]));this.chain=i.reduceRight((r,s)=>function ehe(n,t,e){return(i,r)=>(0,o.N4e)(e,()=>t(i,s=>n(s,r)))}(r,s,this.injector),oW)}if(this.contributeToStability){const i=this.pendingTasks.add();return this.chain(e,r=>this.backend.handle(r)).pipe(Zq(()=>this.pendingTasks.remove(i)))}return this.chain(e,i=>this.backend.handle(i))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(kR),o.KVO(o.uvJ))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const ahe=/^\)\]\}',?\n/;let dW=(()=>{class n{constructor(e){this.xhrFactory=e}handle(e){if("JSONP"===e.method)throw new o.wOt(-2800,!1);const i=this.xhrFactory;return(i.\u0275loadImpl?sa(i.\u0275loadImpl()):Mo(null)).pipe(Qp(()=>new qr.c(s=>{const l=i.build();if(l.open(e.method,e.urlWithParams),e.withCredentials&&(l.withCredentials=!0),e.headers.forEach((D,T)=>l.setRequestHeader(D,T.join(","))),e.headers.has("Accept")||l.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){const D=e.detectContentTypeHeader();null!==D&&l.setRequestHeader("Content-Type",D)}if(e.responseType){const D=e.responseType.toLowerCase();l.responseType="json"!==D?D:"text"}const u=e.serializeBody();let f=null;const p=()=>{if(null!==f)return f;const D=l.statusText||"OK",T=new kd(l.getAllResponseHeaders()),I=function lhe(n){return"responseURL"in n&&n.responseURL?n.responseURL:/^X-Request-URL:/m.test(n.getAllResponseHeaders())?n.getResponseHeader("X-Request-URL"):null}(l)||e.url;return f=new PR({headers:T,status:l.status,statusText:D,url:I}),f},m=()=>{let{headers:D,status:T,statusText:I,url:O}=p(),R=null;204!==T&&(R=typeof l.response>"u"?l.responseText:l.response),0===T&&(T=R?200:0);let P=T>=200&&T<300;if("json"===e.responseType&&"string"==typeof R){const ee=R;R=R.replace(ahe,"");try{R=""!==R?JSON.parse(R):null}catch(J){R=ee,P&&(P=!1,R={error:J,text:R})}}P?(s.next(new dv({body:R,headers:D,status:T,statusText:I,url:O||void 0})),s.complete()):s.error(new dx({error:R,headers:D,status:T,statusText:I,url:O||void 0}))},_=D=>{const{url:T}=p(),I=new dx({error:D,status:l.status||0,statusText:l.statusText||"Unknown Error",url:T||void 0});s.error(I)};let b=!1;const w=D=>{b||(s.next(p()),b=!0);let T={type:l0.DownloadProgress,loaded:D.loaded};D.lengthComputable&&(T.total=D.total),"text"===e.responseType&&l.responseText&&(T.partialText=l.responseText),s.next(T)},F=D=>{let T={type:l0.UploadProgress,loaded:D.loaded};D.lengthComputable&&(T.total=D.total),s.next(T)};return l.addEventListener("load",m),l.addEventListener("error",_),l.addEventListener("timeout",_),l.addEventListener("abort",_),e.reportProgress&&(l.addEventListener("progress",w),null!==u&&l.upload&&l.upload.addEventListener("progress",F)),l.send(u),s.next({type:l0.Sent}),()=>{l.removeEventListener("error",_),l.removeEventListener("abort",_),l.removeEventListener("load",m),l.removeEventListener("timeout",_),e.reportProgress&&(l.removeEventListener("progress",w),null!==u&&l.upload&&l.upload.removeEventListener("progress",F)),l.readyState!==l.DONE&&l.abort()}})))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(rl))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const P6=new o.nKC(""),uW=new o.nKC("",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),hW=new o.nKC("",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class fW{}let uhe=(()=>{class n{constructor(e,i,r){this.doc=e,this.platform=i,this.cookieName=r,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=eo(e,this.cookieName),this.lastCookieString=e),this.lastToken}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(V),o.KVO(o.Agw),o.KVO(uW))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function hhe(n,t){const e=n.url.toLowerCase();if(!(0,o.WQX)(P6)||"GET"===n.method||"HEAD"===n.method||e.startsWith("http://")||e.startsWith("https://"))return t(n);const i=(0,o.WQX)(fW).getToken(),r=(0,o.WQX)(hW);return null!=i&&!n.headers.has(r)&&(n=n.clone({headers:n.headers.set(r,i)})),t(n)}var c0=function(n){return n[n.Interceptors=0]="Interceptors",n[n.LegacyInterceptors=1]="LegacyInterceptors",n[n.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",n[n.NoXsrfProtection=3]="NoXsrfProtection",n[n.JsonpSupport=4]="JsonpSupport",n[n.RequestsMadeViaParent=5]="RequestsMadeViaParent",n[n.Fetch=6]="Fetch",n}(c0||{});const pW=new o.nKC(""),NR={fileName:"sample1.cc.json",fileSize:3072,content:lue},LR={fileName:"sample2.cc.json",fileSize:2048,content:cue};let O6=(()=>{class n{constructor(e,i,r,s,l){this.store=e,this.state=i,this.dialog=r,this.loadFileService=s,this.httpClient=l,this.urlUtils=new Yq(this.httpClient)}loadFilesOrSampleFiles(){var e=this;return Mn(function*(){yield e.checkFileQueryParameterPresent()?e.loadFilesFromQueryParams():e.loadFilesFromIndexedDB()})()}checkFileQueryParameterPresent(){return!!this.urlUtils.getParameterByName("file")}loadFilesFromQueryParams(){var e=this;return Mn(function*(){try{const i=yield e.urlUtils.getFileDataFromQueryParam(),r=yield x6();if(!r)return e.loadFileService.loadFiles(i),void e.setRenderStateFromUrl();const s=r.files,l=s.map(p=>Wo(p.file)),u=i.map(p=>p.content.fileChecksum),f=l.map(p=>p.content.fileChecksum);Vu(u)===Vu(f)?e.applySettingsAndFilesFromSavedState(s,r,l):e.applySettingsFromSavedState(r,i),e.setRenderStateFromUrl()}catch(i){yield e.handleErrorLoadFilesFromQueryParams(i)}finally{e.setMetricsFromUrl(),e.setCurrentFilesAreSampleFilesFromUrl()}})()}applySettingsAndFilesFromSavedState(e,i,r){const s=[];i.appSettings.resetCameraIfNewFileIsLoaded||this.store.dispatch({type:"StartWithGlobalOption:resetCameraIfNewFileIsLoadedSetToFalse"});const l=this.applyAppSettings(i.appSettings);s.push(...l),this.loadFileService.loadFiles(r),this.store.dispatch(S({value:e}));const u=this.applyFileSettings(i.fileSettings);s.push(...u);const f=this.applyDynamicSettings(i.dynamicSettings);s.push(...f),s.length>0&&this.showErrorDialogForMissingProperties(s)}applySettingsFromSavedState(e,i){this.applyAllSettings(e),this.loadFileService.loadFiles(i)}showErrorDialogForMissingProperties(e){const r=this.buildMissingPropertiesMessage(e);this.showErrorDialog("The previous state could not be fully restored after loading the page. The following properties were not restored.",r)}handleErrorLoadFilesFromQueryParams(e){var i=this;return Mn(function*(){if(e.message!==ip){const r="File(s) could not be loaded from the given file URL parameter. Loaded sample files instead.",s=i.createTitleUrlErrorDialog(e);i.showErrorDialog(r,s)}yield i.loadSampleFiles()})()}loadFilesFromIndexedDB(){var e=this;return Mn(function*(){try{const i=yield x6();if(!i)return void(yield e.loadSampleFiles());const r=i.files,s=r.map(l=>Wo(l.file));e.applySettingsAndFilesFromSavedState(r,i,s)}catch(i){yield e.handleErrorLoadFilesFromIndexedDB(i)}})()}handleErrorLoadFilesFromIndexedDB(e){var i=this;return Mn(function*(){e.message!==ip&&i.showErrorDialog("Previously loaded files and settings could not be restored. Loaded sample files instead.",e.message),yield i.loadSampleFiles()})()}applyAllSettings(e){var i=this;return Mn(function*(){const r=e.fileSettings,s=e.dynamicSettings,l=e.appSettings,u=[];if(r){const f=i.applyFileSettings(r);u.push(...f)}if(s){const f=i.applyDynamicSettings(s);u.push(...f)}if(l){const f=i.applyAppSettings(l);u.push(...f)}u.length>0&&i.showErrorDialogForMissingProperties(u)})()}applyFileSettings(e){const i=this.state.getValue().fileSettings,r=[];for(const[s,l]of Object.entries(i))s in e?Vu(l)!==Vu(e[s])&&this.mapFileSettingToAction(s,e[s]):r.push(s);return r}applyDynamicSettings(e){const i=this.state.getValue().dynamicSettings,r=[];for(const[s,l]of Object.entries(i))s in e?Vu(l)!==Vu(e[s])&&this.mapDynamicSettingToAction(s,e[s]):r.push(s);return r}applyAppSettings(e){const i=this.state.getValue().appSettings,r=[];for(const[s,l]of Object.entries(i))s in e?Vu(l)!==Vu(e[s])&&this.mapAppSettingToAction(s,e[s]):r.push(s);return r}mapFileSettingToAction(e,i){switch(e){case"attributeTypes":this.store.dispatch(a6({value:i}));break;case"attributeDescriptors":this.store.dispatch(s6({value:i}));break;case"blacklist":this.store.dispatch(c6({value:i}));break;case"edges":this.store.dispatch(h6({value:i}));break;case"markedPackages":this.store.dispatch(TR({value:i}));break;default:throw new Error(`Unhandled key: ${e}`)}}mapDynamicSettingToAction(e,i){switch(e){case"areaMetric":this.store.dispatch(jp({value:i}));break;case"heightMetric":this.store.dispatch(qp({value:i}));break;case"edgeMetric":this.store.dispatch($p({value:i}));break;case"colorMetric":this.store.dispatch(Hu({value:i}));break;case"colorMode":this.store.dispatch(sx({value:i}));break;case"sortingOption":this.store.dispatch(MR({value:i}));break;case"colorRange":this.store.dispatch(Zh({value:i}));break;case"distributionMetric":this.store.dispatch(g2({value:i}));break;case"focusedNodePath":this.store.dispatch(wR({value:i}));break;case"searchPattern":this.store.dispatch(o0({value:i}));break;case"margin":this.store.dispatch(cx({value:i}));break;default:throw new Error(`Unhandled key: ${e}`)}}mapAppSettingToAction(e,i){switch(e){case"amountOfTopLabels":case"amountOfEdgePreviews":this.store.dispatch(r0({value:i}));break;case"edgeHeight":this.store.dispatch(ax({value:i}));break;case"scaling":this.store.dispatch(lx({value:i}));break;case"hideFlatBuildings":this.store.dispatch(a2({value:i}));break;case"invertHeight":this.store.dispatch(c2({value:i}));break;case"invertArea":this.store.dispatch(l2({value:i}));break;case"isWhiteBackground":this.store.dispatch(d2({value:i}));break;case"mapColors":this.store.dispatch(Hp({value:i}));break;case"isPresentationMode":this.store.dispatch(vR({value:i}));break;case"showOnlyBuildingsWithEdges":this.store.dispatch(m2({value:i}));break;case"isEdgeMetricVisible":this.store.dispatch(i6({value:i}));break;case"resetCameraIfNewFileIsLoaded":this.store.dispatch(yR({value:i}));break;case"isLoadingMap":this.store.dispatch(hh({value:i}));break;case"isLoadingFile":this.store.dispatch(Ic({value:i}));break;case"sortingOrderAscending":case"isSearchPanelPinned":break;case"showMetricLabelNameValue":this.store.dispatch(p2({value:i}));break;case"showMetricLabelNodeName":this.store.dispatch(A2({value:i}));break;case"layoutAlgorithm":this.store.dispatch(u2({value:i}));break;case"maxTreeMapFiles":this.store.dispatch(h2({value:i}));break;case"sharpnessMode":this.store.dispatch(f2({value:i}));break;case"experimentalFeaturesEnabled":this.store.dispatch(_R({value:i}));break;case"screenshotToClipboardEnabled":this.store.dispatch(gR({value:i}));break;case"colorLabels":this.store.dispatch(o2({value:i}));break;case"isColorMetricLinkedToHeightMetric":this.store.dispatch(r6({value:i}));break;case"enableFloorLabels":this.store.dispatch(s2({value:i}));break;default:throw new Error(`Unhandled key: ${e}`)}}buildMissingPropertiesMessage(e){return`${LI(' ',e)}`}loadSampleFiles(){var e=this;return Mn(function*(){try{const i=yield x6();i&&e.applyAllSettings(i),e.loadFileService.loadFiles([NR,LR])}catch{e.loadFileService.loadFiles([NR,LR])}e.store.dispatch(xh({value:!0}))})()}showErrorDialog(e,i){this.dialog.open(lu,{data:{title:e,message:i}})}createTitleUrlErrorDialog(e){let i="Error";return e.message?i+=` (${e.message})`:e.statusText&&e.status&&(i+=` (${e.status}: ${e.statusText})`),i}setMetricsFromUrl(){const e=this.urlUtils.getParameterByName(Wc.areaMetric),i=this.urlUtils.getParameterByName(Wc.heightMetric),r=this.urlUtils.getParameterByName(Wc.colorMetric),s=this.urlUtils.getParameterByName(Wc.edgeMetric),l=this.state.getValue(),u=ka(l).nodeMetricData,f=ka(l).edgeMetricData;if(!u)return;const p=new Set(u.map(_=>_.name)),m=f.map(_=>_.name);e&&p.has(e)&&this.store.dispatch(jp({value:e})),i&&p.has(i)&&this.store.dispatch(qp({value:i})),r&&p.has(r)&&this.store.dispatch(Hu({value:r})),s&&m.includes(s)&&this.store.dispatch($p({value:s}))}setRenderStateFromUrl(){const e=this.urlUtils.getParameterByName("mode"),i=function Mre(n){return n.map(t=>t.file)}(this.state.getValue().files);"Delta"===e&&i.length>=2&&this.store.dispatch(tt({referenceFile:i[0],comparisonFile:i[1]}))}setCurrentFilesAreSampleFilesFromUrl(){const e=this.urlUtils.getParameterByName(Wc.currentFilesAreSampleFiles);e&&"true"===e&&this.store.dispatch(xh({value:!0}))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(Es),o.KVO(rp),o.KVO(B6))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const hv=sn($c,n=>n.areaMetric),C2=sn($c,n=>n.heightMetric),She=sn(wn,n=>fG(n)),wW=sn(ka,hv,zg,C2,(n,t,e,i)=>((n,t)=>t.every(e=>((n,t)=>n.some(e=>e.name===t))(n,e)))(n.nodeMetricData,[t,e,i])),The=sn($c,n=>(n=>Object.entries(n).every(([t,e])=>((n,t)=>"edgeMetric"===n||null!==t&&("object"!=typeof t||Object.values(t).every(e=>null!==e)))(t,e)))(n)),Ihe=(sn(ka,She,wW,The,(n,t,e,i)=>!(null===n.nodeMetricData||!t||!e||!i)),n=>n.some(t=>"rloc"===t.name)?"rloc":"unary"),Fhe=["rloc","real_lines_of_code","loc","lines_of_code","lines","statements","functions"],xW=["complexity","mcc","cognitive_complexity","sonar_complexity","sonar_cognitive_complexity","max_nesting_level","indentation_level"];function Dhe(n){return n.some(t=>t.maxValue>0)}let Rhe=(()=>{class n{constructor(e){this.store=e,this.resetChosenDistributionMetric$=os(()=>this.store.select(ka).pipe((0,qn.T)(i=>i.nodeMetricData),hr(Dhe),ul(this.store.select(wW)),hr(([,i])=>!i),ro(([i])=>{CW(this.store,i)})),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function CW(n,t){n.dispatch(g2({value:Ihe(t)}));let[e,i,r]=function khe(n){const t=[],e={AreaMetric:Fhe,HeightMetric:xW,ColorMetric:xW},i=new Set(n.map(r=>r.name));for(const r in e)for(const s of e[r])if(i.has(s)){t.push(s);break}return t}(t);(!e||!i||!r)&&([e,i,r]=function Bhe(n,t){const e=[];let i;for(const r of n)if(r.maxValue&&(e.push(r.name),i=r.name,0==--t))return e;if(!i)throw new Error("there are no metrics available");for(;t-- >0;)e.push(i);return e}(t,3)),n.dispatch(jp({value:e})),n.dispatch(qp({value:i})),n.dispatch(Hu({value:r}))}const N6={positive:!1,negative:!1,neutral:!1},Phe=Di(N6,yn(o2,B3(N6))),Ohe=Di(!0,yn(A2,Mr(!0))),U6=!1,Nhe=Di(U6,yn(p2,Mr(U6))),MW=bn("SET_SORTING_ORDER_ASCENDING",{_as:"props",_p:void 0}),V6=bn("TOGGLE_SORTING_ORDER_ASCENDING"),Lhe=Di(!0,yn(MW,Mr(!0)),yn(V6,n=>!n)),Uhe=Di(!0,yn(Ic,Mr(!0))),Vhe=Di(!0,yn(hh,Mr(!0))),Hhe=Di(!0,yn(yR,Mr(!0))),j6=!1,Qhe=Di(j6,yn(m2,Mr(j6))),$6=!1,zhe=Di($6,yn(d2,Mr($6))),q6=!1,Ghe=Di(q6,yn(c2,Mr(q6))),W6=!1,jhe=Di(W6,yn(a2,Mr(W6))),UR={x:1,y:1,z:1},$he=Di(UR,yn(lx,B3(UR))),qhe=Di(4,yn(ax,Mr(4))),M2=bn("SET_AMOUNT_OF_EDGE_PREVIEWS",{_as:"props",_p:void 0}),Whe=Di(1,yn(M2,Mr(1))),Xhe=Di(1,yn(r0,Mr(1))),X6=!1,Khe=Di(X6,yn(vR,Mr(X6))),K6=!1,Yhe=Di(K6,yn(_R,Mr(K6))),Y6=za.SquarifiedTreeMap,Zhe=Di(Y6,yn(u2,Mr(Y6))),Jhe=Di(100,yn(h2,Mr(100))),J6=gd.Standard,efe=Di(J6,yn(f2,Mr(J6))),e7=!1,tfe=Di(e7,yn(gR,Mr(e7))),t7=!1,nfe=Di(t7,yn(l2,Mr(t7))),ife=Di(!0,yn(i6,(n,t)=>t.value),yn(bR,n=>!n)),rfe=Di(!1,yn(r6,(n,t)=>t.value),yn(o6,n=>!n)),TW=bn("SET_IS_FILE_EXPLORER_PINNED",{_as:"props",_p:void 0}),n7=bn("TOGGLE_IS_FILE_EXPLORER_PINNED"),i7=!1,afe=Ea({colorLabels:Phe,showMetricLabelNodeName:Ohe,showMetricLabelNameValue:Nhe,sortingOrderAscending:Lhe,isSearchPanelPinned:Di(i7,yn(TW,Mr(i7)),yn(n7,n=>!n)),isLoadingFile:Uhe,isLoadingMap:Vhe,mapColors:hoe,resetCameraIfNewFileIsLoaded:Hhe,showOnlyBuildingsWithEdges:Qhe,isEdgeMetricVisible:ife,isWhiteBackground:zhe,invertHeight:Ghe,invertArea:nfe,hideFlatBuildings:jhe,scaling:$he,edgeHeight:qhe,amountOfEdgePreviews:Whe,amountOfTopLabels:Xhe,isPresentationMode:Khe,experimentalFeaturesEnabled:Yhe,screenshotToClipboardEnabled:tfe,layoutAlgorithm:Zhe,maxTreeMapFiles:Jhe,sharpnessMode:efe,isColorMetricLinkedToHeightMetric:rfe,enableFloorLabels:Di(!0,yn(s2,Mr(!0)))}),lfe={colorLabels:N6,showMetricLabelNodeName:!0,showMetricLabelNameValue:U6,sortingOrderAscending:!0,isSearchPanelPinned:i7,isLoadingFile:!0,isLoadingMap:!0,mapColors:qh,resetCameraIfNewFileIsLoaded:!0,showOnlyBuildingsWithEdges:j6,isEdgeMetricVisible:!0,isWhiteBackground:$6,invertHeight:q6,invertArea:t7,hideFlatBuildings:W6,scaling:UR,edgeHeight:4,amountOfEdgePreviews:1,amountOfTopLabels:1,isPresentationMode:X6,experimentalFeaturesEnabled:K6,screenshotToClipboardEnabled:e7,layoutAlgorithm:Y6,maxTreeMapFiles:100,sharpnessMode:J6,isColorMetricLinkedToHeightMetric:!1,enableFloorLabels:!0},cfe=(n,{path:t,color:e})=>{const i=OU(n,t);(!i||i.color!==e)&&n.set(t,{path:t,color:e});for(const[r,s]of n)if(s.path===t)s.color!==e&&n.delete(r);else if(s.path.startsWith(t)){const l=OU(n,s.path);l&&l.color===s.color&&n.delete(r)}},IW=(n,t)=>{const e=n.findIndex(r=>r.path===t);if(-1!==e)return e;let i=-1;for(let r=0;r{const e=new Map(n.map(i=>[i.path,i]));for(const i of t.packages)cfe(e,i);return[...e.values()]}),yn(IR,(n,t)=>{const e=IW(n,t.path);return-1!==e?xG(n,e):n})),s7=[],ufe=Di(s7,yn(h6,Mr(s7)),yn(Iq,(n,t)=>CG(n,t.edge)),yn(Fq,(n,t)=>wG(n,t.edge))),a7={nodes:{},edges:{}},hfe=Di(a7,yn(a6,Mr(a7)),yn(l6,(n,t)=>({...n,[t.category]:{...n[t.category],[t.name]:t.attributeType}}))),l7=[],ffe=Di(l7,yn(c6,Mr(l7)),yn(d6,(n,t)=>CG(n,t.item)),yn(ER,(n,t)=>function Hre(n,t){const e=[...n];for(const i of t)MG(e,i)||e.push(i);return e}(n,t.items)),yn(SR,(n,t)=>wG(n,t.item))),c7={},Afe=Ea({markedPackages:dfe,edges:ufe,attributeTypes:hfe,attributeDescriptors:Di(c7,yn(s6,Mr(c7))),blacklist:ffe}),mfe={markedPackages:o7,edges:s7,attributeTypes:a7,attributeDescriptors:c7,blacklist:l7},d7=Gl.weightedGradient,gfe=Di(d7,yn(sx,Mr(d7))),u7=_d.NAME,f7={from:0,to:0},FW=[],Tfe=Ea({colorMode:gfe,sortingOption:Di(u7,yn(MR,Mr(u7))),edgeMetric:Di(null,yn($p,Mr(null))),colorRange:Di(f7,yn(Zh,B3(f7))),margin:Di(50,yn(cx,Mr(50))),searchPattern:Di("",yn(o0,Mr("")),yn($,()=>"")),focusedNodePath:Di(FW,yn(wR,(n,t)=>[...t.value]),yn(_2,()=>[]),yn(xR,(n,t)=>t.value===Fa.rootPath?n:[t.value,...n]),yn(CR,n=>n.slice(1))),heightMetric:Di(null,yn(qp,Mr(null))),distributionMetric:Di(null,yn(g2,Mr(null))),colorMetric:Di(null,yn(Hu,Mr(null))),areaMetric:Di(null,yn(jp,Mr(null)))}),Ife={colorMode:d7,sortingOption:u7,edgeMetric:null,colorRange:f7,margin:50,searchPattern:"",focusedNodePath:FW,heightMetric:null,distributionMetric:null,colorMetric:null,areaMetric:null},_7=[],Ffe=Di(_7,yn(S,(n,t)=>function Dfe(n,t){return void 0===t?_7:[...t].sort((e,i)=>DW(e.file,i.file)?1:-1)}(0,t.value)),yn(E,(n,t)=>function Bfe(n,t){const e=n.findIndex(r=>DW(r.file,t)),i={file:t,selectedAs:At.None};return-1===e?[...n,i]:[...n.slice(0,e),i,...n.slice(e)]}(n,t.file)),yn(N,(n,t)=>function kfe(n,t){if(0===t.length)return n;const e=n.filter(r=>!t.includes(r.file.fileMeta.fileName));return e.some(r=>r.selectedAs===At.Partial)||(e[0]={...e[0],selectedAs:At.Partial}),e}(n,t.fileNames)),yn(tt,(n,t)=>function Rfe(n,t,e){return n.map(i=>E3(i.file,t)?{...i,selectedAs:At.Reference}:e&&E3(i.file,e)?{...i,selectedAs:At.Comparison}:{...i,selectedAs:At.None})}(n,t.referenceFile,t.comparisonFile)),yn(Xe,(n,t)=>function Pfe(n,t){return n.map(e=>E3(e.file,t)?{...e,selectedAs:At.Reference}:e.selectedAs===At.Comparison?e:{...e,selectedAs:At.None})}(n,t.file)),yn(ge,(n,t)=>function Ofe(n,t){return n.map(e=>e.file===t?{...e,selectedAs:At.Comparison}:e.selectedAs===At.Reference?e:{...e,selectedAs:At.None})}(n,t.file)),yn(xe,n=>function Nfe(n){return n.map(t=>t.selectedAs===At.Reference?{...t,selectedAs:At.Comparison}:t.selectedAs===At.Comparison?{...t,selectedAs:At.Reference}:t)}(n)),yn($,(n,t)=>BW(n,t.files.map(e=>e.fileMeta.fileName))),yn(se,(n,t)=>BW(n,t.fileNames)));function DW(n,t){return n.fileMeta.fileName>t.fileMeta.fileName||!(n.fileMeta.fileName=t.fileMeta.fileChecksum}function BW(n,t){return n.map(e=>({...e,selectedAs:t.includes(e.file.fileMeta.fileName)?At.Partial:At.None}))}const ux=bn("SET_HOVERED_NODE_ID",{_as:"props",_p:void 0}),Lfe=Di(null,yn(ux,Mr(null))),hx=bn("SET_RIGHT_CLICKED_NODE_DATA",{_as:"props",_p:void 0}),Ufe=Di(null,yn(hx,(n,t)=>t.value)),Vfe=Di(null,yn(GU,Mr(null))),Gfe={fileSettings:Afe,appSettings:afe,dynamicSettings:Tfe,files:Ffe,appStatus:Ea({currentFilesAreSampleFiles:Di(!1,yn(xh,(n,t)=>t.value)),hoveredNodeId:Lfe,selectedBuildingId:Vfe,rightClickedNodeData:Ufe})},PW={fileSettings:mfe,appSettings:lfe,dynamicSettings:Ife,files:_7,appStatus:{currentFilesAreSampleFiles:!1,hoveredNodeId:null,selectedBuildingId:null,rightClickedNodeData:null}},$fe=new Set(["fileSettings.attributeTypes","fileSettings.attributeDescriptors","fileSettings.blacklist","fileSettings.edges","fileSettings.markedPackages","dynamicSettings.focusedNodePath","files"]);function OW(n,t,e=[]){for(const[i,r]of Object.entries(t)){if(null==r||!qfe(n,i))continue;const s=[...e,i],l=s.join(".");n[i]="object"!=typeof r||$fe.has(l)?r:OW({...n[i]},r,s)}return n}function qfe(n,t){return Object.prototype.hasOwnProperty.call(n,t)}let Wfe=(()=>{class n{constructor(e,i,r,s){this.store=e,this.httpClient=i,this.loadFileService=r,this.loadInitialFileService=s,this.urlUtils=new Yq(this.httpClient)}resetMap(){var e=this;return Mn(function*(){if(yield function aue(){return M6.apply(this,arguments)}(),e.store.dispatch(hu({value:PW})),e.loadInitialFileService.checkFileQueryParameterPresent())try{const r=yield e.urlUtils.getFileDataFromQueryParam();e.loadFileService.loadFiles(r),e.loadInitialFileService.setRenderStateFromUrl()}catch{e.loadFileService.loadFiles([NR,LR])}else e.loadFileService.loadFiles([NR,LR]);e.resetMetrics()})()}resetMetrics(){this.store.select(ka).pipe(r2(),ro(e=>{CW(this.store,e.nodeMetricData)})).subscribe()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(B6),o.rXU(rp),o.rXU(O6))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-confirm-reset-map-dialog"]],standalone:!0,features:[o.aNF],decls:12,vars:0,consts:[["xmlns","http://www.w3.org/1999/html",1,"header"],[1,"dialog-content"],["mat-button","","mat-dialog-close",""],["mat-button","","mat-dialog-close","","cdkFocusInitial","",3,"click"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0)(1,"h2"),o.EFF(2,"Confirm reset map to default"),o.k0s()(),o.j41(3,"mat-dialog-content")(4,"div",1)(5,"p"),o.EFF(6,"Uploaded maps, selected metrics and settings are reset to default"),o.k0s()()(),o.j41(7,"mat-dialog-actions")(8,"button",2),o.EFF(9,"No"),o.k0s(),o.j41(10,"button",3),o.bIt("click",function(){return r.resetMap()}),o.EFF(11,"Yes"),o.k0s()())},dependencies:[Zg,Al,Zl,ns,Ta],encapsulation:2})}}return n})(),Xfe=(()=>{class n{constructor(e){this.dialog=e}showConfirmResetStateDialog(){this.dialog.open(Wfe,{panelClass:"cc-confirm-reset-map-dialog"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-reset-map-button"]],standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[["title","Reset map to default",3,"click","icon"]],template:function(i,r){1&i&&(o.j41(0,"cc-action-icon",0),o.bIt("click",function(){return r.showConfirmResetStateDialog()}),o.k0s()),2&i&&o.Y8G("icon","fa fa-undo")},dependencies:[pl],encapsulation:2})}}return n})();const Kp=sn(wn,n=>dc(n));function NW(){return(0,Ir.N)((n,t)=>{let e,i=!1;n.subscribe((0,lr._)(t,r=>{const s=e;e=r,i&&t.next([s,r]),i=!0}))})}let Kfe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.lastSetFilesOfPreviousMode=[],this.subscription=this.store.select(wn).pipe(NW(),hr(([r,s])=>dc(r)!==dc(s)||0===s.length),ro(([r,s])=>{this.lastSetFilesOfPreviousMode=0===s.length?s:r})).subscribe()}ngOnDestroy(){this.subscription.unsubscribe()}toggle(){if(0===this.lastSetFilesOfPreviousMode.length||dc(this.lastSetFilesOfPreviousMode)){const i=wn(this.state.getValue());this.lastSetFilesOfPreviousMode=this.filterNoneExisting(i,this.lastSetFilesOfPreviousMode);const r=this.lastSetFilesOfPreviousMode.find(l=>l.selectedAs===At.Reference)??i.find(l=>l.selectedAs===At.Partial),s=this.lastSetFilesOfPreviousMode.find(l=>l.selectedAs===At.Comparison);this.store.dispatch(tt({referenceFile:r.file,comparisonFile:s?.file}))}else this.store.dispatch(S({value:this.lastSetFilesOfPreviousMode}))}filterNoneExisting(e,i){return i.filter(r=>e.find(s=>E3(s.file,r.file)))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),Yfe=(()=>{class n{constructor(e,i){this.store=e,this.fileSelectionModeService=i,this.isDeltaState$=this.store.select(Kp)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Kfe))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-panel-state-buttons"]],standalone:!0,features:[o.aNF],decls:10,vars:14,consts:[["mat-button","",1,"state-selector-button","left",3,"click","disabled"],[1,"text"],["mat-button","",1,"state-selector-button","right",3,"click","disabled"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"async"),o.nI1(2,"async"),o.bIt("click",function(){return r.fileSelectionModeService.toggle()}),o.j41(3,"span",1),o.EFF(4,"Standard"),o.k0s()(),o.j41(5,"button",2),o.nI1(6,"async"),o.nI1(7,"async"),o.bIt("click",function(){return r.fileSelectionModeService.toggle()}),o.j41(8,"span",1),o.EFF(9,"Delta"),o.k0s()()),2&i&&(o.AVh("current",!o.bMT(1,6,r.isDeltaState$)),o.Y8G("disabled",!o.bMT(2,8,r.isDeltaState$)),o.R7$(5),o.AVh("current",o.bMT(6,10,r.isDeltaState$)),o.Y8G("disabled",o.bMT(7,12,r.isDeltaState$)))},dependencies:[ns,zn],styles:[".state-selector-button[_ngcontent-%COMP%]{height:24px;width:66px;margin:0;padding:0;background-color:#fff;font-size:10pt}.state-selector-button[_ngcontent-%COMP%]:hover{background-color:#e6e6e6f5}.state-selector-button.left[_ngcontent-%COMP%]{border-radius:5px 0 0 5px}.state-selector-button.right[_ngcontent-%COMP%]{border-radius:0 5px 5px 0}.state-selector-button.current[_ngcontent-%COMP%]{background-color:#1b9cfc;color:#fff}.state-selector-button.current[_ngcontent-%COMP%]:hover{background-color:#1b9cfc}"]})}}return n})(),y7=(()=>{class n{transform(e){return uu.withoutCCExtension(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"removeExtension",type:n,pure:!0,standalone:!0})}}return n})();function Zfe(n,t){1&n&&o.nrm(0,"i",1)}function Jfe(n,t){1&n&&o.nrm(0,"i",2)}let epe=(()=>{class n{constructor(){this.removeOrAddFile=new o.bkB}onRemoveOrAddFile(e,i){this.removeOrAddFile.emit(e),i.stopPropagation(),i.preventDefault()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-remove-file-button"]],inputs:{filename:"filename",isRemoved:"isRemoved"},outputs:{removeOrAddFile:"removeOrAddFile"},standalone:!0,features:[o.aNF],decls:3,vars:2,consts:[[3,"click","title"],[1,"fa","fa-undo"],[1,"fa","fa-trash","delete-symbol"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(l){return r.onRemoveOrAddFile(r.filename,l)}),o.DNE(1,Zfe,1,0,"i",1)(2,Jfe,1,0,"i",2),o.k0s()),2&i&&(o.FS9("title",r.isRemoved?"Undo remove map":"Remove map"),o.R7$(),o.vxM(r.isRemoved?1:2))},styles:["button[_ngcontent-%COMP%]{padding:8px 10px}button[_ngcontent-%COMP%]:hover{border-radius:50%}"]})}}return n})();const tpe=["tooltip"],UW=new o.nKC("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{const n=(0,o.WQX)(Ns);return()=>n.scrollStrategies.reposition({scrollThrottle:20})}}),rpe=new o.nKC("mat-tooltip-default-options",{providedIn:"root",factory:function ipe(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),VW="tooltip-panel",HW=$f({passive:!0});let w7=(()=>{class n{get position(){return this._position}set position(e){e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(e){this._positionAtOrigin=gi(e),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(e){const i=gi(e);this._disabled!==i&&(this._disabled=i,i?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(e){this._showDelay=jn(e)}get hideDelay(){return this._hideDelay}set hideDelay(e){this._hideDelay=jn(e),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}get message(){return this._message}set message(e){const i=this._message;this._message=null!=e?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(i)}get tooltipClass(){return this._tooltipClass}set tooltipClass(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}constructor(e,i,r,s,l,u,f,p,m,_,b,w){this._overlay=e,this._elementRef=i,this._scrollDispatcher=r,this._viewContainerRef=s,this._ngZone=l,this._platform=u,this._ariaDescriber=f,this._focusMonitor=p,this._dir=_,this._defaultOptions=b,this._position="below",this._positionAtOrigin=!1,this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._tooltipComponent=cpe,this._viewportMargin=8,this._cssClassPrefix="mat-mdc",this.touchGestures="auto",this._message="",this._passiveListeners=[],this._touchstartTimeout=null,this._destroyed=new mi.B,this._injector=(0,o.WQX)(o.zZn),this._scrollStrategy=m,this._document=w,b&&(this._showDelay=b.showDelay,this._hideDelay=b.hideDelay,b.position&&(this.position=b.position),b.positionAtOrigin&&(this.positionAtOrigin=b.positionAtOrigin),b.touchGestures&&(this.touchGestures=b.touchGestures),b.tooltipClass&&(this.tooltipClass=b.tooltipClass)),_.change.pipe(bo(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)}),this._viewportMargin=8}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(bo(this._destroyed)).subscribe(e=>{e?"keyboard"===e&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const e=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(([i,r])=>{e.removeEventListener(i,r,HW)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}show(e=this.showDelay,i){if(this.disabled||!this.message||this._isTooltipVisible())return void this._tooltipInstance?._cancelPendingAnimations();const r=this._createOverlay(i);this._detach(),this._portal=this._portal||new cm(this._tooltipComponent,this._viewContainerRef);const s=this._tooltipInstance=r.attach(this._portal).instance;s._triggerElement=this._elementRef.nativeElement,s._mouseLeaveHideDelay=this._hideDelay,s.afterHidden().pipe(bo(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),s.show(e)}hide(e=this.hideDelay){const i=this._tooltipInstance;i&&(i.isVisible()?i.hide(e):(i._cancelPendingAnimations(),this._detach()))}toggle(e){this._isTooltipVisible()?this.hide():this.show(void 0,e)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(e){if(this._overlayRef){const s=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!e)&&s._origin instanceof o.aKT)return this._overlayRef;this._detach()}const i=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),r=this._overlay.position().flexibleConnectedTo(this.positionAtOrigin&&e||this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(i);return r.positionChanges.pipe(bo(this._destroyed)).subscribe(s=>{this._updateCurrentPositionClass(s.connectionPair),this._tooltipInstance&&s.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:r,panelClass:`${this._cssClassPrefix}-${VW}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(bo(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(bo(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(bo(this._destroyed)).subscribe(s=>{this._isTooltipVisible()&&27===s.keyCode&&!Kl(s)&&(s.preventDefault(),s.stopPropagation(),this._ngZone.run(()=>this.hide(0)))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(e){const i=e.getConfig().positionStrategy,r=this._getOrigin(),s=this._getOverlayPosition();i.withPositions([this._addOffset({...r.main,...s.main}),this._addOffset({...r.fallback,...s.fallback})])}_addOffset(e){const r=!this._dir||"ltr"==this._dir.value;return"top"===e.originY?e.offsetY=-8:"bottom"===e.originY?e.offsetY=8:"start"===e.originX?e.offsetX=r?-8:8:"end"===e.originX&&(e.offsetX=r?8:-8),e}_getOrigin(){const e=!this._dir||"ltr"==this._dir.value,i=this.position;let r;"above"==i||"below"==i?r={originX:"center",originY:"above"==i?"top":"bottom"}:"before"==i||"left"==i&&e||"right"==i&&!e?r={originX:"start",originY:"center"}:("after"==i||"right"==i&&e||"left"==i&&!e)&&(r={originX:"end",originY:"center"});const{x:s,y:l}=this._invertPosition(r.originX,r.originY);return{main:r,fallback:{originX:s,originY:l}}}_getOverlayPosition(){const e=!this._dir||"ltr"==this._dir.value,i=this.position;let r;"above"==i?r={overlayX:"center",overlayY:"bottom"}:"below"==i?r={overlayX:"center",overlayY:"top"}:"before"==i||"left"==i&&e||"right"==i&&!e?r={overlayX:"end",overlayY:"center"}:("after"==i||"right"==i&&e||"left"==i&&!e)&&(r={overlayX:"start",overlayY:"center"});const{x:s,y:l}=this._invertPosition(r.overlayX,r.overlayY);return{main:r,fallback:{overlayX:s,overlayY:l}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),(0,o.mal)(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e,this._tooltipInstance._markForCheck())}_invertPosition(e,i){return"above"===this.position||"below"===this.position?"top"===i?i="bottom":"bottom"===i&&(i="top"):"end"===e?e="start":"start"===e&&(e="end"),{x:e,y:i}}_updateCurrentPositionClass(e){const{overlayY:i,originX:r,originY:s}=e;let l;if(l="center"===i?this._dir&&"rtl"===this._dir.value?"end"===r?"left":"right":"start"===r?"left":"right":"bottom"===i&&"top"===s?"above":"below",l!==this._currentPosition){const u=this._overlayRef;if(u){const f=`${this._cssClassPrefix}-${VW}-`;u.removePanelClass(f+this._currentPosition),u.addPanelClass(f+l)}this._currentPosition=l}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",e=>{let i;this._setupPointerExitEventsIfNeeded(),void 0!==e.x&&void 0!==e.y&&(i=e),this.show(void 0,i)}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",e=>{const i=e.targetTouches?.[0],r=i?{x:i.clientX,y:i.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,r)},this._defaultOptions.touchLongPressShowDelay??500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const e=[];if(this._platformSupportsMouseEvents())e.push(["mouseleave",i=>{const r=i.relatedTarget;(!r||!this._overlayRef?.overlayElement.contains(r))&&this.hide()}],["wheel",i=>this._wheelListener(i)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const i=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};e.push(["touchend",i],["touchcancel",i])}this._addListeners(e),this._passiveListeners.push(...e)}_addListeners(e){e.forEach(([i,r])=>{this._elementRef.nativeElement.addEventListener(i,r,HW)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(e){if(this._isTooltipVisible()){const i=this._document.elementFromPoint(e.clientX,e.clientY),r=this._elementRef.nativeElement;i!==r&&!r.contains(i)&&this.hide()}}_disableNativeGesturesIfNecessary(){const e=this.touchGestures;if("off"!==e){const i=this._elementRef.nativeElement,r=i.style;("on"===e||"INPUT"!==i.nodeName&&"TEXTAREA"!==i.nodeName)&&(r.userSelect=r.msUserSelect=r.webkitUserSelect=r.MozUserSelect="none"),("on"===e||!i.draggable)&&(r.webkitUserDrag="none"),r.touchAction="none",r.webkitTapHighlightColor="transparent"}}_syncAriaDescription(e){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,e,"tooltip"),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Ns),o.rXU(o.aKT),o.rXU(ph),o.rXU(o.c1b),o.rXU(o.SKi),o.rXU(Io),o.rXU(ru),o.rXU(Yl),o.rXU(UW),o.rXU(Ks),o.rXU(rpe,8),o.rXU(V))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mat-mdc-tooltip-disabled",r.disabled)},inputs:{position:[0,"matTooltipPosition","position"],positionAtOrigin:[0,"matTooltipPositionAtOrigin","positionAtOrigin"],disabled:[0,"matTooltipDisabled","disabled"],showDelay:[0,"matTooltipShowDelay","showDelay"],hideDelay:[0,"matTooltipHideDelay","hideDelay"],touchGestures:[0,"matTooltipTouchGestures","touchGestures"],message:[0,"matTooltip","message"],tooltipClass:[0,"matTooltipClass","tooltipClass"]},exportAs:["matTooltip"],standalone:!0})}}return n})(),cpe=(()=>{class n{constructor(e,i,r){this._changeDetectorRef=e,this._elementRef=i,this._isMultiline=!1,this._closeOnInteraction=!1,this._isVisible=!1,this._onHide=new mi.B,this._showAnimation="mat-mdc-tooltip-show",this._hideAnimation="mat-mdc-tooltip-hide",this._animationsDisabled="NoopAnimations"===r}show(e){null!=this._hideTimeoutId&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},e)}hide(e){null!=this._showTimeoutId&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},e)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:e}){(!e||!this._triggerElement.contains(e))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){const e=this._elementRef.nativeElement.getBoundingClientRect();return e.height>24&&e.width>=200}_handleAnimationEnd({animationName:e}){(e===this._showAnimation||e===this._hideAnimation)&&this._finalizeAnimation(e===this._showAnimation)}_cancelPendingAnimations(){null!=this._showTimeoutId&&clearTimeout(this._showTimeoutId),null!=this._hideTimeoutId&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(e){e?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(e){const i=this._tooltip.nativeElement,r=this._showAnimation,s=this._hideAnimation;if(i.classList.remove(e?s:r),i.classList.add(e?r:s),this._isVisible!==e&&(this._isVisible=e,this._changeDetectorRef.markForCheck()),e&&!this._animationsDisabled&&"function"==typeof getComputedStyle){const l=getComputedStyle(i);("0s"===l.getPropertyValue("animation-duration")||"none"===l.getPropertyValue("animation-name"))&&(this._animationsDisabled=!0)}e&&this._onShow(),this._animationsDisabled&&(i.classList.add("_mat-animation-noopable"),this._finalizeAnimation(e))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc),o.rXU(o.aKT),o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-tooltip-component"]],viewQuery:function(i,r){if(1&i&&o.GBs(tpe,7),2&i){let s;o.mGM(s=o.lsd())&&(r._tooltip=s.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(i,r){1&i&&o.bIt("mouseleave",function(l){return r._handleMouseLeave(l)})},standalone:!0,features:[o.aNF],decls:4,vars:4,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend","ngClass"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"div",1,0),o.bIt("animationend",function(u){return o.eBV(s),o.Njj(r._handleAnimationEnd(u))}),o.j41(2,"div",2),o.EFF(3),o.k0s()()}2&i&&(o.AVh("mdc-tooltip--multiline",r._isMultiline),o.Y8G("ngClass",r.tooltipClass),o.R7$(3),o.JRh(r.message))},dependencies:[Sn],styles:['.mat-mdc-tooltip{position:relative;transform:scale(0);display:inline-flex}.mat-mdc-tooltip::before{content:"";top:0;right:0;bottom:0;left:0;z-index:-1;position:absolute}.mat-mdc-tooltip-panel-below .mat-mdc-tooltip::before{top:-8px}.mat-mdc-tooltip-panel-above .mat-mdc-tooltip::before{bottom:-8px}.mat-mdc-tooltip-panel-right .mat-mdc-tooltip::before{left:-8px}.mat-mdc-tooltip-panel-left .mat-mdc-tooltip::before{right:-8px}.mat-mdc-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.mat-mdc-tooltip-surface{word-break:normal;overflow-wrap:anywhere;padding:4px 8px;min-width:40px;max-width:200px;min-height:24px;max-height:40vh;box-sizing:border-box;overflow:hidden;text-align:center;will-change:transform,opacity;background-color:var(--mdc-plain-tooltip-container-color, var(--mat-app-inverse-surface));color:var(--mdc-plain-tooltip-supporting-text-color, var(--mat-app-inverse-on-surface));border-radius:var(--mdc-plain-tooltip-container-shape, var(--mat-app-corner-extra-small));font-family:var(--mdc-plain-tooltip-supporting-text-font, var(--mat-app-body-small-font));font-size:var(--mdc-plain-tooltip-supporting-text-size, var(--mat-app-body-small-size));font-weight:var(--mdc-plain-tooltip-supporting-text-weight, var(--mat-app-body-small-weight));line-height:var(--mdc-plain-tooltip-supporting-text-line-height, var(--mat-app-body-small-line-height));letter-spacing:var(--mdc-plain-tooltip-supporting-text-tracking, var(--mat-app-body-small-tracking))}.mat-mdc-tooltip-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:left}[dir=rtl] .mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:right}.mat-mdc-tooltip-panel.mat-mdc-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-mdc-tooltip-show{0%{opacity:0;transform:scale(0.8)}100%{opacity:1;transform:scale(1)}}@keyframes mat-mdc-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(0.8)}}.mat-mdc-tooltip-show{animation:mat-mdc-tooltip-show 150ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-mdc-tooltip-hide{animation:mat-mdc-tooltip-hide 75ms cubic-bezier(0.4, 0, 1, 1) forwards}'],encapsulation:2,changeDetection:0})}}return n})();const dpe=["fileSelect"],upe=n=>({"text-decoration":n});function hpe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-option",4),o.EFF(1),o.nI1(2,"removeExtension"),o.j41(3,"cc-remove-file-button",7),o.bIt("removeOrAddFile",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleAddOrRemoveFile(r))}),o.k0s()()}if(2&n){const e=t.$implicit;o.Y8G("value",e.file)("ngStyle",o.eq3(7,upe,e.isRemoved?"line-through":"none")),o.R7$(),o.SpI(" ",o.bMT(2,5,e.file.fileMeta.fileName)," "),o.R7$(2),o.Y8G("filename",e.file.fileMeta.fileName)("isRemoved",e.isRemoved)}}let fpe=(()=>{class n{constructor(e){this.store=e,this.filesInUI=[],this.selectedFilesInUI=[],this.filesInStore=[],this.closedByApply=!1,this.applyButtonTooltip="",this.applyButtonDisabled=!1,this.filesSubscription=this.store.select(wn).subscribe(i=>{this.filesInStore=i,this.filesInUI=i.map(r=>({file:r.file,isRemoved:!1})),this.selectedFilesInUI=i.filter(r=>r.selectedAs===At.Partial).map(r=>r.file)})}ngOnDestroy(){this.filesSubscription.unsubscribe()}handleSelectedFilesChanged(e){this.selectedFilesInUI=e;for(const i of this.filesInUI)e.includes(i.file)&&(i.isRemoved=!1);this.updateApplyButtonState()}handleOpenedChanged(e){this.closedByApply||e?this.closedByApply=!1:this.store.select(wn).pipe(ms(1)).subscribe(i=>{this.filesInUI=i.map(r=>({file:r.file,isRemoved:!1})),this.selectedFilesInUI=i.filter(r=>r.selectedAs===At.Partial).map(r=>r.file)}),e&&this.setApplyButtonStateToNoChangesToApply()}handleSelectZeroFiles(){this.selectedFilesInUI=[],this.setApplyButtonStateToNoMapSelected()}handleInvertSelectedFiles(){const e=this.filesInUI.filter(i=>!i.isRemoved);0!==e.length&&(this.selectedFilesInUI=0===this.selectedFilesInUI.length?e.map(i=>i.file):this.selectedFilesInUI.length===e.length?[]:e.filter(i=>!this.selectedFilesInUI.includes(i.file)).map(i=>i.file),this.updateApplyButtonState())}handleSelectAllFiles(){this.selectedFilesInUI=this.filesInUI.filter(e=>!e.isRemoved).map(e=>e.file),this.updateApplyButtonState()}handleApplyFileChanges(){const e=this.filesInUI.filter(i=>i.isRemoved).map(i=>i.file.fileMeta.fileName);this.store.dispatch($({files:this.selectedFilesInUI})),this.store.dispatch(N({fileNames:e})),this.closedByApply=!0,this.select.close()}handleAddOrRemoveFile(e){this.filesInUI=this.filesInUI.map(i=>i.file.fileMeta.fileName===e?{file:i.file,isRemoved:!i.isRemoved}:i),this.selectedFilesInUI=this.selectedFilesInUI.filter(i=>i.fileMeta.fileName!==e),this.updateApplyButtonState()}updateApplyButtonState(){0!==this.selectedFilesInUI.length?this.uiSelectionDiffersFromStore()?this.setApplyButtonStateEnabled():this.setApplyButtonStateToNoChangesToApply():this.setApplyButtonStateToNoMapSelected()}setApplyButtonStateToNoChangesToApply(){this.applyButtonTooltip="No changes to apply",this.applyButtonDisabled=!0}setApplyButtonStateToNoMapSelected(){this.applyButtonTooltip="Select at least one map",this.applyButtonDisabled=!0}setApplyButtonStateEnabled(){this.applyButtonTooltip="",this.applyButtonDisabled=!1}uiSelectionDiffersFromStore(){if(this.filesInUI.some(i=>i.isRemoved))return!0;const e=this.filesInStore.filter(i=>i.selectedAs===At.Partial).map(i=>i.file);return this.selectedFilesInUI.length!==e.length||!this.selectedFilesInUI.every(i=>e.includes(i))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-panel-file-selector"]],viewQuery:function(i,r){if(1&i&&o.GBs(dpe,5),2&i){let s;o.mGM(s=o.lsd())&&(r.select=s.first)}},standalone:!0,features:[o.aNF],decls:14,vars:4,consts:[["fileSelect",""],["panelClass","cc-file-select","multiple","",1,"cc-standard-select",3,"valueChange","selectionChange","openedChange","value"],[1,"cc-file-selection-actions"],[1,"cc-file-select-action-button",3,"click"],[1,"cc-file-name",3,"value","ngStyle"],[1,"cc-apply-file-selection-button-container"],[3,"click","disabled","matTooltip","matTooltipDisabled"],[3,"removeOrAddFile","filename","isRemoved"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"mat-select",1,0),o.mxI("valueChange",function(u){return o.eBV(s),o.DH7(r.selectedFilesInUI,u)||(r.selectedFilesInUI=u),o.Njj(u)}),o.bIt("selectionChange",function(u){return o.eBV(s),o.Njj(r.handleSelectedFilesChanged(u.value))})("openedChange",function(u){return o.eBV(s),o.Njj(r.handleOpenedChanged(u))}),o.j41(2,"div",2)(3,"button",3),o.bIt("click",function(){return o.eBV(s),o.Njj(r.handleSelectAllFiles())}),o.EFF(4,"All"),o.k0s(),o.j41(5,"button",3),o.bIt("click",function(){return o.eBV(s),o.Njj(r.handleSelectZeroFiles())}),o.EFF(6,"None"),o.k0s(),o.j41(7,"button",3),o.bIt("click",function(){return o.eBV(s),o.Njj(r.handleInvertSelectedFiles())}),o.EFF(8,"Invert"),o.k0s()(),o.Z7z(9,hpe,4,9,"mat-option",4,o.fX1),o.j41(11,"div",5)(12,"button",6),o.bIt("click",function(){return o.eBV(s),o.Njj(r.handleApplyFileChanges())}),o.EFF(13," Apply "),o.k0s()()()}2&i&&(o.R50("value",r.selectedFilesInUI),o.R7$(9),o.Dyx(r.filesInUI),o.R7$(3),o.FS9("matTooltip",r.applyButtonTooltip),o.FS9("matTooltipDisabled",!r.applyButtonDisabled),o.Y8G("disabled",r.applyButtonDisabled))},dependencies:[e0,yd,epe,y7,ma,w7],styles:[".cc-standard-select[_ngcontent-%COMP%]{width:200px;font-size:10pt}.cc-apply-file-selection-button-container[_ngcontent-%COMP%]{padding-right:16px;display:flex;justify-content:flex-end}.cc-apply-file-selection-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:50%;height:30px}.cc-apply-file-selection-button-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover:not(:disabled){border-radius:10%;background-color:#ddd}"]})}}return n})();const ppe=sn($w,n=>`linear-gradient(${n.positiveDelta} 50%, ${n.negativeDelta} 50%)`),Ape=["input"],mpe=["label"],gpe=["*"],_pe=new o.nKC("mat-checkbox-default-options",{providedIn:"root",factory:QW});function QW(){return{color:"accent",clickAction:"check-indeterminate",disabledInteractive:!1}}var Ja=function(n){return n[n.Init=0]="Init",n[n.Checked=1]="Checked",n[n.Unchecked=2]="Unchecked",n[n.Indeterminate=3]="Indeterminate",n}(Ja||{});const bpe={provide:Aa,useExisting:(0,o.Rfq)(()=>fv),multi:!0};class vpe{}let ype=0;const zW=QW();let fv=(()=>{class n{focus(){this._inputElement.nativeElement.focus()}_createChangeEvent(e){const i=new vpe;return i.source=this,i.checked=e,i}_getAnimationTargetElement(){return this._inputElement?.nativeElement}get inputId(){return`${this.id||this._uniqueId}-input`}constructor(e,i,r,s,l,u){this._elementRef=e,this._changeDetectorRef=i,this._ngZone=r,this._animationMode=l,this._options=u,this._animationClasses={uncheckedToChecked:"mdc-checkbox--anim-unchecked-checked",uncheckedToIndeterminate:"mdc-checkbox--anim-unchecked-indeterminate",checkedToUnchecked:"mdc-checkbox--anim-checked-unchecked",checkedToIndeterminate:"mdc-checkbox--anim-checked-indeterminate",indeterminateToChecked:"mdc-checkbox--anim-indeterminate-checked",indeterminateToUnchecked:"mdc-checkbox--anim-indeterminate-unchecked"},this.ariaLabel="",this.ariaLabelledby=null,this.labelPosition="after",this.name=null,this.change=new o.bkB,this.indeterminateChange=new o.bkB,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=Ja.Init,this._controlValueAccessorChangeFn=()=>{},this._validatorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||zW,this.color=this._options.color||zW.color,this.tabIndex=parseInt(s)||0,this.id=this._uniqueId="mat-mdc-checkbox-"+ ++ype,this.disabledInteractive=u?.disabledInteractive??!1}ngOnChanges(e){e.required&&this._validatorChangeFn()}ngAfterViewInit(){this._syncIndeterminate(this._indeterminate)}get checked(){return this._checked}set checked(e){e!=this.checked&&(this._checked=e,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(e){e!==this.disabled&&(this._disabled=e,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(e){const i=e!=this._indeterminate;this._indeterminate=e,i&&(this._transitionCheckState(this._indeterminate?Ja.Indeterminate:this.checked?Ja.Checked:Ja.Unchecked),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(e){this.checked=!!e}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}validate(e){return this.required&&!0!==e.value?{required:!0}:null}registerOnValidatorChange(e){this._validatorChangeFn=e}_transitionCheckState(e){let i=this._currentCheckState,r=this._getAnimationTargetElement();if(i!==e&&r&&(this._currentAnimationClass&&r.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(i,e),this._currentCheckState=e,this._currentAnimationClass.length>0)){r.classList.add(this._currentAnimationClass);const s=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{r.classList.remove(s)},1e3)})}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.checked),this.change.emit(this._createChangeEvent(this.checked)),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_handleInputClick(){const e=this._options?.clickAction;this.disabled||"noop"===e?(this.disabled&&this.disabledInteractive||!this.disabled&&"noop"===e)&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==e&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this._checked=!this._checked,this._transitionCheckState(this._checked?Ja.Checked:Ja.Unchecked),this._emitChangeEvent())}_onInteractionEvent(e){e.stopPropagation()}_onBlur(){Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}_getAnimationClassForCheckStateTransition(e,i){if("NoopAnimations"===this._animationMode)return"";switch(e){case Ja.Init:if(i===Ja.Checked)return this._animationClasses.uncheckedToChecked;if(i==Ja.Indeterminate)return this._checked?this._animationClasses.checkedToIndeterminate:this._animationClasses.uncheckedToIndeterminate;break;case Ja.Unchecked:return i===Ja.Checked?this._animationClasses.uncheckedToChecked:this._animationClasses.uncheckedToIndeterminate;case Ja.Checked:return i===Ja.Unchecked?this._animationClasses.checkedToUnchecked:this._animationClasses.checkedToIndeterminate;case Ja.Indeterminate:return i===Ja.Checked?this._animationClasses.indeterminateToChecked:this._animationClasses.indeterminateToUnchecked}return""}_syncIndeterminate(e){const i=this._inputElement;i&&(i.nativeElement.indeterminate=e)}_onInputClick(){this._handleInputClick()}_onTouchTargetClick(){this._handleInputClick(),this.disabled||this._inputElement.nativeElement.focus()}_preventBubblingFromLabel(e){e.target&&this._labelElement.nativeElement.contains(e.target)&&e.stopPropagation()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.gRc),o.rXU(o.SKi),o.kS0("tabindex"),o.rXU(o.bc$,8),o.rXU(_pe,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-checkbox"]],viewQuery:function(i,r){if(1&i&&(o.GBs(Ape,5),o.GBs(mpe,5),o.GBs(ml,5)),2&i){let s;o.mGM(s=o.lsd())&&(r._inputElement=s.first),o.mGM(s=o.lsd())&&(r._labelElement=s.first),o.mGM(s=o.lsd())&&(r.ripple=s.first)}},hostAttrs:[1,"mat-mdc-checkbox"],hostVars:16,hostBindings:function(i,r){2&i&&(o.Mr5("id",r.id),o.BMQ("tabindex",null)("aria-label",null)("aria-labelledby",null),o.HbH(r.color?"mat-"+r.color:"mat-accent"),o.AVh("_mat-animation-noopable","NoopAnimations"===r._animationMode)("mdc-checkbox--disabled",r.disabled)("mat-mdc-checkbox-disabled",r.disabled)("mat-mdc-checkbox-checked",r.checked)("mat-mdc-checkbox-disabled-interactive",r.disabledInteractive))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],id:"id",required:[2,"required","required",o.L39],labelPosition:"labelPosition",name:"name",value:"value",disableRipple:[2,"disableRipple","disableRipple",o.L39],tabIndex:[2,"tabIndex","tabIndex",e=>null==e?void 0:(0,o.Udg)(e)],color:"color",disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39],checked:[2,"checked","checked",o.L39],disabled:[2,"disabled","disabled",o.L39],indeterminate:[2,"indeterminate","indeterminate",o.L39]},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],standalone:!0,features:[o.Jv_([bpe,{provide:Hs,useExisting:n,multi:!0}]),o.GFd,o.OA$,o.aNF],ngContentSelectors:gpe,decls:15,vars:20,consts:[["checkbox",""],["input",""],["label",""],["mat-internal-form-field","",3,"click","labelPosition"],[1,"mdc-checkbox"],[1,"mat-mdc-checkbox-touch-target",3,"click"],["type","checkbox",1,"mdc-checkbox__native-control",3,"blur","click","change","checked","indeterminate","disabled","id","required","tabIndex"],[1,"mdc-checkbox__ripple"],[1,"mdc-checkbox__background"],["focusable","false","viewBox","0 0 24 24","aria-hidden","true",1,"mdc-checkbox__checkmark"],["fill","none","d","M1.73,12.91 8.1,19.28 22.79,4.59",1,"mdc-checkbox__checkmark-path"],[1,"mdc-checkbox__mixedmark"],["mat-ripple","",1,"mat-mdc-checkbox-ripple","mat-mdc-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-label",3,"for"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(),o.j41(0,"div",3),o.bIt("click",function(u){return o.eBV(s),o.Njj(r._preventBubblingFromLabel(u))}),o.j41(1,"div",4,0)(3,"div",5),o.bIt("click",function(){return o.eBV(s),o.Njj(r._onTouchTargetClick())}),o.k0s(),o.j41(4,"input",6,1),o.bIt("blur",function(){return o.eBV(s),o.Njj(r._onBlur())})("click",function(){return o.eBV(s),o.Njj(r._onInputClick())})("change",function(u){return o.eBV(s),o.Njj(r._onInteractionEvent(u))}),o.k0s(),o.nrm(6,"div",7),o.j41(7,"div",8),o.qSk(),o.j41(8,"svg",9),o.nrm(9,"path",10),o.k0s(),o.joV(),o.nrm(10,"div",11),o.k0s(),o.nrm(11,"div",12),o.k0s(),o.j41(12,"label",13,2),o.SdG(14),o.k0s()()}if(2&i){const s=o.sdS(2);o.Y8G("labelPosition",r.labelPosition),o.R7$(4),o.AVh("mdc-checkbox--selected",r.checked),o.Y8G("checked",r.checked)("indeterminate",r.indeterminate)("disabled",r.disabled&&!r.disabledInteractive)("id",r.inputId)("required",r.required)("tabIndex",r.disabled&&!r.disabledInteractive?-1:r.tabIndex),o.BMQ("aria-label",r.ariaLabel||null)("aria-labelledby",r.ariaLabelledby)("aria-describedby",r.ariaDescribedby)("aria-checked",r.indeterminate?"mixed":null)("aria-disabled",!(!r.disabled||!r.disabledInteractive)||null)("name",r.name)("value",r.value),o.R7$(7),o.Y8G("matRippleTrigger",s)("matRippleDisabled",r.disableRipple||r.disabled)("matRippleCentered",!0),o.R7$(),o.Y8G("for",r.inputId)}},dependencies:[ml,MI],styles:['.mdc-checkbox{display:inline-block;position:relative;flex:0 0 18px;box-sizing:content-box;width:18px;height:18px;line-height:0;white-space:nowrap;cursor:pointer;vertical-align:bottom;padding:calc((var(--mdc-checkbox-state-layer-size, 40px) - 18px)/2);margin:calc((var(--mdc-checkbox-state-layer-size, 40px) - var(--mdc-checkbox-state-layer-size, 40px))/2)}.mdc-checkbox:hover .mdc-checkbox__ripple{opacity:var(--mdc-checkbox-unselected-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity));background-color:var(--mdc-checkbox-unselected-hover-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox:hover .mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-unselected-hover-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-unselected-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity));background-color:var(--mdc-checkbox-unselected-focus-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox .mdc-checkbox__native-control:focus~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-unselected-focus-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox:active .mdc-checkbox__native-control~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-unselected-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity));background-color:var(--mdc-checkbox-unselected-pressed-state-layer-color, var(--mat-app-primary))}.mdc-checkbox:active .mdc-checkbox__native-control~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-unselected-pressed-state-layer-color, var(--mat-app-primary))}.mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-selected-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity));background-color:var(--mdc-checkbox-selected-hover-state-layer-color, var(--mat-app-primary))}.mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-selected-hover-state-layer-color, var(--mat-app-primary))}.mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-selected-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity));background-color:var(--mdc-checkbox-selected-focus-state-layer-color, var(--mat-app-primary))}.mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-selected-focus-state-layer-color, var(--mat-app-primary))}.mdc-checkbox:active .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{opacity:var(--mdc-checkbox-selected-pressed-state-layer-opacity, var(--mat-app-pressed-state-layer-opacity));background-color:var(--mdc-checkbox-selected-pressed-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox:active .mdc-checkbox__native-control:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mdc-checkbox-selected-pressed-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control~.mat-mdc-checkbox-ripple .mat-ripple-element,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control~.mdc-checkbox__ripple{background-color:var(--mdc-checkbox-unselected-hover-state-layer-color, var(--mat-app-on-surface))}.mdc-checkbox .mdc-checkbox__native-control{position:absolute;margin:0;padding:0;opacity:0;cursor:inherit;width:var(--mdc-checkbox-state-layer-size, 40px);height:var(--mdc-checkbox-state-layer-size, 40px);top:calc((var(--mdc-checkbox-state-layer-size, 40px) - var(--mdc-checkbox-state-layer-size, 40px))/2);right:calc((var(--mdc-checkbox-state-layer-size, 40px) - var(--mdc-checkbox-state-layer-size, 40px))/2);left:calc((var(--mdc-checkbox-state-layer-size, 40px) - var(--mdc-checkbox-state-layer-size, 40px))/2)}.mdc-checkbox--disabled{cursor:default;pointer-events:none}.cdk-high-contrast-active .mdc-checkbox--disabled{opacity:.5}.mdc-checkbox__background{display:inline-flex;position:absolute;align-items:center;justify-content:center;box-sizing:border-box;width:18px;height:18px;border:2px solid currentColor;border-radius:2px;background-color:rgba(0,0,0,0);pointer-events:none;will-change:background-color,border-color;transition:background-color 90ms cubic-bezier(0.4, 0, 0.6, 1),border-color 90ms cubic-bezier(0.4, 0, 0.6, 1);-webkit-print-color-adjust:exact;color-adjust:exact;border-color:var(--mdc-checkbox-unselected-icon-color, var(--mat-app-on-surface-variant));top:calc((var(--mdc-checkbox-state-layer-size, 40px) - 18px)/2);left:calc((var(--mdc-checkbox-state-layer-size, 40px) - 18px)/2)}.mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background{border-color:var(--mdc-checkbox-selected-icon-color, var(--mat-app-primary));background-color:var(--mdc-checkbox-selected-icon-color, var(--mat-app-primary))}.mdc-checkbox--disabled .mdc-checkbox__background{border-color:var(--mdc-checkbox-disabled-unselected-icon-color)}.mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background{background-color:var(--mdc-checkbox-disabled-selected-icon-color);border-color:rgba(0,0,0,0)}.mdc-checkbox:hover .mdc-checkbox__native-control:not(:checked)~.mdc-checkbox__background,.mdc-checkbox:hover .mdc-checkbox__native-control:not(:indeterminate)~.mdc-checkbox__background{border-color:var(--mdc-checkbox-unselected-hover-icon-color, var(--mat-app-on-surface));background-color:rgba(0,0,0,0)}.mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox:hover .mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{border-color:var(--mdc-checkbox-selected-hover-icon-color, var(--mat-app-primary));background-color:var(--mdc-checkbox-selected-hover-icon-color, var(--mat-app-primary))}.mdc-checkbox__native-control:focus:focus:not(:checked)~.mdc-checkbox__background,.mdc-checkbox__native-control:focus:focus:not(:indeterminate)~.mdc-checkbox__background{border-color:var(--mdc-checkbox-unselected-focus-icon-color, var(--mat-app-on-surface))}.mdc-checkbox__native-control:focus:focus:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:focus:focus:indeterminate~.mdc-checkbox__background{border-color:var(--mdc-checkbox-selected-focus-icon-color, var(--mat-app-primary));background-color:var(--mdc-checkbox-selected-focus-icon-color, var(--mat-app-primary))}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox:hover .mdc-checkbox__native-control~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__background{border-color:var(--mdc-checkbox-disabled-unselected-icon-color)}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{background-color:var(--mdc-checkbox-disabled-selected-icon-color);border-color:rgba(0,0,0,0)}.mdc-checkbox__checkmark{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;transition:opacity 180ms cubic-bezier(0.4, 0, 0.6, 1);color:var(--mdc-checkbox-selected-checkmark-color, var(--mat-app-on-primary))}.cdk-high-contrast-active .mdc-checkbox__checkmark{color:CanvasText}.mdc-checkbox--disabled .mdc-checkbox__checkmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__checkmark{color:var(--mdc-checkbox-disabled-selected-checkmark-color, var(--mat-app-surface))}.cdk-high-contrast-active .mdc-checkbox--disabled .mdc-checkbox__checkmark,.cdk-high-contrast-active .mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__checkmark{color:CanvasText}.mdc-checkbox__checkmark-path{transition:stroke-dashoffset 180ms cubic-bezier(0.4, 0, 0.6, 1);stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}.mdc-checkbox__mixedmark{width:100%;height:0;transform:scaleX(0) rotate(0deg);border-width:1px;border-style:solid;opacity:0;transition:opacity 90ms cubic-bezier(0.4, 0, 0.6, 1),transform 90ms cubic-bezier(0.4, 0, 0.6, 1);border-color:var(--mdc-checkbox-selected-checkmark-color, var(--mat-app-on-primary))}.cdk-high-contrast-active .mdc-checkbox__mixedmark{margin:0 1px}.mdc-checkbox--disabled .mdc-checkbox__mixedmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__mixedmark{border-color:var(--mdc-checkbox-disabled-selected-checkmark-color, var(--mat-app-surface))}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background,.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background,.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background,.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background{animation-duration:180ms;animation-timing-function:linear}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark-path{animation:mdc-checkbox-unchecked-checked-checkmark-path 180ms linear;transition:none}.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark{animation:mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear;transition:none}.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark-path{animation:mdc-checkbox-checked-unchecked-checkmark-path 90ms linear;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark{animation:mdc-checkbox-checked-indeterminate-checkmark 90ms linear;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark{animation:mdc-checkbox-checked-indeterminate-mixedmark 90ms linear;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark{animation:mdc-checkbox-indeterminate-checked-checkmark 500ms linear;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark{animation:mdc-checkbox-indeterminate-checked-mixedmark 500ms linear;transition:none}.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark{animation:mdc-checkbox-indeterminate-unchecked-mixedmark 300ms linear;transition:none}.mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{transition:border-color 90ms cubic-bezier(0, 0, 0.2, 1),background-color 90ms cubic-bezier(0, 0, 0.2, 1)}.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__checkmark-path,.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__checkmark-path{stroke-dashoffset:0}.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__checkmark{transition:opacity 180ms cubic-bezier(0, 0, 0.2, 1),transform 180ms cubic-bezier(0, 0, 0.2, 1);opacity:1}.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__mixedmark{transform:scaleX(1) rotate(-45deg)}.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__checkmark{transform:rotate(45deg);opacity:0;transition:opacity 90ms cubic-bezier(0.4, 0, 0.6, 1),transform 90ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__mixedmark{transform:scaleX(1) rotate(0deg);opacity:1}@keyframes mdc-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:29.7833385}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 1)}100%{stroke-dashoffset:0}}@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mdc-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-29.7833385}}@keyframes mdc-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 1);transform:rotate(0deg);opacity:1}to{transform:rotate(45deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);transform:rotate(45deg);opacity:0}to{transform:rotate(360deg);opacity:1}}@keyframes mdc-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 1);transform:rotate(-45deg);opacity:0}to{transform:rotate(0deg);opacity:1}}@keyframes mdc-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);transform:rotate(0deg);opacity:1}to{transform:rotate(315deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;transform:scaleX(1);opacity:1}32.8%,100%{transform:scaleX(0);opacity:0}}.mat-mdc-checkbox{display:inline-block;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-checkbox._mat-animation-noopable .mdc-checkbox *,.mat-mdc-checkbox._mat-animation-noopable .mdc-checkbox *::before{transition:none !important;animation:none !important}.mat-mdc-checkbox label{cursor:pointer}.mat-mdc-checkbox .mat-internal-form-field{color:var(--mat-checkbox-label-text-color, var(--mat-app-on-surface));font-family:var(--mat-checkbox-label-text-font, var(--mat-app-body-medium-font));line-height:var(--mat-checkbox-label-text-line-height, var(--mat-app-body-medium-line-height));font-size:var(--mat-checkbox-label-text-size, var(--mat-app-body-medium-size));letter-spacing:var(--mat-checkbox-label-text-tracking, var(--mat-app-body-medium-tracking));font-weight:var(--mat-checkbox-label-text-weight, var(--mat-app-body-medium-weight))}.mat-mdc-checkbox.mat-mdc-checkbox-disabled.mat-mdc-checkbox-disabled-interactive{pointer-events:auto}.mat-mdc-checkbox.mat-mdc-checkbox-disabled.mat-mdc-checkbox-disabled-interactive input{cursor:default}.mat-mdc-checkbox.mat-mdc-checkbox-disabled label{cursor:default;color:var(--mat-checkbox-disabled-label-color)}.mat-mdc-checkbox label:empty{display:none}.mat-mdc-checkbox .mdc-checkbox__ripple{opacity:0}.mat-mdc-checkbox-ripple,.mdc-checkbox__ripple{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-checkbox-ripple:not(:empty),.mdc-checkbox__ripple:not(:empty){transform:translateZ(0)}.mat-mdc-checkbox-ripple .mat-ripple-element{opacity:.1}.mat-mdc-checkbox-touch-target{position:absolute;top:50%;left:50%;height:48px;width:48px;transform:translate(-50%, -50%);display:var(--mat-checkbox-touch-target-display)}.mat-mdc-checkbox-ripple::before{border-radius:50%}.mdc-checkbox__native-control:focus~.mat-mdc-focus-indicator::before{content:""}'],encapsulation:2,changeDetection:0})}}return n})();const x7="alertOnIncompatibleMaps";let Cpe=(()=>{class n{constructor(e){this.data=e}setDoNotAlertOnIncompatibleMaps(e){localStorage.setItem(x7,JSON.stringify(!e.checked))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tp))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-incompatible-maps-dialog"]],standalone:!0,features:[o.aNF],decls:25,vars:4,consts:[["color","primary"],[1,"cc-files"],[3,"change"],["align","end"],["href","https://codecharta.com/docs/filter/structure-modifier","target","_blank","rel","noopener noreferrer"],["mat-flat-button","",3,"mat-dialog-close"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0),o.EFF(1,"Incompatible Maps"),o.k0s(),o.j41(2,"mat-dialog-content")(3,"p"),o.EFF(4,"The selected maps use different complexity metrics and are therefore incompatible:"),o.k0s(),o.j41(5,"p",1),o.EFF(6),o.k0s(),o.j41(7,"p"),o.EFF(8," The file "),o.j41(9,"b"),o.EFF(10),o.k0s(),o.EFF(11," is using the "),o.j41(12,"b"),o.EFF(13,"mcc metric"),o.k0s(),o.EFF(14," and the other one "),o.j41(15,"b"),o.EFF(16,"complexity"),o.k0s(),o.EFF(17,". Please migrate. "),o.k0s(),o.j41(18,"mat-checkbox",2),o.bIt("change",function(l){return r.setDoNotAlertOnIncompatibleMaps(l)}),o.EFF(19,"Don't show again"),o.k0s()(),o.j41(20,"mat-dialog-actions",3)(21,"a",4),o.EFF(22,"Know more"),o.k0s(),o.j41(23,"button",5),o.EFF(24,"CLOSE"),o.k0s()()),2&i&&(o.R7$(6),o.Lme("",r.data.referenceFileName," \u2192 ",r.data.comparisonFileName,""),o.R7$(4),o.JRh(r.data.fileWithMccMetric),o.R7$(13),o.Y8G("mat-dialog-close",!0))},dependencies:[Zg,Al,fv,Zl,ns,Ta],styles:["p[_ngcontent-%COMP%]{font-size:18px}.cc-files[_ngcontent-%COMP%]{text-align:center}"]})}}return n})();function Mpe(n,t){if(1&n&&(o.j41(0,"mat-option",2),o.EFF(1),o.nI1(2,"removeExtension"),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e.file),o.R7$(),o.SpI(" ",o.bMT(2,2,e.file.fileMeta.fileName)," ")}}function Epe(n,t){if(1&n&&(o.j41(0,"mat-option",2),o.EFF(1),o.nI1(2,"removeExtension"),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e.file),o.R7$(),o.SpI(" ",o.bMT(2,2,e.file.fileMeta.fileName)," ")}}let Spe=(()=>{class n{constructor(e,i){this.store=e,this.dialog=i,this.files$=this.store.select(wn),this.referenceFile$=this.store.select(Tn),this.comparisonFile$=this.files$.pipe((0,qn.T)(r=>r.find(s=>s.selectedAs===At.Comparison)?.file)),this.possibleComparisonFiles$=this.files$.pipe((0,qn.T)(r=>r.filter(s=>s.selectedAs!==At.Reference))),this.pictogramBackground$=this.store.select(ppe),this.referenceFile$.subscribe(r=>this.referenceFile=r),this.comparisonFile$.subscribe(r=>this.comparisonFile=r)}handleDeltaReferenceFileChange(e){this.store.dispatch(Xe({file:e})),this.showAlertWhenFilesAreIncompatible()}handleDeltaComparisonFileChange(e){this.store.dispatch(ge({file:e})),this.showAlertWhenFilesAreIncompatible()}showAlertWhenFilesAreIncompatible(){this.alertOnIncompatibleMaps()&&this.areMapsIncompatible()&&this.openIncompatibleMapsDialog()}alertOnIncompatibleMaps(){return!localStorage.getItem(x7)||!0===JSON.parse(localStorage.getItem(x7))}openIncompatibleMapsDialog(){this.dialog.open(Cpe,{panelClass:"cc-incompatible-maps-dialog",data:{referenceFileName:this.getFileName(this.referenceFile),comparisonFileName:this.getFileName(this.comparisonFile),fileWithMccMetric:this.getFileWithMccMetric(this.referenceFile,this.comparisonFile)}})}getFileName(e){return e?.fileMeta.fileName}hasMccMetric(e){return e?.map.children.some(i=>this.containsMCCAttribute(i))}containsMCCAttribute(e){if(e.attributes.mcc)return!0;if(e.children)for(const i of e.children)if(this.containsMCCAttribute(i))return!0;return!1}getFileWithMccMetric(e,i){return this.hasMccMetric(e)?this.getFileName(e):this.hasMccMetric(i)?this.getFileName(i):void 0}switchReferenceAndComparison(){this.store.dispatch(xe())}areMapsIncompatible(){if(this.referenceFile&&this.comparisonFile)return this.hasMccMetric(this.referenceFile)!==this.hasMccMetric(this.comparisonFile)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-panel-delta-selector"]],standalone:!0,features:[o.aNF],decls:16,vars:17,consts:[[1,"delta-select-wrapper"],["panelClass","cc-file-select",1,"delta-select",3,"selectionChange","value"],[3,"value"],["title","Switch reference and comparison file",1,"reference-comparison-switch",3,"click","disabled"],[1,"fa","fa-arrows-h"],["placeholder","select comparison file","panelClass","cc-file-select",1,"delta-select",3,"selectionChange","value"],[1,"pictogram"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"mat-select",1),o.nI1(2,"async"),o.bIt("selectionChange",function(l){return r.handleDeltaReferenceFileChange(l.value)}),o.Z7z(3,Mpe,3,4,"mat-option",2,o.fX1),o.nI1(5,"async"),o.k0s(),o.j41(6,"button",3),o.nI1(7,"async"),o.bIt("click",function(){return r.switchReferenceAndComparison()}),o.nrm(8,"i",4),o.k0s(),o.j41(9,"mat-select",5),o.nI1(10,"async"),o.bIt("selectionChange",function(l){return r.handleDeltaComparisonFileChange(l.value)}),o.Z7z(11,Epe,3,4,"mat-option",2,o.fX1),o.nI1(13,"async"),o.k0s(),o.nrm(14,"div",6),o.nI1(15,"async"),o.k0s()),2&i&&(o.R7$(),o.Y8G("value",o.bMT(2,5,r.referenceFile$)),o.R7$(2),o.Dyx(o.bMT(5,7,r.files$)),o.R7$(3),o.Y8G("disabled",void 0===o.bMT(7,9,r.comparisonFile$)),o.R7$(3),o.Y8G("value",o.bMT(10,11,r.comparisonFile$)),o.R7$(2),o.Dyx(o.bMT(13,13,r.possibleComparisonFiles$)),o.R7$(3),o.xc7("background",o.bMT(15,15,r.pictogramBackground$)))},dependencies:[e0,yd,zn,y7],styles:[".delta-select-wrapper[_ngcontent-%COMP%]{display:flex;gap:12px}.delta-select[_ngcontent-%COMP%]{width:200px;font-size:10pt}.reference-comparison-switch[_ngcontent-%COMP%]{background-color:#1b9cfc;margin:0;height:24px;width:36px;border-radius:5px}.reference-comparison-switch[disabled][_ngcontent-%COMP%]{background-color:#ccc}.reference-comparison-switch[_ngcontent-%COMP%]:hover{background-color:#0374c9}.reference-comparison-switch[_ngcontent-%COMP%]:hover[disabled]{background-color:#ccc}.reference-comparison-switch[_ngcontent-%COMP%] .fa[_ngcontent-%COMP%]{vertical-align:middle;color:#fff}.pictogram[_ngcontent-%COMP%]{display:inline-flex;width:10px;margin-right:5px;margin-left:5px;height:22px;border-radius:2px;align-self:center;vertical-align:bottom}"]})}}return n})();function Tpe(n,t){1&n&&o.nrm(0,"cc-file-panel-file-selector")}function Ipe(n,t){1&n&&o.nrm(0,"cc-file-panel-delta-selector")}let Fpe=(()=>{class n{constructor(e){this.store=e,this.isDeltaState$=this.store.select(Kp)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-panel"]],standalone:!0,features:[o.aNF],decls:4,vars:3,template:function(i,r){1&i&&(o.nrm(0,"cc-file-panel-state-buttons"),o.DNE(1,Tpe,1,0,"cc-file-panel-file-selector"),o.nI1(2,"async"),o.DNE(3,Ipe,1,0,"cc-file-panel-delta-selector")),2&i&&(o.R7$(),o.vxM(o.bMT(2,1,r.isDeltaState$)?3:1))},dependencies:[Yfe,fpe,Spe,zn],styles:["[_nghost-%COMP%]{display:flex;gap:inherit}.hidden[_nghost-%COMP%]{display:none}"]})}}return n})();const GW=sn(jw,md,(n,t)=>n.get(t)),Dpe=sn(GW,n=>n&&{path:n.path.slice(1).split("/"),isFile:"File"===n.type});function Bpe(n,t){if(1&n&&o.nrm(0,"i",2),2&n){const e=o.XpG(2);o.AVh("fa-file-o",e.isFile)("fa-folder",!e.isFile)}}function kpe(n,t){1&n&&o.nrm(0,"i",1)}function Rpe(n,t){if(1&n&&(o.j41(0,"span"),o.DNE(1,Bpe,1,4,"i",0),o.j41(2,"span"),o.EFF(3),o.k0s(),o.DNE(4,kpe,1,0,"i",1),o.k0s()),2&n){const e=t.$implicit,i=t.$index,r=t.$count;o.R7$(),o.vxM(i===r-1?1:-1),o.R7$(),o.AVh("bold",i===r-1),o.R7$(),o.JRh(e),o.R7$(),o.vxM(i!==r-1?4:-1)}}function Ppe(n,t){1&n&&o.Z7z(0,Rpe,5,5,"span",null,o.fX1),2&n&&o.Dyx(t.path)}let Ope=(()=>{class n{constructor(e){this.store=e,this.hoveredNodePathPanelData$=this.store.select(Dpe)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-hovered-node-path-panel"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[1,"fa",3,"fa-file-o","fa-folder"],[1,"fa","fa-angle-right"],[1,"fa"]],template:function(i,r){if(1&i&&(o.DNE(0,Ppe,2,0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.hoveredNodePathPanelData$))?0:-1,s)}},dependencies:[zn],styles:["[_nghost-%COMP%]{width:100%;min-width:400px;display:inline-block;vertical-align:middle;margin:0 8px;font-size:10pt;overflow:hidden;white-space:nowrap}[_nghost-%COMP%] .bold[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] i[_ngcontent-%COMP%]{margin:0 4px}"]})}}return n})();const Npe=sn(ko,n=>n.isLoadingMap),Lpe=["determinateSpinner"];function Upe(n,t){if(1&n&&(o.qSk(),o.j41(0,"svg",11),o.nrm(1,"circle",12),o.k0s()),2&n){const e=o.XpG();o.BMQ("viewBox",e._viewBox()),o.R7$(),o.xc7("stroke-dasharray",e._strokeCircumference(),"px")("stroke-dashoffset",e._strokeCircumference()/2,"px")("stroke-width",e._circleStrokeWidth(),"%"),o.BMQ("r",e._circleRadius())}}const Vpe=new o.nKC("mat-progress-spinner-default-options",{providedIn:"root",factory:function Hpe(){return{diameter:jW}}}),jW=100;let $W=(()=>{class n{get color(){return this._color||this._defaultColor}set color(e){this._color=e}constructor(e,i,r){this._elementRef=e,this._defaultColor="primary",this._value=0,this._diameter=jW,this._noopAnimations="NoopAnimations"===i&&!!r&&!r._forceAnimations,this.mode="mat-spinner"===e.nativeElement.nodeName.toLowerCase()?"indeterminate":"determinate",r&&(r.color&&(this.color=this._defaultColor=r.color),r.diameter&&(this.diameter=r.diameter),r.strokeWidth&&(this.strokeWidth=r.strokeWidth))}get value(){return"determinate"===this.mode?this._value:0}set value(e){this._value=Math.max(0,Math.min(100,e||0))}get diameter(){return this._diameter}set diameter(e){this._diameter=e||0}get strokeWidth(){return this._strokeWidth??this.diameter/10}set strokeWidth(e){this._strokeWidth=e||0}_circleRadius(){return(this.diameter-10)/2}_viewBox(){const e=2*this._circleRadius()+this.strokeWidth;return`0 0 ${e} ${e}`}_strokeCircumference(){return 2*Math.PI*this._circleRadius()}_strokeDashOffset(){return"determinate"===this.mode?this._strokeCircumference()*(100-this._value)/100:null}_circleStrokeWidth(){return this.strokeWidth/this.diameter*100}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.bc$,8),o.rXU(Vpe))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-progress-spinner"],["mat-spinner"]],viewQuery:function(i,r){if(1&i&&o.GBs(Lpe,5),2&i){let s;o.mGM(s=o.lsd())&&(r._determinateCircle=s.first)}},hostAttrs:["role","progressbar","tabindex","-1",1,"mat-mdc-progress-spinner","mdc-circular-progress"],hostVars:18,hostBindings:function(i,r){2&i&&(o.BMQ("aria-valuemin",0)("aria-valuemax",100)("aria-valuenow","determinate"===r.mode?r.value:null)("mode",r.mode),o.HbH("mat-"+r.color),o.xc7("width",r.diameter,"px")("height",r.diameter,"px")("--mdc-circular-progress-size",r.diameter+"px")("--mdc-circular-progress-active-indicator-width",r.diameter+"px"),o.AVh("_mat-animation-noopable",r._noopAnimations)("mdc-circular-progress--indeterminate","indeterminate"===r.mode))},inputs:{color:"color",mode:"mode",value:[2,"value","value",o.Udg],diameter:[2,"diameter","diameter",o.Udg],strokeWidth:[2,"strokeWidth","strokeWidth",o.Udg]},exportAs:["matProgressSpinner"],standalone:!0,features:[o.GFd,o.aNF],decls:14,vars:11,consts:[["circle",""],["determinateSpinner",""],["aria-hidden","true",1,"mdc-circular-progress__determinate-container"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__determinate-circle-graphic"],["cx","50%","cy","50%",1,"mdc-circular-progress__determinate-circle"],["aria-hidden","true",1,"mdc-circular-progress__indeterminate-container"],[1,"mdc-circular-progress__spinner-layer"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-left"],[3,"ngTemplateOutlet"],[1,"mdc-circular-progress__gap-patch"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-right"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__indeterminate-circle-graphic"],["cx","50%","cy","50%"]],template:function(i,r){if(1&i&&(o.DNE(0,Upe,2,8,"ng-template",null,0,o.C5r),o.j41(2,"div",2,1),o.qSk(),o.j41(4,"svg",3),o.nrm(5,"circle",4),o.k0s()(),o.joV(),o.j41(6,"div",5)(7,"div",6)(8,"div",7),o.eu8(9,8),o.k0s(),o.j41(10,"div",9),o.eu8(11,8),o.k0s(),o.j41(12,"div",10),o.eu8(13,8),o.k0s()()()),2&i){const s=o.sdS(1);o.R7$(4),o.BMQ("viewBox",r._viewBox()),o.R7$(),o.xc7("stroke-dasharray",r._strokeCircumference(),"px")("stroke-dashoffset",r._strokeDashOffset(),"px")("stroke-width",r._circleStrokeWidth(),"%"),o.BMQ("r",r._circleRadius()),o.R7$(4),o.Y8G("ngTemplateOutlet",s),o.R7$(2),o.Y8G("ngTemplateOutlet",s),o.R7$(2),o.Y8G("ngTemplateOutlet",s)}},dependencies:[yi],styles:[".mat-mdc-progress-spinner{display:block;overflow:hidden;line-height:0;position:relative;direction:ltr;transition:opacity 250ms cubic-bezier(0.4, 0, 0.6, 1)}.mat-mdc-progress-spinner circle{stroke-width:var(--mdc-circular-progress-active-indicator-width)}.mat-mdc-progress-spinner._mat-animation-noopable,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__determinate-circle{transition:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__spinner-layer,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container{animation:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container circle{stroke-dasharray:0 !important}.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic,.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle{stroke:currentColor;stroke:CanvasText}.mdc-circular-progress__determinate-container,.mdc-circular-progress__indeterminate-circle-graphic,.mdc-circular-progress__indeterminate-container,.mdc-circular-progress__spinner-layer{position:absolute;width:100%;height:100%}.mdc-circular-progress__determinate-container{transform:rotate(-90deg)}.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container{opacity:0}.mdc-circular-progress__indeterminate-container{font-size:0;letter-spacing:0;white-space:nowrap;opacity:0}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{opacity:1;animation:mdc-circular-progress-container-rotate 1568.2352941176ms linear infinite}.mdc-circular-progress__determinate-circle-graphic,.mdc-circular-progress__indeterminate-circle-graphic{fill:rgba(0,0,0,0)}.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:var(--mdc-circular-progress-active-indicator-color, var(--mat-app-primary))}.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:CanvasText}.mdc-circular-progress__determinate-circle{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1)}.mdc-circular-progress__gap-patch{position:absolute;top:0;left:47.5%;box-sizing:border-box;width:5%;height:100%;overflow:hidden}.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic{left:-900%;width:2000%;transform:rotate(180deg)}.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic{width:200%}.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{left:-100%}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress__circle-clipper{display:inline-flex;position:relative;width:50%;height:100%;overflow:hidden}.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}@keyframes mdc-circular-progress-container-rotate{to{transform:rotate(360deg)}}@keyframes mdc-circular-progress-spinner-layer-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes mdc-circular-progress-left-spin{from{transform:rotate(265deg)}50%{transform:rotate(130deg)}to{transform:rotate(265deg)}}@keyframes mdc-circular-progress-right-spin{from{transform:rotate(-265deg)}50%{transform:rotate(-130deg)}to{transform:rotate(-265deg)}}"],encapsulation:2,changeDetection:0})}}return n})(),zpe=(()=>{class n{constructor(e){this.isLoadingMap$=e.select(Npe)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-loading-map-progress-spinner"]],standalone:!0,features:[o.aNF],decls:2,vars:4,consts:[["id","loading-gif-map","mode","indeterminate","diameter","22","title","Rendering map"]],template:function(i,r){1&i&&(o.nrm(0,"mat-progress-spinner",0),o.nI1(1,"async")),2&i&&o.xc7("visibility",o.bMT(1,2,r.isLoadingMap$)?"visible":"hidden")},dependencies:[$W,zn],styles:["[_nghost-%COMP%]{display:inline-block;vertical-align:middle}"]})}}return n})();const Gpe=sn(ko,n=>n.isPresentationMode);let jpe=(()=>{class n{constructor(e,i){this.store=e,this.elementReference=i,this.isPresentationModeEnabled$=this.store.select(Gpe)}setPresentationModeEnabled(e){this.store.dispatch(vR({value:e.checked})),this.elementReference.nativeElement.querySelector("mat-slide-toggle").classList.remove("cdk-focused"),this.elementReference.nativeElement.querySelector("mat-slide-toggle").classList.remove("cdk-program-focused"),this.elementReference.nativeElement.querySelector("mat-slide-toggle").classList.remove("mat-mdc-slide-toggle-focused")}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(o.aKT))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-presentation-mode-button"]],standalone:!0,features:[o.aNF],decls:6,vars:6,consts:[["aria-label","Presentation Mode Toggle",1,"cc-presentation-mode-button",3,"change","checked","title"],[1,"presentation-mode-icon","fa","fa-television"]],template:function(i,r){1&i&&(o.j41(0,"mat-slide-toggle",0),o.nI1(1,"async"),o.nI1(2,"async"),o.bIt("change",function(l){return r.setPresentationModeEnabled(l)}),o.nrm(3,"i",1),o.j41(4,"span"),o.EFF(5,"Presentation Mode"),o.k0s()()),2&i&&o.Y8G("checked",o.bMT(1,2,r.isPresentationModeEnabled$))("title",o.bMT(2,4,r.isPresentationModeEnabled$)?"Disable flashlight hover effect":"Enable flashlight hover effect")},dependencies:[JS,zn],styles:["i[_ngcontent-%COMP%]{margin-right:4px}"]})}}return n})();const $pe=sn(ko,n=>n.experimentalFeaturesEnabled),qpe=sn(ko,n=>n.hideFlatBuildings),qW=sn(ko,n=>n.resetCameraIfNewFileIsLoaded),WW=sn(ko,n=>n.layoutAlgorithm),Wpe=sn(ko,n=>n.maxTreeMapFiles);function ef(n,t=0){let e;return(...i)=>{clearTimeout(e),e=setTimeout(()=>{n.apply(this,i),e=null},t)}}const C7=(n,t,e)=>{const i=Number.parseInt(n.target.value);return ie?e:i};let GR=(()=>{class n{constructor(){this.step=1,this.disabled=!1}handleSliderOnChange(e){e!==this.value&&this.onChange(e)}handleInputOnChange(e){const i=C7(e,this.min,this.max);i!==this.value&&!Number.isNaN(i)&&this.onChange(i)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-slider"]],inputs:{value:"value",min:"min",max:"max",label:"label",step:"step",disabled:"disabled",onChange:"onChange"},standalone:!0,features:[o.aNF],decls:8,vars:10,consts:[[1,"cc-slider-container"],[1,"label"],[1,"slider-with-input"],[3,"disabled","step","min","max"],["matSliderThumb","",3,"input","value"],["appearance","outline","subscriptSizing","dynamic"],["matInput","","type","number",3,"input","value","disabled","min","max"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"mat-label",1),o.EFF(2),o.k0s(),o.j41(3,"div",2)(4,"mat-slider",3)(5,"input",4),o.bIt("input",function(l){return r.handleInputOnChange(l)}),o.k0s()(),o.j41(6,"mat-form-field",5)(7,"input",6),o.bIt("input",function(l){return r.handleInputOnChange(l)}),o.k0s()()()()),2&i&&(o.R7$(2),o.JRh(r.label),o.R7$(2),o.Y8G("disabled",r.disabled)("step",r.step)("min",r.min)("max",r.max),o.R7$(),o.Y8G("value",r.value),o.R7$(2),o.Y8G("value",r.value)("disabled",r.disabled)("min",r.min)("max",r.max))},dependencies:[Nu,aq,hR,Lu,t0],styles:["[_nghost-%COMP%]{width:100%;margin-top:8px;display:inline-block}"]})}}return n})();function Xpe(n,t){if(1&n&&(o.j41(0,"mat-option",2),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e),o.R7$(),o.SpI(" ",e," ")}}function Kpe(n,t){if(1&n&&(o.nrm(0,"cc-slider",3),o.nI1(1,"async")),2&n){const e=o.XpG();o.Y8G("label","Maximum TreeMap Files")("min",1)("max",1e3)("value",o.bMT(1,5,e.maxTreeMapFiles$))("onChange",e.handleChangeMaxTreeMapFiles)}}let Ype=(()=>{class n{constructor(e){this.store=e,this.layoutAlgorithms=Object.values(za),this.layoutAlgorithm$=this.store.select(WW),this.maxTreeMapFiles$=this.store.select(Wpe),this.handleChangeMaxTreeMapFiles=ef(i=>{this.store.dispatch(h2({value:i}))},400)}handleSelectedLayoutAlgorithmChanged(e){this.store.dispatch(u2({value:e.value}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-layout-selection"]],standalone:!0,features:[o.aNF],decls:9,vars:6,consts:[["appearance","outline","subscriptSizing","dynamic"],[3,"selectionChange","value"],[3,"value"],[1,"cc-tree-maps-max-tree-map-files",3,"label","min","max","value","onChange"]],template:function(i,r){1&i&&(o.j41(0,"mat-form-field",0)(1,"mat-label"),o.EFF(2,"Map Layout"),o.k0s(),o.j41(3,"mat-select",1),o.nI1(4,"async"),o.bIt("selectionChange",function(l){return r.handleSelectedLayoutAlgorithmChanged(l)}),o.Z7z(5,Xpe,2,2,"mat-option",2,o.fX1),o.k0s()(),o.DNE(7,Kpe,2,7,"cc-slider",3),o.nI1(8,"async")),2&i&&(o.R7$(3),o.Y8G("value",o.bMT(4,2,r.layoutAlgorithm$)),o.R7$(2),o.Dyx(r.layoutAlgorithms),o.R7$(2),o.vxM("TreeMapStreet"===o.bMT(8,4,r.layoutAlgorithm$)?7:-1))},dependencies:[Lu,Nu,e0,yd,GR,zn],encapsulation:2})}}return n})();const XW=sn(ko,n=>n.sharpnessMode);function Zpe(n,t){if(1&n&&(o.j41(0,"mat-option",2),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e),o.R7$(),o.SpI(" ",e," ")}}let Jpe=(()=>{class n{constructor(e){this.store=e,this.sharpnessModes=Object.values(gd),this.sharpnessMode$=this.store.select(XW)}handleSelectedSharpnessModeChanged(e){this.store.dispatch(f2({value:e.value}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-display-quality-selection"]],standalone:!0,features:[o.aNF],decls:7,vars:3,consts:[["appearance","outline","subscriptSizing","dynamic"],[3,"selectionChange","value"],[3,"value"]],template:function(i,r){1&i&&(o.j41(0,"mat-form-field",0)(1,"mat-label"),o.EFF(2,"Display Quality"),o.k0s(),o.j41(3,"mat-select",1),o.nI1(4,"async"),o.bIt("selectionChange",function(l){return r.handleSelectedSharpnessModeChanged(l)}),o.Z7z(5,Zpe,2,2,"mat-option",2,o.fX1),o.k0s()()),2&i&&(o.R7$(3),o.Y8G("value",o.bMT(4,1,r.sharpnessMode$)),o.R7$(2),o.Dyx(r.sharpnessModes))},dependencies:[Lu,Nu,e0,yd,zn],encapsulation:2})}}return n})();function M7(n){for(const e of Object.keys(n))if("object"==typeof n[e]&&null!==n[e]){const{x:i,y:r,z:s}=n[e];void 0!==i||void 0!==r||void 0!==s?n[e]=new pe(i??1,r??1,s??1):M7(n[e])}}const jR=sn(Fd,n=>function a1(n){const t=[];if(void 0!==n)for(const{data:e}of oo(n))"Folder"!==e.type&&t.push(e);return t}(n.unifiedMapNode)),E7=n=>{const t=Math.floor(n.length/100);return t<=1?1:Math.min(t,10)};function rAe(n,t){if(1&n&&(o.j41(0,"span",2),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.SpI(" ",e.label,"")}}let S2=(()=>{class n{constructor(e,i){this.store=e,this.state=i}applyDefaultSettings(){const e=((n,t)=>{const e={};let i=0;for(const r of n){const s=r.split(".");let l=PW,u=e;for(const[f,p]of s.entries())void 0!==l[p]&&(u[p]||(u[p]={},i++),f===s.length-1?u[p]=l[p]:(l=l[p],u=u[p]))}return 0!==i&&M7(e),n.includes("appSettings.amountOfTopLabels")&&(e.appSettings.amountOfTopLabels=E7(jR(t))),e})(this.settingsKeys,this.state.getValue());this.store.dispatch(hu({value:e})),this.callback&&this.callback()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Vi))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-reset-settings-button"]],inputs:{settingsKeys:"settingsKeys",tooltip:"tooltip",label:"label",callback:"callback"},standalone:!0,features:[o.aNF],decls:3,vars:2,consts:[[3,"click","title"],[1,"fa","fa-undo"],[1,"reset-settings-button-label"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.applyDefaultSettings()}),o.nrm(1,"i",1),o.DNE(2,rAe,2,1,"span",2),o.k0s()),2&i&&(o.Y8G("title",r.tooltip),o.R7$(2),o.vxM(r.label?2:-1))},styles:["button[_ngcontent-%COMP%]{color:#1b9cfc;background:none;align-items:center;display:flex;gap:4px;margin:0;padding:0}button[_ngcontent-%COMP%] .fa[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:40px;width:40px;font-size:18px}button[_ngcontent-%COMP%]:hover .fa[_ngcontent-%COMP%]{border-radius:100%;background-color:#9e9e9e33}"]})}}return n})();const oAe=()=>["appSettings.hideFlatBuildings","appSettings.isWhiteBackground","appSettings.resetCameraIfNewFileIsLoaded","appSettings.layoutAlgorithm","appSettings.maxTreeMapFiles"];let sAe=(()=>{class n{constructor(e){this.store=e,this.screenshotToClipboardEnabled$=this.store.select(uG),this.experimentalFeaturesEnabled$=this.store.select($pe),this.isWhiteBackground$=this.store.select(qG),this.hideFlatBuildings$=this.store.select(qpe),this.resetCameraIfNewFileIsLoaded$=this.store.select(qW)}handleResetCameraIfNewFileIsLoadedChanged(e){this.store.dispatch(yR({value:e.checked}))}handleHideFlatBuildingsChanged(e){this.store.dispatch(a2({value:e.checked}))}handleIsWhiteBackgroundChanged(e){this.store.dispatch(d2({value:e.checked}))}handleExperimentalFeaturesEnabledChanged(e){this.store.dispatch(_R({value:e.checked}))}handleScreenshotToClipboardEnabledChanged(e){this.store.dispatch(gR({value:e.checked}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-global-configuration-dialog"]],standalone:!0,features:[o.aNF],decls:38,vars:17,consts:[["xmlns","http://www.w3.org/1999/html",1,"header"],[1,"cc-global-configuration-dialog-content"],[3,"change","checked"],["title","The camera is reset to the default position when any change in the map layout is made. Layout changes could be area changes, file changes, layout algorithm changes, focussing, excluding etc.",3,"change","checked"],[1,"fa","fa-info-circle"],["title","Current experimental features:\nDynamic Floor Label Height: Raises folder labels further up to reduce flickering on large maps (Needs site refresh)\nVisibility of buildings without area metric: Show buildings without area metric in the map (Needs site refresh)",3,"change","checked"],["tooltip","Reset global settings to their defaults","label","Reset global settings",3,"settingsKeys"],[1,"cc-global-configuration-links-list"],["href","https://codecharta.com/","target","_blank","rel","noopener noreferrer",1,"weblink"],[1,"fa","fa-external-link","icon-link"],["href","https://codecharta.com/docs/overview/introduction","target","_blank","rel","noopener noreferrer",1,"weblink"],["href","https://github.com/MaibornWolff/codecharta/","target","_blank","rel","noopener noreferrer",1,"weblink"],["align","end"],["mat-flat-button","","mat-dialog-close",""]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0)(1,"h2"),o.EFF(2,"Global Configuration"),o.k0s()(),o.j41(3,"mat-dialog-content")(4,"div",1),o.nrm(5,"cc-map-layout-selection")(6,"cc-display-quality-selection"),o.j41(7,"mat-slide-toggle",2),o.nI1(8,"async"),o.bIt("change",function(l){return r.handleHideFlatBuildingsChanged(l)}),o.EFF(9," Hide Flattened Buildings "),o.k0s(),o.j41(10,"mat-slide-toggle",3),o.nI1(11,"async"),o.bIt("change",function(l){return r.handleResetCameraIfNewFileIsLoadedChanged(l)}),o.EFF(12," Reset camera when map layout changes "),o.nrm(13,"i",4),o.k0s(),o.j41(14,"mat-slide-toggle",2),o.nI1(15,"async"),o.bIt("change",function(l){return r.handleIsWhiteBackgroundChanged(l)}),o.EFF(16," White Background "),o.k0s(),o.j41(17,"mat-slide-toggle",5),o.nI1(18,"async"),o.bIt("change",function(l){return r.handleExperimentalFeaturesEnabledChanged(l)}),o.EFF(19," Enable Experimental Features "),o.nrm(20,"i",4),o.k0s(),o.j41(21,"mat-slide-toggle",2),o.nI1(22,"async"),o.bIt("change",function(l){return r.handleScreenshotToClipboardEnabledChanged(l)}),o.EFF(23," Screenshot to clipboard "),o.k0s(),o.nrm(24,"cc-reset-settings-button",6),o.j41(25,"div",7)(26,"a",8),o.nrm(27,"em",9),o.EFF(28,"Website "),o.k0s(),o.j41(29,"a",10),o.nrm(30,"em",9),o.EFF(31,"Documentation "),o.k0s(),o.j41(32,"a",11),o.nrm(33,"em",9),o.EFF(34,"Github "),o.k0s()()()(),o.j41(35,"mat-dialog-actions",12)(36,"button",13),o.EFF(37,"Close"),o.k0s()()),2&i&&(o.R7$(7),o.Y8G("checked",o.bMT(8,6,r.hideFlatBuildings$)),o.R7$(3),o.Y8G("checked",o.bMT(11,8,r.resetCameraIfNewFileIsLoaded$)),o.R7$(4),o.Y8G("checked",o.bMT(15,10,r.isWhiteBackground$)),o.R7$(3),o.Y8G("checked",o.bMT(18,12,r.experimentalFeaturesEnabled$)),o.R7$(4),o.Y8G("checked",o.bMT(22,14,r.screenshotToClipboardEnabled$)),o.R7$(3),o.Y8G("settingsKeys",o.lJ4(16,oAe)))},dependencies:[Zg,Al,Ype,Jpe,JS,S2,Zl,ns,Ta,zn],styles:[".cc-global-configuration-dialog-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:26px}.cc-global-configuration-links-list[_ngcontent-%COMP%]{display:flex;gap:16px}.cc-global-configuration-links-list[_ngcontent-%COMP%] .weblink[_ngcontent-%COMP%]{display:block;color:#000000de;text-decoration:none}.cc-global-configuration-links-list[_ngcontent-%COMP%] .weblink[_ngcontent-%COMP%] .fa[_ngcontent-%COMP%]{margin:8px}"]})}}return n})(),aAe=(()=>{class n{constructor(e){this.dialog=e}showGlobalConfiguration(){this.dialog.open(sAe,{panelClass:"cc-global-configuration-dialog"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-global-configuration-button"]],standalone:!0,features:[o.aNF],decls:4,vars:1,consts:[["mat-button","","title","Global Configuration",3,"click"],[3,"icon"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.showGlobalConfiguration()}),o.j41(1,"span"),o.EFF(2,"Global Configuration"),o.k0s(),o.nrm(3,"cc-action-icon",1),o.k0s()),2&i&&(o.R7$(3),o.Y8G("icon","fa fa-cog"))},dependencies:[ns,pl],styles:["button[_ngcontent-%COMP%]{margin:0}button[_ngcontent-%COMP%] cc-action-icon[_ngcontent-%COMP%]{margin-left:12px}button[_ngcontent-%COMP%]:hover cc-action-icon[_ngcontent-%COMP%]{background-color:#0374c9}span[_ngcontent-%COMP%]{font-size:10pt}"]})}}return n})();function lAe(n,t){1&n&&o.nrm(0,"cc-file-panel")}function cAe(n,t){1&n&&o.nrm(0,"cc-hovered-node-path-panel")}let dAe=(()=>{class n{constructor(e){this.store=e,this.hoveredNodeId$=this.store.select(md)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-tool-bar"]],standalone:!0,features:[o.aNF],decls:12,vars:3,consts:[[1,"right-aligned"]],template:function(i,r){1&i&&(o.nrm(0,"cc-upload-files-button")(1,"cc-screenshot-button")(2,"cc-copy-to-clipboard-button")(3,"cc-export-3d-map-button")(4,"cc-reset-map-button"),o.DNE(5,lAe,1,0,"cc-file-panel"),o.nI1(6,"async"),o.DNE(7,cAe,1,0,"cc-hovered-node-path-panel"),o.j41(8,"div",0),o.nrm(9,"cc-loading-map-progress-spinner")(10,"cc-presentation-mode-button")(11,"cc-global-configuration-button"),o.k0s()),2&i&&(o.R7$(5),o.vxM(null===o.bMT(6,1,r.hoveredNodeId$)?5:7))},dependencies:[nB,Moe,Ooe,Vde,Xfe,Fpe,Ope,zpe,jpe,aAe,zn],styles:["[_nghost-%COMP%]{display:flex;gap:8px;padding-left:8px;align-items:center;background-color:#f0f0f0;height:35px;border-bottom:1px solid #cdcdcd}[_nghost-%COMP%] .right-aligned[_ngcontent-%COMP%]{position:absolute;right:4px;display:inline-flex;align-items:center;width:400px;justify-content:space-between}"]})}}return n})(),KW=(()=>{class n{static{this.NO_EXTENSION="None"}static{this.OTHER_EXTENSION="other"}static{this.OTHER_GROUP_THRESHOLD_VALUE=3}static getMetricDistribution(e,i){if(!e)return[];const r=new Map;let s=0;for(const u of oo(e))if(Ro(u)&&!u.data.isExcluded){const f=u.data.attributes[i],p=n.estimateFileExtension(u.data.name),m=r.get(p);s+=f,m?m.absoluteMetricValue+=f:r.set(p,n.getDistributionObject(p,f))}if(0===s)return[n.getNoneExtension()];let l=[];for(const u of r.values())0!==u.absoluteMetricValue&&(u.relativeMetricValue=100*u.absoluteMetricValue/s,l.push(u));return l.sort((u,f)=>f.absoluteMetricValue-u.absoluteMetricValue),l=n.getMetricDistributionWithOthers(l),l.length>0?l:[n.getNoneExtension()]}static getMetricDistributionWithOthers(e){const i=n.getOtherExtension(),r=[];for(const s of e)s.relativeMetricValue>n.OTHER_GROUP_THRESHOLD_VALUE?r.push(s):(i.absoluteMetricValue+=s.absoluteMetricValue,i.relativeMetricValue+=s.relativeMetricValue);return i.relativeMetricValue>0&&r.push(i),r}static getOtherExtension(){return{fileExtension:n.OTHER_EXTENSION,absoluteMetricValue:0,relativeMetricValue:0,color:n.getColor(n.OTHER_EXTENSION)}}static getDistributionObject(e,i){return{fileExtension:e,absoluteMetricValue:i,relativeMetricValue:0,color:n.getColor(e)}}static estimateFileExtension(e){const i=e.lastIndexOf(".");return i>0&&i!==e.length?e.slice(i+1).toLowerCase():n.NO_EXTENSION}static getNoneExtension(){return{fileExtension:n.NO_EXTENSION,absoluteMetricValue:null,relativeMetricValue:100,color:n.getColor(n.NO_EXTENSION)}}static getColor(e){if(e===n.NO_EXTENSION||e===n.OTHER_EXTENSION)return"#676867";let i=0;for(let r=0;rn.distributionMetric),uAe=sn(Fd,YW,(n,t)=>KW.getMetricDistribution(n.unifiedMapNode,t)),$R=sn(kS,n=>n.attributeDescriptors),Yp=sn($c,n=>n.edgeMetric),qR=sn(hv,C2,zg,Yp,(n,t,e,i)=>({areaMetric:n,heightMetric:t,colorMetric:e,edgeMetric:i})),hAe=["*"];let ZW=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-rounded-box"]],inputs:{backgroundColor:"backgroundColor"},standalone:!0,features:[o.aNF],ngContentSelectors:hAe,decls:3,vars:2,consts:[[1,"metric-value"],[1,"rounded-box"]],template:function(i,r){1&i&&(o.NAR(),o.j41(0,"div",0)(1,"div",1),o.SdG(2),o.k0s()()),2&i&&(o.R7$(),o.xc7("background-color",r.backgroundColor))},styles:[".metric-value[_ngcontent-%COMP%]{height:25px}.metric-value[_ngcontent-%COMP%] .rounded-box[_ngcontent-%COMP%]{background-color:#e6e6e6;border-radius:2px;padding:2px 5px;display:inline-block}"]})}}return n})();function d0(...n){const t=ih(n),e=RA(n),{args:i,keys:r}=Pj(n);if(0===i.length)return sa([],t);const s=new qr.c(function pAe(n,t,e=Ll.D){return i=>{JW(t,()=>{const{length:r}=n,s=new Array(r);let l=r,u=r;for(let f=0;f{const p=sa(n[f],t);let m=!1;p.subscribe((0,lr._)(i,_=>{s[f]=_,m||(m=!0,u--),u||i.next(e(s.slice()))},()=>{--l||i.complete()}))},i)},i)}}(i,t,r?l=>Oj(r,l):Ll.D));return e?s.pipe(kc(e)):s}function JW(n,t,e){n?js(e,n,t):t()}const AAe=sn(c_,n=>n.selectedBuildingId),u0=sn(AAe,jw,(n,t)=>t?.get(n));class mAe{constructor(){this.vertexShaderCode=v(1812),this.fragmentShaderCode=v(1190)}}class gAe{constructor(t){this._buildings=new Array,this.mapSize=t,this.scales=new pe(1,1,1)}add(t){this._buildings.push(t)}get buildings(){return this._buildings}setScales(t){this.scales=new pe(t.x,t.y,t.z)}getBuildingByPath(t){return this.buildings.find(e=>e.node.path===t)}intersect(t){let e,i=Number.POSITIVE_INFINITY;const r=this.scales.clone().multiplyScalar(this.mapSize).multiply(new pe(-1,0,-1));for(const s of this._buildings){const l=s.boundingBox.clone();if(l.min.multiply(this.scales),l.max.multiply(this.scales),l.translate(r),this.rayIntersectsAxisAlignedBoundingBox(t,l)){const u=t.intersectBox(l,new pe);if(u){const f=u.distanceTo(t.origin);f=s}}class _Ae{constructor(t,e,i,r){this._id=t,this._boundingBox=e,this._color=r,this._defaultColor=r,this._deltaColor="#000000",this._defaultDeltaColor="#000000",this._node=i}getCenterPoint(t){return new pe(this._node.x0-t+this._node.width/2,this._node.z0+this._node.height,this._node.y0-t+this._node.length/2)}decreaseLightness(t){this._color=this._decreaseLightnessForColor(this._defaultColor,t),this._node.deltas&&(this._deltaColor=this._decreaseLightnessForColor(this._defaultDeltaColor,t))}_decreaseLightnessForColor(t,e){const i=Dr.hexToHSL(t);return i.decreaseLightness(e),i.getLightness()<10?i.setLightness(10):i.setLightness(i.getLightness()),i.toHex()}getColorVector(){return Dr.getVector3(this._color)}getDefaultColorVector(){return Dr.getVector3(this._defaultColor)}getDeltaColorVector(){return Dr.getVector3(this._deltaColor)}getDefaultDeltaColorVector(){return Dr.getVector3(this._defaultDeltaColor)}resetColor(){this._color=this._defaultColor,this._deltaColor=this._defaultDeltaColor}equals(t){return this._id===t._id}get id(){return this._id}get boundingBox(){return this._boundingBox}get color(){return this._color}get node(){return this._node}get deltaColor(){return this._deltaColor}get defaultDeltaColor(){return this._defaultDeltaColor}setColor(t){this._color=t}setNode(t){this._node=t}setInitialDeltaColor(t){this._defaultDeltaColor=t,this._deltaColor=t}setDeltaColor(t){this._deltaColor=t}}var WR=function(n){return n[n.left=0]="left",n[n.right=1]="right",n[n.bottom=2]="bottom",n[n.top=3]="top",n[n.back=4]="back",n[n.front=5]="front",n}(WR||{});const bAe=[[-1,0,0],[1,0,0],[0,-1,0],[0,1,0],[0,0,-1],[0,0,1]],eX=[1,0,1,1,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,0,1,0,1,1,0,1,1,0,0,0,0,1,1,1];function tX(n,t,e,i,r,s,l){s.add(new _Ae(r,new Ss(new pe(e.x,e.y,e.z),new pe(e.x+e.width,e.y+e.height,e.z+e.depth)),t,i)),n.uvs.set(eX,r*eX.length),function vAe(n,t,e){const{x:i,y:r,z:s,width:l,height:u,depth:f}=t,p=i+l,m=r+u,_=s+f;let b=4*e*6*3;n[b++]=i,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=_,n[b++]=i,n[b++]=r,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=s,n[b++]=p,n[b++]=m,n[b++]=s,n[b++]=p,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=_,n[b++]=i,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=r,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=m,n[b++]=s,n[b++]=p,n[b++]=r,n[b++]=_,n[b++]=i,n[b++]=r,n[b++]=_,n[b++]=i,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=m,n[b++]=_,n[b++]=p,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=r,n[b++]=s,n[b++]=i,n[b++]=m,n[b++]=s,n[b++]=p,n[b++]=m,n[b++]=s}(n.positions,e,r),function wAe(n,t,e,i,r,s){const{y:l,height:u}=t,p=i/(l+u-l);let m=6*r*4,_=3*m,b=6*r*6;const w=Dr.getVector3Array(e);for(let F=0;F<6;F++){const D=yAe(F,n),T=bAe[F],I=m,O=m+1,R=m+2,P=m+3;s.isHeight.set(D,m);for(const te=m+4;m{class n{static{this.MINIMAL_BUILDING_HEIGHT=1}build(e,i,r,s){const l=new gAe(Is);this.floorGradient=Dr.gradient("#333333","#DDDDDD",this.getMaxNodeDepth(e)),this.materials=[i];const u=e.length,b=4*u*6,w={positions:new Float32Array(3*b),uvs:new Float32Array(2*b),normals:new Float32Array(3*b),colors:new Float32Array(3*b),indices:new Uint32Array(6*u*6),ids:new Float32Array(b),deltas:new Float32Array(b),isHeight:new Float32Array(b)};for(const[F,D]of e.entries())D.isLeaf?this.addBuilding(w,D,F,l,r,s):this.addFloor(w,D,F,l);return{mesh:this.buildMeshFromIntermediateVertexData(w),desc:l}}getMaxNodeDepth(e){return e.reduce((i,{depth:r})=>Math.max(r,i),0)}mapNodeToLocalBox(e){return{x:e.x0,y:e.z0,z:e.y0,width:e.width,height:e.height,depth:e.length}}ensureMinHeightUnlessDeltaIsNegative(e,i){return i<=0?e:Math.max(e,n.MINIMAL_BUILDING_HEIGHT)}addFloor(e,i,r,s){const l=this.getMarkingColorWithGradient(i);tX(e,i,this.mapNodeToLocalBox(i),l,r,s,0)}getMarkingColorWithGradient(e){if(e.markingColor){const r=Dr.getNumber(e.markingColor)&(e.depth%2==0?14540253:16777215);return Dr.convertNumberToHex(r)}return this.floorGradient[e.depth]}addBuilding(e,i,r,s,l,u){const f=this.mapNodeToLocalBox(i);f.height=this.ensureMinHeightUnlessDeltaIsNegative(i.height,i.heightDelta);let p=0;u&&i.deltas&&i.deltas[l.dynamicSettings.heightMetric]&&i.heightDelta&&(p=i.heightDelta,!i.flat&&p<0&&(f.height+=Math.abs(p))),tX(e,i,f,i.color,r,s,p)}buildMeshFromIntermediateVertexData(e){const s=new Float32Array(e.colors),l=new Yi;return l.setAttribute("position",new ae(e.positions,3)),l.setAttribute("normal",new ae(e.normals,3)),l.setAttribute("isHeight",new ae(e.isHeight,1)),l.setAttribute("uv",new ae(e.uvs,2)),l.setAttribute("color",new ae(e.colors,3)),l.setAttribute("deltaColor",new ae(s,3)),l.setAttribute("subGeomIdx",new ae(e.ids,1)),l.setAttribute("delta",new ae(e.deltas,1)),l.setIndex(new ae(e.indices,1)),l.addGroup(0,Number.POSITIVE_INFINITY,0),new dr(l,this.materials)}}return n})(),CAe=(()=>{class n{static{this.NUM_OF_COLOR_VECTOR_FIELDS=3}static{this.NUM_OF_VERTICES=24}static{this.LIGHTNESS_INCREASE=-10}static{this.LIGHTNESS_DECREASE=20}constructor(e,i,r){this.initMaterial(),this.geomGen=new xAe,this.material.precision="lowp";const s=this.geomGen.build(e,this.material,i,r);this.threeMesh=s.mesh,this.mapGeomDesc=s.desc,this.nodes=e,this.initDeltaColorsOnMesh(i)}getThreeMesh(){return this.threeMesh}getNodes(){return this.nodes}selectBuilding(e,i){e.setColor(i),e.setDeltaColor(i),this.setVertexColor(e.id,e.getColorVector(),e.getDeltaColorVector()),this.updateVertices()}clearSelection(e){e.resetColor(),this.setVertexColor(e.id,e.getDefaultColorVector(),e.getDefaultDeltaColorVector()),this.updateVertices()}getMeshDescription(){return this.mapGeomDesc}getBuildingByPath(e){return this.mapGeomDesc.getBuildingByPath(e)}checkMouseRayMeshIntersection(e,i){const r=this.calculatePickingRay(e,i);return this.getMeshDescription().intersect(r)}setScale(e){this.mapGeomDesc.setScales(e)}highlightBuilding(e,i,r,s){const l=Za.buildingArrayToMap(e);for(const u of this.mapGeomDesc.buildings)this.isBuildingSelected(i,u)||(l.get(u.id)||s.get(u.id)?u.decreaseLightness(n.LIGHTNESS_INCREASE):this.adjustSurroundingBuildingColors(e,u,r),this.setVertexColor(u.id,u.getColorVector(),u.getDeltaColorVector()));this.updateVertices()}clearHighlight(e){for(const i of this.mapGeomDesc.buildings)this.isBuildingSelected(e,i)||this.setVertexColor(i.id,i.getDefaultColorVector(),i.getDefaultDeltaColorVector());this.updateVertices()}adjustSurroundingBuildingColors(e,i,r){if(r.appSettings.isPresentationMode){const s=e[0].getCenterPoint(Is).distanceTo(i.getCenterPoint(Is));this.decreaseLightnessByDistance(i,s)}else i.decreaseLightness(n.LIGHTNESS_DECREASE)}initDeltaColorsOnMesh(e){if(this.mapGeomDesc.buildings[0]?.node.deltas){for(const i of this.mapGeomDesc.buildings)this.setNewDeltaColor(i,e),this.setVertexColor(i.id,i.getColorVector(),i.getDeltaColorVector());this.updateVertices()}}setNewDeltaColor(e,i){const{appSettings:{mapColors:r},dynamicSettings:{heightMetric:s}}=i,{node:l}=e;if(l.flat)e.setInitialDeltaColor(r.flat);else if(l.deltas){const u=l.deltas[s];u>0&&e.setInitialDeltaColor(r.positiveDelta),u<0&&e.setInitialDeltaColor(r.negativeDelta)}}isBuildingSelected(e,i){return e&&i.equals(e)}decreaseLightnessByDistance(e,i){i>800?e.decreaseLightness(40):i>400?e.decreaseLightness(30):i>250?e.decreaseLightness(20):i>100?e.decreaseLightness(15):i>50&&e.decreaseLightness(10)}setVertexColor(e,i,r){const s=n.NUM_OF_VERTICES,l=e*s,u=this.threeMesh.geometry.getAttribute("color"),f=this.threeMesh.geometry.getAttribute("deltaColor");for(let p=l;pthis.height?this.height:this.width}isVertical(){return this.height>this.width}area(){return this.width*this.height}getBottomRight(){return this.bottomRight}}class I7{constructor(t){this.height=0,this.width=0,this.FIXED_MARGIN=.5,this.mapNode=t}getNode(){return this.mapNode}createMarginatedRectangle(t){const e=new ft(t.x+this.FIXED_MARGIN,t.y+this.FIXED_MARGIN);return new h0(e,this.width-2*this.FIXED_MARGIN,this.height-2*this.FIXED_MARGIN)}}var F7=function(n){return n[n.Horizontal=0]="Horizontal",n[n.Vertical=1]="Vertical",n}(F7||{});class nX extends I7{constructor(){super(...arguments),this.spacer=2}getStreetThickness(){const t=this.mapNode.path.split("/"),e=this.mapNode.path.startsWith("/root/")&&3===t.length&&""!==t[2];return"/root"===this.mapNode.path||e?this.calculateRootStreetThickness(this.mapNode):this.calculateNonRootThickness(this.mapNode)}calculateNonRootThickness(t){return 2+5e-4*t.attributes.unary}calculateRootStreetThickness(t){return 8+.001*t.attributes.unary}}function XR(n,t){let e=n.attributes[t]||0;if(0===e&&n.children&&n.children.length>0)for(const i of n.children)e+=XR(i,t);return e}const px={calculateSize:XR,mergeDirectories:function MAe(n,t){let e=n;const i=XR(n,t);for(const r of n.children)if(!Ro(r)&&i===XR(r,t)){const l=e.name;e=r,e.name=`${l}/${r.name}`;break}return e},buildNodeFrom:function EAe(n,t,e,i,r){const s=!(n.children&&n.children.length>0),l=I3(n,i),u=Za.getHeightValue(i,n,e,l),f=Math.abs(s?Math.max(t*u,Za.MIN_BUILDING_HEIGHT):Za.FOLDER_HEIGHT),p=n.rect.height,m=n.rect.topLeft.x,_=n.rect.topLeft.y,b=n.zOffset*Za.FOLDER_HEIGHT;return{name:n.name,id:n.id,width:n.rect.width,height:f,length:p,depth:n.zOffset,mapNodeDepth:100,x0:m,z0:b,y0:_,isLeaf:s,attributes:n.attributes,edgeAttributes:n.edgeAttributes,deltas:n.deltas,heightDelta:n.deltas?.[i.dynamicSettings.heightMetric]?t*n.deltas[i.dynamicSettings.heightMetric]:0,visible:HU(n,s,i,l),path:n.path,link:n.link,markingColor:l1(n,i.fileSettings.markedPackages),flat:l,color:QU(n,i,Vp(i),r,l),incomingEdgePoint:T3(n.rect.width,f,p,new pe(m,b,_),Is),outgoingEdgePoint:T3(n.rect.width,f,p,new pe(m,b,_),Is)}}};var f0=function(n){return n[n.RIGHT=0]="RIGHT",n[n.LEFT=1]="LEFT",n}(f0||{});class pv extends nX{constructor(t,e,i=f0.RIGHT){super(t),this.children=[],this.topRow=[],this.bottomRow=[],this.children=e,this.orientation=i}calculateDimension(t){for(const e of this.children)e.calculateDimension(t);this.splitChildrenToRows(this.children),this.rearrangeRows(),this.metricValue=px.calculateSize(this.mapNode,t),this.width=Math.max(this.getLength(this.topRow),this.getLength(this.bottomRow)),this.height=this.getMaxHeight(this.topRow)+this.getStreetThickness()+this.getMaxHeight(this.bottomRow)+this.spacer}layout(t,e){const i=this.getMaxHeight(this.topRow),r=this.layoutTopRow(e,i,t),s=this.layoutBottomRow(e,i,t);return[...r,this.layoutStreet(e,i),...s]}layoutTopRow(t,e,i){const r=new ft(t.x,t.y),s=[];if(this.orientation===f0.LEFT){const l=this.getLength(this.topRow);r.x+=this.width-l}for(let l=0;lMath.max(e,i.height),Number.MIN_VALUE)}calculateStreetOverhang(t){return this.orientation===f0.LEFT?this.calculateLeftStreetOverhang(t):this.calculateRightStreetOverhang(t)}calculateLeftStreetOverhang(t){const e=this.topRow[0],i=this.bottomRow[0],r=e instanceof Ax&&e.streetRect?e.streetRect.topLeft.x-t.x:this.width-this.getLength(this.topRow),s=i instanceof Ax&&i.streetRect?i.streetRect.topLeft.x-t.x:this.width-this.getLength(this.bottomRow);return r>0&&s>0?Math.min(r,s):0}calculateRightStreetOverhang(t){const e=this.topRow.at(-1),i=this.bottomRow.at(-1),r=t.x+this.width,s=e instanceof Ax&&e.streetRect?r-e.streetRect.getBottomRight().x:this.width-this.getLength(this.topRow),l=i instanceof Ax&&i.streetRect?r-i.streetRect.getBottomRight().x:this.width-this.getLength(this.bottomRow);return s>0&&l>0?Math.min(s,l):0}}var p0=function(n){return n[n.UP=0]="UP",n[n.DOWN=1]="DOWN",n}(p0||{});class Ax extends nX{constructor(t,e,i,r=p0.UP){super(t),this.children=[],this.leftRow=[],this.rightRow=[],this.children=e,this.orientation=r}calculateDimension(t){for(const e of this.children)e.calculateDimension(t);this.splitChildrenToRows(this.children),this.rearrangeRows(),this.metricValue=px.calculateSize(this.mapNode,t),this.width=this.getMaxWidth(this.leftRow)+this.getStreetThickness()+this.getMaxWidth(this.rightRow)+2*this.spacer,this.height=Math.max(this.getLength(this.leftRow),this.getLength(this.rightRow))}layout(t,e){const i=this.getMaxWidth(this.leftRow),r=this.layoutLeftRow(e,i,t),s=this.layoutRightRow(e,i,t);return[...r,this.layoutStreet(e,i),...s]}layoutLeftRow(t,e,i){const r=new ft(t.x,t.y),s=[];if(this.orientation===p0.UP){const l=this.getLength(this.leftRow);r.y+=this.height-l}for(let l=0;le.mapNode.type===i.mapNode.type?0:e.mapNode.type===ts.FILE?-1:1)}splitChildrenToRows(t){this.sortChildrenByType(t);let e=0,i=0;for(const r of t)e+=r.height;for(const r of t)i<=e/2?(r instanceof pv&&(r.orientation=f0.LEFT),this.leftRow.push(r),i+=r.height):this.rightRow.push(r)}rearrangeRows(){this.orientation===p0.UP?this.leftRow.reverse():this.rightRow.reverse()}getMaxWidth(t){return t.reduce((e,i)=>Math.max(e,i.width),Number.MIN_VALUE)}calculateStreetOverhang(t){return this.orientation===p0.UP?this.calculateTopStreetOverhang(t):this.calculateBottomStreetOverhang(t)}calculateTopStreetOverhang(t){const e=this.leftRow[0],i=this.rightRow[0],r=e instanceof pv&&e.streetRect?e.streetRect.topLeft.y-t.y:this.height-this.getLength(this.leftRow),s=i instanceof pv&&i.streetRect?i.streetRect.topLeft.y-t.y:this.height-this.getLength(this.rightRow);return r>0&&s>0?Math.min(r,s):0}calculateBottomStreetOverhang(t){const e=this.leftRow.at(-1),i=this.rightRow.at(-1),r=t.y+this.height,s=e instanceof pv&&e.streetRect?r-e.streetRect.getBottomRight().y:this.height-this.getLength(this.leftRow),l=i instanceof pv&&i.streetRect?r-i.streetRect.getBottomRight().y:this.height-this.getLength(this.rightRow);return s>0&&l>0?Math.min(s,l):0}}class SAe extends I7{constructor(t){super(t)}calculateDimension(t){this.metricValue=px.calculateSize(this.mapNode,t);const e=Math.sqrt(this.metricValue);this.width=this.height=e}layout(t,e){return[{...this.mapNode,value:this.metricValue,rect:this.createMarginatedRectangle(e),zOffset:0}]}}class TAe extends I7{constructor(t){super(t),this.treeMapNodes=[]}calculateDimension(t){this.metricName=t,this.metricValue=Za.calculateSize(this.mapNode,t),this.width=Math.sqrt(this.metricValue),this.height=Math.sqrt(this.metricValue)}}class iX{constructor(t){this.nodes=[],this.nodes=t}totalScaledSize(t,e,i,r){return t.reduce((s,l)=>s+this.scaledSize(l,i,r,e),0)}totalSize(t){return this.nodes.reduce((e,i)=>e+Za.calculateSize(i,t),0)}min(t,e,i,r){return t.reduce((s,l)=>Math.min(s,this.scaledSize(l,i,r,e)),Number.MAX_VALUE)}max(t,e,i,r){return t.reduce((s,l)=>Math.max(s,this.scaledSize(l,i,r,e)),Number.MIN_VALUE)}populate(t,e,i,r){for(const s of t){const l=this.worstAspectRatio(this.nodes,e,i,r);if(!(this.worstAspectRatio([...this.nodes,s],e,i,r)0?F/_:0,T=new h0(new ft(u,t.topLeft.y),D,_);b.push({...w,value:"File"===w.type?e:0,rect:this.applyNodeMargin(T,s),zOffset:r}),u+=D}return b}worstAspectRatio(t,e,i,r){const s=e.width,l=e.area(),u=this.totalScaledSize(t,r,i,l),f=this.min(t,r,i,l),p=this.max(t,r,i,l),m=Math.pow(s,2),_=Math.pow(u,2);return Math.max(m*p/_,_/(m*f))}}var B7=function(n){return n[n.topToBottom=0]="topToBottom",n[n.bottomToTop=1]="bottomToTop",n}(B7||{});class IAe extends iX{constructor(t){super(t)}layout(t,e,i,r,s,l=B7.topToBottom){let u=t.topLeft.y;l!==B7.topToBottom&&this.nodes.reverse();const f=this.nodes,p=t.area(),m=t.height,_=this.totalScaledSize(f,i,e,p)/m,b=[];for(const w of f){const F=this.scaledSize(w,e,p,i),D=_>0?F/_:0,T=new h0(new ft(t.topLeft.x,u),_,D);b.push({...w,value:"File"===w.type?e:0,rect:this.applyNodeMargin(T,s),zOffset:r}),u+=D}return b}worstAspectRatio(t,e,i,r){const s=e.height,l=e.area(),u=this.totalScaledSize(t,r,i,l),f=this.min(t,r,i,l),p=this.max(t,r,i,l),m=s**2,_=u**2;return Math.max(m*p/_,_/(m*f))}}class FAe extends TAe{constructor(t){super(t)}layout(t,e=new ft(0,0)){const i=this.createMarginatedRectangle(e),r={...this.mapNode,value:this.metricValue,rect:i,zOffset:0},s=this.mapNode.children.filter(l=>Za.calculateSize(l,this.metricName)>0);return this.treeMapNodes.push(r),s.length>0&&this.createNodes(s,i,this.metricValue,1,t),this.treeMapNodes}createNodes(t,e,i,r,s){let l=0,u=new h0(new ft(e.topLeft.x,e.topLeft.y),e.width,e.height),f=i;const p=this.orderBySizeDescending(t);do{const m=this.createStrip(u,p.slice(l),f),_=m.totalSize(this.metricName);if(_>0){const b=this.createStripNodes(m,u,f,r,s);this.createChildrenNodes(b,r,s),u=this.remainingRectangle(u,m,f,u.area()),f-=_}l+=m.nodes.length}while(l0){const s=r.children.filter(l=>Za.calculateSize(l,this.metricName)>0);if(s.length>0){const l=Za.calculateSize(r,this.metricName);this.createNodes(s,r.rect,l,e+1,i)}}}orderBySizeDescending(t){return t.sort((e,i)=>Za.calculateSize(i,this.metricName)-Za.calculateSize(e,this.metricName))}}class Av{static createStreetLayoutNodes(t,e,i,r){const s=U_(e.files),l=i.find(F=>F.name===e.dynamicSettings.heightMetric).maxValue*s,u=e.dynamicSettings.areaMetric,f=px.mergeDirectories(t,u),m=this.createBoxes(f,u,e,F7.Vertical,1,e.appSettings.maxTreeMapFiles),_=new pv(f,m,0);return _.calculateDimension(u),_.layout(.02*e.dynamicSettings.margin,new ft(0,0)).map(F=>px.buildNodeFrom(F,this.calculateHeightScale(t,Is,l),l,e,r))}static createBoxes(t,e,i,r,s,l){const u=[],f=i.dynamicSettings.areaMetric;for(let p of t.children){if(Ro(p)){u.push(new SAe(p));continue}if(cu(p.path,i.fileSettings.blacklist,"exclude"))continue;const m=i.appSettings.layoutAlgorithm,_=Av.countFileDescendants(p);if(m===za.TreeMapStreet&&_<=l){const b=Av.createTreeMap(p);u.push(b)}else{p=px.mergeDirectories(p,f);const b=Av.createBoxes(p,e,i,1-r,s+1,l),w=Av.createStreet(p,r,b,s);u.push(w)}}return u}static createStreet(t,e,i,r){return e===F7.Horizontal?new pv(t,i,r):new Ax(t,i,r)}static createTreeMap(t){return new FAe(t)}static countFileDescendants(t){let e=0;for(const i of t.children)e+=Ro(i)?1:Av.countFileDescendants(i);return e}static calculateHeightScale(t,e,i){return 2*e/i*(1e-4*t.attributes.unary+.005*Math.sqrt(t.attributes.unary))}}const k7=sn(ko,n=>n.isLoadingFile);class BAe extends XU{constructor(t,e){super(t,e),this.screenSpacePanning=!1,this.mouseButtons={LEFT:2,MIDDLE:1,RIGHT:0},this.touches={ONE:1,TWO:3}}}let Rd=(()=>{class n{static{this.CAMERA_CHANGED_EVENT_NAME="camera-changed"}constructor(e,i,r){this.threeCameraService=e,this.threeSceneService=i,this.threeRendererService=r,this.MAX_ZOOM=200,this.MIN_ZOOM=10,this.eventEmitter=new jU,this.zoomPercentage$=new $d.t(100)}setControlTarget(e){this.controls.target.set(e.x,e.y,e.z)}updateControls(){this.controls.update()}rotateCameraInVectorDirection(e,i,r){const s=this.getZoom();this.lookAtDirectionFromTarget(e,i,r),this.applyOldZoom(s),this.threeRendererService.render(),this.onInput(this.threeCameraService.camera)}autoFitTo(){setTimeout(()=>{const e=this.getBoundingSphere();if(-1===e.radius)return;const i=this.cameraPerspectiveLengthCalculation(e);this.threeCameraService.camera.position.set(i,i,e.center.z),this.updateControls(),this.focusCameraViewToCenter(e),this.threeRendererService.render(),this.onInput(this.threeCameraService.camera),this.controls.maxDistance=4*i,this.controls.minDistance=e.radius/13,this.setZoomPercentage(140)})}cameraPerspectiveLengthCalculation(e){const s=this.threeCameraService.camera.fov*Math.PI/180*1.3,l=e.radius/Math.tan(s/2);return Math.sqrt(Math.pow(l,2)+Math.pow(l,2))}focusCameraViewToCenter(e){const i=e.center.clone();i.setY(0),this.controls.target.set(i.x,i.y,i.z),this.threeCameraService.camera.lookAt(i),this.threeCameraService.camera.updateProjectionMatrix()}getBoundingSphere(){return(new Ss).setFromObject(this.threeSceneService.mapGeometry).getBoundingSphere(new ha)}lookAtDirectionFromTarget(e,i,r){this.threeCameraService.camera.position.set(this.controls.target.x,this.controls.target.y,this.controls.target.z);const s=new dr(new jc(20,20,20),new Dz);this.threeSceneService.scene.add(s),s.position.set(this.controls.target.x,this.controls.target.y,this.controls.target.z),s.translateX(e),s.translateY(i),s.translateZ(r),this.threeCameraService.camera.lookAt(s.getWorldPosition(s.position)),this.threeSceneService.scene.remove(s)}getZoom(){return this.threeCameraService.camera.position.distanceTo(this.controls.target)}applyOldZoom(e){this.threeCameraService.camera.translateZ(e)}init(e){this.controls=new BAe(this.threeCameraService.camera,e),this.controls.mouseButtons={LEFT:0,MIDDLE:1,RIGHT:2},this.controls.zoomToCursor=!0;const i=r=>{this.controls.zoomToCursor=!r.altKey};window.addEventListener("keydown",i),window.addEventListener("keyup",i),window.addEventListener("mousemove",i),this.controls.minPolarAngle=0,this.controls.maxPolarAngle=Math.PI/2,this.controls.listenToKeyEvents(window),this.controls.addEventListener("change",()=>{this.onInput(this.threeCameraService.camera),this.updateZoomPercentage(),this.threeRendererService.render()}),this.updateZoomPercentage()}onInput(e){this.setControlTarget(this.controls.target),this.eventEmitter.emit("onCameraChanged",{camera:e})}subscribe(e,i){this.eventEmitter.on(e,r=>{i(r)})}getZoomPercentage(e){const i=this.controls.minDistance,r=this.controls.maxDistance;return e<=i?this.MAX_ZOOM:e>=r?this.MIN_ZOOM:this.MAX_ZOOM-(e-i)/(r-i)*(this.MAX_ZOOM-this.MIN_ZOOM)}getDistanceFromZoomPercentage(e){const i=this.controls.minDistance;return i+(this.MAX_ZOOM-e)/(this.MAX_ZOOM-this.MIN_ZOOM)*(this.controls.maxDistance-i)}updateZoomPercentage(){const e=this.threeCameraService.camera.position.distanceTo(this.controls.target),i=this.getZoomPercentage(e);this.zoomPercentage$.next(i)}setZoomPercentage(e){const i=this.getDistanceFromZoomPercentage(e),r=(new pe).subVectors(this.threeCameraService.camera.position,this.controls.target).normalize();this.threeCameraService.camera.position.copy(this.controls.target).add(r.multiplyScalar(i)),this.updateControls(),this.zoomPercentage$.next(e)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO($h),o.KVO(Dd),o.KVO(wr))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),oX=(()=>{class n{constructor(e,i,r,s){this.state=e,this.threeCameraService=i,this.threeSceneService=r,this.threeMapControlsService=s,this.mapLabelColors=qh.labelColorAndAlpha,this.LABEL_COLOR_RGB=Dr.convertHexToRgba(this.mapLabelColors.rgb),this.LABEL_WIDTH_DIVISOR=2100,this.LABEL_HEIGHT_DIVISOR=35,this.LABEL_CORNER_RADIUS=40,this.LABEL_SCALE_FACTOR=.7,this.LABEL_HEIGHT_COEFFICIENT=3.75,this.LABEL_HEIGHT_POSITION=60,this.previousScaling=new pe(1,1,1),this.lineCount=1,this.nodeHeight=0,this.labels=new Array,this.threeMapControlsService.subscribe("onCameraChanged",()=>this.onCameraChanged())}addLeafLabel(e,i,r=!1){const{appSettings:s,dynamicSettings:l}=this.state.getValue(),{scaling:u,layoutAlgorithm:f,showMetricLabelNodeName:p,showMetricLabelNameValue:m}=s,{margin:_,heightMetric:b}=l,w=new pe(u.x,u.y,u.z);let F="";if(p||r&&!m)F=`${e.name}`;else if(!m)return;m&&(""!==F&&(F+="\n"),F+=`${e.attributes[b]} ${b}`);const D=this.makeText(F,30,e);let T=e.height+Math.abs(e.heightDelta??0);T=T*w.y>i*w.y?T:i,this.nodeHeight=this.nodeHeight>T?this.nodeHeight:T;const O=e.z0,P=(e.x0-Is+e.width/2)*w.x,ee=(O+this.nodeHeight)*w.y,J=(O+e.height)*w.y,te=(e.y0-Is+e.length/2)*w.z,ie=this.LABEL_HEIGHT_COEFFICIENT*_*this.LABEL_SCALE_FACTOR;let W=ie+D.heightValue/2;switch(f){case za.StreetMap:case za.TreeMapStreet:W/=10,this.LABEL_HEIGHT_POSITION=0,D.line=this.makeLine(P,ee+W,J,te);break;default:D.line=this.makeLine(P,ee+ie/2,J,te)}D.sprite.position.set(P,ee+W,te),D.sprite.material.color=new vn(this.mapLabelColors.rgb),D.sprite.material.opacity=this.mapLabelColors.alpha,D.sprite.userData={node:e},this.threeSceneService.labels.add(D.sprite),this.threeSceneService.labels.add(D.line),this.labels.push(D)}clearLabels(){this.threeSceneService.resetLabel(),this.threeSceneService.resetLineHighlight(),this.dispose(this.labels),this.labels=[],this.nodeHeight=0,this.LABEL_HEIGHT_POSITION=60,this.dispose(this.threeSceneService.labels.children),this.threeSceneService.labels.children=[]}disposeSprite(e){e.material.dispose(),e.material.map.dispose(),e.geometry.dispose()}disposeLine(e){e.material.dispose(),e.geometry.dispose()}dispose(e){for(const i of e)i instanceof q5&&this.disposeSprite(i),i instanceof ku&&this.disposeLine(i),void 0!==i.sprite&&this.disposeSprite(i.sprite),void 0!==i.line&&this.disposeLine(i.line)}clearTemporaryLabel(e){const i=this.labels.findIndex(({node:r})=>r===e);i>-1&&(this.labels.splice(i,1),this.dispose(this.threeSceneService.labels.children),this.threeSceneService.labels.children.length-=2,this.threeSceneService.resetLineHighlight())}scale(){const{scaling:e}=this.state.getValue().appSettings,i=new pe(e.x,e.y,e.z),{margin:r}=this.state.getValue().dynamicSettings,s=new pe(0,this.LABEL_HEIGHT_COEFFICIENT*r*this.LABEL_SCALE_FACTOR,0);for(const l of this.labels){const u=i.clone();l.sprite.position.sub(s).divide(this.previousScaling).multiply(u).add(s),u.y>1&&(u.y=1);const p=l.line.geometry.attributes.position;p.setX(0,p.getX(0)*u.x),p.setY(0,p.getY(0)*u.y),p.setZ(0,p.getZ(0)*u.z),p.setX(1,l.sprite.position.x),p.setY(1,l.sprite.position.y),p.setZ(1,l.sprite.position.z),p.needsUpdate=!0}this.previousScaling.copy(i)}onCameraChanged(){for(const e of this.labels)this.setLabelSize(e.sprite,e,e.sprite.material.map.image.width)}makeText(e,i,r){const s=document.createElement("canvas"),l=s.getContext("2d");l.font=`${i}px Roboto`;const f=e.split("\n"),p=l.measureText(f[0]).width,m=l.measureText(f[1]).width;s.width=p>m?p+25:m+25,s.height=25+i*f.length,l.font=`${i}px Roboto`,l.fillStyle="rgba(255,255,255,1)",l.lineJoin="round",l.lineCap="round",l.lineWidth=5,n.drawRectangleWithRoundedCorners(l,0,0,s.width,s.height,this.LABEL_CORNER_RADIUS),l.fillStyle="rgba(0,0,0,1)",l.textAlign="center",l.textBaseline="middle";for(const[F,D]of f.entries())l.fillText(D,s.width/2,s.height*(F+1)/(f.length+1));const _=new Wa(s);_.minFilter=vs,_.needsUpdate=!0;const b=new j5({map:_}),w=new q5(b);return this.lineCount=f.length,this.setLabelSize(w,null,s.width),{sprite:w,heightValue:s.height,line:null,lineCount:f.length,node:r}}static drawRectangleWithRoundedCorners(e,i,r,s,l,u){s<2*u&&(u=s/2),l<2*u&&(u=l/2),e.beginPath(),e.moveTo(i+u,r),e.arcTo(i+s,r,i+s,r+l,u),e.arcTo(i+s,r+l,i,r+l,u),e.arcTo(i,r+l,i,r,u),e.arcTo(i,r,i+s,r,u),e.closePath(),e.fill()}setLabelSize(e,i,r=e.material.map.image.width){const s=(new Ss).setFromObject(this.threeSceneService.mapGeometry).getBoundingSphere(new ha).center;if(this.threeCameraService.camera){const l=this.threeCameraService.camera.position.distanceTo(s);null!==i&&(this.lineCount=i.lineCount),e.scale.set(l/this.LABEL_WIDTH_DIVISOR*r,this.lineCount>1?l/25:l/this.LABEL_HEIGHT_DIVISOR,1)}}makeLine(e,i,r,s){const l=new Ya({color:this.LABEL_COLOR_RGB,linewidth:2}),u=(new Yi).setFromPoints([new pe(e,r,s),new pe(e,i+this.LABEL_HEIGHT_POSITION,s)]);return new ku(u,l)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Vi),o.KVO($h),o.KVO(Dd),o.KVO(Rd))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();const sX=sn(ko,n=>n.amountOfEdgePreviews),kAe=sn(uc,Ru,(n,t)=>{const{nodeEdgeMetricsMap:e}=SG(n,t),i=new Map;for(const[r,s]of e){const l=new Map([...s.entries()].sort((u,f)=>f[1].incoming+f[1].outgoing-(u[1].incoming+u[1].outgoing)));i.set(r,l)}return i}),RAe=sn(kAe,Yp,sX,(n,t,e)=>new Set(PAe(n,t,e))),PAe=(n,t,e)=>{const i=[];if(0===e)return i;const r=n.get(t);if(void 0===r)return i;for(const s of r.keys())if(i.push(s),i.length===e)break;return i},OAe=sn(kS,n=>n.edges),LAe=sn(RAe,OAe,Yp,(n,t,e)=>{const i=C(t);return((n,t,e)=>{for(const i of t)if(i.visible=jl.none,void 0!==i.attributes[e]){const r=n.has(i.fromNodeName),s=n.has(i.toNodeName);r&&s?i.visible=jl.both:r?i.visible=jl.from:s&&(i.visible=jl.to)}})(n,i,e),i});let UAe=(()=>{class n{constructor(e,i,r,s){this.store=e,this.state=i,this.threeSceneService=r,this.idToBuildingService=s,this.VERTICES_PER_LINE=5,this.arrows=new Array,this.HIGHLIGHT_BUILDING_DELAY=1,this.debounceCalculation=ef(l=>this.resetEdgesOfBuildings(l),this.HIGHLIGHT_BUILDING_DELAY),this.subscription=this.store.select(md).pipe(ro(l=>{if(null!==l){const u=this.idToBuildingService.get(l);this.onBuildingHovered(u)}else this.onBuildingUnhovered()})).subscribe(),this.resetEdgesOfBuildings=l=>{this.isEdgeApplicableForBuilding(l)&&(this.clearArrows(),this.showEdgesOfBuildings(l)),this.scale()},this.onBuildingSelected=l=>{this.isEdgeApplicableForBuilding(l.building)&&(this.clearArrows(),this.showEdgesOfBuildings()),this.scale()},this.onBuildingDeselected=()=>{this.clearArrows(),this.addEdgePreview()},this.threeSceneService.subscribe("onBuildingSelected",this.onBuildingSelected),this.threeSceneService.subscribe("onBuildingDeselected",this.onBuildingDeselected)}ngOnDestroy(){this.subscription.unsubscribe()}onBuildingHovered(e){this.debounceCalculation(e)}onBuildingUnhovered(){const{isEdgeMetricVisible:e}=this.state.getValue().appSettings;e&&(this.clearArrows(),this.showEdgesOfBuildings()),this.scale()}clearArrows(){this.arrows=[],this.threeSceneService.edgeArrows.children.length=0}addArrow(e,i,r){const{appSettings:s,dynamicSettings:l}=this.state.getValue(),u=100*s.edgeHeight;if(e.attributes?.[l.heightMetric]&&i.attributes?.[l.heightMetric]){const f=this.createCurve(i,e,u),p=Dr.getNumber(s.mapColors[r?"outgoingEdge":"incomingEdge"]);this.highlightBuilding(r?e:i),this.setCurveColor(f,p)}}addEdgePreview(){const e=LAe(this.state.getValue());for(const i of e){const r=this.map.get(i.fromNodeName),s=this.map.get(i.toNodeName);if(r&&s&&i.visible!==jl.none&&i.visible){const l=100*this.state.getValue().appSettings.edgeHeight,u=this.createCurve(r,s,l);this.previewMode(u,i.visible)}}}addEdgeMapBasedOnNodes(e){this.map=this.getNodesAsMap(e)}scale(){const{scaling:e}=this.state.getValue().appSettings;for(const i of this.arrows)i.scale.x=e.x,i.scale.y=e.y,i.scale.z=e.z}isEdgeApplicableForBuilding(e){return this.state.getValue().appSettings.isEdgeMetricVisible&&e&&!e.node.flat}showEdgesOfBuildings(e){const i=new Map,r=this.threeSceneService.getSelectedBuilding();if(r){const{node:s}=r;i.set(s.path,s)}if(e){const{node:s}=e;i.set(s.path,s)}i.size>0?this.buildPairingEdges(i):this.addEdgePreview()}buildPairingEdges(e){const{edges:i}=this.state.getValue().fileSettings;for(const r of i){const s=this.map.get(r.fromNodeName);if(void 0===s)continue;const l=this.map.get(r.toNodeName);void 0!==l&&(e.has(s.path)?(this.addArrow(l,s,!0),this.threeSceneService.highlightBuildings()):e.has(l.path)&&(this.addArrow(l,s,!1),this.threeSceneService.highlightBuildings()))}}createCurve(e,i,r){const s=e.outgoingEdgePoint.clone(),l=i.incomingEdgePoint.clone(),u=Math.max(s.y+i.height,l.y+1)+r;return s.setY(u),l.setY(u),new gz(e.outgoingEdgePoint,s,l,i.incomingEdgePoint)}highlightBuilding(e){const i=this.threeSceneService.getMapMesh().getMeshDescription().getBuildingByPath(e.path);this.threeSceneService.addBuildingToHighlightingList(i)}setCurveColor(e,i,r=50){const s=e.getPoints(r),l=this.buildLine(s,i);l.add(this.buildArrow(s)),this.threeSceneService.edgeArrows.add(l),this.arrows.push(l)}previewMode(e,i){if(i===jl.both||i===jl.from){const r=this.makeArrowFromBezier(e,!1);this.threeSceneService.edgeArrows.add(r),this.arrows.push(r)}if(i===jl.both||i===jl.to){const r=this.makeArrowFromBezier(e,!0);this.threeSceneService.edgeArrows.add(r),this.arrows.push(r)}}getNodesAsMap(e){const i=new Map;for(const r of e)i.set(r.path,r);return i}makeArrowFromBezier(e,i,r=50){const s=e.getPoints(r),{incomingEdge:l,outgoingEdge:u}=this.state.getValue().appSettings.mapColors,f=i?l:u,p=i?s.slice(r+1-this.VERTICES_PER_LINE):s.slice(0,s.length-(r+1-this.VERTICES_PER_LINE));return this.buildEdge(p,Dr.getNumber(f))}buildEdge(e,i){const r=this.buildLine(e,i);return r.add(this.buildArrow(e)),r}buildLine(e,i=0){const r=new Yi;r.setFromPoints(e);const s=new Ya({color:i,linewidth:1});return new ku(r,s)}buildArrow(e,i=0,r=10,s=10){const l=e.at(-1).clone().sub(e.at(-2).clone()).normalize(),u=e.at(-1).clone();return l.y<0&&(u.y+=r+1),new bre(l,u,r+1,i,r,s)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(Dd),o.KVO(PS))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var T2=function(){var n=0,t=document.createElement("div");function e(m){return t.appendChild(m.dom),m}function i(m){for(var _=0;_=s+1e3&&(u.update(1e3*l/(m-s),100),s=m,l=0,p)){var _=performance.memory;p.update(_.usedJSHeapSize/1048576,_.jsHeapSizeLimit/1048576)}return m},update:function(){r=this.end()},domElement:t,setMode:i}};T2.Panel=function(n,t,e){var i=1/0,r=0,s=Math.round,l=s(window.devicePixelRatio||1),u=80*l,f=48*l,p=3*l,m=2*l,_=3*l,b=15*l,w=74*l,F=30*l,D=document.createElement("canvas");D.width=u,D.height=f,D.style.cssText="width:80px;height:48px";var T=D.getContext("2d");return T.font="bold "+9*l+"px Helvetica,Arial,sans-serif",T.textBaseline="top",T.fillStyle=e,T.fillRect(0,0,u,f),T.fillStyle=t,T.fillText(n,p,m),T.fillRect(_,b,w,F),T.fillStyle=e,T.globalAlpha=.9,T.fillRect(_,b,w,F),{dom:D,update:function(I,O){i=Math.min(i,I),r=Math.max(r,I),T.fillStyle=e,T.globalAlpha=1,T.fillRect(0,0,u,b),T.fillStyle=t,T.fillText(s(I)+" "+n+" ("+s(i)+"-"+s(r)+")",p,m),T.drawImage(D,_+l,b,w-l,F,_,b,w-l,F),T.fillRect(_+w-l,b,l,F),T.fillStyle=e,T.globalAlpha=.9,T.fillRect(_+w-l,b,l,s((1-I/O)*F))}}};const I2=T2;let aX=(()=>{class n{constructor(e){this.threeRendererService=e,this.isDevelopmentMode=(0,o.naY)(),this.init=i=>{this.isDevelopmentMode&&(this.stats=new I2,this.stats.dom.style.position="absolute",this.stats.dom.style.left="0",this.stats.dom.style.top="0",i.append(this.stats.dom),this.generateStatPanels(),this.prevTime=this.getTimeFunctor().now())},this.getTimeFunctor=()=>typeof performance>"u"?Date:performance,this.generateStatPanels=()=>{this.trianglesPanel={panel:this.stats.addPanel(new I2.Panel("triangles","#ff8","#221")),maxHeight:0},this.glCallsPanel={panel:this.stats.addPanel(new I2.Panel("calls","#f8f","#212")),maxHeight:0},this.geometryMemoryPanel={panel:this.stats.addPanel(new I2.Panel("geo. mem","#f08","#221")),maxHeight:0},this.textureMemoryPanel={panel:this.stats.addPanel(new I2.Panel("tex. mem","#0f8","#221")),maxHeight:0},this.stats.showPanel(3)},this.updateStats=()=>{if(this.isDevelopmentMode){const i=this.getTimeFunctor().now();if(i>=this.prevTime+1e3){this.prevTime=i;const r=this.threeRendererService.getInfo(),s=this.threeRendererService.getMemoryInfo();this.processPanel(this.trianglesPanel,r.triangles),this.processPanel(this.glCallsPanel,r.calls),this.processPanel(this.geometryMemoryPanel,s.geometries),this.processPanel(this.textureMemoryPanel,s.textures)}this.stats.update()}},this.resetPanels=()=>{if(this.isDevelopmentMode)for(const i of[this.trianglesPanel,this.glCallsPanel,this.geometryMemoryPanel,this.textureMemoryPanel])void 0!==i&&(i.maxHeight=0)},this.processPanel=(i,r)=>{i.maxHeight=Math.max(i.maxHeight,r),i.panel.update(r,1.3*i.maxHeight)},this.destroy=()=>{this.isDevelopmentMode&&this.stats.dom.remove()}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(wr))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),lX=(()=>{class n{constructor(e){this.threeMapControlsService=e,this.eventEmitter=new jU,this.currentlyHovered=null,this.isDragging=!1}init(e,i,r){this.cubeGroup=e,this.camera=i,this.renderer=r,this.initOrbitalControl(i,r),this.initRendererEventListeners(r)}resetIsDragging(){this.isDragging=!1}initOrbitalControl(e,i){this.controls=new XU(e,i.domElement),this.controls.maxPolarAngle=Math.PI/2,this.controls.enableZoom=!1,this.controls.enablePan=!1,this.controls.rotateSpeed=1}initRendererEventListeners(e){e.domElement.addEventListener("mousemove",i=>this.onDocumentMouseMove(i)),e.domElement.addEventListener("mouseup",i=>this.onDocumentMouseUp(i)),e.domElement.addEventListener("mousedown",i=>this.onDocumentMouseClick(i,"mousedown")),e.domElement.addEventListener("dblclick",i=>this.onDocumentMouseClick(i,"dblclick")),e.domElement.addEventListener("mouseleave",i=>this.onWindowMouseLeave(i)),e.domElement.addEventListener("mouseenter",()=>this.onDocumentMouseEnter())}onDocumentMouseClick(e,i){this.isDragging=!0,this.checkMouseIntersection(e,i)}onWindowMouseLeave(e){(null==e.relatedTarget||!(e.relatedTarget instanceof HTMLCanvasElement))&&this.enableRotation(!1)}onDocumentMouseEnter(){this.enableRotation(!0)}enableRotation(e){this.controls.enableRotate=e}checkMouseIntersection(e,i){this.getCubeIntersectedByMouse(e)||this.eventEmitter.emit("viewCubeEventPropagation",{type:i,event:e})}getCubeIntersectedByMouse(e){const i=this.transformIntoCanvasVector(e),r=new Zz;r.setFromCamera(i,this.camera);const s=[];for(const u of oo(this.cubeGroup))Ro(u)&&s.push(u.data);const[l]=r.intersectObjects(s);return l?l.object:null}transformIntoCanvasVector(e){const{domElement:i}=this.renderer,r=this.renderer.getPixelRatio(),s=i.getBoundingClientRect();return new ft((e.clientX-s.left)/i.width*r*2-1,-(e.clientY-s.top)/i.height*r*2+1)}propagateMovement(){if(this.isDragging){const e=this.camera.position;this.threeMapControlsService.rotateCameraInVectorDirection(-e.x,-e.y,-e.z)}return this.isDragging}onDocumentMouseMove(e){if(this.propagateMovement())return;const i=this.getCubeIntersectedByMouse(e);i?this.currentlyHovered&&i.uuid!==this.currentlyHovered.uuid?this.triggerViewCubeUnhoverEvent():this.currentlyHovered||this.triggerViewCubeHoverEvent(i):(this.currentlyHovered&&this.triggerViewCubeUnhoverEvent(),this.eventEmitter.emit("viewCubeEventPropagation",{type:"mousemove",event:e}))}onDocumentMouseUp(e){this.isDragging=!1;const i=this.getCubeIntersectedByMouse(e);i?this.eventEmitter.emit("viewCubeClicked",{cube:i}):this.eventEmitter.emit("viewCubeEventPropagation",{type:"mouseup",event:e})}triggerViewCubeHoverEvent(e){this.currentlyHovered=e,F2.changeCursorIndicator(Zp.Pointer),this.eventEmitter.emit("viewCubeHoveredEvent",{cube:e})}triggerViewCubeUnhoverEvent(){this.currentlyHovered=null,F2.changeCursorIndicator(Zp.Default),this.eventEmitter.emit("viewCubeUnHoveredEvent")}subscribe(e,i){this.eventEmitter.on(e,r=>{i(r)})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Rd))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),cX=(()=>{class n{constructor(e,i,r,s,l){this.threeSceneService=e,this.threeCameraService=i,this.threeMapControlsService=r,this.threeRendererService=s,this.threeStatsService=l,this.onWindowResize=()=>{this.threeSceneService.scene.updateMatrixWorld(!1),this.threeRendererService.renderer.setSize(window.innerWidth,window.innerHeight),this.threeCameraService.camera.aspect=window.innerWidth/window.innerHeight,this.threeCameraService.camera.updateProjectionMatrix(),this.animate()},this.onFocusIn=u=>{"INPUT"===u.target.nodeName&&this.threeMapControlsService.controls.stopListenToKeyEvents()},this.onFocusOut=u=>{"INPUT"===u.target.nodeName&&this.threeMapControlsService.controls.listenToKeyEvents(window)}}init(e){this.threeCameraService.init(window.innerWidth,window.innerHeight);const i=this.threeCameraService.camera,r=this.threeSceneService.scene;i.lookAt(r.position),r.add(i),this.threeRendererService.init(window.innerWidth,window.innerHeight,r,i),this.threeStatsService.init(e),this.threeMapControlsService.init(this.threeRendererService.renderer.domElement),e.append(this.threeRendererService.renderer.domElement),window.addEventListener("resize",this.onWindowResize),window.addEventListener("focusin",this.onFocusIn),window.addEventListener("focusout",this.onFocusOut),this.animate(),this.animateStats()}restart(e){this.stopAnimate(),this.destroy(),this.init(e),this.autoFitTo(),this.animate(),this.animateStats()}enableRotation(e){this.threeMapControlsService.controls.enableRotate=e}animate(){this.threeMapControlsService.controls.update(),this.threeRendererService.render()}animateStats(){this.animationFrameId=requestAnimationFrame(()=>this.animateStats()),this.threeStatsService.updateStats()}getRenderCanvas(){return this.threeRendererService.renderer.domElement}getRenderLoseExtention(){return this.threeRendererService.renderer.getContext().getExtension("WEBGL_lose_context")}autoFitTo(){this.threeMapControlsService.autoFitTo()}stopAnimate(){cancelAnimationFrame(this.animationFrameId)}dispose(){this.threeRendererService?.composer?.dispose(),this.threeRendererService?.renderer?.dispose()}destroy(){window.removeEventListener("resize",this.onWindowResize),window.removeEventListener("focusin",this.onFocusIn),window.removeEventListener("focusout",this.onFocusOut),this.dispose(),this.threeStatsService.destroy(),this.getRenderCanvas().remove(),this.dispose()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Dd),o.KVO($h),o.KVO(Rd),o.KVO(wr),o.KVO(aX))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var KR=function(n){return n[n.LeftClick=0]="LeftClick",n[n.RightClick=2]="RightClick",n}(KR||{}),Zp=function(n){return n.Default="default",n.Grabbing="grabbing",n.Pointer="pointer",n.Moving="move",n}(Zp||{});let F2=(()=>{class n{constructor(e,i,r,s,l,u,f,p,m){this.threeCameraService=e,this.threeRendererService=i,this.threeSceneService=r,this.store=s,this.state=l,this.codeMapLabelService=u,this.viewCubeMouseEvents=f,this.threeViewerService=p,this.idToBuilding=m,this.THRESHOLD_FOR_MOUSE_MOVEMENT_TRACKING=3,this.mouse={x:0,y:0},this.oldMouse={x:0,y:0},this.mouseOnLastClick={x:0,y:0},this.isGrabbing=!1,this.isMoving=!1,this.raycaster=new Zz,this.labelHoveredBuilding=null,this.labelSelectedBuilding=null,this.subscriptions=[this.store.select(uc).pipe(ro(()=>this.onFilesSelectionChanged())).subscribe(),this.store.select(Ru).pipe(ro(_=>this.onBlacklistChanged(_))).subscribe(),this.store.select(md).pipe(ro(_=>{null!==_?this.hoverNode(_):this.unhoverNode(!1)})).subscribe()],this.onViewCubeEventPropagation=_=>{switch(_.type){case"mousemove":this.onDocumentMouseMove(_.event);break;case"mouseup":this.onDocumentMouseUp(_.event);break;case"mousedown":this.onDocumentMouseDown(_.event);break;case"dblclick":this.onDocumentDoubleClick()}},this.onDocumentMouseMove=_=>{this.mouse.x=_.clientX,this.mouse.y=_.clientY,this.updateHovering(),this.viewCubeMouseEvents.propagateMovement()}}ngOnDestroy(){for(const e of this.subscriptions)e.unsubscribe()}static changeCursorIndicator(e){document.body.style.cursor=e}start(){this.threeRendererService.renderer.domElement.addEventListener("mousemove",ef(this.onDocumentMouseMove,1)),this.threeRendererService.renderer.domElement.addEventListener("mouseup",e=>this.onDocumentMouseUp(e)),this.threeRendererService.renderer.domElement.addEventListener("mousedown",e=>this.onDocumentMouseDown(e)),this.threeRendererService.renderer.domElement.addEventListener("dblclick",()=>this.onDocumentDoubleClick()),this.threeRendererService.renderer.domElement.addEventListener("mouseleave",e=>this.onDocumentMouseLeave(e)),this.threeRendererService.renderer.domElement.addEventListener("mouseenter",()=>this.onDocumentMouseEnter()),this.threeRendererService.renderer.domElement.addEventListener("wheel",ef(()=>this.threeRendererService.render())),this.viewCubeMouseEvents.subscribe("viewCubeEventPropagation",this.onViewCubeEventPropagation)}hoverNode(e){if(this.isGrabbingOrMoving())return;const{buildings:i}=this.threeSceneService.getMapMesh().getMeshDescription();for(const r of i)if(r.node.id===e){this.hoverBuilding(r,!1);break}this.threeRendererService.render()}unhoverNode(e=!0){this.unhoverBuilding(e),this.threeRendererService.render()}onFilesSelectionChanged(){this.threeSceneService.clearSelection(),this.threeSceneService.clearConstantHighlight(),this.clearLabelHoveredBuilding()}onBlacklistChanged(e){const i=this.threeSceneService.getSelectedBuilding();this.clearLabelHoveredBuilding(),i&&function MN(n,t){return cu(n,t,"exclude")||cu(n,t,"flatten")}(i.node.path,e)&&this.threeSceneService.clearSelection(),this.unhoverBuilding()}updateHovering(){if(this.hasMouseMoved(this.oldMouse)){const e=this.threeSceneService.labels?.children;if(this.isGrabbingOrMoving())return this.threeSceneService.resetLabel(),this.clearLabelHoveredBuilding(),void this.threeRendererService.render();this.oldMouse.x=this.mouse.x,this.oldMouse.y=this.mouse.y;const i=this.threeSceneService.getMapMesh();if(i){this.threeCameraService.camera.updateMatrixWorld(!1);let r="";const s=this.transformHTMLToSceneCoordinates(),l=this.threeCameraService.camera;l.isPerspectiveCamera&&this.raycaster.setFromCamera(s,l);const u=this.calculateHoveredLabel(e);u&&(this.threeSceneService.animateLabel(u.object,this.raycaster,e),r=u.object.userData.node.path),this.intersectedBuilding=""!==r?i.getBuildingByPath(r):i.checkMouseRayMeshIntersection(s,l);const f=this.threeSceneService.getHighlightedBuilding(),p=this.intersectedBuilding;f?.id!==p?.id&&(this.clearLabelHoveredBuilding(),this.threeSceneService.resetLabel(),this.unhoverBuilding(),p&&!this.isGrabbingOrMoving()&&(this.setLabelHoveredLeaf(p,e),this.hoverBuilding(p)))}}}setLabelHoveredLeaf(e,i){if(e?.node?.isLeaf){const r=this.threeSceneService.getLabelForHoveredNode(e,i)??this.drawLabelHoveredBuilding(e);this.threeSceneService.animateLabel(r,this.raycaster,i)}}drawLabelHoveredBuilding(e){this.codeMapLabelService.addLeafLabel(e.node,0,!0);const r=this.threeSceneService.labels?.children,s=this.threeSceneService.getLabelForHoveredNode(e,r);return this.labelHoveredBuilding=e.node,s}drawLabelSelectedBuilding(e){if(this.clearLabelHoveredBuilding(),null!==this.labelSelectedBuilding&&this.codeMapLabelService.clearTemporaryLabel(this.labelSelectedBuilding),!e.node.isLeaf)return;this.codeMapLabelService.addLeafLabel(e.node,0,!0);const i=this.threeSceneService.labels?.children,r=this.threeSceneService.getLabelForHoveredNode(e,i);return this.threeSceneService.animateLabel(r,this.raycaster,i),this.labelSelectedBuilding=e.node,r}clearLabelHoveredBuilding(){null!==this.labelHoveredBuilding&&(this.codeMapLabelService.clearTemporaryLabel(this.labelHoveredBuilding),this.labelHoveredBuilding=null)}clearLabelSelectedBuilding(){null!==this.labelSelectedBuilding&&(this.codeMapLabelService.clearTemporaryLabel(this.labelSelectedBuilding),this.labelSelectedBuilding=null)}EnableOrbitalsRotation(e){this.threeViewerService.enableRotation(e),this.viewCubeMouseEvents.enableRotation(e)}onDocumentMouseEnter(){this.EnableOrbitalsRotation(!0)}onDocumentMouseLeave(e){e.relatedTarget instanceof HTMLCanvasElement||this.EnableOrbitalsRotation(!1)}onDocumentDoubleClick(){const e=this.threeSceneService.getHighlightedBuilding(),i=this.threeSceneService.getSelectedBuilding(),r=e?.node.link;if(r&&!this.hasMouseMoved(this.mouseOnLastClick)&&window.open(r,"_blank"),i?.node.isLeaf){const s=i.node.link;if(s)return void window.open(s,"_blank")}}onDocumentMouseDown(e){e.button===KR.RightClick&&(this.isMoving=!0,n.changeCursorIndicator(Zp.Moving)),e.button===KR.LeftClick&&(this.isGrabbing=!0,n.changeCursorIndicator(Zp.Grabbing)),this.mouseOnLastClick={x:e.clientX,y:e.clientY},document.activeElement.blur()}onDocumentMouseUp(e){this.viewCubeMouseEvents.resetIsDragging(),e.button===KR.LeftClick?this.onLeftClick():this.onRightClick(),n.changeCursorIndicator(void 0!==this.intersectedBuilding?Zp.Pointer:Zp.Default)}calculateHoveredLabel(e){let i=null;for(let r=0;r0&&(i=null===i?s[0]:i.distancethis.THRESHOLD_FOR_MOUSE_MOVEMENT_TRACKING||Math.abs(this.mouse.y-i)>this.THRESHOLD_FOR_MOUSE_MOVEMENT_TRACKING}hasMouseMoved({x:e,y:i}){return this.mouse.x!==e||this.mouse.y!==i}isGrabbingOrMoving(){return this.isGrabbing||this.isMoving}hoverBuilding(e,i=!0){n.changeCursorIndicator(Zp.Pointer);const s=jw(this.state.getValue()).get(e.node.id);for(const{data:l}of oo(s)){const u=this.idToBuilding.get(l.id);u&&this.threeSceneService.addBuildingToHighlightingList(u)}this.threeSceneService.highlightBuildings(),i&&this.store.dispatch(ux({value:e.node.id}))}transformHTMLToSceneCoordinates(){const{renderer:e,renderer:{domElement:i}}=this.threeRendererService,r=e.getPixelRatio(),s=i.getBoundingClientRect();return{x:this.mouse.x/i.width*r*2-1,y:-(this.mouse.y-s.top)/i.height*r*2+1}}unhoverBuilding(e=!0){this.isGrabbingOrMoving()||n.changeCursorIndicator(Zp.Default),this.threeSceneService.getConstantHighlight().size>0?this.threeSceneService.clearHoverHighlight():this.threeSceneService.clearHighlight(),e&&this.store.dispatch(ux({value:null}))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO($h),o.KVO(wr),o.KVO(Dd),o.KVO(Yt),o.KVO(Vi),o.KVO(oX),o.KVO(lX),o.KVO(cX),o.KVO(PS))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),dX=(()=>{class n{constructor(e,i,r,s,l,u,f){this.store=e,this.state=i,this.threeSceneService=r,this.codeMapLabelService=s,this.codeMapArrowService=l,this.threeStatsService=u,this.codeMapMouseEventService=f,this.nodesByColor={positive:[],neutral:[],negative:[]},this.onIsLoadingFileChanged=p=>{p?this.threeSceneService?.dispose():this.threeStatsService?.resetPanels()},this.subscription=this.store.select(k7).pipe(ro(this.onIsLoadingFileChanged)).subscribe()}ngOnDestroy(){this.subscription.unsubscribe()}render(e){const i=this.getNodes(e),r=this.sortVisibleNodesByHeightDescending(i);this.unflattenedNodes=r.filter(({flat:s})=>!s),this.setNewMapMesh(i,r),this.getNodesMatchingColorSelector(this.unflattenedNodes),this.setLabels(this.unflattenedNodes),this.setArrows(r)}setNewMapMesh(e,i){const r=this.state.getValue(),s=new CAe(i,r,dc(r.files));this.threeSceneService.setMapMesh(e,s)}scaleMap(){this.codeMapMouseEventService.unhoverNode(),this.codeMapLabelService.scale(),this.codeMapArrowService.scale(),this.threeSceneService.scaleHeight(),this.codeMapLabelService.clearLabels(),this.setLabels(this.unflattenedNodes)}getNodes(e){const i=this.state.getValue(),r=ka(i).nodeMetricData,{appSettings:{layoutAlgorithm:s},files:l}=i,u=dc(l);switch(s){case za.StreetMap:case za.TreeMapStreet:return Av.createStreetLayoutNodes(e,i,r,u);case za.SquarifiedTreeMap:return function loe(n,t,e,i){const r=U_(t.files),s=e.find(m=>m.name===t.dynamicSettings.heightMetric)?.maxValue*r,l=e.find(m=>m.name===t.dynamicSettings.areaMetric)?.maxValue*r,u=2*Is/s;if(HG(n)){const m=oo(n),_=[Za.buildRootFolderForFixedFolders(m.data,u,t,i)],b=2*Is+zG(m)*(t.dynamicSettings.margin/NG),w=b/_[0].width,F=b/_[0].length;return function coe(n,t,e){n.x0*=e,n.y0*=t,n.width*=e,n.length*=t}(_[0],w,F),[..._,...VG(m,t,w,F,0,0,u,s,l,i,r)]}const f=QG(n,t,r,l),p=[];for(const m of f.treeMap)p.push(Za.buildNodeFrom(m,u,s,t,i));return p}(e,i,r,u);default:return[]}}sortVisibleNodesByHeightDescending(e){return this.state.getValue().appSettings.experimentalFeaturesEnabled?(this.setMinBuildingLength(e),e.filter(r=>r.visible&&r.width>0).sort((r,s)=>s.height-r.height)):e.filter(r=>r.visible&&r.length>0&&r.width>0).sort((r,s)=>s.height-r.height)}setMinBuildingLength(e){for(const i of e)i.length<=0&&(i.length=2)}getNodesMatchingColorSelector(e){const i=this.state.getValue().dynamicSettings;this.nodesByColor={positive:[],negative:[],neutral:[]};for(const r of e)if(r.isLeaf){const s=r.attributes[i.colorMetric];"unary"===i.colorMetric?this.nodesByColor.positive.push(r):null!==s&&(sp.isLeaf).slice(0,l);this.setBuildingLabel(f,u)}}}setArrows(e){this.codeMapArrowService.clearArrows(),this.codeMapArrowService.addEdgeMapBasedOnNodes(e),this.codeMapArrowService.addEdgePreview()}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi),o.KVO(Dd),o.KVO(oX),o.KVO(UAe),o.KVO(aX),o.KVO(F2))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),R7=(()=>{class n{constructor(e,i){this.store=e,this.codeMapRenderService=i}createNodeObservable(){return d0([this.store.select(GW),this.store.select(u0),this.createTopLevelNodeObservable()]).pipe((0,qn.T)(([s,l,u])=>s??l??u))}createTopLevelNodeObservable(){return d0([this.store.select(Fd),this.store.select($c)]).pipe(hr(([e])=>!!e.unifiedMapNode),(0,qn.T)(([e])=>this.findTopLevelNode(e)))}findTopLevelNode(e){const i=this.codeMapRenderService.getNodes(e.unifiedMapNode),r=this.codeMapRenderService.sortVisibleNodesByHeightDescending(i);return r.reduce((s,l)=>s.attributes.unary>l.attributes.unary?s:l,r[0])}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(dX))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),uX=(()=>{class n{constructor(e,i){this.store=e,this.nodeSelectionService=i,this.attributeType="nodes",this.isNodeALeaf=r=>{if(r)return this.isNode(r)?r.isLeaf:Ro(r)}}ngOnInit(){this.isNodeALeaf$=this.nodeSelectionService.createNodeObservable().pipe((0,qn.T)(e=>this.isNodeALeaf(e))),this.attributeType$=this.store.select(((n,t)=>sn(qR,NU,(e,i)=>"relative"===i[n][e[t]]?"x\u0342":"\u03a3"))(this.attributeType,this.metricFor))}isNode(e){return"isLeaf"in e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(R7))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-chooser-type"]],inputs:{metricFor:"metricFor",attributeType:"attributeType"},standalone:!0,features:[o.aNF],decls:4,vars:6,consts:[[3,"hidden"]],template:function(i,r){1&i&&(o.j41(0,"span",0),o.nI1(1,"async"),o.EFF(2),o.nI1(3,"async"),o.k0s()),2&i&&(o.Y8G("hidden",o.bMT(1,2,r.isNodeALeaf$)),o.R7$(2),o.SpI(" ",o.bMT(3,4,r.attributeType$),"\n"))},dependencies:[zn],encapsulation:2})}}return n})();function QAe(n,t){if(1&n&&(o.j41(0,"cc-rounded-box",1),o.nI1(1,"async"),o.EFF(2),o.nI1(3,"async"),o.k0s()),2&n){let e;const i=o.XpG(),r=o.XpG();o.Y8G("backgroundColor",r.calculateBackgroundColor(i.deltas[o.bMT(1,2,r.primaryMetricNames$)[r.metricFor]])),o.R7$(2),o.SpI(" \u0394",null==(e=i.deltas[o.bMT(3,4,r.primaryMetricNames$)[r.metricFor]])?null:e.toLocaleString()," ")}}function zAe(n,t){if(1&n&&(o.j41(0,"cc-rounded-box"),o.nrm(1,"cc-metric-chooser-type",0),o.j41(2,"span"),o.EFF(3),o.nI1(4,"async"),o.k0s()(),o.DNE(5,QAe,4,6,"cc-rounded-box",1)),2&n){let e;const i=t,r=o.XpG();o.R7$(),o.Y8G("metricFor",r.metricFor),o.R7$(2),o.JRh(null==(e=i.attributes[o.bMT(4,3,r.primaryMetricNames$)[r.metricFor]])?null:e.toLocaleString()),o.R7$(2),o.vxM(i.deltas?5:-1)}}let GAe=(()=>{class n{constructor(e,i){this.nodeSelectionService=e,this.store=i,this.node$=this.nodeSelectionService.createNodeObservable(),this.primaryMetricNames$=this.store.select(qR)}calculateBackgroundColor(e){return"heightMetric"===this.metricFor&&e>0?"#b1d8a8":e<0?"#ffcccc":"#e6e6e6"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(R7),o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-chooser-value"]],inputs:{metricFor:"metricFor"},standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"metricFor"],[3,"backgroundColor"]],template:function(i,r){if(1&i&&(o.DNE(0,zAe,6,5),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.node$))?0:-1,s)}},dependencies:[ZW,uX,zn],styles:["[_nghost-%COMP%]{display:flex;gap:2px}"]})}}return n})(),YR=(()=>{class n{transform(e,i){if(null==e)return qw.get(i)??"";const r=e.title?`${e.title} (${i})`:`${i}`;let s=e.description?`\n${e.description}`:"";return s+=e.hintHighValue?`\nHigh Values: ${e.hintHighValue}`:"",s+=e.hintLowValue?`\nLow Values: ${e.hintLowValue}`:"",s.length>0?`${r}:${s}`:r}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"attributeDescriptorTooltip",type:n,pure:!0,standalone:!0})}}return n})(),jAe=(()=>{class n{transform(e,i){const r=i.toLocaleLowerCase();return e.filter(s=>{let l=s.name;return("complexity"===s.name||"sonar_complexity"===s.name)&&(l+=" (formerly mcc)"),l.toLocaleLowerCase().includes(r)})}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"filterMetricDataBySearchTerm",type:n,pure:!0,standalone:!0})}}return n})();const $Ae=["searchTermInput"],qAe=["matSelect"],WAe=["*"];function XAe(n,t){if(1&n&&o.nrm(0,"i"),2&n){const e=o.XpG(2);o.HbH("fa "+e.icon)}}function KAe(n,t){1&n&&o.EFF(0," (formerly mcc) ")}function YAe(n,t){1&n&&(o.j41(0,"span",11),o.EFF(1),o.k0s()),2&n&&(o.R7$(),o.SpI(" ",t," "))}function ZAe(n,t){if(1&n&&(o.j41(0,"mat-option",9),o.nI1(1,"attributeDescriptorTooltip"),o.EFF(2),o.DNE(3,KAe,1,0),o.j41(4,"span",10),o.EFF(5),o.k0s(),o.nrm(6,"br"),o.DNE(7,YAe,2,1,"span",11),o.k0s()),2&n){let e;const i=t.$implicit,r=o.XpG();o.Y8G("value",i.name)("title",o.i5U(1,6,r[i.name],i.name)),o.R7$(2),o.SpI(" ",i.name," "),o.R7$(),o.vxM("complexity"==i.name||"sonar_complexity"==i.name?3:-1),o.R7$(2),o.SpI("(",i.maxValue,")"),o.R7$(2),o.vxM((e=null==r[i.name]?null:r[i.name].description)?7:-1,e)}}function JAe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-select",3,0),o.bIt("selectionChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleMetricChanged(r.value))})("openedChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleOpenedChanged(r))}),o.j41(2,"mat-select-trigger"),o.DNE(3,XAe,1,2,"i",4),o.EFF(4),o.k0s(),o.j41(5,"mat-form-field",5),o.nrm(6,"i",6),o.j41(7,"input",7,1),o.mxI("ngModelChange",function(r){o.eBV(e);const s=o.XpG();return o.DH7(s.searchTerm,r)||(s.searchTerm=r),o.Njj(r)}),o.bIt("keydown",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleKeyDown(r))}),o.k0s()(),o.j41(9,"div",8),o.Z7z(10,ZAe,8,9,"mat-option",9,o.fX1),o.nI1(12,"async"),o.nI1(13,"filterMetricDataBySearchTerm"),o.k0s()()}if(2&n){const e=o.XpG();o.Y8G("value",e.selectedMetricName)("disabled",e.isDisabled),o.R7$(3),o.Y8G("ngIf",e.icon),o.R7$(),o.JRh(e.selectedMetricName),o.R7$(3),o.Y8G("placeholder",e.searchPlaceholder),o.R50("ngModel",e.searchTerm),o.R7$(3),o.Dyx(o.i5U(13,8,o.bMT(12,6,e.metricData$),e.searchTerm))}}function eme(n,t){if(1&n&&o.nrm(0,"cc-metric-chooser-value",12),2&n){const e=o.XpG(2);o.Y8G("metricFor",e.metricFor)}}function tme(n,t){1&n&&o.SdG(0)}function nme(n,t){if(1&n&&o.DNE(0,eme,1,1,"cc-metric-chooser-value",12)(1,tme,1,0),2&n){const e=o.XpG();o.vxM(e.metricFor?0:1)}}let D2=(()=>{class n{constructor(e){this.store=e,this.type="node",this.isDisabled=!1,this.searchTerm="",this.attributeDescriptors$=this.store.select($R),this.hideMetricSum=!1}ngOnInit(){this.metricData$=this.store.select(ka).pipe((0,qn.T)(e=>"node"===this.type?e.nodeMetricData:e.edgeMetricData))}ngAfterViewInit(){this.matOptions.changes.subscribe(e=>{this.setFirstItemActiveOnSearch(e)})}setFirstItemActiveOnSearch(e){const i=e.filter(l=>l._selected),r=e.filter(l=>l.value.toLowerCase().startsWith(this.searchTerm.toLowerCase())).sort((l,u)=>l.value.localeCompare(u.value)),s=this.searchTerm.trim().length>0;setTimeout(()=>{s&&0===i.length&&0===r.length?this.matSelect._keyManager.setActiveItem(0):s&&0===i.length&&r.length>0&&this.matSelect._keyManager.setActiveItem(r[0]);try{document.querySelector(".mdc-list-item--selected").scrollIntoView()}catch{}})}handleOpenedChanged(e){e?(this.searchTermInput.nativeElement.focus(),this.hideMetricSum=!0):(this.searchTerm="",this.hideMetricSum=!1)}handleKeyDown(e){const{key:i}=e;"ArrowDown"!==i&&"ArrowUp"!==i&&"Enter"!==i&&"Escape"!==i&&e.stopPropagation()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-chooser"]],viewQuery:function(i,r){if(1&i&&(o.GBs($Ae,5),o.GBs(qAe,5),o.GBs(yd,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.searchTermInput=s.first),o.mGM(s=o.lsd())&&(r.matSelect=s.first),o.mGM(s=o.lsd())&&(r.matOptions=s)}},hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("hide-metric-value",r.hideMetricSum)},inputs:{metricFor:"metricFor",icon:"icon",selectedMetricName:"selectedMetricName",searchPlaceholder:"searchPlaceholder",handleMetricChanged:"handleMetricChanged",type:"type",isDisabled:"isDisabled"},standalone:!0,features:[o.aNF],ngContentSelectors:WAe,decls:3,vars:4,consts:[["matSelect",""],["searchTermInput",""],["panelClass","cc-metric-chooser",3,"value","disabled"],["panelClass","cc-metric-chooser",3,"selectionChange","openedChange","value","disabled"],[3,"class",4,"ngIf"],[1,"cc-metric-chooser-search-field"],["matPrefix","",1,"fa","fa-search","search-icon"],["matInput","","type","text",3,"ngModelChange","keydown","placeholder","ngModel"],[1,"cc-metric-chooser-option-container"],[3,"value","title"],[1,"metric-max-value"],[1,"metric-subtitle"],[3,"metricFor"]],template:function(i,r){if(1&i&&(o.NAR(),o.DNE(0,JAe,14,11,"mat-select",2),o.nI1(1,"async"),o.DNE(2,nme,2,1)),2&i){let s;o.vxM((s=o.bMT(1,2,r.attributeDescriptors$))?0:-1,s),o.R7$(2),o.vxM(r.hideMetricSum?-1:2)}},dependencies:[e0,tq,Gn,Lu,Q$,t0,ZS,Xg,Jw,nx,yd,GAe,zn,YR,jAe],styles:["[_nghost-%COMP%]{display:flex;width:100%}[_nghost-%COMP%]:hover cc-metric-chooser-value[_ngcontent-%COMP%]{display:none}i.fa[_ngcontent-%COMP%]{padding-right:8px}cc-metric-chooser-value[_ngcontent-%COMP%]{position:absolute;top:10%;right:28px}.mat-mdc-select-placeholder[_ngcontent-%COMP%]{color:#000!important}"]})}}return n})(),ime=(()=>{class n{constructor(e){this.store=e,this.distributionMetric$=this.store.select(YW)}handleDistributionMetricChanged(e){this.store.dispatch(g2({value:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-distribution-metric-chooser"]],standalone:!0,features:[o.aNF],decls:3,vars:5,consts:[[1,"fa","fa-pie-chart"],[3,"selectedMetricName","searchPlaceholder","handleMetricChanged"]],template:function(i,r){1&i&&(o.nrm(0,"i",0)(1,"cc-metric-chooser",1),o.nI1(2,"async")),2&i&&(o.R7$(),o.Y8G("selectedMetricName",o.bMT(2,3,r.distributionMetric$))("searchPlaceholder","Distribution Metric (highest value)")("handleMetricChanged",r.handleDistributionMetricChanged))},dependencies:[D2,zn],styles:["[_nghost-%COMP%]{width:210px;display:flex;align-items:center;font-size:12px;gap:6px;margin-left:5px;margin-right:5px}"]})}}return n})();function rme(n,t){if(1&n){const e=o.RV6();o.j41(0,"span",7),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.toggleShowAbsoluteValues())}),o.j41(1,"div",8),o.bIt("mouseover",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.onHoverFileExtensionBar(r.fileExtension))})("mouseleave",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.onUnhoverFileExtensionBar())}),o.EFF(2),o.k0s()()}if(2&n){const e=t.$implicit,i=o.XpG();o.xc7("width",e.relativeMetricValue+"%")("background",e.color),o.R7$(),o.FS9("title",e.fileExtension.toString()+" "+(i.showAbsoluteValues?e.absoluteMetricValue.toFixed(0):e.relativeMetricValue.toFixed(2)+"%")),o.R7$(),o.Lme(" ",e.relativeMetricValue>=e.fileExtension.length/2+1?e.fileExtension:""," ",i.showAbsoluteValues?e.absoluteMetricValue.toLocaleString():e.relativeMetricValue.toFixed(2)+"%"," ")}}function ome(n,t){if(1&n&&(o.j41(0,"div",6),o.nrm(1,"span",9),o.EFF(2),o.j41(3,"span",10),o.EFF(4),o.k0s()()),2&n){const e=t.$implicit,i=o.XpG();o.R7$(),o.xc7("background",e.color),o.R7$(),o.SpI("",e.fileExtension," : "),o.R7$(2),o.SpI(" ",i.showAbsoluteValues?e.absoluteMetricValue.toLocaleString():e.relativeMetricValue.toFixed(2)+"%"," ")}}let sme=(()=>{class n{constructor(e,i){this.store=e,this.threeSceneService=i,this.showAbsoluteValues=!1,this.showDetails=!1,this.store.select(uAe).subscribe(r=>{this.metricDistribution=r})}onHoverFileExtensionBar(e){const i=new Set;for(const r of this.metricDistribution)"other"!==r.fileExtension&&i.add(r.fileExtension);for(const r of this.threeSceneService.getMapMesh().getMeshDescription().buildings)if(r.node.isLeaf){const s=KW.estimateFileExtension(r.node.name);(s===e||"other"===e&&!i.has(s))&&this.threeSceneService.addBuildingToHighlightingList(r)}this.threeSceneService.highlightBuildings()}onUnhoverFileExtensionBar(){this.threeSceneService.clearHighlight()}toggleShowDetails(){this.showDetails=!this.showDetails}toggleShowAbsoluteValues(){this.showAbsoluteValues=!this.showAbsoluteValues}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Dd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-file-extension-bar"]],standalone:!0,features:[o.aNF],decls:10,vars:5,consts:[[1,"cc-distribution"],["title","Distribution metric"],[1,"cc-bar"],[1,"cc-bar-section",3,"width","background"],[1,"cc-show-details-button",3,"click"],[1,"cc-distribution-details",3,"click"],[1,"cc-distribution-details-entry"],[1,"cc-bar-section",3,"click"],[1,"cc-bar-section-text",3,"mouseover","mouseleave","title"],[1,"cc-dot"],[1,"cc-detail-metric-value"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nrm(1,"cc-distribution-metric-chooser",1),o.j41(2,"div",2),o.Z7z(3,rme,3,7,"span",3,o.fX1),o.k0s(),o.j41(5,"button",4),o.bIt("click",function(){return r.toggleShowDetails()}),o.nrm(6,"i"),o.k0s()(),o.j41(7,"div",5),o.bIt("click",function(){return r.toggleShowAbsoluteValues()}),o.Z7z(8,ome,5,4,"div",6,o.fX1),o.k0s()),2&i&&(o.R7$(3),o.Dyx(r.metricDistribution),o.R7$(3),o.ZvI("fa ",r.showDetails?"fa-caret-up":"fa-caret-down",""),o.R7$(),o.AVh("cc-hidden",!r.showDetails),o.R7$(),o.Dyx(r.metricDistribution))},dependencies:[ime],styles:['#mat-select-2-panel[_ngcontent-%COMP%]{left:-24px;top:98px}[_nghost-%COMP%]{z-index:30;background-color:#fff}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%]{display:flex;height:17px}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%] .cc-bar[_ngcontent-%COMP%]{flex:1}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%] .cc-bar[_ngcontent-%COMP%] .cc-bar-section[_ngcontent-%COMP%]{height:100%;display:inline-block;overflow:hidden;color:#fff;text-align:center;cursor:pointer;outline:none}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%] .cc-bar[_ngcontent-%COMP%] .cc-bar-section[_ngcontent-%COMP%]:not(:last-child){border-right:1px solid white}[_nghost-%COMP%] .cc-distribution[_ngcontent-%COMP%] .cc-bar[_ngcontent-%COMP%] .cc-bar-section[_ngcontent-%COMP%] .cc-bar-section-text[_ngcontent-%COMP%]{font-size:10px;margin:2px 0;white-space:nowrap;padding:0 10px;text-overflow:""}[_nghost-%COMP%] .cc-show-details-button[_ngcontent-%COMP%]{line-height:10px;width:45px;margin:0;padding:0;background-color:#e6e6e6f5}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%]{border-top:1px solid #cdcdcd;height:25px;transition:all linear .2s}[_nghost-%COMP%] .cc-distribution-details.cc-hidden[_ngcontent-%COMP%]{height:0;border-top:0 solid #cdcdcd}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%]:hover{cursor:pointer}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%] .cc-distribution-details-entry[_ngcontent-%COMP%]{display:inline-block;font-size:15px;color:#000;margin:3px 0 3px 30px}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%] .cc-distribution-details-entry[_ngcontent-%COMP%] .cc-dot[_ngcontent-%COMP%]{height:10px;width:10px;border-radius:50%;display:inline-block;margin-right:8px}[_nghost-%COMP%] .cc-distribution-details[_ngcontent-%COMP%] .cc-distribution-details-entry[_ngcontent-%COMP%] .cc-detail-metric-value[_ngcontent-%COMP%]{color:gray}']})}}return n})();const hX=sn(ko,n=>n.isSearchPanelPinned),ame=["*"];let P7=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-ribbon-bar-panel-settings"]],standalone:!0,features:[o.aNF],ngContentSelectors:ame,decls:1,vars:0,template:function(i,r){1&i&&(o.NAR(),o.SdG(0))},styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;padding:6px;position:absolute;left:6px;top:45px;background:#fff;border:1px solid #b5b5b5;box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}"]})}}return n})();const lme=["toggle"],cme=["toggleHeader"],dme=[[["cc-ribbon-bar-panel-settings"]],[["",8,"toggleheader"]],"*"],ume=["cc-ribbon-bar-panel-settings",".toggleHeader","*"];function hme(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",6,0),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.toggleSettings())}),o.SdG(2,1),o.k0s()}}function fme(n,t){1&n&&(o.j41(0,"div",4),o.SdG(1,2),o.k0s())}function pme(n,t){if(1&n&&o.nrm(0,"i"),2&n){const e=o.XpG(2);o.HbH("fa fa-angle-"+(e.isExpanded?"up":"down"))}}function Ame(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",7,1),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.toggleSettings())}),o.EFF(2),o.DNE(3,pme,1,2,"i",8),o.k0s()}if(2&n){const e=o.XpG();o.R7$(2),o.SpI(" ",e.title," "),o.R7$(),o.vxM(e.hasSettings?3:-1)}}let O7=(()=>{class n{get hasSettings(){return!!this.settingsRef}constructor(e){this.viewReference=e,this.collapseOnPanelClick=!0,this.separator=!1,this.isExpanded=!1,this.isHeaderExpandable=!1,this.isPinned=!1,this.onToggleSettings=new o.bkB}ngOnInit(){this.mouseDownListener=e=>this.collapseOnOutsideClick(e),document.addEventListener("mousedown",this.mouseDownListener)}ngOnDestroy(){this.mouseDownListener&&document.removeEventListener("mousedown",this.mouseDownListener)}toggleSettings(){this.isExpanded=!this.isExpanded,this.onToggleSettings.emit(this.isExpanded)}collapseOnOutsideClick(e){if(this.isPinned)return;const i=e.target,r=document.querySelector(".cdk-overlay-container"),s=this.viewReference.element.nativeElement.contains(i),l=!!r&&r.contains(i),u=this.settingsRef?.nativeElement?.contains(i)??!1,f=this.toggleSettingsRef.nativeElement.contains(i),p=this.toggleHeaderRef?.nativeElement.contains(i)??!1;!l&&!u&&!f&&!p&&(!s||this.collapseOnPanelClick)&&(this.isExpanded=!1)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.c1b))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-ribbon-bar-panel"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,P7,5,o.aKT),2&i){let l;o.mGM(l=o.lsd())&&(r.settingsRef=l.first)}},viewQuery:function(i,r){if(1&i&&(o.GBs(lme,5),o.GBs(cme,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.toggleSettingsRef=s.first),o.mGM(s=o.lsd())&&(r.toggleHeaderRef=s.first)}},hostVars:6,hostBindings:function(i,r){2&i&&o.AVh("separator",r.separator)("expanded",r.isExpanded)("expandable",r.hasSettings)},inputs:{title:"title",collapseOnPanelClick:"collapseOnPanelClick",separator:"separator",isHeaderExpandable:"isHeaderExpandable",isPinned:"isPinned"},outputs:{onToggleSettings:"onToggleSettings"},standalone:!0,features:[o.aNF],ngContentSelectors:ume,decls:6,vars:2,consts:[["toggleHeader",""],["toggle",""],["appearance","outlined"],[1,"section"],[1,"section-header"],[1,"section-title"],[1,"section-header",3,"click"],[1,"section-title",3,"click"],[3,"class"]],template:function(i,r){1&i&&(o.NAR(dme),o.j41(0,"mat-card",2)(1,"div",3),o.DNE(2,hme,3,0,"div",4)(3,fme,2,0,"div",4)(4,Ame,4,2,"div",5),o.k0s(),o.SdG(5),o.k0s()),2&i&&(o.R7$(2),o.vxM(r.isHeaderExpandable?2:3),o.R7$(2),o.vxM(r.title||r.hasSettings?4:-1))},dependencies:[e2],styles:["mat-card[_ngcontent-%COMP%]{padding:0;height:46px;border-radius:0;border-top:1px solid #cdcdcd;flex:1 1 0}[_nghost-%COMP%]:not(.expanded) mat-card[_ngcontent-%COMP%]{overflow:hidden}.section[_ngcontent-%COMP%] .section-header[_ngcontent-%COMP%]{margin:0 5px;height:31px;color:#444;overflow:hidden;padding:5px}.section[_ngcontent-%COMP%] .section-title[_ngcontent-%COMP%]{font-size:8pt;color:gray;text-align:center;transition:background-color .4s;border-bottom:1px solid transparent;white-space:nowrap;margin:0 5px}.separator[_nghost-%COMP%] .section[_ngcontent-%COMP%] .section-title[_ngcontent-%COMP%]{border-top:1px solid rgba(0,0,0,.12)}.expandable[_nghost-%COMP%] .section[_ngcontent-%COMP%] .section-title[_ngcontent-%COMP%]:hover{background-color:#e0e0e0;cursor:pointer}"]})}}return n})();const N7=sn(zw,n=>""===n||"!"===n||","===n),ZR=n=>(n=n.trim()).startsWith("*")||n.endsWith("*")||n.startsWith("/")||n.startsWith("./")||n.startsWith('"')||n.endsWith('"')||n.startsWith("!")?n:`*${n}*`,fX=(n,t,e)=>{const i=e.trim().split(",");if(e.trim().startsWith("!")){i[0]=i[0].slice(1);for(const r of i){const s=`!${ZR(r)}`;if(n.some(l=>s===l.path&&t===l.type))return!0}return!1}for(const r of i)if(n.some(s=>ZR(r)===s.path&&t===s.type))return!0;return!1},mme=sn(zw,N7,Ru,(n,t,e)=>!!t||fX(e,"flatten",n)),gme=sn(zw,N7,Ru,(n,t,e)=>!!t||fX(e,"exclude",n)),_me=(n,t)=>{const e=[],i=t.split(",");if(i[0].startsWith("!")){i[0]=i[0].slice(1);for(const r of i)r.length>0&&e.push({path:`!${ZR(r)}`,type:n})}else for(let r of i)if(r.length>0){if(r.startsWith("!"))break;r=ZR(r),e.push({path:r,type:n})}return e},bme=(n,t,e)=>{const i=[...t,...e];for(const{file:r}of n)if(!vme(r,i))return!1;return!0},vme=(n,t)=>{for(const e of oo(n.map))if(yme(e,t))return!1;return!0},yme=(n,t)=>Ro(n)&&n.data.path&&!cu(n.data.path,t,"exclude");let pX=(()=>{class n{constructor(e,i,r){this.actions$=e,this.store=i,this.dialog=r,this.doBlacklistItemsResultInEmptyMap$=this.actions$.pipe(Jh(u6),ul(this.store.select(uc),this.store.select(Ru)),(0,qn.T)(([s,l,u])=>({items:s.items,resultsInEmptyMap:bme(l,u,s.items)})),lR()),this.showErrorDialogIfBlacklistItemsResultInEmptyMap$=os(()=>this.doBlacklistItemsResultInEmptyMap$.pipe(hr(s=>s.resultsInEmptyMap),ro(()=>{this.dialog.open(lu,{data:{title:"Blacklist Error",message:"Excluding all buildings is not possible."}})})),{dispatch:!1}),this.addBlacklistItems$=os(()=>this.doBlacklistItemsResultInEmptyMap$.pipe(hr(s=>!s.resultsInEmptyMap),(0,qn.T)(s=>ER({items:s.items}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Xp),o.KVO(Yt),o.KVO(Es))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),xme=(()=>{class n{constructor(e,i,r){this.actions$=e,this.store=i,this.addBlacklistItemsIfNotResultsInEmptyMapEffect=r,this.searchPattern2BlacklistItems$=this.actions$.pipe(Jh("BlacklistSearchPatternAction"),ul(this.store.select(zw)),(0,qn.T)(([s,l])=>({type:s.action.type,blacklistItems:_me(s.action.type,l)})),lR()),this.flattenSearchPattern$=os(()=>this.searchPattern2BlacklistItems$.pipe(hr(s=>"flatten"===s.type),ro(s=>{this.store.dispatch(ER({items:s.blacklistItems})),this.store.dispatch(o0({value:""}))})),{dispatch:!1}),this.excludeSearchPattern$=os(()=>this.searchPattern2BlacklistItems$.pipe(hr(s=>"exclude"===s.type),ro(()=>{this.addBlacklistItemsIfNotResultsInEmptyMapEffect.doBlacklistItemsResultInEmptyMap$.pipe(ms(1),hr(s=>!s.resultsInEmptyMap),ro(()=>{this.store.dispatch(o0({value:""}))})).subscribe()}),(0,qn.T)(s=>u6({items:s.blacklistItems}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Xp),o.KVO(Yt),o.KVO(pX))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),L7=(()=>{class n{constructor(){this._vertical=!1,this._inset=!1}get vertical(){return this._vertical}set vertical(e){this._vertical=gi(e)}get inset(){return this._inset}set inset(e){this._inset=gi(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(i,r){2&i&&(o.BMQ("aria-orientation",r.vertical?"vertical":"horizontal"),o.AVh("mat-divider-vertical",r.vertical)("mat-divider-horizontal",!r.vertical)("mat-divider-inset",r.inset))},inputs:{vertical:"vertical",inset:"inset"},standalone:!0,features:[o.aNF],decls:0,vars:0,template:function(i,r){},styles:[".mat-divider{display:block;margin:0;border-top-style:solid;border-top-color:var(--mat-divider-color, var(--mat-app-outline));border-top-width:var(--mat-divider-width)}.mat-divider.mat-divider-vertical{border-top:0;border-right-style:solid;border-right-color:var(--mat-divider-color, var(--mat-app-outline));border-right-width:var(--mat-divider-width)}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}"],encapsulation:2,changeDetection:0})}}return n})();function Cme(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",12),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.resetSearchPattern())}),o.nrm(1,"i",13),o.k0s()}}let Mme=(()=>{class n{constructor(e){this.store=e,this.searchPattern$=this.store.select(zw),this.isSearchPatternEmpty$=this.store.select(N7),this.isFlattenPatternDisabled$=this.store.select(mme),this.isExcludePatternDisabled$=this.store.select(gme),this.setSearchPatternDebounced=ef(i=>this.setSearchPattern(i),400)}setSearchPattern(e){this.store.dispatch(o0({value:e.target.value}))}resetSearchPattern(){this.store.dispatch(o0({value:""}))}blacklistSearchPattern(e){this.store.dispatch((n=>({type:"BlacklistSearchPatternAction",action:{type:n}}))(e))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-search-bar"]],standalone:!0,features:[o.aNF],decls:21,vars:13,consts:[["menu","matMenu"],[1,"fa","fa-search","cc-search-icon"],[1,"cc-search-input"],["type","text","placeholder","Search: *.js, **/app/*",3,"input","value"],["data-testid","search-bar-clear-button",1,"cc-small-action-button","cc-clear-icon"],["title","Add to Blacklist",1,"cc-small-action-button",3,"matMenuTriggerFor"],[1,"fa","fa-ellipsis-h"],["mat-menu-item","","disabled",""],["mat-menu-item","","data-testid","search-bar-flatten-button",3,"click","disabled"],[1,"fa","fa-eye-slash"],["mat-menu-item","","data-testid","search-bar-exclude-button",3,"click","disabled"],[1,"fa","fa-ban"],["data-testid","search-bar-clear-button",1,"cc-small-action-button","cc-clear-icon",3,"click"],[1,"fa","fa-times"]],template:function(i,r){if(1&i){const s=o.RV6();o.nrm(0,"i",1),o.j41(1,"div",2)(2,"input",3),o.nI1(3,"async"),o.bIt("input",function(u){return o.eBV(s),o.Njj(r.setSearchPatternDebounced(u))}),o.k0s(),o.DNE(4,Cme,2,0,"button",4),o.nI1(5,"async"),o.k0s(),o.j41(6,"button",5),o.nrm(7,"i",6),o.k0s(),o.j41(8,"mat-menu",null,0)(10,"button",7),o.EFF(11,"Add Pattern to Blacklist"),o.k0s(),o.nrm(12,"mat-divider"),o.j41(13,"button",8),o.nI1(14,"async"),o.bIt("click",function(){return o.eBV(s),o.Njj(r.blacklistSearchPattern("flatten"))}),o.nrm(15,"i",9),o.EFF(16," Flatten "),o.k0s(),o.j41(17,"button",10),o.nI1(18,"async"),o.bIt("click",function(){return o.eBV(s),o.Njj(r.blacklistSearchPattern("exclude"))}),o.nrm(19,"i",11),o.EFF(20," Exclude "),o.k0s()()}if(2&i){const s=o.sdS(9);o.R7$(2),o.Y8G("value",o.bMT(3,5,r.searchPattern$)),o.R7$(2),o.vxM(o.bMT(5,7,r.isSearchPatternEmpty$)?-1:4),o.R7$(2),o.Y8G("matMenuTriggerFor",s),o.R7$(7),o.Y8G("disabled",o.bMT(14,9,r.isFlattenPatternDisabled$)),o.R7$(4),o.Y8G("disabled",o.bMT(18,11,r.isExcludePatternDisabled$))}},dependencies:[rx,Yh,fR,L7,zn],styles:["[_nghost-%COMP%]{display:inline-block;text-wrap:nowrap}[_nghost-%COMP%] .cc-search-icon[_ngcontent-%COMP%]{margin-right:8px;min-width:16px}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%]{display:inline-block;position:relative}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:204px;border-width:0 0 1px;border-color:#d3d3d3;outline:0;font-size:11pt;height:24px}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{border-color:#0374c9;box-shadow:0 1px #0374c9}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{vertical-align:middle;display:inline-block;position:relative;height:30px}[_nghost-%COMP%] .cc-search-input[_ngcontent-%COMP%] .cc-clear-icon[_ngcontent-%COMP%]{position:absolute;right:0;margin:0;height:24px;width:24px;display:flex;justify-content:center;align-items:center;top:0}[_nghost-%COMP%] button[_ngcontent-%COMP%]{background-color:transparent;box-shadow:none;margin-top:2px;font-size:14px}[_nghost-%COMP%] button.cc-small-action-button[_ngcontent-%COMP%]{margin:0 5px;display:inline-block;height:24px;width:24px;vertical-align:top}[_nghost-%COMP%] button[_ngcontent-%COMP%]:hover{background-color:#d3d3d3;border-radius:50%}"]})}}return n})();const Eme=sn(Ru,n=>0===n.length),Sme=["button"],Tme=["*"];function Ime(n,t){if(1&n&&o.nrm(0,"mat-pseudo-checkbox",3),2&n){const e=o.XpG();o.Y8G("disabled",e.disabled)}}function Fme(n,t){if(1&n&&o.nrm(0,"mat-pseudo-checkbox",3),2&n){const e=o.XpG();o.Y8G("disabled",e.disabled)}}const AX=new o.nKC("MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS",{providedIn:"root",factory:function Dme(){return{hideSingleSelectionIndicator:!1,hideMultipleSelectionIndicator:!1,disabledInteractive:!1}}}),mX=new o.nKC("MatButtonToggleGroup"),Bme={provide:Aa,useExisting:(0,o.Rfq)(()=>U7),multi:!0};let gX=0;class _X{constructor(t,e){this.source=t,this.value=e}}let U7=(()=>{class n{get name(){return this._name}set name(e){this._name=e,this._markButtonsForCheck()}get value(){const e=this._selectionModel?this._selectionModel.selected:[];return this.multiple?e.map(i=>i.value):e[0]?e[0].value:void 0}set value(e){this._setSelectionByValue(e),this.valueChange.emit(this.value)}get selected(){const e=this._selectionModel?this._selectionModel.selected:[];return this.multiple?e:e[0]||null}get multiple(){return this._multiple}set multiple(e){this._multiple=e,this._markButtonsForCheck()}get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._markButtonsForCheck()}get disabledInteractive(){return this._disabledInteractive}set disabledInteractive(e){this._disabledInteractive=e,this._markButtonsForCheck()}get dir(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._markButtonsForCheck()}get hideMultipleSelectionIndicator(){return this._hideMultipleSelectionIndicator}set hideMultipleSelectionIndicator(e){this._hideMultipleSelectionIndicator=e,this._markButtonsForCheck()}constructor(e,i,r){this._changeDetector=e,this._dir=r,this._multiple=!1,this._disabled=!1,this._disabledInteractive=!1,this._controlValueAccessorChangeFn=()=>{},this._onTouched=()=>{},this._name="mat-button-toggle-group-"+gX++,this.valueChange=new o.bkB,this.change=new o.bkB,this.appearance=i&&i.appearance?i.appearance:"standard",this.hideSingleSelectionIndicator=i?.hideSingleSelectionIndicator??!1,this.hideMultipleSelectionIndicator=i?.hideMultipleSelectionIndicator??!1}ngOnInit(){this._selectionModel=new dR(this.multiple,void 0,!1)}ngAfterContentInit(){this._selectionModel.select(...this._buttonToggles.filter(e=>e.checked)),this.multiple||this._initializeTabIndex()}writeValue(e){this.value=e,this._changeDetector.markForCheck()}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}_keydown(e){if(this.multiple||this.disabled)return;const r=e.target.id,s=this._buttonToggles.toArray().findIndex(u=>u.buttonId===r);let l=null;switch(e.keyCode){case 32:case 13:l=this._buttonToggles.get(s)||null;break;case 38:l=this._getNextButton(s,-1);break;case 37:l=this._getNextButton(s,"ltr"===this.dir?-1:1);break;case 40:l=this._getNextButton(s,1);break;case 39:l=this._getNextButton(s,"ltr"===this.dir?1:-1);break;default:return}l&&(e.preventDefault(),l._onButtonClick(),l.focus())}_emitChangeEvent(e){const i=new _X(e,this.value);this._rawValue=i.value,this._controlValueAccessorChangeFn(i.value),this.change.emit(i)}_syncButtonToggle(e,i,r=!1,s=!1){!this.multiple&&this.selected&&!e.checked&&(this.selected.checked=!1),this._selectionModel?i?this._selectionModel.select(e):this._selectionModel.deselect(e):s=!0,s?Promise.resolve().then(()=>this._updateModelValue(e,r)):this._updateModelValue(e,r)}_isSelected(e){return this._selectionModel&&this._selectionModel.isSelected(e)}_isPrechecked(e){return!(typeof this._rawValue>"u")&&(this.multiple&&Array.isArray(this._rawValue)?this._rawValue.some(i=>null!=e.value&&i===e.value):e.value===this._rawValue)}_initializeTabIndex(){if(this._buttonToggles.forEach(e=>{e.tabIndex=-1}),this.selected)this.selected.tabIndex=0;else for(let e=0;ethis._selectValue(i))):(this._clearSelection(),this._selectValue(e)))}_clearSelection(){this._selectionModel.clear(),this._buttonToggles.forEach(e=>{e.checked=!1,this.multiple||(e.tabIndex=-1)})}_selectValue(e){const i=this._buttonToggles.find(r=>null!=r.value&&r.value===e);i&&(i.checked=!0,this._selectionModel.select(i),this.multiple||(i.tabIndex=0))}_updateModelValue(e,i){i&&this._emitChangeEvent(e),this.valueChange.emit(this.value)}_markButtonsForCheck(){this._buttonToggles?.forEach(e=>e._markForCheck())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc),o.rXU(AX,8),o.rXU(Ks,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-button-toggle-group"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,JR,5),2&i){let l;o.mGM(l=o.lsd())&&(r._buttonToggles=l)}},hostAttrs:[1,"mat-button-toggle-group"],hostVars:6,hostBindings:function(i,r){1&i&&o.bIt("keydown",function(l){return r._keydown(l)}),2&i&&(o.BMQ("role",r.multiple?"group":"radiogroup")("aria-disabled",r.disabled),o.AVh("mat-button-toggle-vertical",r.vertical)("mat-button-toggle-group-appearance-standard","standard"===r.appearance))},inputs:{appearance:"appearance",name:"name",vertical:[2,"vertical","vertical",o.L39],value:"value",multiple:[2,"multiple","multiple",o.L39],disabled:[2,"disabled","disabled",o.L39],disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",o.L39],hideMultipleSelectionIndicator:[2,"hideMultipleSelectionIndicator","hideMultipleSelectionIndicator",o.L39]},outputs:{valueChange:"valueChange",change:"change"},exportAs:["matButtonToggleGroup"],standalone:!0,features:[o.Jv_([Bme,{provide:mX,useExisting:n}]),o.GFd]})}}return n})(),JR=(()=>{class n{get buttonId(){return`${this.id}-button`}get tabIndex(){return this._tabIndex}set tabIndex(e){this._tabIndex=e,this._markForCheck()}get appearance(){return this.buttonToggleGroup?this.buttonToggleGroup.appearance:this._appearance}set appearance(e){this._appearance=e}get checked(){return this.buttonToggleGroup?this.buttonToggleGroup._isSelected(this):this._checked}set checked(e){e!==this._checked&&(this._checked=e,this.buttonToggleGroup&&this.buttonToggleGroup._syncButtonToggle(this,this._checked),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled||this.buttonToggleGroup&&this.buttonToggleGroup.disabled}set disabled(e){this._disabled=e}get disabledInteractive(){return this._disabledInteractive||null!==this.buttonToggleGroup&&this.buttonToggleGroup.disabledInteractive}set disabledInteractive(e){this._disabledInteractive=e}constructor(e,i,r,s,l,u){this._changeDetectorRef=i,this._elementRef=r,this._focusMonitor=s,this._checked=!1,this.ariaLabelledby=null,this._disabled=!1,this.change=new o.bkB;const f=Number(l);this.tabIndex=f||0===f?f:null,this.buttonToggleGroup=e,this.appearance=u&&u.appearance?u.appearance:"standard",this.disabledInteractive=u?.disabledInteractive??!1}ngOnInit(){const e=this.buttonToggleGroup;this.id=this.id||"mat-button-toggle-"+gX++,e&&(e._isPrechecked(this)?this.checked=!0:e._isSelected(this)!==this._checked&&e._syncButtonToggle(this,this._checked))}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){const e=this.buttonToggleGroup;this._focusMonitor.stopMonitoring(this._elementRef),e&&e._isSelected(this)&&e._syncButtonToggle(this,!1,!1,!0)}focus(e){this._buttonElement.nativeElement.focus(e)}_onButtonClick(){if(this.disabled)return;const e=!!this.isSingleSelector()||!this._checked;if(e!==this._checked&&(this._checked=e,this.buttonToggleGroup&&(this.buttonToggleGroup._syncButtonToggle(this,this._checked,!0),this.buttonToggleGroup._onTouched())),this.isSingleSelector()){const i=this.buttonToggleGroup._buttonToggles.find(r=>0===r.tabIndex);i&&(i.tabIndex=-1),this.tabIndex=0}this.change.emit(new _X(this,this.value))}_markForCheck(){this._changeDetectorRef.markForCheck()}_getButtonName(){return this.isSingleSelector()?this.buttonToggleGroup.name:this.name||null}isSingleSelector(){return this.buttonToggleGroup&&!this.buttonToggleGroup.multiple}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(mX,8),o.rXU(o.gRc),o.rXU(o.aKT),o.rXU(Yl),o.kS0("tabindex"),o.rXU(AX,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-button-toggle"]],viewQuery:function(i,r){if(1&i&&o.GBs(Sme,5),2&i){let s;o.mGM(s=o.lsd())&&(r._buttonElement=s.first)}},hostAttrs:["role","presentation",1,"mat-button-toggle"],hostVars:14,hostBindings:function(i,r){1&i&&o.bIt("focus",function(){return r.focus()}),2&i&&(o.BMQ("aria-label",null)("aria-labelledby",null)("id",r.id)("name",null),o.AVh("mat-button-toggle-standalone",!r.buttonToggleGroup)("mat-button-toggle-checked",r.checked)("mat-button-toggle-disabled",r.disabled)("mat-button-toggle-disabled-interactive",r.disabledInteractive)("mat-button-toggle-appearance-standard","standard"===r.appearance))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],id:"id",name:"name",value:"value",tabIndex:"tabIndex",disableRipple:[2,"disableRipple","disableRipple",o.L39],appearance:"appearance",checked:[2,"checked","checked",o.L39],disabled:[2,"disabled","disabled",o.L39],disabledInteractive:[2,"disabledInteractive","disabledInteractive",o.L39]},outputs:{change:"change"},exportAs:["matButtonToggle"],standalone:!0,features:[o.GFd,o.aNF],ngContentSelectors:Tme,decls:8,vars:14,consts:[["button",""],["type","button",1,"mat-button-toggle-button","mat-focus-indicator",3,"click","id","disabled"],[1,"mat-button-toggle-label-content"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"mat-button-toggle-focus-overlay"],["matRipple","",1,"mat-button-toggle-ripple",3,"matRippleTrigger","matRippleDisabled"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(),o.j41(0,"button",1,0),o.bIt("click",function(){return o.eBV(s),o.Njj(r._onButtonClick())}),o.j41(2,"span",2),o.DNE(3,Ime,1,1,"mat-pseudo-checkbox",3)(4,Fme,1,1,"mat-pseudo-checkbox",3),o.SdG(5),o.k0s()(),o.nrm(6,"span",4)(7,"span",5)}if(2&i){const s=o.sdS(1);o.Y8G("id",r.buttonId)("disabled",r.disabled&&!r.disabledInteractive||null),o.BMQ("role",r.isSingleSelector()?"radio":"button")("tabindex",r.disabled&&!r.disabledInteractive?-1:r.tabIndex)("aria-pressed",r.isSingleSelector()?null:r.checked)("aria-checked",r.isSingleSelector()?r.checked:null)("name",r._getButtonName())("aria-label",r.ariaLabel)("aria-labelledby",r.ariaLabelledby)("aria-disabled",r.disabled&&r.disabledInteractive?"true":null),o.R7$(3),o.vxM(r.buttonToggleGroup&&r.checked&&!r.buttonToggleGroup.multiple&&!r.buttonToggleGroup.hideSingleSelectionIndicator?3:-1),o.R7$(),o.vxM(r.buttonToggleGroup&&r.checked&&r.buttonToggleGroup.multiple&&!r.buttonToggleGroup.hideMultipleSelectionIndicator?4:-1),o.R7$(3),o.Y8G("matRippleTrigger",s)("matRippleDisabled",r.disableRipple||r.disabled)}},dependencies:[ml,vI],styles:[".mat-button-toggle-standalone,.mat-button-toggle-group{position:relative;display:inline-flex;flex-direction:row;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);transform:translateZ(0);border-radius:var(--mat-legacy-button-toggle-shape)}.mat-button-toggle-standalone:not([class*=mat-elevation-z]),.mat-button-toggle-group:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}.cdk-high-contrast-active .mat-button-toggle-standalone,.cdk-high-contrast-active .mat-button-toggle-group{outline:solid 1px}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full));border:solid 1px var(--mat-standard-button-toggle-divider-color, var(--mat-app-outline))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard .mat-pseudo-checkbox,.mat-button-toggle-group-appearance-standard .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-standard-button-toggle-selected-state-text-color, var(--mat-app-on-secondary-container))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard:not([class*=mat-elevation-z]),.mat-button-toggle-group-appearance-standard:not([class*=mat-elevation-z]){box-shadow:none}.cdk-high-contrast-active .mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.cdk-high-contrast-active .mat-button-toggle-group-appearance-standard{outline:0}.mat-button-toggle-vertical{flex-direction:column}.mat-button-toggle-vertical .mat-button-toggle-label-content{display:block}.mat-button-toggle{white-space:nowrap;position:relative;color:var(--mat-legacy-button-toggle-text-color);font-family:var(--mat-legacy-button-toggle-label-text-font);font-size:var(--mat-legacy-button-toggle-label-text-size);line-height:var(--mat-legacy-button-toggle-label-text-line-height);font-weight:var(--mat-legacy-button-toggle-label-text-weight);letter-spacing:var(--mat-legacy-button-toggle-label-text-tracking);--mat-minimal-pseudo-checkbox-selected-checkmark-color: var(--mat-legacy-button-toggle-selected-state-text-color)}.mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-legacy-button-toggle-focus-state-layer-opacity)}.mat-button-toggle .mat-icon svg{vertical-align:top}.mat-button-toggle .mat-pseudo-checkbox{margin-right:12px}[dir=rtl] .mat-button-toggle .mat-pseudo-checkbox{margin-right:0;margin-left:12px}.mat-button-toggle-checked{color:var(--mat-legacy-button-toggle-selected-state-text-color);background-color:var(--mat-legacy-button-toggle-selected-state-background-color)}.mat-button-toggle-disabled{pointer-events:none;color:var(--mat-legacy-button-toggle-disabled-state-text-color);background-color:var(--mat-legacy-button-toggle-disabled-state-background-color);--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: var(--mat-legacy-button-toggle-disabled-state-text-color)}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:var(--mat-legacy-button-toggle-disabled-selected-state-background-color)}.mat-button-toggle-disabled-interactive{pointer-events:auto}.mat-button-toggle-appearance-standard{color:var(--mat-standard-button-toggle-text-color, var(--mat-app-on-surface));background-color:var(--mat-standard-button-toggle-background-color);font-family:var(--mat-standard-button-toggle-label-text-font, var(--mat-app-label-large-font));font-size:var(--mat-standard-button-toggle-label-text-size, var(--mat-app-label-large-size));line-height:var(--mat-standard-button-toggle-label-text-line-height, var(--mat-app-label-large-line-height));font-weight:var(--mat-standard-button-toggle-label-text-weight, var(--mat-app-label-large-weight));letter-spacing:var(--mat-standard-button-toggle-label-text-tracking, var(--mat-app-label-large-tracking))}.mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:solid 1px var(--mat-standard-button-toggle-divider-color, var(--mat-app-outline))}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:solid 1px var(--mat-standard-button-toggle-divider-color, var(--mat-app-outline))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:none;border-top:solid 1px var(--mat-standard-button-toggle-divider-color, var(--mat-app-outline))}.mat-button-toggle-appearance-standard.mat-button-toggle-checked{color:var(--mat-standard-button-toggle-selected-state-text-color, var(--mat-app-on-secondary-container));background-color:var(--mat-standard-button-toggle-selected-state-background-color, var(--mat-app-secondary-container))}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled{color:var(--mat-standard-button-toggle-disabled-state-text-color);background-color:var(--mat-standard-button-toggle-disabled-state-background-color)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: var(--mat-standard-button-toggle-disabled-selected-state-text-color)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled.mat-button-toggle-checked{color:var(--mat-standard-button-toggle-disabled-selected-state-text-color);background-color:var(--mat-standard-button-toggle-disabled-selected-state-background-color)}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:var(--mat-standard-button-toggle-state-layer-color, var(--mat-app-on-surface))}.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{opacity:var(--mat-standard-button-toggle-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-button-toggle-appearance-standard.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-standard-button-toggle-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}@media(hover: none){.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{display:none}}.mat-button-toggle-label-content{-webkit-user-select:none;user-select:none;display:inline-block;padding:0 16px;line-height:var(--mat-legacy-button-toggle-height);position:relative}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{padding:0 12px;line-height:var(--mat-standard-button-toggle-height)}.mat-button-toggle-label-content>*{vertical-align:middle}.mat-button-toggle-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;pointer-events:none;opacity:0;background-color:var(--mat-legacy-button-toggle-state-layer-color)}.cdk-high-contrast-active .mat-button-toggle-checked .mat-button-toggle-focus-overlay{border-bottom:solid 500px;opacity:.5;height:0}.cdk-high-contrast-active .mat-button-toggle-checked:hover .mat-button-toggle-focus-overlay{opacity:.6}.cdk-high-contrast-active .mat-button-toggle-checked.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{border-bottom:solid 500px}.mat-button-toggle .mat-button-toggle-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-toggle-button{border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;outline:none;width:100%;cursor:pointer}.mat-button-toggle-disabled .mat-button-toggle-button{cursor:default}.mat-button-toggle-button::-moz-focus-inner{border:0}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard{--mat-focus-indicator-border-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full))}.mat-button-toggle-group-appearance-standard .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full));border-bottom-right-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full))}.mat-button-toggle-group-appearance-standard .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-left-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full));border-bottom-left-radius:var(--mat-standard-button-toggle-shape, var(--mat-app-corner-full))}"],encapsulation:2,changeDetection:0})}}return n})(),kme=(()=>{class n{constructor(e){this.hideBlacklistItemsIndicator$=e.select(Eme)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-search-panel-mode-selector"]],inputs:{searchPanelMode:"searchPanelMode",updateSearchPanelMode:"updateSearchPanelMode"},standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[["id","blacklist","value","blacklist",3,"click"],[1,"fa","fa-eye-slash"],[1,"has-blacklist-items-indicator",3,"hidden"]],template:function(i,r){1&i&&(o.j41(0,"mat-button-toggle",0),o.bIt("click",function(){return r.updateSearchPanelMode("blacklist")}),o.nrm(1,"i",1)(2,"div",2),o.nI1(3,"async"),o.k0s()),2&i&&(o.R7$(2),o.Y8G("hidden",o.bMT(3,1,r.hideBlacklistItemsIndicator$)))},dependencies:[JR,zn],styles:["[_nghost-%COMP%] mat-button-toggle[_ngcontent-%COMP%]{height:100%;align-items:center}[_nghost-%COMP%] .has-blacklist-items-indicator[_ngcontent-%COMP%]{position:absolute;margin-left:18px;margin-top:-32px;border-radius:50%;background-color:red;width:5px;height:5px}[_nghost-%COMP%] .mat-button-toggle-checked[_ngcontent-%COMP%] .mat-pseudo-checkbox[_ngcontent-%COMP%]{display:none}"]})}}return n})();const bX=n=>sn(Ru,t=>Rme(n,t)),Rme=(n,t)=>{const e=t.filter(i=>i.type===n);return e.sort((i,r)=>i.path.localeCompare(r.path)),e};let Ome=(()=>{class n{create(e){return typeof MutationObserver>"u"?null:new MutationObserver(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),Nme=(()=>{class n{constructor(e){this._mutationObserverFactory=e,this._observedElements=new Map,this._ngZone=(0,o.WQX)(o.SKi)}ngOnDestroy(){this._observedElements.forEach((e,i)=>this._cleanupObserver(i))}observe(e){const i=Mi(e);return new qr.c(r=>{const l=this._observeElement(i).pipe((0,qn.T)(u=>u.filter(f=>!function Pme(n){if("characterData"===n.type&&n.target instanceof Comment)return!0;if("childList"===n.type){for(let t=0;t!!u.length)).subscribe(u=>{this._ngZone.run(()=>{r.next(u)})});return()=>{l.unsubscribe(),this._unobserveElement(i)}})}_observeElement(e){return this._ngZone.runOutsideAngular(()=>{if(this._observedElements.has(e))this._observedElements.get(e).count++;else{const i=new mi.B,r=this._mutationObserverFactory.create(s=>i.next(s));r&&r.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:r,stream:i,count:1})}return this._observedElements.get(e).stream})}_unobserveElement(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}_cleanupObserver(e){if(this._observedElements.has(e)){const{observer:i,stream:r}=this._observedElements.get(e);i&&i.disconnect(),r.complete(),this._observedElements.delete(e)}}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Ome))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),vX=(()=>{class n{get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(e){this._debounce=jn(e),this._subscribe()}constructor(e,i){this._contentObserver=e,this._elementRef=i,this.event=new o.bkB,this._disabled=!1,this._currentSubscription=null}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const e=this._contentObserver.observe(this._elementRef);this._currentSubscription=(this.debounce?e.pipe(x_(this.debounce)):e).subscribe(this.event)}_unsubscribe(){this._currentSubscription?.unsubscribe()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Nme),o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","cdkObserveContent",""]],inputs:{disabled:[2,"cdkObserveContentDisabled","disabled",o.L39],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"],standalone:!0,features:[o.GFd]})}}return n})();const yX=["*"],xX=["unscopedContent"],Lme=["text"],Ume=[[["","matListItemAvatar",""],["","matListItemIcon",""]],[["","matListItemTitle",""]],[["","matListItemLine",""]],"*",[["","matListItemMeta",""]],[["mat-divider"]]],Vme=["[matListItemAvatar],[matListItemIcon]","[matListItemTitle]","[matListItemLine]","*","[matListItemMeta]","mat-divider"],CX=new o.nKC("ListOption");let MX=(()=>{class n{constructor(e){this._elementRef=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemTitle",""]],hostAttrs:[1,"mat-mdc-list-item-title","mdc-list-item__primary-text"],standalone:!0})}}return n})(),EX=(()=>{class n{constructor(e){this._elementRef=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemLine",""]],hostAttrs:[1,"mat-mdc-list-item-line","mdc-list-item__secondary-text"],standalone:!0})}}return n})(),rge=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemMeta",""]],hostAttrs:[1,"mat-mdc-list-item-meta","mdc-list-item__end"],standalone:!0})}}return n})(),SX=(()=>{class n{constructor(e){this._listOption=e}_isAlignedAtStart(){return!this._listOption||"after"===this._listOption?._getTogglePosition()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(CX,8))}}static{this.\u0275dir=o.FsC({type:n,hostVars:4,hostBindings:function(i,r){2&i&&o.AVh("mdc-list-item__start",r._isAlignedAtStart())("mdc-list-item__end",!r._isAlignedAtStart())},standalone:!0})}}return n})(),oge=(()=>{class n extends SX{static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemAvatar",""]],hostAttrs:[1,"mat-mdc-list-item-avatar"],standalone:!0,features:[o.Vt3]})}}return n})(),sge=(()=>{class n extends SX{static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["","matListItemIcon",""]],hostAttrs:[1,"mat-mdc-list-item-icon"],standalone:!0,features:[o.Vt3]})}}return n})();const age=new o.nKC("MAT_LIST_CONFIG");let mx=(()=>{class n{constructor(){this._isNonInteractive=!0,this._disableRipple=!1,this._disabled=!1,this._defaultOptions=(0,o.WQX)(age,{optional:!0})}get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=gi(e)}get disabled(){return this._disabled}set disabled(e){this._disabled=gi(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,hostVars:1,hostBindings:function(i,r){2&i&&o.BMQ("aria-disabled",r.disabled)},inputs:{disableRipple:"disableRipple",disabled:"disabled"},standalone:!0})}}return n})(),V7=(()=>{class n{set lines(e){this._explicitLines=jn(e,null),this._updateItemLines(!1)}get disableRipple(){return this.disabled||this._disableRipple||this._noopAnimations||!!this._listBase?.disableRipple}set disableRipple(e){this._disableRipple=gi(e)}get disabled(){return this._disabled||!!this._listBase?.disabled}set disabled(e){this._disabled=gi(e)}get rippleDisabled(){return this.disableRipple||!!this.rippleConfig.disabled}constructor(e,i,r,s,l,u){this._elementRef=e,this._ngZone=i,this._listBase=r,this._platform=s,this._explicitLines=null,this._disableRipple=!1,this._disabled=!1,this._subscriptions=new un.yU,this._rippleRenderer=null,this._hasUnscopedTextContent=!1,this.rippleConfig=l||{},this._hostElement=this._elementRef.nativeElement,this._isButtonElement="button"===this._hostElement.nodeName.toLowerCase(),this._noopAnimations="NoopAnimations"===u,r&&!r._isNonInteractive&&this._initInteractiveListItem(),this._isButtonElement&&!this._hostElement.hasAttribute("type")&&this._hostElement.setAttribute("type","button")}ngAfterViewInit(){this._monitorProjectedLinesAndTitle(),this._updateItemLines(!0)}ngOnDestroy(){this._subscriptions.unsubscribe(),null!==this._rippleRenderer&&this._rippleRenderer._removeTriggerEvents()}_hasIconOrAvatar(){return!(!this._avatars.length&&!this._icons.length)}_initInteractiveListItem(){this._hostElement.classList.add("mat-mdc-list-item-interactive"),this._rippleRenderer=new Dm(this,this._ngZone,this._hostElement,this._platform),this._rippleRenderer.setupTriggerEvents(this._hostElement)}_monitorProjectedLinesAndTitle(){this._ngZone.runOutsideAngular(()=>{this._subscriptions.add(ql(this._lines.changes,this._titles.changes).subscribe(()=>this._updateItemLines(!1)))})}_updateItemLines(e){if(!this._lines||!this._titles||!this._unscopedContent)return;e&&this._checkDomForUnscopedTextContent();const i=this._explicitLines??this._inferLinesFromContent(),r=this._unscopedContent.nativeElement;if(this._hostElement.classList.toggle("mat-mdc-list-item-single-line",i<=1),this._hostElement.classList.toggle("mdc-list-item--with-one-line",i<=1),this._hostElement.classList.toggle("mdc-list-item--with-two-lines",2===i),this._hostElement.classList.toggle("mdc-list-item--with-three-lines",3===i),this._hasUnscopedTextContent){const s=0===this._titles.length&&1===i;r.classList.toggle("mdc-list-item__primary-text",s),r.classList.toggle("mdc-list-item__secondary-text",!s)}else r.classList.remove("mdc-list-item__primary-text"),r.classList.remove("mdc-list-item__secondary-text")}_inferLinesFromContent(){let e=this._titles.length+this._lines.length;return this._hasUnscopedTextContent&&(e+=1),e}_checkDomForUnscopedTextContent(){this._hasUnscopedTextContent=Array.from(this._unscopedContent.nativeElement.childNodes).filter(e=>e.nodeType!==e.COMMENT_NODE).some(e=>!(!e.textContent||!e.textContent.trim()))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi),o.rXU(mx,8),o.rXU(Io),o.rXU(Bm,8),o.rXU(o.bc$,8))}}static{this.\u0275dir=o.FsC({type:n,contentQueries:function(i,r,s){if(1&i&&(o.wni(s,oge,4),o.wni(s,sge,4)),2&i){let l;o.mGM(l=o.lsd())&&(r._avatars=l),o.mGM(l=o.lsd())&&(r._icons=l)}},hostVars:4,hostBindings:function(i,r){2&i&&(o.BMQ("aria-disabled",r.disabled)("disabled",r._isButtonElement&&r.disabled||null),o.AVh("mdc-list-item--disabled",r.disabled))},inputs:{lines:"lines",disableRipple:"disableRipple",disabled:"disabled"},standalone:!0})}}return n})(),TX=(()=>{class n extends mx{static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-list"]],hostAttrs:[1,"mat-mdc-list","mat-mdc-list-base","mdc-list"],exportAs:["matList"],standalone:!0,features:[o.Jv_([{provide:mx,useExisting:n}]),o.Vt3,o.aNF],ngContentSelectors:yX,decls:1,vars:0,template:function(i,r){1&i&&(o.NAR(),o.SdG(0))},styles:['.mdc-list{margin:0;padding:8px 0;list-style-type:none}.mdc-list:focus{outline:none}.mdc-list-item{display:flex;position:relative;justify-content:flex-start;overflow:hidden;padding:0;align-items:stretch;cursor:pointer;padding-left:16px;padding-right:16px;background-color:var(--mdc-list-list-item-container-color);border-radius:var(--mdc-list-list-item-container-shape, var(--mat-app-corner-none))}.mdc-list-item.mdc-list-item--selected{background-color:var(--mdc-list-list-item-selected-container-color)}.mdc-list-item:focus{outline:0}.mdc-list-item.mdc-list-item--disabled{cursor:auto}.mdc-list-item.mdc-list-item--with-one-line{height:var(--mdc-list-list-item-one-line-container-height)}.mdc-list-item.mdc-list-item--with-one-line .mdc-list-item__start{align-self:center;margin-top:0}.mdc-list-item.mdc-list-item--with-one-line .mdc-list-item__end{align-self:center;margin-top:0}.mdc-list-item.mdc-list-item--with-two-lines{height:var(--mdc-list-list-item-two-line-container-height)}.mdc-list-item.mdc-list-item--with-two-lines .mdc-list-item__start{align-self:flex-start;margin-top:16px}.mdc-list-item.mdc-list-item--with-two-lines .mdc-list-item__end{align-self:center;margin-top:0}.mdc-list-item.mdc-list-item--with-three-lines{height:var(--mdc-list-list-item-three-line-container-height)}.mdc-list-item.mdc-list-item--with-three-lines .mdc-list-item__start{align-self:flex-start;margin-top:16px}.mdc-list-item.mdc-list-item--with-three-lines .mdc-list-item__end{align-self:flex-start;margin-top:16px}.mdc-list-item.mdc-list-item--selected::before,.mdc-list-item.mdc-list-item--selected:focus::before,.mdc-list-item:not(.mdc-list-item--selected):focus::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.cdk-high-contrast-active .mdc-list-item.mdc-list-item--selected::before,.cdk-high-contrast-active .mdc-list-item.mdc-list-item--selected:focus::before,.cdk-high-contrast-active .mdc-list-item:not(.mdc-list-item--selected):focus::before{border-color:CanvasText}.mdc-list-item.mdc-list-item--selected:focus::before,.mdc-list-item.mdc-list-item--selected::before{border-width:3px;border-style:double}a.mdc-list-item{color:inherit;text-decoration:none}.mdc-list-item__start{fill:currentColor;flex-shrink:0;pointer-events:none}.mdc-list-item--with-leading-icon .mdc-list-item__start{color:var(--mdc-list-list-item-leading-icon-color, var(--mat-app-on-surface-variant));width:var(--mdc-list-list-item-leading-icon-size);height:var(--mdc-list-list-item-leading-icon-size);margin-left:16px;margin-right:32px}[dir=rtl] .mdc-list-item--with-leading-icon .mdc-list-item__start{margin-left:32px;margin-right:16px}.mdc-list-item--with-leading-icon:hover .mdc-list-item__start{color:var(--mdc-list-list-item-hover-leading-icon-color)}.mdc-list-item--with-leading-avatar .mdc-list-item__start{width:var(--mdc-list-list-item-leading-avatar-size);height:var(--mdc-list-list-item-leading-avatar-size);margin-left:16px;margin-right:16px;border-radius:50%}.mdc-list-item--with-leading-avatar .mdc-list-item__start,[dir=rtl] .mdc-list-item--with-leading-avatar .mdc-list-item__start{margin-left:16px;margin-right:16px;border-radius:50%}.mdc-list-item__end{flex-shrink:0;pointer-events:none}.mdc-list-item--with-trailing-meta .mdc-list-item__end{font-family:var(--mdc-list-list-item-trailing-supporting-text-font, var(--mat-app-label-small-font));line-height:var(--mdc-list-list-item-trailing-supporting-text-line-height, var(--mat-app-label-small-line-height));font-size:var(--mdc-list-list-item-trailing-supporting-text-size, var(--mat-app-label-small-size));font-weight:var(--mdc-list-list-item-trailing-supporting-text-weight, var(--mat-app-label-small-weight));letter-spacing:var(--mdc-list-list-item-trailing-supporting-text-tracking, var(--mat-app-label-small-tracking))}.mdc-list-item--with-trailing-icon .mdc-list-item__end{color:var(--mdc-list-list-item-trailing-icon-color, var(--mat-app-on-surface-variant));width:var(--mdc-list-list-item-trailing-icon-size);height:var(--mdc-list-list-item-trailing-icon-size)}.mdc-list-item--with-trailing-icon:hover .mdc-list-item__end{color:var(--mdc-list-list-item-hover-trailing-icon-color)}.mdc-list-item.mdc-list-item--with-trailing-meta .mdc-list-item__end{color:var(--mdc-list-list-item-trailing-supporting-text-color, var(--mat-app-on-surface-variant))}.mdc-list-item--selected.mdc-list-item--with-trailing-icon .mdc-list-item__end{color:var(--mdc-list-list-item-selected-trailing-icon-color, var(--mat-app-primary))}.mdc-list-item__content{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;align-self:center;flex:1;pointer-events:none}.mdc-list-item--with-two-lines .mdc-list-item__content,.mdc-list-item--with-three-lines .mdc-list-item__content{align-self:stretch}.mdc-list-item__primary-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:var(--mdc-list-list-item-label-text-color, var(--mat-app-on-surface));font-family:var(--mdc-list-list-item-label-text-font, var(--mat-app-body-large-font));line-height:var(--mdc-list-list-item-label-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mdc-list-list-item-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-list-list-item-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-list-list-item-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-list-item:hover .mdc-list-item__primary-text{color:var(--mdc-list-list-item-hover-label-text-color, var(--mat-app-on-surface))}.mdc-list-item:focus .mdc-list-item__primary-text{color:var(--mdc-list-list-item-focus-label-text-color, var(--mat-app-on-surface))}.mdc-list-item--with-two-lines .mdc-list-item__primary-text,.mdc-list-item--with-three-lines .mdc-list-item__primary-text{display:block;margin-top:0;line-height:normal;margin-bottom:-20px}.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before,.mdc-list-item--with-three-lines .mdc-list-item__primary-text::before{display:inline-block;width:0;height:28px;content:"";vertical-align:0}.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after,.mdc-list-item--with-three-lines .mdc-list-item__primary-text::after{display:inline-block;width:0;height:20px;content:"";vertical-align:-20px}.mdc-list-item__secondary-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:block;margin-top:0;color:var(--mdc-list-list-item-supporting-text-color, var(--mat-app-on-surface-variant));font-family:var(--mdc-list-list-item-supporting-text-font, var(--mat-app-body-medium-font));line-height:var(--mdc-list-list-item-supporting-text-line-height, var(--mat-app-body-medium-line-height));font-size:var(--mdc-list-list-item-supporting-text-size, var(--mat-app-body-medium-size));font-weight:var(--mdc-list-list-item-supporting-text-weight, var(--mat-app-body-medium-weight));letter-spacing:var(--mdc-list-list-item-supporting-text-tracking, var(--mat-app-body-medium-tracking))}.mdc-list-item__secondary-text::before{display:inline-block;width:0;height:20px;content:"";vertical-align:0}.mdc-list-item--with-three-lines .mdc-list-item__secondary-text{white-space:normal;line-height:20px}.mdc-list-item--with-overline .mdc-list-item__secondary-text{white-space:nowrap;line-height:auto}.mdc-list-item--with-leading-radio.mdc-list-item,.mdc-list-item--with-leading-checkbox.mdc-list-item,.mdc-list-item--with-leading-icon.mdc-list-item,.mdc-list-item--with-leading-avatar.mdc-list-item{padding-left:0;padding-right:16px}[dir=rtl] .mdc-list-item--with-leading-radio.mdc-list-item,[dir=rtl] .mdc-list-item--with-leading-checkbox.mdc-list-item,[dir=rtl] .mdc-list-item--with-leading-icon.mdc-list-item,[dir=rtl] .mdc-list-item--with-leading-avatar.mdc-list-item{padding-left:16px;padding-right:0}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines .mdc-list-item__primary-text,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines .mdc-list-item__primary-text,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines .mdc-list-item__primary-text,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines .mdc-list-item__primary-text{display:block;margin-top:0;line-height:normal;margin-bottom:-20px}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines .mdc-list-item__primary-text::before{display:inline-block;width:0;height:32px;content:"";vertical-align:0}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines .mdc-list-item__primary-text::after{display:inline-block;width:0;height:20px;content:"";vertical-align:-20px}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end{display:block;margin-top:0;line-height:normal}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end::before,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end::before,.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end::before,.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines.mdc-list-item--with-trailing-meta .mdc-list-item__end::before{display:inline-block;width:0;height:32px;content:"";vertical-align:0}.mdc-list-item--with-trailing-icon.mdc-list-item,[dir=rtl] .mdc-list-item--with-trailing-icon.mdc-list-item{padding-left:0;padding-right:0}.mdc-list-item--with-trailing-icon .mdc-list-item__end{margin-left:16px;margin-right:16px}.mdc-list-item--with-trailing-meta.mdc-list-item{padding-left:16px;padding-right:0}[dir=rtl] .mdc-list-item--with-trailing-meta.mdc-list-item{padding-left:0;padding-right:16px}.mdc-list-item--with-trailing-meta .mdc-list-item__end{-webkit-user-select:none;user-select:none;margin-left:28px;margin-right:16px}[dir=rtl] .mdc-list-item--with-trailing-meta .mdc-list-item__end{margin-left:16px;margin-right:28px}.mdc-list-item--with-trailing-meta.mdc-list-item--with-three-lines .mdc-list-item__end,.mdc-list-item--with-trailing-meta.mdc-list-item--with-two-lines .mdc-list-item__end{display:block;line-height:normal;align-self:flex-start;margin-top:0}.mdc-list-item--with-trailing-meta.mdc-list-item--with-three-lines .mdc-list-item__end::before,.mdc-list-item--with-trailing-meta.mdc-list-item--with-two-lines .mdc-list-item__end::before{display:inline-block;width:0;height:28px;content:"";vertical-align:0}.mdc-list-item--with-leading-radio .mdc-list-item__start,.mdc-list-item--with-leading-checkbox .mdc-list-item__start{margin-left:8px;margin-right:24px}[dir=rtl] .mdc-list-item--with-leading-radio .mdc-list-item__start,[dir=rtl] .mdc-list-item--with-leading-checkbox .mdc-list-item__start{margin-left:24px;margin-right:8px}.mdc-list-item--with-leading-radio.mdc-list-item--with-two-lines .mdc-list-item__start,.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines .mdc-list-item__start{align-self:flex-start;margin-top:8px}.mdc-list-item--with-trailing-radio.mdc-list-item,.mdc-list-item--with-trailing-checkbox.mdc-list-item{padding-left:16px;padding-right:0}[dir=rtl] .mdc-list-item--with-trailing-radio.mdc-list-item,[dir=rtl] .mdc-list-item--with-trailing-checkbox.mdc-list-item{padding-left:0;padding-right:16px}.mdc-list-item--with-trailing-radio.mdc-list-item--with-leading-icon,.mdc-list-item--with-trailing-radio.mdc-list-item--with-leading-avatar,.mdc-list-item--with-trailing-checkbox.mdc-list-item--with-leading-icon,.mdc-list-item--with-trailing-checkbox.mdc-list-item--with-leading-avatar{padding-left:0}[dir=rtl] .mdc-list-item--with-trailing-radio.mdc-list-item--with-leading-icon,[dir=rtl] .mdc-list-item--with-trailing-radio.mdc-list-item--with-leading-avatar,[dir=rtl] .mdc-list-item--with-trailing-checkbox.mdc-list-item--with-leading-icon,[dir=rtl] .mdc-list-item--with-trailing-checkbox.mdc-list-item--with-leading-avatar{padding-right:0}.mdc-list-item--with-trailing-radio .mdc-list-item__end,.mdc-list-item--with-trailing-checkbox .mdc-list-item__end{margin-left:24px;margin-right:8px}[dir=rtl] .mdc-list-item--with-trailing-radio .mdc-list-item__end,[dir=rtl] .mdc-list-item--with-trailing-checkbox .mdc-list-item__end{margin-left:8px;margin-right:24px}.mdc-list-item--with-trailing-radio.mdc-list-item--with-three-lines .mdc-list-item__end,.mdc-list-item--with-trailing-checkbox.mdc-list-item--with-three-lines .mdc-list-item__end{align-self:flex-start;margin-top:8px}.mdc-list-group__subheader{margin:.75rem 16px}.mdc-list-item--disabled .mdc-list-item__start,.mdc-list-item--disabled .mdc-list-item__content,.mdc-list-item--disabled .mdc-list-item__end{opacity:1}.mdc-list-item--disabled .mdc-list-item__primary-text,.mdc-list-item--disabled .mdc-list-item__secondary-text{opacity:var(--mdc-list-list-item-disabled-label-text-opacity)}.mdc-list-item--disabled.mdc-list-item--with-leading-icon .mdc-list-item__start{color:var(--mdc-list-list-item-disabled-leading-icon-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-disabled-leading-icon-opacity)}.mdc-list-item--disabled.mdc-list-item--with-trailing-icon .mdc-list-item__end{color:var(--mdc-list-list-item-disabled-trailing-icon-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-disabled-trailing-icon-opacity)}.mat-mdc-list-item.mat-mdc-list-item-both-leading-and-trailing,[dir=rtl] .mat-mdc-list-item.mat-mdc-list-item-both-leading-and-trailing{padding-left:0;padding-right:0}.mdc-list-item.mdc-list-item--disabled .mdc-list-item__primary-text{color:var(--mdc-list-list-item-disabled-label-text-color, var(--mat-app-on-surface))}.mdc-list-item:hover::before{background-color:var(--mdc-list-list-item-hover-state-layer-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mdc-list-item.mdc-list-item--disabled::before{background-color:var(--mdc-list-list-item-disabled-state-layer-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-disabled-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mdc-list-item:focus::before{background-color:var(--mdc-list-list-item-focus-state-layer-color, var(--mat-app-on-surface));opacity:var(--mdc-list-list-item-focus-state-layer-opacity, var(--mat-app-focus-state-layer-opacity))}.mdc-list-item--disabled .mdc-radio,.mdc-list-item--disabled .mdc-checkbox{opacity:var(--mdc-list-list-item-disabled-label-text-opacity)}.mdc-list-item--with-leading-avatar .mat-mdc-list-item-avatar{border-radius:var(--mdc-list-list-item-leading-avatar-shape, var(--mat-app-corner-full));background-color:var(--mdc-list-list-item-leading-avatar-color, var(--mat-app-primary-container))}.mat-mdc-list-item-icon{font-size:var(--mdc-list-list-item-leading-icon-size)}.cdk-high-contrast-active a.mdc-list-item--activated::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}.cdk-high-contrast-active a.mdc-list-item--activated [dir=rtl]::after{right:auto;left:16px}.mat-mdc-list-base{display:block}.mat-mdc-list-base .mdc-list-item__start,.mat-mdc-list-base .mdc-list-item__end,.mat-mdc-list-base .mdc-list-item__content{pointer-events:auto}.mat-mdc-list-item,.mat-mdc-list-option{width:100%;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-list-item:not(.mat-mdc-list-item-interactive),.mat-mdc-list-option:not(.mat-mdc-list-item-interactive){cursor:default}.mat-mdc-list-item .mat-divider-inset,.mat-mdc-list-option .mat-divider-inset{position:absolute;left:0;right:0;bottom:0}.mat-mdc-list-item .mat-mdc-list-item-avatar~.mat-divider-inset,.mat-mdc-list-option .mat-mdc-list-item-avatar~.mat-divider-inset{margin-left:72px}[dir=rtl] .mat-mdc-list-item .mat-mdc-list-item-avatar~.mat-divider-inset,[dir=rtl] .mat-mdc-list-option .mat-mdc-list-item-avatar~.mat-divider-inset{margin-right:72px}.mat-mdc-list-item-interactive::before{top:0;left:0;right:0;bottom:0;position:absolute;content:"";opacity:0;pointer-events:none}.mat-mdc-list-item>.mat-mdc-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-list-item:focus>.mat-mdc-focus-indicator::before{content:""}.mat-mdc-list-item.mdc-list-item--with-three-lines .mat-mdc-list-item-line.mdc-list-item__secondary-text{white-space:nowrap;line-height:normal}.mat-mdc-list-item.mdc-list-item--with-three-lines .mat-mdc-list-item-unscoped-content.mdc-list-item__secondary-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}mat-action-list button{background:none;color:inherit;border:none;font:inherit;outline:inherit;-webkit-tap-highlight-color:rgba(0,0,0,0);text-align:start}mat-action-list button::-moz-focus-inner{border:0}.mdc-list-item--with-leading-icon .mdc-list-item__start{margin-inline-start:var(--mat-list-list-item-leading-icon-start-space);margin-inline-end:var(--mat-list-list-item-leading-icon-end-space)}.mat-mdc-nav-list .mat-mdc-list-item{border-radius:var(--mat-list-active-indicator-shape, var(--mat-app-corner-full));--mat-mdc-focus-indicator-border-radius:var(--mat-list-active-indicator-shape, var(--mat-app-corner-full))}.mat-mdc-nav-list .mat-mdc-list-item.mdc-list-item--activated{background-color:var(--mat-list-active-indicator-color, var(--mat-app-secondary-container))}'],encapsulation:2,changeDetection:0})}}return n})(),IX=(()=>{class n extends V7{get activated(){return this._activated}set activated(e){this._activated=gi(e)}constructor(e,i,r,s,l,u){super(e,i,r,s,l,u),this._activated=!1}_getAriaCurrent(){return"A"===this._hostElement.nodeName&&this._activated?"page":null}_hasBothLeadingAndTrailing(){return 0!==this._meta.length&&(0!==this._avatars.length||0!==this._icons.length)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(o.SKi),o.rXU(mx,8),o.rXU(Io),o.rXU(Bm,8),o.rXU(o.bc$,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-list-item"],["a","mat-list-item",""],["button","mat-list-item",""]],contentQueries:function(i,r,s){if(1&i&&(o.wni(s,EX,5),o.wni(s,MX,5),o.wni(s,rge,5)),2&i){let l;o.mGM(l=o.lsd())&&(r._lines=l),o.mGM(l=o.lsd())&&(r._titles=l),o.mGM(l=o.lsd())&&(r._meta=l)}},viewQuery:function(i,r){if(1&i&&(o.GBs(xX,5),o.GBs(Lme,5)),2&i){let s;o.mGM(s=o.lsd())&&(r._unscopedContent=s.first),o.mGM(s=o.lsd())&&(r._itemText=s.first)}},hostAttrs:[1,"mat-mdc-list-item","mdc-list-item"],hostVars:13,hostBindings:function(i,r){2&i&&(o.BMQ("aria-current",r._getAriaCurrent()),o.AVh("mdc-list-item--activated",r.activated)("mdc-list-item--with-leading-avatar",0!==r._avatars.length)("mdc-list-item--with-leading-icon",0!==r._icons.length)("mdc-list-item--with-trailing-meta",0!==r._meta.length)("mat-mdc-list-item-both-leading-and-trailing",r._hasBothLeadingAndTrailing())("_mat-animation-noopable",r._noopAnimations))},inputs:{activated:"activated"},exportAs:["matListItem"],standalone:!0,features:[o.Vt3,o.aNF],ngContentSelectors:Vme,decls:10,vars:0,consts:[["unscopedContent",""],[1,"mdc-list-item__content"],[1,"mat-mdc-list-item-unscoped-content",3,"cdkObserveContent"],[1,"mat-mdc-focus-indicator"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(Ume),o.SdG(0),o.j41(1,"span",1),o.SdG(2,1),o.SdG(3,2),o.j41(4,"span",2,0),o.bIt("cdkObserveContent",function(){return o.eBV(s),o.Njj(r._updateItemLines(!0))}),o.SdG(6,3),o.k0s()(),o.SdG(7,4),o.SdG(8,5),o.nrm(9,"div",3)}},dependencies:[vX],encapsulation:2,changeDetection:0})}}return n})();function hge(n,t){1&n&&(o.j41(0,"mat-list-item"),o.EFF(1,"Add pattern via search or node context-menu"),o.k0s())}function fge(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-list-item",4)(1,"button",5),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(2);return o.Njj(s.removeBlacklistEntry(r))}),o.nrm(2,"em",6),o.EFF(3),o.k0s()()}if(2&n){const e=t.$implicit;o.Y8G("title",e.path),o.R7$(3),o.SpI(" ",e.path," ")}}function pge(n,t){if(1&n&&(o.j41(0,"div"),o.DNE(1,hge,2,0,"mat-list-item"),o.Z7z(2,fge,4,2,"mat-list-item",4,o.fX1),o.k0s()),2&n){const e=t;o.R7$(),o.vxM(0===e.length?1:-1),o.R7$(),o.Dyx(e)}}function Age(n,t){1&n&&(o.j41(0,"mat-list-item"),o.EFF(1,"Add pattern via search or node context-menu"),o.k0s())}function mge(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-list-item",4)(1,"button",5),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(2);return o.Njj(s.removeBlacklistEntry(r))}),o.nrm(2,"em",6),o.EFF(3),o.k0s()()}if(2&n){const e=t.$implicit;o.Y8G("title",e.path),o.R7$(3),o.SpI(" ",e.path," ")}}function gge(n,t){if(1&n&&(o.j41(0,"div"),o.DNE(1,Age,2,0,"mat-list-item"),o.Z7z(2,mge,4,2,"mat-list-item",4,o.fX1),o.k0s()),2&n){const e=t;o.R7$(),o.vxM(0===e.length?1:-1),o.R7$(),o.Dyx(e)}}let _ge=(()=>{class n{constructor(e){this.store=e,this.flattenedItems$=this.store.select(bX("flatten")),this.excludedItems$=this.store.select(bX("exclude"))}removeBlacklistEntry(e){this.store.dispatch(SR({item:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-blacklist-panel"]],standalone:!0,features:[o.aNF],decls:14,vars:6,consts:[[1,"cc-blacklist-panel-list"],[1,"cc-header-text"],["matTooltip","Flattened nodes are shown as flat/short buildings and are included in folder metrics",1,"fa","fa-question-circle-o"],["matTooltip","Excluded buildings are not shown in the map and are not included in folder metrics",1,"fa","fa-question-circle-o"],[3,"title"],["mat-button","",3,"click"],["title","Remove list item",1,"fa","fa-minus-square"]],template:function(i,r){if(1&i&&(o.j41(0,"mat-list",0)(1,"div")(2,"h3",1),o.EFF(3,"Flattened"),o.k0s(),o.nrm(4,"em",2),o.k0s(),o.DNE(5,pge,4,1,"div"),o.nI1(6,"async"),o.k0s(),o.j41(7,"mat-list",0)(8,"div")(9,"h3",1),o.EFF(10,"Excluded"),o.k0s(),o.nrm(11,"em",3),o.k0s(),o.DNE(12,gge,4,1,"div"),o.nI1(13,"async"),o.k0s()),2&i){let s,l;o.R7$(5),o.vxM((s=o.bMT(6,2,r.flattenedItems$))?5:-1,s),o.R7$(7),o.vxM((l=o.bMT(13,4,r.excludedItems$))?12:-1,l)}},dependencies:[TX,w7,IX,ns,zn],styles:["[_nghost-%COMP%] .cc-header-text[_ngcontent-%COMP%]{display:inline-block;margin:0 .25em 0 0}"]})}}return n})();const eP=(n,t,e)=>t.reduce((i,r)=>cu(r.path,e,n)?i+1:i,0),bge=sn(FG,Ru,jR,(n,t,e)=>{const i=n.filter(r=>Ro(r));return{fileCount:`${i.length}/${e.length}`,flattenCount:`${eP("flatten",i,t)}/${eP("flatten",e,t)}`,excludeCount:`${eP("exclude",i,t)}/${eP("exclude",e,t)}`}});let vge=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.isSearchPanelPinned$=this.store.select(hX)}onClick(){this.store.dispatch(n7())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-thumb-tack-button"]],standalone:!0,features:[o.aNF],decls:3,vars:3,consts:[["title","Pin file explorer",1,"box-rounded",3,"click","ngClass"],[1,"fa","fa-thumb-tack"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"async"),o.bIt("click",function(){return r.onClick()}),o.nrm(2,"i",1),o.k0s()),2&i&&o.Y8G("ngClass",o.bMT(1,1,r.isSearchPanelPinned$)?"pinned":"")},dependencies:[Sn,zn],styles:[".pinned[_ngcontent-%COMP%]{background-color:#979797}button[_ngcontent-%COMP%]{height:25px;background:#e6e6e6;padding:1px 8px}.box-rounded[_ngcontent-%COMP%]{display:inline-block;font-weight:400;line-height:17px;font-size:10pt;margin-top:2px;min-width:20px;border-radius:4px;text-align:center}"]})}}return n})();const DX=sn(ko,n=>n.sortingOrderAscending);let yge=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.sortingOrderAscending$=this.store.select(DX)}onClick(){this.store.dispatch(V6())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-sorting-button"]],standalone:!0,features:[o.aNF],decls:4,vars:7,consts:[[1,"box-rounded",3,"click","title"],[3,"className"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"async"),o.bIt("click",function(){return r.onClick()}),o.nrm(2,"i",1),o.nI1(3,"async"),o.k0s()),2&i&&(o.Mz_("title","Toggle sort order (currently ",o.bMT(1,3,r.sortingOrderAscending$)?"ascending":"descending",")"),o.R7$(2),o.Y8G("className",o.bMT(3,5,r.sortingOrderAscending$)?"fa fa-sort-amount-asc":"fa fa-sort-amount-desc"))},dependencies:[zn],styles:["button[_ngcontent-%COMP%]{height:25px;background:#e6e6e6;padding:1px 8px}.box-rounded[_ngcontent-%COMP%]{display:inline-block;font-weight:400;line-height:17px;font-size:10pt;margin-top:2px;min-width:20px;border-radius:4px;text-align:center}"]})}}return n})();const BX=sn($c,n=>n.sortingOption);function wge(n,t){if(1&n&&(o.j41(0,"mat-option",1),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.Y8G("value",e),o.R7$(),o.SpI(" ",e," ")}}let xge=(()=>{class n{constructor(e){this.store=e,this.sortingOptions=Object.values(_d),this.selectedSortingOption$=e.select(BX)}handleSelectedSortingOptionChanged(e){this.store.dispatch(MR(e.value))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-sorting-option"]],standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[["title","Sort by","panelClass","cc-sorting-option",1,"sorting-option-select",3,"selectionChange","value"],[3,"value"]],template:function(i,r){1&i&&(o.j41(0,"mat-select",0),o.nI1(1,"async"),o.bIt("selectionChange",function(l){return r.handleSelectedSortingOptionChanged(l)}),o.Z7z(2,wge,2,2,"mat-option",1,o.fX1),o.k0s()),2&i&&(o.Y8G("value",o.bMT(1,1,r.selectedSortingOption$)),o.R7$(2),o.Dyx(r.sortingOptions))},dependencies:[e0,yd,zn],styles:[".sorting-option-select[_ngcontent-%COMP%]{max-width:88px}"]})}}return n})();function Cge(n,t){if(1&n&&(o.j41(0,"span",0),o.EFF(1),o.nrm(2,"i",1),o.k0s(),o.j41(3,"span",2),o.EFF(4),o.nrm(5,"img",3),o.k0s(),o.j41(6,"span",4),o.EFF(7),o.nrm(8,"i",5),o.k0s(),o.j41(9,"div",6),o.nrm(10,"cc-thumb-tack-button"),o.k0s(),o.j41(11,"div",6),o.nrm(12,"cc-sorting-button")(13,"cc-sorting-option"),o.k0s()),2&n){const e=t;o.R7$(),o.JRh(e.fileCount),o.R7$(3),o.JRh(e.flattenCount),o.R7$(3),o.JRh(e.excludeCount)}}let Mge=(()=>{class n{constructor(e){this.matchingFileCounters$=e.select(bge)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-matching-files-counter"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[["title","Files matching search pattern",1,"box-rounded","node-count"],[1,"fa","fa-file"],["title","Files flattened",1,"box-rounded","node-count",2,"display","inline-flex"],["alt","flattenIcon","src","codeCharta/assets/flatten.png",1,"fa","png-icon-files-counter"],["title","Files excluded",1,"box-rounded","node-count"],[1,"fa","fa-ban"],[1,"clickable-component"]],template:function(i,r){if(1&i&&(o.DNE(0,Cge,14,3),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.matchingFileCounters$))?0:-1,s)}},dependencies:[vge,yge,xge,zn],styles:["[_nghost-%COMP%] .node-count[_ngcontent-%COMP%]{background:#eee;color:#000;padding:4px 8px;margin-right:8px}[_nghost-%COMP%] .node-count[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-left:6px}[_nghost-%COMP%] .box-rounded[_ngcontent-%COMP%]{display:inline-block;font-weight:400;line-height:17px;font-size:10pt;margin-top:2px;min-width:20px;border-radius:4px;text-align:center}[_nghost-%COMP%] .png-icon-files-counter[_ngcontent-%COMP%]{width:19px;height:16px;margin-left:6px}[_nghost-%COMP%] .clickable-component[_ngcontent-%COMP%]{display:inline-block;color:#000;margin-left:-9px}"]})}}return n})();function Jp(n){if("object"!=typeof n)return n;var t,e,i=Object.prototype.toString.call(n);if("[object Object]"===i){if(n.constructor!==Object&&"function"==typeof n.constructor)for(t in e=new n.constructor,n)n.hasOwnProperty(t)&&e[t]!==n[t]&&(e[t]=Jp(n[t]));else for(t in e={},n)"__proto__"===t?Object.defineProperty(e,t,{value:Jp(n[t]),configurable:!0,enumerable:!0,writable:!0}):e[t]=Jp(n[t]);return e}if("[object Array]"===i){for(t=n.length,e=Array(t);t--;)e[t]=Jp(n[t]);return e}return"[object Set]"===i?(e=new Set,n.forEach(function(r){e.add(Jp(r))}),e):"[object Map]"===i?(e=new Map,n.forEach(function(r,s){e.set(Jp(s),Jp(r))}),e):"[object Date]"===i?new Date(+n):"[object RegExp]"===i?((e=new RegExp(n.source,n.flags)).lastIndex=n.lastIndex,e):"[object DataView]"===i?new n.constructor(Jp(n.buffer)):"[object ArrayBuffer]"===i?n.slice(0):"Array]"===i.slice(-6)?new n.constructor(n):n}const Ege=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}),Sge=(n,t)=>Ege.compare(n.name,t.name),Tge=(n,t)=>n.attributes.unary-t.attributes.unary,kX=(n,t,e)=>{if(!n)return;for(let r=0;r{const e=n===_d.NUMBER_OF_FILES?Tge:Sge;return t?e:(i,r)=>-1*e(i,r)})(t,e);return n.children=((n,t)=>{const e=[],i=[];for(const r of t.children)r.type===ts.FOLDER?e.push(r):i.push(r);return e.sort(n),i.sort(n),[...e,...i]})(i,n),n},Dge=sn(Fd,BX,DX,(n,t,e)=>kX(Jp(n.unifiedMapNode),t,e)),RX=sn(c_,n=>n.rightClickedNodeData);let PX=(()=>{class n{transform(e,i){return H7(e,i)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"areaMetricValid",type:n,pure:!0,standalone:!0})}}return n})();function H7(n,t){return n.deltas?.[t]<0||n.attributes?.[t]>0}let Bge=(()=>{class n{transform(e,i){return Ro(e)?"fa fa-file-o":i?"fa fa-folder-open":"fa fa-folder"}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"mapTreeViewItemIconClass",type:n,pure:!0,standalone:!0})}}return n})(),kge=(()=>{class n{static{this.defaultColor="#000000"}static{this.areMetricZeroColor="#BDBDBD"}constructor(e){this.state=e}transform(e){const{areaMetric:i}=this.state.getValue().dynamicSettings;return H7(e,i)?Ro(e)?void 0:l1(e,this.state.getValue().fileSettings.markedPackages)||n.defaultColor:n.areMetricZeroColor}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi,16))}}static{this.\u0275pipe=o.EJ8({name:"mapTreeViewItemIconColor",type:n,pure:!1,standalone:!0})}}return n})(),Rge=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view-item-icon"]],inputs:{node:"node",isOpen:"isOpen"},standalone:!0,features:[o.aNF],decls:3,vars:9,consts:[["role","img","aria-hidden","true"]],template:function(i,r){1&i&&(o.nrm(0,"span",0),o.nI1(1,"mapTreeViewItemIconClass"),o.nI1(2,"mapTreeViewItemIconColor")),2&i&&(o.HbH(o.i5U(1,4,r.node,r.isOpen)),o.xc7("color",o.bMT(2,7,r.node)))},dependencies:[Bge,kge],encapsulation:2})}}return n})();const Pge=sn(Fd,n=>n.unifiedMapNode?.attributes.unary);let OX=(()=>{class n{transform(e){return Ro(e)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"isNodeLeaf",type:n,pure:!0,standalone:!0})}}return n})();function Oge(n,t){if(1&n&&(o.j41(0,"span"),o.EFF(1),o.nI1(2,"async"),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.SpI("",(100*e.unaryValue/o.bMT(2,1,e.rootUnary$)).toFixed(0),"%")}}function Nge(n,t){1&n&&o.EFF(0,"File")}function Lge(n,t){1&n&&o.EFF(0,"Files")}function Uge(n,t){if(1&n&&(o.j41(0,"span",2),o.EFF(1),o.DNE(2,Nge,1,0,"ng-template",3)(3,Lge,1,0,"ng-template",4),o.k0s()),2&n){const e=o.XpG(2);o.Y8G("ngPlural",e.unaryValue),o.R7$(),o.SpI(" ",e.unaryValue," ")}}function Vge(n,t){if(1&n&&(o.j41(0,"span",1),o.DNE(1,Oge,3,3,"span")(2,Uge,4,2,"span",2),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.vxM(e.isHovered?2:1)}}let Hge=(()=>{class n{constructor(e){this.searchedNodePaths$=e.select(LU),this.rootUnary$=e.select(Pge),this.areaMetric$=e.select(hv)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view-item-name"]],inputs:{node:"node",isHovered:"isHovered",unaryValue:"unaryValue",unaryPercentage:"unaryPercentage"},standalone:!0,features:[o.aNF],decls:7,vars:17,consts:[[1,"node-name"],[1,"unary-number"],[3,"ngPlural"],["ngPluralCase","=1"],["ngPluralCase","other"]],template:function(i,r){1&i&&(o.j41(0,"span",0),o.nI1(1,"async"),o.nI1(2,"areaMetricValid"),o.nI1(3,"async"),o.EFF(4),o.k0s(),o.DNE(5,Vge,3,1,"span",1),o.nI1(6,"isNodeLeaf")),2&i&&(o.AVh("flattened",r.node.isFlattened)("noAreaMetric",!o.i5U(2,10,r.node,o.bMT(1,8,r.areaMetric$)))("tree-search-result",o.bMT(3,13,r.searchedNodePaths$).has(r.node.path)),o.R7$(4),o.SpI(" ",r.node.name,"\n"),o.R7$(),o.vxM(o.bMT(6,15,r.node)?-1:5))},dependencies:[No,ia,zn,PX,OX],styles:[".unary-number[_ngcontent-%COMP%]{color:#a3a3a3;font-size:.8em;margin-top:1px}.node-name.flattened[_ngcontent-%COMP%]{color:gray}.node-name.noAreaMetric[_ngcontent-%COMP%]{color:#bdbdbd}.tree-search-result[_ngcontent-%COMP%]{background-color:#fc801bab}"]})}}return n})();function Qge(n,t){1&n&&o.nrm(0,"i",1)}let zge=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view-item-option-buttons"]],inputs:{isFlattened:"isFlattened",openNodeContextMenu:"openNodeContextMenu"},standalone:!0,features:[o.aNF],decls:5,vars:1,consts:[["role","button","aria-hidden","true",1,"right-aligned"],["title","Flattened",1,"flattened","fa","fa-eye-slash"],[1,"small-action-button"],["title","Open Node-Context-Menu",3,"click"],[1,"fa","fa-ellipsis-h"]],template:function(i,r){1&i&&(o.j41(0,"span",0),o.DNE(1,Qge,1,0,"i",1),o.j41(2,"div",2)(3,"button",3),o.bIt("click",function(l){return r.openNodeContextMenu(l)}),o.nrm(4,"i",4),o.k0s()()()),2&i&&(o.R7$(),o.vxM(r.isFlattened?1:-1))},styles:["button[_ngcontent-%COMP%]{display:inline-block;height:19px;width:24px;min-height:0;margin:0;background-color:transparent;box-shadow:none;vertical-align:top}button[_ngcontent-%COMP%]:hover{background-color:#ddd;color:#000000de}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{position:absolute;top:2px;left:6px}.right-aligned[_ngcontent-%COMP%]{position:absolute;right:6px}.right-aligned[_ngcontent-%COMP%] i.flattened[_ngcontent-%COMP%]{color:gray}"]})}}return n})();function Gge(n,t){if(1&n&&o.nrm(0,"cc-map-tree-view-item-option-buttons",4),2&n){const e=o.XpG(2);o.Y8G("isFlattened",e.node.isFlattened)("openNodeContextMenu",e.openNodeContextMenu)}}function jge(n,t){if(1&n&&(o.j41(0,"div"),o.nrm(1,"cc-map-tree-view-level",5),o.k0s()),2&n){const e=t.$implicit,i=o.XpG(3);o.R7$(),o.Y8G("node",e)("depth",i.depth+1)}}function $ge(n,t){if(1&n&&o.Z7z(0,jge,2,2,"div",null,o.fX1),2&n){const e=o.XpG(2);o.Dyx(e.node.children)}}function qge(n,t){if(1&n){const e=o.RV6();o.j41(0,"div"),o.nI1(1,"isNodeLeaf"),o.j41(2,"div",1),o.nI1(3,"async"),o.nI1(4,"async"),o.nI1(5,"async"),o.nI1(6,"areaMetricValid"),o.bIt("mouseenter",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.onMouseEnter())})("mouseleave",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.onMouseLeave())})("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.onClick())})("contextmenu",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.openNodeContextMenu(r))}),o.nrm(7,"cc-map-tree-view-item-icon",2)(8,"cc-map-tree-view-item-name",3),o.nI1(9,"async"),o.DNE(10,Gge,1,2,"cc-map-tree-view-item-option-buttons",4),o.nI1(11,"async"),o.nI1(12,"async"),o.nI1(13,"areaMetricValid"),o.k0s(),o.j41(14,"div"),o.DNE(15,$ge,2,0),o.k0s()()}if(2&n){let e;const i=o.XpG();o.STu("tree-element-",i.depth," ",o.bMT(1,23,i.node)?"tree-leaf":"tree-parent",""),o.R7$(2),o.ZvI("tree-element-label-",i.depth," tree-element-label"),o.AVh("hovered",o.bMT(3,25,i.hoveredNodeId$)===i.node.id)("marked",(null==(e=o.bMT(4,27,i.rightClickedNodeData$))?null:e.nodeId)===i.node.id),o.FS9("id",i.node.path),o.Y8G("title",o.i5U(6,31,i.node,o.bMT(5,29,i.areaMetric$))?"":"No Node Area for Chosen Metric"),o.R7$(5),o.Y8G("node",i.node)("isOpen",i.isOpen),o.R7$(),o.Y8G("node",i.node)("isHovered",o.bMT(9,34,i.hoveredNodeId$)===i.node.id)("unaryValue",i.node.attributes.unary),o.R7$(2),o.vxM(o.bMT(11,36,i.hoveredNodeId$)===i.node.id&&o.i5U(13,40,i.node,o.bMT(12,38,i.areaMetric$))?10:-1),o.R7$(4),o.ZvI("tree-element-children tree-element-children-",i.depth,""),o.R7$(),o.vxM(i.isOpen?15:-1)}}let Wge=(()=>{class n{constructor(e,i,r,s,l){this.store=e,this.threeSceneService=i,this.idToBuildingService=r,this.threeRendererService=s,this.codeMapMouseEventService=l,this.hoveredNodeId$=this.store.select(md),this.rightClickedNodeData$=this.store.select(RX),this.areaMetric$=this.store.select(hv),this.isOpen=!1,this.areMetricValid=!1,this.openNodeContextMenu=u=>{u.preventDefault(),u.stopPropagation(),this.areaMetric$.subscribe(f=>this.areMetricValid=H7(this.node,f)).unsubscribe(),this.areMetricValid&&(this.store.dispatch(hx({value:{nodeId:this.node.id,xPositionOfRightClickEvent:u.clientX,yPositionOfRightClickEvent:u.clientY}})),document.querySelector(".tree-element-0").addEventListener("scroll",this.scrollFunction))},this.scrollFunction=()=>{this.store.dispatch(hx({value:null})),document.querySelector(".tree-element-0").removeEventListener("scroll",this.scrollFunction)}}ngOnInit(){this.isOpen=0===this.depth}onMouseEnter(){const e=this.idToBuildingService.get(this.node.id),i=this.threeSceneService.labels?.children;this.codeMapMouseEventService.setLabelHoveredLeaf(e,i),this.codeMapMouseEventService.hoverNode(this.node.id),this.store.dispatch(ux({value:this.node.id}))}onMouseLeave(){this.threeSceneService.resetLabel(),this.codeMapMouseEventService.unhoverNode(),this.codeMapMouseEventService.clearLabelHoveredBuilding(),this.store.dispatch(ux({value:null}))}onClick(){this.isOpen=!this.isOpen;const e=this.idToBuildingService.get(this.node.id);this.codeMapMouseEventService.drawLabelSelectedBuilding(e),this.threeSceneService.selectBuilding(e),this.threeSceneService.clearConstantHighlight(),this.threeRendererService.render()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Dd),o.rXU(PS),o.rXU(wr),o.rXU(F2))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view-level"]],inputs:{node:"node",depth:"depth"},standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[3,"class"],[3,"mouseenter","mouseleave","click","contextmenu","id","title"],[3,"node","isOpen"],[3,"node","isHovered","unaryValue"],[3,"isFlattened","openNodeContextMenu"],[3,"node","depth"]],template:function(i,r){1&i&&o.DNE(0,qge,16,43,"div",0),2&i&&o.vxM(r.node.isExcluded?-1:0)},dependencies:[n,Rge,Hge,zge,zn,PX,OX],styles:["[_nghost-%COMP%]{white-space:nowrap}.tree-element-label[_ngcontent-%COMP%]{cursor:default}.tree-element-label[_ngcontent-%COMP%]:focus{outline:none}.tree-element-label[_ngcontent-%COMP%]:hover, .tree-element-label.hovered[_ngcontent-%COMP%]{background-color:#efefef;border-radius:2px;cursor:pointer}.tree-element-label.marked[_ngcontent-%COMP%]{background-color:#efefef;border-radius:2px}.tree-element-0[_ngcontent-%COMP%]{overflow-y:auto;max-height:400px;margin-left:3px;margin-top:10px}.tree-element-0[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{margin:0;padding:0;position:relative}.tree-element-0[_ngcontent-%COMP%] .tree-element-children[_ngcontent-%COMP%]{margin-left:19px;margin-right:4px}"]})}}return n})();function Xge(n,t){1&n&&o.nrm(0,"cc-map-tree-view-level",0),2&n&&o.Y8G("node",t)("depth",0)}let Kge=(()=>{class n{constructor(e){this.mapTreeViewNode$=e.select(Dge)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-map-tree-view"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"node","depth"]],template:function(i,r){if(1&i&&(o.DNE(0,Xge,1,2,"cc-map-tree-view-level",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.mapTreeViewNode$))?0:-1,s)}},dependencies:[Wge,zn],encapsulation:2})}}return n})(),Yge=(()=>{class n{constructor(e){this.store=e,this.searchPanelMode="minimized",this.updateSearchPanelMode=i=>{this.searchPanelMode=this.searchPanelMode===i?"minimized":i,this.panelRef.isExpanded="minimized"!==this.searchPanelMode}}ngOnInit(){this.isSearchPanelPinnedSubscription=this.store.select(hX).subscribe(e=>{this.isSearchPanelPinned=e})}ngOnDestroy(){this.isSearchPanelPinnedSubscription.unsubscribe()}openSearchPanel(){this.searchPanelMode="treeView",this.panelRef.isExpanded=!0}onToggleSettings(e){this.searchPanelMode=e?"treeView":"minimized"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-search-panel"]],viewQuery:function(i,r){if(1&i&&o.GBs(O7,5),2&i){let s;o.mGM(s=o.lsd())&&(r.panelRef=s.first)}},standalone:!0,features:[o.aNF],decls:7,vars:7,consts:[["title","File/Node Explorer",3,"onToggleSettings","isPinned","collapseOnPanelClick"],[3,"click"],[3,"searchPanelMode","updateSearchPanelMode"],[3,"hidden"]],template:function(i,r){1&i&&(o.j41(0,"cc-ribbon-bar-panel",0),o.bIt("onToggleSettings",function(l){return r.onToggleSettings(l)}),o.j41(1,"cc-search-bar",1),o.bIt("click",function(){return r.openSearchPanel()}),o.k0s(),o.nrm(2,"cc-search-panel-mode-selector",2),o.j41(3,"cc-ribbon-bar-panel-settings"),o.nrm(4,"cc-blacklist-panel",3)(5,"cc-matching-files-counter",3)(6,"cc-map-tree-view",3),o.k0s()()),2&i&&(o.Y8G("isPinned",r.isSearchPanelPinned)("collapseOnPanelClick",!1),o.R7$(2),o.Y8G("searchPanelMode",r.searchPanelMode)("updateSearchPanelMode",r.updateSearchPanelMode),o.R7$(2),o.Y8G("hidden","blacklist"!==r.searchPanelMode),o.R7$(),o.Y8G("hidden","treeView"!==r.searchPanelMode),o.R7$(),o.Y8G("hidden","treeView"!==r.searchPanelMode))},dependencies:[O7,Mme,kme,P7,_ge,Mge,Kge],styles:["cc-search-panel[_ngcontent-%COMP%] .search-panel-card[_ngcontent-%COMP%]{border-left:none;width:100%}cc-search-panel[_ngcontent-%COMP%] .search-panel-card[_ngcontent-%COMP%] .section-body[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:6px;position:absolute;top:45px;background:#fff;border:1px solid #b5b5b5;box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}cc-search-panel[_ngcontent-%COMP%] .search-panel-card[_ngcontent-%COMP%] .section-body.hidden[_ngcontent-%COMP%]{display:none;pointer-events:none}"]})}}return n})();const Zge=["*"];let tP=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-ribbon-bar-menu-button"]],inputs:{icon:"icon",title:"title"},standalone:!0,features:[o.aNF],ngContentSelectors:Zge,decls:3,vars:3,consts:[[3,"title"]],template:function(i,r){1&i&&(o.NAR(),o.j41(0,"button",0),o.nrm(1,"i"),o.SdG(2),o.k0s()),2&i&&(o.Y8G("title",r.title),o.R7$(),o.HbH("fa "+r.icon))},styles:["button[_ngcontent-%COMP%]{height:22px;line-height:22px;min-width:45px;margin:0;padding:0;font-size:9pt;background-color:#e6e6e6f5;color:#444}button[_ngcontent-%COMP%]:hover{background-color:#c8c8c8}"]})}}return n})();const Jge=JSON.parse('[{"name":"Complexity","settings":{"appSettings":{},"dynamicSettings":{"areaMetric":"rloc","heightMetric":"sonar_complexity","colorMetric":"sonar_complexity","distributionMetric":"rloc"}}},{"name":"Average Complexity*","settings":{"appSettings":{},"dynamicSettings":{"areaMetric":"unary","heightMetric":"Average Complexity*","colorMetric":"Average Complexity*","distributionMetric":"unary"}}},{"name":"Coverage","settings":{"appSettings":{},"dynamicSettings":{"areaMetric":"rloc","heightMetric":"sonar_complexity","colorMetric":"line_coverage","distributionMetric":"rloc"}}},{"name":"Code Churn","settings":{"appSettings":{},"dynamicSettings":{"areaMetric":"rloc","heightMetric":"abs_code_churn","colorMetric":"weeks_with_commits","distributionMetric":"rloc"}}}]');class eA{static{this.SCENARIOS_LOCAL_STORAGE_VERSION="1.0.0"}static{this.SCENARIOS_LOCAL_STORAGE_ELEMENT="scenarios"}static{this.scenarios=eA.loadScenarios()}static getScenarioItems(t){const e=[];for(const i of this.scenarios.values())e.push({scenarioName:i.name,isScenarioApplicable:this.isScenarioApplicable(i,t),icons:[{faIconClass:"fa-video-camera",isSaved:!!i.camera,tooltip:"Camera angle"},{faIconClass:"fa-arrows-alt",isSaved:!!i.area,tooltip:"Area metric"},{faIconClass:"fa-arrows-v",isSaved:!!i.height,tooltip:"Height metric"},{faIconClass:"fa-paint-brush",isSaved:!!i.color,tooltip:"Color metric"},{faIconClass:"fa-exchange",isSaved:!!i.edge,tooltip:"Edge metric"}]});return e}static isScenarioApplicable(t,e){const{area:i,color:r,height:s,edge:l}=t;if(i||r||s){const u=new Set(e.nodeMetricData.map(f=>f.name));if(i&&!u.has(i.areaMetric)||r&&!u.has(r.colorMetric)||s&&!u.has(s.heightMetric))return!1}return!(l&&!e.edgeMetricData.some(u=>u.name===l.edgeMetric))}static getPreLoadScenarios(){const t=this.importScenarios(Jge),e=new Map;for(const i of t)e.set(i.name,this.transformScenarioAsSettingsToScenario(i));return e}static transformScenarioAsSettingsToScenario(t){const e={name:t.name},{dynamicSettings:i,appSettings:r}=t.settings;return void 0!==i.areaMetric&&(e.area={areaMetric:i.areaMetric,margin:i.margin}),void 0!==i.heightMetric&&(e.height={heightMetric:i.heightMetric,labelSlider:r.amountOfTopLabels,heightSlider:r.scaling}),void 0!==i.colorMetric&&(e.color={colorMetric:i.colorMetric,colorRange:i.colorRange,mapColors:r.mapColors}),void 0!==i.edgeMetric&&(e.edge={edgeMetric:i.edgeMetric,edgeHeight:r.edgeHeight,edgePreview:r.amountOfEdgePreviews}),e}static setScenariosToLocalStorage(t){const e={version:this.SCENARIOS_LOCAL_STORAGE_VERSION,scenarios:[...t]};localStorage.setItem(this.SCENARIOS_LOCAL_STORAGE_ELEMENT,JSON.stringify(e))}static loadScenarios(){const t=JSON.parse(localStorage.getItem(this.SCENARIOS_LOCAL_STORAGE_ELEMENT));if(t)return new Map(t.scenarios);const e=this.getPreLoadScenarios();return this.setScenariosToLocalStorage(e),e}static addScenario(t,e){const i=eA.createNewScenario(t,e);this.scenarios.set(i.name,i),this.setScenariosToLocalStorage(this.scenarios)}static createNewScenario(t,e){const i={name:t};for(const r of e.filter(s=>s.isSelected))switch(r.metricType){case"Camera-Position":i.camera={camera:r.savedValues.camera,cameraTarget:r.savedValues.cameraTarget};break;case"Area-Metric":i.area={areaMetric:r.metricName,margin:r.savedValues};break;case"Height-Metric":i.height={heightMetric:r.metricName,heightSlider:r.savedValues.heightSlider,labelSlider:r.savedValues.labelSlider};break;case"Color-Metric":i.color={colorMetric:r.metricName,colorRange:r.savedValues.colorRange,mapColors:r.savedValues.mapColors};break;case"Edge-Metric":i.edge={edgeMetric:r.metricName,edgePreview:r.savedValues.edgePreview,edgeHeight:r.savedValues.edgeHeight};break;default:throw new Error(`Unknown metric type "${r.metricType}" detected`)}return i}static deleteScenario(t){this.scenarios.delete(t),this.setScenariosToLocalStorage(this.scenarios)}static getScenarioSettings(t){const e={},i={};return t&&(t.area&&(e.areaMetric=t.area.areaMetric,e.margin=t.area.margin),t.height&&(e.heightMetric=t.height.heightMetric,i.amountOfTopLabels=t.height.labelSlider,i.scaling=t.height.heightSlider),t.color&&(e.colorMetric=t.color.colorMetric,e.colorRange=t.color.colorRange,i.mapColors=t.color.mapColors),t.edge&&(e.edgeMetric=t.edge.edgeMetric,i.edgeHeight=t.edge.edgeHeight,i.amountOfEdgePreviews=t.edge.edgePreview)),{appSettings:i,dynamicSettings:e}}static importScenarios(t){for(const e of t)M7(e.settings),e.camera&&(e.camera.camera=new pe(e.camera.camera.x,e.camera.camera.y,e.camera.camera.z),e.camera.cameraTarget=new pe(e.camera.camera.x,e.camera.camera.y,e.camera.camera.z));return t}static isScenarioExisting(t){return this.scenarios.has(t)}}function n0e(n,t){if(1&n&&(o.j41(0,"mat-error"),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.JRh(e.scenarioName.getError("Error"))}}function i0e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-slide-toggle",6),o.bIt("change",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.handleScenarioMetricPropertySelectionChange(r))}),o.EFF(1),o.k0s()}if(2&n){const e=t.$implicit;o.Y8G("checked",e.isSelected),o.R7$(),o.SpI(" ",e.metricName?e.metricType+" ("+e.metricName+")":e.metricType," ")}}function r0e(n,t){1&n&&(o.j41(0,"mat-error"),o.EFF(1,"You cannot create an empty Scenario."),o.k0s())}let o0e=(()=>{class n{constructor(e,i,r){this.state=e,this.scenarioName=new g$("",[n=>0===n.value.length?{Error:"Scenario name is required"}:eA.isScenarioExisting(n.value)?{Error:"A Scenario with this name already exists"}:null]),this.areAnyScenarioMetricPropertiesSelected=!0,this.scenarioContent=((n,t)=>{const{dynamicSettings:e,appSettings:i,fileSettings:r}=n,s=[{metricType:"Camera-Position",metricName:"",savedValues:{...t},isSelected:!0,isDisabled:!1},{metricType:"Area-Metric",metricName:e.areaMetric,savedValues:e.margin,isSelected:!0,isDisabled:!1},{metricType:"Height-Metric",metricName:e.heightMetric,savedValues:{heightSlider:i.scaling,labelSlider:i.amountOfTopLabels},isSelected:!0,isDisabled:!1},{metricType:"Color-Metric",metricName:e.colorMetric,savedValues:{colorRange:e.colorRange,mapColors:i.mapColors},isSelected:!0,isDisabled:!1}];return r.edges.length>0&&s.push({metricType:"Edge-Metric",metricName:e.edgeMetric,savedValues:{edgePreview:i.amountOfEdgePreviews,edgeHeight:i.edgeHeight},isSelected:!0,isDisabled:!1}),s})(this.state.getValue(),{camera:i.camera.position.clone(),cameraTarget:r.controls.target.clone()})}handleScenarioMetricPropertySelectionChange(e){e.isSelected=!e.isSelected,this.areAnyScenarioMetricPropertiesSelected=this.scenarioContent.some(i=>i.isSelected)}addCustomScenario(){eA.addScenario(this.scenarioName.value,this.scenarioContent)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi),o.rXU($h),o.rXU(Rd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-add-custom-scenario-dialog"]],standalone:!0,features:[o.aNF],decls:19,vars:4,consts:[["xmlns","http://www.w3.org/1999/html",1,"header"],["subscriptSizing","dynamic"],["matInput","",3,"formControl"],[1,"cc-add-custom-scenario-toggles"],[3,"checked"],["mat-flat-button","","mat-dialog-close","",3,"click","disabled"],[3,"change","checked"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0)(1,"h2"),o.EFF(2,"Add Scenario"),o.k0s()(),o.j41(3,"mat-dialog-content")(4,"p")(5,"mat-form-field",1)(6,"mat-label"),o.EFF(7,"Scenario Name"),o.k0s(),o.nrm(8,"input",2),o.DNE(9,n0e,2,1,"mat-error"),o.k0s()(),o.j41(10,"p"),o.EFF(11,"The scenario includes:"),o.k0s(),o.j41(12,"div",3),o.Z7z(13,i0e,2,2,"mat-slide-toggle",4,o.fX1),o.DNE(15,r0e,2,0,"mat-error"),o.k0s()(),o.j41(16,"mat-dialog-actions")(17,"button",5),o.bIt("click",function(){return r.addCustomScenario()}),o.EFF(18," ADD "),o.k0s()()),2&i&&(o.R7$(8),o.Y8G("formControl",r.scenarioName),o.R7$(),o.vxM(r.scenarioName.invalid?9:-1),o.R7$(4),o.Dyx(r.scenarioContent),o.R7$(2),o.vxM(r.areAnyScenarioMetricPropertiesSelected?-1:15),o.R7$(2),o.Y8G("disabled",r.scenarioName.invalid||!r.areAnyScenarioMetricPropertiesSelected))},dependencies:[Zg,Al,Lu,Nu,t0,ZS,Xg,Jw,N$,oR,V$,JS,Zl,ns,Ta],styles:[".cc-add-custom-scenario-toggles[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}mat-slide-toggle[_ngcontent-%COMP%]{display:block}"]})}}return n})();const nP=n=>{const e=Math.round((n.maxValue-n.minValue)/3);return{from:e+n.minValue,to:2*e+n.minValue}};let NX=(()=>{class n{constructor(e,i,r,s,l){this.state=e,this.store=i,this.dialog=r,this.threeCameraService=s,this.threeOrbitControlsService=l}getScenarios(){return eA.getScenarioItems(ka(this.state.getValue()))}applyScenario(e){const i=eA.scenarios.get(e),r=eA.getScenarioSettings(i);this.store.dispatch(hu({value:r})),r.appSettings.amountOfTopLabels||this.store.select(jR).pipe(r2()).subscribe(s=>{const l=E7(s);this.store.dispatch(r0({value:l}))}),r.appSettings.mapColors||this.store.dispatch(Hp({value:qh})),r.appSettings.edgeHeight||this.store.dispatch(ax({value:4})),r.appSettings.amountOfEdgePreviews||this.store.dispatch(M2({value:1})),r.appSettings.scaling||this.store.dispatch(lx({value:UR})),r.dynamicSettings.colorRange||this.store.select(Vp).pipe(r2()).subscribe(s=>{this.store.dispatch(Zh({value:nP(s)}))}),r.dynamicSettings.margin||this.store.dispatch(cx({value:50})),r.dynamicSettings.edgeMetric||this.store.select(ka).pipe(r2()).subscribe(s=>{this.store.dispatch($p({value:s.edgeMetricData[0]?.name}))}),i.camera&&(this.threeCameraService.setPosition(i.camera.camera),this.threeOrbitControlsService.setControlTarget(i.camera.cameraTarget),this.threeOrbitControlsService.updateControls())}removeScenario(e){"Complexity"!==e?(eA.deleteScenario(e),this.dialog.open(lu,{data:{title:"Info",message:`${e} deleted.`}})):this.dialog.open(lu,{data:{title:"Error",message:`${e} cannot be deleted as it is the default Scenario.`}})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Vi),o.KVO(Yt),o.KVO(Es),o.KVO($h),o.KVO(Rd))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function s0e(n,t){if(1&n&&(o.j41(0,"span",5),o.nrm(1,"i"),o.k0s()),2&n){const e=t.$implicit;o.Y8G("title",e.tooltip),o.R7$(),o.ZvI("fa ",e.faIconClass,""),o.AVh("cc-is-saved",e.isSaved)}}function a0e(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",0)(1,"button",4),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.scenarioService.applyScenario(r.scenarioName))}),o.EFF(2),o.k0s(),o.Z7z(3,s0e,2,6,"span",5,o.fX1),o.j41(5,"button",6),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.scenarioService.removeScenario(r.scenarioName))}),o.nrm(6,"i",7),o.k0s()()}if(2&n){const e=t.$implicit;o.R7$(),o.Y8G("disabled",!e.isScenarioApplicable),o.R7$(),o.SpI(" ",e.scenarioName," "),o.R7$(),o.Dyx(e.icons)}}let l0e=(()=>{class n{constructor(e,i){this.scenarioService=e,this.dialog=i,this.scenarios=[]}addScenario(){this.dialog.open(o0e,{panelClass:"cc-add-custom-scenario"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(NX),o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-scenarios"]],inputs:{scenarios:"scenarios"},standalone:!0,features:[o.aNF],decls:8,vars:0,consts:[[1,"cc-row"],["disabled","",1,"cc-apply-scenario-button"],["title","Create a custom scenario",1,"cc-action-button","cc-add",3,"click"],[1,"fa","fa-plus"],["title","Apply scenario",1,"cc-apply-scenario-button",3,"click","disabled"],[1,"cc-scenario-content-icons",3,"title"],["title","Remove custom scenario",1,"cc-action-button","cc-remove",3,"click"],[1,"fa","fa-minus-square"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"button",1),o.EFF(2,"Metric Scenarios"),o.k0s(),o.j41(3,"button",2),o.bIt("click",function(){return r.addScenario()}),o.nrm(4,"i",3),o.k0s()(),o.nrm(5,"mat-divider"),o.Z7z(6,a0e,7,2,"div",0,o.fX1)),2&i&&(o.R7$(6),o.Dyx(r.scenarios))},dependencies:[L7],styles:[".cc-row[_ngcontent-%COMP%]{display:flex;height:48px;align-items:center}.cc-row[_ngcontent-%COMP%] [disabled][_ngcontent-%COMP%]{color:#00000061}.cc-row[_ngcontent-%COMP%] .cc-apply-scenario-button[_ngcontent-%COMP%]{padding-left:16px;padding-right:16px;height:100%;flex:1;text-align:left;background-color:unset}.cc-row[_ngcontent-%COMP%] .cc-apply-scenario-button[_ngcontent-%COMP%]:hover:not([disabled]){background-color:#9e9e9e33}.cc-row[_ngcontent-%COMP%] .cc-action-button[_ngcontent-%COMP%]{width:52px;height:100%;display:inline-flex;justify-content:center;align-items:center}.cc-row[_ngcontent-%COMP%] .cc-action-button.cc-add[_ngcontent-%COMP%]{background-color:#1b9cfc}.cc-row[_ngcontent-%COMP%] .cc-action-button.cc-remove[_ngcontent-%COMP%]{border-left:1px solid rgba(0,0,0,.12);color:#b30000;background-color:unset}.cc-row[_ngcontent-%COMP%] .cc-action-button.cc-remove[_ngcontent-%COMP%]:hover:not([disabled]){background-color:#9e9e9e33}.cc-row[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:x-small}.cc-row[_ngcontent-%COMP%] .cc-scenario-content-icons[_ngcontent-%COMP%]{padding:0 8px;color:#d3d3d3}.cc-row[_ngcontent-%COMP%] .cc-scenario-content-icons[_ngcontent-%COMP%] i.fa.cc-is-saved[_ngcontent-%COMP%]{color:#000}"]})}}return n})(),c0e=(()=>{class n{constructor(e){this.scenarioService=e,this.scenarios=[]}loadScenarios(){this.scenarios=this.scenarioService.getScenarios()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(NX))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-show-scenarios-button"]],standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[["menu","matMenu"],["icon","fa-star",3,"click","title","matMenuTriggerFor"],[1,"cc-scenarios-menu"],[3,"scenarios"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"cc-ribbon-bar-menu-button",1),o.bIt("click",function(){return o.eBV(s),o.Njj(r.loadScenarios())}),o.k0s(),o.j41(1,"mat-menu",2,0),o.nrm(3,"cc-scenarios",3),o.k0s()}if(2&i){const s=o.sdS(2);o.Y8G("title","Open the scenario list")("matMenuTriggerFor",s),o.R7$(3),o.Y8G("scenarios",r.scenarios)}},dependencies:[tP,rx,Yh,l0e],styles:["[_nghost-%COMP%]{display:flex;justify-content:center}"]})}}return n})(),d0e=(()=>{class n{upload(){const e=fM();e.addEventListener("change",()=>{this.uploadOnEvent(e)}),e.click()}uploadOnEvent(e){return Mn(function*(){const i=yield Promise.all(L1(e.files));for(const r of i)try{mr.importCustomConfigs(r)}catch{}})()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-upload-custom-config-button"]],standalone:!0,features:[o.aNF],decls:2,vars:0,consts:[["title","Upload Custom View (.cc.config.json file).",1,"action-button",3,"click"],[1,"fa","fa-folder-open"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.upload()}),o.nrm(1,"i",1),o.k0s())},styles:["button[_ngcontent-%COMP%]{margin:0 3px;min-width:12%;height:48px;width:48px;border-radius:100%;line-height:48px;background-color:#fff;color:#1b9cfc}button[_ngcontent-%COMP%]:disabled, button[disabled][_ngcontent-%COMP%]{background-color:#e6e6e6;color:#ccc}button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12px;margin-left:0}"]})}}return n})();function A0e(n,t){return[...n.keys()].some(i=>t.has(i))}var iP=function(n){return n.MULTIPLE="STANDARD",n.DELTA="DELTA",n}(iP||{});const B2=sn(uc,n=>{const t=new Map;let e;for(const{selectedAs:i,file:r}of n)e=i===At.Partial?iP.MULTIPLE:iP.DELTA,t.set(r.fileMeta.fileChecksum,r.fileMeta.fileName);return{mapSelectionMode:e,assignedMaps:t}});let LX=(()=>{class n{constructor(e){this.store=e,this.downloadableCustomConfigs$=d0([this.store.select(B2),mr.customConfigChange$]).pipe((0,qn.T)(([i])=>(({assignedMaps:n})=>{const t=new Map,e=mr.getCustomConfigs();for(const[i,r]of e.entries())A0e(r.assignedMaps,n)&&t.set(i,mr.createExportCustomConfigFromConfig(r));return t})(i))),this.customConfigItemGroups$=d0([this.store.select(B2),mr.customConfigChange$]).pipe((0,qn.T)(([i])=>function m0e({assignedMaps:n}){const t={applicableItems:new Map,nonApplicableItems:new Map},e=new Map;for(const i of mr.loadCustomConfigsFromLocalStorage().values()){const r=[...i.assignedMaps.values()],s=`${r.join("_")}_${i.mapSelectionMode}`,l=[...i.assignedMaps.keys()].some(I=>n.has(I));e.has(s)||e.set(s,{mapNames:r.join(" "),mapSelectionMode:i.mapSelectionMode,hasApplicableItems:l,customConfigItems:[]});const{positive:u,neutral:f,negative:p,selected:m,positiveDelta:_,negativeDelta:b}=i.stateSettings.appSettings.mapColors,{areaMetric:w,heightMetric:F,colorMetric:D,edgeMetric:T}=i.stateSettings.dynamicSettings;e.get(s).customConfigItems.push({id:i.id,name:i.name,assignedMaps:i.assignedMaps,mapSelectionMode:i.mapSelectionMode,metrics:{areaMetric:w,heightMetric:F,colorMetric:D,edgeMetric:T},mapColors:{positive:u,neutral:f,negative:p,selected:m,positiveDelta:_,negativeDelta:b},isApplicable:l,...i.note&&{note:i.note}}),e.get(s).hasApplicableItems?t.applicableItems.set(s,e.get(s)):t.nonApplicableItems.set(s,e.get(s))}return t}(i)))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),g0e=(()=>{class n{constructor(e){this.downloadCustomConfigService=e}ngOnInit(){this.subscription=this.downloadCustomConfigService.downloadableCustomConfigs$.subscribe(e=>{this.downloadableConfigs=e})}ngOnDestroy(){this.subscription.unsubscribe()}downloadPreloadedCustomConfigs(){!function f0e(n){const t={downloadApiVersion:"1.0.1",timestamp:Date.now(),customConfigs:n},e=uu.getNewTimestamp()+".cc.config.json";Lm.downloadData(JSON.stringify(t,im),e)}(this.downloadableConfigs)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(LX))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-download-custom-configs-button"]],standalone:!0,features:[o.aNF],decls:2,vars:1,consts:[["title","Download Custom View related to currently uploaded maps, if any.",3,"click","disabled"],[1,"fa","fa-download"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.downloadPreloadedCustomConfigs()}),o.nrm(1,"i",1),o.k0s()),2&i&&o.Y8G("disabled",0===r.downloadableConfigs.size)},styles:["button[_ngcontent-%COMP%]{margin:0 3px;min-width:12%;height:48px;width:48px;border-radius:100%;line-height:48px;background-color:#fff;color:#1b9cfc}button[_ngcontent-%COMP%]:disabled, button[disabled][_ngcontent-%COMP%]{background-color:#e6e6e6;color:#ccc}button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12px;margin-left:0}"]})}}return n})();function b0e(n,t,e,i){const{mapSelectionMode:r,assignedMaps:s}=B2(t),l={id:"",name:n,creationTime:Date.now(),mapSelectionMode:r,assignedMaps:s,customConfigVersion:"1.0.0",stateSettings:{appSettings:void 0,dynamicSettings:void 0,fileSettings:void 0},camera:e,...i&&{note:i}};return function v0e(n){n.stateSettings.appSettings={showMetricLabelNameValue:!1,showMetricLabelNodeName:!1,colorLabels:{positive:!1,negative:!1,neutral:!1},amountOfEdgePreviews:0,amountOfTopLabels:0,edgeHeight:0,hideFlatBuildings:!1,invertHeight:!1,invertArea:!1,isLoadingFile:!1,isLoadingMap:!1,isPresentationMode:!1,isWhiteBackground:!1,resetCameraIfNewFileIsLoaded:!1,scaling:void 0,showOnlyBuildingsWithEdges:!1,isEdgeMetricVisible:!0,sortingOrderAscending:!1,isSearchPanelPinned:!1,experimentalFeaturesEnabled:!1,screenshotToClipboardEnabled:!1,layoutAlgorithm:void 0,maxTreeMapFiles:0,sharpnessMode:void 0,isColorMetricLinkedToHeightMetric:!1,enableFloorLabels:!0,mapColors:{labelColorAndAlpha:{alpha:0,rgb:""},base:"",flat:"",incomingEdge:"",markingColors:[],negative:"",negativeDelta:"",neutral:"",outgoingEdge:"",positive:"",positiveDelta:"",selected:""}}}(l),function y0e(n){n.stateSettings.dynamicSettings={areaMetric:"",colorMetric:"",distributionMetric:"",edgeMetric:"",focusedNodePath:[],heightMetric:"",margin:0,searchPattern:"",sortingOption:void 0,colorRange:{from:0,to:0},colorMode:void 0}}(l),function w0e(n){n.stateSettings.fileSettings={blacklist:void 0,edges:[],attributeDescriptors:{},markedPackages:[]}}(l),UX(t,l.stateSettings),l.id=O_()(JSON.stringify(l,im)),l}function UX(n,t){for(const[e,i]of Object.entries(n))Object.prototype.hasOwnProperty.call(t,e)&&("object"!=typeof i||Array.isArray(i)||null===i||void 0===t[e]?t[e]=i:UX(i,t[e]))}let x0e=(()=>{class n{constructor(e){this.data=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tp))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-confirmation-dialog"]],standalone:!0,features:[o.aNF],decls:10,vars:4,consts:[[1,"confirmation-message"],["mat-dialog-title",""],["mat-dialog-content",""],["mat-dialog-actions",""],["mat-button","",3,"mat-dialog-close"],["mat-button","","cdkFocusInitial","",1,"submit-button",3,"mat-dialog-close"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"h1",1),o.EFF(2),o.k0s(),o.j41(3,"div",2),o.EFF(4),o.k0s()(),o.j41(5,"div",3)(6,"button",4),o.EFF(7,"CANCEL"),o.k0s(),o.j41(8,"button",5),o.EFF(9,"OK"),o.k0s()()),2&i&&(o.R7$(2),o.JRh(r.data.title),o.R7$(2),o.JRh(r.data.message),o.R7$(2),o.Y8G("mat-dialog-close",!1),o.R7$(2),o.Y8G("mat-dialog-close",!0))},dependencies:[Zy,Al,Zl,ns,Ta],encapsulation:2})}}return n})();function S0e(n,t){if(1&n){const e=o.RV6();o.j41(0,"span",0),o.EFF(1,"Do you want to download and then purge old unused Configs to make space for new ones?"),o.k0s(),o.j41(2,"button",1),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.showPurgeConfirmDialog())}),o.EFF(3," DOWNLOAD & PURGE... "),o.k0s()}}let T0e=(()=>{class n{constructor(e){this.dialog=e,this.isLocalStorageSizeValid=!0}ngOnInit(){this.isLocalStorageSizeValid=(()=>{let t="";for(const[i,r]of Object.entries(localStorage))t+=i+r;return 3+16*t.length/8/1024<=768})()}showPurgeConfirmDialog(){const e=function E0e(){const n=new Set,t=mr.getCustomConfigs(),e=new Map;for(const[r,s]of t.entries())void 0===s?.creationTime&&(s.creationTime=Date.now()),(Date.now()-s.creationTime)/2592e6>=6&&(e.set(r,mr.createExportCustomConfigFromConfig(s)),n.add(s));return e.size>0&&mr.downloadCustomConfigs(e),n}();0!==e.size?this.dialog.open(x0e,{panelClass:"cc-confirmation-dialog",data:{title:"Confirm to purge old Configs",message:"Are you sure to delete old Configs now?"}}).afterClosed().subscribe(r=>{r&&mr.deleteCustomConfigs([...e])}):this.dialog.open(lu,{data:{title:"Download Error",message:"Could not download and purge old configs automatically! Please try it by yourself."}})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-download-and-purge-configs"]],standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[1,"exceed-local-storage-message"],["mat-flat-button","","title","Download old unused Custom Views as a backup file and then delete them in the browser.",1,"exceed-local-storage-button",3,"click"]],template:function(i,r){1&i&&o.DNE(0,S0e,4,0),2&i&&o.vxM(r.isLocalStorageSizeValid?-1:0)},dependencies:[ns],styles:["[_nghost-%COMP%]{text-align:right;display:flex;flex-wrap:wrap;justify-content:center}.exceed-local-storage-message[_ngcontent-%COMP%]{display:block;text-align:left;padding:0 16px;color:#b02929}.exceed-local-storage-button[_ngcontent-%COMP%]{color:#fff;background-color:#b02929}.exceed-local-storage-button[_ngcontent-%COMP%]:hover{background-color:#8c1f1f}"]})}}return n})();function I0e(n,t){if(1&n&&(o.j41(0,"mat-error"),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.JRh(e.getErrorMessage())}}let VX=(()=>{class n{constructor(e,i,r){this.state=e,this.threeCameraService=i,this.threeOrbitControlsService=r}ngOnInit(){const e=B2(this.state.getValue());this.customConfigName=new g$("",[v8.required,F0e(e)]),this.customConfigName.setValue(mr.getConfigNameSuggestionByFileState(e))}getErrorMessage(){return this.customConfigName.hasError("required")?"Please enter a view name.":this.customConfigName.hasError("Error")?this.customConfigName.getError("Error"):""}addCustomConfig(){const e=b0e(this.customConfigName.value,this.state.getValue(),{camera:this.threeCameraService.camera.position,cameraTarget:this.threeOrbitControlsService.controls.target},this.customConfigNote);mr.addCustomConfig(e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi),o.rXU($h),o.rXU(Rd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-add-custom-config-dialog"]],standalone:!0,features:[o.aNF],decls:24,vars:4,consts:[["xmlns","http://www.w3.org/1999/html",1,"header"],["matInput","","required","",1,"cc-custom-config-input",3,"formControl"],["cdkAutosizeMinRows","8","cdkTextareaAutosize","","matInput","","required","",1,"cc-custom-config-input",3,"ngModelChange","ngModel"],[1,"cc-add-custom-config"],["mat-flat-button","","mat-dialog-close","",3,"click","disabled"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0)(1,"h2"),o.EFF(2,"Add Custom View"),o.k0s()(),o.j41(3,"mat-dialog-content")(4,"p")(5,"mat-form-field")(6,"mat-label"),o.EFF(7,"Save individual configurations for your map."),o.k0s(),o.nrm(8,"input",1),o.j41(9,"mat-hint"),o.EFF(10,"Config View Name"),o.k0s(),o.DNE(11,I0e,2,1,"mat-error"),o.k0s()(),o.j41(12,"p")(13,"mat-form-field")(14,"mat-label"),o.EFF(15,"Provide custom note for configuration (optional)"),o.k0s(),o.j41(16,"textarea",2),o.mxI("ngModelChange",function(l){return o.DH7(r.customConfigNote,l)||(r.customConfigNote=l),l}),o.EFF(17," "),o.k0s(),o.j41(18,"mat-hint"),o.EFF(19,"Config Note"),o.k0s()()()(),o.j41(20,"mat-dialog-actions",3),o.nrm(21,"cc-download-and-purge-configs"),o.j41(22,"button",4),o.bIt("click",function(){return r.addCustomConfig()}),o.EFF(23,"ADD"),o.k0s()()),2&i&&(o.R7$(8),o.Y8G("formControl",r.customConfigName),o.R7$(3),o.vxM(r.customConfigName.invalid?11:-1),o.R7$(5),o.R50("ngModel",r.customConfigNote),o.R7$(6),o.Y8G("disabled",r.customConfigName.invalid))},dependencies:[Zg,Al,Lu,Nu,t0,ZS,Xg,Jw,sR,nx,N$,oR,G8,V$,cq,Zl,T0e,ns,Ta],encapsulation:2})}}return n})();function F0e(n){return t=>mr.hasCustomConfigByName(n.mapSelectionMode,n.assignedMaps,t.value)?{Error:"A Custom View with this name already exists."}:null}let D0e=(()=>{class n{constructor(e){this.dialog=e}showAddCustomConfigDialog(){this.dialog.open(VX,{panelClass:"cc-add-custom-config-dialog"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-add-custom-config-button"]],standalone:!0,features:[o.aNF],decls:2,vars:0,consts:[["title","Create new Custom View",3,"click"],[1,"fa","fa-plus"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.showAddCustomConfigDialog()}),o.nrm(1,"i",1),o.k0s())},styles:["button[_ngcontent-%COMP%]{margin:0 3px;min-width:12%;height:48px;width:48px;border-radius:100%;line-height:48px;background-color:#fff;color:#1b9cfc}button[_ngcontent-%COMP%]:disabled, button[disabled][_ngcontent-%COMP%]{background-color:#e6e6e6;color:#ccc}button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12px;margin-left:0}"]})}}return n})(),B0e=0;const Q7=new o.nKC("CdkAccordion");let k0e=(()=>{class n{constructor(){this._stateChanges=new mi.B,this._openCloseAllActions=new mi.B,this.id="cdk-accordion-"+B0e++,this.multi=!1}openAll(){this.multi&&this._openCloseAllActions.next(!0)}closeAll(){this._openCloseAllActions.next(!1)}ngOnChanges(e){this._stateChanges.next(e)}ngOnDestroy(){this._stateChanges.complete(),this._openCloseAllActions.complete()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["cdk-accordion"],["","cdkAccordion",""]],inputs:{multi:[2,"multi","multi",o.L39]},exportAs:["cdkAccordion"],standalone:!0,features:[o.Jv_([{provide:Q7,useExisting:n}]),o.GFd,o.OA$]})}}return n})(),R0e=0,P0e=(()=>{class n{get expanded(){return this._expanded}set expanded(e){this._expanded!==e&&(this._expanded=e,this.expandedChange.emit(e),e?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}constructor(e,i,r){this.accordion=e,this._changeDetectorRef=i,this._expansionDispatcher=r,this._openCloseAllSubscription=un.yU.EMPTY,this.closed=new o.bkB,this.opened=new o.bkB,this.destroyed=new o.bkB,this.expandedChange=new o.bkB,this.id="cdk-accordion-child-"+R0e++,this._expanded=!1,this.disabled=!1,this._removeUniqueSelectionListener=()=>{},this._removeUniqueSelectionListener=r.listen((s,l)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===l&&this.id!==s&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Q7,12),o.rXU(o.gRc),o.rXU(Y$))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:[2,"expanded","expanded",o.L39],disabled:[2,"disabled","disabled",o.L39]},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],standalone:!0,features:[o.Jv_([{provide:Q7,useValue:void 0}]),o.GFd]})}}return n})();const O0e=["body"],N0e=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],L0e=["mat-expansion-panel-header","*","mat-action-row"];function U0e(n,t){}const V0e=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],H0e=["mat-panel-title","mat-panel-description","*"];function Q0e(n,t){if(1&n&&(o.j41(0,"span",1),o.qSk(),o.j41(1,"svg",2),o.nrm(2,"path",3),o.k0s()()),2&n){const e=o.XpG();o.Y8G("@indicatorRotate",e._getExpandedState())}}const z7=new o.nKC("MAT_ACCORDION"),HX="225ms cubic-bezier(0.4,0.0,0.2,1)",QX={indicatorRotate:(0,Nn.hZ)("indicatorRotate",[(0,Nn.wk)("collapsed, void",(0,Nn.iF)({transform:"rotate(0deg)"})),(0,Nn.wk)("expanded",(0,Nn.iF)({transform:"rotate(180deg)"})),(0,Nn.kY)("expanded <=> collapsed, void => collapsed",(0,Nn.i0)(HX))]),bodyExpansion:(0,Nn.hZ)("bodyExpansion",[(0,Nn.wk)("collapsed, void",(0,Nn.iF)({height:"0px",visibility:"hidden"})),(0,Nn.wk)("expanded",(0,Nn.iF)({height:"*",visibility:""})),(0,Nn.kY)("expanded <=> collapsed, void => collapsed",(0,Nn.i0)(HX))])},zX=new o.nKC("MAT_EXPANSION_PANEL");let z0e=(()=>{class n{constructor(e,i){this._template=e,this._expansionPanel=i}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.C4Q),o.rXU(zX,8))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["ng-template","matExpansionPanelContent",""]],standalone:!0})}}return n})(),G0e=0;const GX=new o.nKC("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS");let jX=(()=>{class n extends P0e{get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=e}get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}constructor(e,i,r,s,l,u,f){super(e,i,r),this._viewContainerRef=s,this._animationMode=u,this._hideToggle=!1,this.afterExpand=new o.bkB,this.afterCollapse=new o.bkB,this._inputChanges=new mi.B,this._headerId="mat-expansion-panel-header-"+G0e++,this.accordion=e,this._document=l,this._animationsDisabled="NoopAnimations"===u,f&&(this.hideToggle=f.hideToggle)}_hasSpacing(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this._lazyContent._expansionPanel===this&&this.opened.pipe(su(null),hr(()=>this.expanded&&!this._portal),ms(1)).subscribe(()=>{this._portal=new A_(this._lazyContent._template,this._viewContainerRef)})}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._inputChanges.complete()}_containsFocus(){if(this._body){const e=this._document.activeElement,i=this._body.nativeElement;return e===i||i.contains(e)}return!1}_animationStarted(e){!$X(e)&&!this._animationsDisabled&&this._body&&this._body?.nativeElement.setAttribute("inert","")}_animationDone(e){$X(e)||("expanded"===e.toState?this.afterExpand.emit():"collapsed"===e.toState&&this.afterCollapse.emit(),!this._animationsDisabled&&this._body&&this._body.nativeElement.removeAttribute("inert"))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(z7,12),o.rXU(o.gRc),o.rXU(Y$),o.rXU(o.c1b),o.rXU(V),o.rXU(o.bc$,8),o.rXU(GX,8))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-expansion-panel"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,z0e,5),2&i){let l;o.mGM(l=o.lsd())&&(r._lazyContent=l.first)}},viewQuery:function(i,r){if(1&i&&o.GBs(O0e,5),2&i){let s;o.mGM(s=o.lsd())&&(r._body=s.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(i,r){2&i&&o.AVh("mat-expanded",r.expanded)("_mat-animation-noopable",r._animationsDisabled)("mat-expansion-panel-spacing",r._hasSpacing())},inputs:{hideToggle:[2,"hideToggle","hideToggle",o.L39],togglePosition:"togglePosition"},outputs:{afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],standalone:!0,features:[o.Jv_([{provide:z7,useValue:void 0},{provide:zX,useExisting:n}]),o.GFd,o.Vt3,o.OA$,o.aNF],ngContentSelectors:L0e,decls:7,vars:4,consts:[["body",""],["role","region",1,"mat-expansion-panel-content",3,"id"],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(i,r){if(1&i){const s=o.RV6();o.NAR(N0e),o.SdG(0),o.j41(1,"div",1,0),o.bIt("@bodyExpansion.start",function(u){return o.eBV(s),o.Njj(r._animationStarted(u))})("@bodyExpansion.done",function(u){return o.eBV(s),o.Njj(r._animationDone(u))}),o.j41(3,"div",2),o.SdG(4,1),o.DNE(5,U0e,0,0,"ng-template",3),o.k0s(),o.SdG(6,2),o.k0s()}2&i&&(o.R7$(),o.Y8G("@bodyExpansion",r._getExpandedState())("id",r.id),o.BMQ("aria-labelledby",r._headerId),o.R7$(4),o.Y8G("cdkPortalOutlet",r._portal))},dependencies:[m_],styles:['.mat-expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative;background:var(--mat-expansion-container-background-color, var(--mat-app-surface));color:var(--mat-expansion-container-text-color, var(--mat-app-on-surface));border-radius:var(--mat-expansion-container-shape)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:var(--mat-expansion-container-shape);border-top-left-radius:var(--mat-expansion-container-shape)}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:var(--mat-expansion-container-shape);border-bottom-left-radius:var(--mat-expansion-container-shape)}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible;font-family:var(--mat-expansion-container-text-font, var(--mat-app-body-large-font));font-size:var(--mat-expansion-container-text-size, var(--mat-app-body-large-size));font-weight:var(--mat-expansion-container-text-weight, var(--mat-app-body-large-weight));line-height:var(--mat-expansion-container-text-line-height, var(--mat-app-body-large-line-height));letter-spacing:var(--mat-expansion-container-text-tracking, var(--mat-app-body-large-tracking))}.mat-expansion-panel-content[style*="visibility: hidden"] *{visibility:hidden !important}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px;border-top-color:var(--mat-expansion-actions-divider-color, var(--mat-app-outline))}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}'],encapsulation:2,data:{animation:[QX.bodyExpansion]},changeDetection:0})}}return n})();function $X(n){return"void"===n.fromState}let qX=(()=>{class n{constructor(e,i,r,s,l,u,f){this.panel=e,this._element=i,this._focusMonitor=r,this._changeDetectorRef=s,this._animationMode=u,this._parentChangeSubscription=un.yU.EMPTY,this.tabIndex=0;const p=e.accordion?e.accordion._stateChanges.pipe(hr(m=>!(!m.hideToggle&&!m.togglePosition))):gh;this.tabIndex=parseInt(f||"")||0,this._parentChangeSubscription=ql(e.opened,e.closed,p,e._inputChanges.pipe(hr(m=>!!(m.hideToggle||m.disabled||m.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),e.closed.pipe(hr(()=>e._containsFocus())).subscribe(()=>r.focusVia(i,"program")),l&&(this.expandedHeight=l.expandedHeight,this.collapsedHeight=l.collapsedHeight)}get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){const e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}_keydown(e){switch(e.keyCode){case 32:case 13:Kl(e)||(e.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e))}}focus(e,i){e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(e=>{e&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(jX,1),o.rXU(o.aKT),o.rXU(Yl),o.rXU(o.gRc),o.rXU(GX,8),o.rXU(o.bc$,8),o.kS0("tabindex"))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(i,r){1&i&&o.bIt("click",function(){return r._toggle()})("keydown",function(l){return r._keydown(l)}),2&i&&(o.BMQ("id",r.panel._headerId)("tabindex",r.disabled?-1:r.tabIndex)("aria-controls",r._getPanelId())("aria-expanded",r._isExpanded())("aria-disabled",r.panel.disabled),o.xc7("height",r._getHeaderHeight()),o.AVh("mat-expanded",r._isExpanded())("mat-expansion-toggle-indicator-after","after"===r._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===r._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===r._animationMode))},inputs:{expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight",tabIndex:[2,"tabIndex","tabIndex",e=>null==e?0:(0,o.Udg)(e)]},standalone:!0,features:[o.GFd,o.aNF],ngContentSelectors:H0e,decls:5,vars:3,consts:[[1,"mat-content"],[1,"mat-expansion-indicator"],["xmlns","http://www.w3.org/2000/svg","viewBox","0 -960 960 960","aria-hidden","true","focusable","false"],["d","M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"]],template:function(i,r){1&i&&(o.NAR(V0e),o.j41(0,"span",0),o.SdG(1),o.SdG(2,1),o.SdG(3,2),o.k0s(),o.DNE(4,Q0e,3,1,"span",1)),2&i&&(o.AVh("mat-content-hide-toggle",!r._showToggle()),o.R7$(4),o.vxM(r._showToggle()?4:-1))},styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-expansion-header-collapsed-state-height);font-family:var(--mat-expansion-header-text-font, var(--mat-app-title-medium-font));font-size:var(--mat-expansion-header-text-size, var(--mat-app-title-medium-size));font-weight:var(--mat-expansion-header-text-weight, var(--mat-app-title-medium-weight));line-height:var(--mat-expansion-header-text-line-height, var(--mat-app-title-medium-line-height));letter-spacing:var(--mat-expansion-header-text-tracking, var(--mat-app-title-medium-tracking))}.mat-expansion-panel-header.mat-expanded{height:var(--mat-expansion-header-expanded-state-height)}.mat-expansion-panel-header[aria-disabled=true]{color:var(--mat-expansion-header-disabled-state-text-color)}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-header-hover-state-layer-color)}@media(hover: none){.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-container-background-color, var(--mat-app-surface))}}.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-program-focused{background:var(--mat-expansion-header-focus-state-layer-color)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-content.mat-content-hide-toggle{margin-right:8px}[dir=rtl] .mat-content.mat-content-hide-toggle{margin-right:0;margin-left:8px}.mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-left:24px;margin-right:0}[dir=rtl] .mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-right:24px;margin-left:0}.mat-expansion-panel-header-title{color:var(--mat-expansion-header-text-color, var(--mat-app-on-surface))}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;flex-basis:0;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header-description{flex-grow:2;color:var(--mat-expansion-header-description-color, var(--mat-app-on-surface-variant))}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle;color:var(--mat-expansion-header-indicator-color, var(--mat-app-on-surface-variant));display:var(--mat-expansion-legacy-header-indicator-display, inline-block)}.mat-expansion-indicator svg{width:24px;height:24px;margin:0 -8px;vertical-align:middle;fill:var(--mat-expansion-header-indicator-color, var(--mat-app-on-surface-variant));display:var(--mat-expansion-header-indicator-display, none)}.cdk-high-contrast-active .mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}'],encapsulation:2,data:{animation:[QX.indicatorRotate]},changeDetection:0})}}return n})(),j0e=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"],standalone:!0})}}return n})(),$0e=(()=>{class n extends k0e{constructor(){super(...arguments),this._ownHeaders=new o.rOR,this.hideToggle=!1,this.displayMode="default",this.togglePosition="after"}ngAfterContentInit(){this._headers.changes.pipe(su(this._headers)).subscribe(e=>{this._ownHeaders.reset(e.filter(i=>i.panel.accordion===this)),this._ownHeaders.notifyOnChanges()}),this._keyManager=new ou(this._ownHeaders).withWrap().withHomeAndEnd()}_handleHeaderKeydown(e){this._keyManager.onKeydown(e)}_handleHeaderFocus(e){this._keyManager.updateActiveItem(e)}ngOnDestroy(){super.ngOnDestroy(),this._keyManager?.destroy(),this._ownHeaders.destroy()}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=o.xGo(n)))(r||n)}})()}static{this.\u0275dir=o.FsC({type:n,selectors:[["mat-accordion"]],contentQueries:function(i,r,s){if(1&i&&o.wni(s,qX,5),2&i){let l;o.mGM(l=o.lsd())&&(r._headers=l)}},hostAttrs:[1,"mat-accordion"],hostVars:2,hostBindings:function(i,r){2&i&&o.AVh("mat-accordion-multi",r.multi)},inputs:{hideToggle:[2,"hideToggle","hideToggle",o.L39],displayMode:"displayMode",togglePosition:"togglePosition"},exportAs:["matAccordion"],standalone:!0,features:[o.Jv_([{provide:z7,useExisting:n}]),o.GFd,o.Vt3]})}}return n})(),q0e=(()=>{class n{constructor(e){this.data=e}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tp))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-config-note-dialog"]],standalone:!0,features:[o.aNF],decls:11,vars:2,consts:[[1,"cc-custom-config-note-dialog-container"],["mat-dialog-content","",1,"cc-note-input-container"],["appearance","fill",1,"note-input"],["matInput","","cdkAutosizeMinRows","10","cdkTextareaAutosize","",3,"ngModelChange","ngModel"],["mat-dialog-actions","",1,"cc-note-dialog-action-buttons"],["mat-flat-button","",3,"mat-dialog-close"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"div",1)(2,"mat-form-field",2)(3,"mat-label"),o.EFF(4,"Custom Note"),o.k0s(),o.j41(5,"textarea",3),o.mxI("ngModelChange",function(l){return o.DH7(r.data,l)||(r.data=l),l}),o.k0s()()(),o.j41(6,"div",4)(7,"button",5),o.EFF(8,"Cancel"),o.k0s(),o.j41(9,"button",5),o.EFF(10,"Ok"),o.k0s()()()),2&i&&(o.R7$(5),o.R50("ngModel",r.data),o.R7$(4),o.Y8G("mat-dialog-close",r.data))},dependencies:[Al,Lu,Nu,t0,cq,ZS,Xg,Jw,nx,Zl,ns,Ta],styles:["[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%]{padding:20px 24px}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] .cc-note-input-container[_ngcontent-%COMP%]{padding:0}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] .cc-note-input-container[_ngcontent-%COMP%] .note-input[_ngcontent-%COMP%]{width:100%}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] .cc-note-dialog-action-buttons[_ngcontent-%COMP%]{justify-content:flex-end;padding:0}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{padding:12px;margin:0 0 0 10px;color:#1b9cfc;background-color:#8a848414}[_nghost-%COMP%] .cc-custom-config-note-dialog-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover{background-color:#0000000d;color:#1b9cfc}"]})}}return n})(),W0e=(()=>{class n{constructor(e){this.dialog=e}openDialog(){this.customConfigNote=this.customConfigItem.note,this.dialog.open(q0e,{width:"600px",data:this.customConfigNote}).afterClosed().subscribe(i=>{void 0!==i&&this.customConfigNote!==i&&(this.customConfigNote=i,mr.editCustomConfigNote(this.customConfigItem.id,i))})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-config-note-dialog-button"]],inputs:{customConfigItem:"customConfigItem"},standalone:!0,features:[o.aNF],decls:2,vars:0,consts:[["title","Edit/View Note",1,"custom-config-note-dialog-button",3,"click"],[1,"fa","fa-pencil"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.openDialog()}),o.nrm(1,"i",1),o.k0s())},styles:["button[_ngcontent-%COMP%]{font-size:16px;padding:8px 10px;margin:0;background-color:transparent}button[_ngcontent-%COMP%]:hover{background-color:#0000000d;color:#1b9cfc;border-radius:50%}"]})}}return n})();function WX(n,t){const{mapSelectionMode:e,assignedMaps:i}=B2(t),r=[];for(const s of n.assignedMaps.keys())i.has(s)||r.push(n.assignedMaps.get(s));return{mapSelectionMode:n.mapSelectionMode!==e?n.mapSelectionMode:"",mapNames:r}}let X0e=(()=>{class n{constructor(e){this.state=e}transform(e){const{mapSelectionMode:i,mapNames:r}=WX(e,this.state.getValue());return r.length>0||i.length>0?"rgb(204, 204, 204)":"rgba(0, 0, 0, 0.87)"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi,16))}}static{this.\u0275pipe=o.EJ8({name:"customConfig2ApplicableColor",type:n,pure:!0,standalone:!0})}}return n})(),K0e=(()=>{class n{transform(e){const{mapColors:i,mapSelectionMode:r}=e;return r===iP.MULTIPLE?[i.positive,i.neutral,i.negative,i.selected]:[i.positiveDelta,i.negativeDelta,i.selected]}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"customConfigColorSchemaBySelectionMode",type:n,pure:!0,standalone:!0})}}return n})();function Y0e(n,t){if(1&n&&(o.j41(0,"p",2),o.nrm(1,"i",8),o.EFF(2),o.k0s()),2&n){const e=o.XpG();o.R7$(2),o.SpI(" ",e.customConfigItem.metrics.edgeMetric,"")}}function Z0e(n,t){if(1&n&&(o.j41(0,"div",7),o.nrm(1,"span",9),o.k0s()),2&n){const e=t.$implicit,i=o.XpG();o.R7$(),o.xc7("background-color",i.customConfigItem.isApplicable?e:"rgb(204, 204, 204)")}}let J0e=(()=>{class n{constructor(e,i,r,s){this.store=e,this.threeCameraService=i,this.threeOrbitControlsService=r,this.threeRendererService=s}applyCustomConfig(){mr.applyCustomConfig(this.customConfigItem.id,this.store,this.threeCameraService,this.threeOrbitControlsService,this.threeRendererService)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU($h),o.rXU(Rd),o.rXU(wr))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-apply-custom-config-button"]],inputs:{customConfigItem:"customConfigItem"},standalone:!0,features:[o.aNF],decls:17,vars:12,consts:[["mat-dialog-close","",3,"click","disabled","title"],[1,"config-metric-list"],[1,"config-metric"],[1,"fa","fa-arrows-alt"],[1,"fa","fa-arrows-v"],[1,"fa","fa-paint-brush"],[1,"color-schema-container"],[1,"color-swatch-container"],[1,"fa","fa-exchange"],[1,"color-swatch"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"customConfig2ApplicableColor"),o.bIt("click",function(){return r.applyCustomConfig()}),o.j41(2,"div",1)(3,"p",2),o.nrm(4,"i",3),o.EFF(5),o.k0s(),o.j41(6,"p",2),o.nrm(7,"i",4),o.EFF(8),o.k0s(),o.j41(9,"p",2),o.nrm(10,"i",5),o.EFF(11),o.k0s(),o.DNE(12,Y0e,3,1,"p",2),o.j41(13,"div",6),o.Z7z(14,Z0e,2,2,"div",7,o.fX1),o.nI1(16,"customConfigColorSchemaBySelectionMode"),o.k0s()()()),2&i&&(o.xc7("color",o.bMT(1,8,r.customConfigItem)),o.FS9("title",r.customConfigItem.name),o.Y8G("disabled",!r.customConfigItem.isApplicable),o.R7$(5),o.SpI(" ",r.customConfigItem.metrics.areaMetric,""),o.R7$(3),o.SpI(" ",r.customConfigItem.metrics.heightMetric,""),o.R7$(3),o.SpI(" ",r.customConfigItem.metrics.colorMetric,""),o.R7$(),o.vxM(r.customConfigItem.metrics.edgeMetric?12:-1),o.R7$(2),o.Dyx(o.bMT(16,10,r.customConfigItem)))},dependencies:[Ta,X0e,K0e],styles:["[_nghost-%COMP%]{display:flex;flex:1}[_nghost-%COMP%] button[_ngcontent-%COMP%]{flex-direction:row;width:100%;margin:0;background-color:transparent}[_nghost-%COMP%] button[_ngcontent-%COMP%]:disabled{cursor:default}[_nghost-%COMP%] button[_ngcontent-%COMP%] .config-metric-list[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:10px}[_nghost-%COMP%] button[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:15px;margin:0;text-align:left}[_nghost-%COMP%] button[_ngcontent-%COMP%] p.config-name[_ngcontent-%COMP%]{flex:1 1 auto;width:100%}[_nghost-%COMP%] button[_ngcontent-%COMP%] p.config-metric[_ngcontent-%COMP%]{flex:0 0 9em}[_nghost-%COMP%] button[_ngcontent-%COMP%] .color-schema-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:2px}[_nghost-%COMP%] button[_ngcontent-%COMP%] .color-schema-container[_ngcontent-%COMP%] .color-swatch-container[_ngcontent-%COMP%] .color-swatch[_ngcontent-%COMP%]{display:inline-block;width:16px;height:16px}"]})}}return n})(),XX=(()=>{class n{transform(e,i,r="..."){return e.length>i?e.slice(0,i)+r:e}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"truncateText",type:n,pure:!0,standalone:!0})}}return n})(),e_e=(()=>{class n{constructor(e){this.state=e}transform(e){const{mapSelectionMode:i,mapNames:r}=WX(e,this.state.getValue());return r.length>0&&i.length>0?`This view is partially applicable. To complete your view, please switch to the ${i} mode and select the following map(s): ${r.join(", ")}.`:r.length>0?`To fulfill your view, please select the following map(s): ${r.join(", ")}.`:i.length>0?`This view is partially applicable. To complete your view, please switch to the ${i} mode.`:"Apply Custom View"}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Vi,16))}}static{this.\u0275pipe=o.EJ8({name:"customConfig2ApplicableMessage",type:n,pure:!0,standalone:!0})}}return n})(),t_e=(()=>{class n{transform(e,i){const r=i.toLocaleLowerCase().trimEnd();return e.filter(s=>this.isItemMatchingSearchTerm(s,r))}isItemMatchingSearchTerm(e,i){const r=e.name.toLocaleLowerCase().includes(i),s=e.mapSelectionMode.toLocaleLowerCase().includes(i),l=Object.values(e.metrics).some(u=>u?.toLocaleLowerCase().includes(i));return r||s||l}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"filterCustomConfigDataBySearchTerm",type:n,pure:!0,standalone:!0})}}return n})();const n_e=["matExpansionPanel"];function i_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-list-item",5),o.nI1(1,"customConfig2ApplicableMessage"),o.j41(2,"div",6)(3,"p",7)(4,"strong")(5,"span",8),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(4);return o.Njj(s.applyCustomConfig(r.id))}),o.EFF(6),o.nI1(7,"truncateText"),o.k0s()()()(),o.j41(8,"div",9)(9,"p",10)(10,"span",8),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(4);return o.Njj(s.applyCustomConfig(r.id))}),o.EFF(11),o.nI1(12,"truncateText"),o.k0s()(),o.nrm(13,"cc-custom-config-note-dialog-button",11),o.k0s(),o.j41(14,"div",12),o.nrm(15,"cc-apply-custom-config-button",11),o.j41(16,"button",13),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(3).$implicit,l=o.XpG();return o.Njj(l.removeCustomConfig(r.id,s.key))}),o.nrm(17,"i",14),o.k0s()()()}if(2&n){const e=t.$implicit;o.FS9("title",o.bMT(1,6,e)),o.R7$(3),o.FS9("title",e.name),o.R7$(3),o.SpI(" ",o.i5U(7,8,e.name,75)," "),o.R7$(5),o.SpI(" ",e.note?o.i5U(12,11,e.note,95):"Add Note"," "),o.R7$(2),o.Y8G("customConfigItem",e),o.R7$(2),o.Y8G("customConfigItem",e)}}function r_e(n,t){if(1&n&&(o.j41(0,"mat-list"),o.Z7z(1,i_e,18,14,"mat-list-item",5,o.fX1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.Dyx(e)}}function o_e(n,t){1&n&&(o.j41(0,"div",4)(1,"p"),o.EFF(2,"No configurations found."),o.k0s()())}function s_e(n,t){if(1&n&&o.DNE(0,r_e,3,0,"mat-list")(1,o_e,3,0,"div",4),2&n){const e=t;o.vxM(e.length>0?0:-1),o.R7$(),o.vxM(0===e.length?1:-1)}}function a_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-expansion-panel",1,0)(2,"mat-expansion-panel-header",2),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG();return o.Njj(s.toggleGroupExpansion(r.key))}),o.j41(3,"mat-panel-title",3),o.EFF(4," Custom View(s) in "),o.j41(5,"strong"),o.EFF(6),o.nI1(7,"titlecase"),o.k0s(),o.EFF(8),o.k0s()(),o.DNE(9,s_e,2,2),o.nI1(10,"filterCustomConfigDataBySearchTerm"),o.k0s()}if(2&n){let e;const i=t.$implicit,r=o.XpG();o.Y8G("expanded",r.isGroupExpanded(i.key)||r.searchTerm.length>0),o.R7$(6),o.SpI(" ",o.bMT(7,4,i.value.mapSelectionMode)," "),o.R7$(2),o.SpI(" mode for ",i.value.mapNames," "),o.R7$(),o.vxM((e=o.i5U(10,6,i.value.customConfigItems,r.searchTerm))?9:-1,e)}}let l_e=(()=>{class n{constructor(e,i,r,s){this.store=e,this.threeCameraService=i,this.threeOrbitControlsService=r,this.threeRendererService=s,this.searchTerm="",this.expandedStates={},this.manuallyToggled=new Set}ngOnChanges(e){if(e.searchTerm)if(e.searchTerm.currentValue.length>0)for(const i of Object.keys(this.expandedStates))this.expandedStates[i]=!0;else for(const i of Object.keys(this.expandedStates))this.manuallyToggled.has(i)||(this.expandedStates[i]=!1)}isGroupExpanded(e){return this.searchTerm.length>0?!this.manuallyToggled.has(e)||this.expandedStates[e]:this.expandedStates[e]||!1}toggleGroupExpansion(e){this.expandedStates[e]=!this.isGroupExpanded(e),this.manuallyToggled.add(e)}removeCustomConfig(e,i){mr.deleteCustomConfig(e),this.expandedStates[i]=!0}applyCustomConfig(e){mr.applyCustomConfig(e,this.store,this.threeCameraService,this.threeOrbitControlsService,this.threeRendererService)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU($h),o.rXU(Rd),o.rXU(wr))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-config-item-group"]],viewQuery:function(i,r){if(1&i&&o.GBs(n_e,5),2&i){let s;o.mGM(s=o.lsd())&&(r.matExpansionPanel=s.first)}},inputs:{customConfigItemGroups:"customConfigItemGroups",searchTerm:"searchTerm"},standalone:!0,features:[o.OA$,o.aNF],decls:3,vars:2,consts:[["matExpansionPanel",""],[1,"custom-config-item-group",3,"expanded"],[3,"click"],[1,"custom-config-item-group-title"],[1,"no-configs-found-message"],[3,"title"],[1,"metrics-box"],[1,"config-item-name",3,"title"],["mat-dialog-close","",3,"click"],[1,"custom-config-note"],[1,"custom-config-note-content"],[3,"customConfigItem"],[1,"custom-config-action-buttons"],["title","Remove Custom View",1,"remove-button",3,"click"],[1,"fa","fa-trash"]],template:function(i,r){1&i&&(o.Z7z(0,a_e,11,9,"mat-expansion-panel",1,o.fX1),o.nI1(2,"keyvalue")),2&i&&o.Dyx(o.bMT(2,0,r.customConfigItemGroups))},dependencies:[jX,qX,j0e,TX,IX,Ta,W0e,J0e,cf,df,XX,e_e,t_e],styles:[".custom-config-item-group-title[_ngcontent-%COMP%]{color:#000000de;display:inline-block}.metrics-box[_ngcontent-%COMP%]{margin-top:10px}.custom-config-note[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;margin-top:5px}.custom-config-action-buttons[_ngcontent-%COMP%]{display:flex;align-items:center;margin-bottom:5px}p[_ngcontent-%COMP%]{font-size:15px;margin:0;white-space:pre-line}p.custom-config-note-content[_ngcontent-%COMP%]{margin-right:7px;font-size:13px}button[_ngcontent-%COMP%]{background-color:transparent}button.remove-button[_ngcontent-%COMP%]{font-size:16px;padding:8px 10px;margin:0}button.remove-button[_ngcontent-%COMP%]:hover{background-color:#0000000d;color:#1b9cfc;border-radius:50%}"]})}}return n})();function c_e(n,t){1&n&&(o.j41(0,"div",7),o.EFF(1,"It is time to add your first Custom View!"),o.k0s())}function d_e(n,t){if(1&n&&o.nrm(0,"cc-custom-config-item-group",12),2&n){const e=o.XpG(2),i=o.XpG();o.Y8G("customConfigItemGroups",e.nonApplicableItems)("searchTerm",i.searchTerm)}}function u_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",14),o.bIt("click",function(){o.eBV(e);const r=o.XpG(3);return o.Njj(r.toggleNonApplicableCustomConfigsList())}),o.EFF(1),o.nrm(2,"i",15),o.k0s()}if(2&n){const e=o.XpG(3);o.R7$(),o.SpI(" ",e.isNonApplicableListCollapsed?"Show non-applicable Custom Views":"Hide non-applicable Custom Views"," "),o.R7$(),o.Y8G("ngClass",e.isNonApplicableListCollapsed?"fa fa-angle-down":"fa fa-angle-up")}}function h_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-accordion",8)(1,"mat-form-field",9),o.nrm(2,"i",10),o.j41(3,"mat-label"),o.EFF(4),o.k0s(),o.j41(5,"input",11),o.bIt("input",function(r){o.eBV(e);const s=o.XpG(2);return o.Njj(s.setSearchTermDebounced(r))}),o.k0s()(),o.nrm(6,"cc-custom-config-item-group",12),o.DNE(7,d_e,1,2,"cc-custom-config-item-group",12)(8,u_e,3,2,"button",13),o.k0s()}if(2&n){const e=o.XpG(),i=o.XpG();o.Y8G("multi",!0),o.R7$(4),o.JRh(i.searchPlaceholder),o.R7$(),o.Y8G("value",i.searchTerm),o.R7$(),o.Y8G("customConfigItemGroups",e.applicableItems)("searchTerm",i.searchTerm),o.R7$(),o.vxM(i.isNonApplicableListCollapsed?-1:7),o.R7$(),o.vxM(e.nonApplicableItems.size>0?8:-1)}}function f_e(n,t){if(1&n&&(o.j41(0,"mat-dialog-content",4)(1,"p",5),o.EFF(2," Custom Views allow you to save and upload your individual configurations for certain maps. Find out more about Custom Views in the "),o.j41(3,"a",6),o.EFF(4,"documentation"),o.k0s(),o.EFF(5,". "),o.k0s(),o.DNE(6,c_e,2,0,"div",7)(7,h_e,9,7,"mat-accordion",8),o.k0s()),2&n){const e=t;o.R7$(6),o.vxM(0===e.applicableItems.size&&0===e.nonApplicableItems.size?6:-1),o.R7$(),o.vxM(0!==e.applicableItems.size||0!==e.nonApplicableItems.size?7:-1)}}let p_e=(()=>{class n{constructor(e){this.customConfigService=e,this.searchTerm="",this.isNonApplicableListCollapsed=!0,this.searchPlaceholder="Search by name, mode and metrics...",this.setSearchTermDebounced=ef(i=>this.searchTerm=i.target.value,400)}toggleNonApplicableCustomConfigsList(){this.isNonApplicableListCollapsed=!this.isNonApplicableListCollapsed}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(LX))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-config-list"]],standalone:!0,features:[o.aNF],decls:9,vars:3,consts:[["color","primary"],[1,"row"],[1,"action-buttons"],[1,"custom-configs-button-in-custom-views"],[1,"content"],[1,"custom-config-documentation-hint"],["href","https://codecharta.com/docs/visualization/custom-views","target","_blank","rel","noopener noreferrer"],[1,"no-custom-configs-box"],[1,"custom-config-container",3,"multi"],[1,"cc-custom-configs-search-field"],["matPrefix","",1,"fa","fa-search","custom-config-search-icon"],["matInput","","type","text",3,"input","value"],[3,"customConfigItemGroups","searchTerm"],[1,"toggle-non-applicable-configs-button"],[1,"toggle-non-applicable-configs-button",3,"click"],[3,"ngClass"]],template:function(i,r){if(1&i&&(o.j41(0,"mat-toolbar",0),o.EFF(1,"Custom Views "),o.j41(2,"div",1)(3,"div",2),o.nrm(4,"cc-upload-custom-config-button")(5,"cc-download-custom-configs-button")(6,"cc-add-custom-config-button",3),o.k0s()()(),o.DNE(7,f_e,8,2,"mat-dialog-content",4),o.nI1(8,"async")),2&i){let s;o.R7$(7),o.vxM((s=o.bMT(8,1,r.customConfigService.customConfigItemGroups$))?7:-1,s)}},dependencies:[Zg,d0e,g0e,D0e,Al,$0e,Lu,Q$,Nu,t0,l_e,Sn,zn],styles:[".row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-left:auto}.custom-config-documentation-hint[_ngcontent-%COMP%]{margin:10px 0 20px;font-size:1.4em;line-height:1.4em;color:#000000de}.no-custom-configs-box[_ngcontent-%COMP%]{text-align:center;padding:50px 0}.toggle-non-applicable-configs-button[_ngcontent-%COMP%]{width:100%;height:30px;margin:5px 0}"]})}}return n})(),A_e=(()=>{class n{constructor(e){this.dialog=e}openCustomConfigDialog(){this.dialog.open(p_e,{panelClass:"cc-custom-config-list"})}showAddCustomConfigDialog(){this.dialog.open(VX,{panelClass:"cc-add-custom-config-dialog"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-custom-configs"]],standalone:!0,features:[o.aNF],decls:3,vars:2,consts:[[1,"custom-configs-panel-buttons"],["icon","fa-cogs",3,"click","title"],["icon","fa-plus",3,"click","title"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"cc-ribbon-bar-menu-button",1),o.bIt("click",function(){return r.openCustomConfigDialog()}),o.k0s(),o.j41(2,"cc-ribbon-bar-menu-button",2),o.bIt("click",function(){return r.showAddCustomConfigDialog()}),o.k0s()()),2&i&&(o.R7$(),o.Y8G("title","Open your saved Custom Views"),o.R7$(),o.Y8G("title","Create new Custom View"))},dependencies:[tP],styles:["[_nghost-%COMP%] .custom-configs-panel-buttons[_ngcontent-%COMP%]{display:flex;justify-content:center;gap:4px}"]})}}return n})();function G7(n,t){if(t||(t=0),!Array.isArray(n))throw new Error("percentRound input should be an Array");const e=n.slice(),i=n.length,r=new Array(i);let s=0;for(let l=i-1;l>=0;l--)"string"==typeof e[l]&&(e[l]=Number.parseFloat(e[l])),s+=1*e[l];if(isNaN(s))throw new Error("percentRound invalid input");if(0===s)r.fill(0);else{const l=Math.pow(10,t),u=100*l;let f=0;for(let p=i-1;p>=0;p--)e[p]=100*e[p]/s,f+=r[p]=Math.round(e[p]*l);if(f!==u){const m=1;let _=Math.abs(f-u);const b=new Array(i);for(let w=0;w0;){let w=0,F=b[0];for(let D=1;Du&&r[D]-m<0)continue;w=D,F=b[D]}f>u?r[w]-=m:r[w]+=m,b[w]-=m,_--}}if(l>1)for(let p=0;pvoid 0!==n.attributes[f]),s=YX(e)[i],l=n.attributes[i],u=n.attributes[rP];l<=s.percentile70?t.lowRisk+=u:l<=s.percentile80?t.moderateRisk+=u:l<=s.percentile90?t.highRisk+=u:t.veryHighRisk+=u}function y_e(n,t,e){for(const[i,r]of Object.entries(n.attributes))0!==r&&(t[e]??={},t[e][i]??=[],t[e][i].push(r))}function w_e(n,t){return n.isOutlier&&!t.isOutlier?-1:!n.isOutlier&&t.isOutlier?1:0}function x_e(n){const t=qw.get(n);return t?`${n} (${t})`:`${n}`}function S_e(n){return n.includes(".")?n.slice(n.lastIndexOf(".")+1):void 0}function T_e(n,t){return j7.some(e=>void 0!==n.attributes[e])&&void 0!==n.attributes[rP]&&!g_e.has(t)}const I_e=sn(Fd,Ru,(n,t)=>{if(!n.unifiedMapNode)return;const e={analyzedProgrammingLanguage:void 0,suspiciousMetricSuggestionLinks:[],unsuspiciousMetrics:[],untrackedMetrics:[],riskProfile:void 0},i=new Map,r={lowRisk:0,moderateRisk:0,highRisk:0,veryHighRisk:0};let s=0,l=0;const u={};for(const{data:p}of oo(n.unifiedMapNode)){const m=S_e(p.name);if(p.type===ts.FILE&&void 0!==m&&!cu(p.path,t,"exclude")){const _=i.get(m)??0;if(i.set(m,_+1),y_e(p,u,m),T_e(p,m)){const b=j7.find(w=>void 0!==p.attributes[w]);l+=p.attributes[b],s+=p.attributes[rP],__e(p,r,m)}}}s>0&&l>0&&(e.riskProfile=function b_e(n){const[t,e,i,r]=m_e([n.lowRisk,n.moderateRisk,n.highRisk,n.veryHighRisk]);return{lowRisk:t,moderateRisk:e,highRisk:i,veryHighRisk:r}}(r));const f=function M_e(n){let t,e=-1;for(const[i,r]of n)el.percentile70&&(e.suspiciousMetrics.set(r,{from:l.percentile70,to:l.percentile80}),u>l.percentile90&&e.outliersThresholds.set(r,l.percentile90))}for(const r in n[t])!Object.keys(i).includes(r)&&!e.untrackedMetrics.includes(r)&&e.untrackedMetrics.push(r);return e}(u,f);e.unsuspiciousMetrics=p.unsuspiciousMetrics,e.untrackedMetrics=p.untrackedMetrics,e.suspiciousMetricSuggestionLinks=function v_e(n){const t=new Map;for(const[e,i]of n.suspiciousMetrics)t.set(e,{metric:e,...i}),n.outliersThresholds.has(e)&&(t.get(e).isOutlier=!0,t.get(e).outlierThreshold=n.outliersThresholds.get(e));return[...t.values()].sort(w_e)}(p)}return e});let F_e=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-suspicious-metric-dialog"]],inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:12,vars:0,consts:[["id","suspiciousMetricPopover","data-testid","suspiciousMetricPopover",1,"cc-dialog","suspicious-metric-dialog"],["mat-dialog-title","",1,"title"],[1,"info-text"],["target","_blank","rel","noopener","href","https://codecharta.com/docs/visualization/suspicious-metrics"],[1,"fa","fa-external-link"],[2,"display","flex","justify-content","center"],["mat-stroked-button","","mat-dialog-close","",1,"button-mat-dialog"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"h2",1),o.EFF(2,"Suspicious Metrics Information"),o.k0s(),o.j41(3,"mat-dialog-content",2),o.EFF(4," This feature compares the values of certain metrics from the loaded cc.json file with metric values of 241 Open Source Java projects. Based on this data suspicious and inconspicuous metrics are identified and corresponding suggestions can be clicked to view them. Be aware that metrics for other programming languages might not be comparable to Java Reference metric values. More information can be found in the "),o.j41(5,"a",3),o.EFF(6,"How-To Article "),o.nrm(7,"i",4),o.k0s(),o.EFF(8,". "),o.k0s(),o.j41(9,"mat-dialog-actions",5)(10,"button",6),o.EFF(11,"Close"),o.k0s()()())},dependencies:[Zy,Al,Zl,ns,Ta],encapsulation:2})}}return n})();const D_e=(n,t)=>({"fa-caret-right":n,"fa-caret-down":t});function B_e(n,t){if(1&n&&(o.nrm(0,"br"),o.j41(1,"span",13),o.EFF(2),o.k0s()),2&n){const e=o.XpG().$implicit,i=o.XpG(3);o.R7$(2),o.JRh(i.getDescriptionOfMetric(e.metric))}}function k_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-button-toggle",14),o.bIt("click",function(){o.eBV(e);const r=o.XpG().$implicit,s=o.XpG(3);return o.Njj(s.applySuspiciousMetric(r,!0))}),o.EFF(1," High-Risk\xa0"),o.nrm(2,"i",15),o.k0s()}}function R_e(n,t){1&n&&(o.j41(0,"mat-button-toggle",12),o.EFF(1," High-Risk\xa0"),o.nrm(2,"i",16),o.k0s())}function P_e(n,t){if(1&n){const e=o.RV6();o.nrm(0,"div",6),o.j41(1,"div",7)(2,"b"),o.EFF(3),o.nI1(4,"truncateText"),o.k0s(),o.DNE(5,B_e,3,1),o.k0s(),o.j41(6,"div")(7,"mat-button-toggle-group")(8,"mat-button-toggle",8),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(3);return o.Njj(s.applySuspiciousMetric(r,!1))}),o.EFF(9," Apply preset\xa0"),o.nrm(10,"i",9),o.EFF(11,"\xa0"),o.nrm(12,"i",10),o.k0s(),o.DNE(13,k_e,3,0,"mat-button-toggle",11)(14,R_e,3,0,"mat-button-toggle",12),o.k0s()()}if(2&n){const e=t.$implicit,i=o.XpG(3);o.R7$(),o.FS9("title",i.getNameAndDescriptionOfMetric(e.metric)),o.R7$(2),o.JRh(o.i5U(4,6,e.metric,40)),o.R7$(2),o.vxM(i.getDescriptionOfMetric(e.metric)?5:-1),o.R7$(3),o.Mz_("title","Apply Map Configuration to show files with suspicious metric ",e.metric," and high risk or very high risk depending on selection"),o.R7$(5),o.vxM(e.isOutlier?13:14)}}function O_e(n,t){if(1&n&&(o.j41(0,"div",5),o.Z7z(1,P_e,15,9,null,null,o.fX1),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.Dyx(e.data.suspiciousMetricSuggestionLinks)}}function N_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",1)(1,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.toggleSuspiciousMetricsVisibility())}),o.j41(2,"span",3),o.nrm(3,"i",4),o.k0s(),o.EFF(4," Suspicious Metrics in "),o.j41(5,"code"),o.EFF(6),o.k0s(),o.EFF(7," code "),o.k0s()(),o.DNE(8,O_e,3,0,"div",5)}if(2&n){const e=o.XpG();o.Mz_("title","Suspicious Metrics in .",e.data.analyzedProgrammingLanguage," code"),o.R7$(3),o.Y8G("ngClass",o.l_i(5,D_e,!e.isSuspiciuosMetricsVisible,e.isSuspiciuosMetricsVisible)),o.R7$(3),o.SpI(".",e.data.analyzedProgrammingLanguage,""),o.R7$(2),o.vxM(e.isSuspiciuosMetricsVisible?8:-1)}}function L_e(n,t){if(1&n&&(o.j41(0,"div",0),o.EFF(1," No Suspicious Metrics found in "),o.j41(2,"code"),o.EFF(3),o.k0s(),o.EFF(4,"! "),o.k0s()),2&n){const e=o.XpG();o.Mz_("title","Suspicious Metrics in this .",e.data.analyzedProgrammingLanguage," code"),o.R7$(3),o.SpI(".",e.data.analyzedProgrammingLanguage,"")}}let U_e=(()=>{class n{constructor(e,i){this.store=e,this.dialog=i,this.isSuspiciuosMetricsVisible=!0}toggleSuspiciousMetricsVisibility(){this.isSuspiciuosMetricsVisible=!this.isSuspiciuosMetricsVisible}applySuspiciousMetric(e,i){this.store.dispatch(jp({value:rP})),this.store.dispatch(qp({value:e.metric})),this.store.dispatch(Hu({value:e.metric})),this.store.dispatch(Zh({value:{from:e.from,to:i?e.outlierThreshold:e.to}})),this.store.dispatch(Hp({value:{positive:i?"#ffffff":qh.positive,neutral:i?"#ffffff":qh.neutral,negative:i?"#A900C0":qh.negative}})),this.matMenuTriggerReference.closeMenu()}getNameAndDescriptionOfMetric(e){const i=qw.get(e);return i?`${e.toUpperCase()} (${i.toLowerCase()})`:e.toUpperCase()}getDescriptionOfMetric(e){const i=qw.get(e);return i?`${i.toLowerCase()}`:""}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-suspicious-metrics-list"]],inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:2,vars:1,consts:[[1,"sub-title-not-text-content","sub-title",3,"title"],[1,"sub-title",3,"title"],["data-testid","Suspicious Metrics",1,"show-metrics-button",3,"click"],[1,"caret-icon-span"],[1,"fa",3,"ngClass"],[1,"text-content","grid-container-suspicious"],["id","spacer"],[3,"title"],[3,"click","title"],[1,"fa","fa-arrows-v"],[1,"fa","fa-paint-brush"],["title","Show very high risk files (90th percentile)"],["title","No high risk profile detected","disabled",""],[1,"sub-sub-title"],["title","Show very high risk files (90th percentile)",3,"click"],[1,"fa","fa-exclamation-triangle","risk-button-active"],[1,"fa","fa-exclamation-triangle"]],template:function(i,r){1&i&&o.DNE(0,N_e,9,8)(1,L_e,5,3,"div",0),2&i&&o.vxM(r.data.suspiciousMetricSuggestionLinks.length?0:1)},dependencies:[Sn,U7,JR,XX],styles:[".grid-container-suspicious[_ngcontent-%COMP%]{display:grid;column-gap:4px;row-gap:8px;grid-template-columns:auto auto auto;place-items:center left}.grid-container-suspicious[_ngcontent-%COMP%] #spacer[_ngcontent-%COMP%]{width:14px}.grid-container-suspicious.text-content[_ngcontent-%COMP%]{padding-top:16px}.grid-container-suspicious[_ngcontent-%COMP%] .fa-exclamation-triangle.risk-button-active[_ngcontent-%COMP%]{color:#9c0e6a}.sub-sub-title[_ngcontent-%COMP%]{font-size:11px;color:#999;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sub-title-not-text-content[_ngcontent-%COMP%]{padding-bottom:8px}"]})}}return n})();const V_e=(n,t)=>({"fa-caret-right":n,"fa-caret-down":t});function H_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",0)(1,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG(2);return o.Njj(r.toggleUnsuspiciousMetricsVisibility())}),o.j41(2,"span",3),o.nrm(3,"i",4),o.k0s(),o.EFF(4," Unsuspicious metrics in "),o.j41(5,"code"),o.EFF(6),o.k0s(),o.EFF(7," code "),o.k0s()()}if(2&n){const e=o.XpG(2);o.R7$(3),o.Y8G("ngClass",o.l_i(2,V_e,!e.isUnsuspiciuosMetricsVisible,e.isUnsuspiciuosMetricsVisible)),o.R7$(3),o.SpI(".",e.data.analyzedProgrammingLanguage,"")}}function Q_e(n,t){if(1&n&&(o.j41(0,"li"),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.R7$(),o.JRh(e)}}function z_e(n,t){if(1&n&&(o.j41(0,"ul",1),o.Z7z(1,Q_e,2,1,"li",null,o.fX1),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.Dyx(e.data.unsuspiciousMetrics)}}function G_e(n,t){if(1&n&&o.DNE(0,H_e,8,5,"div",0)(1,z_e,3,0,"ul",1),2&n){const e=o.XpG();o.vxM(e.data.analyzedProgrammingLanguage.length?0:-1),o.R7$(),o.vxM(e.isUnsuspiciuosMetricsVisible?1:-1)}}let j_e=(()=>{class n{constructor(){this.isUnsuspiciuosMetricsVisible=!1}toggleUnsuspiciousMetricsVisibility(){this.isUnsuspiciuosMetricsVisible=!this.isUnsuspiciuosMetricsVisible}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-unsuspicious-metrics-list"]],inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[1,"sub-title"],["data-testid","List of Unsuspicious Metrics in ts Code",1,"text-content"],["data-testid","Unsuspicious Metrics","title","Show/Hide Unsuspicious Metrics",1,"show-metrics-button",3,"click"],[1,"caret-icon-span"],[1,"fa",3,"ngClass"]],template:function(i,r){1&i&&o.DNE(0,G_e,2,2),2&i&&o.vxM(r.data.unsuspiciousMetrics.length?0:-1)},dependencies:[Sn],encapsulation:2})}}return n})();const $_e=(n,t)=>({"fa-caret-right":n,"fa-caret-down":t});function q_e(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",0)(1,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG(2);return o.Njj(r.toggleUntrackedMetricsVisibility())}),o.j41(2,"span",3),o.nrm(3,"i",4),o.k0s(),o.EFF(4," Untracked metrics in "),o.j41(5,"code"),o.EFF(6),o.k0s(),o.EFF(7," code "),o.k0s()()}if(2&n){const e=o.XpG(2);o.R7$(3),o.Y8G("ngClass",o.l_i(2,$_e,!e.isUntrackedMetricsVisible,e.isUntrackedMetricsVisible)),o.R7$(3),o.SpI(".",e.data.analyzedProgrammingLanguage,"")}}function W_e(n,t){if(1&n&&(o.j41(0,"li"),o.EFF(1),o.k0s()),2&n){const e=t.$implicit;o.R7$(),o.JRh(e)}}function X_e(n,t){if(1&n&&(o.j41(0,"ul",1),o.Z7z(1,W_e,2,1,"li",null,o.fX1),o.k0s()),2&n){const e=o.XpG(2);o.R7$(),o.Dyx(e.data.untrackedMetrics)}}function K_e(n,t){1&n&&(o.j41(0,"div"),o.EFF(1,"No programming language was found for analyzing suspicious metrics."),o.k0s())}function Y_e(n,t){if(1&n&&o.DNE(0,q_e,8,5,"div",0)(1,X_e,3,0,"ul",1)(2,K_e,2,0,"div"),2&n){const e=o.XpG();o.vxM(e.data.analyzedProgrammingLanguage.length?0:-1),o.R7$(),o.vxM(e.isUntrackedMetricsVisible?1:-1),o.R7$(),o.vxM(void 0===e.data.analyzedProgrammingLanguage?2:-1)}}let Z_e=(()=>{class n{constructor(){this.isUntrackedMetricsVisible=!1}toggleUntrackedMetricsVisibility(){this.isUntrackedMetricsVisible=!this.isUntrackedMetricsVisible}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-untracked-metrics-list"]],inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[1,"sub-title"],["data-testid","List of Untracked Metrics in ts Code",1,"text-content"],["data-testid","Untracked Metrics","title","Show/Hide Untracked Metrics",1,"show-metrics-button",3,"click"],[1,"caret-icon-span"],[1,"fa",3,"ngClass"]],template:function(i,r){1&i&&o.DNE(0,Y_e,3,3),2&i&&o.vxM(r.data.untrackedMetrics.length?0:-1)},dependencies:[Sn],encapsulation:2})}}return n})(),ZX=(()=>{class n{constructor(e){this.dialog=e}openDialog(){this.dialog.open(F_e,{width:"500px"})}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Es))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-suspicious-metrics-menu"]],viewQuery:function(i,r){if(1&i&&(o.GBs(rx,5),o.GBs(Yh,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.menuTrigger=s.first),o.mGM(s=o.lsd())&&(r.menu=s.first)}},inputs:{matMenuTriggerReference:"matMenuTriggerReference",data:"data"},standalone:!0,features:[o.aNF],decls:9,vars:6,consts:[[3,"click"],[1,"title"],["icon","fa fa-question-circle-o","title","Open Information about Suspicious Metrics",3,"click"],[1,"suspicious-menu-content-wrapper"],[3,"data","matMenuTriggerReference"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.bIt("click",function(l){return l.stopPropagation()}),o.j41(1,"div")(2,"div",1),o.EFF(3,"Suspicious Metrics"),o.k0s(),o.j41(4,"cc-action-icon",2),o.bIt("click",function(){return r.openDialog()}),o.k0s()(),o.j41(5,"div",3),o.nrm(6,"cc-suspicious-metrics-list",4)(7,"cc-unsuspicious-metrics-list",4)(8,"cc-untracked-metrics-list",4),o.k0s()()),2&i&&(o.R7$(6),o.Y8G("data",r.data)("matMenuTriggerReference",r.matMenuTriggerReference),o.R7$(),o.Y8G("data",r.data)("matMenuTriggerReference",r.matMenuTriggerReference),o.R7$(),o.Y8G("data",r.data)("matMenuTriggerReference",r.matMenuTriggerReference))},dependencies:[pl,U_e,j_e,Z_e],styles:[".suspicious-menu-content-wrapper[_ngcontent-%COMP%]{padding:8px}"]})}}return n})();const J_e=["matMenuTrigger"];function ebe(n,t){if(1&n&&(o.j41(0,"span",3),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.SpI(" ",e.data.suspiciousMetricSuggestionLinks.length," ")}}let tbe=(()=>{class n{constructor(){this.hideBadge=!1}ngOnChanges(e){e.data&&!Qg(e.data.previousValue,e.data.currentValue)&&(this.hideBadge=!1)}ngAfterViewInit(){this.menuComponent&&(this.menu=this.menuComponent.menu)}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-suspicious-metrics"]],viewQuery:function(i,r){if(1&i&&(o.GBs(ZX,5),o.GBs(J_e,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.menuComponent=s.first),o.mGM(s=o.lsd())&&(r.matMenuTrigger=s.first)}},inputs:{data:"data",menu:"menu"},standalone:!0,features:[o.OA$,o.aNF],decls:6,vars:5,consts:[["matMenuTrigger","matMenuTrigger"],["menu","matMenu"],["icon","fa-exclamation-triangle",3,"click","title","matMenuTriggerFor"],[1,"cc-suspicious-metrics-badge"],[1,"cc-ai-drop-down","cc-suspicious-metric-panel"],[3,"data","matMenuTriggerReference"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"cc-ribbon-bar-menu-button",2,0),o.bIt("click",function(){return o.eBV(s),o.Njj(r.hideBadge=!0)}),o.DNE(2,ebe,2,1,"span",3),o.k0s(),o.j41(3,"mat-menu",4,1),o.nrm(5,"cc-suspicious-metrics-menu",5),o.k0s()}if(2&i){const s=o.sdS(1),l=o.sdS(4);o.Y8G("title","Open Suspicious Metrics Panel")("matMenuTriggerFor",l),o.R7$(2),o.vxM(r.hideBadge||void 0===r.data.analyzedProgrammingLanguage&&!r.data.suspiciousMetricSuggestionLinks.length&&!r.data.unsuspiciousMetrics.length?-1:2),o.R7$(3),o.Y8G("data",r.data)("matMenuTriggerReference",s)}},dependencies:[tP,rx,Yh,ZX],styles:[".cc-suspicious-metrics-badge[_ngcontent-%COMP%]{position:absolute;bottom:10px;padding:4px 6px;border-radius:50%;background:red;color:#fff;font-size:10px;line-height:10px}"]})}}return n})(),nbe=(()=>{class n{constructor(e){this.element=e,this.ccRiskProfileBar=0}ngOnChanges(e){e.ccRiskProfileBar&&(this.element.nativeElement.style.display=this.ccRiskProfileBar>0?"flex":"none",this.element.nativeElement.style.width=`${this.ccRiskProfileBar}%`,this.element.nativeElement.style.color=this.ccRiskProfileBar>5?"black":"rgba(0,0,0,0)")}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT))}}static{this.\u0275dir=o.FsC({type:n,selectors:[["","ccRiskProfileBar",""]],inputs:{ccRiskProfileBar:"ccRiskProfileBar"},standalone:!0,features:[o.OA$]})}}return n})();function ibe(n,t){if(1&n&&(o.j41(0,"div",3),o.EFF(1,"Risk Profile"),o.k0s(),o.j41(2,"div",4),o.EFF(3," The Risk Profile gives a quick overview about the complexity and risk structure of the code base. It tells you how much of the code is placed in files associated with low/high risk in means of maintainability. The separation of code in risk classes like low or high complexity is based on Java reference metric values and therefore may be inaccurate for other programming languages. More information can be found in the "),o.j41(4,"a",5),o.EFF(5,"How-To Article "),o.nrm(6,"i",6),o.k0s(),o.EFF(7,". "),o.k0s(),o.j41(8,"div",7)(9,"div"),o.nrm(10,"i",8),o.EFF(11," Calculations are based on an available complexity metric"),o.k0s()(),o.j41(12,"div",4)(13,"ul")(14,"li"),o.EFF(15),o.k0s(),o.j41(16,"li"),o.EFF(17),o.k0s(),o.j41(18,"li"),o.EFF(19),o.k0s(),o.j41(20,"li"),o.EFF(21),o.k0s()()(),o.j41(22,"div",9)(23,"div",10),o.EFF(24),o.k0s(),o.j41(25,"div",11),o.EFF(26),o.k0s(),o.j41(27,"div",12),o.EFF(28),o.k0s(),o.j41(29,"div",13),o.EFF(30),o.k0s()()),2&n){const e=o.XpG();o.R7$(15),o.SpI("",e.data.riskProfile.lowRisk,"% of overall code is in files with low complexity"),o.R7$(2),o.SpI("",e.data.riskProfile.moderateRisk,"% of overall code is in files with moderate complexity"),o.R7$(2),o.SpI("",e.data.riskProfile.highRisk,"% of overall code is in files with high complexity"),o.R7$(2),o.SpI("",e.data.riskProfile.veryHighRisk,"% of overall code is in files with extreme complexity"),o.R7$(2),o.Mz_("title","Low Risk (",e.data.riskProfile.lowRisk,"% of code)"),o.Y8G("ccRiskProfileBar",e.data.riskProfile.lowRisk),o.R7$(),o.SpI(" ",e.data.riskProfile.lowRisk,"% "),o.R7$(),o.Mz_("title","Moderate Risk (",e.data.riskProfile.moderateRisk,"% of code)"),o.Y8G("ccRiskProfileBar",e.data.riskProfile.moderateRisk),o.R7$(),o.SpI(" ",e.data.riskProfile.moderateRisk,"% "),o.R7$(),o.Mz_("title","High Risk (",e.data.riskProfile.highRisk,"% of code)"),o.Y8G("ccRiskProfileBar",e.data.riskProfile.highRisk),o.R7$(),o.SpI(" ",e.data.riskProfile.highRisk,"% "),o.R7$(),o.Mz_("title","Very High Risk (",e.data.riskProfile.veryHighRisk,"% of code)"),o.Y8G("ccRiskProfileBar",e.data.riskProfile.veryHighRisk),o.R7$(),o.SpI(" ",e.data.riskProfile.veryHighRisk,"% ")}}function rbe(n,t){1&n&&(o.j41(0,"span"),o.EFF(1," Could not calculate Risk Profile. At least one of the metrics rloc (real lines of code) or complexity (cyclomatic complexity) is not available. "),o.k0s(),o.nrm(2,"br")(3,"br"),o.j41(4,"span"),o.EFF(5," Be aware that complexity was previously named mcc. Old maps which still contain mcc instead of complexity need to be regenerated for the risk profile to work. "),o.k0s())}let obe=(()=>{class n{static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-high-risk-profile"]],inputs:{data:"data"},standalone:!0,features:[o.aNF],decls:5,vars:4,consts:[["menu","matMenu"],["icon","fa-bar-chart",3,"title","matMenuTriggerFor"],[1,"cc-ai-drop-down","cc-high-risk-profile"],[1,"title"],[1,"text-content"],["target","_blank","rel","noopener","href","https://codecharta.com/docs/visualization/risk-profile"],[1,"fa","fa-external-link"],[1,"sub-title"],[1,"fa","fa-lightbulb-o"],[1,"cc-risk-profiles"],[1,"cc-risk-profile","cc-low-risk",3,"ccRiskProfileBar","title"],[1,"cc-risk-profile","cc-moderate-risk",3,"ccRiskProfileBar","title"],[1,"cc-risk-profile","cc-high-risk",3,"ccRiskProfileBar","title"],[1,"cc-risk-profile","cc-very-high-risk",3,"ccRiskProfileBar","title"]],template:function(i,r){if(1&i&&(o.nrm(0,"cc-ribbon-bar-menu-button",1),o.j41(1,"mat-menu",2,0),o.DNE(3,ibe,31,20)(4,rbe,6,0),o.k0s()),2&i){const s=o.sdS(2);o.Y8G("title","Open High Risk Profile")("matMenuTriggerFor",s),o.R7$(3),o.vxM(void 0!==r.data.riskProfile?3:-1),o.R7$(),o.vxM(void 0===r.data.riskProfile?4:-1)}},dependencies:[tP,rx,Yh,nbe],styles:["ul[_ngcontent-%COMP%]{margin:0}.cc-risk-profiles[_ngcontent-%COMP%]{margin:0 -10px -10px;display:flex}.cc-risk-profile[_ngcontent-%COMP%]{height:36px;text-align:center;justify-content:center;align-items:center;overflow:hidden}.cc-risk-profile.cc-low-risk[_ngcontent-%COMP%]{background-color:#5cb34d}.cc-risk-profile.cc-moderate-risk[_ngcontent-%COMP%]{background-color:#eef432}.cc-risk-profile.cc-high-risk[_ngcontent-%COMP%]{background-color:#cc2900}.cc-risk-profile.cc-very-high-risk[_ngcontent-%COMP%]{background-color:#9c0e6a}.sub-title[_ngcontent-%COMP%]{font-size:16px}"]})}}return n})();function sbe(n,t){if(1&n&&o.nrm(0,"cc-suspicious-metrics",0)(1,"cc-high-risk-profile",0),2&n){const e=t;o.Y8G("data",e),o.R7$(),o.Y8G("data",e)}}let abe=(()=>{class n{constructor(e){this.store=e,this.data$=this.store.select(I_e)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-artificial-intelligence"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"data"]],template:function(i,r){if(1&i&&(o.DNE(0,sbe,2,2),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.data$))?0:-1,s)}},dependencies:[tbe,obe,zn],styles:["[_nghost-%COMP%]{display:flex;justify-content:center;gap:4px}"]})}}return n})(),lbe=(()=>{class n{constructor(e){this.store=e,this.areaMetric$=this.store.select(hv)}handleAreaMetricChanged(e){this.store.dispatch(jp({value:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-area-metric-chooser"]],standalone:!0,features:[o.aNF],decls:2,vars:4,consts:[["icon","fa-arrows-alt","metricFor","areaMetric","searchPlaceholder","Area Metric (highest value)","title","Change area metric",3,"selectedMetricName","handleMetricChanged"]],template:function(i,r){1&i&&(o.nrm(0,"cc-metric-chooser",0),o.nI1(1,"async")),2&i&&o.Y8G("selectedMetricName",o.bMT(1,2,r.areaMetric$))("handleMetricChanged",r.handleAreaMetricChanged)},dependencies:[D2,zn],encapsulation:2})}}return n})();const JX=sn($c,n=>n.margin),eK=sn(ko,n=>n.enableFloorLabels),tK=sn(ko,n=>n.invertArea),cbe=()=>["dynamicSettings.margin","appSettings.invertArea","appSettings.enableFloorLabels"];let dbe=(()=>{class n{static{this.DEBOUNCE_TIME=400}constructor(e){this.store=e,this.margin$=this.store.select(JX),this.enableFloorLabels$=this.store.select(eK),this.isInvertedArea$=this.store.select(tK),this.applyDebouncedMargin=ef(i=>{this.store.dispatch(cx({value:i}))},n.DEBOUNCE_TIME)}setEnableFloorLabel(e){this.store.dispatch(s2({value:e.checked}))}toggleInvertingArea(e){this.store.dispatch(l2({value:e.checked}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-area-settings-panel"]],standalone:!0,features:[o.aNF],decls:10,vars:14,consts:[[1,"options"],["title","Amount of space between buildings in percent","label","Margin",3,"value","onChange","min","max"],[3,"change","checked"],["tooltip","Reset area metric settings to their defaults","label","Reset area metric settings",3,"settingsKeys"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nrm(1,"cc-slider",1),o.nI1(2,"async"),o.j41(3,"mat-checkbox",2),o.nI1(4,"async"),o.bIt("change",function(l){return r.setEnableFloorLabel(l)}),o.EFF(5,"Enable Floor Labels"),o.k0s(),o.j41(6,"mat-checkbox",2),o.nI1(7,"async"),o.bIt("change",function(l){return r.toggleInvertingArea(l)}),o.EFF(8,"Invert Area"),o.k0s(),o.nrm(9,"cc-reset-settings-button",3),o.k0s()),2&i&&(o.R7$(),o.Y8G("value",o.bMT(2,7,r.margin$))("onChange",r.applyDebouncedMargin)("min",1)("max",100),o.R7$(2),o.Y8G("checked",o.bMT(4,9,r.enableFloorLabels$)),o.R7$(3),o.Y8G("checked",o.bMT(7,11,r.isInvertedArea$)),o.R7$(3),o.Y8G("settingsKeys",o.lJ4(13,cbe)))},dependencies:[GR,fv,S2,zn],styles:["[_nghost-%COMP%]{text-align:left;max-height:300px}[_nghost-%COMP%] .options[_ngcontent-%COMP%]{display:flex;flex-direction:column}"]})}}return n})(),ube=(()=>{class n{constructor(e){this.store=e,this.heightMetric$=this.store.select(C2)}handleHeightMetricChanged(e){this.store.dispatch(qp({value:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-height-metric-chooser"]],standalone:!0,features:[o.aNF],decls:2,vars:4,consts:[["icon","fa-arrows-v","metricFor","heightMetric","searchPlaceholder","Height Metric (highest value)","title","Change height metric",3,"selectedMetricName","handleMetricChanged"]],template:function(i,r){1&i&&(o.nrm(0,"cc-metric-chooser",0),o.nI1(1,"async")),2&i&&o.Y8G("selectedMetricName",o.bMT(1,2,r.heightMetric$))("handleMetricChanged",r.handleHeightMetricChanged)},dependencies:[D2,zn],encapsulation:2})}}return n})();const hbe=sn(ko,n=>n.amountOfTopLabels),nK=sn(ko,n=>n.colorLabels),fbe=sn(nK,n=>n.negative||n.neutral||n.positive),pbe=sn(ko,n=>n.showMetricLabelNodeName),Abe=sn(ko,n=>n.showMetricLabelNameValue),mbe=sn(ko,n=>n.scaling),gbe=sn(ko,n=>n.invertHeight),_be=()=>["appSettings.amountOfTopLabels","appSettings.scaling.y","appSettings.invertHeight"];function bbe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-checkbox",1),o.nI1(1,"async"),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.setInvertHeight(r))}),o.EFF(2," Invert Height "),o.k0s()}if(2&n){const e=o.XpG();o.Y8G("checked",o.bMT(1,1,e.invertHeight$))}}let vbe=(()=>{class n{static{this.DEBOUNCE_TIME=400}constructor(e){this.store=e,this.amountOfTopLabels$=this.store.select(hbe),this.isLabelsSliderDisabled$=this.store.select(fbe),this.showMetricLabelNodeName$=this.store.select(pbe),this.showMetricLabelNodeValue$=this.store.select(Abe),this.scaling$=this.store.select(mbe),this.invertHeight$=this.store.select(gbe),this.isDeltaState$=this.store.select(Kp),this.applyDebouncedTopLabels=ef(i=>{this.store.dispatch(r0({value:i}))},n.DEBOUNCE_TIME),this.applyDebouncedScalingY=ef(i=>{this.store.dispatch(lx({value:{y:i}}))},n.DEBOUNCE_TIME)}setShowMetricLabelNodeName(e){this.store.dispatch(A2({value:e.checked}))}setShowMetricLabelNameValue(e){this.store.dispatch(p2({value:e.checked}))}setInvertHeight(e){this.store.dispatch(c2({value:e.checked}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-height-settings-panel"]],standalone:!0,features:[o.aNF],decls:16,vars:32,consts:[["label","Labels",1,"cc-height-settings-panel-row",3,"disabled","title","min","max","value","onChange"],[3,"change","checked"],["title","Height","label","Height",1,"cc-height-settings-panel-row",3,"step","min","max","value","onChange"],[3,"checked"],["tooltip","Reset height metric settings to their defaults","label","Reset height metric settings",3,"settingsKeys"]],template:function(i,r){1&i&&(o.nrm(0,"cc-slider",0),o.nI1(1,"async"),o.nI1(2,"async"),o.nI1(3,"async"),o.nI1(4,"async"),o.j41(5,"mat-checkbox",1),o.nI1(6,"async"),o.bIt("change",function(l){return r.setShowMetricLabelNodeName(l)}),o.EFF(7,"Show label node names\n"),o.k0s(),o.j41(8,"mat-checkbox",1),o.nI1(9,"async"),o.bIt("change",function(l){return r.setShowMetricLabelNameValue(l)}),o.EFF(10,"Show label node metrics\n"),o.k0s(),o.nrm(11,"cc-slider",2),o.nI1(12,"async"),o.DNE(13,bbe,3,3,"mat-checkbox",3),o.nI1(14,"async"),o.nrm(15,"cc-reset-settings-button",4)),2&i&&(o.Y8G("disabled",o.bMT(1,15,r.isLabelsSliderDisabled$))("title",o.bMT(2,17,r.isLabelsSliderDisabled$)?"Disabled because color labels are used":"Display the labels of the "+o.bMT(3,19,r.amountOfTopLabels$)+" highest buildings")("min",0)("max",50)("value",o.bMT(4,21,r.amountOfTopLabels$))("onChange",r.applyDebouncedTopLabels),o.R7$(5),o.Y8G("checked",o.bMT(6,23,r.showMetricLabelNodeName$)),o.R7$(3),o.Y8G("checked",o.bMT(9,25,r.showMetricLabelNodeValue$)),o.R7$(3),o.Y8G("step",1)("min",1)("max",5)("value",o.bMT(12,27,r.scaling$).y)("onChange",r.applyDebouncedScalingY),o.R7$(2),o.vxM(o.bMT(14,29,r.isDeltaState$)?-1:13),o.R7$(2),o.Y8G("settingsKeys",o.lJ4(31,_be)))},dependencies:[GR,fv,S2,zn],encapsulation:2})}}return n})();const $7=sn(ko,n=>n.isColorMetricLinkedToHeightMetric);let ybe=(()=>{class n{constructor(e){this.store=e,this.isColorMetricLinkedToHeightMetric$=this.store.select($7)}toggleIsColorMetricLinkedToHeightMetric(){this.store.dispatch(o6())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-link-color-metric-to-height-metric-button"]],standalone:!0,features:[o.aNF],decls:4,vars:6,consts:[[1,"cc-link-metrics-button",3,"click","title"],[3,"ngClass"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.nI1(1,"async"),o.bIt("click",function(){return r.toggleIsColorMetricLinkedToHeightMetric()}),o.nrm(2,"i",1),o.nI1(3,"async"),o.k0s()),2&i&&(o.FS9("title",o.bMT(1,2,r.isColorMetricLinkedToHeightMetric$)?"Unlink Height and Color Metric":"Link Height and Color Metric"),o.R7$(2),o.Y8G("ngClass",o.bMT(3,4,r.isColorMetricLinkedToHeightMetric$)?"fa fa-chain-broken":"fa fa-link"))},dependencies:[Sn,zn],styles:["[_nghost-%COMP%]{display:flex;justify-content:center;height:100%}[_nghost-%COMP%] .cc-link-metrics-button[_ngcontent-%COMP%]{width:50px;height:100%;padding:0;margin:0;background-color:transparent}[_nghost-%COMP%] .cc-link-metrics-button[_ngcontent-%COMP%] .fa[_ngcontent-%COMP%]{color:#444}[_nghost-%COMP%] .cc-link-metrics-button[_ngcontent-%COMP%]:hover{background-color:#c8c8c8}"]})}}return n})(),wbe=(()=>{class n{constructor(e){this.store=e,this.colorMetric$=this.store.select(zg),this.isColorMetricLinkedToHeightMetric$=this.store.select($7)}handleColorMetricChanged(e){this.store.dispatch(Hu({value:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-color-metric-chooser"]],standalone:!0,features:[o.aNF],decls:4,vars:10,consts:[["icon","fa-paint-brush","metricFor","colorMetric","searchPlaceholder","Color Metric (highest value)",3,"selectedMetricName","handleMetricChanged","isDisabled"]],template:function(i,r){1&i&&(o.nrm(0,"cc-metric-chooser",0),o.nI1(1,"async"),o.nI1(2,"async"),o.nI1(3,"async")),2&i&&(o.Y8G("selectedMetricName",o.bMT(1,4,r.colorMetric$))("handleMetricChanged",r.handleColorMetricChanged)("isDisabled",o.bMT(2,6,r.isColorMetricLinkedToHeightMetric$)),o.BMQ("title",o.bMT(3,8,r.isColorMetricLinkedToHeightMetric$)?"Currently linked to height metric":"Change color metric"))},dependencies:[D2,zn],encapsulation:2})}}return n})();const Cbe=({thumbX:n,minValue:t,maxValue:e,sliderWidth:i})=>Math.round(t+n*((e-t)/i)),iK=({newThumbScreenX:n,sliderBoundingClientRectX:t,thumbRadius:e,sliderWidth:i,minValue:r,maxValue:s})=>{const l=n-t+e;return{updatedThumbX:l,upcomingValue:Cbe({thumbX:l,minValue:r,maxValue:s,sliderWidth:i})}},Sbe=["minLabel"],Tbe=["maxLabel"],Ibe=["currentLeftLabel"],Fbe=["currentRightLabel"],Dbe=["combinedCurrentLeftRightLabel"];let Bbe=(()=>{class n{constructor(e){this.changeDetector=e,this.hideMinLabel=!1,this.hideMaxLabel=!1,this.doLeftRightLabelOverlap=!1}ngAfterViewChecked(){this.updateLabelDisplays()}updateLabelDisplays(){const e=this.minLabel.nativeElement.getBoundingClientRect().width,i=this.currentLeftLabel.nativeElement.getBoundingClientRect().width;this.currentLeftLabelLeftPosition=this.sliderRangePosition.leftEnd-i/2;const r=this.currentRightLabel.nativeElement.getBoundingClientRect().width,s=this.sliderWidth-this.maxLabel.nativeElement.getBoundingClientRect().width;this.currentRightLabelLeftPosition=this.sliderRangePosition.rightStart-r/2,this.hideMinLabel=this.currentLeftLabelLeftPosition<=e+4,this.hideMaxLabel=this.currentRightLabelLeftPosition+r+4>=s;const l=this.currentLeftLabelLeftPosition+i;this.doLeftRightLabelOverlap=l+4>=this.currentRightLabelLeftPosition;const u=(l+this.currentRightLabelLeftPosition)/2,f=this.combinedCurrentLeftRightLabel.nativeElement.getBoundingClientRect().width;this.combinedCurrentLeftRightLabelLeftPosition=u-f/2,this.changeDetector.detectChanges()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.gRc))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-range-slider-labels"]],viewQuery:function(i,r){if(1&i&&(o.GBs(Sbe,5),o.GBs(Tbe,5),o.GBs(Ibe,5),o.GBs(Fbe,5),o.GBs(Dbe,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.minLabel=s.first),o.mGM(s=o.lsd())&&(r.maxLabel=s.first),o.mGM(s=o.lsd())&&(r.currentLeftLabel=s.first),o.mGM(s=o.lsd())&&(r.currentRightLabel=s.first),o.mGM(s=o.lsd())&&(r.combinedCurrentLeftRightLabel=s.first)}},inputs:{minValue:"minValue",maxValue:"maxValue",leftValueLabel:"leftValueLabel",rightValueLabel:"rightValueLabel",sliderRangePosition:"sliderRangePosition",sliderWidth:"sliderWidth"},standalone:!0,features:[o.aNF],decls:15,vars:26,consts:[["minLabel",""],["currentLeftLabel",""],["currentRightLabel",""],["combinedCurrentLeftRightLabel",""],["maxLabel",""],[1,"cc-range-slider-label"]],template:function(i,r){1&i&&(o.j41(0,"div",5,0),o.EFF(2),o.k0s(),o.j41(3,"div",5,1),o.EFF(5),o.k0s(),o.j41(6,"div",5,2),o.EFF(8),o.k0s(),o.j41(9,"div",5,3),o.EFF(11),o.k0s(),o.j41(12,"div",5,4),o.EFF(14),o.k0s()),2&i&&(o.xc7("left",0,"px")("visibility",r.hideMinLabel?"hidden":"visible"),o.R7$(2),o.SpI(" ",r.minValue,"\n"),o.R7$(),o.xc7("left",r.currentLeftLabelLeftPosition,"px")("visibility",r.doLeftRightLabelOverlap?"hidden":"visible"),o.R7$(2),o.SpI(" ",r.leftValueLabel,"\n"),o.R7$(),o.xc7("left",r.currentRightLabelLeftPosition,"px")("visibility",r.doLeftRightLabelOverlap?"hidden":"visible"),o.R7$(2),o.SpI(" ",r.rightValueLabel,"\n"),o.R7$(),o.xc7("left",r.combinedCurrentLeftRightLabelLeftPosition,"px")("visibility",r.doLeftRightLabelOverlap?"visible":"hidden"),o.R7$(2),o.Lme(" ",r.leftValueLabel," - ",r.rightValueLabel,"\n"),o.R7$(),o.xc7("right",0,"px")("visibility",r.hideMaxLabel?"hidden":"visible"),o.R7$(2),o.SpI(" ",r.maxValue,"\n"))},styles:["[_nghost-%COMP%] .cc-range-slider-label[_ngcontent-%COMP%]{position:absolute;top:-25px;line-height:24px;font-size:14px;color:#aeaeae}"],changeDetection:0})}}return n})();const kbe=["rangeSliderContainer"],Rbe=["leftThumb"],Pbe=["rightThumb"];let Obe=(()=>{class n{constructor(){this.sliderWidth=150,this.sliderRangePosition={leftEnd:0,rightStart:0},this.thumbRadius=7,this.currentlySliding=void 0,this.resetCurrentlySlidingOnNextMouseUp=e=>{const i=()=>{this.currentlySliding=void 0,document.removeEventListener("mouseup",i),document.removeEventListener("mousemove",e)};document.addEventListener("mouseup",i)},this.handleLeftThumbMoved=e=>{const i=(({deltaX:n,thumbScreenX:t,thumbRadius:e,otherThumbScreenX:i,sliderBoundingClientRectX:r,sliderWidth:s,minValue:l,maxValue:u})=>{let f=t+n;return fi&&(f=i),iK({newThumbScreenX:f,sliderBoundingClientRectX:r,thumbRadius:e,sliderWidth:s,minValue:l,maxValue:u})})({deltaX:e.movementX,thumbScreenX:this.leftThumb.nativeElement.getBoundingClientRect().x,thumbRadius:this.thumbRadius,otherThumbScreenX:this.rightThumb.nativeElement.getBoundingClientRect().x,sliderBoundingClientRectX:this.sliderContainer.nativeElement.getBoundingClientRect().x,sliderWidth:this.sliderWidth,minValue:this.minValue,maxValue:this.maxValue});this.sliderRangePosition={leftEnd:i.updatedThumbX,rightStart:this.sliderRangePosition.rightStart},this.upcomingLeftValue=i.upcomingValue,this.handleValueChange({newLeftValue:i.upcomingValue})},this.handleRightThumbMoved=e=>{const i=(({deltaX:n,thumbScreenX:t,thumbRadius:e,otherThumbScreenX:i,sliderBoundingClientRectX:r,sliderWidth:s,minValue:l,maxValue:u})=>{let f=t+n;return f>r+s-e&&(f=r+s-e),f{const s=t-n;return s<=0?{leftEnd:r,rightStart:r}:{leftEnd:(e-n)/s*r,rightStart:(i-n)/s*r}})({minValue:this.minValue,maxValue:this.maxValue,currentLeftValue:this.currentLeftValue,currentRightValue:this.currentRightValue,sliderWidth:this.sliderWidth}),e.currentLeftValue&&(this.upcomingLeftValue=this.currentLeftValue),e.currentRightValue&&(this.upcomingRightValue=this.currentRightValue))}setCurrentlySliding(e){switch(this.currentlySliding=e,this.currentlySliding){case"leftThumb":document.addEventListener("mousemove",this.handleLeftThumbMoved),this.rightThumb.nativeElement.style.zIndex="0",this.leftThumb.nativeElement.style.zIndex="1",this.resetCurrentlySlidingOnNextMouseUp(this.handleLeftThumbMoved);break;case"rightThumb":document.addEventListener("mousemove",this.handleRightThumbMoved),this.leftThumb.nativeElement.style.zIndex="0",this.rightThumb.nativeElement.style.zIndex="1",this.resetCurrentlySlidingOnNextMouseUp(this.handleRightThumbMoved)}}handleCurrentLeftInputChanged(e){const i=C7(e,this.minValue,this.currentRightValue);i!==this.currentLeftValue&&this.handleValueChange({newLeftValue:i})}handleCurrentRightInputChanged(e){const i=C7(e,this.currentLeftValue,this.maxValue);i!==this.currentRightValue&&this.handleValueChange({newRightValue:i})}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-color-range-slider"]],viewQuery:function(i,r){if(1&i&&(o.GBs(kbe,5),o.GBs(Rbe,5),o.GBs(Pbe,5)),2&i){let s;o.mGM(s=o.lsd())&&(r.sliderContainer=s.first),o.mGM(s=o.lsd())&&(r.leftThumb=s.first),o.mGM(s=o.lsd())&&(r.rightThumb=s.first)}},inputs:{minValue:"minValue",maxValue:"maxValue",currentLeftValue:"currentLeftValue",currentRightValue:"currentRightValue",leftColor:"leftColor",middleColor:"middleColor",rightColor:"rightColor",handleValueChange:"handleValueChange",sliderWidth:"sliderWidth",isAttributeDirectionInversed:"isAttributeDirectionInversed"},standalone:!0,features:[o.OA$,o.aNF],decls:15,vars:28,consts:[["rangeSliderContainer",""],["leftThumb",""],["rightThumb",""],[1,"cc-range-slider-container"],["appearance","outline"],["matInput","","type","number",3,"input","value","min","max"],[1,"cc-range-slider-slider"],[1,"cc-range-slider-bar"],[1,"cc-range-slider-slider-thumb",3,"mousedown"],[3,"minValue","maxValue","leftValueLabel","rightValueLabel","sliderRangePosition","sliderWidth"]],template:function(i,r){if(1&i){const s=o.RV6();o.j41(0,"div",3)(1,"mat-form-field",4)(2,"input",5),o.bIt("input",function(u){return o.eBV(s),o.Njj(r.handleCurrentLeftInputChanged(u))}),o.k0s()(),o.j41(3,"div",6,0),o.nrm(5,"span",7)(6,"span",7)(7,"span",7),o.j41(8,"div",8,1),o.bIt("mousedown",function(){return o.eBV(s),o.Njj(r.setCurrentlySliding("leftThumb"))}),o.k0s(),o.j41(10,"div",8,2),o.bIt("mousedown",function(){return o.eBV(s),o.Njj(r.setCurrentlySliding("rightThumb"))}),o.k0s(),o.nrm(12,"cc-range-slider-labels",9),o.k0s(),o.j41(13,"mat-form-field",4)(14,"input",5),o.bIt("input",function(u){return o.eBV(s),o.Njj(r.handleCurrentRightInputChanged(u))}),o.k0s()()()}2&i&&(o.R7$(2),o.Y8G("value",r.currentLeftValue)("min",r.minValue)("max",r.upcomingRightValue),o.R7$(3),o.xc7("width",r.sliderRangePosition.leftEnd,"px")("border-bottom-color",r.leftColor),o.R7$(),o.xc7("width",r.sliderRangePosition.rightStart-r.sliderRangePosition.leftEnd,"px")("border-bottom-color",r.middleColor),o.R7$(),o.xc7("width",r.sliderWidth-r.sliderRangePosition.rightStart,"px")("border-bottom-color",r.rightColor),o.R7$(),o.xc7("left",r.sliderRangePosition.leftEnd-r.thumbRadius,"px"),o.R7$(2),o.xc7("left",r.sliderRangePosition.rightStart-r.thumbRadius,"px"),o.R7$(2),o.Y8G("minValue",r.minValue)("maxValue",r.maxValue)("leftValueLabel",r.upcomingLeftValue)("rightValueLabel",r.upcomingRightValue)("sliderRangePosition",r.sliderRangePosition)("sliderWidth",r.sliderWidth),o.R7$(2),o.Y8G("value",r.currentRightValue)("min",r.upcomingLeftValue)("max",r.maxValue))},dependencies:[Lu,t0,Bbe],styles:["[_nghost-%COMP%] .cc-range-slider-slider[_ngcontent-%COMP%]{display:flex;flex:1;margin:0 8px;position:relative;line-height:48px}[_nghost-%COMP%] .cc-range-slider-slider[_ngcontent-%COMP%] .cc-range-slider-bar[_ngcontent-%COMP%]{display:inline-block;border-bottom-width:4px;border-bottom-style:solid}[_nghost-%COMP%] .cc-range-slider-slider[_ngcontent-%COMP%] .cc-range-slider-slider-thumb[_ngcontent-%COMP%]{cursor:pointer;position:absolute;top:-4px;border-radius:100%;border:7px solid #1b9cfc}"]})}}return n})();const Nbe=sn($w,Kp,n=>({leftColor:n.positive,middleColor:n.neutral,rightColor:n.negative})),rK=sn($c,n=>n.colorRange),Lbe=sn(Vp,rK,(n,t)=>({values:n.values,min:n.minValue,max:n.maxValue,from:t.from,to:t.to}));function oK(n,t){let e;if(void 0===t)for(const i of n)null!=i&&(e=i)&&(e=i);else{let i=-1;for(let r of n)null!=(r=t(r,++i,n))&&(e=r)&&(e=r)}return e}function Vbe(n){return n}function Hbe(n){return"translate("+n+",0)"}function Qbe(n){return"translate(0,"+n+")"}function zbe(n){return t=>+n(t)}function Gbe(n,t){return t=Math.max(0,n.bandwidth()-2*t)/2,n.round()&&(t=Math.round(t)),e=>+n(e)+t}function jbe(){return!this.__axis}function aP(n,t){var e=[],i=null,r=null,s=6,l=6,u=3,f=typeof window<"u"&&window.devicePixelRatio>1?0:.5,p=1===n||4===n?-1:1,m=4===n||2===n?"x":"y",_=1===n||3===n?Hbe:Qbe;function b(w){var F=i??(t.ticks?t.ticks.apply(t,e):t.domain()),D=r??(t.tickFormat?t.tickFormat.apply(t,e):Vbe),T=Math.max(s,0)+u,I=t.range(),O=+I[0]+f,R=+I[I.length-1]+f,P=(t.bandwidth?Gbe:zbe)(t.copy(),f),ee=w.selection?w.selection():w,J=ee.selectAll(".domain").data([null]),te=ee.selectAll(".tick").data(F,t).order(),ie=te.exit(),W=te.enter().append("g").attr("class","tick"),q=te.select("line"),ce=te.select("text");J=J.merge(J.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),te=te.merge(W),q=q.merge(W.append("line").attr("stroke","currentColor").attr(m+"2",p*s)),ce=ce.merge(W.append("text").attr("fill","currentColor").attr(m,p*T).attr("dy",1===n?"0em":3===n?"0.71em":"0.32em")),w!==ee&&(J=J.transition(w),te=te.transition(w),q=q.transition(w),ce=ce.transition(w),ie=ie.transition(w).attr("opacity",1e-6).attr("transform",function(ke){return isFinite(ke=P(ke))?_(ke+f):this.getAttribute("transform")}),W.attr("opacity",1e-6).attr("transform",function(ke){var Ue=this.parentNode.__axis;return _((Ue&&isFinite(Ue=Ue(ke))?Ue:P(ke))+f)})),ie.remove(),J.attr("d",4===n||2===n?l?"M"+p*l+","+O+"H"+f+"V"+R+"H"+p*l:"M"+f+","+O+"V"+R:l?"M"+O+","+p*l+"V"+f+"H"+R+"V"+p*l:"M"+O+","+f+"H"+R),te.attr("opacity",1).attr("transform",function(ke){return _(P(ke)+f)}),q.attr(m+"2",p*s),ce.attr(m,p*T).text(D),ee.filter(jbe).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===n?"start":4===n?"end":"middle"),ee.each(function(){this.__axis=P})}return b.scale=function(w){return arguments.length?(t=w,b):t},b.ticks=function(){return e=Array.from(arguments),b},b.tickArguments=function(w){return arguments.length?(e=null==w?[]:Array.from(w),b):e.slice()},b.tickValues=function(w){return arguments.length?(i=null==w?null:Array.from(w),b):i&&i.slice()},b.tickFormat=function(w){return arguments.length?(r=w,b):r},b.tickSize=function(w){return arguments.length?(s=l=+w,b):s},b.tickSizeInner=function(w){return arguments.length?(s=+w,b):s},b.tickSizeOuter=function(w){return arguments.length?(l=+w,b):l},b.tickPadding=function(w){return arguments.length?(u=+w,b):u},b.offset=function(w){return arguments.length?(f=+w,b):f},b}function Wbe(){}function X7(n){return null==n?Wbe:function(){return this.querySelector(n)}}function Ybe(){return[]}function aK(n){return null==n?Ybe:function(){return this.querySelectorAll(n)}}function lK(n){return function(){return this.matches(n)}}function cK(n){return function(t){return t.matches(n)}}var eve=Array.prototype.find;function nve(){return this.firstElementChild}var rve=Array.prototype.filter;function ove(){return Array.from(this.children)}function dK(n){return new Array(n.length)}function lP(n,t){this.ownerDocument=n.ownerDocument,this.namespaceURI=n.namespaceURI,this._next=null,this._parent=n,this.__data__=t}function uve(n,t,e,i,r,s){for(var u,l=0,f=t.length,p=s.length;lt?1:n>=t?0:NaN}lP.prototype={constructor:lP,appendChild:function(n){return this._parent.insertBefore(n,this._next)},insertBefore:function(n,t){return this._parent.insertBefore(n,t)},querySelector:function(n){return this._parent.querySelector(n)},querySelectorAll:function(n){return this._parent.querySelectorAll(n)}};var K7="http://www.w3.org/1999/xhtml";const uK={svg:"http://www.w3.org/2000/svg",xhtml:K7,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function cP(n){var t=n+="",e=t.indexOf(":");return e>=0&&"xmlns"!==(t=n.slice(0,e))&&(n=n.slice(e+1)),uK.hasOwnProperty(t)?{space:uK[t],local:n}:n}function Tve(n){return function(){this.removeAttribute(n)}}function Ive(n){return function(){this.removeAttributeNS(n.space,n.local)}}function Fve(n,t){return function(){this.setAttribute(n,t)}}function Dve(n,t){return function(){this.setAttributeNS(n.space,n.local,t)}}function Bve(n,t){return function(){var e=t.apply(this,arguments);null==e?this.removeAttribute(n):this.setAttribute(n,e)}}function kve(n,t){return function(){var e=t.apply(this,arguments);null==e?this.removeAttributeNS(n.space,n.local):this.setAttributeNS(n.space,n.local,e)}}function hK(n){return n.ownerDocument&&n.ownerDocument.defaultView||n.document&&n||n.defaultView}function Pve(n){return function(){this.style.removeProperty(n)}}function Ove(n,t,e){return function(){this.style.setProperty(n,t,e)}}function Nve(n,t,e){return function(){var i=t.apply(this,arguments);null==i?this.style.removeProperty(n):this.style.setProperty(n,i,e)}}function gx(n,t){return n.style.getPropertyValue(t)||hK(n).getComputedStyle(n,null).getPropertyValue(t)}function Uve(n){return function(){delete this[n]}}function Vve(n,t){return function(){this[n]=t}}function Hve(n,t){return function(){var e=t.apply(this,arguments);null==e?delete this[n]:this[n]=e}}function fK(n){return n.trim().split(/^|\s+/)}function Y7(n){return n.classList||new pK(n)}function pK(n){this._node=n,this._names=fK(n.getAttribute("class")||"")}function AK(n,t){for(var e=Y7(n),i=-1,r=t.length;++i=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(n){return this._names.indexOf(n)>=0}};var bK=[null];function Xc(n,t){this._groups=n,this._parents=t}function vK(){return new Xc([[document.documentElement]],bK)}Xc.prototype=vK.prototype={constructor:Xc,select:function Xbe(n){"function"!=typeof n&&(n=X7(n));for(var t=this._groups,e=t.length,i=new Array(e),r=0;r=R&&(R=O+1);!(ee=T[R])&&++R=0;)(l=i[r])&&(s&&4^l.compareDocumentPosition(s)&&s.parentNode.insertBefore(l,s),s=l);return this},sort:function vve(n){function t(_,b){return _&&b?n(_.__data__,b.__data__):!_-!b}n||(n=yve);for(var e=this._groups,i=e.length,r=new Array(i),s=0;s1?this.each((null==t?Pve:"function"==typeof t?Nve:Ove)(n,t,e??"")):gx(this.node(),n)},property:function Qve(n,t){return arguments.length>1?this.each((null==t?Uve:"function"==typeof t?Hve:Vve)(n,t)):this.node()[n]},classed:function $ve(n,t){var e=fK(n+"");if(arguments.length<2){for(var i=Y7(this.node()),r=-1,s=e.length;++r=0&&(e=t.slice(i+1),t=t.slice(0,i)),{type:t,name:e}})}(n+""),s=i.length;if(!(arguments.length<2)){for(u=t?bye:_ye,r=0;r{}};function yK(){for(var i,n=0,t=arguments.length,e={};n=0&&(i=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:i}})}(n+"",e),s=-1,l=i.length;if(!(arguments.length<2)){if(null!=t&&"function"!=typeof t)throw new Error("invalid callback: "+t);for(;++s0)for(var r,s,e=new Array(r),i=0;i=0&&n._call.call(void 0,t),n=n._next;--_x}()}finally{_x=0,function kye(){for(var n,e,t=uP,i=1/0;t;)t._call?(i>t._time&&(i=t._time),n=t,t=t._next):(e=t._next,t._next=null,t=n?n._next=e:uP=e);N2=n,J7(i)}(),mv=0}}function Bye(){var n=L2.now(),t=n-hP;t>xK&&(fP-=t,hP=n)}function J7(n){_x||(P2&&(P2=clearTimeout(P2)),n-mv>24?(n<1/0&&(P2=setTimeout(EK,n-L2.now()-fP)),O2&&(O2=clearInterval(O2))):(O2||(hP=L2.now(),O2=setInterval(Bye,xK)),_x=1,CK(EK)))}function SK(n,t,e){var i=new pP;return i.restart(r=>{i.stop(),n(r+t)},t=null==t?0:+t,e),i}pP.prototype=MK.prototype={constructor:pP,restart:function(n,t,e){if("function"!=typeof n)throw new TypeError("callback is not a function");e=(null==e?Z7():+e)+(null==t?0:+t),!this._next&&N2!==this&&(N2?N2._next=this:uP=this,N2=this),this._call=n,this._time=e,J7()},stop:function(){this._call&&(this._call=null,this._time=1/0,J7())}};var Rye=Iye("start","end","cancel","interrupt"),Pye=[],TK=0,AP=3;function gP(n,t,e,i,r,s){var l=n.__transition;if(l){if(e in l)return}else n.__transition={};!function Oye(n,t,e){var r,i=n.__transition;function l(p){var m,_,b,w;if(1!==e.state)return f();for(m in i)if((w=i[m]).name===e.name){if(w.state===AP)return SK(l);4===w.state?(w.state=6,w.timer.stop(),w.on.call("interrupt",n,n.__data__,w.index,w.group),delete i[m]):+mTK)throw new Error("too late; already scheduled");return e}function tf(n,t){var e=Qu(n,t);if(e.state>AP)throw new Error("too late; already running");return e}function Qu(n,t){var e=n.__transition;if(!e||!(e=e[t]))throw new Error("transition not found");return e}function zu(n,t){return n=+n,t=+t,function(e){return n*(1-e)+t*e}}var _P,DK=180/Math.PI,iV={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function BK(n,t,e,i,r,s){var l,u,f;return(l=Math.sqrt(n*n+t*t))&&(n/=l,t/=l),(f=n*e+t*i)&&(e-=n*f,i-=t*f),(u=Math.sqrt(e*e+i*i))&&(e/=u,i/=u,f/=u),n*i180?m+=360:m-p>180&&(p+=360),b.push({i:_.push(r(_)+"rotate(",null,i)-2,x:zu(p,m)})):m&&_.push(r(_)+"rotate("+m+i)}(p.rotate,m.rotate,_,b),function u(p,m,_,b){p!==m?b.push({i:_.push(r(_)+"skewX(",null,i)-2,x:zu(p,m)}):m&&_.push(r(_)+"skewX("+m+i)}(p.skewX,m.skewX,_,b),function f(p,m,_,b,w,F){if(p!==_||m!==b){var D=w.push(r(w)+"scale(",null,",",null,")");F.push({i:D-4,x:zu(p,_)},{i:D-2,x:zu(m,b)})}else(1!==_||1!==b)&&w.push(r(w)+"scale("+_+","+b+")")}(p.scaleX,p.scaleY,m.scaleX,m.scaleY,_,b),p=m=null,function(w){for(var T,F=-1,D=b.length;++F>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===e?vP(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===e?vP(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=qye.exec(n))?new pc(t[1],t[2],t[3],1):(t=Wye.exec(n))?new pc(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=Xye.exec(n))?vP(t[1],t[2],t[3],t[4]):(t=Kye.exec(n))?vP(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=Yye.exec(n))?HK(t[1],t[2]/100,t[3]/100,1):(t=Zye.exec(n))?HK(t[1],t[2]/100,t[3]/100,t[4]):PK.hasOwnProperty(n)?LK(PK[n]):"transparent"===n?new pc(NaN,NaN,NaN,0):null}function LK(n){return new pc(n>>16&255,n>>8&255,255&n,1)}function vP(n,t,e,i){return i<=0&&(n=t=e=NaN),new pc(n,t,e,i)}function yP(n,t,e,i){return 1===arguments.length?function t1e(n){return n instanceof U2||(n=gv(n)),n?new pc((n=n.rgb()).r,n.g,n.b,n.opacity):new pc}(n):new pc(n,t,e,i??1)}function pc(n,t,e,i){this.r=+n,this.g=+t,this.b=+e,this.opacity=+i}function UK(){return`#${bv(this.r)}${bv(this.g)}${bv(this.b)}`}function VK(){const n=wP(this.opacity);return`${1===n?"rgb(":"rgba("}${_v(this.r)}, ${_v(this.g)}, ${_v(this.b)}${1===n?")":`, ${n})`}`}function wP(n){return isNaN(n)?1:Math.max(0,Math.min(1,n))}function _v(n){return Math.max(0,Math.min(255,Math.round(n)||0))}function bv(n){return((n=_v(n))<16?"0":"")+n.toString(16)}function HK(n,t,e,i){return i<=0?n=t=e=NaN:e<=0||e>=1?n=t=NaN:t<=0&&(n=NaN),new Gu(n,t,e,i)}function QK(n){if(n instanceof Gu)return new Gu(n.h,n.s,n.l,n.opacity);if(n instanceof U2||(n=gv(n)),!n)return new Gu;if(n instanceof Gu)return n;var t=(n=n.rgb()).r/255,e=n.g/255,i=n.b/255,r=Math.min(t,e,i),s=Math.max(t,e,i),l=NaN,u=s-r,f=(s+r)/2;return u?(l=t===s?(e-i)/u+6*(e0&&f<1?0:l,new Gu(l,u,f,n.opacity)}function Gu(n,t,e,i){this.h=+n,this.s=+t,this.l=+e,this.opacity=+i}function zK(n){return(n=(n||0)%360)<0?n+360:n}function xP(n){return Math.max(0,Math.min(1,n||0))}function sV(n,t,e){return 255*(n<60?t+(e-t)*n/60:n<180?e:n<240?t+(e-t)*(240-n)/60:t)}function GK(n,t,e,i,r){var s=n*n,l=s*n;return((1-3*n+3*s-l)*t+(4-6*s+3*l)*e+(1+3*n+3*s-3*l)*i+l*r)/6}oV(U2,gv,{copy(n){return Object.assign(new this.constructor,this,n)},displayable(){return this.rgb().displayable()},hex:OK,formatHex:OK,formatHex8:function Jye(){return this.rgb().formatHex8()},formatHsl:function e1e(){return QK(this).formatHsl()},formatRgb:NK,toString:NK}),oV(pc,yP,RK(U2,{brighter(n){return n=null==n?bP:Math.pow(bP,n),new pc(this.r*n,this.g*n,this.b*n,this.opacity)},darker(n){return n=null==n?.7:Math.pow(.7,n),new pc(this.r*n,this.g*n,this.b*n,this.opacity)},rgb(){return this},clamp(){return new pc(_v(this.r),_v(this.g),_v(this.b),wP(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:UK,formatHex:UK,formatHex8:function n1e(){return`#${bv(this.r)}${bv(this.g)}${bv(this.b)}${bv(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:VK,toString:VK})),oV(Gu,function i1e(n,t,e,i){return 1===arguments.length?QK(n):new Gu(n,t,e,i??1)},RK(U2,{brighter(n){return n=null==n?bP:Math.pow(bP,n),new Gu(this.h,this.s,this.l*n,this.opacity)},darker(n){return n=null==n?.7:Math.pow(.7,n),new Gu(this.h,this.s,this.l*n,this.opacity)},rgb(){var n=this.h%360+360*(this.h<0),t=isNaN(n)||isNaN(this.s)?0:this.s,e=this.l,i=e+(e<.5?e:1-e)*t,r=2*e-i;return new pc(sV(n>=240?n-240:n+120,r,i),sV(n,r,i),sV(n<120?n+240:n-120,r,i),this.opacity)},clamp(){return new Gu(zK(this.h),xP(this.s),xP(this.l),wP(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const n=wP(this.opacity);return`${1===n?"hsl(":"hsla("}${zK(this.h)}, ${100*xP(this.s)}%, ${100*xP(this.l)}%${1===n?")":`, ${n})`}`}}));const aV=n=>()=>n;function $K(n,t){var e=t-n;return e?function jK(n,t){return function(e){return n+e*t}}(n,e):aV(isNaN(n)?t:n)}const CP=function n(t){var e=function a1e(n){return 1==(n=+n)?$K:function(t,e){return e-t?function s1e(n,t,e){return n=Math.pow(n,e),t=Math.pow(t,e)-n,e=1/e,function(i){return Math.pow(n+i*t,e)}}(t,e,n):aV(isNaN(t)?e:t)}}(t);function i(r,s){var l=e((r=yP(r)).r,(s=yP(s)).r),u=e(r.g,s.g),f=e(r.b,s.b),p=$K(r.opacity,s.opacity);return function(m){return r.r=l(m),r.g=u(m),r.b=f(m),r.opacity=p(m),r+""}}return i.gamma=n,i}(1);function qK(n){return function(t){var l,u,e=t.length,i=new Array(e),r=new Array(e),s=new Array(e);for(l=0;l=1?(e=1,t-1):Math.floor(e*t),r=n[i],s=n[i+1];return GK((e-i/t)*t,i>0?n[i-1]:2*r-s,r,s,ie&&(s=t.slice(e,s),u[l]?u[l]+=s:u[++l]=s),(i=i[0])===(r=r[0])?u[l]?u[l]+=r:u[++l]=r:(u[++l]=null,f.push({i:l,x:zu(i,r)})),e=cV.lastIndex;return e=0&&(t=t.slice(0,e)),!t||"start"===t})}(t)?nV:tf;return function(){var l=s(this,n),u=l.on;u!==i&&(r=(i=u).copy()).on(t,e),l.on=r}}(e,n,t))},attr:function m1e(n,t){var e=cP(n),i="transform"===e?Qye:XK;return this.attrTween(n,"function"==typeof t?(e.local?A1e:p1e)(e,i,rV(this,"attr."+n,t)):null==t?(e.local?u1e:d1e)(e):(e.local?f1e:h1e)(e,i,t))},attrTween:function y1e(n,t){var e="attr."+n;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw new Error;var i=cP(n);return this.tween(e,(i.local?b1e:v1e)(i,t))},style:function q1e(n,t,e){var i="transform"==(n+="")?Hye:XK;return null==t?this.styleTween(n,function z1e(n,t){var e,i,r;return function(){var s=gx(this,n),l=(this.style.removeProperty(n),gx(this,n));return s===l?null:s===e&&l===i?r:r=t(e=s,i=l)}}(n,i)).on("end.style."+n,KK(n)):"function"==typeof t?this.styleTween(n,function j1e(n,t,e){var i,r,s;return function(){var l=gx(this,n),u=e(this),f=u+"";return null==u&&(this.style.removeProperty(n),f=u=gx(this,n)),l===f?null:l===i&&f===r?s:(r=f,s=t(i=l,u))}}(n,i,rV(this,"style."+n,t))).each(function $1e(n,t){var e,i,r,u,s="style."+t,l="end."+s;return function(){var f=tf(this,n),p=f.on,m=null==f.value[s]?u||(u=KK(t)):void 0;(p!==e||r!==m)&&(i=(e=p).copy()).on(l,r=m),f.on=i}}(this._id,n)):this.styleTween(n,function G1e(n,t,e){var i,s,r=e+"";return function(){var l=gx(this,n);return l===r?null:l===i?s:s=t(i=l,e)}}(n,i,t),e).on("end.style."+n,null)},styleTween:function K1e(n,t,e){var i="style."+(n+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(null==t)return this.tween(i,null);if("function"!=typeof t)throw new Error;return this.tween(i,function X1e(n,t,e){var i,r;function s(){var l=t.apply(this,arguments);return l!==r&&(i=(r=l)&&function W1e(n,t,e){return function(i){this.style.setProperty(n,t.call(this,i),e)}}(n,l,e)),i}return s._value=t,s}(n,t,e??""))},text:function J1e(n){return this.tween("text","function"==typeof n?function Z1e(n){return function(){var t=n(this);this.textContent=t??""}}(rV(this,"text",n)):function Y1e(n){return function(){this.textContent=n}}(null==n?"":n+""))},textTween:function nwe(n){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==n)return this.tween(t,null);if("function"!=typeof n)throw new Error;return this.tween(t,function twe(n){var t,e;function i(){var r=n.apply(this,arguments);return r!==e&&(t=(e=r)&&function ewe(n){return function(t){this.textContent=n.call(this,t)}}(r)),t}return i._value=n,i}(n))},remove:function L1e(){return this.on("end.remove",function N1e(n){return function(){var t=this.parentNode;for(var e in this.__transition)if(+e!==n)return;t&&t.removeChild(this)}}(this._id))},tween:function jye(n,t){var e=this._id;if(n+="",arguments.length<2){for(var l,i=Qu(this.node(),e).tween,r=0,s=i.length;r2&&i.state<5,i.state=6,i.timer.stop(),i.on.call(r?"interrupt":"cancel",n,n.__data__,i.index,i.group),delete e[l]):s=!1;s&&delete n.__transition}}(this,n)})},R2.prototype.transition=function dwe(n){var t,e;n instanceof tA?(t=n._id,n=n._name):(t=YK(),(e=lwe).time=Z7(),n=null==n?null:n+"");for(var i=this._groups,r=i.length,s=0;s1?i[0]+i.slice(2):i,+n.slice(e+1)]}function wx(n){return(n=SP(Math.abs(n)))?n[1]:NaN}["w","e"].map(Q2),["n","s"].map(Q2),["n","w","e","s","nw","ne","sw","se"].map(Q2);var iY,ywe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function TP(n){if(!(t=ywe.exec(n)))throw new Error("invalid format: "+n);var t;return new pV({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function pV(n){this.fill=void 0===n.fill?" ":n.fill+"",this.align=void 0===n.align?">":n.align+"",this.sign=void 0===n.sign?"-":n.sign+"",this.symbol=void 0===n.symbol?"":n.symbol+"",this.zero=!!n.zero,this.width=void 0===n.width?void 0:+n.width,this.comma=!!n.comma,this.precision=void 0===n.precision?void 0:+n.precision,this.trim=!!n.trim,this.type=void 0===n.type?"":n.type+""}function rY(n,t){var e=SP(n,t);if(!e)return n+"";var i=e[0],r=e[1];return r<0?"0."+new Array(-r).join("0")+i:i.length>r+1?i.slice(0,r+1)+"."+i.slice(r+1):i+new Array(r-i.length+2).join("0")}TP.prototype=pV.prototype,pV.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const oY={"%":(n,t)=>(100*n).toFixed(t),b:n=>Math.round(n).toString(2),c:n=>n+"",d:function _we(n){return Math.abs(n=Math.round(n))>=1e21?n.toLocaleString("en").replace(/,/g,""):n.toString(10)},e:(n,t)=>n.toExponential(t),f:(n,t)=>n.toFixed(t),g:(n,t)=>n.toPrecision(t),o:n=>Math.round(n).toString(8),p:(n,t)=>rY(100*n,t),r:rY,s:function xwe(n,t){var e=SP(n,t);if(!e)return n+"";var i=e[0],r=e[1],s=r-(iY=3*Math.max(-8,Math.min(8,Math.floor(r/3))))+1,l=i.length;return s===l?i:s>l?i+new Array(s-l+1).join("0"):s>0?i.slice(0,s)+"."+i.slice(s):"0."+new Array(1-s).join("0")+SP(n,Math.max(0,t+s-1))[0]},X:n=>Math.round(n).toString(16).toUpperCase(),x:n=>Math.round(n).toString(16)};function sY(n){return n}var IP,FP,cY,aY=Array.prototype.map,lY=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];!function Mwe(n){IP=function Cwe(n){var t=void 0===n.grouping||void 0===n.thousands?sY:function bwe(n,t){return function(e,i){for(var r=e.length,s=[],l=0,u=n[0],f=0;r>0&&u>0&&(f+u+1>i&&(u=Math.max(1,i-f)),s.push(e.substring(r-=u,r+u)),!((f+=u+1)>i));)u=n[l=(l+1)%n.length];return s.reverse().join(t)}}(aY.call(n.grouping,Number),n.thousands+""),e=void 0===n.currency?"":n.currency[0]+"",i=void 0===n.currency?"":n.currency[1]+"",r=void 0===n.decimal?".":n.decimal+"",s=void 0===n.numerals?sY:function vwe(n){return function(t){return t.replace(/[0-9]/g,function(e){return n[+e]})}}(aY.call(n.numerals,String)),l=void 0===n.percent?"%":n.percent+"",u=void 0===n.minus?"\u2212":n.minus+"",f=void 0===n.nan?"NaN":n.nan+"";function p(_){var b=(_=TP(_)).fill,w=_.align,F=_.sign,D=_.symbol,T=_.zero,I=_.width,O=_.comma,R=_.precision,P=_.trim,ee=_.type;"n"===ee?(O=!0,ee="g"):oY[ee]||(void 0===R&&(R=12),P=!0,ee="g"),(T||"0"===b&&"="===w)&&(T=!0,b="0",w="=");var J="$"===D?e:"#"===D&&/[boxX]/.test(ee)?"0"+ee.toLowerCase():"",te="$"===D?i:/[%p]/.test(ee)?l:"",ie=oY[ee],W=/[defgprs%]/.test(ee);function q(ce){var de,ze,Ce,ke=J,Ue=te;if("c"===ee)Ue=ie(ce)+Ue,ce="";else{var Oe=(ce=+ce)<0||1/ce<0;if(ce=isNaN(ce)?f:ie(Math.abs(ce),R),P&&(ce=function wwe(n){e:for(var r,t=n.length,e=1,i=-1;e0&&(i=0)}return i>0?n.slice(0,i)+n.slice(r+1):n}(ce)),Oe&&0==+ce&&"+"!==F&&(Oe=!1),ke=(Oe?"("===F?F:u:"-"===F||"("===F?"":F)+ke,Ue=("s"===ee?lY[8+iY/3]:"")+Ue+(Oe&&"("===F?")":""),W)for(de=-1,ze=ce.length;++de(Ce=ce.charCodeAt(de))||Ce>57){Ue=(46===Ce?r+ce.slice(de+1):ce.slice(de))+Ue,ce=ce.slice(0,de);break}}O&&!T&&(ce=t(ce,1/0));var Fe=ke.length+ce.length+Ue.length,ht=Fe>1)+ke+ce+Ue+ht.slice(Fe);break;default:ce=ht+ke+ce+Ue}return s(ce)}return R=void 0===R?6:/[gprs]/.test(ee)?Math.max(1,Math.min(21,R)):Math.max(0,Math.min(20,R)),q.toString=function(){return _+""},q}return{format:p,formatPrefix:function m(_,b){var w=p(((_=TP(_)).type="f",_)),F=3*Math.max(-8,Math.min(8,Math.floor(wx(b)/3))),D=Math.pow(10,-F),T=lY[8+F/3];return function(I){return w(D*I)+T}}}}(n),FP=IP.format,cY=IP.formatPrefix}({thousands:",",grouping:[3],currency:["$",""]});const Ewe=Math.sqrt(50),Swe=Math.sqrt(10),Twe=Math.sqrt(2);function DP(n,t,e){const i=(t-n)/Math.max(0,e),r=Math.floor(Math.log10(i)),s=i/Math.pow(10,r),l=s>=Ewe?10:s>=Swe?5:s>=Twe?2:1;let u,f,p;return r<0?(p=Math.pow(10,-r)/l,u=Math.round(n*p),f=Math.round(t*p),u/pt&&--f,p=-p):(p=Math.pow(10,r)*l,u=Math.round(n/p),f=Math.round(t/p),u*pt&&--f),ft?1:n>=t?0:NaN}function Dwe(n,t){return null==n||null==t?NaN:tn?1:t>=n?0:NaN}function dY(n){let t,e,i;function r(u,f,p=0,m=u.length){if(p>>1;e(u[_],f)<0?p=_+1:m=_}while(pBP(n(u),f),i=(u,f)=>n(u)-f):(t=n===BP||n===Dwe?n:Bwe,e=n,i=n),{left:r,center:function l(u,f,p=0,m=u.length){const _=r(u,f,p,m-1);return _>p&&i(u[_-1],f)>-i(u[_],f)?_-1:_},right:function s(u,f,p=0,m=u.length){if(p>>1;e(u[_],f)<=0?p=_+1:m=_}while(p0))return[];if((n=+n)==(t=+t))return[n];const i=t=r))return[];const u=s-r+1,f=new Array(u);if(i)if(l<0)for(let p=0;p0;){if((p=AV(l,u,e))===f)return i[r]=l,i[s]=u,t(i);if(p>0)l=Math.floor(l/p)*p,u=Math.ceil(u/p)*p;else{if(!(p<0))break;l=Math.ceil(l*p)/p,u=Math.floor(u*p)/p}f=p}return n},n}function _V(){var n=function Wwe(){return function qwe(){var i,r,s,u,f,p,n=fY,t=fY,e=mV,l=xx;function m(){var b=Math.min(n.length,t.length);return l!==xx&&(l=function zwe(n,t){var e;return n>t&&(e=n,n=t,t=e),function(i){return Math.max(n,Math.min(t,i))}}(n[0],n[b-1])),u=b>2?jwe:Gwe,f=p=null,_}function _(b){return null==b||isNaN(b=+b)?s:(f||(f=u(n.map(i),t,e)))(i(l(b)))}return _.invert=function(b){return l(r((p||(p=u(t,n.map(i),zu)))(b)))},_.domain=function(b){return arguments.length?(n=Array.from(b,Qwe),m()):n.slice()},_.range=function(b){return arguments.length?(t=Array.from(b),m()):t.slice()},_.rangeRound=function(b){return t=Array.from(b),e=Vwe,m()},_.clamp=function(b){return arguments.length?(l=!!b||xx,m()):l!==xx},_.interpolate=function(b){return arguments.length?(e=b,m()):e},_.unknown=function(b){return arguments.length?(s=b,_):s},function(b,w){return i=b,r=w,m()}}()(xx,xx)}();return n.copy=function(){return function $we(n,t){return t.domain(n.domain()).range(n.range()).interpolate(n.interpolate()).clamp(n.clamp()).unknown(n.unknown())}(n,_V())},Xwe.apply(n,arguments),exe(n)}function pY(n){return"string"==typeof n?new Xc([[document.querySelector(n)]],[document.documentElement]):new Xc([[n]],bK)}function Cx(n){return function(){return n}}function AY(n){this._context=n}function rxe(n){return new AY(n)}AY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(n,t){switch(n=+n,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(n,t):this._context.moveTo(n,t);break;case 1:this._point=2;default:this._context.lineTo(n,t)}}};const bV=Math.PI,vV=2*bV,vv=1e-6,oxe=vV-vv;function mY(n){this._+=n[0];for(let t=1,e=n.length;t=0))throw new Error(`invalid digits: ${n}`);if(t>15)return mY;const e=10**t;return function(i){this._+=i[0];for(let r=1,s=i.length;rvv)if(Math.abs(_*f-p*m)>vv&&s){let w=i-l,F=r-u,D=f*f+p*p,T=w*w+F*F,I=Math.sqrt(D),O=Math.sqrt(b),R=s*Math.tan((bV-Math.acos((D+b-T)/(2*I*O)))/2),P=R/O,ee=R/I;Math.abs(P-1)>vv&&this._append`L${t+P*m},${e+P*_}`,this._append`A${s},${s},0,0,${+(_*w>m*F)},${this._x1=t+ee*f},${this._y1=e+ee*p}`}else this._append`L${this._x1=t},${this._y1=e}`}arc(t,e,i,r,s,l){if(t=+t,e=+e,l=!!l,(i=+i)<0)throw new Error(`negative radius: ${i}`);let u=i*Math.cos(r),f=i*Math.sin(r),p=t+u,m=e+f,_=1^l,b=l?r-s:s-r;null===this._x1?this._append`M${p},${m}`:(Math.abs(this._x1-p)>vv||Math.abs(this._y1-m)>vv)&&this._append`L${p},${m}`,i&&(b<0&&(b=b%vV+vV),b>oxe?this._append`A${i},${i},0,1,${_},${t-u},${e-f}A${i},${i},0,1,${_},${this._x1=p},${this._y1=m}`:b>vv&&this._append`A${i},${i},0,${+(b>=bV)},${_},${this._x1=t+i*Math.cos(s)},${this._y1=e+i*Math.sin(s)}`)}rect(t,e,i,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${i=+i}v${+r}h${-i}Z`}toString(){return this._}}function cxe(n){return n[0]}function dxe(n){return n[1]}function RP(n,t){this._context=n,this._t=t}function hxe(n){return new RP(n,0)}function Mx(n,t,e){this.k=n,this.x=t,this.y=e}RP.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(n,t){switch(n=+n,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(n,t):this._context.moveTo(n,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(n,t);else{var e=this._x*(1-this._t)+n*this._t;this._context.lineTo(e,this._y),this._context.lineTo(e,t)}}this._x=n,this._y=t}},Mx.prototype={constructor:Mx,scale:function(n){return 1===n?this:new Mx(this.k*n,this.x,this.y)},translate:function(n,t){return 0===n&0===t?this:new Mx(this.k,this.x+this.k*n,this.y+this.k*t)},apply:function(n){return[n[0]*this.k+this.x,n[1]*this.k+this.y]},applyX:function(n){return n*this.k+this.x},applyY:function(n){return n*this.k+this.y},invert:function(n){return[(n[0]-this.x)/this.k,(n[1]-this.y)/this.k]},invertX:function(n){return(n-this.x)/this.k},invertY:function(n){return(n-this.y)/this.k},rescaleX:function(n){return n.copy().domain(n.range().map(this.invertX,this).map(n.invert,n))},rescaleY:function(n){return n.copy().domain(n.range().map(this.invertY,this).map(n.invert,n))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},new Mx(1,0,0);let vxe=(()=>{class n{ngOnChanges(){this.values.length>0&&(this.percentileRanks=this.isAttributeDirectionInverted?this.calculateReversedPercentileRanks(this.values):this.calculatePercentileRanks(this.values),this.updatePercentileToMetricValueMap(),this.renderDiagram())}updatePercentileToMetricValueMap(){this.percentileToMetricValueMap=new Map;let e=0;for(let i=0;i<=100;i++){for(;i>this.percentileRanks[e].x&&e=1e4?`${FP(".0f")(s/1e3)}k`:s>=1e3?`${FP(".1f")(s/1e3)}k`:s.toString()})).attr("font-size","13px").attr("color","#888")}createXScale(){return _V().domain(function Ube(n,t){let e,i;if(void 0===t)for(const r of n)null!=r&&(void 0===e?r>=r&&(e=i=r):(e>r&&(e=r),i=s&&(e=i=s):(e>s&&(e=s),ie.x)).range([0,this.frameWidth-2*this.framePadding])}createYScale(){const e=[0,oK(this.percentileRanks,r=>r.y)],i=[oK(this.percentileRanks,r=>r.y),0];return _V().domain(this.isAttributeDirectionInverted?i:e).range([this.frameHeight-2*this.framePadding,0])}drawLabels(e){e.append("text").attr("id","y-label").attr("class","y label").attr("text-anchor","middle").attr("transform","rotate(-90)").attr("x",-this.frameHeight/2-this.frameMarginTop).attr("y",this.frameMarginLeft-this.yLabelXOffset).attr("fill","#888").text(`${this.colorMetric}`),e.append("text").attr("id","x-label").attr("class","x label").attr("text-anchor","middle").attr("x",this.frameWidth/2).attr("y",this.frameHeight+this.frameMarginTop+this.xLabelYOffset).attr("fill","#888").text(`Quantiles (% of ${this.colorMetric})`)}drawAreas(e,i){const r=i(this.isAttributeDirectionInverted?this.calculateReversedPercentileFromMetricValue(this.currentRightValue):this.calculatePercentileFromMetricValue(this.currentLeftValue)),s=i(this.isAttributeDirectionInverted?this.calculateReversedPercentileFromMetricValue(this.currentLeftValue):this.calculatePercentileFromMetricValue(this.currentRightValue));e.append("rect").attr("class","left-area").attr("x",this.framePadding).attr("width",r).attr("height",this.frameHeight).style("fill",this.isAttributeDirectionInverted?this.rightColor:this.leftColor).style("fill-opacity","0.3"),e.append("rect").attr("class","middle-area").attr("x",r+this.framePadding).attr("width",s-r).attr("height",this.frameHeight).style("fill",this.middleColor).style("fill-opacity","0.3"),e.append("rect").attr("class","right-area").attr("x",s+this.framePadding).attr("width",this.frameWidth-2*this.framePadding-s).attr("height",this.frameHeight).style("fill",this.isAttributeDirectionInverted?this.leftColor:this.rightColor).style("fill-opacity","0.3")}drawLine(e){e.append("path").attr("id","diagram-path").datum(this.percentileRanks).attr("fill","none").attr("stroke","#888").attr("stroke-width",1).attr("d",function uxe(n,t){var e=Cx(!0),i=null,r=rxe,s=null,l=function lxe(n){let t=3;return n.digits=function(e){if(!arguments.length)return t;if(null==e)t=null;else{const i=Math.floor(e);if(!(i>=0))throw new RangeError(`invalid digits: ${e}`);t=i}return n},()=>new kP(t)}(u);function u(f){var p,_,w,m=(f=function ixe(n){return"object"==typeof n&&"length"in n?n:Array.from(n)}(f)).length,b=!1;for(null==i&&(s=r(w=l())),p=0;p<=m;++p)!(pthis.createXScale()(i.x)).y(i=>this.createYScale()(i.y))).attr("transform",`translate(${this.framePadding}, ${this.framePadding})`)}calculatePercentileRanks(e){const i=[...new Set(e)].sort((l,u)=>l-u),r=e.length,s=[{x:0,y:i[0]}];for(const l of i){const f=e.filter(p=>p<=l).length/r*100;s.push({x:f,y:l})}return s}calculateReversedPercentileRanks(e){const i=[...new Set(e)].sort((l,u)=>l-u).reverse(),r=e.length,s=[{x:0,y:i[0]}];for(const l of i){const f=e.filter(p=>p>=l).length/r*100;s.push({x:f,y:l})}return s.sort((l,u)=>l.x-u.x)}calculatePercentileFromMetricValue(e){if(e===this.minValue)return 0;if(e===this.maxValue)return 100;let i=null;for(const r of this.percentileRanks){if(!(r.ye))return i;i=r.x}}addCrossHair(e,i,r){const s=e.append("text").attr("class","cross-tooltip").attr("fill","#000").attr("font-size","13px").style("display","none"),l=e.append("line").attr("class","dashed-vertical-line").attr("stroke","#000").attr("stroke-width","0.7px").attr("stroke-dasharray","4").style("display","none"),u=e.append("line").attr("class","straight-vertical-line").attr("stroke","#000").attr("stroke-width","0.7px").style("display","none"),f=e.append("line").attr("class","horizontal-line").attr("stroke","#000").attr("stroke-width","0.7px").style("display","none"),p=e.append("rect").attr("class","mouse-event-rect").attr("width",this.frameWidth).attr("height",this.frameHeight+this.frameMarginBottom/2).attr("fill","none").attr("pointer-events","all");this.addOnMouseMoveEvent(p,i,r,s,l,u,f),this.addOnMouseOutEvent(p,s,l,u,f)}addOnMouseMoveEvent(e,i,r,s,l,u,f){e.on("mousemove",p=>{const m=function nxe(n,t){if(n=function txe(n){let t;for(;t=n.sourceEvent;)n=t;return n}(n),void 0===t&&(t=n.currentTarget),t){var e=t.ownerSVGElement||t;if(e.createSVGPoint){var i=e.createSVGPoint();return i.x=n.clientX,i.y=n.clientY,[(i=i.matrixTransform(t.getScreenCTM().inverse())).x,i.y]}if(t.getBoundingClientRect){var r=t.getBoundingClientRect();return[n.clientX-r.left-t.clientLeft,n.clientY-r.top-t.clientTop]}}return[n.pageX,n.pageY]}(p)[0];let _=Math.round(i.invert(m-this.framePadding));_=Math.max(0,Math.min(_,100));const b=this.percentileToMetricValueMap.get(_),w=r(b)+this.framePadding,F=m{i.style("display","none"),r.style("display","none"),s.style("display","none"),l.style("display","none")})}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-color-range-diagram"]],inputs:{minValue:"minValue",maxValue:"maxValue",colorMetric:"colorMetric",values:"values",currentLeftValue:"currentLeftValue",currentRightValue:"currentRightValue",leftColor:"leftColor",middleColor:"middleColor",rightColor:"rightColor",isAttributeDirectionInverted:"isAttributeDirectionInverted"},standalone:!0,features:[o.OA$,o.aNF],decls:1,vars:0,consts:[["id","cc-range-diagram-container",1,"cc-range-diagram-container"]],template:function(i,r){1&i&&o.nrm(0,"div",0)},styles:["[_nghost-%COMP%]{display:flex;justify-content:center}"]})}}return n})(),yxe=(()=>{class n{transform(e,i,r,s){switch(e){case"positive":return"unary"===s?`${r.minValue} - ${r.maxValue}`:r.minValue===i.from?"-":r.maxValue===i.from?`${r.minValue} to ${this.formatNumber(i.from)}`:`${r.minValue} to ${this.formatNumber(i.from-1)}`;case"neutral":return i.from===i.to?"-":i.to===r.maxValue?`${this.formatNumber(i.from)} to ${this.formatNumber(i.to)}`:`${this.formatNumber(i.from)} to ${this.formatNumber(i.to-1)}`;case"negative":return r.maxValue===i.to?"-":`${this.formatNumber(i.to)} to ${this.formatNumber(r.maxValue)}`;case"positiveDelta":return"+\u0394 positive delta";case"negativeDelta":return"\u2013\u0394 negative delta";case"selected":return"selected";case"outgoingEdge":return"Outgoing Edge";case"incomingEdge":return"Incoming Edge"}}formatNumber(e){return(e||0).toLocaleString()}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"mapColorLabel",type:n,pure:!0,standalone:!0})}}return n})();const wxe=n=>[n];let yV=(()=>{class n{constructor(e){this.store=e,this.colorMetric$=this.store.select(zg),this.mapColors$=this.store.select($w),this.colorRange$=this.store.select(rK),this.nodeMetricRange$=this.store.select(Vp)}handleColorChange(e){this.store.dispatch(Hp({value:{[this.mapColorFor]:e}}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-color-picker-for-map-color"]],inputs:{mapColorFor:"mapColorFor"},standalone:!0,features:[o.aNF],decls:6,vars:17,consts:[[3,"onColorChange","hexColor","labels"]],template:function(i,r){1&i&&(o.j41(0,"cc-labelled-color-picker",0),o.nI1(1,"async"),o.nI1(2,"async"),o.nI1(3,"async"),o.nI1(4,"async"),o.nI1(5,"mapColorLabel"),o.bIt("onColorChange",function(l){return r.handleColorChange(l)}),o.k0s()),2&i&&o.Y8G("hexColor",o.bMT(1,2,r.mapColors$)[r.mapColorFor])("labels",o.eq3(15,wxe,o.ii3(5,10,r.mapColorFor,o.bMT(2,4,r.colorRange$),o.bMT(3,6,r.nodeMetricRange$),o.bMT(4,8,r.colorMetric$))))},dependencies:[t6,zn,yxe],encapsulation:2})}}return n})();const xxe=()=>["appSettings.mapColors.positiveDelta","appSettings.mapColors.negativeDelta","appSettings.mapColors.selected"],Cxe=()=>["appSettings.mapColors.positive","appSettings.mapColors.negative","appSettings.mapColors.neutral","appSettings.mapColors.selected"],Mxe=()=>["appSettings.mapColors.positiveDelta","appSettings.mapColors.negativeDelta"];function Exe(n,t){if(1&n){const e=o.RV6();o.j41(0,"div"),o.nrm(1,"cc-metric-color-range-slider",4),o.nI1(2,"async"),o.nI1(3,"async"),o.nI1(4,"async"),o.nI1(5,"async"),o.nI1(6,"async"),o.nI1(7,"async"),o.nI1(8,"async"),o.nI1(9,"async"),o.nrm(10,"cc-reset-settings-button",5)(11,"cc-metric-color-range-diagram",6),o.nI1(12,"async"),o.nI1(13,"async"),o.nI1(14,"async"),o.nI1(15,"async"),o.nI1(16,"async"),o.nI1(17,"async"),o.nI1(18,"async"),o.nI1(19,"async"),o.nI1(20,"async"),o.nI1(21,"async"),o.j41(22,"mat-form-field",7)(23,"mat-label"),o.EFF(24,"Gradient Mode"),o.k0s(),o.j41(25,"mat-select",8),o.nI1(26,"async"),o.bIt("selectionChange",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleColorModeChange(r.value))}),o.j41(27,"div",9),o.bIt("mousedown",function(r){return o.eBV(e),o.Njj(r.stopPropagation())}),o.j41(28,"mat-option",10),o.EFF(29,"Absolute"),o.k0s(),o.j41(30,"mat-option",11),o.EFF(31,"Focused Gradient"),o.k0s(),o.j41(32,"mat-option",12),o.EFF(33,"Weighted Gradient"),o.k0s(),o.j41(34,"mat-option",13),o.EFF(35,"True Gradient"),o.k0s()()()()()}if(2&n){const e=o.XpG();o.R7$(),o.Y8G("minValue",o.bMT(2,22,e.sliderValues$).min)("maxValue",o.bMT(3,24,e.sliderValues$).max)("currentLeftValue",o.bMT(4,26,e.sliderValues$).from)("currentRightValue",o.bMT(5,28,e.sliderValues$).to)("leftColor",o.bMT(6,30,e.sliderColors$).leftColor)("middleColor",o.bMT(7,32,e.sliderColors$).middleColor)("rightColor",o.bMT(8,34,e.sliderColors$).rightColor)("handleValueChange",e.handleValueChange)("isAttributeDirectionInversed",o.bMT(9,36,e.isAttributeDescriptionInversed$)),o.R7$(9),o.Y8G("settingsKeys",o.lJ4(60,Mxe))("callback",e.resetColorRange),o.R7$(),o.Y8G("minValue",o.bMT(12,38,e.sliderValues$).min)("maxValue",o.bMT(13,40,e.sliderValues$).max)("currentLeftValue",o.bMT(14,42,e.sliderValues$).from)("currentRightValue",o.bMT(15,44,e.sliderValues$).to)("leftColor",o.bMT(16,46,e.sliderColors$).leftColor)("middleColor",o.bMT(17,48,e.sliderColors$).middleColor)("rightColor",o.bMT(18,50,e.sliderColors$).rightColor)("colorMetric",o.bMT(19,52,e.colorMetric$))("values",o.bMT(20,54,e.sliderValues$).values)("isAttributeDirectionInverted",o.bMT(21,56,e.isAttributeDescriptionInversed$)),o.R7$(14),o.Y8G("value",o.bMT(26,58,e.colorMode$))}}function Sxe(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",1),o.nrm(1,"cc-color-picker-for-map-color",0),o.j41(2,"mat-checkbox",14),o.nI1(3,"async"),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.toggleColorLabel(r,"positive"))}),o.EFF(4,"Show labels"),o.k0s()(),o.j41(5,"div",1),o.nrm(6,"cc-color-picker-for-map-color",0),o.j41(7,"mat-checkbox",14),o.nI1(8,"async"),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.toggleColorLabel(r,"neutral"))}),o.EFF(9,"Show labels"),o.k0s()(),o.j41(10,"div",1),o.nrm(11,"cc-color-picker-for-map-color",0),o.j41(12,"mat-checkbox",14),o.nI1(13,"async"),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.toggleColorLabel(r,"negative"))}),o.EFF(14,"Show labels"),o.k0s()()}if(2&n){const e=o.XpG();o.R7$(),o.Y8G("mapColorFor","positive"),o.R7$(),o.Y8G("checked",o.bMT(3,6,e.colorLabels$).positive),o.R7$(4),o.Y8G("mapColorFor","neutral"),o.R7$(),o.Y8G("checked",o.bMT(8,8,e.colorLabels$).neutral),o.R7$(4),o.Y8G("mapColorFor","negative"),o.R7$(),o.Y8G("checked",o.bMT(13,10,e.colorLabels$).negative)}}function Txe(n,t){1&n&&o.nrm(0,"cc-color-picker-for-map-color",0)(1,"cc-color-picker-for-map-color",0),2&n&&(o.Y8G("mapColorFor","positiveDelta"),o.R7$(),o.Y8G("mapColorFor","negativeDelta"))}function Ixe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-checkbox",14),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleIsColorRangeInvertedChange(r.checked))}),o.EFF(1,"Invert Colors"),o.k0s()}if(2&n){const e=o.XpG();o.Y8G("checked",e.isColorRangeInverted)}}function Fxe(n,t){if(1&n){const e=o.RV6();o.j41(0,"mat-checkbox",14),o.bIt("change",function(r){o.eBV(e);const s=o.XpG();return o.Njj(s.handleAreDeltaColorsInverted(r.checked))}),o.EFF(1,"Invert Colors"),o.k0s()}if(2&n){const e=o.XpG();o.Y8G("checked",e.areDeltaColorsInverted)}}let Dxe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.colorMode$=this.store.select(Sq),this.colorLabels$=this.store.select(nK),this.colorMetric$=this.store.select(zg),this.isDeltaState$=this.store.select(Kp),this.sliderValues$=this.store.select(Lbe),this.sliderColors$=this.store.select(Nbe),this.isAttributeDescriptionInversed$=this.checkIsAttributeDirectionReversed(),this.isColorRangeInverted=!1,this.areDeltaColorsInverted=!1,this.newLeftValue=null,this.newRightValue=null,this.handleValueChange=({newLeftValue:r,newRightValue:s})=>{this.newLeftValue=r??this.newLeftValue,this.newRightValue=s??this.newRightValue,this.updateColorRangeDebounced()},this.updateColorRangeDebounced=ef(()=>{const r={};null!==this.newLeftValue&&(r.from=this.newLeftValue),null!==this.newRightValue&&(r.to=this.newRightValue),this.store.dispatch(Zh({value:r})),this.newLeftValue=null,this.newRightValue=null},400),this.resetInvertColorCheckboxes=()=>{this.isColorRangeInverted=!1,this.areDeltaColorsInverted=!1},this.resetColorRange=()=>{const r=Vp(this.state.getValue());this.store.dispatch(Zh({value:nP(r)}))}}checkIsAttributeDirectionReversed(){return this.colorMetric$.pipe((0,qn.T)(e=>1===this.state.getValue().fileSettings.attributeDescriptors[e]?.direction))}handleColorModeChange(e){this.store.dispatch(sx({value:e}))}toggleColorLabel(e,i){this.store.dispatch(o2({value:{[i]:e.checked}}))}handleIsColorRangeInvertedChange(e){this.isColorRangeInverted=e,this.store.dispatch(F3())}handleAreDeltaColorsInverted(e){this.areDeltaColorsInverted=e,this.store.dispatch(D3())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(Vi))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-color-settings-panel"]],standalone:!0,features:[o.aNF],decls:13,vars:18,consts:[[3,"mapColorFor"],[1,"color-row"],["tooltip","Reset color values to default","label","Reset colors",3,"settingsKeys","callback"],[3,"checked"],[3,"minValue","maxValue","currentLeftValue","currentRightValue","leftColor","middleColor","rightColor","handleValueChange","isAttributeDirectionInversed"],["tooltip","Reset slider thresholds to default","label","Reset thresholds",3,"settingsKeys","callback"],[3,"minValue","maxValue","currentLeftValue","currentRightValue","leftColor","middleColor","rightColor","colorMetric","values","isAttributeDirectionInverted"],["appearance","outline","subscriptSizing","dynamic",1,"gradient-mode-selector"],[3,"selectionChange","value"],[3,"mousedown"],["value","absolute"],["value","focusedGradient"],["value","weightedGradient"],["value","trueGradient"],[3,"change","checked"]],template:function(i,r){1&i&&(o.DNE(0,Exe,36,61,"div"),o.nI1(1,"async"),o.nI1(2,"async"),o.DNE(3,Sxe,15,12),o.nI1(4,"async"),o.DNE(5,Txe,2,2),o.nrm(6,"cc-color-picker-for-map-color",0),o.j41(7,"div",1),o.nrm(8,"cc-reset-settings-button",2),o.nI1(9,"async"),o.DNE(10,Ixe,2,1,"mat-checkbox",3),o.nI1(11,"async"),o.DNE(12,Fxe,2,1,"mat-checkbox",3),o.k0s()),2&i&&(o.vxM(o.bMT(1,6,r.isDeltaState$)||"unary"===o.bMT(2,8,r.colorMetric$)?-1:0),o.R7$(3),o.vxM(o.bMT(4,10,r.isDeltaState$)?5:3),o.R7$(3),o.Y8G("mapColorFor","selected"),o.R7$(2),o.Y8G("settingsKeys",o.bMT(9,12,r.isDeltaState$)?o.lJ4(16,xxe):o.lJ4(17,Cxe))("callback",r.resetInvertColorCheckboxes),o.R7$(2),o.vxM(o.bMT(11,14,r.isDeltaState$)?12:10))},dependencies:[Obe,S2,vxe,Lu,Nu,e0,yd,yV,fv,zn],styles:[".gradient-mode-selector[_ngcontent-%COMP%]{--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-height: 16px;margin:5px 10px;width:93%}.color-row[_ngcontent-%COMP%]{display:flex;align-items:center}cc-color-picker-for-map-color[_ngcontent-%COMP%]{width:50%}cc-reset-settings-button[_ngcontent-%COMP%]{width:50%}"]})}}return n})();const wV=sn(ko,n=>n.isEdgeMetricVisible);function Bxe(n,t){1&n&&(o.j41(0,"cc-rounded-box"),o.nrm(1,"cc-metric-chooser-type",3),o.EFF(2),o.k0s()),2&n&&(o.R7$(),o.Y8G("metricFor","edgeMetric"),o.R7$(),o.SpI(" ",t," "))}function kxe(n,t){if(1&n&&(o.j41(0,"cc-metric-chooser",1),o.nI1(1,"async"),o.j41(2,"div",2),o.DNE(3,Bxe,3,2,"cc-rounded-box"),o.nI1(4,"async"),o.k0s()()),2&n){let e;const i=o.XpG();o.AVh("is-edge-metric-disabled",!o.bMT(1,6,i.isEdgeMetricVisible$)),o.Y8G("selectedMetricName",t)("searchPlaceholder","Edge Metric (highest value)")("handleMetricChanged",i.handleEdgeMetricChanged),o.R7$(3),o.vxM((e=o.bMT(4,8,i.edgeValue$))?3:-1,e)}}let Rxe=(()=>{class n{constructor(e,i){this.store=e,this.nodeSelectionService=i,this.edgeValue$=this.createEdgeValue(),this.edgeMetric$=this.store.select(Yp),this.isEdgeMetricVisible$=this.store.select(wV),this.formatHoveredEdgeValue=(r,s)=>{if(!s)return null;const l=s.edgeAttributes[r];return l?`${this.formatValue(l.incoming)} / ${this.formatValue(l.outgoing)}`:null},this.formatValue=r=>"number"==typeof r?r.toLocaleString():"-"}handleEdgeMetricChanged(e){this.store.dispatch($p({value:e}))}createEdgeValue(){return d0([this.store.select(Yp),this.nodeSelectionService.createNodeObservable()]).pipe((0,qn.T)(([e,i])=>this.formatHoveredEdgeValue(e,i)))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(R7))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-edge-metric-chooser"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[["icon","fa-exchange","type","edge","title","Change edge metric",3,"is-edge-metric-disabled","selectedMetricName","searchPlaceholder","handleMetricChanged"],["icon","fa-exchange","type","edge","title","Change edge metric",3,"selectedMetricName","searchPlaceholder","handleMetricChanged"],["hoveredInformation","",1,"cc-metric-chooser-container"],["attributeType","edges",3,"metricFor"]],template:function(i,r){if(1&i&&(o.DNE(0,kxe,5,10,"cc-metric-chooser",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.edgeMetric$))?0:-1,s)}},dependencies:[D2,ZW,uX,zn],styles:["cc-rounded-box[_ngcontent-%COMP%]{position:absolute;top:10%;right:28px}"]})}}return n})();const Pxe=sn(ko,n=>n.edgeHeight),Oxe=sn(ko,n=>n.showOnlyBuildingsWithEdges),Nxe=sn(ka,Yp,(n,t)=>n.nodeEdgeMetricsMap.get(t)?.size??0);let Lxe=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.isEdgeMetricVisible$=this.store.select(wV)}toggleEdgeMetric(){this.store.dispatch(bR())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-edge-metric-toggle"]],standalone:!0,features:[o.aNF],decls:3,vars:3,consts:[[1,"edgeMetricCheckbox",3,"change","checked"]],template:function(i,r){1&i&&(o.j41(0,"mat-checkbox",0),o.nI1(1,"async"),o.bIt("change",function(){return r.toggleEdgeMetric()}),o.EFF(2," Disable edge metric\n"),o.k0s()),2&i&&o.Y8G("checked",!o.bMT(1,1,r.isEdgeMetricVisible$))},dependencies:[fv,zn],encapsulation:2})}}return n})();const Uxe=()=>["appSettings.showOnlyBuildingsWithEdges","appSettings.amountOfEdgePreviews","appSettings.edgeHeight"];let Vxe=(()=>{class n{constructor(e){this.store=e,this.amountOfBuildingsWithSelectedEdgeMetric$=this.store.select(Nxe),this.edgePreviewLabel$=this.amountOfBuildingsWithSelectedEdgeMetric$.pipe((0,qn.T)(i=>`Preview the edges of up to ${i} buildings with the highest amount of incoming and outgoing edges`)),this.amountOfEdgePreviews$=this.store.select(sX),this.edgeHeight$=this.store.select(Pxe),this.showOnlyBuildingsWithEdges$=this.store.select(Oxe),this.applySettingsAmountOfEdgePreviews=i=>{this.store.dispatch(M2({value:i}))},this.applySettingsEdgeHeight=i=>{this.store.dispatch(ax({value:i}))}}applyShowOnlyBuildingsWithEdges(e){this.store.dispatch(m2({value:e.checked}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-edge-settings-panel"]],standalone:!0,features:[o.aNF],decls:17,vars:35,consts:[[3,"title","label","value","onChange","min","max","disabled"],["title","Adjust the curve height",3,"label","value","onChange","min","max","disabled"],[1,"wrapper"],[3,"mapColorFor"],[3,"change","checked","disabled"],["tooltip","Reset edge metric settings to their defaults","label","Reset edge metric settings",3,"settingsKeys"]],template:function(i,r){1&i&&(o.nrm(0,"cc-slider",0),o.nI1(1,"async"),o.nI1(2,"async"),o.nI1(3,"async"),o.nI1(4,"async"),o.nrm(5,"cc-slider",1),o.nI1(6,"async"),o.nI1(7,"async"),o.j41(8,"div",2),o.nrm(9,"cc-color-picker-for-map-color",3)(10,"cc-color-picker-for-map-color",3),o.k0s(),o.j41(11,"mat-checkbox",4),o.nI1(12,"async"),o.nI1(13,"async"),o.bIt("change",function(l){return r.applyShowOnlyBuildingsWithEdges(l)}),o.EFF(14," Only show nodes with edges\n"),o.k0s(),o.nrm(15,"cc-edge-metric-toggle")(16,"cc-reset-settings-button",5)),2&i&&(o.Y8G("title",o.bMT(1,18,r.edgePreviewLabel$))("label","Preview")("value",o.bMT(2,20,r.amountOfEdgePreviews$))("onChange",r.applySettingsAmountOfEdgePreviews)("min",0)("max",o.bMT(3,22,r.amountOfBuildingsWithSelectedEdgeMetric$))("disabled",0===o.bMT(4,24,r.amountOfBuildingsWithSelectedEdgeMetric$)),o.R7$(5),o.Y8G("label","Height")("value",o.bMT(6,26,r.edgeHeight$))("onChange",r.applySettingsEdgeHeight)("min",1)("max",9)("disabled",0===o.bMT(7,28,r.amountOfBuildingsWithSelectedEdgeMetric$)),o.R7$(4),o.Y8G("mapColorFor","outgoingEdge"),o.R7$(),o.Y8G("mapColorFor","incomingEdge"),o.R7$(),o.Y8G("checked",o.bMT(12,30,r.showOnlyBuildingsWithEdges$))("disabled",0===o.bMT(13,32,r.amountOfBuildingsWithSelectedEdgeMetric$)),o.R7$(5),o.Y8G("settingsKeys",o.lJ4(34,Uxe)))},dependencies:[GR,yV,fv,Lxe,S2,zn],encapsulation:2})}}return n})();function Hxe(n,t){1&n&&(o.j41(0,"mat-card",8),o.nrm(1,"cc-link-color-metric-to-height-metric-button"),o.k0s(),o.j41(2,"cc-ribbon-bar-panel",9),o.nrm(3,"cc-color-metric-chooser"),o.j41(4,"cc-ribbon-bar-panel-settings"),o.nrm(5,"cc-color-settings-panel",4),o.k0s()()),2&n&&(o.R7$(2),o.Y8G("separator",!0))}function Qxe(n,t){1&n&&(o.j41(0,"cc-ribbon-bar-panel",6),o.nrm(1,"cc-edge-metric-chooser"),o.j41(2,"cc-ribbon-bar-panel-settings"),o.nrm(3,"cc-edge-settings-panel",4),o.k0s()()),2&n&&o.Y8G("separator",!0)}function zxe(n,t){1&n&&(o.j41(0,"cc-ribbon-bar-panel",7)(1,"div",10),o.nrm(2,"i",11),o.j41(3,"span"),o.EFF(4,"Color Settings"),o.k0s()(),o.j41(5,"cc-ribbon-bar-panel-settings"),o.nrm(6,"cc-color-settings-panel",4),o.k0s()()),2&n&&o.Y8G("separator",!0)("isHeaderExpandable",!0)}let Gxe=(()=>{class n{constructor(e){this.store=e,this.isDeltaState$=this.store.select(Kp),this.hasEdgeMetric$=this.store.select(ka).pipe((0,qn.T)(i=>i.edgeMetricData.length>0))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-ribbon-bar"]],standalone:!0,features:[o.aNF],decls:21,vars:11,consts:[["id","scenario-card","title","Metric Scenarios"],["id","custom-configs-card","title","Custom Views"],["id","ai-card","title","Suspicious Metrics"],["id","area-metric-card","title","Area Metric Options",1,"ribbon-bar-panel-wide",3,"separator"],[1,"cc-metric-settings-panel"],["id","height-metric-card","title","Height Metric Options",1,"ribbon-bar-panel-wide",3,"separator"],["id","edge-metric-card","title","Edge Metric Options",1,"ribbon-bar-panel-wide",3,"separator"],["id","color-settings-card",1,"ribbon-bar-panel-wide",3,"separator","isHeaderExpandable"],["appearance","outlined",1,"color-height-metric-link"],["id","color-metric-card","title","Color Metric Options",1,"ribbon-bar-panel-wide",3,"separator"],[1,"color-settings-header","toggleHeader"],[1,"fa","fa-paint-brush","color-icon"]],template:function(i,r){1&i&&(o.nrm(0,"cc-search-panel"),o.j41(1,"cc-ribbon-bar-panel",0),o.nrm(2,"cc-show-scenarios-button"),o.k0s(),o.j41(3,"cc-ribbon-bar-panel",1),o.nrm(4,"cc-custom-configs"),o.k0s(),o.j41(5,"cc-ribbon-bar-panel",2),o.nrm(6,"cc-artificial-intelligence"),o.k0s(),o.j41(7,"cc-ribbon-bar-panel",3),o.nrm(8,"cc-area-metric-chooser"),o.j41(9,"cc-ribbon-bar-panel-settings"),o.nrm(10,"cc-area-settings-panel",4),o.k0s()(),o.j41(11,"cc-ribbon-bar-panel",5),o.nrm(12,"cc-height-metric-chooser"),o.j41(13,"cc-ribbon-bar-panel-settings"),o.nrm(14,"cc-height-settings-panel",4),o.k0s()(),o.DNE(15,Hxe,6,1),o.nI1(16,"async"),o.DNE(17,Qxe,4,1,"cc-ribbon-bar-panel",6),o.nI1(18,"async"),o.DNE(19,zxe,7,2,"cc-ribbon-bar-panel",7),o.nI1(20,"async")),2&i&&(o.R7$(7),o.Y8G("separator",!0),o.R7$(4),o.Y8G("separator",!0),o.R7$(4),o.vxM(o.bMT(16,5,r.isDeltaState$)?-1:15),o.R7$(2),o.vxM(o.bMT(18,7,r.hasEdgeMetric$)?17:-1),o.R7$(2),o.vxM(o.bMT(20,9,r.isDeltaState$)?19:-1))},dependencies:[Yge,O7,c0e,A_e,abe,lbe,P7,dbe,ube,vbe,e2,ybe,wbe,Dxe,Rxe,Vxe,zn],styles:["[_nghost-%COMP%]{position:fixed;z-index:10;width:100%;display:flex;flex-wrap:nowrap}cc-ribbon-bar-panel[_ngcontent-%COMP%]{flex:0}cc-ribbon-bar-panel.ribbon-bar-panel-wide[_ngcontent-%COMP%]{flex-grow:1}cc-ribbon-bar-panel[_ngcontent-%COMP%] cc-ribbon-bar-panel-settings[_ngcontent-%COMP%]{font-size:.9em;left:0;right:auto}cc-ribbon-bar-panel[_ngcontent-%COMP%]:last-child cc-ribbon-bar-panel-settings[_ngcontent-%COMP%]{left:auto;right:0}mat-card.color-height-metric-link[_ngcontent-%COMP%]{display:flex;justify-content:center;flex-grow:0;padding:0;height:46px;border-radius:0;border-top:1px solid #cdcdcd}.color-settings-header[_ngcontent-%COMP%]{display:flex;gap:8px;line-height:24px;align-items:baseline}"]})}}return n})();const yv=()=>new d3({color:16580095}),Ex=()=>new d3({color:16580095}),PP=()=>new d3({color:16580095});class z2{static buildCube(t){const e=1/t,i=(1-e)/2,r=new jc(e,i,i),s=new jc(i,e+i,i),l=new jc(i,i,i),u=new jc(e,e,i),f=new jc(e,e+i,i);return z2.newBuildCubeGroup(r,s,l,u,f)}static newBuildCubeGroup(t,e,i,r,s){const l=new lc,{group:u,frontLeft:f,frontCenter:p,frontRight:m,middleLeft:_,middleCenter:b,middleRight:w,backLeft:F,backCenter:D,backRight:T}=z2.buildCubeTopFace(t,i,r);l.add(u);const{group:I,frontLeftEdge:O,frontCenterFace:R,frontRightEdge:P,middleLeftFace:ee,middleRightFace:J,backLeftEdge:te,backCenterFace:ie,backRightEdge:W}=z2.buildCubeSides(e,s);return l.add(I),{group:l,top:{front:{left:f,center:p,right:m},middle:{left:_,center:b,right:w},back:{left:F,center:D,right:T}},sides:{front:{left:O,center:R,right:P},middle:{left:ee,right:J},back:{left:te,center:ie,right:W}}}}static buildCubeTopFace(t,e,i){const r=new dr(e,PP()),s=new dr(t,yv()),l=new dr(e,PP()),u=new dr(t,yv()),f=new dr(i,Ex()),p=new dr(t,Ex()),m=new dr(e,PP()),_=new dr(t,yv()),b=new dr(e,PP()),w=i.parameters.height/2+e.parameters.height/2;r.position.x-=w,r.position.y-=w,s.position.y-=w,l.position.x+=w,l.position.y-=w,u.position.x-=w,u.rotation.z=Math.PI/2,p.position.x+=w,p.rotation.z=Math.PI/2,m.position.x-=w,m.position.y+=w,_.position.y+=w,b.position.x+=w,b.position.y+=w;const F=new lc;return F.rotation.x=Math.PI/2,F.position.y+=w,F.add(r),F.add(s),F.add(l),F.add(u),F.add(f),F.add(p),F.add(m),F.add(_),F.add(b),{group:F,frontLeft:r,frontCenter:s,frontRight:l,middleLeft:u,middleCenter:f,middleRight:p,backLeft:m,backCenter:_,backRight:b}}static buildCubeSides(t,e){const i=new dr(t,yv()),r=new dr(e,Ex()),s=new dr(t,yv()),l=new dr(e,Ex()),u=new dr(e,Ex()),f=new dr(t,yv()),p=new dr(e,Ex()),m=new dr(t,yv()),_=e.parameters.width/2+t.parameters.width/2,b=t.parameters.width/2;i.position.x-=_,i.position.z+=_,r.position.z+=_,s.position.x+=_,s.position.z+=_,l.position.x-=_,l.rotation.y=Math.PI/2,u.position.x+=_,u.rotation.y=Math.PI/2,f.position.x-=_,f.position.z-=_,p.position.z-=_,m.position.x+=_,m.position.z-=_;const w=new lc;return w.position.y-=b,w.add(i),w.add(r),w.add(s),w.add(l),w.add(u),w.add(f),w.add(p),w.add(m),{group:w,frontLeftEdge:i,frontCenterFace:r,frontRightEdge:s,middleLeftFace:l,middleRightFace:u,backLeftEdge:f,backCenterFace:p,backRightEdge:m}}}let jxe=(()=>{class n{constructor(e){this.threeMapControlsService=e}centerMap(){this.threeMapControlsService.autoFitTo()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Rd))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-center-map-button"]],standalone:!0,features:[o.aNF],decls:2,vars:0,consts:[["aria-label","Center map in View","title","Center map",1,"cc-shadow",3,"click"],[1,"fa","fa-compass"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.centerMap()}),o.nrm(1,"i",1),o.k0s())},styles:["button[_ngcontent-%COMP%]{position:absolute;right:15px;width:36px;height:36px;font-size:28px;border-radius:100%;color:#fff;background-color:#1b9cfc}button.cc-shadow[_ngcontent-%COMP%]{box-shadow:0 1px 5px #0003!important}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-top:2px}button[_ngcontent-%COMP%]:hover{cursor:pointer;background-color:#0374c9}"]})}}return n})(),$xe=(()=>{class n{constructor(e,i){this.threeMapControlsService=e,this.cdr=i}ngOnInit(){this.maxZoom=this.threeMapControlsService.MAX_ZOOM,this.minZoom=this.threeMapControlsService.MIN_ZOOM,this.threeMapControlsService.zoomPercentage$.subscribe(e=>{this.zoomPercentage=e,this.cdr.detectChanges()})}onInput(e){const r=Number.parseFloat(e.target.value);this.threeMapControlsService.setZoomPercentage(r)}zoomIn(){this.threeMapControlsService.setZoomPercentage(Math.min(this.zoomPercentage+10,this.maxZoom))}zoomOut(){this.threeMapControlsService.setZoomPercentage(Math.max(this.zoomPercentage-10,this.minZoom))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Rd),o.rXU(o.gRc))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-zoom-slider"]],standalone:!0,features:[o.aNF],decls:8,vars:4,consts:[[1,"zoom-slider"],["data-testid","zoomOut",1,"zoom-button",3,"click"],["type","range","id","zoomRange","data-testid","zoomRange",3,"input","min","max","value"],["data-testid","zoomIn",1,"zoom-button",3,"click"],["id","zoomValue"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"button",1),o.bIt("click",function(){return r.zoomOut()}),o.EFF(2,"-"),o.k0s(),o.j41(3,"input",2),o.bIt("input",function(l){return r.onInput(l)}),o.k0s(),o.j41(4,"button",3),o.bIt("click",function(){return r.zoomIn()}),o.EFF(5,"+"),o.k0s(),o.j41(6,"span",4),o.EFF(7),o.k0s()()),2&i&&(o.R7$(3),o.Y8G("min",r.minZoom)("max",r.maxZoom)("value",r.zoomPercentage),o.R7$(4),o.SpI("",null==r.zoomPercentage?null:r.zoomPercentage.toFixed(0),"%"))},styles:['.mat-ripple[_ngcontent-%COMP%]{overflow:hidden;position:relative}.mat-ripple[_ngcontent-%COMP%]:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded[_ngcontent-%COMP%]{overflow:visible}.mat-ripple-element[_ngcontent-%COMP%]{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0,0,.2,1);transform:scale3d(0,0,0);background-color:var(--mat-ripple-color, rgba(0, 0, 0, .1))}.cdk-high-contrast-active[_ngcontent-%COMP%] .mat-ripple-element[_ngcontent-%COMP%], .cdk-drag-preview[_ngcontent-%COMP%] .mat-ripple-element[_ngcontent-%COMP%], .cdk-drag-placeholder[_ngcontent-%COMP%] .mat-ripple-element[_ngcontent-%COMP%]{display:none}.cdk-visually-hidden[_ngcontent-%COMP%]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl][_ngcontent-%COMP%] .cdk-visually-hidden[_ngcontent-%COMP%]{left:auto;right:0}.cdk-overlay-container[_ngcontent-%COMP%], .cdk-global-overlay-wrapper[_ngcontent-%COMP%]{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container[_ngcontent-%COMP%]{position:fixed;z-index:1000}.cdk-overlay-container[_ngcontent-%COMP%]:empty{display:none}.cdk-global-overlay-wrapper[_ngcontent-%COMP%]{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane[_ngcontent-%COMP%]{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing[_ngcontent-%COMP%]{opacity:1}.cdk-high-contrast-active[_ngcontent-%COMP%] .cdk-overlay-backdrop.cdk-overlay-backdrop-showing[_ngcontent-%COMP%]{opacity:.6}.cdk-overlay-dark-backdrop[_ngcontent-%COMP%]{background:#00000052}.cdk-overlay-transparent-backdrop[_ngcontent-%COMP%]{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing[_ngcontent-%COMP%]{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation[_ngcontent-%COMP%]{transition:none}.cdk-overlay-connected-position-bounding-box[_ngcontent-%COMP%]{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock[_ngcontent-%COMP%]{position:fixed;width:100%;overflow-y:scroll}textarea.cdk-textarea-autosize[_ngcontent-%COMP%]{resize:none}textarea.cdk-textarea-autosize-measuring[_ngcontent-%COMP%]{padding:2px 0!important;box-sizing:content-box!important;height:auto!important;overflow:hidden!important}textarea.cdk-textarea-autosize-measuring-firefox[_ngcontent-%COMP%]{padding:2px 0!important;box-sizing:content-box!important;height:0!important}@keyframes _ngcontent-%COMP%_cdk-text-field-autofill-start{}@keyframes _ngcontent-%COMP%_cdk-text-field-autofill-end{}.cdk-text-field-autofill-monitored[_ngcontent-%COMP%]:-webkit-autofill{animation:_ngcontent-%COMP%_cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored[_ngcontent-%COMP%]:not(:-webkit-autofill){animation:_ngcontent-%COMP%_cdk-text-field-autofill-end 0s 1ms}.mat-focus-indicator[_ngcontent-%COMP%]{position:relative}.mat-focus-indicator[_ngcontent-%COMP%]:before{inset:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border:var(--mat-focus-indicator-border-width, 3px) var(--mat-focus-indicator-border-style, solid) var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator[_ngcontent-%COMP%]:focus:before{content:""}.cdk-high-contrast-active[_ngcontent-%COMP%]{--mat-focus-indicator-display: block}.mat-mdc-focus-indicator[_ngcontent-%COMP%]{position:relative}.mat-mdc-focus-indicator[_ngcontent-%COMP%]:before{inset:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-mdc-focus-indicator-display, none);border:var(--mat-mdc-focus-indicator-border-width, 3px) var(--mat-mdc-focus-indicator-border-style, solid) var(--mat-mdc-focus-indicator-border-color, transparent);border-radius:var(--mat-mdc-focus-indicator-border-radius, 4px)}.mat-mdc-focus-indicator[_ngcontent-%COMP%]:focus:before{content:""}.cdk-high-contrast-active[_ngcontent-%COMP%]{--mat-mdc-focus-indicator-display: block}.mat-app-background[_ngcontent-%COMP%]{background-color:var(--mat-app-background-color, var(--mat-app-background, transparent));color:var(--mat-app-text-color, var(--mat-app-on-background, inherit))}.mat-elevation-z0[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z0[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-0, none)}.mat-elevation-z1[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z1[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-1, none)}.mat-elevation-z2[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z2[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-2, none)}.mat-elevation-z3[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z3[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-3, none)}.mat-elevation-z4[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z4[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-4, none)}.mat-elevation-z5[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z5[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-5, none)}.mat-elevation-z6[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z6[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-6, none)}.mat-elevation-z7[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z7[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-7, none)}.mat-elevation-z8[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z8[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-8, none)}.mat-elevation-z9[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z9[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-9, none)}.mat-elevation-z10[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z10[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-10, none)}.mat-elevation-z11[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z11[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-11, none)}.mat-elevation-z12[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z12[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-12, none)}.mat-elevation-z13[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z13[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-13, none)}.mat-elevation-z14[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z14[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-14, none)}.mat-elevation-z15[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z15[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-15, none)}.mat-elevation-z16[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z16[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-16, none)}.mat-elevation-z17[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z17[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-17, none)}.mat-elevation-z18[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z18[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-18, none)}.mat-elevation-z19[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z19[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-19, none)}.mat-elevation-z20[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z20[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-20, none)}.mat-elevation-z21[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z21[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-21, none)}.mat-elevation-z22[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z22[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-22, none)}.mat-elevation-z23[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z23[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-23, none)}.mat-elevation-z24[_ngcontent-%COMP%], .mat-mdc-elevation-specific.mat-elevation-z24[_ngcontent-%COMP%]{box-shadow:var(--mat-app-elevation-shadow-level-24, none)}[_ngcontent-%COMP%]:root{--mat-dialog-container-min-width: 500px;--mat-dialog-actions-alignment: flex-end;--mat-toolbar-container-background-color: #1b9cfc;--mat-toolbar-container-text-color: #fff;--mat-text-button-horizontal-padding: 8px}[_ngcontent-%COMP%]:root .mat-mdc-checkbox.mat-accent[_ngcontent-%COMP%]{--mdc-checkbox-selected-checkmark-color: #fff !important}[_ngcontent-%COMP%]:root .cdk-overlay-pane.cc-incompatible-maps-dialog[_ngcontent-%COMP%]{--mdc-dialog-supporting-text-color: $cc-font-color}.zoom-slider[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;width:150px;position:absolute;top:190px;right:26px;margin:10px}.zoom-slider[_ngcontent-%COMP%] .zoom-button[_ngcontent-%COMP%], .zoom-slider[_ngcontent-%COMP%] #zoomValue[_ngcontent-%COMP%]{font-size:10px;color:#737373}.zoom-slider[_ngcontent-%COMP%] .zoom-button.zoom-button[_ngcontent-%COMP%], .zoom-slider[_ngcontent-%COMP%] #zoomValue.zoom-button[_ngcontent-%COMP%]{background:none;border:none;font-size:16px;cursor:pointer;padding:0;margin:0}input[type=range][_ngcontent-%COMP%]{-webkit-appearance:none;color:#737373;width:100px;height:3px;background:#737373;outline:none;opacity:.7;transition:opacity .2s}input[type=range][_ngcontent-%COMP%]::-webkit-slider-thumb{appearance:none;width:3px;height:10px;background:#737373;cursor:pointer}input[type=range][_ngcontent-%COMP%]::-moz-range-thumb{width:3px;height:10px;background:#737373;cursor:pointer}'],changeDetection:0})}}return n})(),qxe=(()=>{class n{constructor(e,i,r){this.elementReference=e,this.threeMapControlsService=i,this.viewCubeMouseEvents=r,this.WIDTH=200,this.HEIGHT=200,this.LENGTH_VIEWCUBE=1,this.hoverInfo={cube:null,originalMaterial:null},this.cubeDefinition={top:null,sides:null},this.onCameraChanged=s=>{const l=this.calculateCameraPosition(s.camera);this.setCameraPosition(l),this.renderer.render(this.scene,this.camera)},this.onCubeHovered=s=>{this.hoverInfo={cube:s.cube,originalMaterial:s.cube.material},this.hoverInfo.cube.material.emissive=new vn(16777215),this.renderer.render(this.scene,this.camera)},this.onCubeUnhovered=()=>{this.hoverInfo.cube.material.emissive=new vn(0),this.hoverInfo.cube=null,this.renderer.render(this.scene,this.camera)},this.onCubeClicked=s=>{switch(s.cube){case this.cubeDefinition.top.front.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,-1,1);break;case this.cubeDefinition.top.front.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,-1,1);break;case this.cubeDefinition.top.front.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,-1,1);break;case this.cubeDefinition.top.middle.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,-1,0);break;case this.cubeDefinition.top.middle.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,-1,0);break;case this.cubeDefinition.top.middle.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,-1,0);break;case this.cubeDefinition.top.back.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,-1,-1);break;case this.cubeDefinition.top.back.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,-1,-1);break;case this.cubeDefinition.top.back.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,-1,-1);break;case this.cubeDefinition.sides.front.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,0,-1);break;case this.cubeDefinition.sides.front.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,0,0);break;case this.cubeDefinition.sides.front.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,0,-1);break;case this.cubeDefinition.sides.middle.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,0,0);break;case this.cubeDefinition.sides.middle.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,0,0);break;case this.cubeDefinition.sides.back.left:this.threeMapControlsService.rotateCameraInVectorDirection(1,0,1);break;case this.cubeDefinition.sides.back.center:this.threeMapControlsService.rotateCameraInVectorDirection(0,0,1);break;case this.cubeDefinition.sides.back.right:this.threeMapControlsService.rotateCameraInVectorDirection(-1,0,1)}}}ngOnInit(){this.initScene(),this.initLights(),this.initRenderer(this.elementReference.nativeElement),this.initCube(),this.initAxesHelper(),this.initCamera(),this.viewCubeMouseEvents.init(this.cubeGroup,this.camera,this.renderer),this.threeMapControlsService.subscribe("onCameraChanged",this.onCameraChanged),this.viewCubeMouseEvents.subscribe("viewCubeHoveredEvent",this.onCubeHovered),this.viewCubeMouseEvents.subscribe("viewCubeUnHoveredEvent",this.onCubeUnhovered),this.viewCubeMouseEvents.subscribe("viewCubeClicked",this.onCubeClicked)}initAxesHelper(){const e=new vre(1.3),i=-this.LENGTH_VIEWCUBE/2+.01;e.position.x+=i,e.position.y+=i,e.position.z+=i,this.scene.add(e)}initCube(){const{group:e,top:i,sides:r}=z2.buildCube(1.9);this.cubeGroup=e,this.cubeDefinition.top=i,this.cubeDefinition.sides=r;const s=new _re(this.cubeGroup,new vn(0));this.scene.add(this.cubeGroup),this.scene.add(s)}setCameraPosition(e){this.camera.position.set(e.x,e.y,e.z),this.camera.lookAt(0,0,0),this.camera.updateProjectionMatrix()}calculateCameraPosition(e){const i=this.threeMapControlsService.controls.target.clone();return e.position.clone().sub(i).normalize().multiplyScalar(3)}initScene(){this.scene=new Nk}initRenderer(e){this.renderer=new H5({alpha:!0,antialias:!0}),this.renderer.setSize(this.WIDTH,this.HEIGHT),this.renderer.setPixelRatio(window.devicePixelRatio),e.appendChild(this.renderer.domElement)}initCamera(){this.camera=new Js(45,this.WIDTH/this.HEIGHT,.1,1e3),this.camera.position.z=4}initLights(){this.lights=new lc;const e=new SU(7368816,2.8),i=new IS(14737632,1.8);i.position.set(50,10,8).normalize();const r=new IS(14737632,1.8);r.position.set(-50,10,-8).normalize(),this.lights.add(e),this.lights.add(i),this.lights.add(r),this.scene.add(this.lights)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(o.aKT),o.rXU(Rd),o.rXU(lX))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-view-cube"]],standalone:!0,features:[o.aNF],decls:2,vars:0,template:function(i,r){1&i&&o.nrm(0,"cc-center-map-button")(1,"cc-zoom-slider")},dependencies:[jxe,$xe],styles:["[_nghost-%COMP%]{transition:right .3s ease;position:absolute;z-index:11;right:0;top:10px}.sideBarVisible[_nghost-%COMP%]{right:350px}"]})}}return n})();const Wxe=sn(u0,n=>{if(n)return{all:n.attributes?.unary??0,added:n.fileCount?.added??0,removed:n.fileCount?.removed??0,changed:n.fileCount?.changed??0}});function Xxe(n,t){if(1&n&&(o.j41(0,"span",2),o.EFF(1," | "),o.j41(2,"span",3),o.EFF(3),o.k0s(),o.EFF(4," | "),o.j41(5,"span",4),o.EFF(6),o.k0s(),o.EFF(7," | "),o.j41(8,"span",5),o.EFF(9),o.k0s()()),2&n){const e=o.XpG();o.R7$(3),o.SpI(" \u0394",e.added,""),o.R7$(3),o.SpI(" \u0394",e.removed>0?-e.removed:0,""),o.R7$(3),o.SpI(" \u0394",e.changed,"")}}function Kxe(n,t){if(1&n&&(o.j41(0,"span",2),o.EFF(1),o.DNE(2,Xxe,10,3,"span",2),o.nI1(3,"async"),o.EFF(4," ) "),o.k0s()),2&n){const e=t,i=o.XpG(2);o.R7$(),o.Lme(" ( ",e.all," ",1===e.all?"file":"files"," "),o.R7$(),o.vxM(null!=i.node.children&&i.node.children.length&&o.bMT(3,3,i.isDeltaMode$)?2:-1)}}function Yxe(n,t){if(1&n&&(o.j41(0,"span",1),o.EFF(1),o.DNE(2,Kxe,5,5,"span",2),o.nI1(3,"async"),o.k0s()),2&n){let e;const i=o.XpG();o.R7$(),o.SpI(" ",i.node.path," "),o.R7$(),o.vxM((e=o.bMT(3,2,(null==i.node.children?null:i.node.children.length)&&i.fileCount$))?2:-1,e)}}let Zxe=(()=>{class n{constructor(e){this.fileCount$=e.select(Wxe),this.isDeltaMode$=e.select(Kp)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-node-path"]],inputs:{node:"node"},standalone:!0,features:[o.aNF],decls:2,vars:1,consts:[[1,"cc-node-path"],[1,"file-path"],[1,"cc-node-file-count"],["title","Number of added files",1,"added-files"],["title","Number of removed files",1,"removed-files"],["title","Number of files with metric changes",1,"files-with-metric-changes"]],template:function(i,r){1&i&&(o.j41(0,"p",0),o.DNE(1,Yxe,4,4,"span",1),o.k0s()),2&i&&(o.R7$(),o.vxM(r.node?1:-1))},dependencies:[zn],styles:[".cc-node-path[_ngcontent-%COMP%]{color:gray;margin:5px 0}.cc-node-path[_ngcontent-%COMP%] .file-path[_ngcontent-%COMP%]{word-wrap:break-word}.cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%]{background:#f0f0f0;border-radius:3px;padding:1px 3px;color:#000}.cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .added-files[_ngcontent-%COMP%]{color:#64d051}.cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .removed-files[_ngcontent-%COMP%]{color:#ff0e0e}.cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .changed-files[_ngcontent-%COMP%]{color:#0e2eff}"]})}}return n})(),OP=(()=>{class n{constructor(e){this.threeSceneService=e,this.isOpen=!1,this.threeSceneService.subscribe("onBuildingSelected",()=>{this.isOpen=!0}),this.threeSceneService.subscribe("onBuildingDeselected",()=>{this.isOpen=!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Dd))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();function Jxe(n,t){if(1&n&&(o.j41(0,"div",1)(1,"a",4)(2,"h2"),o.EFF(3),o.k0s(),o.nrm(4,"i",5),o.k0s()()),2&n){const e=o.XpG(2);o.FS9("matTooltip",e.node.link),o.Y8G("matTooltipShowDelay",200),o.R7$(),o.FS9("href",e.node.link,o.B4B),o.R7$(2),o.SpI("",e.node.name,"\xa0")}}function eCe(n,t){if(1&n){const e=o.RV6();o.j41(0,"i",0),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.closeSideBar())}),o.k0s(),o.DNE(1,Jxe,5,4,"div",1),o.j41(2,"p",2),o.EFF(3),o.nI1(4,"removeExtension"),o.k0s(),o.nrm(5,"cc-node-path",3)}if(2&n){const e=o.XpG();o.R7$(),o.vxM(e.node.link?1:-1),o.R7$(2),o.JRh(o.bMT(4,3,e.fileName)),o.R7$(2),o.Y8G("node",e.node)}}let tCe=(()=>{class n{constructor(e){this.isAttributeSideBarVisibleService=e}closeSideBar(){this.isAttributeSideBarVisibleService.isOpen=!1}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(OP))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar-header-section"]],inputs:{node:"node",fileName:"fileName"},standalone:!0,features:[o.aNF],decls:1,vars:1,consts:[[1,"close-icon","fa","fa-times",3,"click"],["data-testid","file-link",1,"node-name",3,"matTooltip","matTooltipShowDelay"],[1,"node-origin"],[3,"node"],["target","_blank","rel","noopener noreferrer",1,"node-link",3,"href"],[1,"fa","fa-external-link"]],template:function(i,r){1&i&&o.DNE(0,eCe,6,5),2&i&&o.vxM(r.node?0:-1)},dependencies:[w7,Zxe,y7],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}[_nghost-%COMP%] .close-icon[_ngcontent-%COMP%], [_nghost-%COMP%] .node-link[_ngcontent-%COMP%]{color:gray;padding:0;cursor:pointer;outline:none;transition:.2s}[_nghost-%COMP%] .close-icon[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .node-link[_ngcontent-%COMP%]:hover{color:#444}[_nghost-%COMP%] .close-icon[_ngcontent-%COMP%]{align-self:flex-end;font-size:20px}[_nghost-%COMP%] .node-name[_ngcontent-%COMP%]{width:90%;cursor:pointer}[_nghost-%COMP%] .node-name[_ngcontent-%COMP%] .node-link[_ngcontent-%COMP%]{font-size:11pt}[_nghost-%COMP%] .node-name[_ngcontent-%COMP%] .node-link[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{color:#000;display:inline}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%]{color:gray;margin:5px 0}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .file-path[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .file-path[_ngcontent-%COMP%]{word-wrap:break-word}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%]{background:#f0f0f0;border-radius:3px;padding:1px 3px;color:#000}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .added-files[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .added-files[_ngcontent-%COMP%]{color:#64d051}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .removed-files[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .removed-files[_ngcontent-%COMP%]{color:#ff0e0e}[_nghost-%COMP%] .node-origin[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .changed-files[_ngcontent-%COMP%], [_nghost-%COMP%] .cc-node-path[_ngcontent-%COMP%] .cc-node-file-count[_ngcontent-%COMP%] .changed-files[_ngcontent-%COMP%]{color:#0e2eff}"]})}}return n})();const xV=sn(u0,n=>n&&!Ro(n)),nCe=sn(u0,qR,(n,t)=>{if(n)return{area:{name:t.areaMetric,value:n.attributes[t.areaMetric]},height:{name:t.heightMetric,value:n.attributes[t.heightMetric]},color:{name:t.colorMetric,value:n.attributes[t.colorMetric]},edge:iCe(t.edgeMetric,n)}});function iCe(n,t){return null==n?null:{name:n,incoming:t.edgeAttributes[n]?t.edgeAttributes[n].incoming??0:0,outgoing:t.edgeAttributes[n]?t.edgeAttributes[n].outgoing??0:0}}let CV=(()=>{class n{constructor(e){this.store=e,this.attributeTypes$=this.store.select(NU)}setToAbsolute(){this.setAttributeType(Fc.absolute)}setToRelative(){this.setAttributeType(Fc.relative)}setAttributeType(e){this.store.dispatch(l6({category:this.metricType,name:this.metricName,attributeType:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-type-selector"]],inputs:{metricName:"metricName",metricType:"metricType"},standalone:!0,features:[o.aNF],decls:6,vars:3,consts:[[3,"value"],["title","Select Sum","value","absolute",3,"click"],["title","Select Median","value","relative",3,"click"]],template:function(i,r){if(1&i&&(o.j41(0,"mat-button-toggle-group",0),o.nI1(1,"async"),o.j41(2,"mat-button-toggle",1),o.bIt("click",function(){return r.setToAbsolute()}),o.EFF(3,"\u03a3"),o.k0s(),o.j41(4,"mat-button-toggle",2),o.bIt("click",function(){return r.setToRelative()}),o.EFF(5,"x\u0342"),o.k0s()()),2&i){let s;o.Y8G("value",null!==(s=o.bMT(1,1,r.attributeTypes$)[r.metricType][r.metricName])&&void 0!==s?s:"absolute")}},dependencies:[U7,JR,zn],encapsulation:2})}}return n})();function rCe(n,t){if(1&n&&(o.j41(0,"span"),o.nI1(1,"async"),o.EFF(2),o.nI1(3,"number"),o.k0s()),2&n){const e=t,i=o.XpG();o.xc7("color",o.bMT(1,3,i.mapColors$)[e>0?"positiveDelta":"negativeDelta"]),o.R7$(2),o.SpI(" \u0394",o.i5U(3,5,e,"1.1-2")," ")}}let _Y=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.selectedNode$=this.store.select(u0),this.mapColors$=this.store.select($w)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-metric-delta-selected"]],inputs:{metricName:"metricName"},standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"color"]],template:function(i,r){if(1&i&&(o.DNE(0,rCe,4,8,"span",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=null==(s=o.bMT(1,1,r.selectedNode$))||null==s.deltas?null:s.deltas[r.metricName])?0:-1,s)}},dependencies:[zn,Wu],styles:["[_nghost-%COMP%]:has(span){margin-top:5px}"]})}}return n})();function oCe(n,t){if(1&n&&o.nrm(0,"cc-attribute-type-selector",2),2&n){const e=o.XpG();o.Y8G("metricName",e.metric.name)("metricType","nodes")}}function sCe(n,t){if(1&n&&(o.j41(0,"a",5),o.EFF(1),o.nrm(2,"i",7),o.k0s()),2&n){const e=o.XpG();o.Y8G("href",t,o.B4B),o.R7$(),o.SpI(" ",e.metric.name," ")}}function aCe(n,t){if(1&n&&(o.j41(0,"span",6),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.JRh(e.metric.name)}}let lCe=(()=>{class n{constructor(e){this.showAttributeTypeSelector$=e.select(xV)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar-primary-metric"]],inputs:{iconName:"iconName",metric:"metric",metricLink:"metricLink"},standalone:!0,features:[o.aNF],decls:11,vars:11,consts:[[1,"primary-metric-box"],[1,"primary-metric-row"],[1,"attribute-type-select",3,"metricName","metricType"],[1,"primary-metric-value"],[3,"metricName"],["target","_blank",1,"metric-name",3,"href"],[1,"metric-name"],[1,"fa","fa-external-link"]],template:function(i,r){if(1&i&&(o.j41(0,"div",0)(1,"div",1),o.nrm(2,"i"),o.DNE(3,oCe,1,2,"cc-attribute-type-selector",2),o.nI1(4,"async"),o.j41(5,"span",3),o.EFF(6),o.nI1(7,"number"),o.k0s()(),o.nrm(8,"cc-metric-delta-selected",4),o.DNE(9,sCe,3,2,"a",5)(10,aCe,2,1,"span",6),o.k0s()),2&i){let s;o.R7$(2),o.HbH(r.iconName),o.R7$(),o.vxM(o.bMT(4,6,r.showAttributeTypeSelector$)?3:-1),o.R7$(3),o.JRh(o.i5U(7,8,r.metric.value,"1.0-0")),o.R7$(2),o.Y8G("metricName",r.metric.name),o.R7$(),o.vxM((s=r.metricLink)?9:10,s)}},dependencies:[CV,_Y,zn,Wu],styles:[".primary-metric-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%}.primary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.metric-name[_ngcontent-%COMP%]{margin-top:5px;color:gray;word-break:break-word;vertical-align:middle}.primary-metric-value[_ngcontent-%COMP%]{margin-right:-5px}i.fa[_ngcontent-%COMP%]{font-size:12pt;min-width:17px;text-align:center}"]})}}return n})();function cCe(n,t){if(1&n&&o.nrm(0,"cc-attribute-type-selector",8),2&n){const e=o.XpG();o.Y8G("metricName",e.name)("metricType","edges")}}function dCe(n,t){if(1&n&&(o.j41(0,"a",10),o.EFF(1),o.nrm(2,"i",12),o.k0s()),2&n){const e=o.XpG();o.Y8G("href",t,o.B4B),o.R7$(),o.SpI(" ",e.name," (in/out) ")}}function uCe(n,t){if(1&n&&(o.j41(0,"span",11),o.EFF(1),o.k0s()),2&n){const e=o.XpG();o.R7$(),o.SpI("",e.name," (in/out)")}}function hCe(n,t){if(1&n&&(o.j41(0,"td",3),o.nI1(1,"attributeDescriptorTooltip"),o.j41(2,"div",5)(3,"div",6),o.nrm(4,"i",7),o.DNE(5,cCe,1,2,"cc-attribute-type-selector",8),o.nI1(6,"async"),o.j41(7,"span",9),o.EFF(8),o.nI1(9,"number"),o.j41(10,"span"),o.EFF(11,"/"),o.k0s(),o.EFF(12),o.nI1(13,"number"),o.k0s()(),o.DNE(14,dCe,3,2,"a",10)(15,uCe,2,1,"span",11),o.k0s()()),2&n){let e;const i=t,r=o.XpG(2),s=o.XpG();o.Y8G("title",o.i5U(1,5,r[i.name],i.name)),o.R7$(5),o.vxM(o.bMT(6,8,s.showAttributeTypeSelector$)?5:-1),o.R7$(3),o.SpI(" ",o.i5U(9,10,i.incoming,"1.0-0")," "),o.R7$(4),o.SpI(" ",o.i5U(13,13,i.outgoing,"1.0-0")," "),o.R7$(2),o.vxM((e=null==r[i.name]?null:r[i.name].link)?14:15,e)}}function fCe(n,t){1&n&&(o.j41(0,"td")(1,"span",11),o.EFF(2,"No edge metric available"),o.k0s()())}function pCe(n,t){if(1&n&&(o.j41(0,"table",1)(1,"th",2),o.EFF(2,"Primary Metrics"),o.k0s(),o.j41(3,"tr")(4,"td",3),o.nI1(5,"attributeDescriptorTooltip"),o.nrm(6,"cc-attribute-side-bar-primary-metric",4),o.k0s(),o.j41(7,"td",3),o.nI1(8,"attributeDescriptorTooltip"),o.nrm(9,"cc-attribute-side-bar-primary-metric",4),o.k0s()(),o.j41(10,"tr")(11,"td",3),o.nI1(12,"attributeDescriptorTooltip"),o.nrm(13,"cc-attribute-side-bar-primary-metric",4),o.k0s(),o.DNE(14,hCe,16,16,"td",3)(15,fCe,3,0,"td"),o.k0s()()),2&n){let e;const i=t,r=o.XpG();o.R7$(4),o.Y8G("title",o.i5U(5,13,r[i.area.name],i.area.name)),o.R7$(2),o.Y8G("iconName","fa fa-arrows-alt")("metric",i.area)("metricLink",null==r[i.area.name]?null:r[i.area.name].link),o.R7$(),o.Y8G("title",o.i5U(8,16,r[i.height.name],i.height.name)),o.R7$(2),o.Y8G("iconName","fa fa-arrows-v")("metric",i.height)("metricLink",null==r[i.height.name]?null:r[i.height.name].link),o.R7$(2),o.Y8G("title",o.i5U(12,19,r[i.color.name],i.color.name)),o.R7$(2),o.Y8G("iconName","fa fa-paint-brush")("metric",i.color)("metricLink",null==r[i.color.name]?null:r[i.color.name].link),o.R7$(),o.vxM((e=i.edge)?14:15,e)}}function ACe(n,t){if(1&n&&(o.j41(0,"div",0),o.DNE(1,pCe,16,22,"table",1),o.nI1(2,"async"),o.k0s()),2&n){let e;const i=o.XpG();o.R7$(),o.vxM((e=o.bMT(2,1,i.primaryMetrics$))?1:-1,e)}}let mCe=(()=>{class n{constructor(e){this.store=e,this.primaryMetrics$=this.store.select(nCe),this.showAttributeTypeSelector$=this.store.select(xV),this.attributeDescriptors$=this.store.select($R)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar-primary-metrics"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[1,"metric-box"],["aria-hidden","true",1,"primary-metrics"],["scope","col"],[3,"title"],[3,"iconName","metric","metricLink"],[1,"primary-metric-box"],[1,"primary-metric-row"],[1,"fa","fa-exchange"],[1,"attribute-type-select",3,"metricName","metricType"],[1,"text-content"],["target","_blank",1,"metric-name",3,"href"],[1,"metric-name"],[1,"fa","fa-external-link"]],template:function(i,r){if(1&i&&(o.DNE(0,ACe,3,3,"div",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.attributeDescriptors$))?0:-1,s)}},dependencies:[lCe,CV,zn,Wu,YR],styles:["[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%], [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%]{font-size:10px;min-width:10px;text-align:center}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:visited{text-decoration:none}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#00f;-webkit-text-decoration:solid;text-decoration:solid;text-decoration-line:underline}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:active, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:active{color:red}.metric-box[_ngcontent-%COMP%]{border-radius:5px;background-color:#f0f0f0;padding:5px}.metric-box.scrollable-content[_ngcontent-%COMP%]{max-height:100%;overflow:auto}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{text-align:left}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%]{table-layout:fixed;width:100%;border-collapse:collapse}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:not(:last-child) td[_ngcontent-%COMP%]{border-bottom:3px solid white}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:5px}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child{border-right:3px solid white}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] .primary-metric-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] .primary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12pt;min-width:17px;text-align:center}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding-left:5px}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child{padding-left:4px}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] .secondary-metric-box[_ngcontent-%COMP%]{border-radius:3px;padding:4px;vertical-align:middle;background:#d5d5d5}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] .secondary-metric-row[_ngcontent-%COMP%]{flex-wrap:nowrap}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] .metric-name[_ngcontent-%COMP%]{color:gray;word-break:break-word;vertical-align:middle;margin-top:5px}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] .delta-value-box[_ngcontent-%COMP%]{vertical-align:middle}.secondary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}"]})}}return n})();const gCe=sn(u0,n=>!!n?.deltas),_Ce=sn(qR,u0,(n,t)=>{if(!t)return[];const e=Object.values(n);return Object.keys(t.attributes).filter(r=>"unary"!==r&&!e.includes(r)).sort((r,s)=>r.localeCompare(s)).map(r=>({name:r,value:t.attributes[r]}))});function bCe(n,t){if(1&n&&o.nrm(0,"cc-attribute-type-selector",8),2&n){const e=o.XpG().$implicit;o.Y8G("metricName",e.name)("metricType","nodes")}}function vCe(n,t){if(1&n&&(o.j41(0,"a",12),o.EFF(1),o.nrm(2,"i",14),o.k0s()),2&n){const e=o.XpG().$implicit;o.Y8G("href",t,o.B4B),o.R7$(),o.SpI(" ",e.name," ")}}function yCe(n,t){if(1&n&&(o.j41(0,"span",13),o.EFF(1),o.k0s()),2&n){const e=o.XpG().$implicit;o.R7$(),o.JRh(e.name)}}function wCe(n,t){if(1&n&&(o.j41(0,"tr",5),o.nI1(1,"attributeDescriptorTooltip"),o.j41(2,"td",6)(3,"div",7),o.DNE(4,bCe,1,2,"cc-attribute-type-selector",8),o.nI1(5,"async"),o.j41(6,"span",9),o.EFF(7),o.nI1(8,"number"),o.k0s()()(),o.j41(9,"td",10),o.nI1(10,"async"),o.nrm(11,"cc-metric-delta-selected",11),o.k0s(),o.j41(12,"td"),o.DNE(13,vCe,3,2,"a",12)(14,yCe,2,1,"span",13),o.k0s()()),2&n){let e;const i=t.$implicit,r=o.XpG(),s=o.XpG();o.Y8G("title",o.i5U(1,6,r[i.name],i.name)),o.R7$(4),o.vxM(o.bMT(5,9,s.showAttributeTypeSelector$)?4:-1),o.R7$(3),o.JRh(o.i5U(8,11,i.value,"1.0-0")),o.R7$(2),o.Y8G("hidden",!o.bMT(10,14,s.showDeltaValue$)),o.R7$(2),o.Y8G("metricName",i.name),o.R7$(2),o.vxM((e=null==r[i.name]?null:r[i.name].link)?13:14,e)}}function xCe(n,t){if(1&n&&(o.j41(0,"div",2)(1,"table",3)(2,"tr")(3,"th",4),o.EFF(4,"Secondary Metrics"),o.k0s()(),o.Z7z(5,wCe,15,16,"tr",5,o.fX1),o.nI1(7,"async"),o.k0s()()),2&n){const e=o.XpG();o.R7$(5),o.Dyx(o.bMT(7,0,e.secondaryMetrics$))}}let CCe=(()=>{class n{constructor(e){this.store=e,this.secondaryMetrics$=this.store.select(_Ce),this.showAttributeTypeSelector$=this.store.select(xV),this.showDeltaValue$=this.store.select(gCe),this.attributeDescriptors$=this.store.select($R)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar-secondary-metrics"]],standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[[1,"secondary-metrics-wrapper"],[1,"metrics-wrapper"],[1,"metric-box","scrollable-content"],["aria-hidden","true",1,"secondary-metrics"],["scope","col","colspan","2"],[3,"title"],[1,"secondary-metric-box"],[1,"secondary-metric-row"],[1,"attribute-type-select",3,"metricName","metricType"],[1,"metric-value"],[1,"delta-value-box",3,"hidden"],[3,"metricName"],["target","_blank",1,"metric-name",3,"href"],[1,"metric-name"],[1,"fa","fa-external-link"]],template:function(i,r){if(1&i&&(o.j41(0,"div",0)(1,"div",1),o.DNE(2,xCe,8,2,"div",2),o.nI1(3,"async"),o.k0s()()),2&i){let s;o.R7$(2),o.vxM((s=o.bMT(3,1,r.attributeDescriptors$))?2:-1,s)}},dependencies:[CV,_Y,zn,Wu,YR],styles:["[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%], [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%]{font-size:10px;min-width:10px;text-align:center}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:visited{text-decoration:none}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#00f;-webkit-text-decoration:solid;text-decoration:solid;text-decoration-line:underline}[_nghost-%COMP%] .metric-box[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:active, [_nghost-%COMP%] .metrics-wrapper[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:active{color:red}.metric-box[_ngcontent-%COMP%]{border-radius:5px;background-color:#f0f0f0;padding:5px}.metric-box.scrollable-content[_ngcontent-%COMP%]{max-height:100%;overflow:auto}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{text-align:left}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%]{table-layout:fixed;width:100%;border-collapse:collapse}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:not(:last-child) td[_ngcontent-%COMP%]{border-bottom:3px solid white}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:5px}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child{border-right:3px solid white}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] .primary-metric-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] .primary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.metric-box[_ngcontent-%COMP%] table.primary-metrics[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%]{font-size:12pt;min-width:17px;text-align:center}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding-left:5px}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child{padding-left:4px}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] .secondary-metric-box[_ngcontent-%COMP%]{border-radius:3px;padding:4px;vertical-align:middle;background:#d5d5d5}.metric-box[_ngcontent-%COMP%] table.secondary-metrics[_ngcontent-%COMP%] .secondary-metric-row[_ngcontent-%COMP%]{flex-wrap:nowrap}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] .metric-name[_ngcontent-%COMP%]{color:gray;word-break:break-word;vertical-align:middle;margin-top:5px}.metric-box[_ngcontent-%COMP%] table[_ngcontent-%COMP%] .delta-value-box[_ngcontent-%COMP%]{vertical-align:middle}.secondary-metric-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:5px}",'.secondary-metrics-wrapper[_ngcontent-%COMP%]{position:relative}.secondary-metrics-wrapper[_ngcontent-%COMP%]:after{content:"";clear:both;display:block}.secondary-metrics-wrapper[_ngcontent-%COMP%] .metrics-wrapper[_ngcontent-%COMP%]{position:absolute;width:100%;height:100%;padding-top:12px}']})}}return n})(),MCe=(()=>{class n{constructor(e,i){this.isAttributeSideBarVisibleService=e,this.store=i,this.selectedNode$=this.store.select(u0),this.fileName$=this.store.select(Fd).pipe((0,qn.T)(r=>r.unifiedFileMeta?.fileName??""))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(OP),o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-attribute-side-bar"]],standalone:!0,features:[o.aNF],decls:6,vars:8,consts:[[1,"side-bar-container","cc-shadow"],[3,"node","fileName"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nrm(1,"cc-attribute-side-bar-header-section",1),o.nI1(2,"async"),o.nI1(3,"async"),o.nrm(4,"cc-attribute-side-bar-primary-metrics")(5,"cc-attribute-side-bar-secondary-metrics"),o.k0s()),2&i&&(o.AVh("expanded",r.isAttributeSideBarVisibleService.isOpen),o.R7$(),o.Y8G("node",o.bMT(2,4,r.selectedNode$))("fileName",o.bMT(3,6,r.fileName$)))},dependencies:[tCe,mCe,CCe,zn],styles:['[_nghost-%COMP%] .side-bar-container[_ngcontent-%COMP%]{transition:right .3s ease;width:350px;height:calc(100% - 98px);padding:8px;font-size:11pt;position:absolute;right:-355px;background:#fff}[_nghost-%COMP%] .side-bar-container.expanded[_ngcontent-%COMP%]{display:block;right:0}[_nghost-%COMP%] .side-bar-container.cc-shadow[_ngcontent-%COMP%]{box-shadow:0 1px 5px #0003!important}[_nghost-%COMP%] .side-bar-container[_ngcontent-%COMP%]:before{content:"";height:100%;float:left}']})}}return n})(),ECe=(()=>{class n{constructor(e,i,r,s,l){this.isAttributeSideBarVisibleService=e,this.store=i,this.threeViewerService=r,this.codeMapMouseEventService=s,this.elementReference=l,this.isLoadingFile$=this.store.select(k7),this.restartOnSharpnessModeChangesSubscription=this.store.select(XW).pipe(C_(1),ro(()=>{this.threeViewerService.restart(this.elementReference.nativeElement.querySelector("#codeMap")),this.codeMapMouseEventService.start()})).subscribe()}ngAfterViewInit(){this.threeViewerService.init(this.elementReference.nativeElement.querySelector("#codeMap")),this.codeMapMouseEventService.start()}ngOnDestroy(){this.restartOnSharpnessModeChangesSubscription.unsubscribe()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(OP),o.rXU(Yt),o.rXU(cX),o.rXU(F2),o.rXU(o.aKT))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-code-map"]],standalone:!0,features:[o.aNF],decls:4,vars:6,consts:[["id","codeMap"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nI1(1,"async"),o.nrm(2,"cc-view-cube")(3,"cc-attribute-side-bar"),o.k0s()),2&i&&(o.AVh("hidden",o.bMT(1,4,r.isLoadingFile$)),o.R7$(2),o.AVh("sideBarVisible",r.isAttributeSideBarVisibleService.isOpen))},dependencies:[qxe,MCe,zn],styles:["[_nghost-%COMP%] .hidden[_ngcontent-%COMP%]{display:none}[_nghost-%COMP%] #codeMap[_ngcontent-%COMP%]{position:fixed;z-index:0;top:98px;left:0;width:100%;height:100%}"]})}}return n})();function SCe(n,t){if(1&n&&(o.j41(0,"a",2)(1,"span",3),o.EFF(2),o.k0s(),o.EFF(3),o.nrm(4,"i",4),o.k0s()),2&n){const e=o.XpG(),i=o.XpG(2);o.Y8G("href",t,o.B4B),o.R7$(2),o.JRh(e),o.R7$(),o.SpI(" (",i.metricName,") ")}}function TCe(n,t){if(1&n&&(o.j41(0,"span",3),o.EFF(1),o.k0s(),o.EFF(2)),2&n){const e=o.XpG(),i=o.XpG(2);o.R7$(),o.JRh(e),o.R7$(),o.SpI(" (",i.metricName,") ")}}function ICe(n,t){if(1&n&&(o.qex(0,0),o.j41(1,"div",1),o.nI1(2,"attributeDescriptorTooltip"),o.EFF(3),o.DNE(4,SCe,5,3,"a",2)(5,TCe,3,2),o.k0s(),o.bVm()),2&n){let e;const i=o.XpG(),r=o.XpG();o.R7$(),o.Y8G("title",o.i5U(2,3,i[r.metricName],r.metricName)),o.R7$(2),o.SpI(" ",r.metricSpecification," metric: "),o.R7$(),o.vxM((e=i[r.metricName].link)?4:5,e)}}function FCe(n,t){if(1&n&&(o.j41(0,"span",3),o.EFF(1),o.k0s(),o.EFF(2)),2&n){const e=o.XpG(3);o.R7$(),o.JRh(t),o.R7$(),o.SpI(" (",e.metricName,") ")}}function DCe(n,t){if(1&n&&(o.j41(0,"span",3),o.EFF(1),o.k0s()),2&n){const e=o.XpG(3);o.R7$(),o.SpI(" ",e.metricName," ")}}function BCe(n,t){if(1&n&&(o.j41(0,"div"),o.EFF(1),o.DNE(2,FCe,3,2)(3,DCe,2,1,"span",3),o.k0s()),2&n){let e;const i=o.XpG(2);o.R7$(),o.SpI(" ",i.metricSpecification," metric: "),o.R7$(),o.vxM((e=i.fallbackTitles.get(i.metricName))?2:3,e)}}function kCe(n,t){if(1&n&&o.DNE(0,ICe,6,6,"ng-container",0)(1,BCe,4,2,"div"),2&n){let e;const i=t,r=o.XpG();o.vxM((e=null==i[r.metricName]?null:i[r.metricName].title)?0:1,e)}}let RCe=(()=>{class n{constructor(e){this.store=e,this.attributeDescriptors$=this.store.select($R),this.fallbackTitles=qw}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-legend-block"]],inputs:{metricName:"metricName",metricSpecification:"metricSpecification"},standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[1,"legend-block"],[3,"title"],["target","_blank",3,"href"],[1,"bold"],[1,"fa","fa-external-link"]],template:function(i,r){if(1&i&&(o.DNE(0,kCe,2,1),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.attributeDescriptors$))?0:-1,s)}},dependencies:[zn,YR],styles:["[_nghost-%COMP%] a[_ngcontent-%COMP%]:link, [_nghost-%COMP%] a[_ngcontent-%COMP%]:visited{text-decoration:none;color:#000}[_nghost-%COMP%] a[_ngcontent-%COMP%]:hover{color:#00f;-webkit-text-decoration:solid;text-decoration:solid;text-decoration-line:underline}[_nghost-%COMP%] a[_ngcontent-%COMP%]:active{color:red}[_nghost-%COMP%] i.fa.fa-external-link[_ngcontent-%COMP%]{font-size:10px;min-width:10px;text-align:center}[_nghost-%COMP%] span[_ngcontent-%COMP%]{display:inline-block}[_nghost-%COMP%] span.bold[_ngcontent-%COMP%]{font-weight:600}"]})}}return n})();const bY=sn(kS,n=>n.markedPackages),PCe=sn(bY,n=>n.reduce((t,{color:e,path:i})=>(Object.prototype.hasOwnProperty.call(t,e)||(t[e]=[]),t[e].push(i),t),{}));function OCe(n,t){if(1&n){const e=o.RV6();o.j41(0,"cc-labelled-color-picker",1),o.bIt("onColorChange",function(r){const s=o.eBV(e).$implicit,l=o.XpG(2);return o.Njj(l.handleColorChange(r,s.value))}),o.k0s()}if(2&n){const e=t.$implicit;o.Y8G("hexColor",e.key)("labels",e.value)}}function NCe(n,t){if(1&n&&(o.nrm(0,"hr"),o.Z7z(1,OCe,1,2,"cc-labelled-color-picker",0,o.BUC().trackMarkedPackage,!0),o.nI1(3,"async"),o.nI1(4,"keyvalue")),2&n){const e=o.XpG();o.R7$(),o.Dyx(o.i5U(4,2,o.bMT(3,0,e.markedPackagesMap$),e.sortMarkedPackagesMap))}}let LCe=(()=>{class n{constructor(e){this.store=e,this.markedPackagesMap$=e.select(PCe),this.hasMarkedPackages$=this.markedPackagesMap$.pipe((0,qn.T)(i=>Object.keys(i).length>0))}handleColorChange(e,i){this.store.dispatch(b2({packages:i.map(r=>({color:e,path:r}))}))}trackMarkedPackage(e,{value:i}){return i.join(",")}sortMarkedPackagesMap(e,i){return e.value[0].localeCompare(i.value[0])}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-legend-marked-packages"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[[3,"hexColor","labels"],[3,"onColorChange","hexColor","labels"]],template:function(i,r){1&i&&(o.DNE(0,NCe,5,5),o.nI1(1,"async")),2&i&&o.vxM(o.bMT(1,1,r.hasMarkedPackages$)?0:-1)},dependencies:[t6,zn,df],styles:["[_nghost-%COMP%] cc-labelled-color-picker[_ngcontent-%COMP%]{display:block}"]})}}return n})();function UCe(n,t){1&n&&o.nrm(0,"cc-legend-block",5),2&n&&o.Y8G("metricName",t)}function VCe(n,t){if(1&n&&(o.j41(0,"div"),o.nrm(1,"cc-legend-block",3),o.nI1(2,"async"),o.nrm(3,"cc-legend-block",4),o.nI1(4,"async"),o.DNE(5,UCe,1,1,"cc-legend-block",5),o.nI1(6,"async"),o.nrm(7,"hr")(8,"cc-legend-block",6),o.nI1(9,"async"),o.nrm(10,"cc-color-picker-for-map-color",1)(11,"cc-color-picker-for-map-color",1)(12,"cc-color-picker-for-map-color",1),o.k0s()),2&n){let e;const i=o.XpG();o.R7$(),o.Y8G("metricName",o.bMT(2,7,i.areaMetric$)),o.R7$(2),o.Y8G("metricName",o.bMT(4,9,i.heightMetric$)),o.R7$(2),o.vxM((e=o.bMT(6,11,i.edgeMetric$))?5:-1,e),o.R7$(3),o.Y8G("metricName",o.bMT(9,13,i.colorMetric$)),o.R7$(2),o.Y8G("mapColorFor","positive"),o.R7$(),o.Y8G("mapColorFor","neutral"),o.R7$(),o.Y8G("mapColorFor","negative")}}function HCe(n,t){1&n&&(o.j41(0,"div"),o.nrm(1,"cc-color-picker-for-map-color",1)(2,"cc-color-picker-for-map-color",1),o.k0s()),2&n&&(o.R7$(),o.Y8G("mapColorFor","positiveDelta"),o.R7$(),o.Y8G("mapColorFor","negativeDelta"))}function QCe(n,t){1&n&&o.nrm(0,"hr")(1,"cc-color-picker-for-map-color",1)(2,"cc-color-picker-for-map-color",1),2&n&&(o.R7$(),o.Y8G("mapColorFor","outgoingEdge"),o.R7$(),o.Y8G("mapColorFor","incomingEdge"))}let zCe=(()=>{class n{constructor(e,i,r){this.store=e,this.isAttributeSideBarVisibleService=i,this.viewReference=r,this.isLegendVisible=!1,this.isDeltaState$=this.store.select(Kp),this.heightMetric$=this.store.select(C2),this.areaMetric$=this.store.select(hv),this.colorMetric$=this.store.select(zg),this.edgeMetric$=this.store.select(Yp)}ngOnInit(){this.mouseDownListener=e=>this.collapseOnOutsideClick(e),document.addEventListener("mousedown",this.mouseDownListener)}ngOnDestroy(){this.mouseDownListener&&document.removeEventListener("mousedown",this.mouseDownListener)}toggleIsLegendVisible(){this.isLegendVisible=!this.isLegendVisible}collapseOnOutsideClick(e){const i=e.target;if(this.isLegendVisible){const r=this.viewReference.element.nativeElement.contains(i),s=document.querySelector(".cdk-overlay-container"),l=!!s&&s.contains(i);!r&&!l&&(this.isLegendVisible=!1)}}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(OP),o.rXU(o.c1b))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-legend-panel"]],standalone:!0,features:[o.aNF],decls:11,vars:14,consts:[["id","legend-panel",1,"block-wrapper"],[3,"mapColorFor"],["mat-button","","id","legend-panel-button",1,"panel-button",3,"click","title"],["metricSpecification","Area",3,"metricName"],["metricSpecification","Height",3,"metricName"],["metricSpecification","Edge",3,"metricName"],["metricSpecification","Color",3,"metricName"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.DNE(1,VCe,13,15,"div"),o.nI1(2,"async"),o.DNE(3,HCe,3,2,"div"),o.nrm(4,"hr")(5,"cc-color-picker-for-map-color",1),o.DNE(6,QCe,3,2),o.nI1(7,"async"),o.nrm(8,"cc-legend-marked-packages"),o.k0s(),o.j41(9,"button",2),o.bIt("click",function(){return r.toggleIsLegendVisible()}),o.EFF(10," LEGEND\n"),o.k0s()),2&i&&(o.AVh("visible",r.isLegendVisible)("isAttributeSideBarVisible",r.isAttributeSideBarVisibleService.isOpen),o.R7$(),o.vxM(o.bMT(2,10,r.isDeltaState$)?3:1),o.R7$(4),o.Y8G("mapColorFor","selected"),o.R7$(),o.vxM(o.bMT(7,12,r.edgeMetric$)?6:-1),o.R7$(3),o.AVh("isAttributeSideBarVisible",r.isAttributeSideBarVisibleService.isOpen),o.FS9("title",r.isLegendVisible?"Hide panel":"Show panel"))},dependencies:[RCe,yV,LCe,ns,zn],styles:["[_nghost-%COMP%] .rotated-button[_ngcontent-%COMP%], [_nghost-%COMP%] .panel-button[_ngcontent-%COMP%]{position:fixed;transform:rotate(90deg);border-radius:0 0 5px 5px;height:36px;right:-35px;color:#fff;-webkit-user-select:none;user-select:none;background-color:#1b9cfc}[_nghost-%COMP%] .rotated-button[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .panel-button[_ngcontent-%COMP%]:hover{background-color:#0374c9}[_nghost-%COMP%] .rotated-button.isAttributeSideBarVisible[_ngcontent-%COMP%], [_nghost-%COMP%] .isAttributeSideBarVisible.panel-button[_ngcontent-%COMP%]{right:316px}[_nghost-%COMP%] .panel-button[_ngcontent-%COMP%]{margin:6px 8px;bottom:55px;width:88px;font-size:10pt;transition:right .3s ease}[_nghost-%COMP%] .block-wrapper[_ngcontent-%COMP%]{background-color:#fff;border:1px solid #cdcdcd;position:fixed;bottom:35px;padding:10px;right:40px;visibility:hidden;border-radius:5px;min-width:200px;max-width:30%;transition:right .3s ease}[_nghost-%COMP%] .block-wrapper.isAttributeSideBarVisible[_ngcontent-%COMP%]{right:390px}[_nghost-%COMP%] .block-wrapper.visible[_ngcontent-%COMP%]{visibility:visible}[_nghost-%COMP%] .block-wrapper[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{border-right-style:none;border-left-style:none;border-bottom-style:none;color:#000}"]})}}return n})(),GCe=(()=>{class n{constructor(e){this.isLoadingFile$=e.select(k7)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-loading-file-progress-spinner"]],standalone:!0,features:[o.aNF],decls:3,vars:4,consts:[["id","loading-gif-file"],["mode","indeterminate","diameter","96"]],template:function(i,r){1&i&&(o.j41(0,"div",0),o.nI1(1,"async"),o.nrm(2,"mat-progress-spinner",1),o.k0s()),2&i&&o.xc7("visibility",o.bMT(1,2,r.isLoadingFile$)?"visible":"hidden")},dependencies:[$W,zn],styles:["#loading-gif-file[_ngcontent-%COMP%]{position:fixed;left:0;top:0;width:100%;height:100%;z-index:40;background-color:#fffc;display:inline-block;text-align:center}#loading-gif-file[_ngcontent-%COMP%] mat-progress-spinner.mat-mdc-progress-spinner[_ngcontent-%COMP%]{display:inline-block;margin:22% auto 0}"]})}}return n})(),jCe=(()=>{class n{constructor(){this.version=s1.rE}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-logo"]],standalone:!0,features:[o.aNF],decls:9,vars:1,consts:[[1,"logo"],["href","https://github.com/MaibornWolff/codecharta","target","_blank","rel","noopener noreferrer"],["src","codeCharta/assets/codecharta_logo.svg","alt","CodeCharta","rel","noopener noreferrer"],["id","logo-version"],["target","_blank","href","https://www.maibornwolff.de/en/"]],template:function(i,r){1&i&&(o.j41(0,"div",0)(1,"a",1),o.nrm(2,"img",2),o.k0s(),o.j41(3,"p",3),o.EFF(4),o.k0s(),o.j41(5,"p"),o.EFF(6,"Made with \u2764 by "),o.j41(7,"a",4),o.EFF(8,"MaibornWolff"),o.k0s()()()),2&i&&(o.R7$(4),o.SpI("Version ",r.version,""))},styles:[".logo[_ngcontent-%COMP%]{position:absolute;left:2em;bottom:1em;z-index:1;flex-direction:column;display:flex;align-items:flex-start}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{object-fit:contain;width:5em;height:auto}.logo[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:#5a585a;font-weight:700;font-size:10px;text-align:center;margin:0;z-index:-1}"]})}}return n})(),$Ce=(()=>{class n{constructor(e,i){this.store=e,this.loadInitialFileService=i,this.isInitialized=!1}ngOnInit(){var e=this;return Mn(function*(){e.store.dispatch(Ic({value:!0})),yield e.loadInitialFileService.loadFilesOrSampleFiles(),e.isInitialized=!0})()}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt),o.rXU(O6))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-code-charta"]],standalone:!0,features:[o.aNF],decls:8,vars:2,template:function(i,r){1&i&&(o.j41(0,"div"),o.nrm(1,"cc-tool-bar")(2,"cc-file-extension-bar")(3,"cc-ribbon-bar")(4,"cc-code-map")(5,"cc-legend-panel")(6,"cc-loading-file-progress-spinner")(7,"cc-logo"),o.k0s()),2&i&&o.xc7("visibility",r.isInitialized?"visible":"hidden")},dependencies:[dAe,sme,Gxe,ECe,zCe,GCe,jCe],encapsulation:2})}}return n})(),qCe=(()=>{class n{constructor(e){this.store=e,this.unfocusNodes$=os(()=>this.store.select(uc).pipe((0,qn.T)(()=>_2())))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();let A0={async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,hooks:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1};function vY(n){A0=n}const yY=/[&<>"']/,XCe=new RegExp(yY.source,"g"),wY=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,KCe=new RegExp(wY.source,"g"),YCe={"&":"&","<":"<",">":">",'"':""","'":"'"},xY=n=>YCe[n];function nl(n,t){if(t){if(yY.test(n))return n.replace(XCe,xY)}else if(wY.test(n))return n.replace(KCe,xY);return n}const ZCe=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function CY(n){return n.replace(ZCe,(t,e)=>"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):"")}const JCe=/(^|[^\[])\^/g;function lo(n,t){n="string"==typeof n?n:n.source,t=t||"";const e={replace:(i,r)=>(r=(r=r.source||r).replace(JCe,"$1"),n=n.replace(i,r),e),getRegex:()=>new RegExp(n,t)};return e}const eMe=/[^\w:]/g,tMe=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function MY(n,t,e){if(n){let i;try{i=decodeURIComponent(CY(e)).replace(eMe,"").toLowerCase()}catch{return null}if(0===i.indexOf("javascript:")||0===i.indexOf("vbscript:")||0===i.indexOf("data:"))return null}t&&!tMe.test(e)&&(e=function oMe(n,t){NP[" "+n]||(NP[" "+n]=nMe.test(n)?n+"/":UP(n,"/",!0));const e=-1===(n=NP[" "+n]).indexOf(":");return"//"===t.substring(0,2)?e?t:n.replace(iMe,"$1")+t:"/"===t.charAt(0)?e?t:n.replace(rMe,"$1")+t:n+t}(t,e));try{e=encodeURI(e).replace(/%25/g,"%")}catch{return null}return e}const NP={},nMe=/^[^:]+:\/*[^/]*$/,iMe=/^([^:]+:)[\s\S]*$/,rMe=/^([^:]+:\/*[^/]*)[\s\S]*$/,LP={exec:function(){}};function EY(n,t){const i=n.replace(/\|/g,(s,l,u)=>{let f=!1,p=l;for(;--p>=0&&"\\"===u[p];)f=!f;return f?"|":" |"}).split(/ \|/);let r=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),i.length>t)i.splice(t);else for(;i.length0)return{type:"space",raw:e[0]}}code(t){const e=this.rules.block.code.exec(t);if(e){const i=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?i:UP(i,"\n")}}}fences(t){const e=this.rules.block.fences.exec(t);if(e){const i=e[0],r=function lMe(n,t){const e=n.match(/^(\s+)(?:```)/);if(null===e)return t;const i=e[1];return t.split("\n").map(r=>{const s=r.match(/^\s+/);if(null===s)return r;const[l]=s;return l.length>=i.length?r.slice(i.length):r}).join("\n")}(i,e[3]||"");return{type:"code",raw:i,lang:e[2]?e[2].trim().replace(this.rules.inline._escapes,"$1"):e[2],text:r}}}heading(t){const e=this.rules.block.heading.exec(t);if(e){let i=e[2].trim();if(/#$/.test(i)){const r=UP(i,"#");(this.options.pedantic||!r||/ $/.test(r))&&(i=r.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:i,tokens:this.lexer.inline(i)}}}hr(t){const e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:e[0]}}blockquote(t){const e=this.rules.block.blockquote.exec(t);if(e){const i=e[0].replace(/^ *>[ \t]?/gm,""),r=this.lexer.state.top;this.lexer.state.top=!0;const s=this.lexer.blockTokens(i);return this.lexer.state.top=r,{type:"blockquote",raw:e[0],tokens:s,text:i}}}list(t){let e=this.rules.block.list.exec(t);if(e){let i,r,s,l,u,f,p,m,_,b,w,F,D=e[1].trim();const T=D.length>1,I={type:"list",raw:"",ordered:T,start:T?+D.slice(0,-1):"",loose:!1,items:[]};D=T?`\\d{1,9}\\${D.slice(-1)}`:`\\${D}`,this.options.pedantic&&(D=T?D:"[*+-]");const O=new RegExp(`^( {0,3}${D})((?:[\t ][^\\n]*)?(?:\\n|$))`);for(;t&&(F=!1,(e=O.exec(t))&&!this.rules.block.hr.test(t));){if(i=e[0],t=t.substring(i.length),m=e[2].split("\n",1)[0].replace(/^\t+/,P=>" ".repeat(3*P.length)),_=t.split("\n",1)[0],this.options.pedantic?(l=2,w=m.trimLeft()):(l=e[2].search(/[^ ]/),l=l>4?1:l,w=m.slice(l),l+=e[1].length),f=!1,!m&&/^ *$/.test(_)&&(i+=_+"\n",t=t.substring(_.length+1),F=!0),!F){const P=new RegExp(`^ {0,${Math.min(3,l-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),ee=new RegExp(`^ {0,${Math.min(3,l-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),J=new RegExp(`^ {0,${Math.min(3,l-1)}}(?:\`\`\`|~~~)`),te=new RegExp(`^ {0,${Math.min(3,l-1)}}#`);for(;t&&(b=t.split("\n",1)[0],_=b,this.options.pedantic&&(_=_.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),!(J.test(_)||te.test(_)||P.test(_)||ee.test(t)));){if(_.search(/[^ ]/)>=l||!_.trim())w+="\n"+_.slice(l);else{if(f||m.search(/[^ ]/)>=4||J.test(m)||te.test(m)||ee.test(m))break;w+="\n"+_}!f&&!_.trim()&&(f=!0),i+=b+"\n",t=t.substring(b.length+1),m=_.slice(l)}}I.loose||(p?I.loose=!0:/\n *\n *$/.test(i)&&(p=!0)),this.options.gfm&&(r=/^\[[ xX]\] /.exec(w),r&&(s="[ ] "!==r[0],w=w.replace(/^\[[ xX]\] +/,""))),I.items.push({type:"list_item",raw:i,task:!!r,checked:s,loose:!1,text:w}),I.raw+=i}I.items[I.items.length-1].raw=i.trimRight(),I.items[I.items.length-1].text=w.trimRight(),I.raw=I.raw.trimRight();const R=I.items.length;for(u=0;u"space"===J.type),ee=P.length>0&&P.some(J=>/\n.*\n/.test(J.raw));I.loose=ee}if(I.loose)for(u=0;u$/,"$1").replace(this.rules.inline._escapes,"$1"):"",s=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline._escapes,"$1"):e[3];return{type:"def",tag:i,raw:e[0],href:r,title:s}}}table(t){const e=this.rules.block.table.exec(t);if(e){const i={type:"table",header:EY(e[1]).map(r=>({text:r})),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:e[3]&&e[3].trim()?e[3].replace(/\n[ \t]*$/,"").split("\n"):[]};if(i.header.length===i.align.length){i.raw=e[0];let s,l,u,f,r=i.align.length;for(s=0;s({text:p}));for(r=i.header.length,l=0;l/i.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(e[0]):nl(e[0]):e[0]}}link(t){const e=this.rules.inline.link.exec(t);if(e){const i=e[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;const l=UP(i.slice(0,-1),"\\");if((i.length-l.length)%2==0)return}else{const l=function sMe(n,t){if(-1===n.indexOf(t[1]))return-1;const e=n.length;let i=0,r=0;for(;r-1){const f=(0===e[0].indexOf("!")?5:4)+e[1].length+l;e[2]=e[2].substring(0,l),e[0]=e[0].substring(0,f).trim(),e[3]=""}}let r=e[2],s="";if(this.options.pedantic){const l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);l&&(r=l[1],s=l[3])}else s=e[3]?e[3].slice(1,-1):"";return r=r.trim(),/^$/.test(i)?r.slice(1):r.slice(1,-1)),SY(e,{href:r&&r.replace(this.rules.inline._escapes,"$1"),title:s&&s.replace(this.rules.inline._escapes,"$1")},e[0],this.lexer)}}reflink(t,e){let i;if((i=this.rules.inline.reflink.exec(t))||(i=this.rules.inline.nolink.exec(t))){let r=(i[2]||i[1]).replace(/\s+/g," ");if(r=e[r.toLowerCase()],!r){const s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return SY(i,r,i[0],this.lexer)}}emStrong(t,e,i=""){let r=this.rules.inline.emStrong.lDelim.exec(t);if(!(!r||r[3]&&i.match(/[\p{L}\p{N}]/u))&&(!r[1]&&!r[2]||!i||this.rules.inline.punctuation.exec(i))){const l=r[0].length-1;let u,f,p=l,m=0;const _="*"===r[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(_.lastIndex=0,e=e.slice(-1*t.length+l);null!=(r=_.exec(e));){if(u=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!u)continue;if(f=u.length,r[3]||r[4]){p+=f;continue}if((r[5]||r[6])&&l%3&&!((l+f)%3)){m+=f;continue}if(p-=f,p>0)continue;f=Math.min(f,f+p+m);const b=t.slice(0,l+r.index+f+1);if(Math.min(l,f)%2){const F=b.slice(1,-1);return{type:"em",raw:b,text:F,tokens:this.lexer.inlineTokens(F)}}const w=b.slice(2,-2);return{type:"strong",raw:b,text:w,tokens:this.lexer.inlineTokens(w)}}}}codespan(t){const e=this.rules.inline.code.exec(t);if(e){let i=e[2].replace(/\n/g," ");const r=/[^ ]/.test(i),s=/^ /.test(i)&&/ $/.test(i);return r&&s&&(i=i.substring(1,i.length-1)),i=nl(i,!0),{type:"codespan",raw:e[0],text:i}}}br(t){const e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}del(t){const e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(t,e){const i=this.rules.inline.autolink.exec(t);if(i){let r,s;return"@"===i[2]?(r=nl(this.options.mangle?e(i[1]):i[1]),s="mailto:"+r):(r=nl(i[1]),s=r),{type:"link",raw:i[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}url(t,e){let i;if(i=this.rules.inline.url.exec(t)){let r,s;if("@"===i[2])r=nl(this.options.mangle?e(i[0]):i[0]),s="mailto:"+r;else{let l;do{l=i[0],i[0]=this.rules.inline._backpedal.exec(i[0])[0]}while(l!==i[0]);r=nl(i[0]),s="www."===i[1]?"http://"+i[0]:i[0]}return{type:"link",raw:i[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(t,e){const i=this.rules.inline.text.exec(t);if(i){let r;return r=this.lexer.state.inRawBlock?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):nl(i[0]):i[0]:nl(this.options.smartypants?e(i[0]):i[0]),{type:"text",raw:i[0],text:r}}}}const ki={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:LP,lheading:/^((?:(?!^bull ).|\n(?!\n|bull ))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\.|[^\[\]\\])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};ki.def=lo(ki.def).replace("label",ki._label).replace("title",ki._title).getRegex(),ki.bullet=/(?:[*+-]|\d{1,9}[.)])/,ki.listItemStart=lo(/^( *)(bull) */).replace("bull",ki.bullet).getRegex(),ki.list=lo(ki.list).replace(/bull/g,ki.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+ki.def.source+")").getRegex(),ki._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",ki._comment=/|$)/,ki.html=lo(ki.html,"i").replace("comment",ki._comment).replace("tag",ki._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),ki.lheading=lo(ki.lheading).replace(/bull/g,ki.bullet).getRegex(),ki.paragraph=lo(ki._paragraph).replace("hr",ki.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ki._tag).getRegex(),ki.blockquote=lo(ki.blockquote).replace("paragraph",ki.paragraph).getRegex(),ki.normal={...ki},ki.gfm={...ki.normal,table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"},ki.gfm.table=lo(ki.gfm.table).replace("hr",ki.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ki._tag).getRegex(),ki.gfm.paragraph=lo(ki._paragraph).replace("hr",ki.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",ki.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ki._tag).getRegex(),ki.pedantic={...ki.normal,html:lo("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",ki._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:LP,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:lo(ki.normal._paragraph).replace("hr",ki.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",ki.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()};const Wn={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:LP,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,rDelimAst:/^[^_*]*?__[^_*]*?\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\*)[punct](\*+)(?=[\s]|$)|[^punct\s](\*+)(?!\*)(?=[punct\s]|$)|(?!\*)[punct\s](\*+)(?=[^punct\s])|[\s](\*+)(?!\*)(?=[punct])|(?!\*)[punct](\*+)(?!\*)(?=[punct])|[^punct\s](\*+)(?=[^punct\s])/,rDelimUnd:/^[^_*]*?\*\*[^_*]*?_[^_*]*?(?=\*\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\s]|$)|[^punct\s](_+)(?!_)(?=[punct\s]|$)|(?!_)[punct\s](_+)(?=[^punct\s])|[\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:LP,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\.5&&(i="x"+i.toString(16)),t+="&#"+i+";";return t}Wn._punctuation="\\p{P}$+<=>`^|~",Wn.punctuation=lo(Wn.punctuation,"u").replace(/punctuation/g,Wn._punctuation).getRegex(),Wn.blockSkip=/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,Wn.anyPunctuation=/\\[punct]/g,Wn._escapes=/\\([punct])/g,Wn._comment=lo(ki._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),Wn.emStrong.lDelim=lo(Wn.emStrong.lDelim,"u").replace(/punct/g,Wn._punctuation).getRegex(),Wn.emStrong.rDelimAst=lo(Wn.emStrong.rDelimAst,"gu").replace(/punct/g,Wn._punctuation).getRegex(),Wn.emStrong.rDelimUnd=lo(Wn.emStrong.rDelimUnd,"gu").replace(/punct/g,Wn._punctuation).getRegex(),Wn.anyPunctuation=lo(Wn.anyPunctuation,"gu").replace(/punct/g,Wn._punctuation).getRegex(),Wn._escapes=lo(Wn._escapes,"gu").replace(/punct/g,Wn._punctuation).getRegex(),Wn._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,Wn._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,Wn.autolink=lo(Wn.autolink).replace("scheme",Wn._scheme).replace("email",Wn._email).getRegex(),Wn._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,Wn.tag=lo(Wn.tag).replace("comment",Wn._comment).replace("attribute",Wn._attribute).getRegex(),Wn._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Wn._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,Wn._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,Wn.link=lo(Wn.link).replace("label",Wn._label).replace("href",Wn._href).replace("title",Wn._title).getRegex(),Wn.reflink=lo(Wn.reflink).replace("label",Wn._label).replace("ref",ki._label).getRegex(),Wn.nolink=lo(Wn.nolink).replace("ref",ki._label).getRegex(),Wn.reflinkSearch=lo(Wn.reflinkSearch,"g").replace("reflink",Wn.reflink).replace("nolink",Wn.nolink).getRegex(),Wn.normal={...Wn},Wn.pedantic={...Wn.normal,strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:lo(/^!?\[(label)\]\((.*?)\)/).replace("label",Wn._label).getRegex(),reflink:lo(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Wn._label).getRegex()},Wn.gfm={...Wn.normal,escape:lo(Wn.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\f+" ".repeat(p.length));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(u=>!!(i=u.call({lexer:this},t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)))){if(i=this.tokenizer.space(t)){t=t.substring(i.raw.length),1===i.raw.length&&e.length>0?e[e.length-1].raw+="\n":e.push(i);continue}if(i=this.tokenizer.code(t)){t=t.substring(i.raw.length),r=e[e.length-1],!r||"paragraph"!==r.type&&"text"!==r.type?e.push(i):(r.raw+="\n"+i.raw,r.text+="\n"+i.text,this.inlineQueue[this.inlineQueue.length-1].src=r.text);continue}if(i=this.tokenizer.fences(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.heading(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.hr(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.blockquote(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.list(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.html(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.def(t)){t=t.substring(i.raw.length),r=e[e.length-1],!r||"paragraph"!==r.type&&"text"!==r.type?this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title}):(r.raw+="\n"+i.raw,r.text+="\n"+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=r.text);continue}if(i=this.tokenizer.table(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.lheading(t)){t=t.substring(i.raw.length),e.push(i);continue}if(s=t,this.options.extensions&&this.options.extensions.startBlock){let u=1/0;const f=t.slice(1);let p;this.options.extensions.startBlock.forEach(function(m){p=m.call({lexer:this},f),"number"==typeof p&&p>=0&&(u=Math.min(u,p))}),u<1/0&&u>=0&&(s=t.substring(0,u+1))}if(this.state.top&&(i=this.tokenizer.paragraph(s))){r=e[e.length-1],l&&"paragraph"===r.type?(r.raw+="\n"+i.raw,r.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):e.push(i),l=s.length!==t.length,t=t.substring(i.raw.length);continue}if(i=this.tokenizer.text(t)){t=t.substring(i.raw.length),r=e[e.length-1],r&&"text"===r.type?(r.raw+="\n"+i.raw,r.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):e.push(i);continue}if(t){const u="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(u);break}throw new Error(u)}}return this.state.top=!0,e}inline(t,e=[]){return this.inlineQueue.push({src:t,tokens:e}),e}inlineTokens(t,e=[]){let i,r,s,u,f,p,l=t;if(this.tokens.links){const m=Object.keys(this.tokens.links);if(m.length>0)for(;null!=(u=this.tokenizer.rules.inline.reflinkSearch.exec(l));)m.includes(u[0].slice(u[0].lastIndexOf("[")+1,-1))&&(l=l.slice(0,u.index)+"["+"a".repeat(u[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(u=this.tokenizer.rules.inline.blockSkip.exec(l));)l=l.slice(0,u.index)+"["+"a".repeat(u[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(u=this.tokenizer.rules.inline.anyPunctuation.exec(l));)l=l.slice(0,u.index)+"++"+l.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;t;)if(f||(p=""),f=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(m=>!!(i=m.call({lexer:this},t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)))){if(i=this.tokenizer.escape(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.tag(t)){t=t.substring(i.raw.length),r=e[e.length-1],r&&"text"===i.type&&"text"===r.type?(r.raw+=i.raw,r.text+=i.text):e.push(i);continue}if(i=this.tokenizer.link(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(i.raw.length),r=e[e.length-1],r&&"text"===i.type&&"text"===r.type?(r.raw+=i.raw,r.text+=i.text):e.push(i);continue}if(i=this.tokenizer.emStrong(t,l,p)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.codespan(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.br(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.del(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.autolink(t,TY)){t=t.substring(i.raw.length),e.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(t,TY))){t=t.substring(i.raw.length),e.push(i);continue}if(s=t,this.options.extensions&&this.options.extensions.startInline){let m=1/0;const _=t.slice(1);let b;this.options.extensions.startInline.forEach(function(w){b=w.call({lexer:this},_),"number"==typeof b&&b>=0&&(m=Math.min(m,b))}),m<1/0&&m>=0&&(s=t.substring(0,m+1))}if(i=this.tokenizer.inlineText(s,cMe)){t=t.substring(i.raw.length),"_"!==i.raw.slice(-1)&&(p=i.raw.slice(-1)),f=!0,r=e[e.length-1],r&&"text"===r.type?(r.raw+=i.raw,r.text+=i.text):e.push(i);continue}if(t){const m="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(m);break}throw new Error(m)}}return e}}class HP{constructor(t){this.options=t||A0}code(t,e,i){const r=(e||"").match(/\S*/)[0];if(this.options.highlight){const s=this.options.highlight(t,r);null!=s&&s!==t&&(i=!0,t=s)}return t=t.replace(/\n$/,"")+"\n",r?'

    '+(i?t:nl(t,!0))+"
    \n":"
    "+(i?t:nl(t,!0))+"
    \n"}blockquote(t){return`
    \n${t}
    \n`}html(t,e){return t}heading(t,e,i,r){return this.options.headerIds?`${t}\n`:`${t}\n`}hr(){return this.options.xhtml?"
    \n":"
    \n"}list(t,e,i){const r=e?"ol":"ul";return"<"+r+(e&&1!==i?' start="'+i+'"':"")+">\n"+t+"\n"}listitem(t){return`
  • ${t}
  • \n`}checkbox(t){return" "}paragraph(t){return`

    ${t}

    \n`}table(t,e){return e&&(e=`${e}`),"\n\n"+t+"\n"+e+"
    \n"}tablerow(t){return`\n${t}\n`}tablecell(t,e){const i=e.header?"th":"td";return(e.align?`<${i} align="${e.align}">`:`<${i}>`)+t+`\n`}strong(t){return`${t}`}em(t){return`${t}`}codespan(t){return`${t}`}br(){return this.options.xhtml?"
    ":"
    "}del(t){return`${t}`}link(t,e,i){if(null===(t=MY(this.options.sanitize,this.options.baseUrl,t)))return i;let r='",r}image(t,e,i){if(null===(t=MY(this.options.sanitize,this.options.baseUrl,t)))return i;let r=`${i}":">",r}text(t){return t}}class EV{strong(t){return t}em(t){return t}codespan(t){return t}del(t){return t}html(t){return t}text(t){return t}link(t,e,i){return""+i}image(t,e,i){return""+i}br(){return""}}class SV{constructor(){this.seen={}}serialize(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}getNextSafeSlug(t,e){let i=t,r=0;if(this.seen.hasOwnProperty(i)){r=this.seen[t];do{r++,i=t+"-"+r}while(this.seen.hasOwnProperty(i))}return e||(this.seen[t]=r,this.seen[i]=0),i}slug(t,e={}){const i=this.serialize(t);return this.getNextSafeSlug(i,e.dryrun)}}class sf{constructor(t){this.options=t||A0,this.options.renderer=this.options.renderer||new HP,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new EV,this.slugger=new SV}static parse(t,e){return new sf(e).parse(t)}static parseInline(t,e){return new sf(e).parseInline(t)}parse(t,e=!0){let r,s,l,u,f,p,m,_,b,w,F,D,T,I,O,R,P,ee,J,i="";const te=t.length;for(r=0;r0&&"paragraph"===O.tokens[0].type?(O.tokens[0].text=ee+" "+O.tokens[0].text,O.tokens[0].tokens&&O.tokens[0].tokens.length>0&&"text"===O.tokens[0].tokens[0].type&&(O.tokens[0].tokens[0].text=ee+" "+O.tokens[0].tokens[0].text)):O.tokens.unshift({type:"text",text:ee}):I+=ee),I+=this.parse(O.tokens,T),b+=this.renderer.listitem(I,P,R);i+=this.renderer.list(b,F,D);continue;case"html":i+=this.renderer.html(w.text,w.block);continue;case"paragraph":i+=this.renderer.paragraph(this.parseInline(w.tokens));continue;case"text":for(b=w.tokens?this.parseInline(w.tokens):w.text;r+1{i=i.concat(this.walkTokens(r[s],e))}):r.tokens&&(i=i.concat(this.walkTokens(r.tokens,e)))}return i}use(...t){const e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(i=>{const r={...i};if(r.async=this.defaults.async||r.async||!1,i.extensions&&(i.extensions.forEach(s=>{if(!s.name)throw new Error("extension name required");if(s.renderer){const l=e.renderers[s.name];e.renderers[s.name]=l?function(...u){let f=s.renderer.apply(this,u);return!1===f&&(f=l.apply(this,u)),f}:s.renderer}if(s.tokenizer){if(!s.level||"block"!==s.level&&"inline"!==s.level)throw new Error("extension level must be 'block' or 'inline'");e[s.level]?e[s.level].unshift(s.tokenizer):e[s.level]=[s.tokenizer],s.start&&("block"===s.level?e.startBlock?e.startBlock.push(s.start):e.startBlock=[s.start]:"inline"===s.level&&(e.startInline?e.startInline.push(s.start):e.startInline=[s.start]))}s.childTokens&&(e.childTokens[s.name]=s.childTokens)}),r.extensions=e),i.renderer){const s=this.defaults.renderer||new HP(this.defaults);for(const l in i.renderer){const u=s[l];s[l]=(...f)=>{let p=i.renderer[l].apply(s,f);return!1===p&&(p=u.apply(s,f)),p}}r.renderer=s}if(i.tokenizer){const s=this.defaults.tokenizer||new VP(this.defaults);for(const l in i.tokenizer){const u=s[l];s[l]=(...f)=>{let p=i.tokenizer[l].apply(s,f);return!1===p&&(p=u.apply(s,f)),p}}r.tokenizer=s}if(i.hooks){const s=this.defaults.hooks||new QP;for(const l in i.hooks){const u=s[l];s[l]=QP.passThroughHooks.has(l)?f=>{if(this.defaults.async)return Promise.resolve(i.hooks[l].call(s,f)).then(m=>u.call(s,m));const p=i.hooks[l].call(s,f);return u.call(s,p)}:(...f)=>{let p=i.hooks[l].apply(s,f);return!1===p&&(p=u.apply(s,f)),p}}r.hooks=s}if(i.walkTokens){const s=this.defaults.walkTokens;r.walkTokens=function(l){let u=[];return u.push(i.walkTokens.call(this,l)),s&&(u=u.concat(s.call(this,l))),u}}this.defaults={...this.defaults,...r}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}#e(t,e){return(i,r,s)=>{"function"==typeof r&&(s=r,r=null);const l={...r};r={...this.defaults,...l};const u=this.#t(r.silent,r.async,s);if(typeof i>"u"||null===i)return u(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof i)return u(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(i)+", string expected"));if(function aMe(n,t){!n||n.silent||(t&&console.warn("marked(): callback is deprecated since version 5.0.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/using_pro#async"),(n.sanitize||n.sanitizer)&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options"),(n.highlight||"language-"!==n.langPrefix)&&console.warn("marked(): highlight and langPrefix parameters are deprecated since version 5.0.0, should not be used and will be removed in the future. Instead use https://www.npmjs.com/package/marked-highlight."),n.mangle&&console.warn("marked(): mangle parameter is enabled by default, but is deprecated since version 5.0.0, and will be removed in the future. To clear this warning, install https://www.npmjs.com/package/marked-mangle, or disable by setting `{mangle: false}`."),n.baseUrl&&console.warn("marked(): baseUrl parameter is deprecated since version 5.0.0, should not be used and will be removed in the future. Instead use https://www.npmjs.com/package/marked-base-url."),n.smartypants&&console.warn("marked(): smartypants parameter is deprecated since version 5.0.0, should not be used and will be removed in the future. Instead use https://www.npmjs.com/package/marked-smartypants."),n.xhtml&&console.warn("marked(): xhtml parameter is deprecated since version 5.0.0, should not be used and will be removed in the future. Instead use https://www.npmjs.com/package/marked-xhtml."),(n.headerIds||n.headerPrefix)&&console.warn("marked(): headerIds and headerPrefix parameters enabled by default, but are deprecated since version 5.0.0, and will be removed in the future. To clear this warning, install https://www.npmjs.com/package/marked-gfm-heading-id, or disable by setting `{headerIds: false}`."))}(r,s),r.hooks&&(r.hooks.options=r),s){const f=r.highlight;let p;try{r.hooks&&(i=r.hooks.preprocess(i)),p=t(i,r)}catch(b){return u(b)}const m=b=>{let w;if(!b)try{r.walkTokens&&this.walkTokens(p,r.walkTokens),w=e(p,r),r.hooks&&(w=r.hooks.postprocess(w))}catch(F){b=F}return r.highlight=f,b?u(b):s(null,w)};if(!f||f.length<3||(delete r.highlight,!p.length))return m();let _=0;return this.walkTokens(p,b=>{"code"===b.type&&(_++,setTimeout(()=>{f(b.text,b.lang,(w,F)=>{if(w)return m(w);null!=F&&F!==b.text&&(b.text=F,b.escaped=!0),_--,0===_&&m()})},0))}),void(0===_&&m())}if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(i):i).then(f=>t(f,r)).then(f=>r.walkTokens?Promise.all(this.walkTokens(f,r.walkTokens)).then(()=>f):f).then(f=>e(f,r)).then(f=>r.hooks?r.hooks.postprocess(f):f).catch(u);try{r.hooks&&(i=r.hooks.preprocess(i));const f=t(i,r);r.walkTokens&&this.walkTokens(f,r.walkTokens);let p=e(f,r);return r.hooks&&(p=r.hooks.postprocess(p)),p}catch(f){return u(f)}}}#t(t,e,i){return r=>{if(r.message+="\nPlease report this to https://github.com/markedjs/marked.",t){const s="

    An error occurred:

    "+nl(r.message+"",!0)+"
    ";return e?Promise.resolve(s):i?void i(null,s):s}if(e)return Promise.reject(r);if(!i)throw r;i(r)}}}(A0);function co(n,t,e){return wv.parse(n,t,e)}function uMe(n,t){if(1&n&&(o.j41(0,"div")(1,"h2"),o.EFF(2),o.k0s(),o.nrm(3,"ul",6),o.k0s()),2&n){const e=t.$implicit;o.R7$(2),o.JRh(e.key),o.R7$(),o.Y8G("innerHTML",e.value,o.npT)}}co.options=co.setOptions=function(n){return wv.setOptions(n),vY(co.defaults=wv.defaults),co},co.getDefaults=function MV(){return{async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,hooks:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}},co.defaults=A0,co.use=function(...n){return wv.use(...n),vY(co.defaults=wv.defaults),co},co.walkTokens=function(n,t){return wv.walkTokens(n,t)},co.parseInline=wv.parseInline,co.Parser=sf,co.parser=sf.parse,co.Renderer=HP,co.TextRenderer=EV,co.Lexer=rf,co.lexer=rf.lex,co.Tokenizer=VP,co.Slugger=SV,co.Hooks=QP,co.parse=co;let hMe=(()=>{class n{constructor(e){this.data=e,this.changes=this.getChangelogChanges()}getChangelogChanges(){let i=co.parse('# Change Log - Visualization\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](http://keepachangelog.com/)\nand this project adheres to [Semantic Versioning](http://semver.org/)\n\n## [unreleased] (Added \u{1f680} | Changed | Removed | Fixed \u{1f41e} | Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb})\n\n### Fixed \u{1f41e}\n\n- Fix resetting colors in color metrics [#3943](https://github.com/MaibornWolff/codecharta/pull/3943)\n\n## [1.133.1] - 2025-02-13\n\n### Fixed \u{1f41e}\n\n- Fixed changelog not displaying changes [#3925](https://github.com/MaibornWolff/codecharta/pull/3925)\n- Fixed camera not updating when metric scenario is applied [#3920](https://github.com/MaibornWolff/codecharta/pull/3920)\n\n## [1.133.0] - 2025-02-11\n\n### Added \u{1f680}\n\n- Updated the preview slider of the edge metric options to prioritize buildings with higher number of edges [#3918](https://github.com/MaibornWolff/codecharta/pull/3918)\n\n## [1.132.0] - 2025-02-04\n\n### Added \u{1f680}\n\n- Add a cross-hair when hovering over the color quantile diagram [#3827](https://github.com/MaibornWolff/codecharta/pull/3827)\n- Maps are always shown and rendered in alphabetical order [#3905](https://github.com/MaibornWolff/codecharta/pull/3905)\n\n### Changed\n\n- Increased the size of the color quantile diagram [#3827](https://github.com/MaibornWolff/codecharta/pull/3827)\n- Rename the "Reset camera..."-settings-button and add tooltip to make it more clear what it does [#3906](https://github.com/MaibornWolff/codecharta/pull/3906) [#3908](https://github.com/MaibornWolff/codecharta/pull/3908)\n\n### Fixed \u{1f41e}\n\n- Fix loading cc.json files that contain the \'authors\' attribute [#3848](https://github.com/MaibornWolff/codecharta/pull/3897)\n- Fix applying Custom Views [#3898](https://github.com/MaibornWolff/codecharta/pull/3898)\n- The camera is now only reset when the area or the height of the map is changed [#3896](https://github.com/MaibornWolff/codecharta/pull/3896)\n- Fix freezing app on uploading already loaded files [#3901](https://github.com/MaibornWolff/codecharta/pull/3901)\n- Fix switching maps in delta view [#3903](https://github.com/MaibornWolff/codecharta/pull/3903)\n\n## [1.131.2] - 2024-12-04\n\n### Fixed \u{1f41e}\n\n- Fix Custom View menu not working due to missing its provider [#3842](https://github.com/MaibornWolff/codecharta/pull/3842)\n\n## [1.131.1] - 2024-11-28\n\n### Fixed \u{1f41e}\n\n- Set default scroll behaviour to zoom to cursor.\n\n## [1.131.0] - 2024-11-28\n\n### Added \u{1f680}\n\n- Add alternative center-focused zoom option via the `ALT`-key [#3815](https://github.com/MaibornWolff/codecharta/pull/3815)\n- Add an apply button when selecting maps [#3637](https://github.com/MaibornWolff/codecharta/pull/3637)\n\n### Fixed \u{1f41e}\n\n- Fix that the map is reloaded when switching from delta to standard view [#3825](https://github.com/MaibornWolff/codecharta/pull/3825)\n\n## [1.130.0] - 2024-11-04\n\n### Added \u{1f680}\n\n- Add experimental feature: show buildings with an area metric value of 0 [#3789](https://github.com/MaibornWolff/codecharta/pull/3789)\n- Add further functionality for nested data to show popup when comparing files with different complexity metrics [#3791](https://github.com/MaibornWolff/codecharta/pull/3791)\n- Add improvements to the migration script for old mcc maps [#3803](https://github.com/MaibornWolff/codecharta/pull/3803)\n\n### Changed\n\n- Revert focus behaviour to old one for stability [#3793](https://github.com/MaibornWolff/codecharta/pull/3793)\n\n### Fixed \u{1f41e}\n\n- Fix that default sample files are not removed when a new file is loaded by the user [#3768](https://github.com/MaibornWolff/codecharta/pull/3768)\n- When an invisible file is deleted, the shown map is not reloaded anymore [#3788](https://github.com/MaibornWolff/codecharta/pull/3788)\n\n## [1.129.1] - 2024-10-18\n\n### Fixed \u{1f41e}\n\n- Fix an issue which caused the web demo files to be incomplete [#3790](https://github.com/MaibornWolff/codecharta/pull/3790)\n\n## [1.129.0] - 2024-10-17\n\n### Added \u{1f680}\n\n- Add thousands separation for big numbers [#3758](https://github.com/MaibornWolff/codecharta/pull/3758)\n- Add popup when comparing files with different complexity metrics [#3773](https://github.com/MaibornWolff/codecharta/pull/3773)\n- Add experimental feature: dynamic floor lable height for large maps [#3778](https://github.com/MaibornWolff/codecharta/pull/3778)\n\n### Fixed \u{1f41e}\n\n- Remove horizontal scrollbar in the File/ Node Explorer dropdown and styling fixes [#3765](https://github.com/MaibornWolff/codecharta/pull/3765)\n- Fix issue when multiple files are selected then the edge metrics in the primary metrics section are not displayed correctly. [#3753](https://github.com/MaibornWolff/codecharta/pull/3753)\n- Metric Scenarios (before Metric Templates) are available again [#3762](https://github.com/MaibornWolff/codecharta/pull/3762)\n- Legend Panel closes on outside click [#3770](https://github.com/MaibornWolff/codecharta/pull/3770)\n\n### Changed\n\n- Renaming of Metric Templates to Metric Scenarios [#3656](https://github.com/MaibornWolff/codecharta/pull/3656)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Enable View Encapsulation for components in the ribbon bar [#3779](https://github.com/MaibornWolff/codecharta/pull/3779)\n\n## [1.128.0] - 2024-09-18\n\n### Added \u{1f680}\n\n- Add feature to zoom at the mouse cursor [#3693](https://github.com/MaibornWolff/codecharta/pull/3693)\n- Add a zoom slider under the cube, allowing to zoom in and out while always displaying the current zoom factor. [#3697](https://github.com/MaibornWolff/codecharta/pull/3697)\n\n### Fixed \u{1f41e}\n\n- Fix breaking map selection layout by setting automatic line extension. [#3764](https://github.com/orgs/MaibornWolff/projects/11/views/3?pane=issue&itemId=80844170)\n- Fix issue where zooming out too much makes the map disappear and zooming in too much causes you to go through the map. [#3697](https://github.com/MaibornWolff/codecharta/pull/3697)\n- Camera perspective is correctly adopted from the custom configuration[#3698](https://github.com/MaibornWolff/codecharta/pull/3698)\n- Fix camera behavior when `Reset Camera when changing map` option is deactivated [#3699](https://github.com/MaibornWolff/codecharta/pull/3699)\n\n### Changed\n\n- Change OrbitControls to MapControls for improved map navigation [#3693](https://github.com/MaibornWolff/codecharta/pull/3693)\n- Remove unnecessary button that opened and closed the file explorer [#3647](https://github.com/MaibornWolff/codecharta/pull/3748)\n- Overhaul Focus and Unfocus functionality[#3706](https://github.com/MaibornWolff/codecharta/pull/3706)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Bump node version from 18 to 20 [#3690](https://github.com/MaibornWolff/codecharta/pull/3690)\n- Enabled view encapsulation for Global Configuration dialog, Ribbon Bar and File Panel [#3712](https://github.com/MaibornWolff/codecharta/pull/3712)\n- Enabled view encapsulation for Slider [#3713](https://github.com/MaibornWolff/codecharta/pull/3713)\n- Enabled view encapsulation for the Toolbar [#3717](https://github.com/MaibornWolff/codecharta/pull/3717)\n- Enabled view encapsulation for the Legend Panel [#3720](https://github.com/MaibornWolff/codecharta/pull/3720)\n- Enabled view encapsulation for the Attribute Side Bar [#3726](https://github.com/MaibornWolff/codecharta/pull/3726)\n- Enabled view encapsulation for Buttons [#3729](https://github.com/MaibornWolff/codecharta/pull/3729)\n- Enabled view encapsulation for the Export 3D Map Dialog [#3732](https://github.com/MaibornWolff/codecharta/pull/3732)\n- Enabled view encapsulation for Dialogs [#3736](https://github.com/MaibornWolff/codecharta/pull/3736)\n\n## [1.127.1] - 2024-08-12\n\n### Fixed \u{1f41e}\n\n- Revert [#3655](https://github.com/MaibornWolff/codecharta/pull/3665) as we implement new navigation methods\n\n## [1.127.0] - 2024-08-12\n\n### Fixed \u{1f41e}\n\n- Zooming doesn\'t affect the camera position [#3655](https://github.com/MaibornWolff/codecharta/pull/3665)\n- Fix the issue where the map disappears after excessive zooming out.[#3655](https://github.com/MaibornWolff/codecharta/pull/3665)\n- Fix visualization standalone electron build by bumping the version to 29 [#3681](https://github.com/MaibornWolff/codecharta/pull/3681)\n\n### Added \u{1f680}\n\n- Export multi-material 3MF for 3D printing of maps in color [#3616](https://github.com/MaibornWolff/codecharta/pull/3616)\n\n### Changed\n\n- IMPORTANT: The sonar complexity will no longer be renamed to MCC! [#3456](https://github.com/MaibornWolff/codecharta/pull/3606)\n\n## [1.126.0] - 2024-06-03\n\n### Added \u{1f680}\n\n- Overhaul the Suspicious Metrics menu [#3612](https://github.com/MaibornWolff/codecharta/pull/3612)\n\n## [1.125.0] - 2024-04-24\n\n### Added \u{1f680}\n\n- Add search bar for custom configs [#3529](https://github.com/MaibornWolff/codecharta/pull/3529)\n- Automatically reverse the metric direction for those where higher values indicate better codequality, such as `branch_coverage` [#3518](https://github.com/MaibornWolff/codecharta/pull/3518)\n- Display summary metrics for root node as default [#3525](https://github.com/MaibornWolff/codecharta/pull/3525)\n- Remove whitespace on screenshots [#3527](https://github.com/MaibornWolff/codecharta/pull/3527)\n\n### Fixed \u{1f41e}\n\n- Fix small style issues [#3544](https://github.com/MaibornWolff/codecharta/pull/3544)\n- Fix key handling for selection metrics [#3546](https://github.com/MaibornWolff/codecharta/pull/3546)\n- Fix applying default metric templates to ensure options reset correctly [#3560](https://github.com/MaibornWolff/codecharta/pull/3560)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update angular to v17\n\n## [1.124.1] - 2024-03-18\n\n### Fixed \u{1f41e}\n\n- Fix metrics being reset on excluding / flattening buildings [#3524](https://github.com/MaibornWolff/codecharta/pull/3524)\n- Take direction of attributes into account when creating the list with highest metrics [#3526](https://github.com/MaibornWolff/codecharta/pull/3526)\n\n## [1.124.0] - 2024-03-18\n\n### Added \u{1f680}\n\n- Display diagram of color distribution [#3511](https://github.com/MaibornWolff/codecharta/pull/3511)\n
    \n color-metric-diagram\n
    \n- Persist uploaded files and applied configuration accross page-reloads [#3486](https://github.com/MaibornWolff/codecharta/pull/3486)\n- Height, color, edge and area metric can be selected via query parameters [#3513](https://github.com/MaibornWolff/codecharta/pull/3513)\n- Capturing a screenshot of the map also captures the legend [#3520](https://github.com/MaibornWolff/codecharta/pull/3520)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Bump node version from 16 to 18 [#3452](https://github.com/MaibornWolff/codecharta/pull/3452)\n\n## [1.123.0] - 2024-02-26\n\n### Changed\n\n- CodeCharta Analysis and Visualization now have separate changelogs and releases [#3499](https://github.com/MaibornWolff/codecharta/pull/3499)\n\n### Added \u{1f680}\n\n- Highlight building on-click of file in explorer [#3488](https://github.com/MaibornWolff/codecharta/pull/3488)\n\n### Fixed \u{1f41e}\n\n- Fix buildings inability to be completely red in delta mode [#3439](https://github.com/MaibornWolff/codecharta/pull/3439)\n- Fix edge preview in visualization [#3439](https://github.com/MaibornWolff/codecharta/pull/3439)\n- Fix edges start/end intersecting with building in delta mode [#3439](https://github.com/MaibornWolff/codecharta/pull/3439)\n- Fix style issues in the node/file explorer of visualization [#3439](https://github.com/MaibornWolff/codecharta/pull/3439)\n\n## [1.122.0] - 2024-01-16\n\n### Added \u{1f680}\n\n- File explorer can be pinned while analyzing the code-map [#3459](https://github.com/MaibornWolff/codecharta/pull/3459)\n- Validate input file during interactive parser configuration [#3460](https://github.com/MaibornWolff/codecharta/pull/3460)\n- Add functionality to screenshot legend [#3471](https://github.com/MaibornWolff/codecharta/pull/3471)\n\n### Changed\n\n- Multiple values for options need to be separated by comma [#3434](https://github.com/MaibornWolff/codecharta/pull/3434)\n- Changed the short-form of the `--no-issues` flag in the SourceCodeParser from `-i` to `-ni` [#3434](https://github.com/MaibornWolff/codecharta/pull/3434)\n- Clarify sonar user token question [#3445](https://github.com/MaibornWolff/codecharta/pull/3445)\n- Changed the `--user` flag to `--user-token` in SonarImporter [#3445](https://github.com/MaibornWolff/codecharta/pull/3445)\n- Changed the interactive dialog of `modify` to prompt user for single action to perform [#3448](https://github.com/MaibornWolff/codecharta/pull/3448)\n- Selected buildings now keep their label until they are unselected [#3465](https://github.com/MaibornWolff/codecharta/pull/3465)\n\n### Fixed \u{1f41e}\n\n- Fix saving the number of top-labels in custom configs [#3461](https://github.com/MaibornWolff/codecharta/pull/3461)\n- Fix parsers crashing after printing output to stdout [#3442](https://github.com/MaibornWolff/codecharta/pull/3442)\n- Fix removal of nodes with identical names in `modify` [#3446](https://github.com/MaibornWolff/codecharta/pull/3446)\n- Fix the highlighting of very high risk metrics to highlight only matching files [#3454](https://github.com/MaibornWolff/codecharta/pull/3454)\n\n## [1.121.1] - 2023-12-08\n\n### Fixed \u{1f41e}\n\n- Fix github-pages not showing documentation [#3436](https://github.com/MaibornWolff/codecharta/pull/3436)\n\n## [1.121.0] - 2023-12-07\n\n### Added \u{1f680}\n\n- Add logging of absolute file paths of output files [#3414](https://github.com/MaibornWolff/codecharta/pull/3414)\n\n### Changed\n\n- Changed short form of parameter `--file-extensions` of RawTextParser from `-f` to `-fe` [#3405](https://github.com/MaibornWolff/codecharta/pull/3405)\n- Update readme and gh-pages for RawTextParser [#3405](https://github.com/MaibornWolff/codecharta/pull/3405)\n- Changed the `--format` flag for csv-output in SourceCodeParser from `table` to `csv` [#3414](https://github.com/MaibornWolff/codecharta/pull/3414)\n\n### Fixed \u{1f41e}\n\n- Fix RawTextParser producing incorrect output when no (or multiple) file extensions were specified in interactive mode [#3405](https://github.com/MaibornWolff/codecharta/pull/3405)\n- Fix handling of empty inputs for the `--metrics`, `--exclude`, `--file-extensions` flags in the RawTextParser [#3415](https://github.com/MaibornWolff/codecharta/pull/3415)\n- Fix RawTextParser incorrectly setting max indentation level to a predefined value [#3419](https://github.com/MaibornWolff/codecharta/pull/3419)\n- Fix the csv-exporter so that it exports multiple projects instead of just one when multiple projects are specified [#3414](https://github.com/MaibornWolff/codecharta/pull/3414)\n- Fix file extensions of output files for merged projects [#3421](https://github.com/MaibornWolff/codecharta/pull/3421)\n- Fix the ability for users to accidentally pass invalid metrics to the RawTextParser without it crashing [#3424](https://github.com/MaibornWolff/codecharta/pull/3424)\n- Fix deselected buildings with green/red roof in delta mode do not reset their color roof [#3426](https://github.com/MaibornWolff/codecharta/pull/3426)\n- Fix parser hang issue in interactive mode caused by unintentional "enter" input after the last question [#3422](https://github.com/MaibornWolff/codecharta/pull/3422)\n\n### Chore \u200d\u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Upgraded to angular 16 [#3408](https://github.com/MaibornWolff/codecharta/pull/3408)\n\n## [1.120.1] - 2023-11-17\n\n### Removed \u{1f5d1}\n\n- Deprecated download button removed (functionality has been replaced by custom views) [#3398](https://github.com/MaibornWolff/codecharta/pull/3398)\n- Remove the \'new\' badges from the \'Custom Views\' and \'Suspicious Metrics\' features as these features are no longer new [#3393](https://github.com/MaibornWolff/codecharta/pull/3399)\n\n### Fixed \u{1f41e}\n\n- Fix an issue with web demo on Safari showing a white screen and not loading [#3396](https://github.com/MaibornWolff/codecharta/pull/3396)\n- Fix the ability for users to skip the value for tab-width when configuring the rawtextparser and estimate its value [#3404](https://github.com/MaibornWolff/codecharta/pull/3404)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Add documentation for the installation requirements for metric-gardener [#3395](https://github.com/MaibornWolff/codecharta/pull/3395)\n- Add hints to README (visualization and package) about MacOS arm64 standalone execution [#3395](https://github.com/MaibornWolff/codecharta/pull/3395)\n\n## [1.120.0] - 2023-11-02\n\n### Added \u{1f680}\n\n- Only ask to merge results after parser suggestion execution when more than one parser was executed [#3384](https://github.com/MaibornWolff/codecharta/pull/3384)\n- Add the description of each parser to the list of suggested parsers [#3387](https://github.com/MaibornWolff/codecharta/pull/3387)\n\n### Changed\n\n- Adjust console output of metric gardener importer to no longer include one line for each processed node [#3386](https://github.com/MaibornWolff/codecharta/pull/3390)\n\n### Fixed \u{1f41e}\n\n- Fix command not found issue for --version and --help in the analysis [#3377](https://github.com/MaibornWolff/codecharta/pull/3377)\n- Fix metric gardener importer getting stuck for large inputs [#3382](https://github.com/MaibornWolff/codecharta/pull/3382)\n- Update docs for ccsh to remove outdated parameters and unify the pages structure [#3333](https://github.com/MaibornWolff/codecharta/pull/3388)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Raise minimum required Java Version from 8 to 11 [#3359](https://github.com/MaibornWolff/codecharta/pull/3359)\n- Swap nw.js to electron for standalone execution [#3373](https://github.com/MaibornWolff/codecharta/pull/3373)\n\n## [1.119.1] - 2023-08-03\n\n### Fixed \u{1f41e}\n\n- Fix ccsh execution under windows via cmd-terminal [#3354](https://github.com/MaibornWolff/codecharta/pull/3354)\n\n## [1.119.0] - 2023-07-13\n\n### Added \u{1f680}\n\n- Add message outputting which parser is being configured during parser suggestions [#3335](https://github.com/MaibornWolff/codecharta/pull/3335)\n- Add basic validity checking for all input resources (files/folders, url for SonarImporter) [#3325](https://github.com/MaibornWolff/codecharta/pull/3325)\n- Automatically start specific interactive parser when calling parser without args [#3332](https://github.com/MaibornWolff/codecharta/pull/3332)\n\n## [1.118.0] - 2023-06-15\n\n### Added \u{1f680}\n\n- Add metric tooltips that display attribute descriptors and provide hyperlinks in the sidebar to the metric\'s documentation [#3273](https://github.com/MaibornWolff/codecharta/pull/3273)
    \n \n- Expand and restructure documentation regarding Docker usage [#3312](https://github.com/MaibornWolff/codecharta/pull/3312)\n- Add current working directories as hint or default value to interactive parser and parser suggestions when asking for input [#3319](https://github.com/MaibornWolff/codecharta/pull/3319)\n- Add helpful status messages when calculating parser suggestions [#3329](https://github.com/MaibornWolff/codecharta/pull/3329)\n\n### Fixed \u{1f41e}\n\n- Speed up parser suggestions significantly [#3329](https://github.com/MaibornWolff/codecharta/pull/3329)\n- Fix color range reset not triggering on color metric change [#3311](https://github.com/MaibornWolff/codecharta/pull/3311)\n\n## [1.117.0] - 2023-05-19\n\n### Added \u{1f680}\n\n- Add support for parser suggestions to SVN-, MetricGardener-, RawText- and SourceCodeParser [#3287](https://github.com/MaibornWolff/codecharta/pull/3287)\n- Add semi automatic merging feature after executing multiple parsers [#3287](https://github.com/MaibornWolff/codecharta/pull/3287)\n- Expand developer documentation to include common problems and solutions for them [#3289](https://github.com/MaibornWolff/codecharta/pull/3289)\n\n### Fixed \u{1f41e}\n\n- Fix entrypoint for analysis docker image [#3259](https://github.com/MaibornWolff/codecharta/pull/3259)\n- Show again delta of a building which have nothing in common in red or green [#3271](https://github.com/MaibornWolff/codecharta/pull/3271)\n- Always show description of suspicious metrics [#3285](https://github.com/MaibornWolff/codecharta/pull/3285)\n- Show suspicious metrics and risk profile documentation pages in navigation bar [#3290](https://github.com/MaibornWolff/codecharta/pull/3290)\n- Merge filter will now abort execution when an invalid file is specified as input [#3305](https://github.com/MaibornWolff/codecharta/pull/3305)\n- Fix formatting issues in docs turning `--` to `\u2013` [#3301](https://github.com/MaibornWolff/codecharta/pull/3301)\n\n### Changed\n\n- Adjusted documentation for parser suggestions [#3287](https://github.com/MaibornWolff/codecharta/pull/3287)\n- Make the size of the CodeCharta logo more suitable for any screen size and remove MaibornWolff logo [#3302](https://github.com/MaibornWolff/codecharta/pull/3302)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Replace custom Redux adapter through real NgRx [#3271](https://github.com/MaibornWolff/codecharta/pull/3271)\n\n## [1.116.0] - 2023-04-28\n\n### Added \u{1f680}\n\n- Add automatic parser suggestions to recommend usable parsers for a codebase (supports GitLogParser and SonarImporter) when running `ccsh` command [#3275](https://github.com/MaibornWolff/codecharta/pull/3275)
    \n ![image](https://user-images.githubusercontent.com/129938897/234309117-c9edd4e7-7c53-4ba7-b849-ec9c3f8f3215.png)\n- Add documentation subsections for interactive shell and parser suggestions\n\n### Changed\n\n- Changed default behavior when launching ccsh without arguments to parser suggestions [#3275](https://github.com/MaibornWolff/codecharta/pull/3275)\n- Old interactive parser selection now reachable by passing `-i` or `--interactive` as arguments [#3275](https://github.com/MaibornWolff/codecharta/pull/3275)\n\n### Fixed \u{1f41e}\n\n- Fix suspicious metrics and risk profile docs not loading [#3272](https://github.com/MaibornWolff/codecharta/pull/3272)\n\n## [1.115.1] - 2023-04-06\n\n### Removed \u{1f5d1}\n\n- Support for Custom Views created before CodeCharta version 1.110.0 or older is no longer be maintained [#3265](https://github.com/MaibornWolff/codecharta/pull/3265)\n\n### Fixed \u{1f41e}\n\n- Fix the disappearance of the suspicious metrics labels [#3263](https://github.com/MaibornWolff/codecharta/pull/3263)\n- Fix UI components that look different since version 1.115.0 [#3260](https://github.com/MaibornWolff/codecharta/pull/3260)\n- Show latest release notes in changelog dialog [#3264](https://github.com/MaibornWolff/codecharta/pull/3264)\n\n## [1.115.0] - 2023-03-30\n\n### Added \u{1f680}\n\n- Display the CodeCharta logo next to the MaibornWolff logo [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Tooltip for primary and secondary metrics that displays AttributeDescriptor information in the sidebar [#3239](https://github.com/MaibornWolff/codecharta/pull/3239)
    \n ![image](https://user-images.githubusercontent.com/65733509/227218468-b7d1e1ae-b847-40ab-8513-f3762b8787bb.png)\n- Supports adding note to a custom view, provides a preview and an edit option for notes from the selection menu [#3234](https://github.com/MaibornWolff/codecharta/pull/3234)
    \n ![image](https://user-images.githubusercontent.com/72517530/226942610-9e08d39c-324d-4de3-81d0-4e5da4e589aa.png)\n ![image](https://user-images.githubusercontent.com/72517530/226943152-1bb339bb-c39f-4bf6-a32d-ee8476249f98.png)\n\n### Changed\n\n- The Suspicious metrics and Risk profile Feature is now also available outside the Experimental Feature Mode [#2963](https://github.com/MaibornWolff/codecharta/pull/2963)
    \n ![image](https://user-images.githubusercontent.com/47224279/222686442-05d4b83c-04d7-4275-b1eb-4339e8906130.jpg)\n- Made the background color a bit lighter [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Saturate the distribution bar colors [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Improve the layout of all metric menus [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Improve the layout of the global configuration dialog [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Improve the layout of the metric chooser panel [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Change the primary color to match the color of the CodeCharta logo [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Improve the docs for suspicious metrics and risk profile feature [#3238](https://github.com/MaibornWolff/codecharta/pull/3238)\n- Improve Custom Views Dialog [#3238](https://github.com/MaibornWolff/codecharta/pull/3248)\n\n### Fixed \u{1f41e}\n\n- Unselecting a folder in Presentation Mode leads to console error [#3215](https://github.com/MaibornWolff/codecharta/pull/3215)\n- Fix Shrunken FileExplorer\'s file list on small displays [#3235](https://github.com/MaibornWolff/codecharta/pull/3235)\n- Fix various margin problems in the UI [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n- Fix bumpy animations when moving/turning the map, hover buildings (showing labels and edges) [#3244](https://github.com/MaibornWolff/codecharta/pull/3244)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Upgrade all material UI components to MDC (not using the UI legacy components any more) [#3226](https://github.com/MaibornWolff/codecharta/pull/3226)\n\n## [1.114.0] - 2023-01-13\n\n### Added \u{1f680}\n\n- Add an option to hide floor labels under the Area Metric Options. This recalculates the map. [#3175](https://github.com/MaibornWolff/codecharta/pull/3175)\n\n### Removed \u{1f5d1}\n\n- Camera settings for custom views generated with version 1.101.1 and earlier are now ignored. [#3196](https://github.com/MaibornWolff/codecharta/pull/3196)\n\n### Fixed \u{1f41e}\n\n- Reposition legend panel button again, when attribute sidebar is open [#3183](https://github.com/MaibornWolff/codecharta/pull/3183)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Add attribute descriptors (metric descriptions) to TokeiImporter and SVNlogParser [#3176](https://github.com/MaibornWolff/codecharta/pull/3176)\n\n## [1.113.0] - 2022-12-15\n\n### Changed\n\n- The Custom Views Feature is now also available outside the Experimental Feature Mode [#3079](https://github.com/MaibornWolff/codecharta/pull/3076)
    \n ![image](https://user-images.githubusercontent.com/72517530/204557970-0ba31f3b-5209-4707-a2d0-55cc45509f8a.png)\n- Please note that the functionality of downloading cc.json maps will no longer be supported from April 2023. Instead, use the Custom View feature to create and share configurations for different views of your map. [#3079](https://github.com/MaibornWolff/codecharta/pull/3076)\n- Change tooltips in the legend to show the metric description [#3162](https://github.com/MaibornWolff/codecharta/pull/3162)
    \n ![image](https://user-images.githubusercontent.com/27358421/205251507-100b1e1a-d86e-44f3-89cf-f32bf295aabd.png)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Improve metric titles by loading them from cc.json [#3162](https://github.com/MaibornWolff/codecharta/pull/3162)\n- Add attribute descriptors to SoureCodeParser [#3166](https://github.com/MaibornWolff/codecharta/pull/3166)\n\n## [1.112.1] - 2022-12-01\n\n### Fixed \u{1f41e}\n\n- Reverted PR [#3077](https://github.com/MaibornWolff/codecharta/pull/3077) that introduced a rendering bug, where buildings sizes were not proportional to their area value [#3159](https://github.com/MaibornWolff/codecharta/pull/3159)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Add attribute descriptors to SonarImporter [#3149](https://github.com/MaibornWolff/codecharta/pull/3149)\n- Add title field to attribute descriptors [#3158](https://github.com/MaibornWolff/codecharta/pull/3158)\n\n## [1.112.0] - 2022-11-25\n\n### Added \u{1f680}\n\n- New calculation algorithm for treeMap that accounts for paddings and floor labels [#3077](https://github.com/MaibornWolff/codecharta/pull/3077)\n\n### Fixed \u{1f41e}\n\n- Fix ribbon-bar shadow moving down when search is expanded [#3138](https://github.com/MaibornWolff/codecharta/pull/3138)\n- Fix loading errors of maps containing no programming-language-info [#3144](https://github.com/MaibornWolff/codecharta/pull/3144)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Documentation for new treeMap calculation algorithm [#3077](https://github.com/MaibornWolff/codecharta/pull/3077)\n- Add attribute descriptors (metric descriptions) to some filters and importers [#3091](https://github.com/MaibornWolff/codecharta/pull/3091)\n\n## [1.111.0] - 2022-11-17\n\n### Added \u{1f680}\n\n- Add description to every Custom View [#3119](https://github.com/MaibornWolff/codecharta/pull/3119)
    \n ![image](https://user-images.githubusercontent.com/72517530/201381274-a9a913d5-8f9d-4da6-9f26-6476e194ce3b.png)\n- Highlight files and folders with no area metric or an area metric value of zero in the search panel [#3126](https://github.com/MaibornWolff/codecharta/pull/3126)\n\n### Changed\n\n- Be aware, that all Custom Views generated with version 1.110.0 or older will be unusable by April 2023 [#3119](https://github.com/MaibornWolff/codecharta/pull/3119)\n\n### Fixed \u{1f41e}\n\n- Fix Node Context-Menu in Map Tree View opening multiple times [#3135](https://github.com/MaibornWolff/codecharta/pull/3135)\n- Fix crashing on focusing or hovering un-rendered buildings [#3123](https://github.com/MaibornWolff/codecharta/pull/3123)\n- Fix showing changelog entries in the dialog when a new version is available [#3123](https://github.com/MaibornWolff/codecharta/pull/3129)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update supported latest browsers [#3125](https://github.com/MaibornWolff/codecharta/pull/3125)\n- Split e2e and unit test configs [#3128](https://github.com/MaibornWolff/codecharta/pull/3128)\n\n## [1.110.0] - 2022-11-04\n\n### Changed\n\n- Custom Views are now applicable even if maps or mode are different. Missing maps or map selection mode is displayed in the tooltip [#3090](https://github.com/MaibornWolff/codecharta/pull/3090)\n- Be aware, that all Custom Views generated with version 1.109.1 or older will be unusable by April 2023 [#3105](https://github.com/MaibornWolff/codecharta/pull/3105)\n\n### Fixed \u{1f41e}\n\n- Fix broken link to Custom View documentation [#3101](https://github.com/MaibornWolff/codecharta/pull/3101)\n- Don\'t re-center map after every state change like changing area metric [#3109](https://github.com/MaibornWolff/codecharta/pull/3109)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Adjust Custom View API and maintain old Custom Views until April 2023 [#3105](https://github.com/MaibornWolff/codecharta/pull/3105)\n- Migrate codeMap.render.service, codeMap.label.service, codeMap.mouseEvent.service, codeMap.arrow.service, codeCharta.service, sharpnessMode.service, isLoadingFile.service, scaling.service and experimentalFeaturesEnabled.service to Angular [#3094](https://github.com/MaibornWolff/codecharta/pull/3094)\n- Extract tree map size into a const as this is never changed [3098](https://github.com/MaibornWolff/codecharta/pull/3098)\n- Migrate markedPackages.service, edges.service, blacklist.service, files.service and injector.service [3106](https://github.com/MaibornWolff/codecharta/pull/3106)\n- Refactor out `LoadInitialFileService` and fix with it loose Promise in tests [#3110](https://github.com/MaibornWolff/codecharta/pull/3110)\n- Migrate codeCharta.component, storeService.service and remove AngularJS dual boot from bootstrapping [#3114](https://github.com/MaibornWolff/codecharta/pull/3114)\n- Remove obsolete AngularJS dependencies [#3115](https://github.com/MaibornWolff/codecharta/pull/3115)\n\n## [1.109.1] - 2022-10-12\n\n### Fixed \u{1f41e}\n\n- Fix broken links on new GitHub Page \'Docker Containers\' [#3089](https://github.com/MaibornWolff/codecharta/pull/3089)\n\n## [1.109.0] - 2022-10-12\n\n### Added \u{1f680}\n\n- Add description and documentation to Custom View modal [#3085](https://github.com/MaibornWolff/codecharta/pull/3085)\n- Add a new button that links the height metric to the color metric so that the colour metric is automatically set to\n the selected height metric [#3058](https://github.com/MaibornWolff/codecharta/pull/3058)
    \n ![image](https://user-images.githubusercontent.com/72517530/193291144-fdc73a15-2087-47e2-845b-05c666aec71d.png)
    \n ![image](https://user-images.githubusercontent.com/72517530/194300920-60ce9fcd-0dd5-46ef-a90b-01d9a29205e6.png)\n\n### Fixed \u{1f41e}\n\n- Fix interactive GitLogParser using wrong dialogue with repo-scan subcommand [#3073](https://github.com/MaibornWolff/codecharta/pull/3073)\n- Fix CodeCharta Analysis container exiting when detached [#3062](https://github.com/MaibornWolff/codecharta/pull/3062)\n- Fix CodeCharta Analysis container not coming with the sonar-scanner pre-installed [#3062](https://github.com/MaibornWolff/codecharta/pull/3062)\n- Rerender immediately after marking a folder with a color [#3067](https://github.com/MaibornWolff/codecharta/pull/3067)\n- Clicking the \'reset height metric settings\' button resets the number of top labels to the dynamic default value [#3066](https://github.com/MaibornWolff/codecharta/pull/3066)\n- Unfocus nodes when changing selected files, which prevents the app from crashing [#3072](https://github.com/MaibornWolff/codecharta/pull/3072)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update Docker Publish Action in Release Pipeline [#3060](https://github.com/MaibornWolff/codecharta/pull/3060)\n- Write documentation for docker containers [#3063](https://github.com/MaibornWolff/codecharta/pull/3063)\n- Migrate isAttributeSideBarVisible.service, threeScene.service, threeCamera.service and threeStats.service to Angular [#3068](https://github.com/MaibornWolff/codecharta/pull/3068)\n- Migrate dialog.service to Angular [#3072](https://github.com/MaibornWolff/codecharta/pull/3072)\n- Add documentation for new treeMap algorithm [#3077](https://github.com/MaibornWolff/codecharta/pull/3077)\n- Migrate dialog.service to Angular [#3070](https://github.com/MaibornWolff/codecharta/pull/3070)\n- Migrate FocusedNodePathService, LayoutAlgorithmService, ThreeOrbitControlsService and ThreeViewerService to Angular [#3072](https://github.com/MaibornWolff/codecharta/pull/3072)\n- Migrate updateAttributeTypes.service to Angular [#3082](https://github.com/MaibornWolff/codecharta/pull/3082)\n\n## [1.108.1] - 2022-09-29\n\n## Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update formatting in Docker Release Pipeline [#3059](https://github.com/MaibornWolff/codecharta/pull/3059)\n\n## [1.108.0] - 2022-09-28\n\n### Added \u{1f680}\n\n- Add new Analysis docker container, together with a docker-compose file that contains analysis, visualization and a\n SonarQube instance [#3057](https://github.com/MaibornWolff/codecharta/pull/3057)\n\n### Removed \u{1f5d1}\n\n- remove outdated Crococosmo, Understand and Jasome Importer from Analysis including its documentation [#3053](https://github.com/MaibornWolff/codecharta/pull/3053)\n\n## [1.107.0] - 2022-09-27\n\n### Added \u{1f680}\n\n- Add subcommand to GitLogParser to run necessary git commands automatically [#3041](https://github.com/MaibornWolff/codecharta/pull/3041)\n\n### Changed\n\n- Change default behaviour of GitLogParser to use new subcommands [#3041](https://github.com/MaibornWolff/codecharta/pull/3041)\n- Set default value for displaying labels 1 per 100 buildings with a maximum of 10 labels [#3046](https://github.com/MaibornWolff/codecharta/pull/3046)\n\n### Fixed \u{1f41e}\n\n- Uncheck the box when \'reset invert height\' icon is clicked [#3048](https://github.com/MaibornWolff/codecharta/pull/3048)\n- Update ReadMe and GitHub pages for MetricGardener [#3045](https://github.com/MaibornWolff/codecharta/pull/3045)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate codeMap.component to Angular with minor internal improvements [#3049](https://github.com/MaibornWolff/codecharta/pull/3049)\n- Remove threeUpdateCycle.service [#3050](https://github.com/MaibornWolff/codecharta/pull/3050)\n- Migrate metricData.service, edgeMetric.service, nodeMetricData.service and edgeMetricData.service to Angular [#3051](https://github.com/MaibornWolff/codecharta/pull/3051)\n- Migrate threeRenderer.service to Angular [#3052](https://github.com/MaibornWolff/codecharta/pull/3052)\n\n## [1.106.1] - 2022-09-20\n\n### Fixed \u{1f41e}\n\n- CC-JSON Files not loaded on Safari browser [#3042](https://github.com/MaibornWolff/codecharta/pull/3042)\n- Show loading spinners while loading a file [#2980](https://github.com/MaibornWolff/codecharta/pull/2980)\n- Prevent clicking on not opened metric options in ribbon bar [#3029](https://github.com/MaibornWolff/codecharta/pull/3029)\n- Set cursor to pointer on color settings panel of delta mode [#3029](https://github.com/MaibornWolff/codecharta/pull/3029)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Throttle rendering and migrate codeMap.preRender.service to Angular [#2980](https://github.com/MaibornWolff/codecharta/pull/2980)\n\n## [1.106.0] - 2022-09-13\n\n### Added \u{1f680}\n\n- Add option to CSVImporter to specify the path column name [#3026](https://github.com/MaibornWolff/codecharta/pull/3026)\n\n### Changed\n\n- Stop asking the user to compress a file when printing to stdOut [#3024](https://github.com/MaibornWolff/codecharta/pull/3024)\n\n### Fixed \u{1f41e}\n\n- Fix anongit script using the wrong whitespace, causing gitlogparser to fail [#3030](https://github.com/MaibornWolff/codecharta/pull/3030)\n- Reshow suspicious metrics badge when calculated data has changed [#2997](https://github.com/MaibornWolff/codecharta/pull/2997)\n\n## [1.105.0] - 2022-09-06\n\n### Added \u{1f680}\n\n- Add an option to run MetricGardener before its parser if requested [#3015](https://github.com/MaibornWolff/codecharta/pull/3015)\n- Add missing documentation for MetricGardener importer [#3016](https://github.com/MaibornWolff/codecharta/pull/3016)\n\n### Changed\n\n- Increase the size of the close button to simplify closing the attribute sidebar [#3014](https://github.com/MaibornWolff/codecharta/pull/3014)\n\n### Fixed \u{1f41e}\n\n- Fix console error when clicking switch button in delta mode [#3023](https://github.com/MaibornWolff/codecharta/pull/3023)\n- Fix broken images to new document pages about how using SonarQube [#3012](https://github.com/MaibornWolff/codecharta/pull/3012)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate tool bar component to Angular [#3020](https://github.com/MaibornWolff/codecharta/pull/3020)\n- Remove obsolete AngularJS IsPresentationModeService and ShowOnlyBuildingsWithEdgesService [#3005](https://github.com/MaibornWolff/codecharta/pull/3005)\n\n## [1.104.1] - 2022-08-31\n\n### Fixed \u{1f41e}\n\n- Fix broken links to new document pages about how using SonarQube [#3009](https://github.com/MaibornWolff/codecharta/pull/3009)\n\n## [1.104.0] - 2022-08-31\n\n### Added \u{1f680}\n\n- Copy-to-Clipboard-Button to paste the top 10 files with highest metric values [#2942](https://github.com/MaibornWolff/codecharta/pull/2942), [#2996](https://github.com/MaibornWolff/codecharta/pull/2995)
    \n ![image](https://user-images.githubusercontent.com/46388280/184089603-ecfa8e31-8241-42a2-9954-2de554347381.png)
    \n ![image](https://user-images.githubusercontent.com/46388280/184089577-5cd2eec0-5293-4083-b629-0e3c5621047c.png)\n\n### Fixed \u{1f41e}\n\n- Correct file types now get appended to the name of the output file when using the interactive ccsh [#2914](https://github.com/MaibornWolff/codecharta/pull/2914)\n- Fix exit code handling and update integrationTest\'s golden_test.sh to cover all modules [#2988](https://github.com/MaibornWolff/codecharta/pull/2988)\n- Fix missing color pickers within edge metric options [#2993](https://github.com/MaibornWolff/codecharta/pull/2993)\n- Fix labels being displayed at an incorrect height and lines being disconnected from labels [#2991](https://github.com/MaibornWolff/codecharta/pull/2991)\n- Provides a list of metrics where no calculation could be performed in relation to a suspicion [#2996](https://github.com/MaibornWolff/codecharta/pull/2996)
    \n ![missing_values_suspicious_metrics](https://user-images.githubusercontent.com/31436472/187439165-77eda080-ceba-4bab-b077-4f6a2d6162b5.png)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate view cube component and its service to Angular [#2998](https://github.com/MaibornWolff/codecharta/pull/2998)\n\n## [1.104.0] - 2022-08-29\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate presentation mode button to Angular [#2938](https://github.com/MaibornWolff/codecharta/pull/2938)\n\n## [1.103.6] - 2022-08-17\n\n### Fixed \u{1f41e}\n\n- Fix bug in CompressionStreamHandler\'s input stream validation, that caused endless blocking reads from System.In [#2987](https://github.com/MaibornWolff/codecharta/pull/2987)\n\n## [1.103.5] - 2022-08-12\n\n### Changed\n\n- Update visualization readme file [#2932](https://github.com/MaibornWolff/codecharta/pull/2932)\n- Update the documentation for the usage of SonarQube [#2965](https://github.com/MaibornWolff/codecharta/pull/2965)\n\n### Fixed \u{1f41e}\n\n- Add permission to upload-assets action [#2979](https://github.com/MaibornWolff/codecharta/pull/2979), [#2982](https://github.com/MaibornWolff/codecharta/pull/2982)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate download button to Angular [#2973](https://github.com/MaibornWolff/codecharta/pull/2973)\n\n## [1.103.3] - 2022-08-10\n\n### Fixed \u{1f41e}\n\n- Update Ubuntu images package list as part of the wine action [#2976](https://github.com/MaibornWolff/codecharta/pull/2976)\n\n## [1.103.2] - 2022-08-10\n\n### Fixed \u{1f41e}\n\n- Highlight buildings on hover of file extension bar [#2969](https://github.com/MaibornWolff/codecharta/pull/2969)\n- Fix of the npm visualization installation under MacOS by version bumping nwjs [#2974](https://github.com/MaibornWolff/codecharta/pull/2974)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate file extension bar to Angular [#2968](https://github.com/MaibornWolff/codecharta/pull/2968)\n\n## [1.103.1] - 2022-08-09\n\n### Fixed \u{1f41e}\n\n- Change release action script in order to show changelog in release notes [#2970](https://github.com/MaibornWolff/codecharta/pull/2970)\n\n## [1.103.0] - 2022-08-09\n\n### Changed\n\n- Update links to demo website [#2961](https://github.com/MaibornWolff/codecharta/pull/2961)\n\n### Added \u{1f680}\n\n- Show tooltip with explanation for some metrics [#2957](https://github.com/MaibornWolff/codecharta/pull/2957)\n\n### Fixed \u{1f41e}\n\n- Fix installation instructions for Apple Silicon [#2956](https://github.com/MaibornWolff/codecharta/pull/2956)\n- Fix release tag [#2954](https://github.com/MaibornWolff/codecharta/pull/2954)\n- Prevent dark map on unhover [#2959](https://github.com/MaibornWolff/codecharta/pull/2959)\n- Zoom in/out time [#2959](https://github.com/MaibornWolff/codecharta/pull/2959)\n- Fix webpack build package being corrupt if zipped under linux by changing the compression path [#2934](https://github.com/MaibornWolff/codecharta/pull/2934)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Load metric templates lazily and migrate them to Angular [#2960](https://github.com/MaibornWolff/codecharta/pull/2960)\n\n## [1.102] - 2022-08-04\n\n### Changed\n\n- Changed storing format for camera position within custom views and scenarios. Loading of created custom views or scenarios in old format will stop working in 2023 [2880](https://github.com/MaibornWolff/codecharta/pull/2880)\n- Add error messages for the user to "Add Scenario Dialog" [#2928](https://github.com/MaibornWolff/codecharta/pull/2928)\n\n### Added \u{1f680}\n\n- Switch reference and comparison file by button click in delta mode [#2933](https://github.com/MaibornWolff/codecharta/pull/2933)\n ![image](https://user-images.githubusercontent.com/72517530/182630368-2d2b177d-8b4b-4850-8486-8d9afc7153c5.png)\n- Add display of changed files in delta mode (changed := metric values changed or list of applied metrics\n changed) [#2890](https://github.com/MaibornWolff/codecharta/pull/2890)\n ![image](https://user-images.githubusercontent.com/72517530/182631857-6192dea1-7a01-4684-90a6-d5da8615434a.png)\n- Load compressed files (cc.json.gz) via URL parameter [#2917](https://github.com/MaibornWolff/codecharta/pull/2917)\n\n### Fixed \u{1f41e}\n\n- Fix SonarImporter requesting no metrics from SonarQube when the list of metrics was left empty [#2913](https://github.com/MaibornWolff/codecharta/pull/2913)\n- Exclude edge metrics from custom scenarios, when there are no edge metrics available. Before it was impossible to apply those custom configs [#2928](https://github.com/MaibornWolff/codecharta/pull/2928)\n- Fix of NoSuchMethodException due to a call of method `readNBytes()` that is not available in Java 9 with replacement call `read()` [#2930](https://github.com/MaibornWolff/codecharta/pull/2930)\n- Keep selected metrics when excluding buildings [#2935](https://github.com/MaibornWolff/codecharta/pull/2935)\n- Update UI correctly when toggling between standard and delta mode [#2937](https://github.com/MaibornWolff/codecharta/pull/2937)\n\n## [1.101.1] - 2022-07-27\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Modify build script for GitHub pages in order to provide zipped maps.\n\n## [1.101.0] - 2022-07-26\n\n### Added \u{1f680}\n\n- Transform a metric gardener json file into a code charta json file, that can be correctly visualized [#2675](https://github.com/MaibornWolff/codecharta/pull/2875)\n\n### Changed\n\n- Restore previous selected files when switching back from delta to standard mode [#2891](https://github.com/MaibornWolff/codecharta/pull/2891)\n- Add more metrics that can be preselected when opening a cc.json file [#2907](https://github.com/MaibornWolff/codecharta/pull/2907) [#2908](https://github.com/MaibornWolff/codecharta/pull/2908)\n\n### Fixed \u{1f41e}\n\n- Let file selection always show what is actual rendered within the map [#2891](https://github.com/MaibornWolff/codecharta/pull/2891)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Improve performance by slightly delaying node-name popups and removing unused functionality [#2897](https://github.com/MaibornWolff/codecharta/pull/2897)\n\n## [1.100.0] - 2022-07-12\n\n### Added \u{1f680}\n\n- Add a description for the statements metric [#2883](https://github.com/MaibornWolff/codecharta/pull/2883)\n\n### Changed\n\n- Select matching metric combination based on available metrics [#2862](https://github.com/MaibornWolff/codecharta/pull/2862)\n- Unify UI of buttons in toolbar [#2857](https://github.com/MaibornWolff/codecharta/pull/2857)\n\n### Fixed \u{1f41e}\n\n- Fix resetting of color range within color settings panel [#2877](https://github.com/MaibornWolff/codecharta/pull/2877)\n- Fix resetting of colors in delta mode within color settings panel [#2873](https://github.com/MaibornWolff/codecharta/pull/2873)\n- Restore global settings on page load again [#2878](https://github.com/MaibornWolff/codecharta/pull/2878)\n- Fix \'undefinded\' being displayed as a metric description when no description was available [#2883](https://github.com/MaibornWolff/codecharta/pull/2883)\n- Fix windows standalone builds [#2881](https://github.com/MaibornWolff/codecharta/pull/2881)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate color settings panel to Angular [#2873](https://github.com/MaibornWolff/codecharta/pull/2873)\n\n## [1.99.1] - 2022-06-22\n\n### Fixed \u{1f41e}\n\n- Fix packaging of standalone app for macOS and Windows [#2847](https://github.com/MaibornWolff/codecharta/pull/2847)\n- Fix dialogparser test of sourcecode parser[#2860](https://github.com/MaibornWolff/codecharta/pull/2860)\n\n## [1.99.0] - 2022-06-21\n\n### Added \u{1f680}\n\n- Add interactive dialog support for the remaining parsers [#2833](https://github.com/MaibornWolff/codecharta/pull/2833) [#2836](https://github.com/MaibornWolff/codecharta/pull/2836) [#2842](https://github.com/MaibornWolff/codecharta/pull/2842) [#2843](https://github.com/MaibornWolff/codecharta/pull/2843) [#2846](https://github.com/MaibornWolff/codecharta/pull/2846)\n\n### Fixed \u{1f41e}\n\n- Fix analysis bug where importers would get stuck before file output [#2854](https://github.com/MaibornWolff/codecharta/pull/2854)\n- Use correct icon for height metric chooser again [#2851](https://github.com/MaibornWolff/codecharta/pull/2851)\n- Close height metric option instead of making it only invisible on close [#2853](https://github.com/MaibornWolff/codecharta/pull/2853)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate changelog dialog to Angular [#2849](https://github.com/MaibornWolff/codecharta/pull/2849)\n- Migrate node path panel to Angular [#2855](https://github.com/MaibornWolff/codecharta/pull/2855)\n\n## [1.98.0] - 2022-06-14\n\n### Added \u{1f680}\n\n- Add missing documentation for ccsh filters and csv exporter [#2831](https://github.com/MaibornWolff/codecharta/pull/2831)\n- Add support for compressed files to all analysis filters and to `check` validation [#2820](https://github.com/MaibornWolff/codecharta/pull/2820)\n\n### Changed\n\n- Update Readme file [#2837](https://github.com/MaibornWolff/codecharta/pull/2837)\n\n### Fixed \u{1f41e}\n\n- Default selected metrics on file changes when default scenario is not applicable [#2828](https://github.com/MaibornWolff/codecharta/pull/2828)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Remove old references to single mode states and actions [#2574](https://github.com/MaibornWolff/codecharta/pull/2841)\n- Rename multiple mode references to standard [#2574](https://github.com/MaibornWolff/codecharta/pull/2848)\n\n## [1.97.0] - 2022-05-31\n\n### Added \u{1f680}\n\n- Add interactive dialog support for the parsers [#2737](https://github.com/MaibornWolff/codecharta/pull/2737) [#2822](https://github.com/MaibornWolff/codecharta/pull/2822)
    \n ![m](https://user-images.githubusercontent.com/48621967/161549546-1463914e-c223-4912-acb1-db4e357e76c5.png)\n\n### Changed\n\n- Hide color metric range-slider in color metric options of ribbon bar in delta mode instead of disabling it [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n- Display max value of selected distribution metric in file extension bar [#2824](https://github.com/MaibornWolff/codecharta/pull/2824)\n- Display max value of selected metric in all metric chooser of ribbon bar [#2825](https://github.com/MaibornWolff/codecharta/pull/2825)\n\n### Fixed \u{1f41e}\n\n- Handle invalid input of range-slider correctly [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n- Use real color range min value instead of 0 and take color range min value into account for calculating initial first third of positive color [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n- Fix range-slider in case of min value equal to max value [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Track not only changes to color metric options by slider but also by related input field [#2797](https://github.com/MaibornWolff/codecharta/pull/2797)\n- Migrate center-map-button-component to Angular [#2809](https://github.com/MaibornWolff/codecharta/pull/2809)\n- Migrate the following components to Angular: globalSettingsButton.component, dialog.globalSettings.component, layoutSelection.component, sharpnessModeSelector.component, maxTreeMapFiles.component, maxTreeMapFiles.service, hideFlatBuildings.service, resetCameraIfNewFileIsLoaded.service [#2815](https://github.com/MaibornWolff/codecharta/pull/2815)\n- Migrate area-settings-panel-component to Angular [#2821](https://github.com/MaibornWolff/codecharta/pull/2821)\n\n## [1.96.0] - 2022-05-17\n\n### Changed\n\n- Remove all mentions of regular `.cc` `.json` `.gz` file extensions from file panel and sidebar [#2793](https://github.com/MaibornWolff/codecharta/pull/2793)\n\n### Fixed \u{1f41e}\n\n- Update slider of area metric options correctly on changes of related input field [#2787](https://github.com/MaibornWolff/codecharta/pull/2787)\n- Limit length of labels in legend panel [#2804](https://github.com/MaibornWolff/codecharta/pull/2804)\n- Prevent invalid input for margin in area metric options to be submitted [#2799](https://github.com/MaibornWolff/codecharta/pull/2799)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Introduce custom angular material theme [#2784](https://github.com/MaibornWolff/codecharta/pull/2784)\n- Migrate height-settings-panel-component [#2790](https://github.com/MaibornWolff/codecharta/pull/2790)\n- Fully migrate custom-config-component [#2760](https://github.com/MaibornWolff/codecharta/pull/2760)\n\n## [1.95.2] - 2022-04-19\n\n### Changed\n\n- Restrict upload in custom views menu to custom views. Custom views uploaded in the custom views menu are now allowed to have an arbitrary file suffix [#2773](https://github.com/MaibornWolff/codecharta/pull/2773)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate reset-settings-button-component to Angular [#2774](https://github.com/MaibornWolff/codecharta/pull/2774)\n\n### Fixed \u{1f41e}\n\n- Set files loaded via URL to multiple mode by default when delta mode is not selected [#2769](https://github.com/MaibornWolff/codecharta/pull/2769)\n\n## [1.95.1] - 2022-04-01\n\n### Changed\n\n- Display project name as file name (if not empty or blank) for loaded files via URL [#2767](https://github.com/MaibornWolff/codecharta/pull/2767)\n\n### Fixed \u{1f41e}\n\n- Fixes floor labels being drawn next to the map if margin was changed after map height is unequal to 1 [#2763](https://github.com/MaibornWolff/codecharta/pull/2763)\n- Fixes floor labels being stuck inside folder geometry when scaling [#2766](https://github.com/MaibornWolff/codecharta/pull/2766)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate metric-hovered-value-component to Angular [#2752](https://github.com/MaibornWolff/codecharta/pull/2752)\n\n## [1.95.0] - 2022-03-28\n\n### Added \u{1f680}\n\n- Focused gradient option for color metric. Only applies a gradient between the two set borders. [#2750](https://github.com/MaibornWolff/codecharta/pull/2750)\n\n### Changed\n\n- Mark SCMLogParserV2 as stable and deprecate SCMLogParser for Git [2725](https://github.com/MaibornWolff/codecharta/pull/2725)\n - Rename SCMLogParserV2 to GitLogParser\n - Rename SCMLogParser to SVNLogParser and remove git parsing\n\n### Fixed \u{1f41e}\n\n- Set initially correct attribute type of primary edge metric in attribute sidebar [#2731](https://github.com/MaibornWolff/codecharta/issues/2731)\n- Fix switching secondary metrics to median aggregation in attribute sidebar [#2630](https://github.com/MaibornWolff/codecharta/issues/2630)\n\n## [1.94.0] - 2022-03-21\n\n### Changed\n\n- Improve sonarimport help message [#2717](https://github.com/MaibornWolff/codecharta/pull/2717)\n- Remove blacklist entry on click of name as well [#2712](https://github.com/MaibornWolff/codecharta/pull/2712)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate add `custom config button` in ribbonbar to Angular [#2736](https://github.com/MaibornWolff/codecharta/pull/2736)\n\n## [1.93.0] - 2022-03-14\n\n### Added \u{1f680}\n\n- Show amount of added and removed files in attribute sidebar when delta mode is enabled and a folder is selected [#2701](https://github.com/MaibornWolff/codecharta/pull/2701/files)
    \n ![xs](https://user-images.githubusercontent.com/72517530/157468180-4e2d052b-63b8-4040-bb22-b633a24d3b8a.png)\n\n### Changed\n\n- Suspicious metrics and risk profile are calculated for all selected maps [#2721](https://github.com/MaibornWolff/codecharta/pull/2721)\n- Close search panel and ribbon bar dropdowns on every outside click [#2692](https://github.com/MaibornWolff/codecharta/issues/2692)\n\n### Fixed \u{1f41e}\n\n- Fix GameObjects importer edge cases [#2705](https://github.com/MaibornWolff/codecharta/pull/2705)\n\n## [1.92.1] - 2022-03-07\n\n### Fixed \u{1f41e}\n\n- Fix removing maps with long file names [#2696](https://github.com/MaibornWolff/codecharta/pull/2697)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate search-bar-component to Angular [#2686](https://github.com/MaibornWolff/codecharta/pull/2686)\n\n## [1.92.0] - 2022-03-01\n\n### Changed\n\n- Design and add a new CodeChara Logo [#2682](https://github.com/MaibornWolff/codecharta/pull/2682)
    \n ![xs](https://user-images.githubusercontent.com/48621967/155682925-ecc9fe5d-77de-4927-9c6a-b1059ae9eead.png)\n- Risk profile is now calculated for every occurring programming languages in selected file(s)[#2679](https://github.com/MaibornWolff/codecharta/pull/2679)\n\n## [1.91.1] - 2022-02-25\n\n### Fixed \u{1f41e}\n\n- Fix loading of files without edge metric never finished [#2680](https://github.com/MaibornWolff/codecharta/issues/2680)\n\n## [1.91.0] - 2022-02-21\n\n### Changed\n\n- Refactor edge metric panel [#2670](https://github.com/MaibornWolff/codecharta/pull/2670)\n - Remove edge metric option \'none\'\n - By default, the first edge metric is enabled when map has edge metrics\n - Disable edge metric panel when loaded map has no edge metrics\n\n### Fixed \u{1f41e}\n\n- Improve loading times by reducing the size of JavaScript files [#2667](https://github.com/MaibornWolff/codecharta/pull/2667)\n- Fix loading of files without edge metric never finished [#2680](https://github.com/MaibornWolff/codecharta/issues/2680)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate loading gifs to Angular and remove now unused `isLoadingMap.service` [#2668](https://github.com/MaibornWolff/codecharta/pull/2668)\n\n## [1.90.0] - 2022-02-15\n\n### Added \u{1f680}\n\n- Parse and import GameObjects file structure into cc.json on upload [#2646](https://github.com/MaibornWolff/codecharta/pull/2646)\n\n### Fixed \u{1f41e}\n\n- Fix flaky string comparison possibly due to puppeteer update [#2659](https://github.com/MaibornWolff/codecharta/pull/2659)\n- Fix show garbage bin next to the loaded maps [#2647](https://github.com/MaibornWolff/codecharta/pull/2647)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Run standalone version of CodeCharta in Node.js web target (and disable [#1314](https://github.com/MaibornWolff/codecharta/issues/1314)), so that local storage is available [#2637](https://github.com/MaibornWolff/codecharta/pull/2637)\n\n## [1.89.0] - 2022-02-07\n\n### Added \u{1f680}\n\n- Add area metric option to invert the amount of area, which is used for the nodes [#2626](https://github.com/MaibornWolff/codecharta/pull/2626)\n- Add button to clear search field [#2638](https://github.com/MaibornWolff/codecharta/pull/2638)
    \n ![xs](https://user-images.githubusercontent.com/48218172/151999974-3b8a7cca-52b2-4757-b3c0-e3b2e36ad237.png)\n\n### Changed\n\n- New buttons for selecting attribute types [#2631](https://github.com/MaibornWolff/codecharta/pull/2631)\n ![xs](https://user-images.githubusercontent.com/72517530/151762455-07e47bf5-18aa-4721-a60a-6dfee057e1e5.png)\n- Migrate context menu with slightly new layout touch to Angular. Migrated version prevents rendering outside of view [#1661](https://github.com/MaibornWolff/codecharta/issues/1661)\n\n### Fixed \u{1f41e}\n\n- Remove delay of keeping a building highlight permanently [#2641](https://github.com/MaibornWolff/codecharta/issues/2641)\n\n## [1.88.0] - 2022-01-24\n\n### Changed\n\n- Rename custom configs to custom view [#2625](https://github.com/MaibornWolff/codecharta/pull/2625)\n- Combine single and multiple mode into standard mode [#2578](https://github.com/MaibornWolff/codecharta/pull/2578)\n ![xs](https://user-images.githubusercontent.com/72517530/150765617-2d66eb78-2c26-45c5-b63b-f84994ed88ab.png)\n- Improve file validation handling and provide more descriptive import messages [#2604](https://github.com/MaibornWolff/codecharta/pull/2604)\n ![xs](https://user-images.githubusercontent.com/48621967/150532207-f3b482ed-3a14-43c0-b1a3-80ac4c25d5e0.png)\n\n### Fixed \u{1f41e}\n\n- Fix Image not shown in what is new dialog [#2610](https://github.com/MaibornWolff/codecharta/pull/2610)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n - Unfocus focused node only when map starts to load and not also when map has finished loading. This shouldn\'t change any behavior for the user [#2614](https://github.com/MaibornWolff/codecharta/pull/2614)\n\n## [1.87.1] - 2022-01-17\n\n### Changed\n\n- User-friendly renaming for display quality options [#2601](https://github.com/MaibornWolff/codecharta/pull/2601)\n\n### Fixed \u{1f41e}\n\n- Fix color of selected building in delta mode [#2603](https://github.com/MaibornWolff/codecharta/pull/2603)\n- Fix link to news page when clicking \'Know more\' button changelog dialog [#2602](https://github.com/MaibornWolff/codecharta/pull/2602)\n- Fix Image not shown in what is new dialog [#2610](https://github.com/MaibornWolff/codecharta/pull/2610)\n\n## [1.87.0] - 2022-01-11\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate `unfocus-button-component` to Angular.\n\n### Changed\n\n- Remove suspicious metrics from custom map configurations [#2564](https://github.com/MaibornWolff/codecharta/pull/2564).\n- Add \'show/hide non-applicable CustomConfigs\' button to Custom Configs menu [#2591](https://github.com/MaibornWolff/codecharta/pull/2591).\n\n## [1.86.0] - 2021-12-20\n\n### Added \u{1f680}\n\n- Add 3D export feature for 3D printing [#2561](https://github.com/MaibornWolff/codecharta/pull/2561).
    \n ![xs](https://user-images.githubusercontent.com/48621967/146173663-e0ea177e-6ed8-4ddb-bd11-410415541e9f.png)\n ![l](https://user-images.githubusercontent.com/48621967/146174397-42a6e475-ed2f-47c0-ba9c-4f8304d53399.png)\n\n### Changed\n\n- Replace all color pickers in the context of ongoing Angular migration [#2560](https://github.com/MaibornWolff/codecharta/pull/2560).\n\n### Fixed \u{1f41e}\n\n- Fix showing names of custom configs properly [#2557](https://github.com/MaibornWolff/codecharta/pull/2557).\n- Fix minor memory leak in context menu for code map buildings [#2565](https://github.com/MaibornWolff/codecharta/issues/2565).\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Migrate legend panel to Angular [#2560](https://github.com/MaibornWolff/codecharta/pull/2560).\n\n## [1.85.0] - 2021-12-13\n\n### Fixed \u{1f41e}\n\n- Fix delta values of secondary metrics not shown in delta mode within attribute side bar [#2539](https://github.com/MaibornWolff/codecharta/issues/2539).\n- Use icon tag instead of font awesome icon [#2537](https://github.com/MaibornWolff/codecharta/pull/2537).\n- Rename text for placeholder of metric chooser [#2547](https://github.com/MaibornWolff/codecharta/pull/2547)\n- Fix attribute type selector of primary edge metric not shown [#2528](https://github.com/MaibornWolff/codecharta/issues/2528).\n- Identical files and files with identical file names but different hashes can be loaded [#2548](https://github.com/MaibornWolff/codecharta/pull/2548)\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Remove `secondaryMetrics` from store and remove `secondaryMetrics.service` as the data can be derived from selected node [#2527](https://github.com/MaibornWolff/codecharta/pull/2527).\n- Migrate `attribute-side-bar-component` to Angular [#2527](https://github.com/MaibornWolff/codecharta/pull/2527).\n- Switch from Webpack 4 Loaders to Asset Module to load icons properly with css-loader 6.x [#2542](https://github.com/MaibornWolff/codecharta/pull/2542).\n\n### Removed \u{1f5d1}\n\n- Remove notification dialog when deleting a custom config [#2553](https://github.com/MaibornWolff/codecharta/pull/2553)\n\n## [1.84.1] - 2021-11-29\n\n### Fixed \u{1f41e}\n\n- Fix compressed files not being loaded ([#2524](https://github.com/MaibornWolff/codecharta/pull/2525))\n\n## [1.84.0] - 2021-11-22\n\n### Changed\n\n- Improved the UI and usability of the Suspicious Metrics Feature ([#2376](https://github.com/MaibornWolff/codecharta/pull/2494))
    \n - The Metrics and the Analysis are now split in two menus
    \n ![xs](https://user-images.githubusercontent.com/48621967/141795078-bb856f53-1bc3-4c09-8be5-d031899835ae.png)\n - The Suspicious Metrics are now sorted with the Very High Risk on top
    \n ![m](https://user-images.githubusercontent.com/48621967/141793011-1bfc0e19-bd3a-4bd2-af70-c3dd472821b6.png)\n - The bar in the analysis shows the percentages
    \n ![m](https://user-images.githubusercontent.com/48621967/141791111-564778fa-b767-4ee4-b024-6856f1a79b4b.png)\n\n### Fixed \u{1f41e}\n\n- Fix showing labels when weighted gradient on yellow buildings in color metric options are enabled ([#2511](https://github.com/MaibornWolff/codecharta/pull/2511))\n- Fix rounding of the sum of percentages in risk profile ([#2393](https://github.com/MaibornWolff/codecharta/pull/2516))\n- Fix legend panel not having a background ([#2422](https://github.com/MaibornWolff/codecharta/pull/2510))\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Remove `nodeSearch.service.ts` and `searchedNodePaths` from store as they can be derived from `searchPattern` ([#2495](https://github.com/MaibornWolff/codecharta/pull/2495)).\n- Refactor where metric data are calculated ([#2514](https://github.com/MaibornWolff/codecharta/pull/2514)).\n- Migrate `attribute-type-selector-component` to Angular ([#2519](https://github.com/MaibornWolff/codecharta/pull/2519)).\n\n## [1.83.1] - 2021-11-10\n\n### Fixed \u{1f41e}\n\n- Fix loading files from URL in Web Demo ([#2494](https://github.com/MaibornWolff/codecharta/pull/2494))\n\n## [1.83.0] - 2021-11-09\n\n### Fixed \u{1f41e}\n\n- Fix unwanted calculations of suspicious metrics when experimental features are disabled ([#2471](https://github.com/MaibornWolff/codecharta/pull/2471))\n- Fix UI issues in the configuration panel ([#2322](https://github.com/maibornwolff/codecharta/issues/2322))\n- Fix tooltip of sorting order button in map tree view showing wrong sorting order ([#2473](https://github.com/maibornwolff/codecharta/issues/2473))\n\n### Changed\n\n- Calculate MD5 checksum when generating .cc.json files ([#2411](https://github.com/MaibornWolff/codecharta/pull/2450))\n\n## [1.82.0] - 2021-10-18\n\n### Fixed \u{1f41e}\n\n- Fix what\'s new section including the last opened version ([#2447](https://github.com/MaibornWolff/codecharta/pull/2453))\n- Fix unfocus button text not showing correctly ([#2439](https://github.com/MaibornWolff/codecharta/pull/2439))\n\n### Changed\n\n- Folders in the Folder structure view of the top left come now always before any files, regardless of the sort order.\n\n## [1.81.0] - 2021-10-11\n\n### Fixed \u{1f41e}\n\n- Fix color picker not being usable ([#2439](https://github.com/MaibornWolff/codecharta/pull/2439))\n- Fix Changelog inconsistencies ([#2425](https://github.com/MaibornWolff/codecharta/pull/2425))
    \n ![xl](https://user-images.githubusercontent.com/48621967/135866024-ee06119a-1a62-4912-90df-ac3aa9216608.PNG)\n- Fix memory and performance issues related to drawing labels on floors/folders ([#2348](https://github.com/MaibornWolff/codecharta/issues/2348)).\n- Hides legend block if label description is not available and adds new metric descriptions ([#2377](https://github.com/maibornwolff/codecharta/issues/2377)).\n\n## [1.80.0] - 2021-10-04\n\n### Added \u{1f680}\n\n- Adds feature to display building colors as a gradients ([#2327](https://github.com/MaibornWolff/codecharta/issues/2327)).\n - "Weighted Gradient" only mixes colors in a small interval around the preset values.\n - "True Gradient" mixes colors from the 0 to the highest value, the two preset color range values determine the balance.\n - "Absolute" represents the old behaviour without gradients.
    \n ![l](https://user-images.githubusercontent.com/42114276/134924267-245c65c9-2893-43a8-9a0a-17e3182bf15a.JPG)\n\n### Fixed \u{1f41e}\n\n- Fix broken file/node search #2389\n- Fix changelog inconsistencies ([#2425](https://github.com/MaibornWolff/codecharta/pull/2425))\n\n## [1.79.0] - 2021-09-20\n\n### Added \u{1f680}\n\n- Add metric descriptions to the frontend and show a translation next to the entry ([#2330](https://github.com/MaibornWolff/codecharta/issues/2330))
    \n \n- An option has been added to the global settings to enable copying screenshots to clipboard instead of saving them in a file ([#2326](https://github.com/MaibornWolff/codecharta/issues/2326))
    \n ![xl](https://user-images.githubusercontent.com/57844849/131342771-a3c637e3-8241-49aa-8d51-71e3a8d38aef.png)\n- Add changelog guidelines ([#2358](https://github.com/MaibornWolff/codecharta/pull/2358))\n- A changelog dialog with the latest additions to CodeCharta appears on version update ([#1315](https://github.com/MaibornWolff/codecharta/pull/2342))
    \n ![xl](https://user-images.githubusercontent.com/48621967/131360878-a8e1ef40-7f73-4de7-8b3f-4c8dc21448da.PNG)\n\n### Fixed \u{1f41e}\n\n- Fix broken method call in screenshot feature.\n- Improve changelog entries.\n\n### Changed\n\n- Changing the background color and remove "outgoing" and "incoming" edges from the legend, if not applicable ([#2330](https://github.com/MaibornWolff/codecharta/issues/2330))\n- Improve the user experience for the AI Feature "Suspicious Metrics and Risk Profiles" and enable it for any programming language ([#2362](https://github.com/MaibornWolff/codecharta/pull/2362))
    \n ![m](https://user-images.githubusercontent.com/26900540/133250867-adf4583d-9d0e-4f81-b8a7-1407b93d9f40.png)\n\n## [1.78.0] - 2021-09-06\n\n### Added \u{1f680}\n\n- A changelog dialog with the latest additions to CodeCharta appears on version update ([#1315](https://github.com/MaibornWolff/codecharta/issues/1315))\n- Add documentation for SCMLogParserV2 ([#1349](https://github.com/maibornwolff/codecharta/issues/1349))\n\n### Fixed \u{1f41e}\n\n- Empty temporary label during hovering ([#2328](https://github.com/maibornwolff/codecharta/issues/2328))\n- Show the screenshot hotkey in the screenshot title ([#2323](https://github.com/maibornwolff/codecharta/issues/2323))\n- Improved rendering performance ([#2345](https://github.com/MaibornWolff/codecharta/pull/2345))\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Update GH-Pages and visualization dependencies ([#2356](https://github.com/maibornwolff/codecharta/issues/2356))\n\n## [1.77.0] - 2021-07-30\n\n### Added \u{1f680}\n\n- The "Color Metric Options" panel and "Legend" panel display the maximum value of the selected metric instead of infinite. ([#1520](https://github.com/maibornwolff/codecharta/issues/1520))\n- Mark color-section as unimportant in delta mode ([#769](https://github.com/maibornwolff/codecharta/issues/769))\n\n### Changed\n\n- Small ui improvements added. ([#1881](https://github.com/MaibornWolff/codecharta/issues/1881))\n- Numbers/Percentages always show in the distribution bar([#1540](https://github.com/MaibornWolff/codecharta/issues/1540))\n - Toggle between percentage and absolute numbers by clicking anywhere on the (expanded) distribution bar.\n - The old expanded distribution bar is now accessible through a button.\n\n### Fixed \u{1f41e}\n\n- It is no longer possible to exclude all files on the map ([#901](https://github.com/MaibornWolff/codecharta/issues/901))\n\n## [1.76.0] - 2021-07-13\n\n### Added \u{1f680}\n\n- Custom metric scenarios which include the \'Color-Metric\' (rloc) will now also save any changes made to the color scheme.\n\n### Fixed \u{1f41e}\n\n- Performance improvements when loading new files. ([#1312](https://github.com/maibornwolff/codecharta/issues/1312))\n\n## [1.75.0] - 2021-07-05\n\n### Added \u{1f680}\n\n- Imported files are now compressed by default. Use the -nc parameter to uncompress the files. ([#1702](https://github.com/maibornwolff/codecharta/issues/1702))\n- Export the current view as a png image by using "Ctrl+Alt+S" or clicking the corresponding button ([#674](https://github.com/MaibornWolff/codecharta/issues/674))\n- Show only labels of buildings according to a chosen color ([#1347](https://github.com/MaibornWolff/codecharta/issues/1347))\n- New buttons to reset the color hex values and color metric thresholds separately ([#1613](https://github.com/MaibornWolff/codecharta/issues/1613))
    \n ![l](https://user-images.githubusercontent.com/50167165/121889295-5b071780-cd19-11eb-87ef-aba0ab0c6c09.png)\n\n### Changed\n\n- Metric aggregations now work as intended and are available from the sidebar when selecting folders ([#1953](https://github.com/MaibornWolff/codecharta/issues/1953))\n- Opening new files does no longer remove old ones.\n - Already loaded files can be individually removed.\n - The \'Multiple\' view will select the latest files.
    \n ![l](https://user-images.githubusercontent.com/50167165/123071234-c6856f00-d414-11eb-8326-e25f614e75d7.png)\n\n### Fixed \u{1f41e}\n\n- It is now possible to rotate the map by rotating the view cube ([#353](https://github.com/MaibornWolff/codecharta/issues/353))\n\n## [1.74.0] - 2021-05-31\n\n### Added \u{1f680}\n\n- SonarImport: SonarQube 8.8 support. Older versions are still supported.\n\n### Fixed \u{1f41e}\n\n- Only show labels for building included in the search\n- Color slider not initialized correctly ([#1592](https://github.com/MaibornWolff/codecharta/issues/1592))\n\n## [1.73.0] - 2021-05-10\n\n### Added \u{1f680}\n\n- Improve descriptions ([#1879](https://github.com/MaibornWolff/codecharta/issues/1879))\n

    \n ![m](https://user-images.githubusercontent.com/57844849/115393175-b2897b00-a1e1-11eb-8601-d2128f3469a3.png)\n\n### Fixed \u{1f41e}\n\n- Excluding in delta mode is broken ([#1578](https://github.com/MaibornWolff/codecharta/issues/1578))\n (Inclusion and exclusion of files using wildcard searches in the flatten and exclude operations)\n- Fix labels and lines missing a connection in some cases([#1716](https://github.com/MaibornWolff/codecharta/issues/1716))\n- Ribbons resizing when expanding ([#1952](https://github.com/MaibornWolff/codecharta/issues/1952))\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Fix breaking changes with newest three-js version([#1877](https://github.com/MaibornWolff/codecharta/issues/1877))\n\n## [1.72.0] - 2021-04-22\n\n### Added \u{1f680}\n\n- Hints for Global Settings ([#1715](https://github.com/MaibornWolff/codecharta/issues/1715))\n- Indicate total nodes and excluded / flattened nodes in file explorer ([#1880](https://github.com/MaibornWolff/codecharta/issues/1880))\n- Add path to node context menu ([#1667](https://github.com/MaibornWolff/codecharta/issues/1667))\n\n### Fixed \u{1f41e}\n\n- Made the header semi responsive ([#1037](https://github.com/MaibornWolff/codecharta/issues/1037))\n\n## [1.71.2] - 2021-03-16\n\n### Fixed \u{1f41e}\n\n- DevOps pipeline changes\n- Fixed web visualization in github\n\n## [1.71.1] - 2021-03-16\n\n### Fixed \u{1f41e}\n\n- DevOps pipeline changes\n\n## [1.71.0] - 2021-03-16\n\n### Changed\n\n- Disable unready AI function\n- Fix linter errors\n- Fix editorconfig\n\n## [1.70.2] - 2021-03-12\n\n### Fixed \u{1f41e}\n\n- DevOps pipeline changes\n- Project naming for Docker deployment\n\n## [1.70.1] - 2021-03-12\n\n### Fixed \u{1f41e}\n\n- DevOps pipeline changes\n\n## [1.70.0] - 2021-03-09\n\n### Changed\n\n- Render on demand ([#1728](https://github.com/MaibornWolff/codecharta/issues/1728))\n\n### Fixed\n\n- Memory leaks\n\n## [1.69.0] - 2021-02-23\n\n### Added \u{1f680}\n\n- Added WebGL FXAA antialias & PixelRatio Options in order to achieve better resolution on high dpi displays(https://github.com/MaibornWolff/codecharta/pull/1551).

    \n ![option dialog](https://user-images.githubusercontent.com/74670211/106582136-f4404900-6543-11eb-8f5b-5e1ec47457c7.png)\n There are 4 available modes:\n - **standard mode**: the pixel density is only applied to the small cube with standard browser aliasing\n - **pixel ratio without aliasing**: no antialiasing is used\n - **pixel ration with FXAA**: Nvidia FXAA antialiasing shader is used as an alisaing technique. this has better perfromance the standard browser aliasing aliasing\n - **pixel ration with MSAA**: this is the best aliasing quality, slower then FXAA.\n- Added GPU Stats (only in dev mode)\n\n### Fixed \u{1f41e}\n\n- Unfocus now respects the focus depth ([#1099](https://github.com/MaibornWolff/codecharta/issues/1099))\n- Track anonymous usage data also for older CodeCharta API versions and fix some minor bugs.\n\n## [1.68.0] - 2021-02-08\n\n### Added \u{1f680}\n\n- A new experimental feature has been added to track anonymous metadata of a currently loaded map.\n - Neither the map name nor file names will be tracked but anonymous metric values and statistics like (average, min, max).\n - The tracked data will not be sent to a server yet. Instead, it can be downloaded as a json file in the Global Settings for now.\n - It is planned to send the anonymous data to a server in the future, so that we can collect tracking data automatically.\n - ![example of new feature](https://user-images.githubusercontent.com/26900540/106896300-ac5f2480-66f1-11eb-8096-246d1733c0ee.png)\n\n### Fixed \u{1f41e}\n\n- Errors occurred in delta mode if names of root folders were different\n- Switching maps in delta mode now shows the differences between the maps ([#1606](https://github.com/maibornwolff/codecharta/issues/1606))\n- Label over hovered building not shown for height Metric value of zero ([#1623](https://github.com/MaibornWolff/codecharta/issues/1623))\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- CodeChartaStorage class has been introduced to dynamically store values either on disk (standalone version) or in the localStorage (web version). This is the first step to solve [#684](https://github.com/MaibornWolff/codecharta/issues/684).\n\n## [1.67.0] - 2021-01-26\n\n### Added \u{1f680}\n\n- Allow opening files from local drive by double clicking on the buildings or clicking on their names ([#1314](https://github.com/MaibornWolff/codecharta/issues/1314))\n - Only available in the standalone version!\n - files are opened in associated third-party applications\n - web-links are opened in a browser window\n- Allow customized color in the node context menu ([#1556](https://github.com/MaibornWolff/codecharta/issues/1556)).\n\n [!example of new feature #1556](https://user-images.githubusercontent.com/3596742/104302048-a007f300-54c8-11eb-86c1-287483884783.png)\n\n### Fixed \u{1f41e}\n\n- fixed wrong max tree map visibility ([#1624](https://github.com/MaibornWolff/codecharta/issues/1624))\n- fixed incorrect label placement on delta maps that share no common nodes ([#1686](https://github.com/MaibornWolff/codecharta/issues/1686))\n\n## [1.66.0] - 2021-01-18\n\n### Added \u{1f680}\n\n- Allow color of buildings to be customizable in the ribbon bar and in the legend. Colors of edges are now customizable as well ([#1533](https://github.com/MaibornWolff/codecharta/issues/1533))

    \n ![example of new feature](https://user-images.githubusercontent.com/3596742/103547861-3c1c7380-4ea5-11eb-8df2-541caf65b9df.png)\n\n### Fixed \u{1f41e}\n\n- Global settings not reverting to default ones ([#1632](https://github.com/MaibornWolff/codecharta/issues/1632))\n- Maximum treemap files shown in squarified node ([#1624](https://github.com/MaibornWolff/codecharta/issues/1624))\n- Wrong folder names and colors in legend when using the highlight folder feature ([#1555](https://github.com/MaibornWolff/codecharta/issues/1555))\n- Temporary labels are placed at the wrong height for scaled buildings ([#1618](https://github.com/MaibornWolff/codecharta/issues/1618))\n- Visible labels will disappear or placed lower for scaled buildings ([#1619](https://github.com/MaibornWolff/codecharta/issues/1619))\n- Unnecessary break line for secondary metrics ([#1093](https://github.com/MaibornWolff/codecharta/issues/1093))\n\n## [1.65.0] - 2020-12-23\n\n### Added \u{1f680}\n\n- Highlight label while hovering over building, draw a temporary label for hovered buildings that have none ([#1529](https://github.com/MaibornWolff/codecharta/issues/1529))\n- Integrated streetlayout ([#904](https://github.com/MaibornWolff/codecharta/issues/904))\n ![cc_street_ccv](https://user-images.githubusercontent.com/63230711/78872405-87eed900-7a49-11ea-984a-c0ef738779b9.png)\n In street layout file nodes are displayed as buildings and directories are displayed as streets. A street layout has the advantage of a more apparent directory structure and stable positioning of nodes after metric changes.\n two different Street layout are integrated : - StreetLayout : as described above. - TMStreet : a combination of street layout and squarified layout.\n\n### Changed\n\n- The button to see excluded buildings is now merged into the flattened button. Excluded and flattened buildings can now be seen by opening the building with the eye slash icon ([#1543](https://github.com/MaibornWolff/codecharta/issues/1543))\n\n### Fixed \u{1f41e}\n\n- Height scaling not applied to buildings ([#1595](https://github.com/MaibornWolff/codecharta/issues/1595)))\n- Fixed multiple label positioning/scaling bugs\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- e2e flaky test ([#1322](https://github.com/MaibornWolff/codecharta/issues/1322))\n\n## [1.64.0] - 2020-12-15\n\n### Added \u{1f680}\n\n- Download and upload Custom Configurations is now possible ([#1472](https://github.com/MaibornWolff/codecharta/issues/1472))\n\n - Open the Custom Configs menu in the toolbar on top of the map\n - Next to the `plus` Button you can see two new buttons: Upload and download.\n - Download: If you already have added Custom Configs you can download them by clicking the download button.\n - Custom Configs which are applicable for the currently selected map(s) will be downloaded as `.cc.config.json` files.\n - Upload: Click the upload button and specify your Custom Config file (`.cc.config.json`)\n - Already existing Custom Configs will be skipped.\n - Different Custom Configs with same names will be renamed.\n - Another way to upload your Custom Configs is to upload a `.cc.json` file together with one or multiple `.cc.config.json` files using the default `Load .cc.json map` button in the upper left corner.\n - The Configs are stored to the local storage of your browser.\n - If a limit of `768KB` is exceeded you will see a warning when trying to add a new Custom Config.\n - You can click the displayed "download and purge" button to download/backup at least 6 months old Configs and then purge them from the local storage to make space for new ones.\n - If we cannot purge any Configs, you might have to do that by your own by deleting specific Configs manually.\n\n### Changed\n\n- Increase possible margin size ([#1490](https://github.com/MaibornWolff/codecharta/pull/1490))\n - change displayed margin value from % to pixel\n - change dynamic margin value to a default margin value that should fit the map\n\n### Fixed \u{1f41e}\n\n- Re-enabled color selection for folders and on hover ([#1544](https://github.com/MaibornWolff/codecharta/pull/1544))\n- Labels do not take delta height into account ([#1523](https://github.com/MaibornWolff/codecharta/issues/1523))\n- The calculation of the map resolution scale factor was wrong ([#1491](https://github.com/MaibornWolff/codecharta/issues/1491))\n - The factor is used to decrease the map resolution especially for big maps to avoid performance issues.\n - Now only the selected maps will be considered for the calculation. Unselected maps will be skipped.\n\n## [1.63.0] - 2020-11-30\n\n### Added \u{1f680}\n\n- Add the folder name onto the floor on the first 3 layers to get a better overview of the map ([#1491](https://github.com/MaibornWolff/codecharta/issues/1491))\n- UX Improvements related to labels allowing for user interaction #1404\n - Labels can be hovered, hovering their corresponding node\n - Selecting a label will select the corresponding node\n - Hovering a label will remove its transparency and move towards the user:\n - If other labels obstruct the hovered label it will move to the front\n - Increased the transparency of other labels; this makes it easier to distinguish the hovered label\n - Increase the amount of labels to 250.\n- Show file count of folders in Attribute-Side-Bar ([#1255](https://github.com/MaibornWolff/codecharta/issues/1255)):\n ![img showing file count of folder](https://user-images.githubusercontent.com/3596742/100371884-be915800-3008-11eb-89f5-ed57c62680cc.png)\n\n### Fixed \u{1f41e}\n\n- Buildings are flattened when delta is active #824.\n- Selected Building now stays highlighted when map is rotated #1498\n\n## [1.62.0] - 2020-11-12\n\n### Added \u{1f680}\n\n- A new option in the Global Settings allows to enable/disable experimental features #1318\n - Click on the settings button in the upper right corner to open the Global Settings dialog.\n - Activate/Deactivate the new option "Enable Experimental Features"\n - The features will be shown/hidden accordingly\n- "CustomViews", the first experimental feature has been added #1318\n\n - It must be enabled by activating the new option in the Global Settings dialog as mentioned before.\n - You can save your current map configurations to replay/restore them later.\n - A saved CustomView can only be applied for it\'s original map.\n - This will enable you to be more efficient in analizing projects by switching between different CustomViews.\n\n- NodeContextMenu now contains option to keep buildings highlighted #1323\n\n- Fixed Folder algorithm supports nested (parent-child) Fixed Folders #1431\n 1. Define children of a Fixed Folder also as Fixed Folders by adding the `fixedPosition` attribute manually in `.cc.json`.\n 1. All children of a parent Fixed Folder must be fixed.\n 1. Read the how-to guide for further information: https://maibornwolff.github.io/codecharta/how-to/fixate_folders_with_a_custom_cc_json/\n\n### Changed\n\n- Improved search\n\n 1. Not providing any star in the search bar from now on expects the input to\n be a wildcard search. Thus, files are going to match paths that have\n leading or following characters. E.g., `oo` is going to match\n `/root/foobar`.\n 1. To use the explicit former search mode, wrap the search entry in quotes as\n in: `"oo"`. This would only match filenames that are exactly `oo`.\n 1. The search field accepts multiple search entries at once, separated by\n commata. `foo,bar` is going to search for both `*foo*` and `*bar*` and\n marks all matched files accordingly.\n 1. It is possible to invert the search with a leading exclamation mark as in\n `!foobar`. That will match any file that does not match `*foobar*`. It is\n only possible to invert the complete input, not individual search entries.\n 1. Whitespace handling changed to ignore leading whitespace.\n\n- Distribution metric #1188\n\n 1. set rloc to default distribution metric, showing language percentages for real lines of code, if available. Else set to unary to show language distribution over files\n\n- Improved file sorting in the file overview of the search bar\n - Numbers are sorted naturally\n - Characters are compared with their base character (e.g., `a` is now next to `\xe1`).\n- Label metric not shown by default anymore\n\n## [1.61.0] - 2020-10-30\n\n### Changed\n\n- Disable highlighting buildings during map movement #1432\n\n### Fixed \u{1f41e}\n\n- File tree/flattened/excluded overlay visualization is buggy #1269\n- EdgePreview on Map broken when selecting zero #1276\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Schedules and merge retries of dependabot dependency updates changed\n\n## [1.60.2] - 2020-10-24\n\n### Fixed \u{1f41e}\n\n- Mouse cursor flickering #1170\n- Fix flipping map when clicking any option in the toolbar #1410\n- Fix edge metric not working correctly\n\n## [1.60.1] - 2020-10-20\n\n### Fixed \u{1f41e}\n\n- Issue with first start without an internet connection not working#1266\n- Issue with ribbon bar sizes for opened cards #1035\n\n## [1.60.0] - 2020-10-16\n\n### Added \u{1f680}\n\n- Parsing feedback with progressbar and probable ETA for parsers and SonarImporter #847\n- Mark node names and make the names clickable for nodes that have a link to them #1313\n- Indicate the metric name next to a shown value in a new line on labels #1035\n- Checkboxes to display metric names and values and to display node names on labels #1035\n- Mark node names and make the names clickable for nodes that have a link to them #1313\n\n### Changed\n\n- Label design #1035\n\n### Fixed \u{1f41e}\n\n- First start without an internet connection of standalone not working #1266\n- Comparing a map in delta mode shows the correct differences\n- This mainly applies to maps compared with itself while it also fixes some other minor miscalculations\n- File extensions detection is improved\n- Zooming in and out the map will now close the node context menu #1324\n - Improved and simplified event handling in NodeContextMenu component\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Improved performance of multiple operations (e.g., delta mode).\n\n## [1.59.0] - 2020-10-09\n\n### Added \u{1f680}\n\n- New EXPERIMENTAL SCMLogParser version\n- Improved performance around 300% when parsing CodeCharta\n- Improved memory usage\n- Fixed issue with old parser creating incorrect nodes in CodeCharta #871\n- ATTENTION: the parser is experimental, therefore some potential issues might remain, e.g. potentially an unhandled edge case when parsing node\n- To use the new parser a reversed git log is needed, as well as a git file list, refer to `ccsh scmlogparserv2 -h` for additional information\n\n### Fixed \u{1f41e}\n\n- Color-Metric slider is set and activated in the map accordingly to the released sliderbutton #1319\n- Deselcting a building will instantly dehighlight the buildings which were connected through edges #890\n\n## [1.58.1] - 2020-10-02\n\n### Fixed \u{1f41e}\n\n- Showing wrong edges when hovering a building after selecting one #1137\n\n## [1.58.0] - 2020-10-02\n\n### Added \u{1f680}\n\n- Add active color metric to the top of the legend panel #1278\n- SourceCodeParser: Java 14 Support #1277\n\n## [1.57.4] - 2020-09-25\n\n### Fixed \u{1f41e}\n\n- Metric-Settings-Panels closed when clicking an option inside the panel #1258\n- Improve loading and rendering maps performance\n\n## [1.57.3] - 2020-09-18\n\n### Fixed \u{1f41e}\n\n- Improve overall performance for loading and rendering maps\n- Improve error messages when a file can\'t be loaded with the URL parameters\n\n## [1.57.2] - 2020-09-11\n\n### Fixed \u{1f41e}\n\n- New API version 1.2 not set correctly in analysis\n\n## [1.57.1] - 2020-09-11\n\n### Fixed \u{1f41e}\n\n- Validation of unique filenames not checking for the complete path and instead throwing an error on duplicate filename\n\n## [1.57.0] - 2020-09-11\n\n### Added \u{1f680}\n\n- `fixedPosition` as a new property in the `cc.json` that allows to fixate folders in the map\n\n### Changed\n\n- `cc.json` version updated to `1.2`\n\n### Fixed \u{1f41e}\n\n- Compressed `cc.jsons (.gz) not marked as accepted when selecting a file in the file chooser\n\n### Docs \u{1f50e}\n\n- [How-To: Fixate Folders in the `cc.json`](https://maibornwolff.github.io//codecharta/how-to/fixate_folders_with_a_custom_cc_json/)\n- CC-Json-API changes\n\n## [1.56.0] - 2020-09-04\n\n### Fixed \u{1f41e}\n\n- Improve performance when switching to multiple or delta mode when edges are available\n- Scenario with EdgeMetric is only appliable when EdgeMetric is existing for the Map #1201\n- Starting standalone version results in infinite loading loop #1202\n- Expanded metric selection will close when clicking anywhere outside of that selection #1036\n\n## [1.55.0] - 2020-08-28\n\n### Added \u{1f680}\n\n- Cursor indicator for different mouse actions #1042\n\n### Changed\n\n- Edge-Metrics sorted by name now instead of number of incoming and outgoing edges\n\n### Fixed \u{1f41e}\n\n- Number of incoming and outgoing edges not visible when hovering over a node #1095\n- Highlighting buildings in multiple mode now works #956\n\n## [1.54.0] - 2020-08-21\n\n### Added \u{1f680}\n\n- Opening NodeContextMenu in the tree-view marks the node until it is closed #1068\n\n### Fixed \u{1f41e}\n\n- Missing Sonarcloud metrics in demo\n\n### Docs \u{1f50e}\n\n- Added note how to fix missing `sh` command issue when running integration tests on Windows\n\n## [1.53.0] - 2020-08-14\n\n### Changed\n\n- NodeContextMenu will show up when releasing the right-mouse-button now #1027\n\n### Fixed \u{1f41e}\n\n- NodeContextMenu showing up after moving the mouse while holding right-mouse-button #1027\n\n## [1.52.0] - 2020-08-07\n\n### Added \u{1f680}\n\n- Support for Tokei 12 new JSON schema #1103\n\n### Changed\n\n- Rename master branch to main for a more inclusive naming #1117\n\n### Fixed \u{1f41e}\n\n- After loading an invalid file the filechooser pops up again, so that the user can choose a valid file #1021\n- Quality gates on sonarcloud.io are red #879\n\n### Docs \u{1f50e}\n\n- Moved developer guides to our [gh-pages](https://maibornwolff.github.io/codecharta/) #986\n\n## [1.51.0] - 2020-07-24\n\n### Added \u{1f680}\n\n- File chooser now accept ".json" files only to avoid accidentally loading incorrect files #1094\n- Lots of tooltips #1030\n\n### Fixed \u{1f41e}\n\n- Blacklisting a building would sometimes not update the map #1098\n- Changes made after opening the filechooser and closing it won\'t be applied #875\n- Edge metric list not always updated correctly when loading a new file #1106\n\n## [1.50.0] - 2020-07-10\n\n### Added \u{1f680}\n\n- Line between scenario indicator and remove button #1069\n\n### Changed\n\n- Reduced transition time when opening or collapsing parts of the ribbon bar #1043\n- Search Panel will open now when clicking in the search field and collapse when clicking somewhere else #1071\n\n### Fixed \u{1f41e}\n\n- Opening the same file again will now reload the file and reset the application #1032\n- Improve render performance by persisting color conversions #1034\n- Sorting in tree-view not being applied #1040\n\n## [1.49.1] - 2020-07-03\n\n### Fixed \u{1f41e}\n\n- Improved performance significantly when switching between single, multiple and delta\n- Color-Range-Slider sometimes misbehaved when loading a new map or excluding buildings #926\n\n## [1.49.0] - 2020-06-19\n\n### Added \u{1f680}\n\n- Custom scenarios can be created and saved through the scenario menu #675\n- Importer and parser documentation can now be found on the github Website #954\n- Output of sourcemonitor can now be compressed with the compression flag\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- [Security] Bump angular from 1.7.9 to 1.8.0 in /visualization #995\n\n## [1.48.0] - 2020-06-12\n\n### Added \u{1f680}\n\n- Support of compressed cc.json files. Files can be compressed in the analysis #848\n\n### Fixed \u{1f41e}\n\n- Improved performance of several importers #846\n\n## [1.47.1] - 2020-05-08\n\n### Fixed \u{1f41e}\n\n- Attribute-Side-Bar being invisible\n\n## [1.47.0] - 2020-05-02\n\n### Added \u{1f680}\n\n- When hovering over a folder, all buildings inside it will be highlighted as well #694\n\n### Changed\n\n- Rename the button Show-Complete-Map button to Unfocus #642\n- Move the Unfocus button (visible when right-clicking a focused node) to the node-context-menu #948\n\n### Fixed \u{1f41e}\n\n- Generating a delta map with merged empty folders in between is now working correctly #730\n- Reduced time when opening a new file #932\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- [Security] Bump jquery from 3.4.0 to 3.5.0 in /visualization #944\n\n## [1.46.1] - 2020-04-24\n\n### Added \u{1f680}\n\n- Error dialogs in case of validation or api version issues #610\n\n### Fixed \u{1f41e}\n\n- Improved overall rendering performance of larger maps by roughly 40% #836\n\n## [1.45.5] - 2020-04-17\n\n### Added \u{1f680}\n\n- Median symbol for aggregated relative metrics #365\n- AttributeTypes for tokeiImporter and SCMLogParser #365\n- Ellipsis button in TreeView list when hovering a node to access context menu #780\n- Show gray eye-icon next to the ellipsis-button to indicate a flattened node #780\n- Attribute Type selector in the metric dropdowns for edges and nodes\n\n### Changed\n\n- Metrics with AttributeType relative are now aggregated using the median #365\n- Showing absolute number of files instead of relative number when hovering list item in TreeView #780\n- Clicking a hovered list item inside the TreeView opens folders #780\n- Color node name in gray when flattened #780\n\n### Removed \u{1f5d1}\n\n- Eye-icon in TreeView list to flatten a node #780\n- Option to focus a node when clicking the node name inside the TreeView #780\n\n### Fixed \u{1f41e}\n\n- Consistency of AttributeTypes representation #365\n- Wrong file description for tokeiimporter\n- Improved search performance #837\n\n## [1.44.0] - 2020-03-27\n\n### Added \u{1f680}\n\n- Dialog to select between different sorting options #388\n- Button to reverse the current selected sorting #388\n\n### Fixed \u{1f41e}\n\n- Show file selection in toolBar after excluding or hiding a node instead of an empty toolBar #896\n\n## [1.43.0] - 2020-03-20\n\n### Changed\n\n- Selectable metrics will only contain metrics from the visible maps\n- Closing the attribute-side-bar by clicking somewhere in the map will now be triggered on mouse up instead of mouse down\n\n### Fixed \u{1f41e}\n\n- Search-panel opening for a short duration when importing a new file\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Fix vulnerability with nokogiri <1.10.8\n\n## [1.42.3] - 2020-03-13\n\n### Fixed \u{1f41e}\n\n- Loading Gif not displayed when preparing to render a new map #857\n- Selecting zero files in Multiple mode will not trigger the 3D CodeMap creation\n- Metrics in the dropdown menu now show the correct max value for the visible maps #876\n\n## [1.42.2] - 2020-02-14\n\n### Fixed \u{1f41e}\n\n- Replaced non standard `[[` in sh scripts #849\n- Improved performance for loading a new file #836\n- Marked Packages are loaded from files #798\n\n## [1.42.1] - 2020-02-07\n\n### Fixed \u{1f41e}\n\n- GC Overhead Limit (OutOfMemory Exception) during analysis of large SCMLogs fixed #845\n\n## [1.42.0] - 2020-01-31\n\n### Added \u{1f680}\n\n- Support for camel and kebab-case for ccsh arguments #772\n- RawTextParser for analysis #660\n- IndentationLevel as metric for RawTextParser #660\n- Show additional Pairing Rate of Selected Building, simultaneously to the currently hovered Buildings #736\n\n### Changed\n\n- Options of the ccsh are now consistently in kebab-case #772\n\n### Fixed \u{1f41e}\n\n- Path prefix handling in tokeiimporter #841\n\n## [1.41.8] - 2020-01-17\n\n### Removed \u{1f5d1}\n\n- Project name parameters in the ccsh #773\n\n## [1.41.6] - 2020-01-10\n\n### Fixed \u{1f41e}\n\n- Deployment\n\n## [1.41.1] - 2020-01-10\n\n### Fixed \u{1f41e}\n\n- Performance of loading maps with edges improved #823\n- Calculation of other Group for fileExtensionBar #768\n- Remove focus of UI elements when they are not visible anymore\n\n## [1.41.0] - 2019-12-06\n\n### Added \u{1f680}\n\n- Show the relative number of files a folder includes compared to the project in the TreeView #380\n- Show the number of files a folder includes in the TreeView when hovering #380\n- When the File Extension Bar is hovered, all buildings corresponding to that extension are highlighted #545\n- Toggle between percentage and absolute values when clicking the file extension details section #545\n- Sum hovered delta values for folders #781\n\n## [1.40.0] - 2019-11-22\n\n### Changed\n\n- Replaced Blacklist Hide with Flatten option #691\n- Flattened buildings are not hidden by default #691\n\n### Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}\n\n- Bump @types/three from 0.89.12 to 0.103.2 in /visualization #453\n- Bump angularjs-slider from 6.5.1 to 7.0.0 in /visualization #454\n- Bump webpack from 3.12.0 to 4.41.2 in /visualization #436\n- [Security] Bump angular from 1.7.7 to 1.7.9 in /visualization #800\n\n## [1.39.0] - 2019-11-15\n\n### Added\n\n- Progress indicator for SonarImporter #544\n\n### Changed\n\n- New style for hovered metric values #696\n- Redesigned slider labels in ribbonBar sections #696\n- Shortened ribbonBar sections #696\n\n### Fixed\n\n- Missing pictures and broken links in docs #785\n- SCMLogParser is now more resilient to unusual SVN commit messages #763\n\n## [1.38.1] - 2019-11-13\n\n### Added\n\n- New github-pages https://maibornwolff.github.io/codecharta/\n\n### Fixed\n\n- Sum symbol for hovered metric values only shows for folders #775\n\n## [1.38.0] - 2019-11-08\n\n### Added\n\n- Temporal coupling edges generated by SCMLogParser #622\n\n### Changed\n\n- Downloaded files are no longer formatted #679\n- Added highly and median coupled files metrics to non-churn metric list of SCMLogParser #622\n- Moved nodePathPanel to toolBar and updated style #607\n\n### Fixed\n\n- Removed attributes from downloaded files that should not be there #679\n\n## [1.37.0] - 2019-10-25\n\n### Added\n\n- Sidebar with information regarding the selected building #527\n- Sidebar closes when selected buildings is excluded #748\n\n### Changed\n\n- Animation to show or hide the legend panel #527\n\n### Removed\n\n- Expandable detail panel in lower left corner #527\n- Removed option to maximize/minimize detail panel #527\n\n### Fixed\n\n- Autofocus and label size for focused nodes #747\n- Selected buildings stays selected when settings are changed #748\n- IllegalStateException when scanning single file in SourceCodeParser #573\n- SourceCodeParser places files in the project root correctly into the hierarchy #574\n\n## [1.36.0] - 2019-10-18\n\n### Changed\n\n- Open and close the ribbonBar sections independently with an updated animation\n\n### Fixed\n\n- Camera is now resetted correctly, when unfocusing #634\n- Inputs of Color Range Slider now waits a second before it commits its values #676\n- Fixed root folder name in TreeView after new map after loading new map #649\n- Increased size of ribbonBar for big screens #644\n- File-Extension-Bar will not display excluded nodes anymore #725\n- Sanitize input for shelljs #600\n\n### Chore\n\n- Bump jacoco from 0.8.1 to 0.8.4 in /analysis\n\n## [1.35.0] - 2019-10-04\n\n### Added\n\n- Checkbox in global Settings for disabling camera reset, when new map is loaded #685\n- Pipe support for SourceCodeParser #716\n- Pipe support for SCMLogParser #717\n- Pipe support for SonarImporter #715\n\n### Fixed\n\n- Exclude and Hide options are disabled for empty and already existing search patterns #654\n\n## [1.34.0] - 2019-09-20\n\n### Added\n\n- Tokei Importer #538\n- Prominent Notice that we use Sonar-jar #713\n\n### Chore\n\n- Bump kotlin-reflect from 1.3.41 to 1.3.50 in /analysis\n- Bump json from 20180813 to 20190722 in /analysis\n- Bump rxjava from 2.2.9 to 2.2.12 in /analysis\n- Bump assertj-core from 3.12.2 to 3.13.2 in /analysis\n- Bump sonar-java-plugin from 5.12.1.17771 to 5.14.0.18788 in /analysis\n\n## [1.33.0] - 2019-09-10\n\n### Added\n\n- Edge Previews (Palm-Tree-Effect) #529\n- Dropdown to select Edge Metric, including Edge Counter #529\n- Edge Metric settings for Edge Height, Number of Previews & show only building with Edges #529\n\n### Changed\n\n- Edge Visualization to better distinguish between incoming and outgoing edges #529\n- Distribution metric is by default the same as area metric #689\n- MapTreeView below searchBar opens the first level by default #690\n- Focus metric search when opening metricChooser #693\n\n### Removed\n\n- Edge Options in Context menu #529\n\n### Fixed\n\n- SourceCodeParser now skips custom metrics for files, if the syntax tree cannot be created\n- Nodes with color metric equals 0 are colored correct again #677\n\n### Chore\n\n- [Security] Bump mixin-deep from 1.3.1 to 1.3.2 in /visualization\n\n## [1.32.0] - 2019-08-09\n\n### Added\n\n- Search for metrics and an indicator for the highest value in dropdown #575\n- Button to enable PresentationMode that uses Flashlight-Hovering #576\n- Clarifying information which file is which in the file bar when in delta mode #615\n\n### Changed\n\n- Replaced Scenario dropdown with button on the left of the metric sections #628\n\n## [1.31.0] - 2019-08-02\n\n### Added\n\n- New Metric in SourceCodeParser: Maximum-Nesting-Level #659\n\n### Fixed\n\n- Label hight adjustment now matches scaling of map #594\n- SCMLogParser now guesses the input file encoding #614\n\n## [1.30.0] - 2019-07-26\n\n### Added\n\n- New Search Bar #526\n- Number of Renames Metric to SCMLogParser #621\n- Age In Weeks Metric for SCMLogParser #620\n\n### Changed\n\n- ToolBar now shows partially cut-off controls if the window is too small #582\n- Position of the legendPanel was moved to the bottom-right corner #633\n- RibbonBar only opens the three metric section\n- Moved Scenario-select to the right in order to use less space\n- Moved loading-gif from ribbonBar to toolBar\n\n### Removed\n\n- RibbonBar toggle button\n\n### Fixed\n\n- FileExtensionBar height to not show a bottom-margin in Chrome\n- PointerEvents not being propagated when RibbonBar was extended\n- Reduced memory usage of SCMLogParser to avoid OutOfMemory Exception #631\n\n### Chore\n\n- [Security] Bump lodash.mergewith from 4.6.1 to 4.6.2 in /visualization\n- [Security] Bump lodash from 4.17.11 to 4.17.13 in /visualization\n- [Security] Bump fstream from 1.0.11 to 1.0.12 in /visualization\n\n## [1.29.0] - 2019-07-12\n\n### Changed\n\n- Moved Button to reset the map to the center next to the view-cube #606\n- Moved FileExtensionBar #527\n\n### Removed\n\n- Burger Menu / SideNav #526\n\n### Fixed\n\n- Colors in File-Extension-Bar will be displayed in MS Edge and Standlone now #584\n\n## [1.28.0] - 2019-06-28\n\n### Added\n\n- Releasing will now remind the developer to manually add the release notes #533\n- StructureModifier to remove and move nodes and set root of projects #547 / #181\n\n### Changed\n\n- More informative log messages regarding the success of project merging #547\n\n### Removed\n\n- Release Notes are not generated and added automatically to a release #533\n\n### Fixed\n\n- Margin will now be set correctly depending on whether dynamicMargin is enabled or not #602\n\n## [1.27.0] - 2019-06-25\n\n### Added\n\n- Automatically generates release notes from changelog and appends it to release #533\n- Adds global settings-menu with settings from options panel and weblinks #528\n\n### Changed\n\n- Moved File Settings from Ribbon Bar to new File Setting Bar #525\n- Rename sample file codemap-nodes #587\n- Hide checkbox to select white-positive-buildings in delta state #345\n\n### Removed\n\n- Removes Options panel from sidebar #528\n- Removes Weblinks panel from sidebar #528\n- Removed URL-parameter info from sidebar #525\n\n### Fixed\n\n- Unary Metric will no longer be auto-selected when a new map is loaded #579\n\n## [1.26.0] - 2019-06-14\n\n### Added\n\n- FileExtensionBar to show file-distribution of chosen metric #495\n- sum icon is now displayed on the left of the metric value #364\n- Added Pop-up dialog before downloading file to set filename and see what data will be stored #523\n\n### Fixed\n\n- Fix set default ColorRange when resetting color section #560\n\n## [1.25.1] - 2019-05-30\n\n### Added\n\n- SVN log parser keeps track of renaming of files for metric calculation #542\n\n### Fixed\n\n- Entries with renaming information in SVN logs are attributed to correct file #542\n- Unary metric will no longer be removed from the MetricChooser-Dropdown when a folder was excluded or hidden #548\n- Changing margin and then file or mode will no longer freeze the application #524\n\n### Chore\n\n- [Security] Bump tar from 2.2.1 to 2.2.2 in /visualization\n\n## [1.25.0] - 2019-05-17\n\n### Added\n\n- Added SonarJava to Source code parser #343\n- Added exclude and defaultExclude options to SourceCodeParser #508\n- Show loading-gif in ribbonBar when rerendering map\n\n### Changed\n\n- Using Sonar Plugins for Source code parser, giving the Sonar Metrics #343\n- Use debounced settings update instead of throttled\n- Filename of downloaded file now contains time #484\n\n### Fixed\n\n- Fixed issue with too long line in ccsh.bat #506\n- Prevent downloaded files from having multiple Timestamps #484\n- Do not show loadingGif when cancelling the fileChooser #498\n- Excluding a building now updates the maximum value of colorRange #355\n\n### Chore\n\n- Bump angular-material from 1.1.9 to 1.1.14 in /visualization\n- [Security] Bump jquery from 3.3.1 to 3.4.0 in /visualization\n\n## [1.24.0] - 2019-04-23\n\n### Removed\n\n- Settings as URL parameters #470\n\n### Fixed\n\n- Fixed issue with trailing slash in URL parameter of SonarImporter #356\n\n### Chore\n\n- Bump d3 from 4.13.0 to 5.9.2 in /visualization\n- Bump sinon from 4.5.0 to 7.3.1 in /visualization\n\n## [1.23.0] - 2019-03-22\n\n### Added\n\n- Project Name can be specified for merge filter #394\n\n### Changed\n\n- Throw a MergeException if project names do not match in MergeFilter #394\n\n### Fixed\n\n- Excluded buildings are no longer used for aggregated metric calculation #352\n\n### Chore\n\n- Bump browser-sync-webpack-plugin from 1.2.0 to 2.2.2 in /visualization\n- Bump @types/node from 8.10.19 to 11.11.3 in /visualization\n- Bump html-webpack-plugin from 2.30.1 to 3.2.0 in /visualization\n- Bump load-grunt-tasks from 3.5.2 to 4.0.0 in /visualization #444\n- Bump ajv from 5.5.2 to 6.10.0 in /visualization #447\n- Bump resolve-url-loader from 2.3.0 to 3.0.1 in /visualization #448\n\n## [1.22.0] - 2019-03-15\n\n### Added\n\n- Added buttons to select all/none/inversion of revisions/maps in multiple mode #391\n- Merge filter can merge all files of folders #392\n\n### Fixed\n\n- Fixed bug that code map was not re-loaded when changing from multiple to single revision mode #396\n- Fixed missing apiVersion in aggregated map #398\n- Input Fields of color sliders adjust width according to content #409\n\n### Chore\n\n- Bump nouislider from 11.1.0 to 13.1.1 in /visualization\n- Bump typescript from 2.7.2 to 3.3.3333 in /visualization\n- Bump @types/d3 from 4.13.0 to 5.7.1 in /visualization\n\n## [1.21.2] - 2019-02-26\n\n### Added\n\n- When entering Multiple Mode, all Maps/revisions are preselected\n\n### Fixed\n\n- Fixing non-existent metric aggregation on root-level when using multiple Files\n\n## [1.21.1] - 2019-02-22\n\n### Added\n\n- Hovering a node in the map also hovers it in the tree view #351\n\n### Fixed\n\n- Fixing sync between treeview hovering and map hovering #351\n- Folders can no longer be colored in the CodeMap or TreeView #359\n\n## [1.21.0] - 2019-02-16\n\n### Added\n\n- Color searched node names green in TreeView #225\n- Add option buttons (three dots) in TreeViewSearch to `Hide` or `Exclude` matching nodes #298\n- Show blacklist entry counter in blacklistPanel header #298\n- Option checkbox \'Hide Flattened Buildings\' #225\n- Hide/Flatten non-searched buildings #225\n- Hide/Flatten all buildings, if searchPattern can\'t find any matching nodes #225\n- Show maxValue of each metric in metricChooser select list #204\n- Colored color-slider inside the RibbonBar #318\n- Option to color positive buildings white #311\n- Clicking the ribbonBar section-titles toggles the ribbonBar #324\n- View-Cube displayed in top right corner #274\n- Adding prettier formatter\n- Adapt colorRange when changing colorMetric #330\n\n### Changed\n\n- Update TreeView filter with search field #225\n- Use \'gitignore\' style matching in TreeViewSearch #225\n- Reorder `Focus`, `Hide` and `Exclude` buttons in nodeContextMenu #298\n- Reorder sidebarPanels (BlacklistPanel beneath TreeViewSearchPanel) #298\n- Use `fa-ban`-icon as symbols for blacklistPanel (instead of `fa-list`) #298\n- Use `fa-ban`-icon as symbols for blacklistType `Exclude` (instead of `fa-times`) #298\n- Label size keeps readable for large maps or a high distance between camera and map #237\n- updated dependencies to fix vulnerabilities\n- Scenarios only update settings which exist in Scenario and not all #224\n- MergeFilter to merge unique blacklist entries #275\n- MergeFilter to only merge unique attributeType entries #275\n\n### Removed\n\n- Remove invertHeight checkbox in delta-view #306\n- Remove option to add blacklist entries from inside the blacklistPanel #298\n- Remove statistic functions in Experimental panel #308\n\n### Fixed\n\n- CodeMap does not move anymore when navigating in text-fields #307\n- Merge blacklist in multipleFile view and convert paths #275\n- Show logo in NW.js standalone application #233\n\n## [1.20.1] - 2018-12-19\n\nFixed release issues.\n\n## [1.20.0] - 2018-12-19\n\n### Added\n\n- button to unfocus node\n- NodeContextMenu: Option to only hide dependent edges\n- plop support\n\n### Changed\n\n- Renaming \'isolate node\' to \'focus node\'\n- Focusing a node does not remove the blacklist items of type Hide\n\n### Removed\n\n- NodeContextMenu: Option to \'show all\' nodes, which used to unhide all nodes\n\n### Fixed\n\n- Reshow hidden nodes from Treeview or Blacklist\n\n## [1.19.0] - 2018-11-02\n\n### Added\n\n- Deleted files in delta view use their previous area value in order to be visible #254\n\n### Fixed\n\n- Buildings in the delta view are not colored correctly #253\n- Reset Button in RibbonBar to reset \'Invert Colors\' #255\n- Remove lag of \'Invert Color\' checkboxes, when selecting single/delta mode #255\n\n## [1.18.1] - 2018-10-31\n\nFixed release issues\n\n## [1.18.0] - 2018-10-29\n\n### Added\n\n- Integration with Jasome through JasomeImporter #245\n- URL parameter \'mode\' with the values Single, Multiple or Delta\n- Blacklist to persist excluded or hidden nodes #205\n- Option to exclude nodes in nodeContextMenu #205\n- BlacklistPanel in SettingsSidebar to manage blacklist #205\n- Save-Button to download current CodeMap #205\n- Publishing visualization on Docker Hub #252\n\n### Changed\n\n- No longer fat jar of every subcomponent of analysis, baked into ccsh\n- Changed simple syserr write to logger call for analysis #243\n\n### Removed\n\n- URL parameter \'delta\' does not exist anymore\n\n### Fixed\n\n- Show delta of CodeMap when URL parameter mode=delta is set\n\n## [1.17.0] - 2018-09-28\n\n### Changed\n\n- Invert delta colors moved from color to heigh metric column in ribbon bar #220\n- Delta value now as kindOfMap shown #220\n- Aggreate maps as multiple rename #220\n\n### Fixed\n\n- Single/delta buttons now correctly activated when delta in ulr shown #220\n\n## [1.17.0] - 2018-09-21\n\n### Added\n\n- CodeMaatImport for temporal coupling dependencies #172\n- EdgeFilter to aggregate edge-attributes as node-attributes #222\n- Option to show and hide dependent edges from node-context-menu #218\n\n### Changed\n\n- MergeFilter merges edges #172\n\n## [1.16.2] - 2018-09-10\n\n### Fixed\n\n- missing event in firefox #232\n\n## [1.16.1] - 2018-08-31\n\n### Added\n\n- gitlab + dotnet manual\n\n## [1.16.0] - 2018-08-31\n\n### Added\n\n- add the option to add multiple files via url parameter (e.g. ?file=a&file=b...)\n\n## [1.15.1] - 2018-08-13\n\nFixed release issues\n\n## [1.15.0] - 2018-08-13\n\n### Added\n\n- e2e tests are running in CI Environment (headless)\n- pupeteer as e2e test framework\n- Show names of marked packages in legend\n- Added a source code importer that can analyse rloc,mcc for java source code\n- keep settings when the user changes a file\n- Added option to set white background\n\n### Removed\n\n- cypress\n\n## [1.14.2] - 2018-07-16\n\n### Changed\n\n- Changed folder detail metrics from mean to sum\n\n## [1.14.1] - 2018-07-13\n\nFixed release issues\n\n## [1.14.0] - 2018-07-13\n\n### Added\n\n- Added UnderstandImporter to Analysis\n- Packages can be highlighted in different colors #152\n- Adding a context menu with highlighting colors and convenience methods for the tree view and 3D view #155\n- Folders and files to highlight can be described in the cc.json #165\n- Dynamic/automatic margin computing de/activated by tick\n\n### Changed\n\n- Details panel: using the sum of the childrens metrics instead of the mean value\n\n### Fixed\n\n- Display buttons do not trigger map changes #185\n- Flickering surfaces when zooming out\n\n## [1.13.0] - 2018-06-08\n\n### Added\n\n- Layout switcher #141\n- Added CrococosmoImporter to Analysis\n- Added type, dirs, name to CSVExporter\n- Invert height of building checkbox\n- Aggregate multiple maps in visualization #110\n- Auto Focus selected map part\n- Timmer added to applySettings in SettingsService\n\n### Changed\n\n- Crococosmo xml files will now generate a cc.json file for each version\n- Suppressing ARIA warnings\n- Simplified gradle structure of analysis part\n- Deltas added in the metric quick access panel #138\n- Ticks and ResetValue Buttons call to onSettingsChange to avoid applySettings timer\n- compacting empty middle packages #150\n- Detail panel minimized by default\n\n### Fixed\n\n- filter by regex shows parent nodes #116\n- typo in scss file\n\n## [1.12.0] - 2018-04-27\n\n### Added\n\n- horizontal quick access metric chooser\n- Link behind filepath in detailPanel #84\n- Double click event-handler on Buildings #84\n- Detail Panel can be minimized and maximized\n- Settings option to minimize Detail Panel\n- cypress as an e2e test runner\n\n### Removed\n\n- metric details from legend\n- metric chooser from settings panel\n\n## [1.11.2] - 2018-04-13\n\n### Fixed\n\n- a sonar importer bug which prevented the importer to fetch the last page #122\n\n## [1.11.1] - 2018-04-11\n\nFixed release issues\n\n## [1.11.0] - 2018-04-11\n\n### Added\n\n- SASS support\n- simple regex filter\n- Reset Button\n- Dialog Service replaces console log calls and window.alert calls\n- linking tree view and map hover\n- auto fit scene button\n- anugularJS material\n- Scenarios are now filtered by compatibility for the given map\n- Link in visualization #84\n\n### Removed\n\n- materialize-css\n- grunt\n\n### Fixed\n\n- less flickering and artifacts\n\n## [1.10.0] - 2018-03-22\n\n### Changed\n\n- Clean up UI #86\n- Updated analysis dependencies\n\n### Fixed\n\n- Delta View shows Deltas of itself as non-trivial if nodes have same name #89: Compare deltas by path not name\n- Delta calculation performance boost #91\n- Problems when intermediate nodes missed metrics #92\n- removed unnecessary calculations\n- removed bug in SonarImporter that slowed up performance and missed out multiple metrics\n- minor bugs\n\n## [1.9.3] - 2018-02-23\n\n### Changed\n\n- sorting treeview by folders and names\n\n## [1.9.2] - 2018-02-20\n\n### Added\n\n- added preliminary CSVExporter for visualisation data\n\n### Changed\n\n- padding rendering\n- minimal building height is 1 to prevent clipping issues\n- fallback values for visualization when no metric is available (area = 1, height = 1, color = grey). Data in data structure will not be changed.\n\n## [1.9.1] - 2018-02-20\n\n### Fixed\n\n- detail panel bug fix\n\n## [1.9.0] - 2018-02-20\n\n### Changed\n\n- moved to unscoped npm packages\n\n## [1.8.2] - 2018-02-20\n\n### Changed\n\n- detail panel background is white now. better visibility\n\n## [1.8.1] - 2018-02-20\n\n### Changed\n\n- revision chooser moved to settings panel and uses now understandable dropdowns instead of links. Part of the #82 proposals\n\n## [1.8.0] - 2018-02-20\n\n### Added\n\n- Experimental dependency support\n- loading indicator\n- file path to detail panel\n- collapsible tree view and visibility/isolation per node toggles\n\n### Changed\n\n- added a ray-aabb intersection test before precise testing. Less time is spent in intersection methods.\n\n### Fixed\n\n- fixed a minor bug\n- canvas mouse event listener are now limited to the canvas dom element. UI events will not trigger the canvas listeners anymore\n- canvas mouse events distinguish now between click and drag. Dragging does not reset selection anymore\n- slider input #64\n- rz slider initialization bug\n- increasing test coverage\n- deltas where calculated on map loading even though, they were disabled\n\n## [1.7.2] - 2018-02-02\n\n### Fixed\n\n- url to homepage\n- analysis package\n\n## [1.7.1] - 2018-02-02\n\nFixed release issues\n\n## [1.7.0] - 2018-02-02\n\n### Changed\n\n- npm pachage scoped to @maibornwolff\n- Defined further scenarios via json file\n- Added description for metrics and scenarios\n- using fixed point values in detail panel (ui) to truncate infinite or long decimals\n- folders now use the mean attributes of their buildings(leaves)\n\n### Fixed\n\n- Bugfix: detail panel should be cleared before setting new details else old values may survive\n\n## [1.6.7] - 2018-02-01\n\nFixed release issues\n\n## [1.6.6] - 2018-02-01\n\n### Added\n\n- added anonymous git log generator anongit\n- browser demo shows codecharta-visualization sonar analysis\n\n### Changed\n\n- rewrote command line interface\n- linking ccsh to bin/ccsh will be deleted later\n\n### Fixed\n\n- No underscore for scenarios in tooltips #71\n\n## [1.6.5] - 2018-01-30\n\nFixed release issues\n\n## [1.6.4] - 2018-01-30\n\n### Fixed\n\n- fixed broken SonarImporter due to jdk9 migration\n\n## [1.6.3] - 2018-01-26\n\n### Added\n\n- added npm publish for analysis\n- simple release script for automatic changelog updates, commits, tags, version bumps\n\n## [1.6.2] - 2018-01-25\n\n### Added\n\n- added support for git log --raw and git log --numstat --raw\n- added support for git log --numstat and codechurn\n- added support for renames in SCMLogParser for git log --name-status\n- added support for renames in SCMLogParser for git log --numstat, git log --raw and git log --numstat --raw\n- added new SCM experimental metrics range_of_weeks_with_commits and successive_weeks_of_commits\n- the file origin of a node is displayed in the details now\n- sonarqube analysis on CI build\n- npm publish support in visualization\n\n### Changed\n\n- Deltas are no longer experimental\n- two selected delta maps now merge their nodes correctly. The map where\n a node was missing get\'s a copy of this node with metrics=0.\n File additions/deletions are therefore only visible when areaMetric is\n unary and deltas are activated.\n\n### Fixed\n\n- delta display bug for heights\n- going back from delta view now correctly removes deltas from node data\n- Delta shown although not in delta mode #60\n- Allow inversion of delta colors #57\n- npm binary error\n\n## [1.5.2] - 2018-01-04\n\n### Changed\n\n- scaling slider now has steps of 0.1. This allows the user to select precise values like 2.0\n- updated jdk to jdk9\n\n### Fixed\n\n- Opening the same file a second time does not work #53\n- added missing require declaration\n- added glsl loader in testing environment\n- Native Application support is bugged while building in Travis CI #48\n\n## [1.5.1] - 2017-11-14\n\n### Added\n\n- command line parameter to toggle "authors" attribute in SCMLogParser\n\n### Fixed\n\n- when passing a file through the "file" parameter in the URL, the map now renders correctly\n\n## [1.5.0] - 2017-10-24\n\n### Added\n\n- experimental delta functionality\n- loading multiple maps\n- experimental margin slider\n\n### Changed\n\n- faster rendering\n\n### Removed\n\n- nwjs packages and native apps due to a bug\n\n### Fixed\n\n- using color metric instead of height metric for color range slider ceil\n\n## [1.4.0] - 2017-09-14\n\n### Added\n\n- Typescript support\n- Browsersync\n- added advanced merging strategy "leaf" in MergeFilter\n- advanced merging with restructuring\n\n### Changed\n\n- Browserify replaced with Webpack\n- Better debugging\n- Karma instead of Mocha\n\n## [1.3.2] - 2017-08-18\n\n### Added\n\n- add slider controls for color thresholds #19\n- Added additional structuring in SonarImporter for multi-module projects\n- button to generate current url parameters\n- camera position is now a setting (e.g. in scenarios or url parameters)\n- margin slider: make it easier to find out to which package/folder a class belongs #20\n\n### Changed\n\n- better url parameter resolution (nested parameters are handled correctly)\n- changed hover color. Allows better distinction between hover and select\n\n### Removed\n\n- obsolete helper grid\n\n### Fixed\n\n- changing display or color settings resets scaling #18\n- scenario description #32\n- Scaling should not scale the labels #35\n\n## [1.3.1] - 2017-07-05\n\n### Fixed\n\n- Prevented override of URL-parameters by default scenario\n\n## [1.3.0] - 2017-07-05\n\n### Added\n\n- Adding simple merge functionality for multiple json files\n- Added CSVImporter\n- Added Translation for SonarQube metrics\n- Added descriptions for metrics\n\n### Changed\n\n- Changed uppercase metrics, e.g. RLOC, to lowercase metrics\n\n### Fixed\n\n- Simple cc.json does not display anything #17\n\n## [1.2.0] - 2017-06-19\n\n### Added\n\n- Adding Labels and UI\n- Support for links to source page of SonarQube in sonarimporter\n- Added SCMLogParser\n\n### Fixed\n\n- GitHub Issue: legend is wrong #21\n\n## [1.1.5] - 2017-05-31\n\n### Fixed\n\n- Wrong version numbers in analysis part\n\n## [1.1.4] - 2017-05-26\n\n### Added\n\n- Scenarios and default scenario\n- Translation API for Metrics\n- Metric tooltips in dropdown\n\n### Fixed\n\n- GitHub Issue: Sonarimporter crashes with null pointer exception when there is a component without path. #13\n\n## [1.1.3] - 2017-05-01\n\n### Added\n\n- Support for SonarQube Measures-API\n- Error logging for sonarqube errors\n\n### Changed\n\n- Standard Sonar metric is now complexity,ncloc,functions,duplicated_lines,classes,blocker_violations,generated_lines,bugs,commented_out_code_lines,lines,violations,comment_lines,duplicated_blocks\n\n## [1.1.2] - 2017-04-28\n\n### Added\n\n- Translation API for Metrics\n\n## [1.1.1] - 2017-04-07\n\n### Fixed\n\n- GitHub Issue: Flickering surfaces #3\n- GitHub Issue: Unable to install due to readlink error on macOS #4\n\n## [1.1.0] - 2017-03-27\n\n### Added\n\n- SourceMonitorImporter for importing projects from SourceMonitor.\n\n## [1.0.0] - 2017-03-17\n\n### Added\n\n- SonarImporter for importing projects from SonarQube.\n- ValidationTool for validating an existing json file.\n',{headerIds:!1}).split("\n");const r=this.findVersionLine(i,this.data.currentVersion),s=this.findVersionLine(i,this.data.previousVersion);i=i.slice(r,s+1);const l=["Added \u{1f680}","Fixed \u{1f41e}","Changed","Removed \u{1f5d1}","Chore \u{1f468}\u200d\u{1f4bb} \u{1f469}\u200d\u{1f4bb}"],u={};for(const f of l){const p=new RegExp(`

    ${f}

    `),m=this.getAllIndexes(i,p),_=[];for(const b of m){const w=b+2,F=this.findEndChangesLine(i,b);for(const D of i.slice(w,F))_.push(`${D}
    `)}_.length>0&&(u[f]=_.join("\n"))}return u}getAllIndexes(e,i){return e.reduce((r,s,l)=>(i.test(s)&&r.push(l),r),[])}findVersionLine(e,i){const r=new RegExp(`\\[${i}]`);return e.findIndex(s=>r.test(s))}findEndChangesLine(e,i){return i+e.slice(i+1).findIndex(r=>/

    /.test(r)||/

    /.test(r))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(tp))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-change-log-dialog"]],standalone:!0,features:[o.aNF],decls:16,vars:5,consts:[["color","primary"],["mat-dialog-content",""],[1,"content"],["mat-dialog-actions",""],["href","https://codecharta.com/news/","target","_blank","rel","noopener noreferrer"],["mat-button","","cdkFocusInitial","",3,"mat-dialog-close"],[3,"innerHTML"]],template:function(i,r){1&i&&(o.j41(0,"mat-toolbar",0),o.EFF(1,"Changelog"),o.k0s(),o.j41(2,"div",1)(3,"h1"),o.EFF(4,"What is new in CodeCharta?"),o.k0s(),o.j41(5,"h2"),o.EFF(6),o.k0s(),o.j41(7,"div",2),o.Z7z(8,uMe,4,2,"div",null,o.fX1),o.nI1(10,"keyvalue"),o.k0s()(),o.j41(11,"div",3)(12,"a",4),o.EFF(13,"Know more"),o.k0s(),o.j41(14,"button",5),o.EFF(15,"CLOSE"),o.k0s()()),2&i&&(o.R7$(6),o.Lme("",r.data.previousVersion," \u2192 ",r.data.currentVersion,""),o.R7$(2),o.Dyx(o.bMT(10,3,r.changes)),o.R7$(6),o.Y8G("mat-dialog-close",!0))},dependencies:[Zg,Al,Zl,ns,Ta,df],encapsulation:2})}}return n})();function IY(n){const t=n.split(".");return{major:Number.parseInt(t[0])||0,minor:Number.parseInt(t[1])||0,patch:Number.parseInt(t[2])||0}}let pMe=(()=>{class n{constructor(e){this.dialog=e,this.version=s1.rE}synchronizeLocalCodeChartaVersion(){const e=localStorage.getItem("codeChartaVersion");null!==e?function fMe(n,t){const e=IY(n),i=IY(t);return e.major===i.major&&e.minor===i.minor&&e.patch===i.patch?0:e.major>i.major?1:e.majori.minor?1:e.minori.patch?1:e.patch{class n{constructor(e,i,r,s,l){this.doc=e,this.delegate=i,this.zone=r,this.animationType=s,this.moduleImpl=l,this._rendererFactoryPromise=null,this.scheduler=(0,o.WQX)(o.An2,{optional:!0}),this.loadingSchedulerFn=(0,o.WQX)(_Me,{optional:!0})}ngOnDestroy(){this._engine?.flush()}loadImpl(){const e=()=>this.moduleImpl??v.e(8).then(v.bind(v,8008)).then(r=>r);let i;return i=this.loadingSchedulerFn?this.loadingSchedulerFn(e):e(),i.catch(r=>{throw new o.wOt(5300,!1)}).then(({\u0275createEngine:r,\u0275AnimationRendererFactory:s})=>{this._engine=r(this.animationType,this.doc);const l=new s(this.delegate,this._engine,this.zone);return this.delegate=l,l})}createRenderer(e,i){const r=this.delegate.createRenderer(e,i);if(0===r.\u0275type)return r;"boolean"==typeof r.throwOnSyntheticProps&&(r.throwOnSyntheticProps=!1);const s=new gMe(r);return i?.data?.animation&&!this._rendererFactoryPromise&&(this._rendererFactoryPromise=this.loadImpl()),this._rendererFactoryPromise?.then(l=>{const u=l.createRenderer(e,i);s.use(u),this.scheduler?.notify(10)}).catch(l=>{s.use(r)}),s}begin(){this.delegate.begin?.()}end(){this.delegate.end?.()}whenRenderingDone(){return this.delegate.whenRenderingDone?.()??Promise.resolve()}static{this.\u0275fac=function(i){o.QTQ()}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();class gMe{constructor(t){this.delegate=t,this.replay=[],this.\u0275type=1}use(t){if(this.delegate=t,null!==this.replay){for(const e of this.replay)e(t);this.replay=null}}get data(){return this.delegate.data}destroy(){this.replay=null,this.delegate.destroy()}createElement(t,e){return this.delegate.createElement(t,e)}createComment(t){return this.delegate.createComment(t)}createText(t){return this.delegate.createText(t)}get destroyNode(){return this.delegate.destroyNode}appendChild(t,e){this.delegate.appendChild(t,e)}insertBefore(t,e,i,r){this.delegate.insertBefore(t,e,i,r)}removeChild(t,e,i){this.delegate.removeChild(t,e,i)}selectRootElement(t,e){return this.delegate.selectRootElement(t,e)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setAttribute(t,e,i,r){this.delegate.setAttribute(t,e,i,r)}removeAttribute(t,e,i){this.delegate.removeAttribute(t,e,i)}addClass(t,e){this.delegate.addClass(t,e)}removeClass(t,e){this.delegate.removeClass(t,e)}setStyle(t,e,i,r){this.delegate.setStyle(t,e,i,r)}removeStyle(t,e,i){this.delegate.removeStyle(t,e,i)}setProperty(t,e,i){this.shouldReplay(e)&&this.replay.push(r=>r.setProperty(t,e,i)),this.delegate.setProperty(t,e,i)}setValue(t,e){this.delegate.setValue(t,e)}listen(t,e,i){return this.shouldReplay(e)&&this.replay.push(r=>r.listen(t,e,i)),this.delegate.listen(t,e,i)}shouldReplay(t){return null!==this.replay&&t.startsWith("@")}}const _Me=new o.nKC(""),TV=sn($c,n=>n.focusedNodePath),vMe=[uc,TV,WW,tK,JX,eK,hv,Kp];const FY=[o2,Hp,F3,D3,A2,p2,d2,l2,c2,a2,lx,ax,M2,r0,u2,h2,f2,sx,$p,Zh,cx,o0,wR,xR,_2,CR,qp,jp,Hu,m2,TR,b2,IR,s2,hu],xMe=1e3/60;let DY=(()=>{class n{constructor(e,i,r,s,l){this.store=e,this.actions$=i,this.uploadFilesService=r,this.threeRendererService=s,this.codeMapRenderService=l,this.actionsRequiringRender$=this.actions$.pipe(Jh(...FY)),this.renderCodeMap$=os(()=>d0([this.store.select(Fd),this.actionsRequiringRender$]).pipe(hr(([u])=>!!u.unifiedMapNode),function wMe(n,t=tu,e){const i=Gf(n,t);return function yMe(n,t){return(0,Ir.N)((e,i)=>{const{leading:r=!0,trailing:s=!1}=t??{};let l=!1,u=null,f=null,p=!1;const m=()=>{f?.unsubscribe(),f=null,s&&(w(),p&&i.complete())},_=()=>{f=null,p&&i.complete()},b=F=>f=Rr(n(F)).subscribe((0,lr._)(i,m,_)),w=()=>{if(l){l=!1;const F=u;u=null,i.next(F),!p&&b(F)}};e.subscribe((0,lr._)(i,F=>{l=!0,u=F,(!f||f.closed)&&(r?w():b(F))},()=>{p=!0,(!(s&&l&&f)||f.closed)&&i.complete()}))})}(()=>i,e)}(xMe,tu,{leading:!1,trailing:!0}),ro(([u])=>{this.codeMapRenderService.render(u.unifiedMapNode),this.codeMapRenderService.scaleMap(),this.threeRendererService.render()}),lR()),{dispatch:!1}),this.removeLoadingIndicatorAfterRender$=os(()=>this.renderCodeMap$.pipe(hr(()=>!this.uploadFilesService.isUploading),ro(()=>{this.store.dispatch(Ic({value:!1})),this.store.dispatch(hh({value:!1}))})),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Xp),o.KVO(U1),o.KVO(wr),o.KVO(dX))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),CMe=(()=>{class n{constructor(e,i,r,s){this.store=e,this.renderCodeMapEffect=i,this.threeMapControlsService=r,this.actions$=s,this.autoFitTo$=os(()=>d0(vMe.map(l=>this.store.select(l))).pipe(C_(1),ul(this.store.select(qW)),hr(([,l])=>l),Qp(()=>this.renderCodeMapEffect.renderCodeMap$.pipe(ms(1))),ro(()=>{this.threeMapControlsService.autoFitTo()})),{dispatch:!1}),this.autoFitToWhenResetCameraIfNewFileIsLoadedSetToFalse$=os(()=>this.actions$.pipe(Jh("StartWithGlobalOption:resetCameraIfNewFileIsLoadedSetToFalse"),r2(),Qp(()=>this.renderCodeMapEffect.renderCodeMap$.pipe(ms(1))),ro(()=>{this.threeMapControlsService.autoFitTo()})),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(DY),o.KVO(Rd),o.KVO(Xp))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),MMe=(()=>{class n{constructor(e){this.store=e,this.linkHeightAndColorMetric$=os(()=>d0([this.store.select(C2),this.store.select($7)]).pipe(hr(([,i])=>i),(0,qn.T)(([i])=>Hu({value:i}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const IV=sn(RX,jw,(n,t)=>n?t.get(n.nodeId):null),EMe=sn($w,n=>n.markingColors),SMe=sn(IV,EMe,bY,(n,t,e)=>{if(null===n)return t.map(r=>({color:r,isMarked:!1}));const i=IW(e,n.path);return t.map(r=>({color:r,isMarked:-1!==i&&r===e[i].color}))});function TMe(n,t){1&n&&o.nrm(0,"i",5)}function IMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",4),o.bIt("click",function(){const r=o.eBV(e).$implicit,s=o.XpG(),l=o.XpG();return o.Njj(r.isMarked?l.unmarkFolder(s.path):l.markFolder(s.path,r.color))}),o.DNE(1,TMe,1,0,"i",5),o.k0s()}if(2&n){const e=t.$implicit;o.xc7("background-color",e.color),o.R7$(),o.vxM(e.isMarked?1:-1)}}function FMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"div",1),o.Z7z(1,IMe,2,3,"button",2,o.fX1),o.nI1(3,"async"),o.j41(4,"cc-color-picker",3),o.bIt("onColorChange",function(r){const s=o.eBV(e),l=o.XpG();return o.Njj(l.markFolder(s.path,r))}),o.k0s()()}if(2&n){const e=o.XpG(),i=o.sdS(3);o.R7$(),o.Dyx(o.bMT(3,2,e.markFolderItems$)),o.R7$(3),o.Y8G("hexColor","#ff0000")("triggerTemplate",i)}}function DMe(n,t){1&n&&o.nrm(0,"div",6)}let BMe=(()=>{class n{constructor(e){this.store=e,this.markFolderItems$=this.store.select(SMe),this.codeMapNode$=this.store.select(IV)}markFolder(e,i){this.store.dispatch(b2({packages:[{path:e,color:i}]}))}unmarkFolder(e){this.store.dispatch(IR({path:e}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-mark-folder-row"]],standalone:!0,features:[o.aNF],decls:4,vars:3,consts:[["colorPickerTriggerTemplate",""],[1,"row"],["title","Colorize folder",1,"colorButton",3,"background-color"],[3,"onColorChange","hexColor","triggerTemplate"],["title","Colorize folder",1,"colorButton",3,"click"],[1,"fa","fa-times"],[1,"cc-color-picker-trigger","fa","fa-paint-brush"]],template:function(i,r){if(1&i&&(o.DNE(0,FMe,5,4,"div",1),o.nI1(1,"async"),o.DNE(2,DMe,1,0,"ng-template",null,0,o.C5r)),2&i){let s;o.vxM((s=o.bMT(1,1,r.codeMapNode$))?0:-1,s)}},dependencies:[Mq,zn],styles:["[_nghost-%COMP%] .row[_ngcontent-%COMP%]{display:flex}[_nghost-%COMP%] [_ngcontent-%COMP%]:hover{cursor:pointer}[_nghost-%COMP%] .colorButton[_ngcontent-%COMP%]{width:32px;height:32px}[_nghost-%COMP%] .colorButton[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:25px;display:block;color:red;text-shadow:-1px 0 white,0 1px white,1px 0 white,0 -1px white}[_nghost-%COMP%] cc-color-picker[_ngcontent-%COMP%]{width:32px;height:32px}[_nghost-%COMP%] cc-color-picker[_ngcontent-%COMP%] .cc-color-picker-trigger[_ngcontent-%COMP%]{font-size:25px;margin-top:8px}"]})}}return n})();const kMe=sn(TV,n=>n[0]);let RMe=(()=>{class n{transform(e,i){if(!e||!i)return{isNodeFocused:!1,isParentFocused:!1};const r=e===i.path;return{isNodeFocused:r,isParentFocused:!r&&i.path.startsWith(e)}}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"isNodeFocused",type:n,pure:!0,standalone:!0})}}return n})();function PMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",1),o.bIt("click",function(){o.eBV(e);const r=o.XpG(2);return o.Njj(r.handleFocusNodeClicked())}),o.nrm(1,"i",2),o.EFF(2," FOCUS "),o.k0s()}}function OMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",5),o.bIt("click",function(){o.eBV(e);const r=o.XpG(3);return o.Njj(r.handleUnfocusAllNodesClicked())}),o.nrm(1,"i",2),o.EFF(2," UNFOCUS ALL "),o.k0s()}}function NMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",3),o.bIt("click",function(){o.eBV(e);const r=o.XpG(2);return o.Njj(r.handleUnfocusNodeClicked())}),o.nrm(1,"i",2),o.EFF(2),o.k0s(),o.DNE(3,OMe,3,0,"button",4),o.nI1(4,"async")}if(2&n){const e=o.XpG(),i=o.XpG();o.R7$(2),o.SpI(" ",e.isParentFocused?"UNFOCUS PARENT":"UNFOCUS"," "),o.R7$(),o.vxM(o.bMT(4,2,i.hasPreviousFocusedNodePath$)?3:-1)}}function LMe(n,t){if(1&n&&o.DNE(0,PMe,3,0,"button",0)(1,NMe,5,4),2&n){const e=t;o.vxM(e.isNodeFocused?-1:0),o.R7$(),o.vxM(e.isNodeFocused||e.isParentFocused?1:-1)}}let UMe=(()=>{class n{constructor(e){this.store=e,this.currentFocusedNodePath$=this.store.select(kMe),this.hasPreviousFocusedNodePath$=this.store.select(TV).pipe((0,qn.T)(i=>i.length>1))}handleFocusNodeClicked(){this.store.dispatch(xR({value:this.codeMapNode.path}))}handleUnfocusNodeClicked(){this.store.dispatch(CR())}handleUnfocusAllNodesClicked(){this.store.dispatch(_2())}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-focus-buttons"]],inputs:{codeMapNode:"codeMapNode"},standalone:!0,features:[o.aNF],decls:3,vars:6,consts:[["mat-button","","id","focus-button","title","Only show selected nodes with children-nodes"],["mat-button","","id","focus-button","title","Only show selected nodes with children-nodes",3,"click"],[1,"fa","fa-bullseye"],["mat-button","","aria-label","Remove Focus from node","title","Show previous focused node",3,"click"],["mat-button","","aria-label","Remove Focus from all nodes","title","Show complete map"],["mat-button","","aria-label","Remove Focus from all nodes","title","Show complete map",3,"click"]],template:function(i,r){if(1&i&&(o.DNE(0,LMe,2,2),o.nI1(1,"async"),o.nI1(2,"isNodeFocused")),2&i){let s;o.vxM((s=o.i5U(2,3,o.bMT(1,1,r.currentFocusedNodePath$),r.codeMapNode))?0:-1,s)}},dependencies:[ns,zn,RMe],styles:["button[_ngcontent-%COMP%]{width:100%;text-align:left;margin:0;justify-content:left;line-height:30px;min-height:30px}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{min-width:15px}button[_ngcontent-%COMP%] .png-icon[_ngcontent-%COMP%]{width:17px;height:17px;margin:5px auto auto;padding:0;display:inline-block;background-repeat:no-repeat no-repeat;pointer-events:none}"]})}}return n})();function VMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.flattenNode())}),o.nrm(1,"img",3),o.EFF(2," FLATTEN "),o.k0s()}}function HMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",4),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.unFlattenNode())}),o.nrm(1,"img",3),o.EFF(2," SHOW "),o.k0s()}}let QMe=(()=>{class n{constructor(e){this.store=e}flattenNode(){this.store.dispatch(d6({item:{path:this.codeMapNode.path,type:"flatten",nodeType:this.codeMapNode.type}}))}unFlattenNode(){this.store.dispatch(SR({item:{path:this.codeMapNode.path,type:"flatten",nodeType:this.codeMapNode.type}}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-flatten-buttons"]],inputs:{codeMapNode:"codeMapNode"},standalone:!0,features:[o.aNF],decls:2,vars:1,consts:[["mat-button","","title","Flatten node and children-nodes, but keep an empty space"],["mat-button","","title","Show node and children-nodes"],["mat-button","","title","Flatten node and children-nodes, but keep an empty space",3,"click"],["alt","flattenIcon","src","codeCharta/assets/flatten.png",1,"png-icon"],["mat-button","","title","Show node and children-nodes",3,"click"]],template:function(i,r){1&i&&o.DNE(0,VMe,3,0,"button",0)(1,HMe,3,0,"button",1),2&i&&o.vxM(null!=r.codeMapNode&&r.codeMapNode.isFlattened?1:0)},dependencies:[ns],styles:["button[_ngcontent-%COMP%]{width:100%;text-align:left;margin:0;justify-content:left;line-height:30px;min-height:30px}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{min-width:15px}button[_ngcontent-%COMP%] .png-icon[_ngcontent-%COMP%]{width:17px;height:17px;margin:5px auto auto;padding:0;display:inline-block;background-repeat:no-repeat no-repeat;pointer-events:none}"]})}}return n})();function zMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",2),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.addNodeToConstantHighlight())}),o.nrm(1,"i",3),o.EFF(2," KEEP HIGHLIGHT "),o.k0s()}}function GMe(n,t){if(1&n){const e=o.RV6();o.j41(0,"button",4),o.bIt("click",function(){o.eBV(e);const r=o.XpG();return o.Njj(r.removeNodeFromConstantHighlight())}),o.nrm(1,"i",3),o.EFF(2," REMOVE HIGHLIGHT "),o.k0s()}}let jMe=(()=>{class n{constructor(e,i){this.threeSceneService=e,this.idToBuilding=i}ngOnChanges(e){e.codeMapNode&&(this.isHighlighted=this.calculateIsHighlighted())}addNodeToConstantHighlight(){this.threeSceneService.addNodeAndChildrenToConstantHighlight(this.codeMapNode)}removeNodeFromConstantHighlight(){this.threeSceneService.removeNodeAndChildrenFromConstantHighlight(this.codeMapNode)}calculateIsHighlighted(){if(!this.codeMapNode)return!1;const e=this.idToBuilding.get(this.codeMapNode.id);return!!e&&this.threeSceneService.getConstantHighlight().has(e.id)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Dd),o.rXU(PS))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-highlight-buttons"]],inputs:{codeMapNode:"codeMapNode"},standalone:!0,features:[o.OA$,o.aNF],decls:2,vars:1,consts:[["mat-button","","title","Highlight node constantly"],["mat-button","","title","Remove constant highlight"],["mat-button","","title","Highlight node constantly",3,"click"],[1,"fa","fa-cubes"],["mat-button","","title","Remove constant highlight",3,"click"]],template:function(i,r){1&i&&o.DNE(0,zMe,3,0,"button",0)(1,GMe,3,0,"button",1),2&i&&o.vxM(r.isHighlighted?1:0)},dependencies:[ns],styles:["button[_ngcontent-%COMP%]{width:100%;text-align:left;margin:0;justify-content:left;line-height:30px;min-height:30px}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{min-width:15px}button[_ngcontent-%COMP%] .png-icon[_ngcontent-%COMP%]{width:17px;height:17px;margin:5px auto auto;padding:0;display:inline-block;background-repeat:no-repeat no-repeat;pointer-events:none}"]})}}return n})(),$Me=(()=>{class n{constructor(e){this.store=e}excludeNode(){this.store.dispatch(u6({items:[{path:this.codeMapNode.path,type:"exclude",nodeType:this.codeMapNode.type}]}))}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-exclude-button"]],inputs:{codeMapNode:"codeMapNode"},standalone:!0,features:[o.aNF],decls:3,vars:0,consts:[["mat-button","","id","exclude-button","title","Exclude node and children-nodes and reorder the CodeMap",3,"click"],[1,"fa","fa-ban"]],template:function(i,r){1&i&&(o.j41(0,"button",0),o.bIt("click",function(){return r.excludeNode()}),o.nrm(1,"i",1),o.EFF(2," EXCLUDE\n"),o.k0s())},dependencies:[ns],styles:["button[_ngcontent-%COMP%]{width:100%;text-align:left;margin:0;justify-content:left;line-height:30px;min-height:30px}button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{min-width:15px}button[_ngcontent-%COMP%] .png-icon[_ngcontent-%COMP%]{width:17px;height:17px;margin:5px auto auto;padding:0;display:inline-block;background-repeat:no-repeat no-repeat;pointer-events:none}"]})}}return n})(),qMe=(()=>{class n{transform(e){return`${0===e.lastIndexOf("/")?"":"..."}${e.slice(e.lastIndexOf("/"))}`}static{this.\u0275fac=function(i){return new(i||n)}}static{this.\u0275pipe=o.EJ8({name:"lastPartOfNodePath",type:n,pure:!0,standalone:!0})}}return n})();function WMe(n,t){1&n&&(o.j41(0,"div"),o.nrm(1,"cc-mark-folder-row")(2,"mat-divider"),o.k0s())}function XMe(n,t){if(1&n&&(o.j41(0,"mat-card",0),o.DNE(1,WMe,3,0,"div"),o.j41(2,"div",1)(3,"button",2),o.EFF(4),o.nI1(5,"lastPartOfNodePath"),o.k0s(),o.nrm(6,"cc-focus-buttons",3)(7,"cc-flatten-buttons",3)(8,"cc-highlight-buttons",3)(9,"cc-exclude-button",3),o.k0s()()),2&n){const e=t;o.R7$(),o.vxM((null==e||null==e.children?null:e.children.length)>0?1:-1),o.R7$(2),o.FS9("title",e.path),o.R7$(),o.SpI(" ",o.bMT(5,7,e.path)," "),o.R7$(2),o.Y8G("codeMapNode",e),o.R7$(),o.Y8G("codeMapNode",e),o.R7$(),o.Y8G("codeMapNode",e),o.R7$(),o.Y8G("codeMapNode",e)}}let KMe=(()=>{class n{constructor(e){this.store=e}ngOnInit(){this.codeMapNode$=this.store.select(IV)}static{this.\u0275fac=function(i){return new(i||n)(o.rXU(Yt))}}static{this.\u0275cmp=o.VBU({type:n,selectors:[["cc-node-context-menu-card"]],standalone:!0,features:[o.aNF],decls:2,vars:3,consts:[["appearance","outlined","id","codemap-context-menu"],[1,"button-group"],["mat-button","","disabled","true",3,"title"],[3,"codeMapNode"]],template:function(i,r){if(1&i&&(o.DNE(0,XMe,10,9,"mat-card",0),o.nI1(1,"async")),2&i){let s;o.vxM((s=o.bMT(1,1,r.codeMapNode$))?0:-1,s)}},dependencies:[e2,BMe,L7,ns,UMe,QMe,jMe,$Me,zn,qMe],styles:["#codemap-context-menu[_ngcontent-%COMP%]{padding:12px}#codemap-context-menu[_ngcontent-%COMP%] .button-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px;width:100%}"]})}}return n})(),YMe=(()=>{class n{constructor(e,i){this.overlay=e,this.store=i,this.overlayReference=null,this.close=()=>{document.removeEventListener("click",this.onLeftClickHideNodeContextMenu,!0),document.removeEventListener("mousedown",this.onRightClickHideNodeContextMenu,!0),document.getElementById("codeMap").removeEventListener("wheel",this.close,!0),this.store.dispatch(hx(null)),this.overlayReference&&this.resetOverlay()},this.onLeftClickHideNodeContextMenu=r=>{this.isEventFromColorPicker(r)||this.close()},this.onRightClickHideNodeContextMenu=r=>{2===r.button&&this.close()}}open(e,i){this.overlayReference&&this.resetOverlay();const r=this.overlay.position().flexibleConnectedTo({x:e,y:i}).withPositions([{originX:"end",originY:"bottom",overlayX:"start",overlayY:"top"}]);this.overlayReference=this.overlay.create({positionStrategy:r,scrollStrategy:this.overlay.scrollStrategies.close()}),this.overlayReference.attach(new cm(KMe)),this.overlayReference.overlayElement.addEventListener("contextmenu",s=>{s.preventDefault()}),document.addEventListener("click",this.onLeftClickHideNodeContextMenu,!1),document.addEventListener("mousedown",this.onRightClickHideNodeContextMenu,!0),document.getElementById("codeMap").addEventListener("wheel",this.close,!0)}resetOverlay(){this.overlayReference.dispose(),this.overlayReference=null}isEventFromColorPicker(e){return e.composedPath().some(r=>"CC-COLOR-PICKER"===r?.nodeName||"COLOR-CHROME"===r?.nodeName)}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Ns),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})(),ZMe=(()=>{class n{constructor(e,i){this.actions$=e,this.nodeContextMenu=i,this.openNodeContextMenu$=os(()=>this.actions$.pipe(Jh(hx),ro(r=>{r.value&&this.nodeContextMenu.open(r.value.xPositionOfRightClickEvent,r.value.yPositionOfRightClickEvent)})),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Xp),o.KVO(YMe))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),JMe=(()=>{class n{constructor(e){this.store=e,this.resetSelectedEdgeMetricWhenItDoesntExistAnymore$=os(()=>this.store.select(ka).pipe(ul(this.store.select(Yp)),hr(([i,r])=>!i.edgeMetricData.some(s=>s.name===r)),(0,qn.T)(([i])=>i.edgeMetricData[0]?.name),kr(),(0,qn.T)(i=>$p({value:i}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();const nEe=[[TR,b2,IR,h6,Iq,Fq,a6,l6,s6,c6,d6,ER,SR],[o2,A2,p2,MW,V6,TW,n7,Hp,F3,D3,yR,m2,i6,bR,d2,c2,l2,a2,lx,ax,M2,r0,vR,_R,gR,u2,h2,f2,r6,o6,s2],[sx,MR,$p,Zh,cx,o0,$,wR,_2,xR,CR,qp,g2,Hu,jp],[...mt]].flat();let iEe=(()=>{class n{constructor(e,i){var r=this;this.actions$=e,this.state=i,this.saveCcState$=os(()=>this.actions$.pipe(hr(s=>s.type!==ux.type),Jh(...nEe),x_(500),ro(Mn(function*(){const s=r.state.getValue();yield function sue(n){return w6.apply(this,arguments)}(s)}))),{dispatch:!1})}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Xp),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),rEe=(()=>{class n{constructor(e,i){this.actions$=e,this.store=i,this.setIsLoadingFile$=os(()=>this.store.select(uc).pipe((0,qn.T)(()=>Ic({value:!0})))),this.setIsLoadingMap$=os(()=>this.actions$.pipe(Jh(...FY),(0,qn.T)(()=>hh({value:!0}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Xp),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),oEe=(()=>{class n{constructor(e){this.store=e,this.resetIsEdgeMetricVisible$=os(()=>this.store.select(Yp).pipe(ul(this.store.select(wV)),hr(([,i])=>!i),(0,qn.T)(()=>bR())))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();function sEe(n,t){const e=new Map;if(1===n.length)return n[0].settings.fileSettings.edges;for(const i of n)if(i.settings.fileSettings.edges)for(const r of i.settings.fileSettings.edges){const s={fromNodeName:t?BS(i.fileMeta.fileName,r.fromNodeName):r.fromNodeName,toNodeName:t?BS(i.fileMeta.fileName,r.toNodeName):r.toNodeName,attributes:C(r.attributes),visible:r.visible},l=e.get(`${s.fromNodeName}|${s.toNodeName}`);if(void 0!==l)for(const u of Object.keys(s.attributes))l.attributes[u]=s.attributes[u];else e.set(`${s.fromNodeName}|${s.toNodeName}`,s)}return[...e.values()]}function aEe(n,t){if(1===n.length)return n[0].settings.fileSettings.markedPackages;const e=new Map;for(const i of n)if(i.settings.fileSettings.markedPackages)for(const r of i.settings.fileSettings.markedPackages){const s={path:t?_G(i.fileMeta.fileName,r.path):r.path,color:r.color};e.set(`${s.path}|${s.color}`,s)}return[...e.values()]}function lEe(n,t){const e=new Map;if(1===n.length)return n[0].settings.fileSettings.blacklist;for(const i of n)if(i.settings.fileSettings.blacklist)for(const r of i.settings.fileSettings.blacklist){const s={path:t?_G(i.fileMeta.fileName,r.path):r.path,type:r.type};e.set(`${s.path}|${s.type}`,s)}return[...e.values()]}function cEe(n){const t={},e={};for(const i of n){for(const r of Object.keys(i.nodes))t[r]||(t[r]=i.nodes[r]);for(const r of Object.keys(i.edges))e[r]||(e[r]=i.edges[r])}return{nodes:t,edges:e}}function dEe(n){const t={};for(const e of n)for(const i of Object.keys(e))t[i]||(t[i]=e[i]);return t}let uEe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.updateFileSettings$=os(()=>this.store.select(uc).pipe((0,qn.T)(()=>{const r=this.state.getValue(),s=function Ere(n){return M3(n).map(t=>t.file)}(r.files),l=pG(r.files),u=uc(r).map(({file:p})=>p.settings.fileSettings.attributeTypes),f=uc(r).map(({file:p})=>p.settings.fileSettings.attributeDescriptors);return hu({value:{fileSettings:{edges:sEe(s,l),markedPackages:aEe(s,l),blacklist:lEe(s,l),attributeTypes:cEe(u),attributeDescriptors:dEe(f)}}})})))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),hEe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.updateMapColors$=os(()=>this.store.select(zg).pipe((0,qn.T)(r=>{const s=this.state.getValue(),l=s.fileSettings.attributeDescriptors,u=s.appSettings.mapColors;if(1===l[r]?.direction){const f=JSON.parse(Vu(u)),p=f.negative;return f.negative=f.positive,f.positive=p,Hp({value:f})}return Hp({value:u??qh})})))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),fEe=(()=>{class n{constructor(e,i){this.store=e,this.state=i,this.updateVisibleTopLabels$=os(()=>this.store.select(uc).pipe(NW(),ul(this.store.select(jR)),(0,qn.T)(([[r,s],l])=>{const f=Vu(r)===Vu(s)?this.state.getValue().appSettings.amountOfTopLabels:E7(l);return r0({value:f})})))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Yt),o.KVO(Vi))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})(),pEe=(()=>{class n{constructor(e,i){this.actions$=e,this.store=i,this.resetColorRange$=os(()=>this.actions$.pipe(Jh(...mt),ul(this.store.select(uc)),Qp(()=>this.store.select(Vp).pipe(C_(1),ms(1))),(0,qn.T)(r=>Zh({value:nP(r)})))),this.resetColorRangeOnColorMetricChange$=os(()=>this.actions$.pipe(Jh(Hu),Qp(()=>this.store.select(Vp).pipe(ms(1))),(0,qn.T)(r=>Zh({value:nP(r)}))))}static{this.\u0275fac=function(i){return new(i||n)(o.KVO(Xp),o.KVO(Yt))}}static{this.\u0275prov=o.jDH({token:n,factory:n.\u0275fac})}}return n})();!function Ua(n,t){(0,o.TL3)({rootComponent:n,...bA(t)})}($Ce,{providers:[function bMe(n="animations"){return(0,o.ngT)("NgAsyncAnimations"),(0,o.EmA)([{provide:o._9s,useFactory:(t,e,i)=>new mMe(t,e,i,n),deps:[V,La,o.SKi]},{provide:o.bc$,useValue:"noop"===n?"NoopAnimations":"BrowserAnimations"}])}(),function fhe(...n){const t=[B6,dW,lW,{provide:BR,useExisting:lW},{provide:kR,useFactory:()=>(0,o.WQX)(k6,{optional:!0})??(0,o.WQX)(dW)},{provide:x2,useValue:hhe,multi:!0},{provide:P6,useValue:!0},{provide:fW,useClass:uhe}];for(const e of n)t.push(...e.\u0275providers);return(0,o.EmA)(t)}(function phe(){return function uv(n,t){return{\u0275kind:n,\u0275providers:t}}(c0.LegacyInterceptors,[{provide:pW,useFactory:nhe},{provide:x2,useExisting:pW,multi:!0}])}()),function tm(n,t){return(0,o.EmA)([...em(n,t),uC])}(Gfe,{metaReducers:[n=>(t,e)=>{const i=function iF(n){return n.type===hu.type}(e)?OW({...t},e.value):t;return n(i,e)}]}),function Oue(...n){const t=n.flat(),e=function gue(n){return n.filter(T6)}(t);return(0,o.EmA)([e,{provide:o.Z63,multi:!0,useValue:()=>{(0,o.WQX)(ud),(0,o.WQX)(_o,{optional:!0});const i=(0,o.WQX)(Xq),r=(0,o.WQX)(Wq),s=!i.isStarted;s&&i.start();for(const l of t){const u=T6(l)?(0,o.WQX)(l):l;r.addEffects(u)}s&&(0,o.WQX)(Yt).dispatch(xue())}}])}([qCe,pX,ZMe,xme,pEe,Rhe,oEe,DY,CMe,fEe,MMe,JMe,uEe,rEe,iEe,Lue,hEe]),{provide:o.hnV,useFactory:n=>()=>n.synchronizeLocalCodeChartaVersion(),deps:[pMe],multi:!0}]})},7172:(nt,Ee,v)=>{"use strict";var j=v(6685),o=v(5841),y=v(8493),Z=v(2420),U=v(8861),L=v(7741),Y=v(8930),V=v(2615),X=v(1677);nt.exports=me,me.prototype.validate=function we(it,kt){var qt;if("string"==typeof it){if(!(qt=this.getSchema(it)))throw new Error('no schema with key or ref "'+it+'"')}else{var cn=this._addSchema(it);qt=cn.validate||this._compile(cn)}var Wt=qt(kt);return!0!==qt.$async&&(this.errors=qt.errors),Wt},me.prototype.compile=function Be(it,kt){var qt=this._addSchema(it,void 0,kt);return qt.validate||this._compile(qt)},me.prototype.addSchema=function Ie(it,kt,qt,cn){if(Array.isArray(it)){for(var Wt=0;Wt{"use strict";var Ee=nt.exports=function(){this._cache={}};Ee.prototype.put=function(j,o){this._cache[j]=o},Ee.prototype.get=function(j){return this._cache[j]},Ee.prototype.del=function(j){delete this._cache[j]},Ee.prototype.clear=function(){this._cache={}}},4442:(nt,Ee,v)=>{"use strict";var j=v(8892).MissingRef;nt.exports=function o(y,Z,U){var L=this;if("function"!=typeof this._opts.loadSchema)throw new Error("options.loadSchema should be a function");"function"==typeof Z&&(U=Z,Z=void 0);var Y=V(y).then(function(){var z=L._addSchema(y,void 0,Z);return z.validate||X(z)});return U&&Y.then(function(z){U(null,z)},U),Y;function V(z){var G=z.$schema;return G&&!L.getSchema(G)?o.call(L,{$ref:G},!0):Promise.resolve()}function X(z){try{return L._compile(z)}catch(Q){if(Q instanceof j)return function G(Q){var ne=Q.missingSchema;if(we(ne))throw new Error("Schema "+ne+" is loaded but "+Q.missingRef+" cannot be resolved");var re=L._loadingSchemas[ne];return re||(re=L._loadingSchemas[ne]=L._opts.loadSchema(ne)).then(me,me),re.then(function(Be){if(!we(ne))return V(Be).then(function(){we(ne)||L.addSchema(Be,ne,void 0,Z)})}).then(function(){return X(z)});function me(){delete L._loadingSchemas[ne]}function we(Be){return L._refs[Be]||L._schemas[Be]}}(Q);throw Q}}}},8892:(nt,Ee,v)=>{"use strict";var j=v(5841);function y(U,L,Y){this.message=Y||y.message(U,L),this.missingRef=j.url(U,L),this.missingSchema=j.normalizeId(j.fullPath(this.missingRef))}function Z(U){return U.prototype=Object.create(Error.prototype),U.prototype.constructor=U,U}nt.exports={Validation:Z(function o(U){this.message="validation failed",this.errors=U,this.ajv=this.validation=!0}),MissingRef:Z(y)},y.message=function(U,L){return"can't resolve reference "+L+" from id "+U}},7741:(nt,Ee,v)=>{"use strict";var j=v(1677),o=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,y=[0,31,28,31,30,31,30,31,31,30,31,30,31],Z=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,U=/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,L=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,V=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,X=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i,z=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,G=/^(?:\/(?:[^~/]|~0|~1)*)*$/,Q=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,ne=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;function re(Ge){return j.copy(re[Ge="full"==Ge?"full":"fast"])}function we(Ge){var st=Ge.match(o);if(!st)return!1;var ve=+st[2],fe=+st[3];return ve>=1&&ve<=12&&fe>=1&&fe<=(2==ve&&function me(Ge){return Ge%4==0&&(Ge%100!=0||Ge%400==0)}(+st[1])?29:y[ve])}function Be(Ge,st){var We=Ge.match(Z);if(!We)return!1;var ve=We[1],fe=We[2],Qe=We[3];return(ve<=23&&fe<=59&&Qe<=59||23==ve&&59==fe&&60==Qe)&&(!st||We[5])}nt.exports=re,re.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,"uri-template":V,url:X,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:U,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:$e,uuid:z,"json-pointer":G,"json-pointer-uri-fragment":Q,"relative-json-pointer":ne},re.full={date:we,time:Be,"date-time":function Ne(Ge){var st=Ge.split(Ie);return 2==st.length&&we(st[0])&&Be(st[1],!0)},uri:function He(Ge){return Je.test(Ge)&&L.test(Ge)},"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":V,url:X,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:U,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:$e,uuid:z,"json-pointer":G,"json-pointer-uri-fragment":Q,"relative-json-pointer":ne};var Ie=/t|\s/i,Je=/\/|:/,qe=/[^\\]\\Z/;function $e(Ge){if(qe.test(Ge))return!1;try{return new RegExp(Ge),!0}catch{return!1}}},6685:(nt,Ee,v)=>{"use strict";var j=v(5841),o=v(1677),y=v(8892),Z=v(8861),U=v(604),L=o.ucs2length,Y=v(362),V=y.Validation;function z(Ie,Ne,Je){var He=Q.call(this,Ie,Ne,Je);return He>=0?{index:He,compiling:!0}:(this._compilations[He=this._compilations.length]={schema:Ie,root:Ne,baseId:Je},{index:He,compiling:!1})}function G(Ie,Ne,Je){var He=Q.call(this,Ie,Ne,Je);He>=0&&this._compilations.splice(He,1)}function Q(Ie,Ne,Je){for(var He=0;He{"use strict";var j=v(5568),o=v(362),y=v(1677),Z=v(2420),U=v(4331);function L(He,qe,$e){var Ge=this._refs[$e];if("string"==typeof Ge){if(!this._refs[Ge])return L.call(this,He,qe,Ge);Ge=this._refs[Ge]}if((Ge=Ge||this._schemas[$e])instanceof Z)return Q(Ge.schema,this._opts.inlineRefs)?Ge.schema:Ge.validate||this._compile(Ge);var We,ve,fe,st=Y.call(this,qe,$e);return st&&(We=st.schema,qe=st.root,fe=st.baseId),We instanceof Z?ve=We.validate||He.call(this,We.schema,qe,void 0,fe):void 0!==We&&(ve=Q(We,this._opts.inlineRefs)?We:He.call(this,We,qe,void 0,fe)),ve}function Y(He,qe){var $e=j.parse(qe),Ge=we($e),st=me(this._getId(He.schema));if(0===Object.keys(He.schema).length||Ge!==st){var We=Ie(Ge),ve=this._refs[We];if("string"==typeof ve)return V.call(this,He,ve,$e);if(ve instanceof Z)ve.validate||this._compile(ve),He=ve;else{if(!((ve=this._schemas[We])instanceof Z))return;if(ve.validate||this._compile(ve),We==Ie(qe))return{schema:ve,root:He,baseId:st};He=ve}if(!He.schema)return;st=me(this._getId(He.schema))}return z.call(this,$e,st,He.schema,He)}function V(He,qe,$e){var Ge=Y.call(this,He,qe);if(Ge){var st=Ge.schema,We=Ge.baseId;He=Ge.root;var ve=this._getId(st);return ve&&(We=Ne(We,ve)),z.call(this,$e,We,st,He)}}nt.exports=L,L.normalizeId=Ie,L.fullPath=me,L.url=Ne,L.ids=function Je(He){var qe=Ie(this._getId(He)),$e={"":qe},Ge={"":me(qe,!1)},st={},We=this;return U(He,{allKeys:!0},function(ve,fe,Qe,Te,Le,pt,wt){if(""!==fe){var Nt=We._getId(ve),Rt=$e[Te],fn=Ge[Te]+"/"+Le;if(void 0!==wt&&(fn+="/"+("number"==typeof wt?wt:y.escapeFragment(wt))),"string"==typeof Nt){Nt=Rt=Ie(Rt?j.resolve(Rt,Nt):Nt);var $n=We._refs[Nt];if("string"==typeof $n&&($n=We._refs[$n]),$n&&$n.schema){if(!o(ve,$n.schema))throw new Error('id "'+Nt+'" resolves to more than one schema')}else if(Nt!=Ie(fn))if("#"==Nt[0]){if(st[Nt]&&!o(ve,st[Nt]))throw new Error('id "'+Nt+'" resolves to more than one schema');st[Nt]=ve}else We._refs[Nt]=fn}$e[fe]=Rt,Ge[fe]=fn}}),st},L.inlineRef=Q,L.schema=Y;var X=y.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function z(He,qe,$e,Ge){if(He.fragment=He.fragment||"","/"==He.fragment.slice(0,1)){for(var st=He.fragment.split("/"),We=1;We{"use strict";var j=v(2956),o=v(1677).toHash;nt.exports=function(){var Z=[{type:"number",rules:[{maximum:["exclusiveMaximum"]},{minimum:["exclusiveMinimum"]},"multipleOf","format"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","items","contains","uniqueItems"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","propertyNames",{properties:["additionalProperties","patternProperties"]}]},{rules:["$ref","const","enum","not","anyOf","oneOf","allOf","if"]}],U=["type","$comment"];return Z.all=o(U),Z.types=o(["number","integer","string","array","object","boolean","null"]),Z.forEach(function(V){V.rules=V.rules.map(function(X){var z;if("object"==typeof X){var G=Object.keys(X)[0];z=X[G],X=G,z.forEach(function(ne){U.push(ne),Z.all[ne]=!0})}return U.push(X),Z.all[X]={keyword:X,code:j[X],implements:z}}),Z.all.$comment={keyword:"$comment",code:j.$comment},V.type&&(Z.types[V.type]=V)}),Z.keywords=o(U.concat(["$schema","$id","id","$data","$async","title","description","default","definitions","examples","readOnly","writeOnly","contentMediaType","contentEncoding","additionalItems","then","else"])),Z.custom={},Z}},2420:(nt,Ee,v)=>{"use strict";var j=v(1677);nt.exports=function o(y){j.copy(y,this)}},1132:nt=>{"use strict";nt.exports=function(v){for(var Z,j=0,o=v.length,y=0;y=55296&&Z<=56319&&y{"use strict";function o(ve,fe,Qe,Te){var Le=Te?" !== ":" === ",pt=Te?" || ":" && ",wt=Te?"!":"",Nt=Te?"":"!";switch(ve){case"null":return fe+Le+"null";case"array":return wt+"Array.isArray("+fe+")";case"object":return"("+wt+fe+pt+"typeof "+fe+Le+'"object"'+pt+Nt+"Array.isArray("+fe+"))";case"integer":return"(typeof "+fe+Le+'"number"'+pt+Nt+"("+fe+" % 1)"+pt+fe+Le+fe+(Qe?pt+wt+"isFinite("+fe+")":"")+")";case"number":return"(typeof "+fe+Le+'"'+ve+'"'+(Qe?pt+wt+"isFinite("+fe+")":"")+")";default:return"typeof "+fe+Le+'"'+ve+'"'}}nt.exports={copy:function j(ve,fe){for(var Qe in fe=fe||{},ve)fe[Qe]=ve[Qe];return fe},checkDataType:o,checkDataTypes:function y(ve,fe,Qe){if(1===ve.length)return o(ve[0],fe,Qe,!0);var Te="",Le=L(ve);for(var pt in Le.array&&Le.object&&(Te=Le.null?"(":"(!"+fe+" || ",Te+="typeof "+fe+' !== "object")',delete Le.null,delete Le.array,delete Le.object),Le.number&&delete Le.integer,Le)Te+=(Te?" && ":"")+o(pt,fe,Qe,!0);return Te},coerceToTypes:function U(ve,fe){if(Array.isArray(fe)){for(var Qe=[],Te=0;Te=fe)throw new Error("Cannot access property/index "+Te+" levels up, current level is "+fe);return Qe[fe-Te]}if(Te>fe)throw new Error("Cannot access data "+Te+" levels up, current level is "+fe);if(pt="data"+(fe-Te||""),!Le)return pt}for(var Nt=pt,Rt=Le.split("/"),fn=0;fn{"use strict";var Ee=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","additionalItems","maxItems","minItems","uniqueItems","maxProperties","minProperties","required","additionalProperties","enum","format","const"];nt.exports=function(v,j){for(var o=0;o{"use strict";var j=v(8198);nt.exports={$id:"https://github.com/ajv-validator/ajv/blob/master/lib/definition_schema.js",definitions:{simpleTypes:j.definitions.simpleTypes},type:"object",dependencies:{schema:["validate"],$data:["validate"],statements:["inline"],valid:{not:{required:["macro"]}}},properties:{type:j.properties.type,schema:{type:"boolean"},statements:{type:"boolean"},dependencies:{type:"array",items:{type:"string"}},metaSchema:{type:"object"},modifying:{type:"boolean"},valid:{type:"boolean"},$data:{type:"boolean"},async:{type:"boolean"},errors:{anyOf:[{type:"boolean"},{const:"full"}]}}}},9402:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L;var ne="maximum"==j,re=ne?"exclusiveMaximum":"exclusiveMinimum",me=v.schema[re],we=v.opts.$data&&me&&me.$data,Be=ne?"<":">",Ie=ne?">":"<",Ne=void 0;if(!G&&"number"!=typeof L&&void 0!==L)throw new Error(j+" must be number");if(!we&&void 0!==me&&"number"!=typeof me&&"boolean"!=typeof me)throw new Error(re+" must be number or boolean");if(we){var We,Je=v.util.getData(me.$data,U,v.dataPathArr),He="exclusive"+Z,qe="exclType"+Z,$e="exclIsNumber"+Z,st="' + "+(Ge="op"+Z)+" + '";y+=" var schemaExcl"+Z+" = "+Je+"; ",Ne=re,(We=We||[]).push(y+=" var "+He+"; var "+qe+" = typeof "+(Je="schemaExcl"+Z)+"; if ("+qe+" != 'boolean' && "+qe+" != 'undefined' && "+qe+" != 'number') { "),y="",!1!==v.createErrors?(y+=" { keyword: '"+(Ne||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: '"+re+" should be boolean' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var ve=y;y=We.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+ve+"]); ":" validate.errors = ["+ve+"]; return false; ":" var err = "+ve+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } else if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || "),y+=" "+qe+" == 'number' ? ( ("+He+" = "+Q+" === undefined || "+Je+" "+Be+"= "+Q+") ? "+z+" "+Ie+"= "+Je+" : "+z+" "+Ie+" "+Q+" ) : ( ("+He+" = "+Je+" === true) ? "+z+" "+Ie+"= "+Q+" : "+z+" "+Ie+" "+Q+" ) || "+z+" !== "+z+") { var op"+Z+" = "+He+" ? '"+Be+"' : '"+Be+"='; ",void 0===L&&(Ne=re,V=v.errSchemaPath+"/"+re,Q=Je,G=we)}else if(st=Be,($e="number"==typeof me)&&G){var Ge="'"+st+"'";y+=" if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || "),y+=" ( "+Q+" === undefined || "+me+" "+Be+"= "+Q+" ? "+z+" "+Ie+"= "+me+" : "+z+" "+Ie+" "+Q+" ) || "+z+" !== "+z+") { "}else $e&&void 0===L?(He=!0,Ne=re,V=v.errSchemaPath+"/"+re,Q=me,Ie+="="):($e&&(Q=Math[ne?"min":"max"](me,L)),me===(!$e||Q)?(He=!0,Ne=re,V=v.errSchemaPath+"/"+re,Ie+="="):(He=!1,st+="=")),Ge="'"+st+"'",y+=" if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || "),y+=" "+z+" "+Ie+" "+Q+" || "+z+" !== "+z+") { ";return Ne=Ne||j,(We=We||[]).push(y),y="",!1!==v.createErrors?(y+=" { keyword: '"+(Ne||"_limit")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { comparison: "+Ge+", limit: "+Q+", exclusive: "+He+" } ",!1!==v.opts.messages&&(y+=" , message: 'should be "+st+" ",y+=G?"' + "+Q:Q+"'"),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",ve=y,y=We.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+ve+"]); ":" validate.errors = ["+ve+"]; return false; ":" var err = "+ve+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } ",X&&(y+=" else { "),y}},3792:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;if(G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L,!G&&"number"!=typeof L)throw new Error(j+" must be number");y+="if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || ");var re=j,me=me||[];me.push(y+=" "+z+".length "+("maxItems"==j?">":"<")+" "+Q+") { "),y="",!1!==v.createErrors?(y+=" { keyword: '"+(re||"_limitItems")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { limit: "+Q+" } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT have ",y+="maxItems"==j?"more":"fewer",y+=" than ",y+=G?"' + "+Q+" + '":""+L,y+=" items' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var we=y;return y=me.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},3226:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;if(G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L,!G&&"number"!=typeof L)throw new Error(j+" must be number");y+="if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || "),y+=!1===v.opts.unicode?" "+z+".length ":" ucs2length("+z+") ";var re=j,me=me||[];me.push(y+=" "+("maxLength"==j?">":"<")+" "+Q+") { "),y="",!1!==v.createErrors?(y+=" { keyword: '"+(re||"_limitLength")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { limit: "+Q+" } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT be ",y+="maxLength"==j?"longer":"shorter",y+=" than ",y+=G?"' + "+Q+" + '":""+L,y+=" characters' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var we=y;return y=me.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},2119:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;if(G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L,!G&&"number"!=typeof L)throw new Error(j+" must be number");y+="if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'number') || ");var re=j,me=me||[];me.push(y+=" Object.keys("+z+").length "+("maxProperties"==j?">":"<")+" "+Q+") { "),y="",!1!==v.createErrors?(y+=" { keyword: '"+(re||"_limitProperties")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { limit: "+Q+" } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT have ",y+="maxProperties"==j?"more":"fewer",y+=" than ",y+=G?"' + "+Q+" + '":""+L,y+=" properties' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var we=y;return y=me.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},9218:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.schema[j],U=v.schemaPath+v.util.getProperty(j),L=v.errSchemaPath+"/"+j,Y=!v.opts.allErrors,V=v.util.copy(v),X="";V.level++;var z="valid"+V.level,G=V.baseId,Q=!0,ne=Z;if(ne)for(var re,me=-1,we=ne.length-1;me0||!1===re:v.util.schemaHasRules(re,v.RULES.all))&&(Q=!1,V.schema=re,V.schemaPath=U+"["+me+"]",V.errSchemaPath=L+"/"+me,y+=" "+v.validate(V)+" ",V.baseId=G,Y&&(y+=" if ("+z+") { ",X+="}"));return Y&&(y+=Q?" if (true) { ":" "+X.slice(0,-1)+" "),y}},3883:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v),re="";ne.level++;var me="valid"+ne.level;if(L.every(function($e){return v.opts.strictKeywords?"object"==typeof $e&&Object.keys($e).length>0||!1===$e:v.util.schemaHasRules($e,v.RULES.all)})){var Be=ne.baseId;y+=" var "+Q+" = errors; var "+G+" = false; ";var Ie=v.compositeRule;v.compositeRule=ne.compositeRule=!0;var Ne=L;if(Ne)for(var Je,He=-1,qe=Ne.length-1;He{"use strict";nt.exports=function(v,j,o){var y=" ",U=v.errSchemaPath+"/"+j,Y=v.util.toQuotedString(v.schema[j]);return!0===v.opts.$comment?y+=" console.log("+Y+");":"function"==typeof v.opts.$comment&&(y+=" self._opts.$comment("+Y+", "+v.util.toQuotedString(U)+", validate.root.schema);"),y}},439:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q=v.opts.$data&&L&&L.$data;Q&&(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; "),Q||(y+=" var schema"+Z+" = validate.schema"+Y+";");var re=re||[];re.push(y+="var "+G+" = equal("+z+", schema"+Z+"); if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'const' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { allowedValue: schema"+Z+" } ",!1!==v.opts.messages&&(y+=" , message: 'should be equal to constant' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var me=y;return y=re.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+me+"]); ":" validate.errors = ["+me+"]; return false; ":" var err = "+me+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" }",X&&(y+=" else { "),y}},7939:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v);ne.level++;var me="valid"+ne.level,we="i"+Z,Be=ne.dataLevel=v.dataLevel+1,Ie="data"+Be,Ne=v.baseId,Je=v.opts.strictKeywords?"object"==typeof L&&Object.keys(L).length>0||!1===L:v.util.schemaHasRules(L,v.RULES.all);if(y+="var "+Q+" = errors;var "+G+";",Je){var He=v.compositeRule;v.compositeRule=ne.compositeRule=!0,ne.schema=L,ne.schemaPath=Y,ne.errSchemaPath=V,y+=" var "+me+" = false; for (var "+we+" = 0; "+we+" < "+z+".length; "+we+"++) { ",ne.errorPath=v.util.getPathExpr(v.errorPath,we,v.opts.jsonPointers,!0);var qe=z+"["+we+"]";ne.dataPathArr[Be]=we;var $e=v.validate(ne);ne.baseId=Ne,v.util.varOccurences($e,Ie)<2?y+=" "+v.util.varReplace($e,Ie,qe)+" ":y+=" var "+Ie+" = "+qe+"; "+$e+" ",y+=" if ("+me+") break; } ",v.compositeRule=ne.compositeRule=He,y+=" if (!"+me+") {"}else y+=" if ("+z+".length == 0) {";var Ge=Ge||[];Ge.push(y),y="",!1!==v.createErrors?(y+=" { keyword: 'contains' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: 'should contain a valid item' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var st=y;return y=Ge.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+st+"]); ":" validate.errors = ["+st+"]; return false; ":" var err = "+st+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } else { ",Je&&(y+=" errors = "+Q+"; if (vErrors !== null) { if ("+Q+") vErrors.length = "+Q+"; else vErrors = null; } "),v.opts.allErrors&&(y+=" } "),y}},5237:nt=>{"use strict";nt.exports=function(v,j,o){var z,me,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,G="data"+(U||""),Q="valid"+Z,ne="errs__"+Z,re=v.opts.$data&&L&&L.$data;re?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",me="schema"+Z):me=L;var Je,He,qe,$e,Ge,we=this,Be="definition"+Z,Ie=we.definition,Ne="";if(re&&Ie.$data){var st=Ie.validateSchema;y+=" var "+Be+" = RULES.custom['"+j+"'].definition; var "+(Ge="keywordValidate"+Z)+" = "+Be+".validate;"}else{if(!($e=v.useCustomRule(we,L,v.schema,v)))return;me="validate.schema"+Y,Ge=$e.code,Je=Ie.compile,He=Ie.inline,qe=Ie.macro}var We=Ge+".errors",ve="i"+Z,fe="ruleErr"+Z,Qe=Ie.async;if(Qe&&!v.async)throw new Error("async keyword in sync schema");if(He||qe||(y+=We+" = null;"),y+="var "+ne+" = errors;var "+Q+";",re&&Ie.$data&&(Ne+="}",y+=" if ("+me+" === undefined) { "+Q+" = true; } else { ",st&&(Ne+="}",y+=" "+Q+" = "+Be+".validateSchema("+me+"); if ("+Q+") { ")),He)y+=Ie.statements?" "+$e.validate+" ":" "+Q+" = "+$e.validate+"; ";else if(qe){var Te=v.util.copy(v);Ne="",Te.level++;var Le="valid"+Te.level;Te.schema=$e.validate,Te.schemaPath="";var pt=v.compositeRule;v.compositeRule=Te.compositeRule=!0;var wt=v.validate(Te).replace(/validate\.schema/g,Ge);v.compositeRule=Te.compositeRule=pt,y+=" "+wt}else{(Nt=Nt||[]).push(y),y="",y+=" "+Ge+".call( ",y+=v.opts.passContext?"this":"self",y+=Je||!1===Ie.schema?" , "+G+" ":" , "+me+" , "+G+" , validate.schema"+v.schemaPath+" ",y+=" , (dataPath || '')",'""'!=v.errorPath&&(y+=" + "+v.errorPath);var Rt=U?"data"+(U-1||""):"parentData",fn=U?v.dataPathArr[U]:"parentDataProperty",$n=y+=" , "+Rt+" , "+fn+" , rootData ) ";y=Nt.pop(),!1===Ie.errors?(y+=" "+Q+" = ",Qe&&(y+="await "),y+=$n+"; "):y+=Qe?" var "+(We="customErrors"+Z)+" = null; try { "+Q+" = await "+$n+"; } catch (e) { "+Q+" = false; if (e instanceof ValidationError) "+We+" = e.errors; else throw e; } ":" "+We+" = null; "+Q+" = "+$n+"; "}if(Ie.modifying&&(y+=" if ("+Rt+") "+G+" = "+Rt+"["+fn+"];"),y+=""+Ne,Ie.valid)X&&(y+=" if (true) { ");else{var Nt;y+=" if ( ",void 0===Ie.valid?(y+=" !",y+=qe?""+Le:""+Q):y+=" "+!Ie.valid+" ",z=we.keyword,(Nt=Nt||[]).push(y+=") { "),(Nt=Nt||[]).push(y=""),y="",!1!==v.createErrors?(y+=" { keyword: '"+(z||"custom")+"' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { keyword: '"+we.keyword+"' } ",!1!==v.opts.messages&&(y+=" , message: 'should pass \""+we.keyword+"\" keyword validation' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+G+" "),y+=" } "):y+=" {} ";var Qi=y;y=Nt.pop();var ui=y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+Qi+"]); ":" validate.errors = ["+Qi+"]; return false; ":" var err = "+Qi+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";y=Nt.pop(),He?Ie.errors?"full"!=Ie.errors&&(y+=" for (var "+ve+"="+ne+"; "+ve+"{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="errs__"+Z,Q=v.util.copy(v),ne="";Q.level++;var re="valid"+Q.level,me={},we={},Be=v.opts.ownProperties;for(He in L)if("__proto__"!=He){var Ie=L[He],Ne=Array.isArray(Ie)?we:me;Ne[He]=Ie}y+="var "+G+" = errors;";var Je=v.errorPath;for(var He in y+="var missing"+Z+";",we)if((Ne=we[He]).length){if(y+=" if ( "+z+v.util.getProperty(He)+" !== undefined ",Be&&(y+=" && Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(He)+"') "),X){y+=" && ( ";var qe=Ne;if(qe)for(var Ge=-1,st=qe.length-1;Ge0||!1===Ie:v.util.schemaHasRules(Ie,v.RULES.all))&&(y+=" "+re+" = true; if ( "+z+v.util.getProperty(He)+" !== undefined ",Be&&(y+=" && Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(He)+"') "),y+=") { ",Q.schema=Ie,Q.schemaPath=Y+v.util.getProperty(He),Q.errSchemaPath=V+"/"+v.util.escapeFragment(He),y+=" "+v.validate(Q)+" ",Q.baseId=Rt,y+=" } ",X&&(y+=" if ("+re+") { ",ne+="}"));return X&&(y+=" "+ne+" if ("+G+" == errors) {"),y}},4299:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q=v.opts.$data&&L&&L.$data;Q&&(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ");var re="i"+Z,me="schema"+Z;Q||(y+=" var "+me+" = validate.schema"+Y+";"),y+="var "+G+";",Q&&(y+=" if (schema"+Z+" === undefined) "+G+" = true; else if (!Array.isArray(schema"+Z+")) "+G+" = false; else {"),y+=G+" = false;for (var "+re+"=0; "+re+"<"+me+".length; "+re+"++) if (equal("+z+", "+me+"["+re+"])) { "+G+" = true; break; }",Q&&(y+=" } ");var we=we||[];we.push(y+=" if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { allowedValues: schema"+Z+" } ",!1!==v.opts.messages&&(y+=" , message: 'should be equal to one of the allowed values' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var Be=y;return y=we.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+Be+"]); ":" validate.errors = ["+Be+"]; return false; ":" var err = "+Be+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" }",X&&(y+=" else { "),y}},4097:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||"");if(!1===v.opts.format)return X&&(y+=" if (true) { "),y;var Q,G=v.opts.$data&&L&&L.$data;G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L;var ne=v.opts.unknownFormats,re=Array.isArray(ne);if(G)y+=" var "+(me="format"+Z)+" = formats["+Q+"]; var "+(we="isObject"+Z)+" = typeof "+me+" == 'object' && !("+me+" instanceof RegExp) && "+me+".validate; var "+(Be="formatType"+Z)+" = "+we+" && "+me+".type || 'string'; if ("+we+") { ",v.async&&(y+=" var async"+Z+" = "+me+".async; "),y+=" "+me+" = "+me+".validate; } if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'string') || "),y+=" (","ignore"!=ne&&(y+=" ("+Q+" && !"+me+" ",re&&(y+=" && self._opts.unknownFormats.indexOf("+Q+") == -1 "),y+=") || "),y+=" ("+me+" && "+Be+" == '"+o+"' && !(typeof "+me+" == 'function' ? ",y+=v.async?" (async"+Z+" ? await "+me+"("+z+") : "+me+"("+z+")) ":" "+me+"("+z+") ",y+=" : "+me+".test("+z+"))))) {";else{var me;if(!(me=v.formats[L])){if("ignore"==ne)return v.logger.warn('unknown format "'+L+'" ignored in schema at path "'+v.errSchemaPath+'"'),X&&(y+=" if (true) { "),y;if(re&&ne.indexOf(L)>=0)return X&&(y+=" if (true) { "),y;throw new Error('unknown format "'+L+'" is used in schema at path "'+v.errSchemaPath+'"')}var we,Be=(we="object"==typeof me&&!(me instanceof RegExp)&&me.validate)&&me.type||"string";if(we){var Ie=!0===me.async;me=me.validate}if(Be!=o)return X&&(y+=" if (true) { "),y;if(Ie){if(!v.async)throw new Error("async format in sync schema");y+=" if (!(await "+(Ne="formats"+v.util.getProperty(L)+".validate")+"("+z+"))) { "}else{y+=" if (! ";var Ne="formats"+v.util.getProperty(L);we&&(Ne+=".validate"),y+="function"==typeof me?" "+Ne+"("+z+") ":" "+Ne+".test("+z+") ",y+=") { "}}var Je=Je||[];Je.push(y),y="",!1!==v.createErrors?(y+=" { keyword: 'format' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { format: ",y+=G?""+Q:""+v.util.toQuotedString(L),y+=" } ",!1!==v.opts.messages&&(y+=" , message: 'should match format \"",y+=G?"' + "+Q+" + '":""+v.util.escapeQuotes(L),y+="\"' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+v.util.toQuotedString(L),y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var He=y;return y=Je.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+He+"]); ":" validate.errors = ["+He+"]; return false; ":" var err = "+He+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } ",X&&(y+=" else { "),y}},2061:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v);ne.level++;var re="valid"+ne.level,me=v.schema.then,we=v.schema.else,Be=void 0!==me&&(v.opts.strictKeywords?"object"==typeof me&&Object.keys(me).length>0||!1===me:v.util.schemaHasRules(me,v.RULES.all)),Ie=void 0!==we&&(v.opts.strictKeywords?"object"==typeof we&&Object.keys(we).length>0||!1===we:v.util.schemaHasRules(we,v.RULES.all)),Ne=ne.baseId;if(Be||Ie){var Je;ne.createErrors=!1,ne.schema=L,ne.schemaPath=Y,ne.errSchemaPath=V,y+=" var "+Q+" = errors; var "+G+" = true; ";var He=v.compositeRule;v.compositeRule=ne.compositeRule=!0,y+=" "+v.validate(ne)+" ",ne.baseId=Ne,ne.createErrors=!0,y+=" errors = "+Q+"; if (vErrors !== null) { if ("+Q+") vErrors.length = "+Q+"; else vErrors = null; } ",v.compositeRule=ne.compositeRule=He,Be?(y+=" if ("+re+") { ",ne.schema=v.schema.then,ne.schemaPath=v.schemaPath+".then",ne.errSchemaPath=v.errSchemaPath+"/then",y+=" "+v.validate(ne)+" ",ne.baseId=Ne,y+=" "+G+" = "+re+"; ",Be&&Ie?y+=" var "+(Je="ifClause"+Z)+" = 'then'; ":Je="'then'",y+=" } ",Ie&&(y+=" else { ")):y+=" if (!"+re+") { ",Ie&&(ne.schema=v.schema.else,ne.schemaPath=v.schemaPath+".else",ne.errSchemaPath=v.errSchemaPath+"/else",y+=" "+v.validate(ne)+" ",ne.baseId=Ne,y+=" "+G+" = "+re+"; ",Be&&Ie?y+=" var "+(Je="ifClause"+Z)+" = 'else'; ":Je="'else'",y+=" } "),y+=" if (!"+G+") { var err = ",!1!==v.createErrors?(y+=" { keyword: 'if' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { failingKeyword: "+Je+" } ",!1!==v.opts.messages&&(y+=" , message: 'should match \"' + "+Je+" + '\" schema' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",y+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!v.compositeRule&&X&&(y+=v.async?" throw new ValidationError(vErrors); ":" validate.errors = vErrors; return false; "),y+=" } ",X&&(y+=" else { ")}else X&&(y+=" if (true) { ");return y}},2956:(nt,Ee,v)=>{"use strict";nt.exports={$ref:v(3953),allOf:v(9218),anyOf:v(3883),$comment:v(757),const:v(439),contains:v(7939),dependencies:v(3899),enum:v(4299),format:v(4097),if:v(2061),items:v(9240),maximum:v(9402),minimum:v(9402),maxItems:v(3792),minItems:v(3792),maxLength:v(3226),minLength:v(3226),maxProperties:v(2119),minProperties:v(2119),multipleOf:v(9095),not:v(8457),oneOf:v(7681),pattern:v(9438),properties:v(6319),propertyNames:v(6611),required:v(5051),uniqueItems:v(5329),validate:v(604)}},9240:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v),re="";ne.level++;var me="valid"+ne.level,we="i"+Z,Be=ne.dataLevel=v.dataLevel+1,Ie="data"+Be,Ne=v.baseId;if(y+="var "+Q+" = errors;var "+G+";",Array.isArray(L)){var Je=v.schema.additionalItems;if(!1===Je){y+=" "+G+" = "+z+".length <= "+L.length+"; ";var He=V;V=v.errSchemaPath+"/additionalItems";var qe=qe||[];qe.push(y+=" if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { limit: "+L.length+" } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT have more than "+L.length+" items' "),v.opts.verbose&&(y+=" , schema: false , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var $e=y;y=qe.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+$e+"]); ":" validate.errors = ["+$e+"]; return false; ":" var err = "+$e+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } ",V=He,X&&(re+="}",y+=" else { ")}var Ge=L;if(Ge)for(var st,We=-1,ve=Ge.length-1;We0||!1===st:v.util.schemaHasRules(st,v.RULES.all)){y+=" "+me+" = true; if ("+z+".length > "+We+") { ";var fe=z+"["+We+"]";ne.schema=st,ne.schemaPath=Y+"["+We+"]",ne.errSchemaPath=V+"/"+We,ne.errorPath=v.util.getPathExpr(v.errorPath,We,v.opts.jsonPointers,!0),ne.dataPathArr[Be]=We;var Qe=v.validate(ne);ne.baseId=Ne,v.util.varOccurences(Qe,Ie)<2?y+=" "+v.util.varReplace(Qe,Ie,fe)+" ":y+=" var "+Ie+" = "+fe+"; "+Qe+" ",y+=" } ",X&&(y+=" if ("+me+") { ",re+="}")}"object"==typeof Je&&(v.opts.strictKeywords?"object"==typeof Je&&Object.keys(Je).length>0||!1===Je:v.util.schemaHasRules(Je,v.RULES.all))&&(ne.schema=Je,ne.schemaPath=v.schemaPath+".additionalItems",ne.errSchemaPath=v.errSchemaPath+"/additionalItems",y+=" "+me+" = true; if ("+z+".length > "+L.length+") { for (var "+we+" = "+L.length+"; "+we+" < "+z+".length; "+we+"++) { ",ne.errorPath=v.util.getPathExpr(v.errorPath,we,v.opts.jsonPointers,!0),fe=z+"["+we+"]",ne.dataPathArr[Be]=we,Qe=v.validate(ne),ne.baseId=Ne,v.util.varOccurences(Qe,Ie)<2?y+=" "+v.util.varReplace(Qe,Ie,fe)+" ":y+=" var "+Ie+" = "+fe+"; "+Qe+" ",X&&(y+=" if (!"+me+") break; "),y+=" } } ",X&&(y+=" if ("+me+") { ",re+="}"))}else(v.opts.strictKeywords?"object"==typeof L&&Object.keys(L).length>0||!1===L:v.util.schemaHasRules(L,v.RULES.all))&&(ne.schema=L,ne.schemaPath=Y,ne.errSchemaPath=V,y+=" for (var "+we+" = 0; "+we+" < "+z+".length; "+we+"++) { ",ne.errorPath=v.util.getPathExpr(v.errorPath,we,v.opts.jsonPointers,!0),fe=z+"["+we+"]",ne.dataPathArr[Be]=we,Qe=v.validate(ne),ne.baseId=Ne,v.util.varOccurences(Qe,Ie)<2?y+=" "+v.util.varReplace(Qe,Ie,fe)+" ":y+=" var "+Ie+" = "+fe+"; "+Qe+" ",X&&(y+=" if (!"+me+") break; "),y+=" }");return X&&(y+=" "+re+" if ("+Q+" == errors) {"),y}},9095:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;if(G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L,!G&&"number"!=typeof L)throw new Error(j+" must be number");y+="var division"+Z+";if (",G&&(y+=" "+Q+" !== undefined && ( typeof "+Q+" != 'number' || "),y+=" (division"+Z+" = "+z+" / "+Q+", ",y+=v.opts.multipleOfPrecision?" Math.abs(Math.round(division"+Z+") - division"+Z+") > 1e-"+v.opts.multipleOfPrecision+" ":" division"+Z+" !== parseInt(division"+Z+") ",y+=" ) ",G&&(y+=" ) ");var ne=ne||[];ne.push(y+=" ) { "),y="",!1!==v.createErrors?(y+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { multipleOf: "+Q+" } ",!1!==v.opts.messages&&(y+=" , message: 'should be multiple of ",y+=G?"' + "+Q:Q+"'"),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var re=y;return y=ne.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+re+"]); ":" validate.errors = ["+re+"]; return false; ":" var err = "+re+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},8457:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="errs__"+Z,Q=v.util.copy(v);Q.level++;var ne="valid"+Q.level;if(v.opts.strictKeywords?"object"==typeof L&&Object.keys(L).length>0||!1===L:v.util.schemaHasRules(L,v.RULES.all)){Q.schema=L,Q.schemaPath=Y,Q.errSchemaPath=V,y+=" var "+G+" = errors; ";var me,re=v.compositeRule;v.compositeRule=Q.compositeRule=!0,Q.createErrors=!1,Q.opts.allErrors&&(me=Q.opts.allErrors,Q.opts.allErrors=!1),y+=" "+v.validate(Q)+" ",Q.createErrors=!0,me&&(Q.opts.allErrors=me),v.compositeRule=Q.compositeRule=re;var we=we||[];we.push(y+=" if ("+ne+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'not' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: 'should NOT be valid' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var Be=y;y=we.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+Be+"]); ":" validate.errors = ["+Be+"]; return false; ":" var err = "+Be+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } else { errors = "+G+"; if (vErrors !== null) { if ("+G+") vErrors.length = "+G+"; else vErrors = null; } ",v.opts.allErrors&&(y+=" } ")}else y+=" var err = ",!1!==v.createErrors?(y+=" { keyword: 'not' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: 'should NOT be valid' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",y+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",X&&(y+=" if (false) { ");return y}},7681:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q="errs__"+Z,ne=v.util.copy(v),re="";ne.level++;var me="valid"+ne.level,we=ne.baseId,Be="prevValid"+Z,Ie="passingSchemas"+Z;y+="var "+Q+" = errors , "+Be+" = false , "+G+" = false , "+Ie+" = null; ";var Ne=v.compositeRule;v.compositeRule=ne.compositeRule=!0;var Je=L;if(Je)for(var He,qe=-1,$e=Je.length-1;qe<$e;)He=Je[qe+=1],(v.opts.strictKeywords?"object"==typeof He&&Object.keys(He).length>0||!1===He:v.util.schemaHasRules(He,v.RULES.all))?(ne.schema=He,ne.schemaPath=Y+"["+qe+"]",ne.errSchemaPath=V+"/"+qe,y+=" "+v.validate(ne)+" ",ne.baseId=we):y+=" var "+me+" = true; ",qe&&(y+=" if ("+me+" && "+Be+") { "+G+" = false; "+Ie+" = ["+Ie+", "+qe+"]; } else { ",re+="}"),y+=" if ("+me+") { "+G+" = "+Be+" = true; "+Ie+" = "+qe+"; }";return v.compositeRule=ne.compositeRule=Ne,y+=re+"if (!"+G+") { var err = ",!1!==v.createErrors?(y+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { passingSchemas: "+Ie+" } ",!1!==v.opts.messages&&(y+=" , message: 'should match exactly one schema in oneOf' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",y+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!v.compositeRule&&X&&(y+=v.async?" throw new ValidationError(vErrors); ":" validate.errors = vErrors; return false; "),y+="} else { errors = "+Q+"; if (vErrors !== null) { if ("+Q+") vErrors.length = "+Q+"; else vErrors = null; }",v.opts.allErrors&&(y+=" } "),y}},9438:nt=>{"use strict";nt.exports=function(v,j,o){var Q,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G=v.opts.$data&&L&&L.$data;G?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",Q="schema"+Z):Q=L;var ne=G?"(new RegExp("+Q+"))":v.usePattern(L);y+="if ( ",G&&(y+=" ("+Q+" !== undefined && typeof "+Q+" != 'string') || ");var re=re||[];re.push(y+=" !"+ne+".test("+z+") ) { "),y="",!1!==v.createErrors?(y+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { pattern: ",y+=G?""+Q:""+v.util.toQuotedString(L),y+=" } ",!1!==v.opts.messages&&(y+=" , message: 'should match pattern \"",y+=G?"' + "+Q+" + '":""+v.util.escapeQuotes(L),y+="\"' "),v.opts.verbose&&(y+=" , schema: ",y+=G?"validate.schema"+Y:""+v.util.toQuotedString(L),y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var me=y;return y=re.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+me+"]); ":" validate.errors = ["+me+"]; return false; ":" var err = "+me+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+="} ",X&&(y+=" else { "),y}},6319:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="errs__"+Z,Q=v.util.copy(v),ne="";Q.level++;var re="valid"+Q.level,me="key"+Z,we="idx"+Z,Be=Q.dataLevel=v.dataLevel+1,Ie="data"+Be,Ne="dataProperties"+Z,Je=Object.keys(L||{}).filter(wt),He=v.schema.patternProperties||{},qe=Object.keys(He).filter(wt),$e=v.schema.additionalProperties,Ge=Je.length||qe.length,st=!1===$e,We="object"==typeof $e&&Object.keys($e).length,ve=v.opts.removeAdditional,fe=st||We||ve,Qe=v.opts.ownProperties,Te=v.baseId,Le=v.schema.required;if(Le&&(!v.opts.$data||!Le.$data)&&Le.length8)y+=" || validate.schema"+Y+".hasOwnProperty("+me+") ";else{var Nt=Je;if(Nt)for(var fn=-1,$n=Nt.length-1;fn<$n;)Rt=Nt[fn+=1],y+=" || "+me+" == "+v.util.toQuotedString(Rt)+" "}if(qe.length){var Qi=qe;if(Qi)for(var Bi=-1,ri=Qi.length-1;Bi0||!1===Ii:v.util.schemaHasRules(Ii,v.RULES.all)){var Jt=v.util.getProperty(Rt),xr=(_n=z+Jt,Zi&&void 0!==Ii.default);if(Q.schema=Ii,Q.schemaPath=Y+Jt,Q.errSchemaPath=V+"/"+v.util.escapeFragment(Rt),Q.errorPath=v.util.getPath(v.errorPath,Rt,v.opts.jsonPointers),Q.dataPathArr[Be]=v.util.toQuotedString(Rt),si=v.validate(Q),Q.baseId=Te,v.util.varOccurences(si,Ie)<2){si=v.util.varReplace(si,Ie,_n);var br=_n}else br=Ie,y+=" var "+Ie+" = "+_n+"; ";if(xr)y+=" "+si+" ";else{if(pt&&pt[Rt]){y+=" if ( "+br+" === undefined ",Qe&&(y+=" || ! Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(Rt)+"') "),y+=") { "+re+" = false; ",ci=v.errorPath,kt=V;var qt,Ur=v.util.escapeQuotes(Rt);v.opts._errorDataPathProperty&&(v.errorPath=v.util.getPath(ci,Rt,v.opts.jsonPointers)),V=v.errSchemaPath+"/required",(qt=qt||[]).push(y),y="",!1!==v.createErrors?(y+=" { keyword: 'required' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { missingProperty: '"+Ur+"' } ",!1!==v.opts.messages&&(y+=" , message: '",y+=v.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+Ur+"\\'",y+="' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ",cn=y,y=qt.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+cn+"]); ":" validate.errors = ["+cn+"]; return false; ":" var err = "+cn+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",V=kt,v.errorPath=ci,y+=" } else { "}else X?(y+=" if ( "+br+" === undefined ",Qe&&(y+=" || ! Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(Rt)+"') "),y+=") { "+re+" = true; } else { "):(y+=" if ("+br+" !== undefined ",Qe&&(y+=" && Object.prototype.hasOwnProperty.call("+z+", '"+v.util.escapeQuotes(Rt)+"') "),y+=" ) { ");y+=" "+si+" } "}}X&&(y+=" if ("+re+") { ",ne+="}")}}if(qe.length){var Jr=qe;if(Jr)for(var ui,Il=-1,as=Jr.length-1;Il0||!1===Ii:v.util.schemaHasRules(Ii,v.RULES.all))&&(Q.schema=Ii,Q.schemaPath=v.schemaPath+".patternProperties"+v.util.getProperty(ui),Q.errSchemaPath=v.errSchemaPath+"/patternProperties/"+v.util.escapeFragment(ui),y+=Qe?" "+Ne+" = "+Ne+" || Object.keys("+z+"); for (var "+we+"=0; "+we+"<"+Ne+".length; "+we+"++) { var "+me+" = "+Ne+"["+we+"]; ":" for (var "+me+" in "+z+") { ",y+=" if ("+v.usePattern(ui)+".test("+me+")) { ",Q.errorPath=v.util.getPathExpr(v.errorPath,me,v.opts.jsonPointers),_n=z+"["+me+"]",Q.dataPathArr[Be]=me,si=v.validate(Q),Q.baseId=Te,v.util.varOccurences(si,Ie)<2?y+=" "+v.util.varReplace(si,Ie,_n)+" ":y+=" var "+Ie+" = "+_n+"; "+si+" ",X&&(y+=" if (!"+re+") break; "),y+=" } ",X&&(y+=" else "+re+" = true; "),y+=" } ",X&&(y+=" if ("+re+") { ",ne+="}"))}return X&&(y+=" "+ne+" if ("+G+" == errors) {"),y}},6611:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="errs__"+Z,Q=v.util.copy(v);Q.level++;var re="valid"+Q.level;if(y+="var "+G+" = errors;",v.opts.strictKeywords?"object"==typeof L&&Object.keys(L).length>0||!1===L:v.util.schemaHasRules(L,v.RULES.all)){Q.schema=L,Q.schemaPath=Y,Q.errSchemaPath=V;var me="key"+Z,we="idx"+Z,Be="i"+Z,Ie="' + "+me+" + '",Je="data"+(Q.dataLevel=v.dataLevel+1),He="dataProperties"+Z,qe=v.opts.ownProperties,$e=v.baseId;qe&&(y+=" var "+He+" = undefined; "),y+=qe?" "+He+" = "+He+" || Object.keys("+z+"); for (var "+we+"=0; "+we+"<"+He+".length; "+we+"++) { var "+me+" = "+He+"["+we+"]; ":" for (var "+me+" in "+z+") { ",y+=" var startErrs"+Z+" = errors; ";var Ge=me,st=v.compositeRule;v.compositeRule=Q.compositeRule=!0;var We=v.validate(Q);Q.baseId=$e,v.util.varOccurences(We,Je)<2?y+=" "+v.util.varReplace(We,Je,Ge)+" ":y+=" var "+Je+" = "+Ge+"; "+We+" ",v.compositeRule=Q.compositeRule=st,y+=" if (!"+re+") { for (var "+Be+"=startErrs"+Z+"; "+Be+"{"use strict";nt.exports=function(v,j,o){var G,Q,y=" ",U=v.dataLevel,L=v.schema[j],Y=v.errSchemaPath+"/"+j,V=!v.opts.allErrors,X="data"+(U||""),z="valid"+v.level;if("#"==L||"#/"==L)v.isRoot?(G=v.async,Q="validate"):(G=!0===v.root.schema.$async,Q="root.refVal[0]");else{var ne=v.resolveRef(v.baseId,L,v.isRoot);if(void 0===ne){var re=v.MissingRefError.message(v.baseId,L);if("fail"==v.opts.missingRefs){v.logger.error(re),(me=me||[]).push(y),y="",!1!==v.createErrors?(y+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(Y)+" , params: { ref: '"+v.util.escapeQuotes(L)+"' } ",!1!==v.opts.messages&&(y+=" , message: 'can\\'t resolve reference "+v.util.escapeQuotes(L)+"' "),v.opts.verbose&&(y+=" , schema: "+v.util.toQuotedString(L)+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+X+" "),y+=" } "):y+=" {} ";var we=y;y=me.pop(),y+=!v.compositeRule&&V?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",V&&(y+=" if (false) { ")}else{if("ignore"!=v.opts.missingRefs)throw new v.MissingRefError(v.baseId,L,re);v.logger.warn(re),V&&(y+=" if (true) { ")}}else if(ne.inline){var Be=v.util.copy(v);Be.level++;var Ie="valid"+Be.level;Be.schema=ne.schema,Be.schemaPath="",Be.errSchemaPath=L,y+=" "+v.validate(Be).replace(/validate\.schema/g,ne.code)+" ",V&&(y+=" if ("+Ie+") { ")}else G=!0===ne.$async||v.async&&!1!==ne.$async,Q=ne.code}if(Q){var me;(me=me||[]).push(y),y="",y+=v.opts.passContext?" "+Q+".call(this, ":" "+Q+"( ",y+=" "+X+", (dataPath || '')",'""'!=v.errorPath&&(y+=" + "+v.errorPath);var qe=y+=" , "+(U?"data"+(U-1||""):"parentData")+" , "+(U?v.dataPathArr[U]:"parentDataProperty")+", rootData) ";if(y=me.pop(),G){if(!v.async)throw new Error("async schema referenced by sync schema");V&&(y+=" var "+z+"; "),y+=" try { await "+qe+"; ",V&&(y+=" "+z+" = true; "),y+=" } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; ",V&&(y+=" "+z+" = false; "),y+=" } ",V&&(y+=" if ("+z+") { ")}else y+=" if (!"+qe+") { if (vErrors === null) vErrors = "+Q+".errors; else vErrors = vErrors.concat("+Q+".errors); errors = vErrors.length; } ",V&&(y+=" else { ")}return y}},5051:nt=>{"use strict";nt.exports=function(v,j,o){var y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q=v.opts.$data&&L&&L.$data;Q&&(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ");var re="schema"+Z;if(!Q)if(L.length0||!1===Je:v.util.schemaHasRules(Je,v.RULES.all))||(me[me.length]=Be)}}else me=L;if(Q||me.length){var He=v.errorPath,qe=Q||me.length>=v.opts.loopRequired,$e=v.opts.ownProperties;if(X)if(y+=" var missing"+Z+"; ",qe){Q||(y+=" var "+re+" = validate.schema"+Y+"; ");var We="' + "+(st="schema"+Z+"["+(Ge="i"+Z)+"]")+" + '";v.opts._errorDataPathProperty&&(v.errorPath=v.util.getPathExpr(He,st,v.opts.jsonPointers)),y+=" var "+G+" = true; ",Q&&(y+=" if (schema"+Z+" === undefined) "+G+" = true; else if (!Array.isArray(schema"+Z+")) "+G+" = false; else {"),y+=" for (var "+Ge+" = 0; "+Ge+" < "+re+".length; "+Ge+"++) { "+G+" = "+z+"["+re+"["+Ge+"]] !== undefined ",$e&&(y+=" && Object.prototype.hasOwnProperty.call("+z+", "+re+"["+Ge+"]) "),y+="; if (!"+G+") break; } ",Q&&(y+=" } "),(ve=ve||[]).push(y+=" if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'required' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { missingProperty: '"+We+"' } ",!1!==v.opts.messages&&(y+=" , message: '",y+=v.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+We+"\\'",y+="' "),v.opts.verbose&&(y+=" , schema: validate.schema"+Y+" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var fe=y;y=ve.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+fe+"]); ":" validate.errors = ["+fe+"]; return false; ":" var err = "+fe+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } else { "}else{y+=" if ( ";var ve,Qe=me;if(Qe)for(var Ge=-1,Le=Qe.length-1;Ge{"use strict";nt.exports=function(v,j,o){var ne,y=" ",Z=v.level,U=v.dataLevel,L=v.schema[j],Y=v.schemaPath+v.util.getProperty(j),V=v.errSchemaPath+"/"+j,X=!v.opts.allErrors,z="data"+(U||""),G="valid"+Z,Q=v.opts.$data&&L&&L.$data;if(Q?(y+=" var schema"+Z+" = "+v.util.getData(L.$data,U,v.dataPathArr)+"; ",ne="schema"+Z):ne=L,(L||Q)&&!1!==v.opts.uniqueItems){Q&&(y+=" var "+G+"; if ("+ne+" === false || "+ne+" === undefined) "+G+" = true; else if (typeof "+ne+" != 'boolean') "+G+" = false; else { "),y+=" var i = "+z+".length , "+G+" = true , j; if (i > 1) { ";var re=v.schema.items&&v.schema.items.type,me=Array.isArray(re);!re||"object"==re||"array"==re||me&&(re.indexOf("object")>=0||re.indexOf("array")>=0)?y+=" outer: for (;i--;) { for (j = i; j--;) { if (equal("+z+"[i], "+z+"[j])) { "+G+" = false; break outer; } } } ":(y+=" var itemIndices = {}, item; for (;i--;) { var item = "+z+"[i]; ",y+=" if ("+v.util["checkDataType"+(me?"s":"")](re,"item",v.opts.strictNumbers,!0)+") continue; ",me&&(y+=" if (typeof item == 'string') item = '\"' + item; "),y+=" if (typeof itemIndices[item] == 'number') { "+G+" = false; j = itemIndices[item]; break; } itemIndices[item] = i; } "),y+=" } ",Q&&(y+=" } ");var Be=Be||[];Be.push(y+=" if (!"+G+") { "),y="",!1!==v.createErrors?(y+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(V)+" , params: { i: i, j: j } ",!1!==v.opts.messages&&(y+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' "),v.opts.verbose&&(y+=" , schema: ",y+=Q?"validate.schema"+Y:""+L,y+=" , parentSchema: validate.schema"+v.schemaPath+" , data: "+z+" "),y+=" } "):y+=" {} ";var Ie=y;y=Be.pop(),y+=!v.compositeRule&&X?v.async?" throw new ValidationError(["+Ie+"]); ":" validate.errors = ["+Ie+"]; return false; ":" var err = "+Ie+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",y+=" } ",X&&(y+=" else { ")}else X&&(y+=" if (true) { ");return y}},604:nt=>{"use strict";nt.exports=function(v,j,o){var y="",Z=!0===v.schema.$async,U=v.util.schemaHasRulesExcept(v.schema,v.RULES.all,"$ref"),L=v.self._getId(v.schema);if(v.opts.strictKeywords){var Y=v.util.schemaUnknownRules(v.schema,v.RULES.keywords);if(Y){var V="unknown keyword: "+Y;if("log"!==v.opts.strictKeywords)throw new Error(V);v.logger.warn(V)}}if(v.isTop&&(y+=" var validate = ",Z&&(v.async=!0,y+="async "),y+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",L&&(v.opts.sourceCode||v.opts.processCode)&&(y+=" /*# sourceURL="+L+" */ ")),"boolean"==typeof v.schema||!U&&!v.schema.$ref){var X=v.level,z=v.dataLevel,G=v.schema[j="false schema"],Q=v.schemaPath+v.util.getProperty(j),ne=v.errSchemaPath+"/"+j,Je=!v.opts.allErrors,re="data"+(z||""),Ne="valid"+X;if(!1===v.schema){v.isTop?Je=!0:y+=" var "+Ne+" = false; ",(me=me||[]).push(y),y="",!1!==v.createErrors?(y+=" { keyword: 'false schema' , dataPath: (dataPath || '') + "+v.errorPath+" , schemaPath: "+v.util.toQuotedString(ne)+" , params: {} ",!1!==v.opts.messages&&(y+=" , message: 'boolean schema is false' "),v.opts.verbose&&(y+=" , schema: false , parentSchema: validate.schema"+v.schemaPath+" , data: "+re+" "),y+=" } "):y+=" {} ";var we=y;y=me.pop(),y+=!v.compositeRule&&Je?v.async?" throw new ValidationError(["+we+"]); ":" validate.errors = ["+we+"]; return false; ":" var err = "+we+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else y+=v.isTop?Z?" return data; ":" validate.errors = null; return true; ":" var "+Ne+" = true; ";return v.isTop&&(y+=" }; return validate; "),y}if(v.isTop){var Be=v.isTop;if(X=v.level=0,z=v.dataLevel=0,re="data",v.rootId=v.resolve.fullPath(v.self._getId(v.root.schema)),v.baseId=v.baseId||v.rootId,delete v.isTop,v.dataPathArr=[""],void 0!==v.schema.default&&v.opts.useDefaults&&v.opts.strictDefaults){var Ie="default is ignored in the schema root";if("log"!==v.opts.strictDefaults)throw new Error(Ie);v.logger.warn(Ie)}y+=" var vErrors = null; ",y+=" var errors = 0; ",y+=" if (rootData === undefined) rootData = data; "}else{if(X=v.level,re="data"+((z=v.dataLevel)||""),L&&(v.baseId=v.resolve.url(v.baseId,L)),Z&&!v.async)throw new Error("async schema in sync schema");y+=" var errs_"+X+" = errors;"}Ne="valid"+X,Je=!v.opts.allErrors;var He="",qe="",Ge=v.schema.type,st=Array.isArray(Ge);if(Ge&&v.opts.nullable&&!0===v.schema.nullable&&(st?-1==Ge.indexOf("null")&&(Ge=Ge.concat("null")):"null"!=Ge&&(Ge=[Ge,"null"],st=!0)),st&&1==Ge.length&&(Ge=Ge[0],st=!1),v.schema.$ref&&U){if("fail"==v.opts.extendRefs)throw new Error('$ref: validation keywords used in schema at path "'+v.errSchemaPath+'" (see option extendRefs)');!0!==v.opts.extendRefs&&(U=!1,v.logger.warn('$ref: keywords ignored in schema at path "'+v.errSchemaPath+'"'))}if(v.schema.$comment&&v.opts.$comment&&(y+=" "+v.RULES.all.$comment.code(v,"$comment")),Ge){if(v.opts.coerceTypes)var We=v.util.coerceToTypes(v.opts.coerceTypes,Ge);var ve=v.RULES.types[Ge];if(We||st||!0===ve||ve&&!Ii(ve)){if(Q=v.schemaPath+".type",ne=v.errSchemaPath+"/type",Q=v.schemaPath+".type",ne=v.errSchemaPath+"/type",y+=" if ("+v.util[st?"checkDataTypes":"checkDataType"](Ge,re,v.opts.strictNumbers,!0)+") { ",We){var Qe="dataType"+X,Te="coerced"+X;y+=" var "+Qe+" = typeof "+re+"; var "+Te+" = undefined; ","array"==v.opts.coerceTypes&&(y+=" if ("+Qe+" == 'object' && Array.isArray("+re+") && "+re+".length == 1) { "+re+" = "+re+"[0]; "+Qe+" = typeof "+re+"; if ("+v.util.checkDataType(v.schema.type,re,v.opts.strictNumbers)+") "+Te+" = "+re+"; } "),y+=" if ("+Te+" !== undefined) ; ";var Le=We;if(Le)for(var pt,wt=-1,Nt=Le.length-1;wt{"use strict";var j=/^[a-z_$][a-z0-9_$-]*$/i,o=v(5237),y=v(8606);nt.exports={add:function Z(V,X){var z=this.RULES;if(z.keywords[V])throw new Error("Keyword "+V+" is already defined");if(!j.test(V))throw new Error("Keyword "+V+" is not a valid identifier");if(X){this.validateKeyword(X,!0);var G=X.type;if(Array.isArray(G))for(var Q=0;Q{var Ee={utf8:{stringToBytes:function(v){return Ee.bin.stringToBytes(unescape(encodeURIComponent(v)))},bytesToString:function(v){return decodeURIComponent(escape(Ee.bin.bytesToString(v)))}},bin:{stringToBytes:function(v){for(var j=[],o=0;o{const j=v(4605),o={};for(const U of Object.keys(j))o[j[U]]=U;const y={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};nt.exports=y;for(const U of Object.keys(y)){if(!("channels"in y[U]))throw new Error("missing channels property: "+U);if(!("labels"in y[U]))throw new Error("missing channel labels property: "+U);if(y[U].labels.length!==y[U].channels)throw new Error("channel and label counts mismatch: "+U);const{channels:L,labels:Y}=y[U];delete y[U].channels,delete y[U].labels,Object.defineProperty(y[U],"channels",{value:L}),Object.defineProperty(y[U],"labels",{value:Y})}function Z(U,L){return(U[0]-L[0])**2+(U[1]-L[1])**2+(U[2]-L[2])**2}y.rgb.hsl=function(U){const L=U[0]/255,Y=U[1]/255,V=U[2]/255,X=Math.min(L,Y,V),z=Math.max(L,Y,V),G=z-X;let Q,ne;z===X?Q=0:L===z?Q=(Y-V)/G:Y===z?Q=2+(V-L)/G:V===z&&(Q=4+(L-Y)/G),Q=Math.min(60*Q,360),Q<0&&(Q+=360);const re=(X+z)/2;return ne=z===X?0:re<=.5?G/(z+X):G/(2-z-X),[Q,100*ne,100*re]},y.rgb.hsv=function(U){let L,Y,V,X,z;const G=U[0]/255,Q=U[1]/255,ne=U[2]/255,re=Math.max(G,Q,ne),me=re-Math.min(G,Q,ne),we=function(Be){return(re-Be)/6/me+.5};return 0===me?(X=0,z=0):(z=me/re,L=we(G),Y=we(Q),V=we(ne),G===re?X=V-Y:Q===re?X=1/3+L-V:ne===re&&(X=2/3+Y-L),X<0?X+=1:X>1&&(X-=1)),[360*X,100*z,100*re]},y.rgb.hwb=function(U){const L=U[0],Y=U[1];let V=U[2];const X=y.rgb.hsl(U)[0],z=1/255*Math.min(L,Math.min(Y,V));return V=1-1/255*Math.max(L,Math.max(Y,V)),[X,100*z,100*V]},y.rgb.cmyk=function(U){const L=U[0]/255,Y=U[1]/255,V=U[2]/255,X=Math.min(1-L,1-Y,1-V);return[100*((1-L-X)/(1-X)||0),100*((1-Y-X)/(1-X)||0),100*((1-V-X)/(1-X)||0),100*X]},y.rgb.keyword=function(U){const L=o[U];if(L)return L;let V,Y=1/0;for(const X of Object.keys(j)){const G=Z(U,j[X]);G.04045?((L+.055)/1.055)**2.4:L/12.92,Y=Y>.04045?((Y+.055)/1.055)**2.4:Y/12.92,V=V>.04045?((V+.055)/1.055)**2.4:V/12.92,[100*(.4124*L+.3576*Y+.1805*V),100*(.2126*L+.7152*Y+.0722*V),100*(.0193*L+.1192*Y+.9505*V)]},y.rgb.lab=function(U){const L=y.rgb.xyz(U);let Y=L[0],V=L[1],X=L[2];return Y/=95.047,V/=100,X/=108.883,Y=Y>.008856?Y**(1/3):7.787*Y+16/116,V=V>.008856?V**(1/3):7.787*V+16/116,X=X>.008856?X**(1/3):7.787*X+16/116,[116*V-16,500*(Y-V),200*(V-X)]},y.hsl.rgb=function(U){const L=U[0]/360,Y=U[1]/100,V=U[2]/100;let X,z,G;if(0===Y)return G=255*V,[G,G,G];X=V<.5?V*(1+Y):V+Y-V*Y;const Q=2*V-X,ne=[0,0,0];for(let re=0;re<3;re++)z=L+1/3*-(re-1),z<0&&z++,z>1&&z--,G=6*z<1?Q+6*(X-Q)*z:2*z<1?X:3*z<2?Q+(X-Q)*(2/3-z)*6:Q,ne[re]=255*G;return ne},y.hsl.hsv=function(U){const L=U[0];let Y=U[1]/100,V=U[2]/100,X=Y;const z=Math.max(V,.01);return V*=2,Y*=V<=1?V:2-V,X*=z<=1?z:2-z,[L,100*(0===V?2*X/(z+X):2*Y/(V+Y)),(V+Y)/2*100]},y.hsv.rgb=function(U){const L=U[0]/60,Y=U[1]/100;let V=U[2]/100;const X=Math.floor(L)%6,z=L-Math.floor(L),G=255*V*(1-Y),Q=255*V*(1-Y*z),ne=255*V*(1-Y*(1-z));switch(V*=255,X){case 0:return[V,ne,G];case 1:return[Q,V,G];case 2:return[G,V,ne];case 3:return[G,Q,V];case 4:return[ne,G,V];case 5:return[V,G,Q]}},y.hsv.hsl=function(U){const L=U[0],Y=U[1]/100,V=U[2]/100,X=Math.max(V,.01);let z,G;G=(2-Y)*V;const Q=(2-Y)*X;return z=Y*X,z/=Q<=1?Q:2-Q,z=z||0,G/=2,[L,100*z,100*G]},y.hwb.rgb=function(U){const L=U[0]/360;let Y=U[1]/100,V=U[2]/100;const X=Y+V;let z;X>1&&(Y/=X,V/=X);const G=Math.floor(6*L),Q=1-V;z=6*L-G,1&G&&(z=1-z);const ne=Y+z*(Q-Y);let re,me,we;switch(G){default:case 6:case 0:re=Q,me=ne,we=Y;break;case 1:re=ne,me=Q,we=Y;break;case 2:re=Y,me=Q,we=ne;break;case 3:re=Y,me=ne,we=Q;break;case 4:re=ne,me=Y,we=Q;break;case 5:re=Q,me=Y,we=ne}return[255*re,255*me,255*we]},y.cmyk.rgb=function(U){const Y=U[1]/100,V=U[2]/100,X=U[3]/100;return[255*(1-Math.min(1,U[0]/100*(1-X)+X)),255*(1-Math.min(1,Y*(1-X)+X)),255*(1-Math.min(1,V*(1-X)+X))]},y.xyz.rgb=function(U){const L=U[0]/100,Y=U[1]/100,V=U[2]/100;let X,z,G;return X=3.2406*L+-1.5372*Y+-.4986*V,z=-.9689*L+1.8758*Y+.0415*V,G=.0557*L+-.204*Y+1.057*V,X=X>.0031308?1.055*X**(1/2.4)-.055:12.92*X,z=z>.0031308?1.055*z**(1/2.4)-.055:12.92*z,G=G>.0031308?1.055*G**(1/2.4)-.055:12.92*G,X=Math.min(Math.max(0,X),1),z=Math.min(Math.max(0,z),1),G=Math.min(Math.max(0,G),1),[255*X,255*z,255*G]},y.xyz.lab=function(U){let L=U[0],Y=U[1],V=U[2];return L/=95.047,Y/=100,V/=108.883,L=L>.008856?L**(1/3):7.787*L+16/116,Y=Y>.008856?Y**(1/3):7.787*Y+16/116,V=V>.008856?V**(1/3):7.787*V+16/116,[116*Y-16,500*(L-Y),200*(Y-V)]},y.lab.xyz=function(U){let X,z,G;z=(U[0]+16)/116,X=U[1]/500+z,G=z-U[2]/200;const Q=z**3,ne=X**3,re=G**3;return z=Q>.008856?Q:(z-16/116)/7.787,X=ne>.008856?ne:(X-16/116)/7.787,G=re>.008856?re:(G-16/116)/7.787,X*=95.047,z*=100,G*=108.883,[X,z,G]},y.lab.lch=function(U){const L=U[0],Y=U[1],V=U[2];let X;return X=360*Math.atan2(V,Y)/2/Math.PI,X<0&&(X+=360),[L,Math.sqrt(Y*Y+V*V),X]},y.lch.lab=function(U){const Y=U[1],X=U[2]/360*2*Math.PI;return[U[0],Y*Math.cos(X),Y*Math.sin(X)]},y.rgb.ansi16=function(U,L=null){const[Y,V,X]=U;let z=null===L?y.rgb.hsv(U)[2]:L;if(z=Math.round(z/50),0===z)return 30;let G=30+(Math.round(X/255)<<2|Math.round(V/255)<<1|Math.round(Y/255));return 2===z&&(G+=60),G},y.hsv.ansi16=function(U){return y.rgb.ansi16(y.hsv.rgb(U),U[2])},y.rgb.ansi256=function(U){const L=U[0],Y=U[1],V=U[2];return L===Y&&Y===V?L<8?16:L>248?231:Math.round((L-8)/247*24)+232:16+36*Math.round(L/255*5)+6*Math.round(Y/255*5)+Math.round(V/255*5)},y.ansi16.rgb=function(U){let L=U%10;if(0===L||7===L)return U>50&&(L+=3.5),L=L/10.5*255,[L,L,L];const Y=.5*(1+~~(U>50));return[(1&L)*Y*255,(L>>1&1)*Y*255,(L>>2&1)*Y*255]},y.ansi256.rgb=function(U){if(U>=232){const z=10*(U-232)+8;return[z,z,z]}let L;return U-=16,[Math.floor(U/36)/5*255,Math.floor((L=U%36)/6)/5*255,L%6/5*255]},y.rgb.hex=function(U){const Y=(((255&Math.round(U[0]))<<16)+((255&Math.round(U[1]))<<8)+(255&Math.round(U[2]))).toString(16).toUpperCase();return"000000".substring(Y.length)+Y},y.hex.rgb=function(U){const L=U.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!L)return[0,0,0];let Y=L[0];3===L[0].length&&(Y=Y.split("").map(Q=>Q+Q).join(""));const V=parseInt(Y,16);return[V>>16&255,V>>8&255,255&V]},y.rgb.hcg=function(U){const L=U[0]/255,Y=U[1]/255,V=U[2]/255,X=Math.max(Math.max(L,Y),V),z=Math.min(Math.min(L,Y),V),G=X-z;let Q,ne;return Q=G<1?z/(1-G):0,ne=G<=0?0:X===L?(Y-V)/G%6:X===Y?2+(V-L)/G:4+(L-Y)/G,ne/=6,ne%=1,[360*ne,100*G,100*Q]},y.hsl.hcg=function(U){const L=U[1]/100,Y=U[2]/100,V=Y<.5?2*L*Y:2*L*(1-Y);let X=0;return V<1&&(X=(Y-.5*V)/(1-V)),[U[0],100*V,100*X]},y.hsv.hcg=function(U){const Y=U[2]/100,V=U[1]/100*Y;let X=0;return V<1&&(X=(Y-V)/(1-V)),[U[0],100*V,100*X]},y.hcg.rgb=function(U){const Y=U[1]/100,V=U[2]/100;if(0===Y)return[255*V,255*V,255*V];const X=[0,0,0],z=U[0]/360%1*6,G=z%1,Q=1-G;let ne=0;switch(Math.floor(z)){case 0:X[0]=1,X[1]=G,X[2]=0;break;case 1:X[0]=Q,X[1]=1,X[2]=0;break;case 2:X[0]=0,X[1]=1,X[2]=G;break;case 3:X[0]=0,X[1]=Q,X[2]=1;break;case 4:X[0]=G,X[1]=0,X[2]=1;break;default:X[0]=1,X[1]=0,X[2]=Q}return ne=(1-Y)*V,[255*(Y*X[0]+ne),255*(Y*X[1]+ne),255*(Y*X[2]+ne)]},y.hcg.hsv=function(U){const L=U[1]/100,V=L+U[2]/100*(1-L);let X=0;return V>0&&(X=L/V),[U[0],100*X,100*V]},y.hcg.hsl=function(U){const L=U[1]/100,V=U[2]/100*(1-L)+.5*L;let X=0;return V>0&&V<.5?X=L/(2*V):V>=.5&&V<1&&(X=L/(2*(1-V))),[U[0],100*X,100*V]},y.hcg.hwb=function(U){const L=U[1]/100,V=L+U[2]/100*(1-L);return[U[0],100*(V-L),100*(1-V)]},y.hwb.hcg=function(U){const V=1-U[2]/100,X=V-U[1]/100;let z=0;return X<1&&(z=(V-X)/(1-X)),[U[0],100*X,100*z]},y.apple.rgb=function(U){return[U[0]/65535*255,U[1]/65535*255,U[2]/65535*255]},y.rgb.apple=function(U){return[U[0]/255*65535,U[1]/255*65535,U[2]/255*65535]},y.gray.rgb=function(U){return[U[0]/100*255,U[0]/100*255,U[0]/100*255]},y.gray.hsl=function(U){return[0,0,U[0]]},y.gray.hsv=y.gray.hsl,y.gray.hwb=function(U){return[0,100,U[0]]},y.gray.cmyk=function(U){return[0,0,0,U[0]]},y.gray.lab=function(U){return[U[0],0,0]},y.gray.hex=function(U){const L=255&Math.round(U[0]/100*255),V=((L<<16)+(L<<8)+L).toString(16).toUpperCase();return"000000".substring(V.length)+V},y.rgb.gray=function(U){return[(U[0]+U[1]+U[2])/3/255*100]}},3205:(nt,Ee,v)=>{const j=v(2348),o=v(8236),y={};Object.keys(j).forEach(Y=>{y[Y]={},Object.defineProperty(y[Y],"channels",{value:j[Y].channels}),Object.defineProperty(y[Y],"labels",{value:j[Y].labels});const V=o(Y);Object.keys(V).forEach(z=>{const G=V[z];y[Y][z]=function L(Y){const V=function(...X){const z=X[0];if(null==z)return z;z.length>1&&(X=z);const G=Y(X);if("object"==typeof G)for(let Q=G.length,ne=0;ne1&&(X=z),Y(X))};return"conversion"in Y&&(V.conversion=Y.conversion),V}(G)})}),nt.exports=y},8236:(nt,Ee,v)=>{const j=v(2348);function Z(L,Y){return function(V){return Y(L(V))}}function U(L,Y){const V=[Y[L].parent,L];let X=j[Y[L].parent][L],z=Y[L].parent;for(;Y[z].parent;)V.unshift(Y[z].parent),X=Z(j[Y[z].parent][z],X),z=Y[z].parent;return X.conversion=V,X}nt.exports=function(L){const Y=function y(L){const Y=function o(){const L={},Y=Object.keys(j);for(let V=Y.length,X=0;X{"use strict";nt.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},9928:nt=>{var Ee,v;Ee="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",nt.exports=v={rotl:function(j,o){return j<>>32-o},rotr:function(j,o){return j<<32-o|j>>>o},endian:function(j){if(j.constructor==Number)return 16711935&v.rotl(j,8)|4278255360&v.rotl(j,24);for(var o=0;o0;j--)o.push(Math.floor(256*Math.random()));return o},bytesToWords:function(j){for(var o=[],y=0,Z=0;y>>5]|=j[y]<<24-Z%32;return o},wordsToBytes:function(j){for(var o=[],y=0;y<32*j.length;y+=8)o.push(j[y>>>5]>>>24-y%32&255);return o},bytesToHex:function(j){for(var o=[],y=0;y>>4).toString(16)),o.push((15&j[y]).toString(16));return o.join("")},hexToBytes:function(j){for(var o=[],y=0;y>>6*(3-U)&63):"=");return o.join("")},base64ToBytes:function(j){j=j.replace(/[^A-Z0-9+\/]/gi,"");for(var o=[],y=0,Z=0;y>>6-2*Z);return o}}},243:nt=>{"use strict";var Ee={single_source_shortest_paths:function(v,j,o){var y={},Z={};Z[j]=0;var L,Y,V,X,z,Q,U=Ee.PriorityQueue.make();for(U.push(j,0);!U.empty();)for(V in X=(L=U.pop()).cost,z=v[Y=L.value]||{})z.hasOwnProperty(V)&&(Q=X+z[V],(typeof Z[V]>"u"||Z[V]>Q)&&(Z[V]=Q,U.push(V,Q),y[V]=Y));if(typeof o<"u"&&typeof Z[o]>"u"){var me=["Could not find a path from ",j," to ",o,"."].join("");throw new Error(me)}return y},extract_shortest_path_from_predecessor_list:function(v,j){for(var o=[],y=j;y;)o.push(y),y=v[y];return o.reverse(),o},find_path:function(v,j,o){var y=Ee.single_source_shortest_paths(v,j,o);return Ee.extract_shortest_path_from_predecessor_list(y,o)},PriorityQueue:{make:function(v){var y,j=Ee.PriorityQueue,o={};for(y in v=v||{},j)j.hasOwnProperty(y)&&(o[y]=j[y]);return o.queue=[],o.sorter=v.sorter||j.default_sorter,o},default_sorter:function(v,j){return v.cost-j.cost},push:function(v,j){this.queue.push({value:v,cost:j}),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};nt.exports=Ee},362:nt=>{"use strict";nt.exports=function Ee(v,j){if(v===j)return!0;if(v&&j&&"object"==typeof v&&"object"==typeof j){if(v.constructor!==j.constructor)return!1;var o,y,Z;if(Array.isArray(v)){if((o=v.length)!=j.length)return!1;for(y=o;0!=y--;)if(!Ee(v[y],j[y]))return!1;return!0}if(v.constructor===RegExp)return v.source===j.source&&v.flags===j.flags;if(v.valueOf!==Object.prototype.valueOf)return v.valueOf()===j.valueOf();if(v.toString!==Object.prototype.toString)return v.toString()===j.toString();if((o=(Z=Object.keys(v)).length)!==Object.keys(j).length)return!1;for(y=o;0!=y--;)if(!Object.prototype.hasOwnProperty.call(j,Z[y]))return!1;for(y=o;0!=y--;){var U=Z[y];if(!Ee(v[U],j[U]))return!1}return!0}return v!=v&&j!=j}},8861:nt=>{"use strict";nt.exports=function(Ee,v){v||(v={}),"function"==typeof v&&(v={cmp:v});var j="boolean"==typeof v.cycles&&v.cycles,o=v.cmp&&function(Z){return function(U){return function(L,Y){return Z({key:L,value:U[L]},{key:Y,value:U[Y]})}}}(v.cmp),y=[];return function Z(U){if(U&&U.toJSON&&"function"==typeof U.toJSON&&(U=U.toJSON()),void 0!==U){if("number"==typeof U)return isFinite(U)?""+U:"null";if("object"!=typeof U)return JSON.stringify(U);var L,Y;if(Array.isArray(U)){for(Y="[",L=0;L0&&$[$.length-1])&&(6===Xe[0]||2===Xe[0])){S=0;continue}if(3===Xe[0]&&(!$||Xe[1]>$[0]&&Xe[1]<$[3])){S.label=Xe[1];break}if(6===Xe[0]&&S.label<$[1]){S.label=$[1],$=Xe;break}if($&&S.label<$[2]){S.label=$[2],S.ops.push(Xe);break}$[2]&&S.ops.pop(),S.trys.pop();continue}Xe=C.call(M,S)}catch(tt){Xe=[6,tt],N=0}finally{E=$=0}if(5&Xe[0])throw Xe[1];return{value:Xe[0]?Xe[1]:void 0,done:!0}}([Xe,tt])}}}function Z(M,C,S){if(S||2===arguments.length)for(var $,E=0,N=C.length;E=55296&&N<=56319&&S>10),se%1024+56320),(N+1===S||E.length>16384)&&($+=String.fromCharCode.apply(String,E),E.length=0)}return $},z="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",G=typeof Uint8Array>"u"?[]:new Uint8Array(256),Q=0;Q<64;Q++)G[z.charCodeAt(Q)]=Q;for(var ne="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",re=typeof Uint8Array>"u"?[]:new Uint8Array(256),me=0;me<64;me++)re[ne.charCodeAt(me)]=me;for(var Nt=function(M,C,S){return M.slice?M.slice(C,S):new Uint16Array(Array.prototype.slice.call(M,C,S))},$n=function(){function M(C,S,E,N,$,se){this.initialValue=C,this.errorValue=S,this.highStart=E,this.highValueIndex=N,this.index=$,this.data=se}return M.prototype.get=function(C){var S;if(C>=0){if(C<55296||C>56319&&C<=65535)return this.data[S=((S=this.index[C>>5])<<2)+(31&C)];if(C<=65535)return this.data[S=((S=this.index[2048+(C-55296>>5)])<<2)+(31&C)];if(C>11)],this.data[S=((S=this.index[S+=C>>5&63])<<2)+(31&C)];if(C<=1114111)return this.data[this.highValueIndex]}return this.errorValue},M}(),Qi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ui=typeof Uint8Array>"u"?[]:new Uint8Array(256),Bi=0;Bi<64;Bi++)ui[Qi.charCodeAt(Bi)]=Bi;var S,E,N,se,xe,fr=10,Ii=13,xr=15,Ur=17,Jr=18,Il=19,as=20,Li=21,Fi=22,Yo=24,Xr=25,ls=26,po=27,Ac=28,et=30,Tt=32,rt=33,Et=34,ln=35,ei=37,Qn=38,Xt=39,Rn=40,ji=42,Kr=[9001,65288],Ei="\xd7",De=(S=function(M){var E,$,se,xe,ge,C=.75*M.length,S=M.length,N=0;"="===M[M.length-1]&&(C--,"="===M[M.length-2]&&C--);var Xe=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(C):new Array(C),tt=Array.isArray(Xe)?Xe:new Uint8Array(Xe);for(E=0;E>4,tt[N++]=(15&se)<<4|xe>>2,tt[N++]=(3&xe)<<6|63≥return Xe}("KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA=="),E=Array.isArray(S)?function(M){for(var C=M.length,S=[],E=0;E0;){var xe=E[--$];if(Array.isArray(M)?-1!==M.indexOf(xe):M===xe)for(var ge=S;ge<=E.length;){var se;if((se=E[++ge])===C)return!0;if(se!==fr)break}if(xe!==fr)break}return!1},mn=function(M,C){for(var S=M;S>=0;){var E=C[S];if(E!==fr)return E;S--}return 0},Xn=function(M,C,S,E,N){if(0===S[E])return Ei;var $=E-1;if(Array.isArray(N)&&!0===N[$])return Ei;var se=$-1,xe=$+1,ge=C[$],Xe=se>=0?C[se]:0,tt=C[xe];if(2===ge&&3===tt)return Ei;if(-1!==Ve.indexOf(ge))return"!";if(-1!==Ve.indexOf(tt)||-1!==ct.indexOf(tt))return Ei;if(8===mn($,C))return"\xf7";if(11===De.get(M[$])||(ge===Tt||ge===rt)&&11===De.get(M[xe])||7===ge||7===tt||9===ge||-1===[fr,Ii,xr].indexOf(ge)&&9===tt||-1!==[Ur,Jr,Il,Yo,Ac].indexOf(tt)||mn($,C)===Fi||Un(23,Fi,$,C)||Un([Ur,Jr],Li,$,C)||Un(12,12,$,C))return Ei;if(ge===fr)return"\xf7";if(23===ge||23===tt)return Ei;if(16===tt||16===ge)return"\xf7";if(-1!==[Ii,xr,Li].indexOf(tt)||14===ge||36===Xe&&-1!==Gt.indexOf(ge)||ge===Ac&&36===tt||tt===as||-1!==he.indexOf(tt)&&ge===Xr||-1!==he.indexOf(ge)&&tt===Xr||ge===po&&-1!==[ei,Tt,rt].indexOf(tt)||-1!==[ei,Tt,rt].indexOf(ge)&&tt===ls||-1!==he.indexOf(ge)&&-1!==vt.indexOf(tt)||-1!==vt.indexOf(ge)&&-1!==he.indexOf(tt)||-1!==[po,ls].indexOf(ge)&&(tt===Xr||-1!==[Fi,xr].indexOf(tt)&&C[xe+1]===Xr)||-1!==[Fi,xr].indexOf(ge)&&tt===Xr||ge===Xr&&-1!==[Xr,Ac,Yo].indexOf(tt))return Ei;if(-1!==[Xr,Ac,Yo,Ur,Jr].indexOf(tt))for(var mt=$;mt>=0;){if((At=C[mt])===Xr)return Ei;if(-1===[Ac,Yo].indexOf(At))break;mt--}if(-1!==[po,ls].indexOf(tt))for(mt=-1!==[Ur,Jr].indexOf(ge)?se:$;mt>=0;){var At;if((At=C[mt])===Xr)return Ei;if(-1===[Ac,Yo].indexOf(At))break;mt--}if(Qn===ge&&-1!==[Qn,Xt,Et,ln].indexOf(tt)||-1!==[Xt,Et].indexOf(ge)&&-1!==[Xt,Rn].indexOf(tt)||-1!==[Rn,ln].indexOf(ge)&&tt===Rn||-1!==Qt.indexOf(ge)&&-1!==[as,ls].indexOf(tt)||-1!==Qt.indexOf(tt)&&ge===po||-1!==he.indexOf(ge)&&-1!==he.indexOf(tt)||ge===Yo&&-1!==he.indexOf(tt)||-1!==he.concat(Xr).indexOf(ge)&&tt===Fi&&-1===Kr.indexOf(M[xe])||-1!==he.concat(Xr).indexOf(tt)&&ge===Jr)return Ei;if(41===ge&&41===tt){for(var wn=S[$],An=1;wn>0&&41===C[--wn];)An++;if(An%2!=0)return Ei}return ge===Tt&&tt===rt?Ei:"\xf7"},Ar=function(M,C){C||(C={lineBreak:"normal",wordBreak:"normal"});var S=function(M,C){void 0===C&&(C="strict");var S=[],E=[],N=[];return M.forEach(function($,se){var xe=De.get($);if(xe>50?(N.push(!0),xe-=50):N.push(!1),-1!==["normal","auto","loose"].indexOf(C)&&-1!==[8208,8211,12316,12448].indexOf($))return E.push(se),S.push(16);if(4===xe||11===xe){if(0===se)return E.push(se),S.push(et);var ge=S[se-1];return-1===tn.indexOf(ge)?(E.push(E[se-1]),S.push(ge)):(E.push(se),S.push(et))}return E.push(se),31===xe?S.push("strict"===C?Li:ei):xe===ji||29===xe?S.push(et):43===xe?S.push($>=131072&&$<=196605||$>=196608&&$<=262141?ei:et):void S.push(xe)}),[E,S,N]}(M,C.lineBreak),E=S[0],N=S[1],$=S[2];return("break-all"===C.wordBreak||"break-word"===C.wordBreak)&&(N=N.map(function(xe){return-1!==[Xr,et,ji].indexOf(xe)?ei:xe})),[E,N,"keep-all"===C.wordBreak?$.map(function(xe,ge){return xe&&M[ge]>=19968&&M[ge]<=40959}):void 0]},En=function(){function M(C,S,E,N){this.codePoints=C,this.required="!"===S,this.start=E,this.end=N}return M.prototype.slice=function(){return X.apply(void 0,this.codePoints.slice(this.start,this.end))},M}(),On=function(M){return M>=48&&M<=57},ba=function(M){return On(M)||M>=65&&M<=70||M>=97&&M<=102},aA=function(M){return 10===M||9===M||32===M},uf=function(M){return function(M){return function(M){return M>=97&&M<=122}(M)||function(M){return M>=65&&M<=90}(M)}(M)||function(M){return M>=128}(M)||95===M},kx=function(M){return uf(M)||On(M)||45===M},v0=function(M){return M>=0&&M<=8||11===M||M>=14&&M<=31||127===M},Nd=function(M,C){return 92===M&&10!==C},rl=function(M,C,S){return 45===M?uf(C)||Nd(C,S):!!uf(M)||!(92!==M||!Nd(M,C))},Ku=function(M,C,S){return 43===M||45===M?!!On(C)||46===C&&On(S):On(46===M?C:M)},va=function(M){var C=0,S=1;(43===M[C]||45===M[C])&&(45===M[C]&&(S=-1),C++);for(var E=[];On(M[C]);)E.push(M[C++]);var N=E.length?parseInt(X.apply(void 0,E),10):0;46===M[C]&&C++;for(var $=[];On(M[C]);)$.push(M[C++]);var se=$.length,xe=se?parseInt(X.apply(void 0,$),10):0;(69===M[C]||101===M[C])&&C++;var ge=1;(43===M[C]||45===M[C])&&(45===M[C]&&(ge=-1),C++);for(var Xe=[];On(M[C]);)Xe.push(M[C++]);var tt=Xe.length?parseInt(X.apply(void 0,Xe),10):0;return S*(N+xe*Math.pow(10,-se))*Math.pow(10,ge*tt)},_c={type:2},Rx={type:3},hf={type:4},lA={type:13},y0={type:8},cA={type:21},w0={type:9},jP={type:10},ya={type:11},x0={type:12},ff={type:14},Ev={type:23},Sv={type:1},Fl={type:25},Tr={type:24},bc={type:26},Px={type:27},C0={type:28},dA={type:29},uA={type:31},vc={type:32},Zc=function(){function M(){this._value=[]}return M.prototype.write=function(C){this._value=this._value.concat(V(C))},M.prototype.read=function(){for(var C=[],S=this.consumeToken();S!==vc;)C.push(S),S=this.consumeToken();return C},M.prototype.consumeToken=function(){var C=this.consumeCodePoint();switch(C){case 34:return this.consumeStringToken(34);case 35:var S=this.peekCodePoint(0),E=this.peekCodePoint(1),N=this.peekCodePoint(2);if(kx(S)||Nd(E,N)){var $=rl(S,E,N)?2:1;return{type:5,value:this.consumeName(),flags:$}}break;case 36:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),lA;break;case 39:return this.consumeStringToken(39);case 40:return _c;case 41:return Rx;case 42:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),ff;break;case 43:if(Ku(C,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(C),this.consumeNumericToken();break;case 44:return hf;case 45:var xe=C,ge=this.peekCodePoint(0),Xe=this.peekCodePoint(1);if(Ku(xe,ge,Xe))return this.reconsumeCodePoint(C),this.consumeNumericToken();if(rl(xe,ge,Xe))return this.reconsumeCodePoint(C),this.consumeIdentLikeToken();if(45===ge&&62===Xe)return this.consumeCodePoint(),this.consumeCodePoint(),Tr;break;case 46:if(Ku(C,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(C),this.consumeNumericToken();break;case 47:if(42===this.peekCodePoint(0))for(this.consumeCodePoint();;){var tt=this.consumeCodePoint();if(42===tt&&47===(tt=this.consumeCodePoint()))return this.consumeToken();if(-1===tt)return this.consumeToken()}break;case 58:return bc;case 59:return Px;case 60:if(33===this.peekCodePoint(0)&&45===this.peekCodePoint(1)&&45===this.peekCodePoint(2))return this.consumeCodePoint(),this.consumeCodePoint(),Fl;break;case 64:var mt=this.peekCodePoint(0),At=this.peekCodePoint(1),wn=this.peekCodePoint(2);if(rl(mt,At,wn))return{type:7,value:this.consumeName()};break;case 91:return C0;case 92:if(Nd(C,this.peekCodePoint(0)))return this.reconsumeCodePoint(C),this.consumeIdentLikeToken();break;case 93:return dA;case 61:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),y0;break;case 123:return ya;case 125:return x0;case 117:case 85:var An=this.peekCodePoint(0),Tn=this.peekCodePoint(1);return 43===An&&(ba(Tn)||63===Tn)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(C),this.consumeIdentLikeToken();case 124:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),w0;if(124===this.peekCodePoint(0))return this.consumeCodePoint(),cA;break;case 126:if(61===this.peekCodePoint(0))return this.consumeCodePoint(),jP;break;case-1:return vc}return aA(C)?(this.consumeWhiteSpace(),uA):On(C)?(this.reconsumeCodePoint(C),this.consumeNumericToken()):uf(C)?(this.reconsumeCodePoint(C),this.consumeIdentLikeToken()):{type:6,value:X(C)}},M.prototype.consumeCodePoint=function(){var C=this._value.shift();return typeof C>"u"?-1:C},M.prototype.reconsumeCodePoint=function(C){this._value.unshift(C)},M.prototype.peekCodePoint=function(C){return C>=this._value.length?-1:this._value[C]},M.prototype.consumeUnicodeRangeToken=function(){for(var C=[],S=this.consumeCodePoint();ba(S)&&C.length<6;)C.push(S),S=this.consumeCodePoint();for(var E=!1;63===S&&C.length<6;)C.push(S),S=this.consumeCodePoint(),E=!0;if(E)return{type:30,start:parseInt(X.apply(void 0,C.map(function(ge){return 63===ge?48:ge})),16),end:parseInt(X.apply(void 0,C.map(function(ge){return 63===ge?70:ge})),16)};var se=parseInt(X.apply(void 0,C),16);if(45===this.peekCodePoint(0)&&ba(this.peekCodePoint(1))){this.consumeCodePoint(),S=this.consumeCodePoint();for(var xe=[];ba(S)&&xe.length<6;)xe.push(S),S=this.consumeCodePoint();return{type:30,start:se,end:parseInt(X.apply(void 0,xe),16)}}return{type:30,start:se,end:se}},M.prototype.consumeIdentLikeToken=function(){var C=this.consumeName();return"url"===C.toLowerCase()&&40===this.peekCodePoint(0)?(this.consumeCodePoint(),this.consumeUrlToken()):40===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:19,value:C}):{type:20,value:C}},M.prototype.consumeUrlToken=function(){var C=[];if(this.consumeWhiteSpace(),-1===this.peekCodePoint(0))return{type:22,value:""};var S=this.peekCodePoint(0);if(39===S||34===S){var E=this.consumeStringToken(this.consumeCodePoint());return 0===E.type&&(this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0))?(this.consumeCodePoint(),{type:22,value:E.value}):(this.consumeBadUrlRemnants(),Ev)}for(;;){var N=this.consumeCodePoint();if(-1===N||41===N)return{type:22,value:X.apply(void 0,C)};if(aA(N))return this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:22,value:X.apply(void 0,C)}):(this.consumeBadUrlRemnants(),Ev);if(34===N||39===N||40===N||v0(N))return this.consumeBadUrlRemnants(),Ev;if(92===N){if(!Nd(N,this.peekCodePoint(0)))return this.consumeBadUrlRemnants(),Ev;C.push(this.consumeEscapedCodePoint())}else C.push(N)}},M.prototype.consumeWhiteSpace=function(){for(;aA(this.peekCodePoint(0));)this.consumeCodePoint()},M.prototype.consumeBadUrlRemnants=function(){for(;;){var C=this.consumeCodePoint();if(41===C||-1===C)return;Nd(C,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},M.prototype.consumeStringSlice=function(C){for(var E="";C>0;){var N=Math.min(5e4,C);E+=X.apply(void 0,this._value.splice(0,N)),C-=N}return this._value.shift(),E},M.prototype.consumeStringToken=function(C){for(var S="",E=0;;){var N=this._value[E];if(-1===N||void 0===N||N===C)return{type:0,value:S+=this.consumeStringSlice(E)};if(10===N)return this._value.splice(0,E),Sv;if(92===N){var $=this._value[E+1];-1!==$&&void 0!==$&&(10===$?(S+=this.consumeStringSlice(E),E=-1,this._value.shift()):Nd(N,$)&&(S+=this.consumeStringSlice(E),S+=X(this.consumeEscapedCodePoint()),E=-1))}E++}},M.prototype.consumeNumber=function(){var C=[],S=4,E=this.peekCodePoint(0);for((43===E||45===E)&&C.push(this.consumeCodePoint());On(this.peekCodePoint(0));)C.push(this.consumeCodePoint());E=this.peekCodePoint(0);var N=this.peekCodePoint(1);if(46===E&&On(N))for(C.push(this.consumeCodePoint(),this.consumeCodePoint()),S=8;On(this.peekCodePoint(0));)C.push(this.consumeCodePoint());E=this.peekCodePoint(0),N=this.peekCodePoint(1);var $=this.peekCodePoint(2);if((69===E||101===E)&&((43===N||45===N)&&On($)||On(N)))for(C.push(this.consumeCodePoint(),this.consumeCodePoint()),S=8;On(this.peekCodePoint(0));)C.push(this.consumeCodePoint());return[va(C),S]},M.prototype.consumeNumericToken=function(){var C=this.consumeNumber(),S=C[0],E=C[1],N=this.peekCodePoint(0),$=this.peekCodePoint(1),se=this.peekCodePoint(2);return rl(N,$,se)?{type:15,number:S,flags:E,unit:this.consumeName()}:37===N?(this.consumeCodePoint(),{type:16,number:S,flags:E}):{type:17,number:S,flags:E}},M.prototype.consumeEscapedCodePoint=function(){var C=this.consumeCodePoint();if(ba(C)){for(var S=X(C);ba(this.peekCodePoint(0))&&S.length<6;)S+=X(this.consumeCodePoint());aA(this.peekCodePoint(0))&&this.consumeCodePoint();var E=parseInt(S,16);return 0===E||function(M){return M>=55296&&M<=57343}(E)||E>1114111?65533:E}return-1===C?65533:C},M.prototype.consumeName=function(){for(var C="";;){var S=this.consumeCodePoint();if(kx(S))C+=X(S);else{if(!Nd(S,this.peekCodePoint(0)))return this.reconsumeCodePoint(S),C;C+=X(this.consumeEscapedCodePoint())}}},M}(),Tv=function(){function M(C){this._tokens=C}return M.create=function(C){var S=new Zc;return S.write(C),new M(S.read())},M.parseValue=function(C){return M.create(C).parseComponentValue()},M.parseValues=function(C){return M.create(C).parseComponentValues()},M.prototype.parseComponentValue=function(){for(var C=this.consumeToken();31===C.type;)C=this.consumeToken();if(32===C.type)throw new SyntaxError("Error parsing CSS component value, unexpected EOF");this.reconsumeToken(C);var S=this.consumeComponentValue();do{C=this.consumeToken()}while(31===C.type);if(32===C.type)return S;throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")},M.prototype.parseComponentValues=function(){for(var C=[];;){var S=this.consumeComponentValue();if(32===S.type)return C;C.push(S),C.push()}},M.prototype.consumeComponentValue=function(){var C=this.consumeToken();switch(C.type){case 11:case 28:case 2:return this.consumeSimpleBlock(C.type);case 19:return this.consumeFunction(C)}return C},M.prototype.consumeSimpleBlock=function(C){for(var S={type:C,values:[]},E=this.consumeToken();;){if(32===E.type||Iv(E,C))return S;this.reconsumeToken(E),S.values.push(this.consumeComponentValue()),E=this.consumeToken()}},M.prototype.consumeFunction=function(C){for(var S={name:C.value,values:[],type:18};;){var E=this.consumeToken();if(32===E.type||3===E.type)return S;this.reconsumeToken(E),S.values.push(this.consumeComponentValue())}},M.prototype.consumeToken=function(){var C=this._tokens.shift();return typeof C>"u"?vc:C},M.prototype.reconsumeToken=function(C){this._tokens.unshift(C)},M}(),Ld=function(M){return 15===M.type},Ud=function(M){return 17===M.type},$r=function(M){return 20===M.type},hA=function(M){return 0===M.type},fA=function(M,C){return $r(M)&&M.value===C},M0=function(M){return 31!==M.type},Yu=function(M){return 31!==M.type&&4!==M.type},ol=function(M){var C=[],S=[];return M.forEach(function(E){if(4===E.type){if(0===S.length)throw new Error("Error parsing function args, zero tokens for arg");return C.push(S),void(S=[])}31!==E.type&&S.push(E)}),S.length&&C.push(S),C},Iv=function(M,C){return 11===C&&12===M.type||28===C&&29===M.type||2===C&&3===M.type},Jc=function(M){return 17===M.type||15===M.type},wi=function(M){return 16===M.type||Jc(M)},Ox=function(M){return M.length>1?[M[0],M[1]]:[M[0]]},xs={type:17,number:0,flags:4},Fv={type:16,number:50,flags:4},Vd={type:16,number:100,flags:4},pA=function(M,C,S){var E=M[0],N=M[1];return[mo(E,C),mo(typeof N<"u"?N:E,S)]},mo=function(M,C){if(16===M.type)return M.number/100*C;if(Ld(M))switch(M.unit){case"rem":case"em":return 16*M.number;default:return M.number}return M.number},AA_parse=function(M,C){if(15===C.type)switch(C.unit){case"deg":return Math.PI*C.number/180;case"grad":return Math.PI/200*C.number;case"rad":return C.number;case"turn":return 2*Math.PI*C.number}throw new Error("Unsupported angle type")},E0=function(M){return 15===M.type&&("deg"===M.unit||"grad"===M.unit||"rad"===M.unit||"turn"===M.unit)},kv=function(M){switch(M.filter($r).map(function(S){return S.value}).join(" ")){case"to bottom right":case"to right bottom":case"left top":case"top left":return[xs,xs];case"to top":case"bottom":return ra(0);case"to bottom left":case"to left bottom":case"right top":case"top right":return[xs,Vd];case"to right":case"left":return ra(90);case"to top left":case"to left top":case"right bottom":case"bottom right":return[Vd,Vd];case"to bottom":case"top":return ra(180);case"to top right":case"to right top":case"left bottom":case"bottom left":return[Vd,xs];case"to left":case"right":return ra(270)}return 0},ra=function(M){return Math.PI*M/180},sl_parse=function(M,C){if(18===C.type){var S=Ux[C.name];if(typeof S>"u")throw new Error('Attempting to parse an unsupported color function "'+C.name+'"');return S(M,C.values)}if(5===C.type){if(3===C.value.length){var E=C.value.substring(0,1),N=C.value.substring(1,2),$=C.value.substring(2,3);return $i(parseInt(E+E,16),parseInt(N+N,16),parseInt($+$,16),1)}if(4===C.value.length){E=C.value.substring(0,1),N=C.value.substring(1,2),$=C.value.substring(2,3);var se=C.value.substring(3,4);return $i(parseInt(E+E,16),parseInt(N+N,16),parseInt($+$,16),parseInt(se+se,16)/255)}if(6===C.value.length)return E=C.value.substring(0,2),N=C.value.substring(2,4),$=C.value.substring(4,6),$i(parseInt(E,16),parseInt(N,16),parseInt($,16),1);if(8===C.value.length)return E=C.value.substring(0,2),N=C.value.substring(2,4),$=C.value.substring(4,6),se=C.value.substring(6,8),$i(parseInt(E,16),parseInt(N,16),parseInt($,16),parseInt(se,16)/255)}if(20===C.type){var xe=xa[C.value.toUpperCase()];if(typeof xe<"u")return xe}return xa.TRANSPARENT},wa=function(M){return!(255&M)},us=function(M){var C=255&M,S=255&M>>8,E=255&M>>16,N=255&M>>24;return C<255?"rgba("+N+","+E+","+S+","+C/255+")":"rgb("+N+","+E+","+S+")"},$i=function(M,C,S,E){return(M<<24|C<<16|S<<8|Math.round(255*E))>>>0},Uo=function(M,C){if(17===M.type)return M.number;if(16===M.type){var S=3===C?1:255;return 3===C?M.number/100*S:Math.round(M.number/100*S)}return 0},Jo=function(M,C){var S=C.filter(Yu);if(3===S.length){var E=S.map(Uo);return $i(E[0],E[1],E[2],1)}if(4===S.length){var xe=S.map(Uo);return $i(xe[0],xe[1],xe[2],xe[3])}return 0};function ed(M,C,S){return S<0&&(S+=1),S>=1&&(S-=1),S<1/6?(C-M)*S*6+M:S<.5?C:S<2/3?6*(C-M)*(2/3-S)+M:M}var ks=function(M,C){var S=C.filter(Yu),E=S[0],N=S[1],$=S[2],se=S[3],xe=(17===E.type?ra(E.number):AA_parse(M,E))/(2*Math.PI),ge=wi(N)?N.number/100:0,Xe=wi($)?$.number/100:0,tt=typeof se<"u"&&wi(se)?mo(se,1):1;if(0===ge)return $i(255*Xe,255*Xe,255*Xe,1);var mt=Xe<=.5?Xe*(ge+1):Xe+ge-Xe*ge,At=2*Xe-mt,wn=ed(At,mt,xe+1/3),An=ed(At,mt,xe),Tn=ed(At,mt,xe-1/3);return $i(255*wn,255*An,255*Tn,tt)},Ux={hsl:ks,hsla:ks,rgb:Jo,rgba:Jo},td=function(M,C){return sl_parse(M,Tv.create(C).parseComponentValue())},xa={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},Rv={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:function(M,C){return C.map(function(S){if($r(S))switch(S.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},Vx={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},yc=function(M,C){var S=sl_parse(M,C[0]),E=C[1];return E&&wi(E)?{color:S,stop:E}:{color:S,stop:null}},Hd=function(M,C){var S=M[0],E=M[M.length-1];null===S.stop&&(S.stop=xs),null===E.stop&&(E.stop=Vd);for(var N=[],$=0,se=0;se$?ge:$),$=ge}else N.push(null)}var Xe=null;for(se=0;sese.optimumDistance)?{optimumCorner:xe,optimumDistance:tt}:se},{optimumDistance:N?1/0:-1/0,optimumCorner:null}).optimumCorner},pf=function(M,C){var S=ra(180),E=[];return ol(C).forEach(function(N,$){if(0===$){var se=N[0];if(20===se.type&&-1!==["top","left","right","bottom"].indexOf(se.value))return void(S=kv(N));if(E0(se))return void(S=(AA_parse(M,se)+ra(270))%ra(360))}var xe=yc(M,N);E.push(xe)}),{angle:S,stops:E,type:1}},S0="closest-side",nd="farthest-side",Nv="closest-corner",T0="farthest-corner",zx="ellipse",mf="contain",id=function(M,C){var S=0,E=3,N=[],$=[];return ol(C).forEach(function(se,xe){var ge=!0;if(0===xe?ge=se.reduce(function(tt,mt){if($r(mt))switch(mt.value){case"center":return $.push(Fv),!1;case"top":case"left":return $.push(xs),!1;case"right":case"bottom":return $.push(Vd),!1}else if(wi(mt)||Jc(mt))return $.push(mt),!1;return tt},ge):1===xe&&(ge=se.reduce(function(tt,mt){if($r(mt))switch(mt.value){case"circle":return S=0,!1;case zx:return S=1,!1;case mf:case S0:return E=0,!1;case nd:return E=1,!1;case Nv:return E=2,!1;case"cover":case T0:return E=3,!1}else if(Jc(mt)||wi(mt))return Array.isArray(E)||(E=[]),E.push(mt),!1;return tt},ge)),ge){var Xe=yc(M,se);N.push(Xe)}}),{size:E,shape:S,stops:N,position:$,type:2}},Uv_parse=function(M,C){if(22===C.type){var S={url:C.value,type:0};return M.cache.addImage(C.value),S}if(18===C.type){var E=Zu[C.name];if(typeof E>"u")throw new Error('Attempting to parse an unsupported image function "'+C.name+'"');return E(M,C.values)}throw new Error("Unsupported image type "+C.type)};for(var Zu={"linear-gradient":function(M,C){var S=ra(180),E=[];return ol(C).forEach(function(N,$){if(0===$){var se=N[0];if(20===se.type&&"to"===se.value)return void(S=kv(N));if(E0(se))return void(S=AA_parse(M,se))}var xe=yc(M,N);E.push(xe)}),{angle:S,stops:E,type:1}},"-moz-linear-gradient":pf,"-ms-linear-gradient":pf,"-o-linear-gradient":pf,"-webkit-linear-gradient":pf,"radial-gradient":function(M,C){var S=0,E=3,N=[],$=[];return ol(C).forEach(function(se,xe){var ge=!0;if(0===xe){var Xe=!1;ge=se.reduce(function(mt,At){if(Xe)if($r(At))switch(At.value){case"center":return $.push(Fv),mt;case"top":case"left":return $.push(xs),mt;case"right":case"bottom":return $.push(Vd),mt}else(wi(At)||Jc(At))&&$.push(At);else if($r(At))switch(At.value){case"circle":return S=0,!1;case zx:return S=1,!1;case"at":return Xe=!0,!1;case S0:return E=0,!1;case"cover":case nd:return E=1,!1;case mf:case Nv:return E=2,!1;case T0:return E=3,!1}else if(Jc(At)||wi(At))return Array.isArray(E)||(E=[]),E.push(At),!1;return mt},ge)}if(ge){var tt=yc(M,se);N.push(tt)}}),{size:E,shape:S,stops:N,position:$,type:2}},"-moz-radial-gradient":id,"-ms-radial-gradient":id,"-o-radial-gradient":id,"-webkit-radial-gradient":id,"-webkit-gradient":function(M,C){var S=ra(180),E=[],N=1;return ol(C).forEach(function(ge,Xe){var tt=ge[0];if(0===Xe){if($r(tt)&&"linear"===tt.value)return void(N=1);if($r(tt)&&"radial"===tt.value)return void(N=2)}if(18===tt.type)if("from"===tt.name){var mt=sl_parse(M,tt.values[0]);E.push({stop:xs,color:mt})}else if("to"===tt.name)mt=sl_parse(M,tt.values[0]),E.push({stop:Vd,color:mt});else if("color-stop"===tt.name){var At=tt.values.filter(Yu);if(2===At.length){mt=sl_parse(M,At[1]);var wn=At[0];Ud(wn)&&E.push({stop:{type:16,number:100*wn.number,flags:wn.flags},color:mt})}}}),1===N?{angle:(S+ra(180))%ra(360),stops:E,type:N}:{size:3,shape:0,stops:E,position:[],type:N}}},q2={name:"background-image",initialValue:"none",type:1,prefix:!1,parse:function(M,C){if(0===C.length)return[];var S=C[0];return 20===S.type&&"none"===S.value?[]:C.filter(function(E){return Yu(E)&&function Gx(M){return!(20===M.type&&"none"===M.value||18===M.type&&!Zu[M.name])}(E)}).map(function(E){return Uv_parse(M,E)})}},W2={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:function(M,C){return C.map(function(S){if($r(S))switch(S.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},X2={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:function(M,C){return ol(C).map(function(S){return S.filter(wi)}).map(Ox)}},Vv={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:function(M,C){return ol(C).map(function(S){return S.filter($r).map(function(E){return E.value}).join(" ")}).map(I0)}},I0=function(M){switch(M){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;default:return 0}},gf=function(M){return M.AUTO="auto",M.CONTAIN="contain",M.COVER="cover",M}(gf||{}),_f={name:"background-size",initialValue:"0",prefix:!1,type:1,parse:function(M,C){return ol(C).map(function(S){return S.filter(wc)})}},wc=function(M){return $r(M)||wi(M)},F0=function(M){return{name:"border-"+M+"-color",initialValue:"transparent",prefix:!1,type:3,format:"color"}},K2=F0("top"),es=F0("right"),gA=F0("bottom"),bf=F0("left"),rd=function(M){return{name:"border-radius-"+M,initialValue:"0 0",prefix:!1,type:1,parse:function(C,S){return Ox(S.filter(wi))}}},jx=rd("top-left"),$x=rd("top-right"),qx=rd("bottom-right"),D0=rd("bottom-left"),vf=function(M){return{name:"border-"+M+"-style",initialValue:"solid",prefix:!1,type:2,parse:function(C,S){switch(S){case"none":return 0;case"dashed":return 2;case"dotted":return 3;case"double":return 4}return 1}}},Hv=vf("top"),yf=vf("right"),wf=vf("bottom"),to=vf("left"),en=function(M){return{name:"border-"+M+"-width",initialValue:"0",type:0,prefix:!1,parse:function(C,S){return Ld(S)?S.number:0}}},xi=en("top"),$o=en("right"),ll=en("bottom"),Cs=en("left"),Gs={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},Ju={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:function(M,C){return"rtl"===C?1:0}},no={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:function(M,C){return C.filter($r).reduce(function(S,E){return S|Vo(E.value)},0)}},Vo=function(M){switch(M){case"block":case"-webkit-box":return 2;case"inline":return 4;case"run-in":return 8;case"flow":return 16;case"flow-root":return 32;case"table":return 64;case"flex":case"-webkit-flex":return 128;case"grid":case"-ms-grid":return 256;case"ruby":return 512;case"subgrid":return 1024;case"list-item":return 2048;case"table-row-group":return 4096;case"table-header-group":return 8192;case"table-footer-group":return 16384;case"table-row":return 32768;case"table-cell":return 65536;case"table-column-group":return 131072;case"table-column":return 262144;case"table-caption":return 524288;case"ruby-base":return 1048576;case"ruby-text":return 2097152;case"ruby-base-container":return 4194304;case"ruby-text-container":return 8388608;case"contents":return 16777216;case"inline-block":return 33554432;case"inline-list-item":return 67108864;case"inline-table":return 134217728;case"inline-flex":return 268435456;case"inline-grid":return 536870912}return 0},La={name:"float",initialValue:"none",prefix:!1,type:2,parse:function(M,C){switch(C){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},Oi={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:function(M,C){return 20===C.type&&"normal"===C.value?0:17===C.type||15===C.type?C.number:0}},Qd=function(M){return M.NORMAL="normal",M.STRICT="strict",M}(Qd||{}),Wx={name:"line-break",initialValue:"normal",prefix:!1,type:2,parse:function(M,C){return"strict"===C?Qd.STRICT:Qd.NORMAL}},zd={name:"line-height",initialValue:"normal",prefix:!1,type:4},go=function(M,C){return $r(M)&&"normal"===M.value?1.2*C:17===M.type?C*M.number:wi(M)?mo(M,C):C},xc={name:"list-style-image",initialValue:"none",type:0,prefix:!1,parse:function(M,C){return 20===C.type&&"none"===C.value?null:Uv_parse(M,C)}},Gd={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:function(M,C){return"inside"===C?0:1}},cl={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:function(M,C){switch(C){case"disc":return 0;case"circle":return 1;case"square":return 2;case"decimal":return 3;case"cjk-decimal":return 4;case"decimal-leading-zero":return 5;case"lower-roman":return 6;case"upper-roman":return 7;case"lower-greek":return 8;case"lower-alpha":return 9;case"upper-alpha":return 10;case"arabic-indic":return 11;case"armenian":return 12;case"bengali":return 13;case"cambodian":return 14;case"cjk-earthly-branch":return 15;case"cjk-heavenly-stem":return 16;case"cjk-ideographic":return 17;case"devanagari":return 18;case"ethiopic-numeric":return 19;case"georgian":return 20;case"gujarati":return 21;case"gurmukhi":case"hebrew":return 22;case"hiragana":return 23;case"hiragana-iroha":return 24;case"japanese-formal":return 25;case"japanese-informal":return 26;case"kannada":return 27;case"katakana":return 28;case"katakana-iroha":return 29;case"khmer":return 30;case"korean-hangul-formal":return 31;case"korean-hanja-formal":return 32;case"korean-hanja-informal":return 33;case"lao":return 34;case"lower-armenian":return 35;case"malayalam":return 36;case"mongolian":return 37;case"myanmar":return 38;case"oriya":return 39;case"persian":return 40;case"simp-chinese-formal":return 41;case"simp-chinese-informal":return 42;case"tamil":return 43;case"telugu":return 44;case"thai":return 45;case"tibetan":return 46;case"trad-chinese-formal":return 47;case"trad-chinese-informal":return 48;case"upper-armenian":return 49;case"disclosure-open":return 50;case"disclosure-closed":return 51;default:return-1}}},Dl=function(M){return{name:"margin-"+M,initialValue:"0",prefix:!1,type:4}},Qv=Dl("top"),od=Dl("right"),_A=Dl("bottom"),Ua=Dl("left"),hi={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:function(M,C){return C.filter($r).map(function(S){switch(S.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;default:return 0}})}},bA={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:function(M,C){return"break-word"===C?"break-word":"normal"}},jd=function(M){return{name:"padding-"+M,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}},Bl=jd("top"),vA=jd("right"),eh=jd("bottom"),Ho=jd("left"),B0={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:function(M,C){switch(C){case"right":return 2;case"center":case"justify":return 1;default:return 0}}},hs={name:"position",initialValue:"static",prefix:!1,type:2,parse:function(M,C){switch(C){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},Rs={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:function(M,C){return 1===C.length&&fA(C[0],"none")?[]:ol(C).map(function(S){for(var E={color:xa.TRANSPARENT,offsetX:xs,offsetY:xs,blur:xs},N=0,$=0;$"u")throw new Error('Attempting to parse an unsupported transform function "'+C.name+'"');return S(C.values)}return null}},yA={matrix:function(M){var C=M.filter(function(S){return 17===S.type}).map(function(S){return S.number});return 6===C.length?C:null},matrix3d:function(M){var C=M.filter(function(ge){return 17===ge.type}).map(function(ge){return ge.number});return 16===C.length?[C[0],C[1],C[4],C[5],C[12],C[13]]:null}},wA={type:16,number:50,flags:4},Xx=[wA,wA],P0={name:"transform-origin",initialValue:"50% 50%",prefix:!0,type:1,parse:function(M,C){var S=C.filter(wi);return 2!==S.length?Xx:[S[0],S[1]]}},O0={name:"visible",initialValue:"none",prefix:!1,type:2,parse:function(M,C){switch(C){case"hidden":return 1;case"collapse":return 2;default:return 0}}},N0=function(M){return M.NORMAL="normal",M.BREAK_ALL="break-all",M.KEEP_ALL="keep-all",M}(N0||{}),zv={name:"word-break",initialValue:"normal",prefix:!1,type:2,parse:function(M,C){switch(C){case"break-all":return N0.BREAK_ALL;case"keep-all":return N0.KEEP_ALL;default:return N0.NORMAL}}},$P={name:"z-index",initialValue:"auto",prefix:!1,type:0,parse:function(M,C){if(20===C.type)return{auto:!0,order:0};if(Ud(C))return{auto:!1,order:C.number};throw new Error("Invalid z-index number parsed")}},Kx={name:"time",parse:function(M,C){if(15===C.type)switch(C.unit.toLowerCase()){case"s":return 1e3*C.number;case"ms":return C.number}throw new Error("Unsupported time type")}},qP={name:"opacity",initialValue:"1",type:0,prefix:!1,parse:function(M,C){return Ud(C)?C.number:1}},WP={name:"text-decoration-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},XP={name:"text-decoration-line",initialValue:"none",prefix:!1,type:1,parse:function(M,C){return C.filter($r).map(function(S){switch(S.value){case"underline":return 1;case"overline":return 2;case"line-through":return 3;case"none":return 4}return 0}).filter(function(S){return 0!==S})}},KP={name:"font-family",initialValue:"",prefix:!1,type:1,parse:function(M,C){var S=[],E=[];return C.forEach(function(N){switch(N.type){case 20:case 0:S.push(N.value);break;case 17:S.push(N.number.toString());break;case 4:E.push(S.join(" ")),S.length=0}}),S.length&&E.push(S.join(" ")),E.map(function(N){return-1===N.indexOf(" ")?N:"'"+N+"'"})}},YP={name:"font-size",initialValue:"0",prefix:!1,type:3,format:"length"},ZP={name:"font-weight",initialValue:"normal",type:0,prefix:!1,parse:function(M,C){return Ud(C)?C.number:$r(C)&&"bold"===C.value?700:400}},JP={name:"font-variant",initialValue:"none",type:1,prefix:!1,parse:function(M,C){return C.filter($r).map(function(S){return S.value})}},e4={name:"font-style",initialValue:"normal",prefix:!1,type:2,parse:function(M,C){switch(C){case"oblique":return"oblique";case"italic":return"italic";default:return"normal"}}},wo=function(M,C){return!!(M&C)},L0={name:"content",initialValue:"none",type:1,prefix:!1,parse:function(M,C){if(0===C.length)return[];var S=C[0];return 20===S.type&&"none"===S.value?[]:C}},Yx={name:"counter-increment",initialValue:"none",prefix:!0,type:1,parse:function(M,C){if(0===C.length)return null;var S=C[0];if(20===S.type&&"none"===S.value)return null;for(var E=[],N=C.filter(M0),$=0;$1?1:0],this.overflowWrap=un(C,bA,S.overflowWrap),this.paddingTop=un(C,Bl,S.paddingTop),this.paddingRight=un(C,vA,S.paddingRight),this.paddingBottom=un(C,eh,S.paddingBottom),this.paddingLeft=un(C,Ho,S.paddingLeft),this.paintOrder=un(C,Z2,S.paintOrder),this.position=un(C,hs,S.position),this.textAlign=un(C,B0,S.textAlign),this.textDecorationColor=un(C,WP,null!==(E=S.textDecorationColor)&&void 0!==E?E:S.color),this.textDecorationLine=un(C,XP,null!==(N=S.textDecorationLine)&&void 0!==N?N:S.textDecoration),this.textShadow=un(C,Rs,S.textShadow),this.textTransform=un(C,k0,S.textTransform),this.transform=un(C,th,S.transform),this.transformOrigin=un(C,P0,S.transformOrigin),this.visibility=un(C,O0,S.visibility),this.webkitTextStrokeColor=un(C,U0,S.webkitTextStrokeColor),this.webkitTextStrokeWidth=un(C,Mn,S.webkitTextStrokeWidth),this.wordBreak=un(C,zv,S.wordBreak),this.zIndex=un(C,$P,S.zIndex)}return M.prototype.isVisible=function(){return this.display>0&&this.opacity>0&&0===this.visibility},M.prototype.isTransparent=function(){return wa(this.backgroundColor)},M.prototype.isTransformed=function(){return null!==this.transform},M.prototype.isPositioned=function(){return 0!==this.position},M.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},M.prototype.isFloating=function(){return 0!==this.float},M.prototype.isInlineLevel=function(){return wo(this.display,4)||wo(this.display,33554432)||wo(this.display,268435456)||wo(this.display,536870912)||wo(this.display,67108864)||wo(this.display,134217728)},M}(),qr=function(){return function M(C,S){this.content=un(C,L0,S.content),this.quotes=un(C,n4,S.quotes)}}(),mi=function(){return function M(C,S){this.counterIncrement=un(C,Yx,S.counterIncrement),this.counterReset=un(C,Zx,S.counterReset)}}(),un=function(M,C,S){var E=new Zc,N=null!==S&&typeof S<"u"?S.toString():C.initialValue;E.write(N);var $=new Tv(E.read());switch(C.type){case 2:var se=$.parseComponentValue();return C.parse(M,$r(se)?se.value:C.initialValue);case 0:return C.parse(M,$.parseComponentValue());case 1:return C.parse(M,$.parseComponentValues());case 4:return $.parseComponentValue();case 3:switch(C.format){case"angle":return AA_parse(M,$.parseComponentValue());case"color":return sl_parse(M,$.parseComponentValue());case"image":return Uv_parse(M,$.parseComponentValue());case"length":var xe=$.parseComponentValue();return Jc(xe)?xe:xs;case"length-percentage":var ge=$.parseComponentValue();return wi(ge)?ge:xs;case"time":return Kx.parse(M,$.parseComponentValue())}}},xf=function(M,C){var S=function(M){switch(M.getAttribute("data-html2canvas-debug")){case"all":return 1;case"clone":return 2;case"parse":return 3;case"render":return 4;default:return 0}}(M);return 1===S||C===S},Ma=function(){return function M(C,S){this.context=C,this.textNodes=[],this.elements=[],this.flags=0,xf(S,3),this.styles=new $d(C,window.getComputedStyle(S,null)),Rf(S)&&(this.styles.animationDuration.some(function(E){return E>0})&&(S.style.animationDuration="0s"),null!==this.styles.transform&&(S.style.transform="none")),this.bounds=L(this.context,S),xf(S,4)&&(this.flags|=16)}}(),Cf="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Pl=typeof Uint8Array>"u"?[]:new Uint8Array(256),cr=0;cr<64;cr++)Pl[Cf.charCodeAt(cr)]=cr;for(var Sf=function(M,C,S){return M.slice?M.slice(C,S):new Uint16Array(Array.prototype.slice.call(M,C,S))},EA=function(){function M(C,S,E,N,$,se){this.initialValue=C,this.errorValue=S,this.highStart=E,this.highValueIndex=N,this.index=$,this.data=se}return M.prototype.get=function(C){var S;if(C>=0){if(C<55296||C>56319&&C<=65535)return this.data[S=((S=this.index[C>>5])<<2)+(31&C)];if(C<=65535)return this.data[S=((S=this.index[2048+(C-55296>>5)])<<2)+(31&C)];if(C>11)],this.data[S=((S=this.index[S+=C>>5&63])<<2)+(31&C)];if(C<=1114111)return this.data[this.highValueIndex]}return this.errorValue},M}(),nh="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",G0=typeof Uint8Array>"u"?[]:new Uint8Array(256),j0=0;j0<64;j0++)G0[nh.charCodeAt(j0)]=j0;var Xv=8,q0=9,Kv=11,Pt=12,Yv=function(){for(var M=[],C=0;C>10),se%1024+56320),(N+1===S||E.length>16384)&&($+=String.fromCharCode.apply(String,E),E.length=0)}return $},IA=function(M){var S=function(M){var E,$,se,xe,ge,C=.75*M.length,S=M.length,N=0;"="===M[M.length-1]&&(C--,"="===M[M.length-2]&&C--);var Xe=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(C):new Array(C),tt=Array.isArray(Xe)?Xe:new Uint8Array(Xe);for(E=0;E>4,tt[N++]=(15&se)<<4|xe>>2,tt[N++]=(3&xe)<<6|63≥return Xe}(M),E=Array.isArray(S)?function(M){for(var C=M.length,S=[],E=0;E=55296&&N<=56319&&S=S)return{done:!0,value:null};for(var se="\xd7";Ese.x||tt.y>se.y;return se=tt,0===Xe||mt});return M.body.removeChild(C),xe}(document);return Object.defineProperty(fs,"SUPPORT_WORD_BREAKING",{value:M}),M},get SUPPORT_SVG_DRAWING(){var M=function(M){var C=new Image,S=M.createElement("canvas"),E=S.getContext("2d");if(!E)return!1;C.src="data:image/svg+xml,";try{E.drawImage(C,0,0),S.toDataURL()}catch{return!1}return!0}(document);return Object.defineProperty(fs,"SUPPORT_SVG_DRAWING",{value:M}),M},get SUPPORT_FOREIGNOBJECT_DRAWING(){var M="function"==typeof Array.from&&"function"==typeof window.fetch?function(M){var C=M.createElement("canvas"),S=100;C.width=S,C.height=S;var E=C.getContext("2d");if(!E)return Promise.reject(!1);E.fillStyle="rgb(0, 255, 0)",E.fillRect(0,0,S,S);var N=new Image,$=C.toDataURL();N.src=$;var se=Rr(S,S,0,0,N);return E.fillStyle="red",E.fillRect(0,0,S,S),Jv(se).then(function(xe){E.drawImage(xe,0,0);var ge=E.getImageData(0,0,S,S).data;E.fillStyle="red",E.fillRect(0,0,S,S);var Xe=M.createElement("div");return Xe.style.backgroundImage="url("+$+")",Xe.style.height=S+"px",DA(ge)?Jv(Rr(S,S,0,0,Xe)):Promise.reject(!1)}).then(function(xe){return E.drawImage(xe,0,0),DA(E.getImageData(0,0,S,S).data)}).catch(function(){return!1})}(document):Promise.resolve(!1);return Object.defineProperty(fs,"SUPPORT_FOREIGNOBJECT_DRAWING",{value:M}),M},get SUPPORT_CORS_IMAGES(){var M=typeof(new Image).crossOrigin<"u";return Object.defineProperty(fs,"SUPPORT_CORS_IMAGES",{value:M}),M},get SUPPORT_RESPONSE_TYPE(){var M="string"==typeof(new XMLHttpRequest).responseType;return Object.defineProperty(fs,"SUPPORT_RESPONSE_TYPE",{value:M}),M},get SUPPORT_CORS_XHR(){var M="withCredentials"in new XMLHttpRequest;return Object.defineProperty(fs,"SUPPORT_CORS_XHR",{value:M}),M},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var M=!!(typeof Intl<"u"&&Intl.Segmenter);return Object.defineProperty(fs,"SUPPORT_NATIVE_TEXT_SEGMENTATION",{value:M}),M}},Tf=function(){return function M(C,S){this.text=C,this.bounds=S}}(),BA=function(M,C){var S=C.ownerDocument;if(S){var E=S.createElement("html2canvaswrapper");E.appendChild(C.cloneNode(!0));var N=C.parentNode;if(N){N.replaceChild(E,C);var $=L(M,E);return E.firstChild&&N.replaceChild(E.firstChild,E),$}}return U.EMPTY},kA=function(M,C,S){var E=M.ownerDocument;if(!E)throw new Error("Node has no owner document");var N=E.createRange();return N.setStart(M,C),N.setEnd(M,C+S),N},If=function(M){if(fs.SUPPORT_NATIVE_TEXT_SEGMENTATION){var C=new Intl.Segmenter(void 0,{granularity:"grapheme"});return Array.from(C.segment(M)).map(function(S){return S.segment})}return function(M){for(var E,C=tC(M),S=[];!(E=C.next()).done;)E.value&&S.push(E.value.slice());return S}(M)},J0=function(M,C){return 0!==C.letterSpacing?If(M):function(M,C){if(fs.SUPPORT_NATIVE_TEXT_SEGMENTATION){var S=new Intl.Segmenter(void 0,{granularity:"word"});return Array.from(S.segment(M)).map(function(E){return E.segment})}return Ff(M,C)}(M,C)},e_=[32,160,4961,65792,65793,4153,4241],Ff=function(M,C){for(var N,S=function(M,C){var S=V(M),E=Ar(S,C),N=E[0],$=E[1],se=E[2],xe=S.length,ge=0,Xe=0;return{next:function(){if(Xe>=xe)return{done:!0,value:null};for(var tt=Ei;Xe0)if(fs.SUPPORT_RANGE_BOUNDS){var ge=kA(E,se,xe.length).getClientRects();if(ge.length>1){var Xe=If(xe),tt=0;Xe.forEach(function(At){$.push(new Tf(At,U.fromDOMRectList(M,kA(E,tt+se,At.length).getClientRects()))),tt+=At.length})}else $.push(new Tf(xe,U.fromDOMRectList(M,ge)))}else{var mt=E.splitText(xe.length);$.push(new Tf(xe,BA(M,E))),E=mt}else fs.SUPPORT_RANGE_BOUNDS||(E=E.splitText(xe.length));se+=xe.length}),$}(C,this.text,E,S)}}(),ih=function(M,C){switch(C){case 1:return M.toLowerCase();case 3:return M.replace(ey,ul);case 2:return M.toUpperCase();default:return M}},ey=/(^|\s|:|-|\(|\))([a-z])/g,ul=function(M,C,S){return M.length>0?C+S.toUpperCase():M},PA=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N.src=E.currentSrc||E.src,N.intrinsicWidth=E.naturalWidth,N.intrinsicHeight=E.naturalHeight,N.context.cache.addImage(N.src),N}return v(C,M),C}(Ma),ty=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N.canvas=E,N.intrinsicWidth=E.width,N.intrinsicHeight=E.height,N}return v(C,M),C}(Ma),qn=function(M){function C(S,E){var N=M.call(this,S,E)||this,$=new XMLSerializer,se=L(S,E);return E.setAttribute("width",se.width+"px"),E.setAttribute("height",se.height+"px"),N.svg="data:image/svg+xml,"+encodeURIComponent($.serializeToString(E)),N.intrinsicWidth=E.width.baseVal.value,N.intrinsicHeight=E.height.baseVal.value,N.context.cache.addImage(N.svg),N}return v(C,M),C}(Ma),ad=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N.value=E.value,N}return v(C,M),C}(Ma),kr=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N.start=E.start,N.reversed="boolean"==typeof E.reversed&&!0===E.reversed,N}return v(C,M),C}(Ma),ny=[{type:15,flags:0,unit:"px",number:3}],iy=[{type:16,flags:0,number:50}],OA="checkbox",Df="radio",rh="password",hl=707406591,qd=function(M){function C(S,E){var N=M.call(this,S,E)||this;switch(N.type=E.type.toLowerCase(),N.checked=E.checked,N.value=function(M){var C=M.type===rh?new Array(M.value.length+1).join("\u2022"):M.value;return 0===C.length?M.placeholder||"":C}(E),(N.type===OA||N.type===Df)&&(N.styles.backgroundColor=3739148031,N.styles.borderTopColor=N.styles.borderRightColor=N.styles.borderBottomColor=N.styles.borderLeftColor=2779096575,N.styles.borderTopWidth=N.styles.borderRightWidth=N.styles.borderBottomWidth=N.styles.borderLeftWidth=1,N.styles.borderTopStyle=N.styles.borderRightStyle=N.styles.borderBottomStyle=N.styles.borderLeftStyle=1,N.styles.backgroundClip=[0],N.styles.backgroundOrigin=[0],N.bounds=function(M){return M.width>M.height?new U(M.left+(M.width-M.height)/2,M.top,M.height,M.height):M.width0)S.textNodes.push(new RA(M,N,S.styles));else if(ld(N))if(zA(N)&&N.assignedNodes)N.assignedNodes().forEach(function(xe){return Wd(M,xe,S,E)});else{var se=Bf(M,N);se.styles.isVisible()&&(kf(N,se,E)?se.flags|=4:LA(se.styles)&&(se.flags|=2),-1!==oy.indexOf(N.tagName)&&(se.flags|=8),S.elements.push(se),N.shadowRoot?Wd(M,N.shadowRoot,se,E):!dd(N)&&!Pf(N)&&!QA(N)&&Wd(M,N,se,E))}},Bf=function(M,C){return UA(C)?new PA(M,C):Of(C)?new ty(M,C):Pf(C)?new qn(M,C):rC(C)?new ad(M,C):ly(C)?new kr(M,C):oC(C)?new qd(M,C):QA(C)?new NA(M,C):dd(C)?new bn(M,C):Xd(C)?new Vn(M,C):new Ma(M,C)},sy=function(M,C){var S=Bf(M,C);return S.flags|=4,Wd(M,C,S,S),S},kf=function(M,C,S){return C.styles.isPositionedWithZIndex()||C.styles.opacity<1||C.styles.isTransformed()||Ul(M)&&S.styles.isTransparent()},LA=function(M){return M.isPositioned()||M.isFloating()},ay=function(M){return M.nodeType===Node.TEXT_NODE},ld=function(M){return M.nodeType===Node.ELEMENT_NODE},Rf=function(M){return ld(M)&&typeof M.style<"u"&&!Mc(M)},Mc=function(M){return"object"==typeof M.className},rC=function(M){return"LI"===M.tagName},ly=function(M){return"OL"===M.tagName},oC=function(M){return"INPUT"===M.tagName},Pf=function(M){return"svg"===M.tagName},Ul=function(M){return"BODY"===M.tagName},Of=function(M){return"CANVAS"===M.tagName},cd=function(M){return"VIDEO"===M.tagName},UA=function(M){return"IMG"===M.tagName},Xd=function(M){return"IFRAME"===M.tagName},VA=function(M){return"STYLE"===M.tagName},dd=function(M){return"TEXTAREA"===M.tagName},QA=function(M){return"SELECT"===M.tagName},zA=function(M){return"SLOT"===M.tagName},GA=function(M){return M.tagName.indexOf("-")>0},jA=function(){function M(){this.counters={}}return M.prototype.getCounterValue=function(C){var S=this.counters[C];return S&&S.length?S[S.length-1]:1},M.prototype.getCounterValues=function(C){return this.counters[C]||[]},M.prototype.pop=function(C){var S=this;C.forEach(function(E){return S.counters[E].pop()})},M.prototype.parse=function(C){var S=this,E=C.counterIncrement,N=C.counterReset,$=!0;null!==E&&E.forEach(function(xe){var ge=S.counters[xe.counter];ge&&0!==xe.increment&&($=!1,ge.length||ge.push(1),ge[Math.max(0,ge.length-1)]+=xe.increment)});var se=[];return $&&N.forEach(function(xe){var ge=S.counters[xe.counter];se.push(xe.counter),ge||(ge=S.counters[xe.counter]=[]),ge.push(xe.reset)}),se},M}(),Ha={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]},t_={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u0554","\u0553","\u0552","\u0551","\u0550","\u054f","\u054e","\u054d","\u054c","\u054b","\u054a","\u0549","\u0548","\u0547","\u0546","\u0545","\u0544","\u0543","\u0542","\u0541","\u0540","\u053f","\u053e","\u053d","\u053c","\u053b","\u053a","\u0539","\u0538","\u0537","\u0536","\u0535","\u0534","\u0533","\u0532","\u0531"]},Nf={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:["\u05d9\u05f3","\u05d8\u05f3","\u05d7\u05f3","\u05d6\u05f3","\u05d5\u05f3","\u05d4\u05f3","\u05d3\u05f3","\u05d2\u05f3","\u05d1\u05f3","\u05d0\u05f3","\u05ea","\u05e9","\u05e8","\u05e7","\u05e6","\u05e4","\u05e2","\u05e1","\u05e0","\u05de","\u05dc","\u05db","\u05d9\u05d8","\u05d9\u05d7","\u05d9\u05d6","\u05d8\u05d6","\u05d8\u05d5","\u05d9","\u05d8","\u05d7","\u05d6","\u05d5","\u05d4","\u05d3","\u05d2","\u05d1","\u05d0"]},Kd={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u10f5","\u10f0","\u10ef","\u10f4","\u10ee","\u10ed","\u10ec","\u10eb","\u10ea","\u10e9","\u10e8","\u10e7","\u10e6","\u10e5","\u10e4","\u10f3","\u10e2","\u10e1","\u10e0","\u10df","\u10de","\u10dd","\u10f2","\u10dc","\u10db","\u10da","\u10d9","\u10d8","\u10d7","\u10f1","\u10d6","\u10d5","\u10d4","\u10d3","\u10d2","\u10d1","\u10d0"]},Ec=function(M,C,S,E,N,$){return MS?Sc(M,N,$.length>0):E.integers.reduce(function(se,xe,ge){for(;M>=xe;)M-=xe,se+=E.values[ge];return se},"")+$},ud=function(M,C,S,E){var N="";do{S||M--,N=E(M)+N,M/=C}while(M*C>=C);return N},_o=function(M,C,S,E,N){var $=S-C+1;return(M<0?"-":"")+(ud(Math.abs(M),$,E,function(se){return X(Math.floor(se%$)+C)})+N)},Ea=function(M,C,S){void 0===S&&(S=". ");var E=C.length;return ud(Math.abs(M),E,!1,function(N){return C[Math.floor(N%E)]})+S},fl=function(M,C,S,E,N,$){if(M<-9999||M>9999)return Sc(M,4,N.length>0);var se=Math.abs(M),xe=N;if(0===se)return C[0]+xe;for(var ge=0;se>0&&ge<=4;ge++){var Xe=se%10;0===Xe&&wo($,1)&&""!==xe?xe=C[Xe]+xe:Xe>1||1===Xe&&0===ge||1===Xe&&1===ge&&wo($,2)||1===Xe&&1===ge&&wo($,4)&&M>100||1===Xe&&ge>1&&wo($,8)?xe=C[Xe]+(ge>0?S[ge-1]:"")+xe:1===Xe&&ge>0&&(xe=S[ge-1]+xe),se=Math.floor(se/10)}return(M<0?E:"")+xe},$A="\ub9c8\uc774\ub108\uc2a4",Sc=function(M,C,S){var E=S?". ":"",N=S?"\u3001":"",$=S?", ":"",se=S?" ":"";switch(C){case 0:return"\u2022"+se;case 1:return"\u25e6"+se;case 2:return"\u25fe"+se;case 5:var xe=_o(M,48,57,!0,E);return xe.length<4?"0"+xe:xe;case 4:return Ea(M,"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d",N);case 6:return Ec(M,1,3999,Ha,3,E).toLowerCase();case 7:return Ec(M,1,3999,Ha,3,E);case 8:return _o(M,945,969,!1,E);case 9:return _o(M,97,122,!1,E);case 10:return _o(M,65,90,!1,E);case 11:return _o(M,1632,1641,!0,E);case 12:case 49:return Ec(M,1,9999,t_,3,E);case 35:return Ec(M,1,9999,t_,3,E).toLowerCase();case 13:return _o(M,2534,2543,!0,E);case 14:case 30:return _o(M,6112,6121,!0,E);case 15:return Ea(M,"\u5b50\u4e11\u5bc5\u536f\u8fb0\u5df3\u5348\u672a\u7533\u9149\u620c\u4ea5",N);case 16:return Ea(M,"\u7532\u4e59\u4e19\u4e01\u620a\u5df1\u5e9a\u8f9b\u58ec\u7678",N);case 17:case 48:return fl(M,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u842c","\u8ca0",N,14);case 47:return fl(M,"\u96f6\u58f9\u8cb3\u53c3\u8086\u4f0d\u9678\u67d2\u634c\u7396","\u62fe\u4f70\u4edf\u842c","\u8ca0",N,15);case 42:return fl(M,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u842c","\u8d1f",N,14);case 41:return fl(M,"\u96f6\u58f9\u8d30\u53c1\u8086\u4f0d\u9646\u67d2\u634c\u7396","\u62fe\u4f70\u4edf\u842c","\u8d1f",N,15);case 26:return fl(M,"\u3007\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u4e07","\u30de\u30a4\u30ca\u30b9",N,0);case 25:return fl(M,"\u96f6\u58f1\u5f10\u53c2\u56db\u4f0d\u516d\u4e03\u516b\u4e5d","\u62fe\u767e\u5343\u4e07","\u30de\u30a4\u30ca\u30b9",N,7);case 31:return fl(M,"\uc601\uc77c\uc774\uc0bc\uc0ac\uc624\uc721\uce60\ud314\uad6c","\uc2ed\ubc31\ucc9c\ub9cc",$A,$,7);case 33:return fl(M,"\u96f6\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u5341\u767e\u5343\u842c",$A,$,0);case 32:return fl(M,"\u96f6\u58f9\u8cb3\u53c3\u56db\u4e94\u516d\u4e03\u516b\u4e5d","\u62fe\u767e\u5343",$A,$,7);case 18:return _o(M,2406,2415,!0,E);case 20:return Ec(M,1,19999,Kd,3,E);case 21:return _o(M,2790,2799,!0,E);case 22:return _o(M,2662,2671,!0,E);case 22:return Ec(M,1,10999,Nf,3,E);case 23:return Ea(M,"\u3042\u3044\u3046\u3048\u304a\u304b\u304d\u304f\u3051\u3053\u3055\u3057\u3059\u305b\u305d\u305f\u3061\u3064\u3066\u3068\u306a\u306b\u306c\u306d\u306e\u306f\u3072\u3075\u3078\u307b\u307e\u307f\u3080\u3081\u3082\u3084\u3086\u3088\u3089\u308a\u308b\u308c\u308d\u308f\u3090\u3091\u3092\u3093");case 24:return Ea(M,"\u3044\u308d\u306f\u306b\u307b\u3078\u3068\u3061\u308a\u306c\u308b\u3092\u308f\u304b\u3088\u305f\u308c\u305d\u3064\u306d\u306a\u3089\u3080\u3046\u3090\u306e\u304a\u304f\u3084\u307e\u3051\u3075\u3053\u3048\u3066\u3042\u3055\u304d\u3086\u3081\u307f\u3057\u3091\u3072\u3082\u305b\u3059");case 27:return _o(M,3302,3311,!0,E);case 28:return Ea(M,"\u30a2\u30a4\u30a6\u30a8\u30aa\u30ab\u30ad\u30af\u30b1\u30b3\u30b5\u30b7\u30b9\u30bb\u30bd\u30bf\u30c1\u30c4\u30c6\u30c8\u30ca\u30cb\u30cc\u30cd\u30ce\u30cf\u30d2\u30d5\u30d8\u30db\u30de\u30df\u30e0\u30e1\u30e2\u30e4\u30e6\u30e8\u30e9\u30ea\u30eb\u30ec\u30ed\u30ef\u30f0\u30f1\u30f2\u30f3",N);case 29:return Ea(M,"\u30a4\u30ed\u30cf\u30cb\u30db\u30d8\u30c8\u30c1\u30ea\u30cc\u30eb\u30f2\u30ef\u30ab\u30e8\u30bf\u30ec\u30bd\u30c4\u30cd\u30ca\u30e9\u30e0\u30a6\u30f0\u30ce\u30aa\u30af\u30e4\u30de\u30b1\u30d5\u30b3\u30a8\u30c6\u30a2\u30b5\u30ad\u30e6\u30e1\u30df\u30b7\u30f1\u30d2\u30e2\u30bb\u30b9",N);case 34:return _o(M,3792,3801,!0,E);case 37:return _o(M,6160,6169,!0,E);case 38:return _o(M,4160,4169,!0,E);case 39:return _o(M,2918,2927,!0,E);case 40:return _o(M,1776,1785,!0,E);case 43:return _o(M,3046,3055,!0,E);case 44:return _o(M,3174,3183,!0,E);case 45:return _o(M,3664,3673,!0,E);case 46:return _o(M,3872,3881,!0,E);default:return _o(M,48,57,!0,E)}},Zd="data-html2canvas-ignore",fd=function(){function M(C,S,E){if(this.context=C,this.options=E,this.scrolledElements=[],this.referenceElement=S,this.counters=new jA,this.quoteDepth=0,!S.ownerDocument)throw new Error("Cloned element does not have an owner document");this.documentElement=this.cloneNode(S.ownerDocument.documentElement,!1)}return M.prototype.toIFrame=function(C,S){var E=this,N=sC(C,S);if(!N.contentWindow)return Promise.reject("Unable to find iframe window");var $=C.defaultView.pageXOffset,se=C.defaultView.pageYOffset,xe=N.contentWindow,ge=xe.document,Xe=aC(N).then(function(){return o(E,void 0,void 0,function(){var tt,mt;return y(this,function(At){switch(At.label){case 0:return this.scrolledElements.forEach(qA),xe&&(xe.scrollTo(S.left,S.top),/(iPad|iPhone|iPod)/g.test(navigator.userAgent)&&(xe.scrollY!==S.top||xe.scrollX!==S.left)&&(this.context.logger.warn("Unable to restore scroll position for cloned document"),this.context.windowBounds=this.context.windowBounds.add(xe.scrollX-S.left,xe.scrollY-S.top,0,0))),tt=this.options.onclone,typeof(mt=this.clonedReferenceElement)>"u"?[2,Promise.reject("Error finding the "+this.referenceElement.nodeName+" in the cloned document")]:ge.fonts&&ge.fonts.ready?[4,ge.fonts.ready]:[3,2];case 1:At.sent(),At.label=2;case 2:return/(AppleWebKit)/g.test(navigator.userAgent)?[4,Yt(ge)]:[3,4];case 3:At.sent(),At.label=4;case 4:return"function"==typeof tt?[2,Promise.resolve().then(function(){return tt(ge,mt)}).then(function(){return N})]:[2,N]}})})});return ge.open(),ge.write(hy(document.doctype)+""),n_(this.referenceElement.ownerDocument,$,se),ge.replaceChild(ge.adoptNode(this.documentElement),ge.documentElement),ge.close(),Xe},M.prototype.createElementClone=function(C){if(xf(C,2),Of(C))return this.createCanvasClone(C);if(cd(C))return this.createVideoClone(C);if(VA(C))return this.createStyleClone(C);var S=C.cloneNode(!1);return UA(S)&&(UA(C)&&C.currentSrc&&C.currentSrc!==C.src&&(S.src=C.currentSrc,S.srcset=""),"lazy"===S.loading&&(S.loading="eager")),GA(S)?this.createCustomElementClone(S):S},M.prototype.createCustomElementClone=function(C){var S=document.createElement("html2canvascustomelement");return pd(C.style,S),S},M.prototype.createStyleClone=function(C){try{var S=C.sheet;if(S&&S.cssRules){var E=[].slice.call(S.cssRules,0).reduce(function($,se){return se&&"string"==typeof se.cssText?$+se.cssText:$},""),N=C.cloneNode(!1);return N.textContent=E,N}}catch($){if(this.context.logger.error("Unable to access cssRules property",$),"SecurityError"!==$.name)throw $}return C.cloneNode(!1)},M.prototype.createCanvasClone=function(C){var S;if(this.options.inlineImages&&C.ownerDocument){var E=C.ownerDocument.createElement("img");try{return E.src=C.toDataURL(),E}catch{this.context.logger.info("Unable to inline canvas contents, canvas is tainted",C)}}var N=C.cloneNode(!1);try{N.width=C.width,N.height=C.height;var $=C.getContext("2d"),se=N.getContext("2d");if(se)if(!this.options.allowTaint&&$)se.putImageData($.getImageData(0,0,C.width,C.height),0,0);else{var xe=null!==(S=C.getContext("webgl2"))&&void 0!==S?S:C.getContext("webgl");if(xe){var ge=xe.getContextAttributes();!1===ge?.preserveDrawingBuffer&&this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false",C)}se.drawImage(C,0,0)}return N}catch{this.context.logger.info("Unable to clone canvas as it is tainted",C)}return N},M.prototype.createVideoClone=function(C){var S=C.ownerDocument.createElement("canvas");S.width=C.offsetWidth,S.height=C.offsetHeight;var E=S.getContext("2d");try{return E&&(E.drawImage(C,0,0,S.width,S.height),this.options.allowTaint||E.getImageData(0,0,S.width,S.height)),S}catch{this.context.logger.info("Unable to clone video as it is tainted",C)}var N=C.ownerDocument.createElement("canvas");return N.width=C.offsetWidth,N.height=C.offsetHeight,N},M.prototype.appendChildNode=function(C,S,E){(!ld(S)||!function(M){return"SCRIPT"===M.tagName}(S)&&!S.hasAttribute(Zd)&&("function"!=typeof this.options.ignoreElements||!this.options.ignoreElements(S)))&&(!this.options.copyStyles||!ld(S)||!VA(S))&&C.appendChild(this.cloneNode(S,E))},M.prototype.cloneChildNodes=function(C,S,E){for(var N=this,$=C.shadowRoot?C.shadowRoot.firstChild:C.firstChild;$;$=$.nextSibling)if(ld($)&&zA($)&&"function"==typeof $.assignedNodes){var se=$.assignedNodes();se.length&&se.forEach(function(xe){return N.appendChildNode(S,xe,E)})}else this.appendChildNode(S,$,E)},M.prototype.cloneNode=function(C,S){if(ay(C))return document.createTextNode(C.data);if(!C.ownerDocument)return C.cloneNode(!1);var E=C.ownerDocument.defaultView;if(E&&ld(C)&&(Rf(C)||Mc(C))){var N=this.createElementClone(C);N.style.transitionProperty="none";var $=E.getComputedStyle(C),se=E.getComputedStyle(C,":before"),xe=E.getComputedStyle(C,":after");this.referenceElement===C&&Rf(N)&&(this.clonedReferenceElement=N),Ul(N)&&r_(N);var ge=this.counters.parse(new mi(this.context,$)),Xe=this.resolvePseudoContent(C,N,se,Vi.BEFORE);GA(C)&&(S=!0),cd(C)||this.cloneChildNodes(C,N,S),Xe&&N.insertBefore(Xe,N.firstChild);var tt=this.resolvePseudoContent(C,N,xe,Vi.AFTER);return tt&&N.appendChild(tt),this.counters.pop(ge),($&&(this.options.copyStyles||Mc(C))&&!Xd(C)||S)&&pd($,N),(0!==C.scrollTop||0!==C.scrollLeft)&&this.scrolledElements.push([N,C.scrollLeft,C.scrollTop]),(dd(C)||QA(C))&&(dd(N)||QA(N))&&(N.value=C.value),N}return C.cloneNode(!1)},M.prototype.resolvePseudoContent=function(C,S,E,N){var $=this;if(E){var se=E.content,xe=S.ownerDocument;if(xe&&se&&"none"!==se&&"-moz-alt-content"!==se&&"none"!==E.display){this.counters.parse(new mi(this.context,E));var ge=new qr(this.context,E),Xe=xe.createElement("html2canvaspseudoelement");pd(E,Xe),ge.content.forEach(function(mt){if(0===mt.type)Xe.appendChild(xe.createTextNode(mt.value));else if(22===mt.type){var At=xe.createElement("img");At.src=mt.value,At.style.opacity="1",Xe.appendChild(At)}else if(18===mt.type){if("attr"===mt.name){var wn=mt.values.filter($r);wn.length&&Xe.appendChild(xe.createTextNode(C.getAttribute(wn[0].value)||""))}else if("counter"===mt.name){var An=mt.values.filter(Yu),gi=An[1];if((Tn=An[0])&&$r(Tn)){var jn=$.counters.getCounterValue(Tn.value),ii=gi&&$r(gi)?cl.parse($.context,gi.value):3;Xe.appendChild(xe.createTextNode(Sc(jn,ii,!1)))}}else if("counters"===mt.name){var Tn,Fr=mt.values.filter(Yu),fi=Fr[1];if(gi=Fr[2],(Tn=Fr[0])&&$r(Tn)){var Mi=$.counters.getCounterValues(Tn.value),Hn=gi&&$r(gi)?cl.parse($.context,gi.value):3,gr=fi&&0===fi.type?fi.value:"",yr=Mi.map(function(qs){return Sc(qs,Hn,!1)}).join(gr);Xe.appendChild(xe.createTextNode(yr))}}}else if(20===mt.type)switch(mt.value){case"open-quote":Xe.appendChild(xe.createTextNode(Y2(ge.quotes,$.quoteDepth++,!0)));break;case"close-quote":Xe.appendChild(xe.createTextNode(Y2(ge.quotes,--$.quoteDepth,!1)));break;default:Xe.appendChild(xe.createTextNode(mt.value))}}),Xe.className=i_+" "+XA;var tt=N===Vi.BEFORE?" "+i_:" "+XA;return Mc(S)?S.className.baseValue+=tt:S.className+=tt,Xe}}},M.destroy=function(C){return!!C.parentNode&&(C.parentNode.removeChild(C),!0)},M}(),Vi=function(M){return M[M.BEFORE=0]="BEFORE",M[M.AFTER=1]="AFTER",M}(Vi||{}),sC=function(M,C){var S=M.createElement("iframe");return S.className="html2canvas-container",S.style.visibility="hidden",S.style.position="fixed",S.style.left="-10000px",S.style.top="0px",S.style.border="0",S.width=C.width.toString(),S.height=C.height.toString(),S.scrolling="no",S.setAttribute(Zd,"true"),M.body.appendChild(S),S},dy=function(M){return new Promise(function(C){M.complete?C():M.src?(M.onload=C,M.onerror=C):C()})},Yt=function(M){return Promise.all([].slice.call(M.images,0).map(dy))},aC=function(M){return new Promise(function(C,S){var E=M.contentWindow;if(!E)return S("No window assigned for iframe");var N=E.document;E.onload=M.onload=function(){E.onload=M.onload=null;var $=setInterval(function(){N.body.childNodes.length>0&&"complete"===N.readyState&&(clearInterval($),C(M))},50)}})},uy=["all","d","content"],pd=function(M,C){for(var S=M.length-1;S>=0;S--){var E=M.item(S);-1===uy.indexOf(E)&&C.style.setProperty(E,M.getPropertyValue(E))}return C},hy=function(M){var C="";return M&&(C+=""),C},n_=function(M,C,S){M&&M.defaultView&&(C!==M.defaultView.pageXOffset||S!==M.defaultView.pageYOffset)&&M.defaultView.scrollTo(C,S)},qA=function(M){var C=M[0],E=M[2];C.scrollLeft=M[1],C.scrollTop=E},i_="___html2canvas___pseudoelement_before",XA="___html2canvas___pseudoelement_after",py='{\n content: "" !important;\n display: none !important;\n}',r_=function(M){o_(M,"."+i_+":before"+py+"\n ."+XA+":after"+py)},o_=function(M,C){var S=M.ownerDocument;if(S){var E=S.createElement("style");E.textContent=C,M.appendChild(E)}},s_=function(){function M(){}return M.getOrigin=function(C){var S=M._link;return S?(S.href=C,S.href=S.href,S.protocol+S.hostname+S.port):"about:blank"},M.isSameOrigin=function(C){return M.getOrigin(C)===M._origin},M.setContext=function(C){M._link=C.document.createElement("a"),M._origin=M.getOrigin(C.location.href)},M._origin="about:blank",M}(),lC=function(){function M(C,S){this.context=C,this._options=S,this._cache={}}return M.prototype.addImage=function(C){var S=Promise.resolve();return this.has(C)||(ah(C)||KA(C))&&(this._cache[C]=this.loadImage(C)).catch(function(){}),S},M.prototype.match=function(C){return this._cache[C]},M.prototype.loadImage=function(C){return o(this,void 0,void 0,function(){var S,E,N,$,se=this;return y(this,function(xe){switch(xe.label){case 0:return S=s_.isSameOrigin(C),E=!ps(C)&&!0===this._options.useCORS&&fs.SUPPORT_CORS_IMAGES&&!S,N=!ps(C)&&!S&&!ah(C)&&"string"==typeof this._options.proxy&&fs.SUPPORT_CORS_XHR&&!E,S||!1!==this._options.allowTaint||ps(C)||ah(C)||N||E?($=C,N?[4,this.proxy($)]:[3,2]):[2];case 1:$=xe.sent(),xe.label=2;case 2:return this.context.logger.debug("Added image "+C.substring(0,256)),[4,new Promise(function(ge,Xe){var tt=new Image;tt.onload=function(){return ge(tt)},tt.onerror=Xe,(o4($)||E)&&(tt.crossOrigin="anonymous"),tt.src=$,!0===tt.complete&&setTimeout(function(){return ge(tt)},500),se._options.imageTimeout>0&&setTimeout(function(){return Xe("Timed out ("+se._options.imageTimeout+"ms) loading image")},se._options.imageTimeout)})];case 3:return[2,xe.sent()]}})})},M.prototype.has=function(C){return typeof this._cache[C]<"u"},M.prototype.keys=function(){return Promise.resolve(Object.keys(this._cache))},M.prototype.proxy=function(C){var S=this,E=this._options.proxy;if(!E)throw new Error("No proxy defined");var N=C.substring(0,256);return new Promise(function($,se){var xe=fs.SUPPORT_RESPONSE_TYPE?"blob":"text",ge=new XMLHttpRequest;ge.onload=function(){if(200===ge.status)if("text"===xe)$(ge.response);else{var mt=new FileReader;mt.addEventListener("load",function(){return $(mt.result)},!1),mt.addEventListener("error",function(At){return se(At)},!1),mt.readAsDataURL(ge.response)}else se("Failed to proxy resource "+N+" with status code "+ge.status)},ge.onerror=se;var Xe=E.indexOf("?")>-1?"&":"?";if(ge.open("GET",""+E+Xe+"url="+encodeURIComponent(C)+"&responseType="+xe),"text"!==xe&&ge instanceof XMLHttpRequest&&(ge.responseType=xe),S._options.imageTimeout){var tt=S._options.imageTimeout;ge.timeout=tt,ge.ontimeout=function(){return se("Timed out ("+tt+"ms) proxying "+N)}}ge.send()})},M}(),Ay=/^data:image\/svg\+xml/i,r4=/^data:image\/.*;base64,/i,my=/^data:image\/.*/i,KA=function(M){return fs.SUPPORT_SVG_DRAWING||!sn(M)},ps=function(M){return my.test(M)},o4=function(M){return r4.test(M)},ah=function(M){return"blob"===M.substr(0,4)},sn=function(M){return"svg"===M.substr(-3).toLowerCase()||Ay.test(M)},kn=function(){function M(C,S){this.type=0,this.x=C,this.y=S}return M.prototype.add=function(C,S){return new M(this.x+C,this.y+S)},M}(),lh=function(M,C,S){return new kn(M.x+(C.x-M.x)*S,M.y+(C.y-M.y)*S)},ch=function(){function M(C,S,E,N){this.type=1,this.start=C,this.startControl=S,this.endControl=E,this.end=N}return M.prototype.subdivide=function(C,S){var E=lh(this.start,this.startControl,C),N=lh(this.startControl,this.endControl,C),$=lh(this.endControl,this.end,C),se=lh(E,N,C),xe=lh(N,$,C),ge=lh(se,xe,C);return S?new M(this.start,E,se,ge):new M(ge,xe,$,this.end)},M.prototype.add=function(C,S){return new M(this.start.add(C,S),this.startControl.add(C,S),this.endControl.add(C,S),this.end.add(C,S))},M.prototype.reverse=function(){return new M(this.end,this.endControl,this.startControl,this.start)},M}(),Sa=function(M){return 1===M.type},dh=function(){return function M(C){var S=C.styles,E=C.bounds,N=pA(S.borderTopLeftRadius,E.width,E.height),$=N[0],se=N[1],xe=pA(S.borderTopRightRadius,E.width,E.height),ge=xe[0],Xe=xe[1],tt=pA(S.borderBottomRightRadius,E.width,E.height),mt=tt[0],At=tt[1],wn=pA(S.borderBottomLeftRadius,E.width,E.height),An=wn[0],Tn=wn[1],gi=[];gi.push(($+ge)/E.width),gi.push((An+mt)/E.width),gi.push((se+Tn)/E.height),gi.push((Xe+At)/E.height);var jn=Math.max.apply(Math,gi);jn>1&&($/=jn,se/=jn,ge/=jn,Xe/=jn,mt/=jn,At/=jn,An/=jn,Tn/=jn);var ii=E.width-ge,Fr=E.height-At,fi=E.width-mt,Mi=E.height-Tn,Hn=S.borderTopWidth,gr=S.borderRightWidth,yr=S.borderBottomWidth,Hi=S.borderLeftWidth,Qo=mo(S.paddingTop,C.bounds.width),qs=mo(S.paddingRight,C.bounds.width),Ws=mo(S.paddingBottom,C.bounds.width),zr=mo(S.paddingLeft,C.bounds.width);this.topLeftBorderDoubleOuterBox=$>0||se>0?Co(E.left+Hi/3,E.top+Hn/3,$-Hi/3,se-Hn/3,Wr.TOP_LEFT):new kn(E.left+Hi/3,E.top+Hn/3),this.topRightBorderDoubleOuterBox=$>0||se>0?Co(E.left+ii,E.top+Hn/3,ge-gr/3,Xe-Hn/3,Wr.TOP_RIGHT):new kn(E.left+E.width-gr/3,E.top+Hn/3),this.bottomRightBorderDoubleOuterBox=mt>0||At>0?Co(E.left+fi,E.top+Fr,mt-gr/3,At-yr/3,Wr.BOTTOM_RIGHT):new kn(E.left+E.width-gr/3,E.top+E.height-yr/3),this.bottomLeftBorderDoubleOuterBox=An>0||Tn>0?Co(E.left+Hi/3,E.top+Mi,An-Hi/3,Tn-yr/3,Wr.BOTTOM_LEFT):new kn(E.left+Hi/3,E.top+E.height-yr/3),this.topLeftBorderDoubleInnerBox=$>0||se>0?Co(E.left+2*Hi/3,E.top+2*Hn/3,$-2*Hi/3,se-2*Hn/3,Wr.TOP_LEFT):new kn(E.left+2*Hi/3,E.top+2*Hn/3),this.topRightBorderDoubleInnerBox=$>0||se>0?Co(E.left+ii,E.top+2*Hn/3,ge-2*gr/3,Xe-2*Hn/3,Wr.TOP_RIGHT):new kn(E.left+E.width-2*gr/3,E.top+2*Hn/3),this.bottomRightBorderDoubleInnerBox=mt>0||At>0?Co(E.left+fi,E.top+Fr,mt-2*gr/3,At-2*yr/3,Wr.BOTTOM_RIGHT):new kn(E.left+E.width-2*gr/3,E.top+E.height-2*yr/3),this.bottomLeftBorderDoubleInnerBox=An>0||Tn>0?Co(E.left+2*Hi/3,E.top+Mi,An-2*Hi/3,Tn-2*yr/3,Wr.BOTTOM_LEFT):new kn(E.left+2*Hi/3,E.top+E.height-2*yr/3),this.topLeftBorderStroke=$>0||se>0?Co(E.left+Hi/2,E.top+Hn/2,$-Hi/2,se-Hn/2,Wr.TOP_LEFT):new kn(E.left+Hi/2,E.top+Hn/2),this.topRightBorderStroke=$>0||se>0?Co(E.left+ii,E.top+Hn/2,ge-gr/2,Xe-Hn/2,Wr.TOP_RIGHT):new kn(E.left+E.width-gr/2,E.top+Hn/2),this.bottomRightBorderStroke=mt>0||At>0?Co(E.left+fi,E.top+Fr,mt-gr/2,At-yr/2,Wr.BOTTOM_RIGHT):new kn(E.left+E.width-gr/2,E.top+E.height-yr/2),this.bottomLeftBorderStroke=An>0||Tn>0?Co(E.left+Hi/2,E.top+Mi,An-Hi/2,Tn-yr/2,Wr.BOTTOM_LEFT):new kn(E.left+Hi/2,E.top+E.height-yr/2),this.topLeftBorderBox=$>0||se>0?Co(E.left,E.top,$,se,Wr.TOP_LEFT):new kn(E.left,E.top),this.topRightBorderBox=ge>0||Xe>0?Co(E.left+ii,E.top,ge,Xe,Wr.TOP_RIGHT):new kn(E.left+E.width,E.top),this.bottomRightBorderBox=mt>0||At>0?Co(E.left+fi,E.top+Fr,mt,At,Wr.BOTTOM_RIGHT):new kn(E.left+E.width,E.top+E.height),this.bottomLeftBorderBox=An>0||Tn>0?Co(E.left,E.top+Mi,An,Tn,Wr.BOTTOM_LEFT):new kn(E.left,E.top+E.height),this.topLeftPaddingBox=$>0||se>0?Co(E.left+Hi,E.top+Hn,Math.max(0,$-Hi),Math.max(0,se-Hn),Wr.TOP_LEFT):new kn(E.left+Hi,E.top+Hn),this.topRightPaddingBox=ge>0||Xe>0?Co(E.left+Math.min(ii,E.width-gr),E.top+Hn,ii>E.width+gr?0:Math.max(0,ge-gr),Math.max(0,Xe-Hn),Wr.TOP_RIGHT):new kn(E.left+E.width-gr,E.top+Hn),this.bottomRightPaddingBox=mt>0||At>0?Co(E.left+Math.min(fi,E.width-Hi),E.top+Math.min(Fr,E.height-yr),Math.max(0,mt-gr),Math.max(0,At-yr),Wr.BOTTOM_RIGHT):new kn(E.left+E.width-gr,E.top+E.height-yr),this.bottomLeftPaddingBox=An>0||Tn>0?Co(E.left+Hi,E.top+Math.min(Mi,E.height-yr),Math.max(0,An-Hi),Math.max(0,Tn-yr),Wr.BOTTOM_LEFT):new kn(E.left+Hi,E.top+E.height-yr),this.topLeftContentBox=$>0||se>0?Co(E.left+Hi+zr,E.top+Hn+Qo,Math.max(0,$-(Hi+zr)),Math.max(0,se-(Hn+Qo)),Wr.TOP_LEFT):new kn(E.left+Hi+zr,E.top+Hn+Qo),this.topRightContentBox=ge>0||Xe>0?Co(E.left+Math.min(ii,E.width+Hi+zr),E.top+Hn+Qo,ii>E.width+Hi+zr?0:ge-Hi+zr,Xe-(Hn+Qo),Wr.TOP_RIGHT):new kn(E.left+E.width-(gr+qs),E.top+Hn+Qo),this.bottomRightContentBox=mt>0||At>0?Co(E.left+Math.min(fi,E.width-(Hi+zr)),E.top+Math.min(Fr,E.height+Hn+Qo),Math.max(0,mt-(gr+qs)),At-(yr+Ws),Wr.BOTTOM_RIGHT):new kn(E.left+E.width-(gr+qs),E.top+E.height-(yr+Ws)),this.bottomLeftContentBox=An>0||Tn>0?Co(E.left+Hi+zr,E.top+Mi,Math.max(0,An-(Hi+zr)),Tn-(yr+Ws),Wr.BOTTOM_LEFT):new kn(E.left+Hi+zr,E.top+E.height-(yr+Ws))}}(),Wr=function(M){return M[M.TOP_LEFT=0]="TOP_LEFT",M[M.TOP_RIGHT=1]="TOP_RIGHT",M[M.BOTTOM_RIGHT=2]="BOTTOM_RIGHT",M[M.BOTTOM_LEFT=3]="BOTTOM_LEFT",M}(Wr||{}),Co=function(M,C,S,E,N){var $=(Math.sqrt(2)-1)/3*4,se=S*$,xe=E*$,ge=M+S,Xe=C+E;switch(N){case Wr.TOP_LEFT:return new ch(new kn(M,Xe),new kn(M,Xe-xe),new kn(ge-se,C),new kn(ge,C));case Wr.TOP_RIGHT:return new ch(new kn(M,C),new kn(M+se,C),new kn(ge,Xe-xe),new kn(ge,Xe));case Wr.BOTTOM_RIGHT:return new ch(new kn(ge,C),new kn(ge,C+xe),new kn(M+se,Xe),new kn(M,Xe));default:return new ch(new kn(ge,Xe),new kn(ge-se,Xe),new kn(M,C+xe),new kn(M,C))}},Ql=function(M){return[M.topLeftBorderBox,M.topRightBorderBox,M.bottomRightBorderBox,M.bottomLeftBorderBox]},YA=function(M){return[M.topLeftPaddingBox,M.topRightPaddingBox,M.bottomRightPaddingBox,M.bottomLeftPaddingBox]},zl=function(){return function M(C,S,E){this.offsetX=C,this.offsetY=S,this.matrix=E,this.type=0,this.target=6}}(),Ad=function(){return function M(C,S){this.path=C,this.target=S,this.type=1}}(),gy=function(){return function M(C){this.opacity=C,this.type=2,this.target=6}}(),cC=function(M){return 1===M.type},Vf=function(M,C){return M.length===C.length&&M.some(function(S,E){return S===C[E]})},io=function(){return function M(C){this.element=C,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}}(),by=function(){function M(C,S){if(this.container=C,this.parent=S,this.effects=[],this.curves=new dh(this.container),this.container.styles.opacity<1&&this.effects.push(new gy(this.container.styles.opacity)),null!==this.container.styles.transform&&this.effects.push(new zl(this.container.bounds.left+this.container.styles.transformOrigin[0].number,this.container.bounds.top+this.container.styles.transformOrigin[1].number,this.container.styles.transform)),0!==this.container.styles.overflowX){var se=Ql(this.curves),xe=YA(this.curves);Vf(se,xe)?this.effects.push(new Ad(se,6)):(this.effects.push(new Ad(se,2)),this.effects.push(new Ad(xe,4)))}}return M.prototype.getEffects=function(C){for(var S=-1===[2,3].indexOf(this.container.styles.position),E=this.parent,N=this.effects.slice(0);E;){var $=E.effects.filter(function(ge){return!cC(ge)});if(S||0!==E.container.styles.position||!E.parent){if(N.unshift.apply(N,$),S=-1===[2,3].indexOf(E.container.styles.position),0!==E.container.styles.overflowX){var se=Ql(E.curves),xe=YA(E.curves);Vf(se,xe)||N.unshift(new Ad(xe,6))}}else N.unshift.apply(N,$);E=E.parent}return N.filter(function(ge){return wo(ge.target,C)})},M}(),Hf=function(M,C,S,E){M.container.elements.forEach(function(N){var $=wo(N.flags,4),se=wo(N.flags,2),xe=new by(N,M);wo(N.styles.display,2048)&&E.push(xe);var ge=wo(N.flags,8)?[]:E;if($||se){var Xe=$||N.styles.isPositioned()?S:C,tt=new io(xe);if(N.styles.isPositioned()||N.styles.opacity<1||N.styles.isTransformed()){var mt=N.styles.zIndex.order;if(mt<0){var At=0;Xe.negativeZIndex.some(function(An,Tn){return mt>An.element.container.styles.zIndex.order?(At=Tn,!1):At>0}),Xe.negativeZIndex.splice(At,0,tt)}else if(mt>0){var wn=0;Xe.positiveZIndex.some(function(An,Tn){return mt>=An.element.container.styles.zIndex.order?(wn=Tn+1,!1):wn>0}),Xe.positiveZIndex.splice(wn,0,tt)}else Xe.zeroOrAutoZIndexOrTransformedOrOpacity.push(tt)}else N.styles.isFloating()?Xe.nonPositionedFloats.push(tt):Xe.nonPositionedInlineLevel.push(tt);Hf(xe,tt,$?tt:S,ge)}else N.styles.isInlineLevel()?C.inlineLevel.push(xe):C.nonInlineLevel.push(xe),Hf(xe,C,S,ge);wo(N.flags,8)&&vy(N,ge)})},vy=function(M,C){for(var S=M instanceof kr?M.start:1,E=M instanceof kr&&M.reversed,N=0;N"u"?M[0]:S},s4=function(M,C,S,E,N){var $=C[0],se=C[1],xe=S[0],ge=S[1];switch(M){case 2:return[new kn(Math.round(E.left),Math.round(E.top+se)),new kn(Math.round(E.left+E.width),Math.round(E.top+se)),new kn(Math.round(E.left+E.width),Math.round(ge+E.top+se)),new kn(Math.round(E.left),Math.round(ge+E.top+se))];case 3:return[new kn(Math.round(E.left+$),Math.round(E.top)),new kn(Math.round(E.left+$+xe),Math.round(E.top)),new kn(Math.round(E.left+$+xe),Math.round(E.height+E.top)),new kn(Math.round(E.left+$),Math.round(E.height+E.top))];case 1:return[new kn(Math.round(E.left+$),Math.round(E.top+se)),new kn(Math.round(E.left+$+xe),Math.round(E.top+se)),new kn(Math.round(E.left+$+xe),Math.round(E.top+se+ge)),new kn(Math.round(E.left+$),Math.round(E.top+se+ge))];default:return[new kn(Math.round(N.left),Math.round(N.top)),new kn(Math.round(N.left+N.width),Math.round(N.top)),new kn(Math.round(N.left+N.width),Math.round(N.height+N.top)),new kn(Math.round(N.left),Math.round(N.height+N.top))]}},yn="Hidden Text",Di=function(){function M(C){this._data={},this._document=C}return M.prototype.parseMetrics=function(C,S){var E=this._document.createElement("div"),N=this._document.createElement("img"),$=this._document.createElement("span"),se=this._document.body;E.style.visibility="hidden",E.style.fontFamily=C,E.style.fontSize=S,E.style.margin="0",E.style.padding="0",E.style.whiteSpace="nowrap",se.appendChild(E),N.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",N.width=1,N.height=1,N.style.margin="0",N.style.padding="0",N.style.verticalAlign="baseline",$.style.fontFamily=C,$.style.fontSize=S,$.style.margin="0",$.style.padding="0",$.appendChild(this._document.createTextNode(yn)),E.appendChild($),E.appendChild(N);var xe=N.offsetTop-$.offsetTop+2;E.removeChild($),E.appendChild(this._document.createTextNode(yn)),E.style.lineHeight="normal",N.style.verticalAlign="super";var ge=N.offsetTop-E.offsetTop+2;return se.removeChild(E),{baseline:xe,middle:ge}},M.prototype.getMetrics=function(C,S){var E=C+" "+S;return typeof this._data[E]>"u"&&(this._data[E]=this.parseMetrics(C,S)),this._data[E]},M}(),Ic=function(){return function M(C,S){this.context=C,this.options=S}}(),md=function(M){function C(S,E){var N=M.call(this,S,E)||this;return N._activeEffects=[],N.canvas=E.canvas?E.canvas:document.createElement("canvas"),N.ctx=N.canvas.getContext("2d"),E.canvas||(N.canvas.width=Math.floor(E.width*E.scale),N.canvas.height=Math.floor(E.height*E.scale),N.canvas.style.width=E.width+"px",N.canvas.style.height=E.height+"px"),N.fontMetrics=new Di(document),N.ctx.scale(N.options.scale,N.options.scale),N.ctx.translate(-E.x,-E.y),N.ctx.textBaseline="bottom",N._activeEffects=[],N.context.logger.debug("Canvas renderer initialized ("+E.width+"x"+E.height+") with scale "+E.scale),N}return v(C,M),C.prototype.applyEffects=function(S){for(var E=this;this._activeEffects.length;)this.popEffect();S.forEach(function(N){return E.applyEffect(N)})},C.prototype.applyEffect=function(S){this.ctx.save(),function(M){return 2===M.type}(S)&&(this.ctx.globalAlpha=S.opacity),function(M){return 0===M.type}(S)&&(this.ctx.translate(S.offsetX,S.offsetY),this.ctx.transform(S.matrix[0],S.matrix[1],S.matrix[2],S.matrix[3],S.matrix[4],S.matrix[5]),this.ctx.translate(-S.offsetX,-S.offsetY)),cC(S)&&(this.path(S.path),this.ctx.clip()),this._activeEffects.push(S)},C.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},C.prototype.renderStack=function(S){return o(this,void 0,void 0,function(){return y(this,function(N){switch(N.label){case 0:return S.element.container.styles.isVisible()?[4,this.renderStackContent(S)]:[3,2];case 1:N.sent(),N.label=2;case 2:return[2]}})})},C.prototype.renderNode=function(S){return o(this,void 0,void 0,function(){return y(this,function(E){switch(E.label){case 0:return wo(S.container.flags,16),S.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(S)]:[3,3];case 1:return E.sent(),[4,this.renderNodeContent(S)];case 2:E.sent(),E.label=3;case 3:return[2]}})})},C.prototype.renderTextWithLetterSpacing=function(S,E,N){var $=this;0===E?this.ctx.fillText(S.text,S.bounds.left,S.bounds.top+N):If(S.text).reduce(function(xe,ge){return $.ctx.fillText(ge,xe,S.bounds.top+N),xe+$.ctx.measureText(ge).width},S.bounds.left)},C.prototype.createFontStyle=function(S){var E=S.fontVariant.filter(function(se){return"normal"===se||"small-caps"===se}).join(""),N=ts(S.fontFamily).join(", "),$=Ld(S.fontSize)?""+S.fontSize.number+S.fontSize.unit:S.fontSize.number+"px";return[[S.fontStyle,E,S.fontWeight,$,N].join(" "),N,$]},C.prototype.renderTextNode=function(S,E){return o(this,void 0,void 0,function(){var N,se,xe,ge,Xe,tt,mt,At=this;return y(this,function(wn){return N=this.createFontStyle(E),se=N[1],xe=N[2],this.ctx.font=N[0],this.ctx.direction=1===E.direction?"rtl":"ltr",this.ctx.textAlign="left",this.ctx.textBaseline="alphabetic",ge=this.fontMetrics.getMetrics(se,xe),Xe=ge.baseline,tt=ge.middle,mt=E.paintOrder,S.textBounds.forEach(function(An){mt.forEach(function(Tn){switch(Tn){case 0:At.ctx.fillStyle=us(E.color),At.renderTextWithLetterSpacing(An,E.letterSpacing,Xe);var gi=E.textShadow;gi.length&&An.text.trim().length&&(gi.slice(0).reverse().forEach(function(jn){At.ctx.shadowColor=us(jn.color),At.ctx.shadowOffsetX=jn.offsetX.number*At.options.scale,At.ctx.shadowOffsetY=jn.offsetY.number*At.options.scale,At.ctx.shadowBlur=jn.blur.number,At.renderTextWithLetterSpacing(An,E.letterSpacing,Xe)}),At.ctx.shadowColor="",At.ctx.shadowOffsetX=0,At.ctx.shadowOffsetY=0,At.ctx.shadowBlur=0),E.textDecorationLine.length&&(At.ctx.fillStyle=us(E.textDecorationColor||E.color),E.textDecorationLine.forEach(function(jn){switch(jn){case 1:At.ctx.fillRect(An.bounds.left,Math.round(An.bounds.top+Xe),An.bounds.width,1);break;case 2:At.ctx.fillRect(An.bounds.left,Math.round(An.bounds.top),An.bounds.width,1);break;case 3:At.ctx.fillRect(An.bounds.left,Math.ceil(An.bounds.top+tt),An.bounds.width,1)}}));break;case 1:E.webkitTextStrokeWidth&&An.text.trim().length&&(At.ctx.strokeStyle=us(E.webkitTextStrokeColor),At.ctx.lineWidth=E.webkitTextStrokeWidth,At.ctx.lineJoin=window.chrome?"miter":"round",At.ctx.strokeText(An.text,An.bounds.left,An.bounds.top+Xe)),At.ctx.strokeStyle="",At.ctx.lineWidth=0,At.ctx.lineJoin="miter"}})}),[2]})})},C.prototype.renderReplacedElement=function(S,E,N){if(N&&S.intrinsicWidth>0&&S.intrinsicHeight>0){var $=em(S),se=YA(E);this.path(se),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(N,0,0,S.intrinsicWidth,S.intrinsicHeight,$.left,$.top,$.width,$.height),this.ctx.restore()}},C.prototype.renderNodeContent=function(S){return o(this,void 0,void 0,function(){var E,N,$,se,xe,tt,mt,At,An,Tn,gi,jn,ii,Fr,fi,Mi;return y(this,function(Hn){switch(Hn.label){case 0:this.applyEffects(S.getEffects(4)),N=S.curves,$=(E=S.container).styles,se=0,xe=E.textNodes,Hn.label=1;case 1:return se0&&Bc>0&&(kc=$.ctx.createRadialGradient(qs+Mo,Ws+aa,0,qs+Mo,Ws+aa,Dc),Hd(tt.stops,2*Dc).forEach(function(zf){return kc.addColorStop(zf.stop,us(zf.color))}),$.path(Qo),$.ctx.fillStyle=kc,Dc!==Bc?(Jd=S.bounds.left+.5*S.bounds.width,bd=S.bounds.top+.5*S.bounds.height,Os=1/(eu=Bc/Dc),$.ctx.save(),$.ctx.translate(Jd,bd),$.ctx.transform(1,0,0,eu,0,0),$.ctx.translate(-Jd,-bd),$.ctx.fillRect(qs,Os*(Ws-bd)+bd,zr,Ms*Os),$.ctx.restore()):$.ctx.fill())):(An=tm(S,E,[null,null,null]),Qo=An[0],Mo=An[1],aa=An[2],Tn=Hx(tt.angle,zr=An[3],Ms=An[4]),gi=Tn[0],jn=Tn[1],ii=Tn[2],Fr=Tn[3],fi=Tn[4],(Mi=document.createElement("canvas")).width=zr,Mi.height=Ms,Hn=Mi.getContext("2d"),gr=Hn.createLinearGradient(jn,Fr,ii,fi),Hd(tt.stops,gi).forEach(function(zf){return gr.addColorStop(zf.stop,us(zf.color))}),Hn.fillStyle=gr,Hn.fillRect(0,0,zr,Ms),zr>0&&Ms>0&&(yr=$.ctx.createPattern(Mi,"repeat"),$.renderRepeat(Qo,yr,Mo,aa))),Rc.label=6;case 6:return E--,[2]}})},$=this,se=0,xe=S.styles.backgroundImage.slice(0).reverse(),Xe.label=1;case 1:return se0?2!==tt.style?[3,5]:[4,this.renderDashedDottedBorder(tt.color,tt.width,xe,S.curves,2)]:[3,11]:[3,13];case 4:return At.sent(),[3,11];case 5:return 3!==tt.style?[3,7]:[4,this.renderDashedDottedBorder(tt.color,tt.width,xe,S.curves,3)];case 6:return At.sent(),[3,11];case 7:return 4!==tt.style?[3,9]:[4,this.renderDoubleBorder(tt.color,tt.width,xe,S.curves)];case 8:return At.sent(),[3,11];case 9:return[4,this.renderSolidBorder(tt.color,xe,S.curves)];case 10:At.sent(),At.label=11;case 11:xe++,At.label=12;case 12:return ge++,[3,3];case 13:return[2]}})})},C.prototype.renderDashedDottedBorder=function(S,E,N,$,se){return o(this,void 0,void 0,function(){var xe,ge,Xe,tt,mt,At,wn,An,Tn,gi,jn,ii,Fr,fi,Mi,Hn;return y(this,function(gr){return this.ctx.save(),xe=function(M,C){switch(C){case 0:return JA(M.topLeftBorderStroke,M.topRightBorderStroke);case 1:return JA(M.topRightBorderStroke,M.bottomRightBorderStroke);case 2:return JA(M.bottomRightBorderStroke,M.bottomLeftBorderStroke);default:return JA(M.bottomLeftBorderStroke,M.topLeftBorderStroke)}}($,N),ge=uh($,N),2===se&&(this.path(ge),this.ctx.clip()),Sa(ge[0])?(Xe=ge[0].start.x,tt=ge[0].start.y):(Xe=ge[0].x,tt=ge[0].y),Sa(ge[1])?(mt=ge[1].end.x,At=ge[1].end.y):(mt=ge[1].x,At=ge[1].y),wn=0===N||2===N?Math.abs(Xe-mt):Math.abs(tt-At),this.ctx.beginPath(),this.formatPath(3===se?xe:ge.slice(0,2)),An=E<3?3*E:2*E,Tn=E<3?2*E:E,3===se&&(An=E,Tn=E),gi=!0,wn<=2*An?gi=!1:wn<=2*An+Tn?(An*=jn=wn/(2*An+Tn),Tn*=jn):(ii=Math.floor((wn+Tn)/(An+Tn)),Fr=(wn-ii*An)/(ii-1),Tn=(fi=(wn-(ii+1)*An)/ii)<=0||Math.abs(Tn-Fr){function Ee(Le){return Array.isArray(Le)?Le:[Le]}const y=/^\s+$/,Z=/(?:[^\\]|^)\\$/,U=/^\\!/,L=/^\\#/,Y=/\r?\n/g,V=/^\.*\/|^\.+$/;let z="node-ignore";typeof Symbol<"u"&&(z=Symbol.for("node-ignore"));const G=z,ne=/([0-z])-([0-z])/g,re=()=>!1,Be=[[/^\uFEFF/,()=>""],[/((?:\\\\)*?)(\\?\s+)$/,(Le,pt,wt)=>pt+(0===wt.indexOf("\\")?" ":"")],[/(\\+?)\s/g,(Le,pt)=>{const{length:wt}=pt;return pt.slice(0,wt-wt%2)+" "}],[/[\\$.|*+(){^]/g,Le=>`\\${Le}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(Le,pt,wt)=>pt+6pt+wt.replace(/\\\*/g,"[^\\/]*")],[/\\\\\\(?=[$.|*+(){^])/g,()=>"\\"],[/\\\\/g,()=>"\\"],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(Le,pt,wt,Nt,Rt)=>"\\"===pt?`\\[${wt}${(Le=>{const{length:pt}=Le;return Le.slice(0,pt-pt%2)})(Nt)}${Rt}`:"]"===Rt&&Nt.length%2==0?`[${(Le=>Le.replace(ne,(pt,wt,Nt)=>wt.charCodeAt(0)<=Nt.charCodeAt(0)?pt:""))(wt)}${Nt}]`:"[]"],[/(?:[^*])$/,Le=>/\/$/.test(Le)?`${Le}$`:`${Le}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(Le,pt)=>(pt?`${pt}[^/]+`:"[^/]*")+"(?=$|\\/$)"]],Ie=Object.create(null),Je=Le=>"string"==typeof Le;class $e{constructor(pt,wt,Nt,Rt){this.origin=pt,this.pattern=wt,this.negative=Nt,this.regex=Rt}}const st=(Le,pt)=>{throw new pt(Le)},We=(Le,pt,wt)=>Je(Le)?Le?!We.isNotRelative(Le)||wt(`path should be a \`path.relative()\`d string, but got "${pt}"`,RangeError):wt("path must not be empty",TypeError):wt(`path must be a string, but got \`${pt}\``,TypeError),ve=Le=>V.test(Le);We.isNotRelative=ve,We.convert=Le=>Le;class fe{constructor({ignorecase:pt=!0,ignoreCase:wt=pt,allowRelativePaths:Nt=!1}={}){((Le,pt)=>{Object.defineProperty(this,pt,{value:!0})})(0,G),this._rules=[],this._ignoreCase=wt,this._allowRelativePaths=Nt,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(pt){if(pt&&pt[G])return this._rules=this._rules.concat(pt._rules),void(this._added=!0);if((Le=pt)&&Je(Le)&&!y.test(Le)&&!Z.test(Le)&&0!==Le.indexOf("#")){const wt=((Le,pt)=>{const wt=Le;let Nt=!1;0===Le.indexOf("!")&&(Nt=!0,Le=Le.substr(1));const Rt=((Le,pt)=>{let wt=Ie[Le];return wt||(wt=Be.reduce((Nt,[Rt,fn])=>Nt.replace(Rt,fn.bind(Le)),Le),Ie[Le]=wt),pt?new RegExp(wt,"i"):new RegExp(wt)})(Le=Le.replace(U,"!").replace(L,"#"),pt);return new $e(wt,Le,Nt,Rt)})(pt,this._ignoreCase);this._added=!0,this._rules.push(wt)}var Le}add(pt){return this._added=!1,Ee(Je(pt)?(Le=pt,Le.split(Y)):pt).forEach(this._addPattern,this),this._added&&this._initCache(),this;var Le}addPattern(pt){return this.add(pt)}_testOne(pt,wt){let Nt=!1,Rt=!1;return this._rules.forEach(fn=>{const{negative:$n}=fn;Rt===$n&&Nt!==Rt||$n&&!Nt&&!Rt&&!wt||fn.regex.test(pt)&&(Nt=!$n,Rt=$n)}),{ignored:Nt,unignored:Rt}}_test(pt,wt,Nt,Rt){const fn=pt&&We.convert(pt);return We(fn,pt,this._allowRelativePaths?re:st),this._t(fn,wt,Nt,Rt)}_t(pt,wt,Nt,Rt){if(pt in wt)return wt[pt];if(Rt||(Rt=pt.split("/")),Rt.pop(),!Rt.length)return wt[pt]=this._testOne(pt,Nt);const fn=this._t(Rt.join("/")+"/",wt,Nt,Rt);return wt[pt]=fn.ignored?fn:this._testOne(pt,Nt)}ignores(pt){return this._test(pt,this._ignoreCache,!1).ignored}createFilter(){return pt=>!this.ignores(pt)}filter(pt){return Ee(pt).filter(this.createFilter())}test(pt){return this._test(pt,this._testCache,!0)}}const Qe=Le=>new fe(Le);if(Qe.isPathValid=Le=>We(Le&&We.convert(Le),Le,re),Qe.default=Qe,nt.exports=Qe,typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||"win32"===process.platform)){We.convert=wt=>/^\\\\\?\\/.test(wt)||/["<>|\u0000-\u001F]+/u.test(wt)?wt:wt.replace(/\\/g,"/");const pt=/^[a-z]:\//i;We.isNotRelative=wt=>pt.test(wt)||ve(wt)}},8749:nt=>{function Ee(j){return!!j.constructor&&"function"==typeof j.constructor.isBuffer&&j.constructor.isBuffer(j)}nt.exports=function(j){return null!=j&&(Ee(j)||function v(j){return"function"==typeof j.readFloatLE&&"function"==typeof j.slice&&Ee(j.slice(0,0))}(j)||!!j._isBuffer)}},4331:nt=>{"use strict";var Ee=nt.exports=function(o,y,Z){"function"==typeof y&&(Z=y,y={}),v(y,"function"==typeof(Z=y.cb||Z)?Z:Z.pre||function(){},Z.post||function(){},o,"",o)};function v(o,y,Z,U,L,Y,V,X,z,G){if(U&&"object"==typeof U&&!Array.isArray(U)){for(var Q in y(U,L,Y,V,X,z,G),U){var ne=U[Q];if(Array.isArray(ne)){if(Q in Ee.arrayKeywords)for(var re=0;re{var j,o,y,Z,U;j=v(9928),o=v(7468).utf8,y=v(8749),Z=v(7468).bin,(U=function(L,Y){L.constructor==String?L=Y&&"binary"===Y.encoding?Z.stringToBytes(L):o.stringToBytes(L):y(L)?L=Array.prototype.slice.call(L,0):!Array.isArray(L)&&L.constructor!==Uint8Array&&(L=L.toString());for(var V=j.bytesToWords(L),X=8*L.length,z=1732584193,G=-271733879,Q=-1732584194,ne=271733878,re=0;re>>24)|4278255360&(V[re]<<24|V[re]>>>8);V[X>>>5]|=128<>>9<<4)]=X;var me=U._ff,we=U._gg,Be=U._hh,Ie=U._ii;for(re=0;re>>0,G=G+Je>>>0,Q=Q+He>>>0,ne=ne+qe>>>0}return j.endian([z,G,Q,ne])})._ff=function(L,Y,V,X,z,G,Q){var ne=L+(Y&V|~Y&X)+(z>>>0)+Q;return(ne<>>32-G)+Y},U._gg=function(L,Y,V,X,z,G,Q){var ne=L+(Y&X|V&~X)+(z>>>0)+Q;return(ne<>>32-G)+Y},U._hh=function(L,Y,V,X,z,G,Q){var ne=L+(Y^V^X)+(z>>>0)+Q;return(ne<>>32-G)+Y},U._ii=function(L,Y,V,X,z,G,Q){var ne=L+(V^(Y|~X))+(z>>>0)+Q;return(ne<>>32-G)+Y},U._blocksize=16,U._digestsize=16,nt.exports=function(L,Y){if(null==L)throw new Error("Illegal argument "+L);var V=j.wordsToBytes(U(L,Y));return Y&&Y.asBytes?V:Y&&Y.asString?Z.bytesToString(V):j.bytesToHex(V)}},8314:(nt,Ee,v)=>{const o=v(2836),y=v(9460),Z=v(7030),U=v(6511);function L(Y,V,X,z,G){const Q=[].slice.call(arguments,1),ne=Q.length,re="function"==typeof Q[ne-1];if(!re&&!o())throw new Error("Callback required as last argument");if(!re){if(ne<1)throw new Error("Too few arguments provided");return 1===ne?(X=V,V=z=void 0):2===ne&&!V.getContext&&(z=X,X=V,V=void 0),new Promise(function(me,we){try{const Be=y.create(X,z);me(Y(Be,V,z))}catch(Be){we(Be)}})}if(ne<2)throw new Error("Too few arguments provided");2===ne?(G=X,X=V,V=z=void 0):3===ne&&(V.getContext&&typeof G>"u"?(G=z,z=void 0):(G=z,z=X,X=V,V=void 0));try{const me=y.create(X,z);G(null,Y(me,V,z))}catch(me){G(me)}}Ee.mo=L.bind(null,Z.render),L.bind(null,Z.renderToDataURL),L.bind(null,function(Y,V,X){return U.render(Y,X)})},2836:nt=>{nt.exports=function(){return"function"==typeof Promise&&Promise.prototype&&Promise.prototype.then}},6214:(nt,Ee,v)=>{const j=v(9089).getSymbolSize;Ee.getRowColCoords=function(y){if(1===y)return[];const Z=Math.floor(y/7)+2,U=j(y),L=145===U?26:2*Math.ceil((U-13)/(2*Z-2)),Y=[U-7];for(let V=1;V{const j=v(4058),o=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function y(Z){this.mode=j.ALPHANUMERIC,this.data=Z}y.getBitsLength=function(U){return 11*Math.floor(U/2)+U%2*6},y.prototype.getLength=function(){return this.data.length},y.prototype.getBitsLength=function(){return y.getBitsLength(this.data.length)},y.prototype.write=function(U){let L;for(L=0;L+2<=this.data.length;L+=2){let Y=45*o.indexOf(this.data[L]);Y+=o.indexOf(this.data[L+1]),U.put(Y,11)}this.data.length%2&&U.put(o.indexOf(this.data[L]),6)},nt.exports=y},4662:nt=>{function Ee(){this.buffer=[],this.length=0}Ee.prototype={get:function(v){const j=Math.floor(v/8);return 1==(this.buffer[j]>>>7-v%8&1)},put:function(v,j){for(let o=0;o>>j-o-1&1))},getLengthInBits:function(){return this.length},putBit:function(v){const j=Math.floor(this.length/8);this.buffer.length<=j&&this.buffer.push(0),v&&(this.buffer[j]|=128>>>this.length%8),this.length++}},nt.exports=Ee},5941:nt=>{function Ee(v){if(!v||v<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=v,this.data=new Uint8Array(v*v),this.reservedBit=new Uint8Array(v*v)}Ee.prototype.set=function(v,j,o,y){const Z=v*this.size+j;this.data[Z]=o,y&&(this.reservedBit[Z]=!0)},Ee.prototype.get=function(v,j){return this.data[v*this.size+j]},Ee.prototype.xor=function(v,j,o){this.data[v*this.size+j]^=o},Ee.prototype.isReserved=function(v,j){return this.reservedBit[v*this.size+j]},nt.exports=Ee},4969:(nt,Ee,v)=>{const j=v(4058);function o(y){this.mode=j.BYTE,this.data="string"==typeof y?(new TextEncoder).encode(y):new Uint8Array(y)}o.getBitsLength=function(Z){return 8*Z},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(y){for(let Z=0,U=this.data.length;Z{const j=v(7424),o=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],y=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];Ee.getBlocksCount=function(U,L){switch(L){case j.L:return o[4*(U-1)+0];case j.M:return o[4*(U-1)+1];case j.Q:return o[4*(U-1)+2];case j.H:return o[4*(U-1)+3];default:return}},Ee.getTotalCodewordsCount=function(U,L){switch(L){case j.L:return y[4*(U-1)+0];case j.M:return y[4*(U-1)+1];case j.Q:return y[4*(U-1)+2];case j.H:return y[4*(U-1)+3];default:return}}},7424:(nt,Ee)=>{Ee.L={bit:1},Ee.M={bit:0},Ee.Q={bit:3},Ee.H={bit:2},Ee.isValid=function(o){return o&&typeof o.bit<"u"&&o.bit>=0&&o.bit<4},Ee.from=function(o,y){if(Ee.isValid(o))return o;try{return function v(j){if("string"!=typeof j)throw new Error("Param is not a string");switch(j.toLowerCase()){case"l":case"low":return Ee.L;case"m":case"medium":return Ee.M;case"q":case"quartile":return Ee.Q;case"h":case"high":return Ee.H;default:throw new Error("Unknown EC Level: "+j)}}(o)}catch{return y}}},6269:(nt,Ee,v)=>{const j=v(9089).getSymbolSize;Ee.getPositions=function(Z){const U=j(Z);return[[0,0],[U-7,0],[0,U-7]]}},6254:(nt,Ee,v)=>{const j=v(9089),Z=j.getBCHDigit(1335);Ee.getEncodedBits=function(L,Y){const V=L.bit<<3|Y;let X=V<<10;for(;j.getBCHDigit(X)-Z>=0;)X^=1335<{const v=new Uint8Array(512),j=new Uint8Array(256);(function(){let y=1;for(let Z=0;Z<255;Z++)v[Z]=y,j[y]=Z,y<<=1,256&y&&(y^=285);for(let Z=255;Z<512;Z++)v[Z]=v[Z-255]})(),Ee.log=function(y){if(y<1)throw new Error("log("+y+")");return j[y]},Ee.exp=function(y){return v[y]},Ee.mul=function(y,Z){return 0===y||0===Z?0:v[j[y]+j[Z]]}},3264:(nt,Ee,v)=>{const j=v(4058),o=v(9089);function y(Z){this.mode=j.KANJI,this.data=Z}y.getBitsLength=function(U){return 13*U},y.prototype.getLength=function(){return this.data.length},y.prototype.getBitsLength=function(){return y.getBitsLength(this.data.length)},y.prototype.write=function(Z){let U;for(U=0;U=33088&&L<=40956)L-=33088;else{if(!(L>=57408&&L<=60351))throw new Error("Invalid SJIS character: "+this.data[U]+"\nMake sure your charset is UTF-8");L-=49472}L=192*(L>>>8&255)+(255&L),Z.put(L,13)}},nt.exports=y},3361:(nt,Ee)=>{Ee.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};function j(o,y,Z){switch(o){case Ee.Patterns.PATTERN000:return(y+Z)%2==0;case Ee.Patterns.PATTERN001:return y%2==0;case Ee.Patterns.PATTERN010:return Z%3==0;case Ee.Patterns.PATTERN011:return(y+Z)%3==0;case Ee.Patterns.PATTERN100:return(Math.floor(y/2)+Math.floor(Z/3))%2==0;case Ee.Patterns.PATTERN101:return y*Z%2+y*Z%3==0;case Ee.Patterns.PATTERN110:return(y*Z%2+y*Z%3)%2==0;case Ee.Patterns.PATTERN111:return(y*Z%3+(y+Z)%2)%2==0;default:throw new Error("bad maskPattern:"+o)}}Ee.isValid=function(y){return null!=y&&""!==y&&!isNaN(y)&&y>=0&&y<=7},Ee.from=function(y){return Ee.isValid(y)?parseInt(y,10):void 0},Ee.getPenaltyN1=function(y){const Z=y.size;let U=0,L=0,Y=0,V=null,X=null;for(let z=0;z=5&&(U+=L-5+3),V=Q,L=1),Q=y.get(G,z),Q===X?Y++:(Y>=5&&(U+=Y-5+3),X=Q,Y=1)}L>=5&&(U+=L-5+3),Y>=5&&(U+=Y-5+3)}return U},Ee.getPenaltyN2=function(y){const Z=y.size;let U=0;for(let L=0;L=10&&(1488===L||93===L)&&U++,Y=Y<<1&2047|y.get(X,V),X>=10&&(1488===Y||93===Y)&&U++}return 40*U},Ee.getPenaltyN4=function(y){let Z=0;const U=y.data.length;for(let Y=0;Y{const j=v(377),o=v(9359);Ee.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},Ee.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},Ee.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},Ee.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},Ee.MIXED={bit:-1},Ee.getCharCountIndicator=function(U,L){if(!U.ccBits)throw new Error("Invalid mode: "+U);if(!j.isValid(L))throw new Error("Invalid version: "+L);return L>=1&&L<10?U.ccBits[0]:L<27?U.ccBits[1]:U.ccBits[2]},Ee.getBestModeForData=function(U){return o.testNumeric(U)?Ee.NUMERIC:o.testAlphanumeric(U)?Ee.ALPHANUMERIC:o.testKanji(U)?Ee.KANJI:Ee.BYTE},Ee.toString=function(U){if(U&&U.id)return U.id;throw new Error("Invalid mode")},Ee.isValid=function(U){return U&&U.bit&&U.ccBits},Ee.from=function(U,L){if(Ee.isValid(U))return U;try{return function y(Z){if("string"!=typeof Z)throw new Error("Param is not a string");switch(Z.toLowerCase()){case"numeric":return Ee.NUMERIC;case"alphanumeric":return Ee.ALPHANUMERIC;case"kanji":return Ee.KANJI;case"byte":return Ee.BYTE;default:throw new Error("Unknown mode: "+Z)}}(U)}catch{return L}}},6628:(nt,Ee,v)=>{const j=v(4058);function o(y){this.mode=j.NUMERIC,this.data=y.toString()}o.getBitsLength=function(Z){return 10*Math.floor(Z/3)+(Z%3?Z%3*3+1:0)},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(Z){let U,L,Y;for(U=0;U+3<=this.data.length;U+=3)L=this.data.substr(U,3),Y=parseInt(L,10),Z.put(Y,10);const V=this.data.length-U;V>0&&(L=this.data.substr(U),Y=parseInt(L,10),Z.put(Y,3*V+1))},nt.exports=o},1744:(nt,Ee,v)=>{const j=v(6686);Ee.mul=function(y,Z){const U=new Uint8Array(y.length+Z.length-1);for(let L=0;L=0;){const L=U[0];for(let V=0;V{const j=v(9089),o=v(7424),y=v(4662),Z=v(5941),U=v(6214),L=v(6269),Y=v(3361),V=v(3677),X=v(6289),z=v(1252),G=v(6254),Q=v(4058),ne=v(2868);function Ie($e,Ge,st){const We=$e.size,ve=G.getEncodedBits(Ge,st);let fe,Qe;for(fe=0;fe<15;fe++)Qe=1==(ve>>fe&1),$e.set(fe<6?fe:fe<8?fe+1:We-15+fe,8,Qe,!0),$e.set(8,fe<8?We-fe-1:fe<9?15-fe-1+1:15-fe-1,Qe,!0);$e.set(We-8,8,1,!0)}function qe($e,Ge,st,We){let ve;if(Array.isArray($e))ve=ne.fromArray($e);else{if("string"!=typeof $e)throw new Error("Invalid data");{let pt=Ge;if(!pt){const wt=ne.rawSplit($e);pt=z.getBestVersionForData(wt,st)}ve=ne.fromString($e,pt||40)}}const fe=z.getBestVersionForData(ve,st);if(!fe)throw new Error("The amount of data is too big to be stored in a QR Code");if(Ge){if(Ge=0&&Te<=6&&(0===Le||6===Le)||Le>=0&&Le<=6&&(0===Te||6===Te)||Te>=2&&Te<=4&&Le>=2&&Le<=4,!0)}}(Le,Ge),function me($e){const Ge=$e.size;for(let st=8;st=7&&function Be($e,Ge){const st=$e.size,We=z.getEncodedBits(Ge);let ve,fe,Qe;for(let Te=0;Te<18;Te++)ve=Math.floor(Te/3),fe=Te%3+st-8-3,Qe=1==(We>>Te&1),$e.set(ve,fe,Qe,!0),$e.set(fe,ve,Qe,!0)}(Le,Ge),function Ne($e,Ge){const st=$e.size;let We=-1,ve=st-1,fe=7,Qe=0;for(let Te=st-1;Te>0;Te-=2)for(6===Te&&Te--;;){for(let Le=0;Le<2;Le++)if(!$e.isReserved(ve,Te-Le)){let pt=!1;Qe>>fe&1)),$e.set(ve,Te-Le,pt),fe--,-1===fe&&(Qe++,fe=7)}if(ve+=We,ve<0||st<=ve){ve-=We,We=-We;break}}}(Le,Qe),isNaN(We)&&(We=Y.getBestMask(Le,Ie.bind(null,Le,st))),Y.applyMask(We,Le),Ie(Le,st,We),{modules:Le,version:Ge,errorCorrectionLevel:st,maskPattern:We,segments:ve}}Ee.create=function(Ge,st){if(typeof Ge>"u"||""===Ge)throw new Error("No input text");let ve,fe,We=o.M;return typeof st<"u"&&(We=o.from(st.errorCorrectionLevel,o.M),ve=z.from(st.version),fe=Y.from(st.maskPattern),st.toSJISFunc&&j.setToSJISFunction(st.toSJISFunc)),qe(Ge,ve,We,fe)}},6289:(nt,Ee,v)=>{const j=v(1744);function o(y){this.genPoly=void 0,this.degree=y,this.degree&&this.initialize(this.degree)}o.prototype.initialize=function(Z){this.degree=Z,this.genPoly=j.generateECPolynomial(this.degree)},o.prototype.encode=function(Z){if(!this.genPoly)throw new Error("Encoder not initialized");const U=new Uint8Array(Z.length+this.degree);U.set(Z);const L=j.mod(U,this.genPoly),Y=this.degree-L.length;if(Y>0){const V=new Uint8Array(this.degree);return V.set(L,Y),V}return L},nt.exports=o},9359:(nt,Ee)=>{const v="[0-9]+";let o="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";o=o.replace(/u/g,"\\u");const y="(?:(?![A-Z0-9 $%*+\\-./:]|"+o+")(?:.|[\r\n]))+";Ee.KANJI=new RegExp(o,"g"),Ee.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),Ee.BYTE=new RegExp(y,"g"),Ee.NUMERIC=new RegExp(v,"g"),Ee.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");const Z=new RegExp("^"+o+"$"),U=new RegExp("^"+v+"$"),L=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");Ee.testKanji=function(V){return Z.test(V)},Ee.testNumeric=function(V){return U.test(V)},Ee.testAlphanumeric=function(V){return L.test(V)}},2868:(nt,Ee,v)=>{const j=v(4058),o=v(6628),y=v(1018),Z=v(4969),U=v(3264),L=v(9359),Y=v(9089),V=v(243);function X(Be){return unescape(encodeURIComponent(Be)).length}function z(Be,Ie,Ne){const Je=[];let He;for(;null!==(He=Be.exec(Ne));)Je.push({data:He[0],index:He.index,mode:Ie,length:He[0].length});return Je}function G(Be){const Ie=z(L.NUMERIC,j.NUMERIC,Be),Ne=z(L.ALPHANUMERIC,j.ALPHANUMERIC,Be);let Je,He;return Y.isKanjiModeEnabled()?(Je=z(L.BYTE,j.BYTE,Be),He=z(L.KANJI,j.KANJI,Be)):(Je=z(L.BYTE_KANJI,j.BYTE,Be),He=[]),Ie.concat(Ne,Je,He).sort(function($e,Ge){return $e.index-Ge.index}).map(function($e){return{data:$e.data,mode:$e.mode,length:$e.length}})}function Q(Be,Ie){switch(Ie){case j.NUMERIC:return o.getBitsLength(Be);case j.ALPHANUMERIC:return y.getBitsLength(Be);case j.KANJI:return U.getBitsLength(Be);case j.BYTE:return Z.getBitsLength(Be)}}function we(Be,Ie){let Ne;const Je=j.getBestModeForData(Be);if(Ne=j.from(Ie,Je),Ne!==j.BYTE&&Ne.bit=0?Ie[Ie.length-1]:null;return Je&&Je.mode===Ne.mode?(Ie[Ie.length-1].data+=Ne.data,Ie):(Ie.push(Ne),Ie)},[])}(Ge))},Ee.rawSplit=function(Ie){return Ee.fromArray(G(Ie,Y.isKanjiModeEnabled()))}},9089:(nt,Ee)=>{let v;const j=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Ee.getSymbolSize=function(y){if(!y)throw new Error('"version" cannot be null or undefined');if(y<1||y>40)throw new Error('"version" should be in range from 1 to 40');return 4*y+17},Ee.getSymbolTotalCodewords=function(y){return j[y]},Ee.getBCHDigit=function(o){let y=0;for(;0!==o;)y++,o>>>=1;return y},Ee.setToSJISFunction=function(y){if("function"!=typeof y)throw new Error('"toSJISFunc" is not a valid function.');v=y},Ee.isKanjiModeEnabled=function(){return typeof v<"u"},Ee.toSJIS=function(y){return v(y)}},377:(nt,Ee)=>{Ee.isValid=function(j){return!isNaN(j)&&j>=1&&j<=40}},1252:(nt,Ee,v)=>{const j=v(9089),o=v(3677),y=v(7424),Z=v(4058),U=v(377),Y=j.getBCHDigit(7973);function X(Q,ne){return Z.getCharCountIndicator(Q,ne)+4}function z(Q,ne){let re=0;return Q.forEach(function(me){const we=X(me.mode,ne);re+=we+me.getBitsLength()}),re}Ee.from=function(ne,re){return U.isValid(ne)?parseInt(ne,10):re},Ee.getCapacity=function(ne,re,me){if(!U.isValid(ne))throw new Error("Invalid QR Code version");typeof me>"u"&&(me=Z.BYTE);const Ie=8*(j.getSymbolTotalCodewords(ne)-o.getTotalCodewordsCount(ne,re));if(me===Z.MIXED)return Ie;const Ne=Ie-X(me,ne);switch(me){case Z.NUMERIC:return Math.floor(Ne/10*3);case Z.ALPHANUMERIC:return Math.floor(Ne/11*2);case Z.KANJI:return Math.floor(Ne/13);default:return Math.floor(Ne/8)}},Ee.getBestVersionForData=function(ne,re){let me;const we=y.from(re,y.M);if(Array.isArray(ne)){if(ne.length>1)return function G(Q,ne){for(let re=1;re<=40;re++)if(z(Q,re)<=Ee.getCapacity(re,ne,Z.MIXED))return re}(ne,we);if(0===ne.length)return 1;me=ne[0]}else me=ne;return function V(Q,ne,re){for(let me=1;me<=40;me++)if(ne<=Ee.getCapacity(me,re,Q))return me}(me.mode,me.getLength(),we)},Ee.getEncodedBits=function(ne){if(!U.isValid(ne)||ne<7)throw new Error("Invalid QR Code version");let re=ne<<12;for(;j.getBCHDigit(re)-Y>=0;)re^=7973<{const j=v(7077);Ee.render=function(U,L,Y){let V=Y,X=L;typeof V>"u"&&(!L||!L.getContext)&&(V=L,L=void 0),L||(X=function y(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}()),V=j.getOptions(V);const z=j.getImageWidth(U.modules.size,V),G=X.getContext("2d"),Q=G.createImageData(z,z);return j.qrToImageData(Q.data,U,V),function o(Z,U,L){Z.clearRect(0,0,U.width,U.height),U.style||(U.style={}),U.height=L,U.width=L,U.style.height=L+"px",U.style.width=L+"px"}(G,X,z),G.putImageData(Q,0,0),X},Ee.renderToDataURL=function(U,L,Y){let V=Y;return typeof V>"u"&&(!L||!L.getContext)&&(V=L,L=void 0),V||(V={}),Ee.render(U,L,V).toDataURL(V.type||"image/png",(V.rendererOpts||{}).quality)}},6511:(nt,Ee,v)=>{const j=v(7077);function o(U,L){const Y=U.a/255,V=L+'="'+U.hex+'"';return Y<1?V+" "+L+'-opacity="'+Y.toFixed(2).slice(1)+'"':V}function y(U,L,Y){let V=U+L;return typeof Y<"u"&&(V+=" "+Y),V}Ee.render=function(L,Y,V){const X=j.getOptions(Y),z=L.modules.size,G=L.modules.data,Q=z+2*X.margin,ne=X.color.light.a?"':"",re="0&&ne>0&&U[Q-1]||(V+=z?y("M",ne+Y,.5+re+Y):y("m",X,0),X=0,z=!1),ne+1',Be=''+ne+re+"\n";return"function"==typeof V&&V(null,Be),Be}},7077:(nt,Ee)=>{function v(j){if("number"==typeof j&&(j=j.toString()),"string"!=typeof j)throw new Error("Color should be defined as hex string");let o=j.slice().replace("#","").split("");if(o.length<3||5===o.length||o.length>8)throw new Error("Invalid hex color: "+j);(3===o.length||4===o.length)&&(o=Array.prototype.concat.apply([],o.map(function(Z){return[Z,Z]}))),6===o.length&&o.push("F","F");const y=parseInt(o.join(""),16);return{r:y>>24&255,g:y>>16&255,b:y>>8&255,a:255&y,hex:"#"+o.slice(0,6).join("")}}Ee.getOptions=function(o){o||(o={}),o.color||(o.color={});const Z=o.width&&o.width>=21?o.width:void 0;return{width:Z,scale:Z?4:o.scale||4,margin:typeof o.margin>"u"||null===o.margin||o.margin<0?4:o.margin,color:{dark:v(o.color.dark||"#000000ff"),light:v(o.color.light||"#ffffffff")},type:o.type,rendererOpts:o.rendererOpts||{}}},Ee.getScale=function(o,y){return y.width&&y.width>=o+2*y.margin?y.width/(o+2*y.margin):y.scale},Ee.getImageWidth=function(o,y){const Z=Ee.getScale(o,y);return Math.floor((o+2*y.margin)*Z)},Ee.qrToImageData=function(o,y,Z){const U=y.modules.size,L=y.modules.data,Y=Ee.getScale(U,Z),V=Math.floor((U+2*Z.margin)*Y),X=Z.margin*Y,z=[Z.color.light,Z.color.dark];for(let G=0;G=X&&Q>=X&&G{"use strict";v.d(Ee,{t:()=>o});var j=v(1413);class o extends j.B{constructor(Z){super(),this._value=Z}get value(){return this.getValue()}_subscribe(Z){const U=super._subscribe(Z);return!U.closed&&Z.next(this._value),U}getValue(){const{hasError:Z,thrownError:U,_value:L}=this;if(Z)throw U;return this._throwIfClosed(),L}next(Z){super.next(this._value=Z)}}},4226:(nt,Ee,v)=>{"use strict";v.d(Ee,{c:()=>z});var j=v(7707),o=v(8359),y=v(3494),Z=v(3669);var Y=v(1026),V=v(8071),X=v(9786);let z=(()=>{class re{constructor(we){we&&(this._subscribe=we)}lift(we){const Be=new re;return Be.source=this,Be.operator=we,Be}subscribe(we,Be,Ie){const Ne=function ne(re){return re&&re instanceof j.vU||function Q(re){return re&&(0,V.T)(re.next)&&(0,V.T)(re.error)&&(0,V.T)(re.complete)}(re)&&(0,o.Uv)(re)}(we)?we:new j.Ms(we,Be,Ie);return(0,X.Y)(()=>{const{operator:Je,source:He}=this;Ne.add(Je?Je.call(Ne,He):He?this._subscribe(Ne):this._trySubscribe(Ne))}),Ne}_trySubscribe(we){try{return this._subscribe(we)}catch(Be){we.error(Be)}}forEach(we,Be){return new(Be=G(Be))((Ie,Ne)=>{const Je=new j.Ms({next:He=>{try{we(He)}catch(qe){Ne(qe),Je.unsubscribe()}},error:Ne,complete:Ie});this.subscribe(Je)})}_subscribe(we){var Be;return null===(Be=this.source)||void 0===Be?void 0:Be.subscribe(we)}[y.s](){return this}pipe(...we){return function L(re){return 0===re.length?Z.D:1===re.length?re[0]:function(we){return re.reduce((Be,Ie)=>Ie(Be),we)}}(we)(this)}toPromise(we){return new(we=G(we))((Be,Ie)=>{let Ne;this.subscribe(Je=>Ne=Je,Je=>Ie(Je),()=>Be(Ne))})}}return re.create=me=>new re(me),re})();function G(re){var me;return null!==(me=re??Y.$.Promise)&&void 0!==me?me:Promise}},1413:(nt,Ee,v)=>{"use strict";v.d(Ee,{B:()=>Y});var j=v(4226),o=v(8359);const Z=(0,v(1853).L)(X=>function(){X(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var U=v(7908),L=v(9786);let Y=(()=>{class X extends j.c{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(G){const Q=new V(this,this);return Q.operator=G,Q}_throwIfClosed(){if(this.closed)throw new Z}next(G){(0,L.Y)(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const Q of this.currentObservers)Q.next(G)}})}error(G){(0,L.Y)(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=G;const{observers:Q}=this;for(;Q.length;)Q.shift().error(G)}})}complete(){(0,L.Y)(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:G}=this;for(;G.length;)G.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var G;return(null===(G=this.observers)||void 0===G?void 0:G.length)>0}_trySubscribe(G){return this._throwIfClosed(),super._trySubscribe(G)}_subscribe(G){return this._throwIfClosed(),this._checkFinalizedStatuses(G),this._innerSubscribe(G)}_innerSubscribe(G){const{hasError:Q,isStopped:ne,observers:re}=this;return Q||ne?o.Kn:(this.currentObservers=null,re.push(G),new o.yU(()=>{this.currentObservers=null,(0,U.o)(re,G)}))}_checkFinalizedStatuses(G){const{hasError:Q,thrownError:ne,isStopped:re}=this;Q?G.error(ne):re&&G.complete()}asObservable(){const G=new j.c;return G.source=this,G}}return X.create=(z,G)=>new V(z,G),X})();class V extends Y{constructor(z,G){super(),this.destination=z,this.source=G}next(z){var G,Q;null===(Q=null===(G=this.destination)||void 0===G?void 0:G.next)||void 0===Q||Q.call(G,z)}error(z){var G,Q;null===(Q=null===(G=this.destination)||void 0===G?void 0:G.error)||void 0===Q||Q.call(G,z)}complete(){var z,G;null===(G=null===(z=this.destination)||void 0===z?void 0:z.complete)||void 0===G||G.call(z)}_subscribe(z){var G,Q;return null!==(Q=null===(G=this.source)||void 0===G?void 0:G.subscribe(z))&&void 0!==Q?Q:o.Kn}}},7707:(nt,Ee,v)=>{"use strict";v.d(Ee,{Ms:()=>we,vU:()=>Q});var j=v(8071),o=v(8359),y=v(1026),Z=v(5334),U=v(5343);const L=X("C",void 0,void 0);function X(He,qe,$e){return{kind:He,value:qe,error:$e}}var z=v(9270),G=v(9786);class Q extends o.yU{constructor(qe){super(),this.isStopped=!1,qe?(this.destination=qe,(0,o.Uv)(qe)&&qe.add(this)):this.destination=Je}static create(qe,$e,Ge){return new we(qe,$e,Ge)}next(qe){this.isStopped?Ne(function V(He){return X("N",He,void 0)}(qe),this):this._next(qe)}error(qe){this.isStopped?Ne(function Y(He){return X("E",void 0,He)}(qe),this):(this.isStopped=!0,this._error(qe))}complete(){this.isStopped?Ne(L,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(qe){this.destination.next(qe)}_error(qe){try{this.destination.error(qe)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const ne=Function.prototype.bind;function re(He,qe){return ne.call(He,qe)}class me{constructor(qe){this.partialObserver=qe}next(qe){const{partialObserver:$e}=this;if($e.next)try{$e.next(qe)}catch(Ge){Be(Ge)}}error(qe){const{partialObserver:$e}=this;if($e.error)try{$e.error(qe)}catch(Ge){Be(Ge)}else Be(qe)}complete(){const{partialObserver:qe}=this;if(qe.complete)try{qe.complete()}catch($e){Be($e)}}}class we extends Q{constructor(qe,$e,Ge){let st;if(super(),(0,j.T)(qe)||!qe)st={next:qe??void 0,error:$e??void 0,complete:Ge??void 0};else{let We;this&&y.$.useDeprecatedNextContext?(We=Object.create(qe),We.unsubscribe=()=>this.unsubscribe(),st={next:qe.next&&re(qe.next,We),error:qe.error&&re(qe.error,We),complete:qe.complete&&re(qe.complete,We)}):st=qe}this.destination=new me(st)}}function Be(He){y.$.useDeprecatedSynchronousErrorHandling?(0,G.l)(He):(0,Z.m)(He)}function Ne(He,qe){const{onStoppedNotification:$e}=y.$;$e&&z.f.setTimeout(()=>$e(He,qe))}const Je={closed:!0,next:U.l,error:function Ie(He){throw He},complete:U.l}},8359:(nt,Ee,v)=>{"use strict";v.d(Ee,{Kn:()=>L,yU:()=>U,Uv:()=>Y});var j=v(8071);const y=(0,v(1853).L)(X=>function(G){X(this),this.message=G?`${G.length} errors occurred during unsubscription:\n${G.map((Q,ne)=>`${ne+1}) ${Q.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=G});var Z=v(7908);class U{constructor(z){this.initialTeardown=z,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let z;if(!this.closed){this.closed=!0;const{_parentage:G}=this;if(G)if(this._parentage=null,Array.isArray(G))for(const re of G)re.remove(this);else G.remove(this);const{initialTeardown:Q}=this;if((0,j.T)(Q))try{Q()}catch(re){z=re instanceof y?re.errors:[re]}const{_finalizers:ne}=this;if(ne){this._finalizers=null;for(const re of ne)try{V(re)}catch(me){z=z??[],me instanceof y?z=[...z,...me.errors]:z.push(me)}}if(z)throw new y(z)}}add(z){var G;if(z&&z!==this)if(this.closed)V(z);else{if(z instanceof U){if(z.closed||z._hasParent(this))return;z._addParent(this)}(this._finalizers=null!==(G=this._finalizers)&&void 0!==G?G:[]).push(z)}}_hasParent(z){const{_parentage:G}=this;return G===z||Array.isArray(G)&&G.includes(z)}_addParent(z){const{_parentage:G}=this;this._parentage=Array.isArray(G)?(G.push(z),G):G?[G,z]:z}_removeParent(z){const{_parentage:G}=this;G===z?this._parentage=null:Array.isArray(G)&&(0,Z.o)(G,z)}remove(z){const{_finalizers:G}=this;G&&(0,Z.o)(G,z),z instanceof U&&z._removeParent(this)}}U.EMPTY=(()=>{const X=new U;return X.closed=!0,X})();const L=U.EMPTY;function Y(X){return X instanceof U||X&&"closed"in X&&(0,j.T)(X.remove)&&(0,j.T)(X.add)&&(0,j.T)(X.unsubscribe)}function V(X){(0,j.T)(X)?X():X.unsubscribe()}},1026:(nt,Ee,v)=>{"use strict";v.d(Ee,{$:()=>j});const j={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},4360:(nt,Ee,v)=>{"use strict";v.d(Ee,{H:()=>y,_:()=>o});var j=v(7707);function o(Z,U,L,Y,V){return new y(Z,U,L,Y,V)}class y extends j.vU{constructor(U,L,Y,V,X,z){super(U),this.onFinalize=X,this.shouldUnsubscribe=z,this._next=L?function(G){try{L(G)}catch(Q){U.error(Q)}}:super._next,this._error=V?function(G){try{V(G)}catch(Q){U.error(Q)}finally{this.unsubscribe()}}:super._error,this._complete=Y?function(){try{Y()}catch(G){U.error(G)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var U;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:L}=this;super.unsubscribe(),!L&&(null===(U=this.onFinalize)||void 0===U||U.call(this))}}}},6354:(nt,Ee,v)=>{"use strict";v.d(Ee,{T:()=>y});var j=v(9974),o=v(4360);function y(Z,U){return(0,j.N)((L,Y)=>{let V=0;L.subscribe((0,o._)(Y,X=>{Y.next(Z.call(U,X,V++))}))})}},9270:(nt,Ee,v)=>{"use strict";v.d(Ee,{f:()=>j});const j={setTimeout(o,y,...Z){const{delegate:U}=j;return U?.setTimeout?U.setTimeout(o,y,...Z):setTimeout(o,y,...Z)},clearTimeout(o){const{delegate:y}=j;return(y?.clearTimeout||clearTimeout)(o)},delegate:void 0}},3494:(nt,Ee,v)=>{"use strict";v.d(Ee,{s:()=>j});const j="function"==typeof Symbol&&Symbol.observable||"@@observable"},7908:(nt,Ee,v)=>{"use strict";function j(o,y){if(o){const Z=o.indexOf(y);0<=Z&&o.splice(Z,1)}}v.d(Ee,{o:()=>j})},1853:(nt,Ee,v)=>{"use strict";function j(o){const Z=o(U=>{Error.call(U),U.stack=(new Error).stack});return Z.prototype=Object.create(Error.prototype),Z.prototype.constructor=Z,Z}v.d(Ee,{L:()=>j})},9786:(nt,Ee,v)=>{"use strict";v.d(Ee,{Y:()=>y,l:()=>Z});var j=v(1026);let o=null;function y(U){if(j.$.useDeprecatedSynchronousErrorHandling){const L=!o;if(L&&(o={errorThrown:!1,error:null}),U(),L){const{errorThrown:Y,error:V}=o;if(o=null,Y)throw V}}else U()}function Z(U){j.$.useDeprecatedSynchronousErrorHandling&&o&&(o.errorThrown=!0,o.error=U)}},3669:(nt,Ee,v)=>{"use strict";function j(o){return o}v.d(Ee,{D:()=>j})},8071:(nt,Ee,v)=>{"use strict";function j(o){return"function"==typeof o}v.d(Ee,{T:()=>j})},9974:(nt,Ee,v)=>{"use strict";v.d(Ee,{N:()=>y});var j=v(8071);function y(Z){return U=>{if(function o(Z){return(0,j.T)(Z?.lift)}(U))return U.lift(function(L){try{return Z(L,this)}catch(Y){this.error(Y)}});throw new TypeError("Unable to lift unknown Observable type")}}},5343:(nt,Ee,v)=>{"use strict";function j(){}v.d(Ee,{l:()=>j})},5334:(nt,Ee,v)=>{"use strict";v.d(Ee,{m:()=>y});var j=v(1026),o=v(9270);function y(Z){o.f.setTimeout(()=>{const{onUnhandledError:U}=j.$;if(!U)throw Z;U(Z)})}},4999:(nt,Ee)=>{"use strict";const{hasOwnProperty:v}=Object.prototype,j=me();j.configure=me,j.stringify=j,j.default=j,Ee.stringify=j,Ee.configure=me,nt.exports=j;const o=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function y(we){return we.length<5e3&&!o.test(we)?`"${we}"`:JSON.stringify(we)}function Z(we,Be){if(we.length>200||Be)return we.sort(Be);for(let Ie=1;IeNe;)we[Je]=we[Je-1],Je--;we[Je]=Ne}return we}const U=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function L(we){return void 0!==U.call(we)&&0!==we.length}function Y(we,Be,Ie){we.length= 1`)}return void 0===Ie?1/0:Ie}function Q(we){return 1===we?"1 item":`${we} items`}function me(we){const Be=function re(we){if(v.call(we,"strict")){const Be=we.strict;if("boolean"!=typeof Be)throw new TypeError('The "strict" argument must be of type boolean');if(Be)return Ie=>{let Ne="Object can not safely be stringified. Received type "+typeof Ie;throw"function"!=typeof Ie&&(Ne+=` (${Ie.toString()})`),new Error(Ne)}}}(we={...we});Be&&(void 0===we.bigint&&(we.bigint=!1),"circularValue"in we||(we.circularValue=Error));const Ie=function V(we){if(v.call(we,"circularValue")){const Be=we.circularValue;if("string"==typeof Be)return`"${Be}"`;if(null==Be)return Be;if(Be===Error||Be===TypeError)return{toString(){throw new TypeError("Converting circular structure to JSON")}};throw new TypeError('The "circularValue" argument must be of type string or the value null or undefined')}return'"[Circular]"'}(we),Ne=function z(we,Be){let Ie;if(v.call(we,Be)&&(Ie=we[Be],"boolean"!=typeof Ie))throw new TypeError(`The "${Be}" argument must be of type boolean`);return void 0===Ie||Ie}(we,"bigint"),Je=function X(we){let Be;if(v.call(we,"deterministic")&&(Be=we.deterministic,"boolean"!=typeof Be&&"function"!=typeof Be))throw new TypeError('The "deterministic" argument must be of type boolean or comparator function');return void 0===Be||Be}(we),He="function"==typeof Je?Je:void 0,qe=G(we,"maximumDepth"),$e=G(we,"maximumBreadth");function Ge(Qe,Te,Le,pt,wt,Nt){let Rt=Te[Qe];switch("object"==typeof Rt&&null!==Rt&&"function"==typeof Rt.toJSON&&(Rt=Rt.toJSON(Qe)),Rt=pt.call(Te,Qe,Rt),typeof Rt){case"string":return y(Rt);case"object":{if(null===Rt)return"null";if(-1!==Le.indexOf(Rt))return Ie;let fn="",$n=",";const Qi=Nt;if(Array.isArray(Rt)){if(0===Rt.length)return"[]";if(qe$e&&(fn+=`${$n}"... ${Q(Rt.length-$e-1)} not stringified"`),""!==wt&&(fn+=`\n${Qi}`),Le.pop(),`[${fn}]`}let ui=Object.keys(Rt);const Bi=ui.length;if(0===Bi)return"{}";if(qe$e&&(fn+=`${ci}"...":${ri}"${Q(Bi-$e)} not stringified"`,ci=$n),""!==wt&&ci.length>1&&(fn=`\n${Nt}${fn}\n${Qi}`),Le.pop(),`{${fn}}`}case"number":return isFinite(Rt)?String(Rt):Be?Be(Rt):"null";case"boolean":return!0===Rt?"true":"false";case"undefined":return;case"bigint":if(Ne)return String(Rt);default:return Be?Be(Rt):void 0}}function st(Qe,Te,Le,pt,wt,Nt){switch("object"==typeof Te&&null!==Te&&"function"==typeof Te.toJSON&&(Te=Te.toJSON(Qe)),typeof Te){case"string":return y(Te);case"object":{if(null===Te)return"null";if(-1!==Le.indexOf(Te))return Ie;const Rt=Nt;let fn="",$n=",";if(Array.isArray(Te)){if(0===Te.length)return"[]";if(qe$e&&(fn+=`${$n}"... ${Q(Te.length-$e-1)} not stringified"`),""!==wt&&(fn+=`\n${Rt}`),Le.pop(),`[${fn}]`}Le.push(Te);let Qi="";""!==wt&&($n=`,\n${Nt+=wt}`,Qi=" ");let ui="";for(const Bi of pt){const ri=st(Bi,Te[Bi],Le,pt,wt,Nt);void 0!==ri&&(fn+=`${ui}${y(Bi)}:${Qi}${ri}`,ui=$n)}return""!==wt&&ui.length>1&&(fn=`\n${Nt}${fn}\n${Rt}`),Le.pop(),`{${fn}}`}case"number":return isFinite(Te)?String(Te):Be?Be(Te):"null";case"boolean":return!0===Te?"true":"false";case"undefined":return;case"bigint":if(Ne)return String(Te);default:return Be?Be(Te):void 0}}function We(Qe,Te,Le,pt,wt){switch(typeof Te){case"string":return y(Te);case"object":{if(null===Te)return"null";if("function"==typeof Te.toJSON){if("object"!=typeof(Te=Te.toJSON(Qe)))return We(Qe,Te,Le,pt,wt);if(null===Te)return"null"}if(-1!==Le.indexOf(Te))return Ie;const Nt=wt;if(Array.isArray(Te)){if(0===Te.length)return"[]";if(qe$e&&(ri+=`${ci}"... ${Q(Te.length-$e-1)} not stringified"`),ri+=`\n${Nt}`,Le.pop(),`[${ri}]`}let Rt=Object.keys(Te);const fn=Rt.length;if(0===fn)return"{}";if(qe$e&&(Qi+=`${ui}"...": "${Q(fn-$e)} not stringified"`,ui=$n),""!==ui&&(Qi=`\n${wt}${Qi}\n${Nt}`),Le.pop(),`{${Qi}}`}case"number":return isFinite(Te)?String(Te):Be?Be(Te):"null";case"boolean":return!0===Te?"true":"false";case"undefined":return;case"bigint":if(Ne)return String(Te);default:return Be?Be(Te):void 0}}function ve(Qe,Te,Le){switch(typeof Te){case"string":return y(Te);case"object":{if(null===Te)return"null";if("function"==typeof Te.toJSON){if("object"!=typeof(Te=Te.toJSON(Qe)))return ve(Qe,Te,Le);if(null===Te)return"null"}if(-1!==Le.indexOf(Te))return Ie;let pt="";const wt=void 0!==Te.length;if(wt&&Array.isArray(Te)){if(0===Te.length)return"[]";if(qe$e&&(pt+=`,"... ${Q(Te.length-$e-1)} not stringified"`),Le.pop(),`[${pt}]`}let Nt=Object.keys(Te);const Rt=Nt.length;if(0===Rt)return"{}";if(qe$e&&(pt+=`${fn}"...":"${Q(Rt-$e)} not stringified"`),Le.pop(),`{${pt}}`}case"number":return isFinite(Te)?String(Te):Be?Be(Te):"null";case"boolean":return!0===Te?"true":"false";case"undefined":return;case"bigint":if(Ne)return String(Te);default:return Be?Be(Te):void 0}}return function fe(Qe,Te,Le){if(arguments.length>1){let pt="";if("number"==typeof Le?pt=" ".repeat(Math.min(Le,10)):"string"==typeof Le&&(pt=Le.slice(0,10)),null!=Te){if("function"==typeof Te)return Ge("",{"":Qe},[],Te,pt,"");if(Array.isArray(Te))return st("",Qe,[],function ne(we){const Be=new Set;for(const Ie of we)("string"==typeof Ie||"number"==typeof Ie)&&Be.add(String(Ie));return Be}(Te),pt,"")}if(0!==pt.length)return We("",Qe,[],pt,"")}return ve("",Qe,[])}}},5568:function(nt,Ee){!function(v){"use strict";function j(){for(var De=arguments.length,he=Array(De),Ve=0;Ve1){he[0]=he[0].slice(0,-1);for(var ct=he.length-1,vt=1;vt= 0x80 (not a basic code point)","invalid-input":"Invalid input"},We=Math.floor,ve=String.fromCharCode;function fe(De){throw new RangeError(Ge[De])}function Te(De,he){var Ve=De.split("@"),ct="";return Ve.length>1&&(ct=Ve[0]+"@",De=Ve[1]),ct+function Qe(De,he){for(var Ve=[],ct=De.length;ct--;)Ve[ct]=he(De[ct]);return Ve}((De=De.replace($e,".")).split("."),he).join(".")}function Le(De){for(var he=[],Ve=0,ct=De.length;Ve=55296&&vt<=56319&&Ve>1,he+=We(he/Ve);he>455;vt+=36)he=We(he/35);return We(vt+36*he/(he+38))},fn=function(he){var Ve=[],ct=he.length,vt=0,tn=128,Qt=72,Gt=he.lastIndexOf("-");Gt<0&&(Gt=0);for(var Pn=0;Pn=128&&fe("not-basic"),Ve.push(he.charCodeAt(Pn));for(var Un=Gt>0?Gt+1:0;Un=ct&&fe("invalid-input");var En=wt(he.charCodeAt(Un++));(En>=36||En>We((Q-vt)/Xn))&&fe("overflow"),vt+=En*Xn;var Fn=Ar<=Qt?1:Ar>=Qt+26?26:Ar-Qt;if(EnWe(Q/pn)&&fe("overflow"),Xn*=pn}var Ke=Ve.length+1;Qt=Rt(vt-mn,Ke,0==mn),We(vt/Ke)>Q-tn&&fe("overflow"),tn+=We(vt/Ke),vt%=Ke,Ve.splice(vt++,0,tn)}return String.fromCodePoint.apply(String,Ve)},$n=function(he){var Ve=[],ct=(he=Le(he)).length,vt=128,tn=0,Qt=72,Gt=!0,Pn=!1,Un=void 0;try{for(var Xn,mn=he[Symbol.iterator]();!(Gt=(Xn=mn.next()).done);Gt=!0){var Ar=Xn.value;Ar<128&&Ve.push(ve(Ar))}}catch(Ui){Pn=!0,Un=Ui}finally{try{!Gt&&mn.return&&mn.return()}finally{if(Pn)throw Un}}var En=Ve.length,Fn=En;for(En&&Ve.push("-");Fn=vt&&viWe((Q-tn)/eo)&&fe("overflow"),tn+=(pn-vt)*eo,vt=pn;var Ao=!0,To=!1,Sn=void 0;try{for(var on,dn=he[Symbol.iterator]();!(Ao=(on=dn.next()).done);Ao=!0){var St=on.value;if(StQ&&fe("overflow"),St==vt){for(var nn=tn,ni=36;;ni+=36){var li=ni<=Qt?1:ni>=Qt+26?26:ni-Qt;if(nn>6|192).toString(16).toUpperCase()+"%"+(63&he|128).toString(16).toUpperCase():"%"+(he>>12|224).toString(16).toUpperCase()+"%"+(he>>6&63|128).toString(16).toUpperCase()+"%"+(63&he|128).toString(16).toUpperCase()}function it(De){for(var he="",Ve=0,ct=De.length;Ve=194&&vt<224){if(ct-Ve>=6){var tn=parseInt(De.substr(Ve+4,2),16);he+=String.fromCharCode((31&vt)<<6|63&tn)}else he+=De.substr(Ve,6);Ve+=6}else if(vt>=224){if(ct-Ve>=9){var Qt=parseInt(De.substr(Ve+4,2),16),Gt=parseInt(De.substr(Ve+7,2),16);he+=String.fromCharCode((15&vt)<<12|(63&Qt)<<6|63&Gt)}else he+=De.substr(Ve,9);Ve+=9}else he+=De.substr(Ve,3),Ve+=3}return he}function kt(De,he){function Ve(ct){var vt=it(ct);return vt.match(he.UNRESERVED)?vt:ct}return De.scheme&&(De.scheme=String(De.scheme).replace(he.PCT_ENCODED,Ve).toLowerCase().replace(he.NOT_SCHEME,"")),void 0!==De.userinfo&&(De.userinfo=String(De.userinfo).replace(he.PCT_ENCODED,Ve).replace(he.NOT_USERINFO,ci).replace(he.PCT_ENCODED,Z)),void 0!==De.host&&(De.host=String(De.host).replace(he.PCT_ENCODED,Ve).toLowerCase().replace(he.NOT_HOST,ci).replace(he.PCT_ENCODED,Z)),void 0!==De.path&&(De.path=String(De.path).replace(he.PCT_ENCODED,Ve).replace(De.scheme?he.NOT_PATH:he.NOT_PATH_NOSCHEME,ci).replace(he.PCT_ENCODED,Z)),void 0!==De.query&&(De.query=String(De.query).replace(he.PCT_ENCODED,Ve).replace(he.NOT_QUERY,ci).replace(he.PCT_ENCODED,Z)),void 0!==De.fragment&&(De.fragment=String(De.fragment).replace(he.PCT_ENCODED,Ve).replace(he.NOT_FRAGMENT,ci).replace(he.PCT_ENCODED,Z)),De}function qt(De){return De.replace(/^0*(.*)/,"$1")||"0"}function cn(De,he){var Ve=De.match(he.IPV4ADDRESS)||[],vt=z(Ve,2)[1];return vt?vt.split(".").map(qt).join("."):De}function Wt(De,he){var Ve=De.match(he.IPV6ADDRESS)||[],ct=z(Ve,3),vt=ct[1],tn=ct[2];if(vt){for(var Qt=vt.toLowerCase().split("::").reverse(),Gt=z(Qt,2),Pn=Gt[0],Un=Gt[1],mn=Un?Un.split(":").map(qt):[],Xn=Pn.split(":").map(qt),Ar=he.IPV4ADDRESS.test(Xn[Xn.length-1]),En=Ar?7:8,Fn=Xn.length-En,pn=Array(En),Ke=0;Ke1){var bi=pn.slice(0,Bn.index),vi=pn.slice(Bn.index+Bn.length);ti=bi.join(":")+"::"+vi.join(":")}else ti=pn.join(":");return tn&&(ti+="%"+tn),ti}return De}var _n=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,si=void 0==="".match(/(){0}/)[1];function Zi(De){var he=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Ve={},ct=!1!==he.iri?X:V;"suffix"===he.reference&&(De=(he.scheme?he.scheme+":":"")+"//"+De);var vt=De.match(_n);if(vt){si?(Ve.scheme=vt[1],Ve.userinfo=vt[3],Ve.host=vt[4],Ve.port=parseInt(vt[5],10),Ve.path=vt[6]||"",Ve.query=vt[7],Ve.fragment=vt[8],isNaN(Ve.port)&&(Ve.port=vt[5])):(Ve.scheme=vt[1]||void 0,Ve.userinfo=-1!==De.indexOf("@")?vt[3]:void 0,Ve.host=-1!==De.indexOf("//")?vt[4]:void 0,Ve.port=parseInt(vt[5],10),Ve.path=vt[6]||"",Ve.query=-1!==De.indexOf("?")?vt[7]:void 0,Ve.fragment=-1!==De.indexOf("#")?vt[8]:void 0,isNaN(Ve.port)&&(Ve.port=De.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?vt[4]:void 0)),Ve.host&&(Ve.host=Wt(cn(Ve.host,ct),ct)),Ve.reference=void 0!==Ve.scheme||void 0!==Ve.userinfo||void 0!==Ve.host||void 0!==Ve.port||Ve.path||void 0!==Ve.query?void 0===Ve.scheme?"relative":void 0===Ve.fragment?"absolute":"uri":"same-document",he.reference&&"suffix"!==he.reference&&he.reference!==Ve.reference&&(Ve.error=Ve.error||"URI is not a "+he.reference+" reference.");var tn=ri[(he.scheme||Ve.scheme||"").toLowerCase()];if(he.unicodeSupport||tn&&tn.unicodeSupport)kt(Ve,ct);else{if(Ve.host&&(he.domainHost||tn&&tn.domainHost))try{Ve.host=Bi.toASCII(Ve.host.replace(ct.PCT_ENCODED,it).toLowerCase())}catch(Qt){Ve.error=Ve.error||"Host's domain name can not be converted to ASCII via punycode: "+Qt}kt(Ve,V)}tn&&tn.parse&&tn.parse(Ve,he)}else Ve.error=Ve.error||"URI can not be parsed.";return Ve}var Lr=/^\.\.?\//,pr=/^\/\.(\/|$)/,Ii=/^\/\.\.(\/|$)/,Jt=/^\/?(?:.|\n)*?(?=\/|$)/;function xr(De){for(var he=[];De.length;)if(De.match(Lr))De=De.replace(Lr,"");else if(De.match(pr))De=De.replace(pr,"/");else if(De.match(Ii))De=De.replace(Ii,"/"),he.pop();else if("."===De||".."===De)De="";else{var Ve=De.match(Jt);if(!Ve)throw new Error("Unexpected dot segment condition");var ct=Ve[0];De=De.slice(ct.length),he.push(ct)}return he.join("")}function br(De){var he=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},Ve=he.iri?X:V,ct=[],vt=ri[(he.scheme||De.scheme||"").toLowerCase()];if(vt&&vt.serialize&&vt.serialize(De,he),De.host&&!Ve.IPV6ADDRESS.test(De.host)&&(he.domainHost||vt&&vt.domainHost))try{De.host=he.iri?Bi.toUnicode(De.host):Bi.toASCII(De.host.replace(Ve.PCT_ENCODED,it).toLowerCase())}catch(Gt){De.error=De.error||"Host's domain name can not be converted to "+(he.iri?"Unicode":"ASCII")+" via punycode: "+Gt}kt(De,Ve),"suffix"!==he.reference&&De.scheme&&(ct.push(De.scheme),ct.push(":"));var tn=function fr(De,he){var Ve=!1!==he.iri?X:V,ct=[];return void 0!==De.userinfo&&(ct.push(De.userinfo),ct.push("@")),void 0!==De.host&&ct.push(Wt(cn(String(De.host),Ve),Ve).replace(Ve.IPV6ADDRESS,function(vt,tn,Qt){return"["+tn+(Qt?"%25"+Qt:"")+"]"})),("number"==typeof De.port||"string"==typeof De.port)&&(ct.push(":"),ct.push(String(De.port))),ct.length?ct.join(""):void 0}(De,he);if(void 0!==tn&&("suffix"!==he.reference&&ct.push("//"),ct.push(tn),De.path&&"/"!==De.path.charAt(0)&&ct.push("/")),void 0!==De.path){var Qt=De.path;!he.absolutePath&&(!vt||!vt.absolutePath)&&(Qt=xr(Qt)),void 0===tn&&(Qt=Qt.replace(/^\/\//,"/%2F")),ct.push(Qt)}return void 0!==De.query&&(ct.push("?"),ct.push(De.query)),void 0!==De.fragment&&(ct.push("#"),ct.push(De.fragment)),ct.join("")}function Ur(De,he){var Ve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},vt={};return arguments[3]||(De=Zi(br(De,Ve),Ve),he=Zi(br(he,Ve),Ve)),!(Ve=Ve||{}).tolerant&&he.scheme?(vt.scheme=he.scheme,vt.userinfo=he.userinfo,vt.host=he.host,vt.port=he.port,vt.path=xr(he.path||""),vt.query=he.query):(void 0!==he.userinfo||void 0!==he.host||void 0!==he.port?(vt.userinfo=he.userinfo,vt.host=he.host,vt.port=he.port,vt.path=xr(he.path||""),vt.query=he.query):(he.path?("/"===he.path.charAt(0)?vt.path=xr(he.path):(vt.path=void 0===De.userinfo&&void 0===De.host&&void 0===De.port||De.path?De.path?De.path.slice(0,De.path.lastIndexOf("/")+1)+he.path:he.path:"/"+he.path,vt.path=xr(vt.path)),vt.query=he.query):(vt.path=De.path,vt.query=void 0!==he.query?he.query:De.query),vt.userinfo=De.userinfo,vt.host=De.host,vt.port=De.port),vt.scheme=De.scheme),vt.fragment=he.fragment,vt}function Fi(De,he){return De&&De.toString().replace(he&&he.iri?X.PCT_ENCODED:V.PCT_ENCODED,it)}var Fs={scheme:"http",domainHost:!0,parse:function(he,Ve){return he.host||(he.error=he.error||"HTTP URIs must have a host."),he},serialize:function(he,Ve){var ct="https"===String(he.scheme).toLowerCase();return(he.port===(ct?443:80)||""===he.port)&&(he.port=void 0),he.path||(he.path="/"),he}},Yo={scheme:"https",domainHost:Fs.domainHost,parse:Fs.parse,serialize:Fs.serialize};function Xr(De){return"boolean"==typeof De.secure?De.secure:"wss"===String(De.scheme).toLowerCase()}var ls={scheme:"ws",domainHost:!0,parse:function(he,Ve){var ct=he;return ct.secure=Xr(ct),ct.resourceName=(ct.path||"/")+(ct.query?"?"+ct.query:""),ct.path=void 0,ct.query=void 0,ct},serialize:function(he,Ve){if((he.port===(Xr(he)?443:80)||""===he.port)&&(he.port=void 0),"boolean"==typeof he.secure&&(he.scheme=he.secure?"wss":"ws",he.secure=void 0),he.resourceName){var ct=he.resourceName.split("?"),vt=z(ct,2),tn=vt[0],Qt=vt[1];he.path=tn&&"/"!==tn?tn:void 0,he.query=Qt,he.resourceName=void 0}return he.fragment=void 0,he}},po={scheme:"wss",domainHost:ls.domainHost,parse:ls.parse,serialize:ls.serialize},Ac={},et="[A-Za-z0-9\\-\\.\\_\\~\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]",Ye="[0-9A-Fa-f]",Tt=o(o("%[EFef]"+Ye+"%"+Ye+Ye+"%"+Ye+Ye)+"|"+o("%[89A-Fa-f]"+Ye+"%"+Ye+Ye)+"|"+o("%"+Ye+Ye)),ln=j("[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",'[\\"\\\\]'),ei=new RegExp(et,"g"),Qn=new RegExp(Tt,"g"),Xt=new RegExp(j("[^]","[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]","[\\.]",'[\\"]',ln),"g"),Rn=new RegExp(j("[^]",et,"[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"),"g"),oi=Rn;function ji(De){var he=it(De);return he.match(ei)?he:De}var Sr={scheme:"mailto",parse:function(he,Ve){var ct=he,vt=ct.to=ct.path?ct.path.split(","):[];if(ct.path=void 0,ct.query){for(var tn=!1,Qt={},Gt=ct.query.split("&"),Pn=0,Un=Gt.length;Pn{"use strict";const nt=globalThis;function Ee(et){return(nt.__Zone_symbol_prefix||"__zone_symbol__")+et}const o=Object.getOwnPropertyDescriptor,y=Object.defineProperty,Z=Object.getPrototypeOf,U=Object.create,L=Array.prototype.slice,Y="addEventListener",V="removeEventListener",X=Ee(Y),z=Ee(V),G="true",Q="false",ne=Ee("");function re(et,Ye){return Zone.current.wrap(et,Ye)}function me(et,Ye,Tt,rt,Et){return Zone.current.scheduleMacroTask(et,Ye,Tt,rt,Et)}const we=Ee,Be=typeof window<"u",Ie=Be?window:void 0,Ne=Be&&Ie||globalThis,Je="removeAttribute";function He(et,Ye){for(let Tt=et.length-1;Tt>=0;Tt--)"function"==typeof et[Tt]&&(et[Tt]=re(et[Tt],Ye+"_"+Tt));return et}function $e(et){return!et||!1!==et.writable&&!("function"==typeof et.get&&typeof et.set>"u")}const Ge=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,st=!("nw"in Ne)&&typeof Ne.process<"u"&&"[object process]"===Ne.process.toString(),We=!st&&!Ge&&!(!Be||!Ie.HTMLElement),ve=typeof Ne.process<"u"&&"[object process]"===Ne.process.toString()&&!Ge&&!(!Be||!Ie.HTMLElement),fe={},Qe=we("enable_beforeunload"),Te=function(et){if(!(et=et||Ne.event))return;let Ye=fe[et.type];Ye||(Ye=fe[et.type]=we("ON_PROPERTY"+et.type));const Tt=this||et.target||Ne,rt=Tt[Ye];let Et;return We&&Tt===Ie&&"error"===et.type?(Et=rt&&rt.call(this,et.message,et.filename,et.lineno,et.colno,et.error),!0===Et&&et.preventDefault()):(Et=rt&&rt.apply(this,arguments),"beforeunload"===et.type&&Ne[Qe]&&"string"==typeof Et?et.returnValue=Et:null!=Et&&!Et&&et.preventDefault()),Et};function Le(et,Ye,Tt){let rt=o(et,Ye);if(!rt&&Tt&&o(Tt,Ye)&&(rt={enumerable:!0,configurable:!0}),!rt||!rt.configurable)return;const Et=we("on"+Ye+"patched");if(et.hasOwnProperty(Et)&&et[Et])return;delete rt.writable,delete rt.value;const ln=rt.get,ai=rt.set,ei=Ye.slice(2);let Qn=fe[ei];Qn||(Qn=fe[ei]=we("ON_PROPERTY"+ei)),rt.set=function(Xt){let Rn=this;!Rn&&et===Ne&&(Rn=Ne),Rn&&("function"==typeof Rn[Qn]&&Rn.removeEventListener(ei,Te),ai&&ai.call(Rn,null),Rn[Qn]=Xt,"function"==typeof Xt&&Rn.addEventListener(ei,Te,!1))},rt.get=function(){let Xt=this;if(!Xt&&et===Ne&&(Xt=Ne),!Xt)return null;const Rn=Xt[Qn];if(Rn)return Rn;if(ln){let oi=ln.call(this);if(oi)return rt.set.call(this,oi),"function"==typeof Xt[Je]&&Xt.removeAttribute(Ye),oi}return null},y(et,Ye,rt),et[Et]=!0}function pt(et,Ye,Tt){if(Ye)for(let rt=0;rtfunction(ai,ei){const Qn=Tt(ai,ei);return Qn.cbIdx>=0&&"function"==typeof ei[Qn.cbIdx]?me(Qn.name,ei[Qn.cbIdx],Qn,Et):ln.apply(ai,ei)})}function $n(et,Ye){et[we("OriginalDelegate")]=Ye}let Qi=!1,ui=!1;function ri(){if(Qi)return ui;Qi=!0;try{const et=Ie.navigator.userAgent;(-1!==et.indexOf("MSIE ")||-1!==et.indexOf("Trident/")||-1!==et.indexOf("Edge/"))&&(ui=!0)}catch{}return ui}function ci(et){return"function"==typeof et}function it(et){return"number"==typeof et}let kt=!1;if(typeof window<"u")try{const et=Object.defineProperty({},"passive",{get:function(){kt=!0}});window.addEventListener("test",et,et),window.removeEventListener("test",et,et)}catch{kt=!1}const qt={useG:!0},cn={},Wt={},_n=new RegExp("^"+ne+"(\\w+)(true|false)$"),si=we("propagationStopped");function Zi(et,Ye){const Tt=(Ye?Ye(et):et)+Q,rt=(Ye?Ye(et):et)+G,Et=ne+Tt,ln=ne+rt;cn[et]={},cn[et][Q]=Et,cn[et][G]=ln}function fr(et,Ye,Tt,rt){const Et=rt&&rt.add||Y,ln=rt&&rt.rm||V,ai=rt&&rt.listeners||"eventListeners",ei=rt&&rt.rmAll||"removeAllListeners",Qn=we(Et),Xt="."+Et+":",Rn="prependListener",oi="."+Rn+":",ji=function(De,he,Ve){if(De.isRemoved)return;const ct=De.callback;let vt;"object"==typeof ct&&ct.handleEvent&&(De.callback=Qt=>ct.handleEvent(Qt),De.originalDelegate=ct);try{De.invoke(De,he,[Ve])}catch(Qt){vt=Qt}const tn=De.options;return tn&&"object"==typeof tn&&tn.once&&he[ln].call(he,Ve.type,De.originalDelegate?De.originalDelegate:De.callback,tn),vt};function Sr(De,he,Ve){if(!(he=he||et.event))return;const ct=De||he.target||et,vt=ct[cn[he.type][Ve?G:Q]];if(vt){const tn=[];if(1===vt.length){const Qt=ji(vt[0],ct,he);Qt&&tn.push(Qt)}else{const Qt=vt.slice();for(let Gt=0;Gt{throw Gt})}}}const Kr=function(De){return Sr(this,De,!1)},Vr=function(De){return Sr(this,De,!0)};function Ei(De,he){if(!De)return!1;let Ve=!0;he&&void 0!==he.useG&&(Ve=he.useG);const ct=he&&he.vh;let vt=!0;he&&void 0!==he.chkDup&&(vt=he.chkDup);let tn=!1;he&&void 0!==he.rt&&(tn=he.rt);let Qt=De;for(;Qt&&!Qt.hasOwnProperty(Et);)Qt=Z(Qt);if(!Qt&&De[Et]&&(Qt=De),!Qt||Qt[Qn])return!1;const Gt=he&&he.eventNameToString,Pn={},Un=Qt[Qn]=Qt[Et],mn=Qt[we(ln)]=Qt[ln],Xn=Qt[we(ai)]=Qt[ai],Ar=Qt[we(ei)]=Qt[ei];let En;he&&he.prepend&&(En=Qt[we(he.prepend)]=Qt[he.prepend]);const bi=Ve?function(St){if(!Pn.isExisting)return Un.call(Pn.target,Pn.eventName,Pn.capture?Vr:Kr,Pn.options)}:function(St){return Un.call(Pn.target,Pn.eventName,St.invoke,Pn.options)},vi=Ve?function(St){if(!St.isRemoved){const nn=cn[St.eventName];let ni;nn&&(ni=nn[St.capture?G:Q]);const li=ni&&St.target[ni];if(li)for(let Gn=0;GnSi.zone.cancelTask(Si);St.call(il,"abort",Lo,{once:!0}),Si.removeAbortListener=()=>il.removeEventListener("abort",Lo)}return Pn.target=null,zn&&(zn.taskData=null),ia&&(Pn.options.once=!0),!kt&&"boolean"==typeof Si.options||(Si.options=Zo),Si.target=Ui,Si.capture=No,Si.eventName=Ki,vr&&(Si.originalDelegate=Cr),pi?yo.unshift(Si):yo.push(Si),Gn?Ui:void 0}};return Qt[Et]=on(Un,Xt,bi,vi,tn),En&&(Qt[Rn]=on(En,oi,function(St){return En.call(Pn.target,Pn.eventName,St.invoke,Pn.options)},vi,tn,!0)),Qt[ln]=function(){const St=this||et;let nn=arguments[0];he&&he.transferEventName&&(nn=he.transferEventName(nn));const ni=arguments[2],li=!!ni&&("boolean"==typeof ni||ni.capture),Gn=arguments[1];if(!Gn)return mn.apply(this,arguments);if(ct&&!ct(mn,Gn,St,arguments))return;const pi=cn[nn];let Ui;pi&&(Ui=pi[li?G:Q]);const Ki=Ui&&St[Ui];if(Ki)for(let Cr=0;Crfunction(Et,ln){Et[si]=!0,rt&&rt.apply(Et,ln)})}const Jt=we("zoneTask");function xr(et,Ye,Tt,rt){let Et=null,ln=null;Tt+=rt;const ai={};function ei(Xt){const Rn=Xt.data;Rn.args[0]=function(){return Xt.invoke.apply(this,arguments)};const oi=Et.apply(et,Rn.args);return it(oi)?Rn.handleId=oi:(Rn.handle=oi,Rn.isRefreshable=ci(oi.refresh)),Xt}function Qn(Xt){const{handle:Rn,handleId:oi}=Xt.data;return ln.call(et,Rn??oi)}Et=Rt(et,Ye+=rt,Xt=>function(Rn,oi){if(ci(oi[0])){const ji={isRefreshable:!1,isPeriodic:"Interval"===rt,delay:"Timeout"===rt||"Interval"===rt?oi[1]||0:void 0,args:oi},Sr=oi[0];oi[0]=function(){try{return Sr.apply(this,arguments)}finally{const{handle:Ve,handleId:ct,isPeriodic:vt,isRefreshable:tn}=ji;!vt&&!tn&&(ct?delete ai[ct]:Ve&&(Ve[Jt]=null))}};const Kr=me(Ye,oi[0],ji,ei,Qn);if(!Kr)return Kr;const{handleId:Vr,handle:Ei,isRefreshable:Hr,isPeriodic:De}=Kr.data;if(Vr)ai[Vr]=Kr;else if(Ei&&(Ei[Jt]=Kr,Hr&&!De)){const he=Ei.refresh;Ei.refresh=function(){const{zone:Ve,state:ct}=Kr;return"notScheduled"===ct?(Kr._state="scheduled",Ve._updateTaskCount(Kr,1)):"running"===ct&&(Kr._state="scheduling"),he.call(this)}}return Ei??Vr??Kr}return Xt.apply(et,oi)}),ln=Rt(et,Tt,Xt=>function(Rn,oi){const ji=oi[0];let Sr;it(ji)?(Sr=ai[ji],delete ai[ji]):(Sr=ji?.[Jt],Sr?ji[Jt]=null:Sr=ji),Sr?.type?Sr.cancelFn&&Sr.zone.cancelTask(Sr):Xt.apply(et,oi)})}function Il(et,Ye,Tt){if(!Tt||0===Tt.length)return Ye;const rt=Tt.filter(ln=>ln.target===et);if(!rt||0===rt.length)return Ye;const Et=rt[0].ignoreProperties;return Ye.filter(ln=>-1===Et.indexOf(ln))}function as(et,Ye,Tt,rt){et&&pt(et,Il(et,Ye,Tt),rt)}function Li(et){return Object.getOwnPropertyNames(et).filter(Ye=>Ye.startsWith("on")&&Ye.length>2).map(Ye=>Ye.substring(2))}function ls(et,Ye,Tt,rt,Et){const ln=Zone.__symbol__(rt);if(Ye[ln])return;const ai=Ye[ln]=Ye[rt];Ye[rt]=function(ei,Qn,Xt){return Qn&&Qn.prototype&&Et.forEach(function(Rn){const oi=`${Tt}.${rt}::`+Rn,ji=Qn.prototype;try{if(ji.hasOwnProperty(Rn)){const Sr=et.ObjectGetOwnPropertyDescriptor(ji,Rn);Sr&&Sr.value?(Sr.value=et.wrapWithCurrentZone(Sr.value,oi),et._redefineProperty(Qn.prototype,Rn,Sr)):ji[Rn]&&(ji[Rn]=et.wrapWithCurrentZone(ji[Rn],oi))}else ji[Rn]&&(ji[Rn]=et.wrapWithCurrentZone(ji[Rn],oi))}catch{}}),ai.call(Ye,ei,Qn,Xt)},et.attachOriginToPatched(Ye[rt],ai)}const Ji=function j(){const et=globalThis,Ye=!0===et[Ee("forceDuplicateZoneCheck")];if(et.Zone&&(Ye||"function"!=typeof et.Zone.__symbol__))throw new Error("Zone already loaded.");return et.Zone??=function v(){const et=nt.performance;function Ye(Fn){et&&et.mark&&et.mark(Fn)}function Tt(Fn,pn){et&&et.measure&&et.measure(Fn,pn)}Ye("Zone");let rt=(()=>{class Fn{static{this.__symbol__=Ee}static assertZonePatched(){if(nt.Promise!==Pn.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let Ke=Fn.current;for(;Ke.parent;)Ke=Ke.parent;return Ke}static get current(){return mn.zone}static get currentTask(){return Xn}static __load_patch(Ke,gt,Bn=!1){if(Pn.hasOwnProperty(Ke)){const ti=!0===nt[Ee("forceDuplicateZoneCheck")];if(!Bn&&ti)throw Error("Already loaded patch: "+Ke)}else if(!nt["__Zone_disable_"+Ke]){const ti="Zone:"+Ke;Ye(ti),Pn[Ke]=gt(nt,Fn,Un),Tt(ti,ti)}}get parent(){return this._parent}get name(){return this._name}constructor(Ke,gt){this._parent=Ke,this._name=gt?gt.name||"unnamed":"",this._properties=gt&>.properties||{},this._zoneDelegate=new ln(this,this._parent&&this._parent._zoneDelegate,gt)}get(Ke){const gt=this.getZoneWith(Ke);if(gt)return gt._properties[Ke]}getZoneWith(Ke){let gt=this;for(;gt;){if(gt._properties.hasOwnProperty(Ke))return gt;gt=gt._parent}return null}fork(Ke){if(!Ke)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,Ke)}wrap(Ke,gt){if("function"!=typeof Ke)throw new Error("Expecting function got: "+Ke);const Bn=this._zoneDelegate.intercept(this,Ke,gt),ti=this;return function(){return ti.runGuarded(Bn,this,arguments,gt)}}run(Ke,gt,Bn,ti){mn={parent:mn,zone:this};try{return this._zoneDelegate.invoke(this,Ke,gt,Bn,ti)}finally{mn=mn.parent}}runGuarded(Ke,gt=null,Bn,ti){mn={parent:mn,zone:this};try{try{return this._zoneDelegate.invoke(this,Ke,gt,Bn,ti)}catch(bi){if(this._zoneDelegate.handleError(this,bi))throw bi}}finally{mn=mn.parent}}runTask(Ke,gt,Bn){if(Ke.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(Ke.zone||Ei).name+"; Execution: "+this.name+")");const ti=Ke,{type:bi,data:{isPeriodic:vi=!1,isRefreshable:eo=!1}={}}=Ke;if(Ke.state===Hr&&(bi===Gt||bi===Qt))return;const Ao=Ke.state!=Ve;Ao&&ti._transitionTo(Ve,he);const To=Xn;Xn=ti,mn={parent:mn,zone:this};try{bi==Qt&&Ke.data&&!vi&&!eo&&(Ke.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,ti,gt,Bn)}catch(Sn){if(this._zoneDelegate.handleError(this,Sn))throw Sn}}finally{const Sn=Ke.state;if(Sn!==Hr&&Sn!==vt)if(bi==Gt||vi||eo&&Sn===De)Ao&&ti._transitionTo(he,Ve,De);else{const dn=ti._zoneDelegates;this._updateTaskCount(ti,-1),Ao&&ti._transitionTo(Hr,Ve,Hr),eo&&(ti._zoneDelegates=dn)}mn=mn.parent,Xn=To}}scheduleTask(Ke){if(Ke.zone&&Ke.zone!==this){let Bn=this;for(;Bn;){if(Bn===Ke.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${Ke.zone.name}`);Bn=Bn.parent}}Ke._transitionTo(De,Hr);const gt=[];Ke._zoneDelegates=gt,Ke._zone=this;try{Ke=this._zoneDelegate.scheduleTask(this,Ke)}catch(Bn){throw Ke._transitionTo(vt,De,Hr),this._zoneDelegate.handleError(this,Bn),Bn}return Ke._zoneDelegates===gt&&this._updateTaskCount(Ke,1),Ke.state==De&&Ke._transitionTo(he,De),Ke}scheduleMicroTask(Ke,gt,Bn,ti){return this.scheduleTask(new ai(tn,Ke,gt,Bn,ti,void 0))}scheduleMacroTask(Ke,gt,Bn,ti,bi){return this.scheduleTask(new ai(Qt,Ke,gt,Bn,ti,bi))}scheduleEventTask(Ke,gt,Bn,ti,bi){return this.scheduleTask(new ai(Gt,Ke,gt,Bn,ti,bi))}cancelTask(Ke){if(Ke.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(Ke.zone||Ei).name+"; Execution: "+this.name+")");if(Ke.state===he||Ke.state===Ve){Ke._transitionTo(ct,he,Ve);try{this._zoneDelegate.cancelTask(this,Ke)}catch(gt){throw Ke._transitionTo(vt,ct),this._zoneDelegate.handleError(this,gt),gt}return this._updateTaskCount(Ke,-1),Ke._transitionTo(Hr,ct),Ke.runCount=-1,Ke}}_updateTaskCount(Ke,gt){const Bn=Ke._zoneDelegates;-1==gt&&(Ke._zoneDelegates=null);for(let ti=0;tiFn.hasTask(Ke,gt),onScheduleTask:(Fn,pn,Ke,gt)=>Fn.scheduleTask(Ke,gt),onInvokeTask:(Fn,pn,Ke,gt,Bn,ti)=>Fn.invokeTask(Ke,gt,Bn,ti),onCancelTask:(Fn,pn,Ke,gt)=>Fn.cancelTask(Ke,gt)};class ln{get zone(){return this._zone}constructor(pn,Ke,gt){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this._zone=pn,this._parentDelegate=Ke,this._forkZS=gt&&(gt&>.onFork?gt:Ke._forkZS),this._forkDlgt=gt&&(gt.onFork?Ke:Ke._forkDlgt),this._forkCurrZone=gt&&(gt.onFork?this._zone:Ke._forkCurrZone),this._interceptZS=gt&&(gt.onIntercept?gt:Ke._interceptZS),this._interceptDlgt=gt&&(gt.onIntercept?Ke:Ke._interceptDlgt),this._interceptCurrZone=gt&&(gt.onIntercept?this._zone:Ke._interceptCurrZone),this._invokeZS=gt&&(gt.onInvoke?gt:Ke._invokeZS),this._invokeDlgt=gt&&(gt.onInvoke?Ke:Ke._invokeDlgt),this._invokeCurrZone=gt&&(gt.onInvoke?this._zone:Ke._invokeCurrZone),this._handleErrorZS=gt&&(gt.onHandleError?gt:Ke._handleErrorZS),this._handleErrorDlgt=gt&&(gt.onHandleError?Ke:Ke._handleErrorDlgt),this._handleErrorCurrZone=gt&&(gt.onHandleError?this._zone:Ke._handleErrorCurrZone),this._scheduleTaskZS=gt&&(gt.onScheduleTask?gt:Ke._scheduleTaskZS),this._scheduleTaskDlgt=gt&&(gt.onScheduleTask?Ke:Ke._scheduleTaskDlgt),this._scheduleTaskCurrZone=gt&&(gt.onScheduleTask?this._zone:Ke._scheduleTaskCurrZone),this._invokeTaskZS=gt&&(gt.onInvokeTask?gt:Ke._invokeTaskZS),this._invokeTaskDlgt=gt&&(gt.onInvokeTask?Ke:Ke._invokeTaskDlgt),this._invokeTaskCurrZone=gt&&(gt.onInvokeTask?this._zone:Ke._invokeTaskCurrZone),this._cancelTaskZS=gt&&(gt.onCancelTask?gt:Ke._cancelTaskZS),this._cancelTaskDlgt=gt&&(gt.onCancelTask?Ke:Ke._cancelTaskDlgt),this._cancelTaskCurrZone=gt&&(gt.onCancelTask?this._zone:Ke._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const Bn=gt&>.onHasTask;(Bn||Ke&&Ke._hasTaskZS)&&(this._hasTaskZS=Bn?gt:Et,this._hasTaskDlgt=Ke,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=this._zone,gt.onScheduleTask||(this._scheduleTaskZS=Et,this._scheduleTaskDlgt=Ke,this._scheduleTaskCurrZone=this._zone),gt.onInvokeTask||(this._invokeTaskZS=Et,this._invokeTaskDlgt=Ke,this._invokeTaskCurrZone=this._zone),gt.onCancelTask||(this._cancelTaskZS=Et,this._cancelTaskDlgt=Ke,this._cancelTaskCurrZone=this._zone))}fork(pn,Ke){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,pn,Ke):new rt(pn,Ke)}intercept(pn,Ke,gt){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,pn,Ke,gt):Ke}invoke(pn,Ke,gt,Bn,ti){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,pn,Ke,gt,Bn,ti):Ke.apply(gt,Bn)}handleError(pn,Ke){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,pn,Ke)}scheduleTask(pn,Ke){let gt=Ke;if(this._scheduleTaskZS)this._hasTaskZS&>._zoneDelegates.push(this._hasTaskDlgtOwner),gt=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,pn,Ke),gt||(gt=Ke);else if(Ke.scheduleFn)Ke.scheduleFn(Ke);else{if(Ke.type!=tn)throw new Error("Task is missing scheduleFn.");Kr(Ke)}return gt}invokeTask(pn,Ke,gt,Bn){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,pn,Ke,gt,Bn):Ke.callback.apply(gt,Bn)}cancelTask(pn,Ke){let gt;if(this._cancelTaskZS)gt=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,pn,Ke);else{if(!Ke.cancelFn)throw Error("Task is not cancelable");gt=Ke.cancelFn(Ke)}return gt}hasTask(pn,Ke){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,pn,Ke)}catch(gt){this.handleError(pn,gt)}}_updateTaskCount(pn,Ke){const gt=this._taskCounts,Bn=gt[pn],ti=gt[pn]=Bn+Ke;if(ti<0)throw new Error("More tasks executed then were scheduled.");0!=Bn&&0!=ti||this.hasTask(this._zone,{microTask:gt.microTask>0,macroTask:gt.macroTask>0,eventTask:gt.eventTask>0,change:pn})}}class ai{constructor(pn,Ke,gt,Bn,ti,bi){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=pn,this.source=Ke,this.data=Bn,this.scheduleFn=ti,this.cancelFn=bi,!gt)throw new Error("callback is not defined");this.callback=gt;const vi=this;this.invoke=pn===Gt&&Bn&&Bn.useG?ai.invokeTask:function(){return ai.invokeTask.call(nt,vi,this,arguments)}}static invokeTask(pn,Ke,gt){pn||(pn=this),Ar++;try{return pn.runCount++,pn.zone.runTask(pn,Ke,gt)}finally{1==Ar&&Vr(),Ar--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(Hr,De)}_transitionTo(pn,Ke,gt){if(this._state!==Ke&&this._state!==gt)throw new Error(`${this.type} '${this.source}': can not transition to '${pn}', expecting state '${Ke}'${gt?" or '"+gt+"'":""}, was '${this._state}'.`);this._state=pn,pn==Hr&&(this._zoneDelegates=null)}toString(){return this.data&&typeof this.data.handleId<"u"?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const ei=Ee("setTimeout"),Qn=Ee("Promise"),Xt=Ee("then");let ji,Rn=[],oi=!1;function Sr(Fn){if(ji||nt[Qn]&&(ji=nt[Qn].resolve(0)),ji){let pn=ji[Xt];pn||(pn=ji.then),pn.call(ji,Fn)}else nt[ei](Fn,0)}function Kr(Fn){0===Ar&&0===Rn.length&&Sr(Vr),Fn&&Rn.push(Fn)}function Vr(){if(!oi){for(oi=!0;Rn.length;){const Fn=Rn;Rn=[];for(let pn=0;pnmn,onUnhandledError:En,microtaskDrainDone:En,scheduleMicroTask:Kr,showUncaughtError:()=>!rt[Ee("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:En,patchMethod:()=>En,bindArguments:()=>[],patchThen:()=>En,patchMacroTask:()=>En,patchEventPrototype:()=>En,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>En,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>En,wrapWithCurrentZone:()=>En,filterProperties:()=>[],attachOriginToPatched:()=>En,_redefineProperty:()=>En,patchCallbacks:()=>En,nativeScheduleMicroTask:Sr};let mn={parent:null,zone:new rt(null,null)},Xn=null,Ar=0;function En(){}return Tt("Zone","Zone"),rt}(),et.Zone}();(function Ac(et){(function Yo(et){et.__load_patch("ZoneAwarePromise",(Ye,Tt,rt)=>{const Et=Object.getOwnPropertyDescriptor,ln=Object.defineProperty,ei=rt.symbol,Qn=[],Xt=!1!==Ye[ei("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],Rn=ei("Promise"),oi=ei("then"),ji="__creationTrace__";rt.onUnhandledError=dn=>{if(rt.showUncaughtError()){const on=dn&&dn.rejection;on?console.error("Unhandled Promise rejection:",on instanceof Error?on.message:on,"; Zone:",dn.zone.name,"; Task:",dn.task&&dn.task.source,"; Value:",on,on instanceof Error?on.stack:void 0):console.error(dn)}},rt.microtaskDrainDone=()=>{for(;Qn.length;){const dn=Qn.shift();try{dn.zone.runGuarded(()=>{throw dn.throwOriginal?dn.rejection:dn})}catch(on){Kr(on)}}};const Sr=ei("unhandledPromiseRejectionHandler");function Kr(dn){rt.onUnhandledError(dn);try{const on=Tt[Sr];"function"==typeof on&&on.call(this,dn)}catch{}}function Vr(dn){return dn&&dn.then}function Ei(dn){return dn}function Hr(dn){return vi.reject(dn)}const De=ei("state"),he=ei("value"),Ve=ei("finally"),ct=ei("parentPromiseValue"),vt=ei("parentPromiseState"),tn="Promise.then",Qt=null,Gt=!0,Pn=!1,Un=0;function mn(dn,on){return St=>{try{Fn(dn,on,St)}catch(nn){Fn(dn,!1,nn)}}}const Xn=function(){let dn=!1;return function(St){return function(){dn||(dn=!0,St.apply(null,arguments))}}},Ar="Promise resolved with itself",En=ei("currentTaskTrace");function Fn(dn,on,St){const nn=Xn();if(dn===St)throw new TypeError(Ar);if(dn[De]===Qt){let ni=null;try{("object"==typeof St||"function"==typeof St)&&(ni=St&&St.then)}catch(li){return nn(()=>{Fn(dn,!1,li)})(),dn}if(on!==Pn&&St instanceof vi&&St.hasOwnProperty(De)&&St.hasOwnProperty(he)&&St[De]!==Qt)Ke(St),Fn(dn,St[De],St[he]);else if(on!==Pn&&"function"==typeof ni)try{ni.call(St,nn(mn(dn,on)),nn(mn(dn,!1)))}catch(li){nn(()=>{Fn(dn,!1,li)})()}else{dn[De]=on;const li=dn[he];if(dn[he]=St,dn[Ve]===Ve&&on===Gt&&(dn[De]=dn[vt],dn[he]=dn[ct]),on===Pn&&St instanceof Error){const Gn=Tt.currentTask&&Tt.currentTask.data&&Tt.currentTask.data[ji];Gn&&ln(St,En,{configurable:!0,enumerable:!1,writable:!0,value:Gn})}for(let Gn=0;Gn{try{const pi=dn[he],Ui=!!St&&Ve===St[Ve];Ui&&(St[ct]=pi,St[vt]=li);const Ki=on.run(Gn,void 0,Ui&&Gn!==Hr&&Gn!==Ei?[]:[pi]);Fn(St,!0,Ki)}catch(pi){Fn(St,!1,pi)}},St)}const ti=function(){},bi=Ye.AggregateError;class vi{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(on){return on instanceof vi?on:Fn(new this(null),Gt,on)}static reject(on){return Fn(new this(null),Pn,on)}static withResolvers(){const on={};return on.promise=new vi((St,nn)=>{on.resolve=St,on.reject=nn}),on}static any(on){if(!on||"function"!=typeof on[Symbol.iterator])return Promise.reject(new bi([],"All promises were rejected"));const St=[];let nn=0;try{for(let Gn of on)nn++,St.push(vi.resolve(Gn))}catch{return Promise.reject(new bi([],"All promises were rejected"))}if(0===nn)return Promise.reject(new bi([],"All promises were rejected"));let ni=!1;const li=[];return new vi((Gn,pi)=>{for(let Ui=0;Ui{ni||(ni=!0,Gn(Ki))},Ki=>{li.push(Ki),nn--,0===nn&&(ni=!0,pi(new bi(li,"All promises were rejected")))})})}static race(on){let St,nn,ni=new this((pi,Ui)=>{St=pi,nn=Ui});function li(pi){St(pi)}function Gn(pi){nn(pi)}for(let pi of on)Vr(pi)||(pi=this.resolve(pi)),pi.then(li,Gn);return ni}static all(on){return vi.allWithCallback(on)}static allSettled(on){return(this&&this.prototype instanceof vi?this:vi).allWithCallback(on,{thenCallback:nn=>({status:"fulfilled",value:nn}),errorCallback:nn=>({status:"rejected",reason:nn})})}static allWithCallback(on,St){let nn,ni,li=new this((Ki,Cr)=>{nn=Ki,ni=Cr}),Gn=2,pi=0;const Ui=[];for(let Ki of on){Vr(Ki)||(Ki=this.resolve(Ki));const Cr=pi;try{Ki.then(vr=>{Ui[Cr]=St?St.thenCallback(vr):vr,Gn--,0===Gn&&nn(Ui)},vr=>{St?(Ui[Cr]=St.errorCallback(vr),Gn--,0===Gn&&nn(Ui)):ni(vr)})}catch(vr){ni(vr)}Gn++,pi++}return Gn-=2,0===Gn&&nn(Ui),li}constructor(on){const St=this;if(!(St instanceof vi))throw new Error("Must be an instanceof Promise.");St[De]=Qt,St[he]=[];try{const nn=Xn();on&&on(nn(mn(St,Gt)),nn(mn(St,Pn)))}catch(nn){Fn(St,!1,nn)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return vi}then(on,St){let nn=this.constructor?.[Symbol.species];(!nn||"function"!=typeof nn)&&(nn=this.constructor||vi);const ni=new nn(ti),li=Tt.current;return this[De]==Qt?this[he].push(li,ni,on,St):gt(this,li,ni,on,St),ni}catch(on){return this.then(null,on)}finally(on){let St=this.constructor?.[Symbol.species];(!St||"function"!=typeof St)&&(St=vi);const nn=new St(ti);nn[Ve]=Ve;const ni=Tt.current;return this[De]==Qt?this[he].push(ni,nn,on,on):gt(this,ni,nn,on,on),nn}}vi.resolve=vi.resolve,vi.reject=vi.reject,vi.race=vi.race,vi.all=vi.all;const eo=Ye[Rn]=Ye.Promise;Ye.Promise=vi;const Ao=ei("thenPatched");function To(dn){const on=dn.prototype,St=Et(on,"then");if(St&&(!1===St.writable||!St.configurable))return;const nn=on.then;on[oi]=nn,dn.prototype.then=function(ni,li){return new vi((pi,Ui)=>{nn.call(this,pi,Ui)}).then(ni,li)},dn[Ao]=!0}return rt.patchThen=To,eo&&(To(eo),Rt(Ye,"fetch",dn=>function Sn(dn){return function(on,St){let nn=dn.apply(on,St);if(nn instanceof vi)return nn;let ni=nn.constructor;return ni[Ao]||To(ni),nn}}(dn))),Promise[Tt.__symbol__("uncaughtPromiseErrors")]=Qn,vi})})(et),function Xr(et){et.__load_patch("toString",Ye=>{const Tt=Function.prototype.toString,rt=we("OriginalDelegate"),Et=we("Promise"),ln=we("Error"),ai=function(){if("function"==typeof this){const Rn=this[rt];if(Rn)return"function"==typeof Rn?Tt.call(Rn):Object.prototype.toString.call(Rn);if(this===Promise){const oi=Ye[Et];if(oi)return Tt.call(oi)}if(this===Error){const oi=Ye[ln];if(oi)return Tt.call(oi)}}return Tt.call(this)};ai[rt]=Tt,Function.prototype.toString=ai;const ei=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":ei.call(this)}})}(et),function po(et){et.__load_patch("util",(Ye,Tt,rt)=>{const Et=Li(Ye);rt.patchOnProperties=pt,rt.patchMethod=Rt,rt.bindArguments=He,rt.patchMacroTask=fn;const ln=Tt.__symbol__("BLACK_LISTED_EVENTS"),ai=Tt.__symbol__("UNPATCHED_EVENTS");Ye[ai]&&(Ye[ln]=Ye[ai]),Ye[ln]&&(Tt[ln]=Tt[ai]=Ye[ln]),rt.patchEventPrototype=pr,rt.patchEventTarget=fr,rt.isIEOrEdge=ri,rt.ObjectDefineProperty=y,rt.ObjectGetOwnPropertyDescriptor=o,rt.ObjectCreate=U,rt.ArraySlice=L,rt.patchClass=Nt,rt.wrapWithCurrentZone=re,rt.filterProperties=Il,rt.attachOriginToPatched=$n,rt._redefineProperty=Object.defineProperty,rt.patchCallbacks=ls,rt.getGlobalObjects=()=>({globalSources:Wt,zoneSymbolEventNames:cn,eventNames:Et,isBrowser:We,isMix:ve,isNode:st,TRUE_STR:G,FALSE_STR:Q,ZONE_SYMBOL_PREFIX:ne,ADD_EVENT_LISTENER_STR:Y,REMOVE_EVENT_LISTENER_STR:V})})}(et)})(Ji),function Fs(et){et.__load_patch("legacy",Ye=>{const Tt=Ye[et.__symbol__("legacyPatch")];Tt&&Tt()}),et.__load_patch("timers",Ye=>{const rt="clear";xr(Ye,"set",rt,"Timeout"),xr(Ye,"set",rt,"Interval"),xr(Ye,"set",rt,"Immediate")}),et.__load_patch("requestAnimationFrame",Ye=>{xr(Ye,"request","cancel","AnimationFrame"),xr(Ye,"mozRequest","mozCancel","AnimationFrame"),xr(Ye,"webkitRequest","webkitCancel","AnimationFrame")}),et.__load_patch("blocking",(Ye,Tt)=>{const rt=["alert","prompt","confirm"];for(let Et=0;Etfunction(Xt,Rn){return Tt.current.run(ai,Ye,Rn,Qn)})}),et.__load_patch("EventTarget",(Ye,Tt,rt)=>{(function Jr(et,Ye){Ye.patchEventPrototype(et,Ye)})(Ye,rt),function Ur(et,Ye){if(Zone[Ye.symbol("patchEventTarget")])return;const{eventNames:Tt,zoneSymbolEventNames:rt,TRUE_STR:Et,FALSE_STR:ln,ZONE_SYMBOL_PREFIX:ai}=Ye.getGlobalObjects();for(let Qn=0;Qn{Nt("MutationObserver"),Nt("WebKitMutationObserver")}),et.__load_patch("IntersectionObserver",(Ye,Tt,rt)=>{Nt("IntersectionObserver")}),et.__load_patch("FileReader",(Ye,Tt,rt)=>{Nt("FileReader")}),et.__load_patch("on_property",(Ye,Tt,rt)=>{!function Fi(et,Ye){if(st&&!ve||Zone[et.symbol("patchEvents")])return;const Tt=Ye.__Zone_ignore_on_properties;let rt=[];if(We){const Et=window;rt=rt.concat(["Document","SVGElement","Element","HTMLElement","HTMLBodyElement","HTMLMediaElement","HTMLFrameSetElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement","Worker"]);const ln=function Bi(){try{const et=Ie.navigator.userAgent;if(-1!==et.indexOf("MSIE ")||-1!==et.indexOf("Trident/"))return!0}catch{}return!1}()?[{target:Et,ignoreProperties:["error"]}]:[];as(Et,Li(Et),Tt&&Tt.concat(ln),Z(Et))}rt=rt.concat(["XMLHttpRequest","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","WebSocket"]);for(let Et=0;Et{!function br(et,Ye){const{isBrowser:Tt,isMix:rt}=Ye.getGlobalObjects();(Tt||rt)&&et.customElements&&"customElements"in et&&Ye.patchCallbacks(Ye,et.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback","formAssociatedCallback","formDisabledCallback","formResetCallback","formStateRestoreCallback"])}(Ye,rt)}),et.__load_patch("XHR",(Ye,Tt)=>{!function Xt(Rn){const oi=Rn.XMLHttpRequest;if(!oi)return;const ji=oi.prototype;let Kr=ji[X],Vr=ji[z];if(!Kr){const Un=Rn.XMLHttpRequestEventTarget;if(Un){const mn=Un.prototype;Kr=mn[X],Vr=mn[z]}}const Ei="readystatechange",Hr="scheduled";function De(Un){const mn=Un.data,Xn=mn.target;Xn[ai]=!1,Xn[Qn]=!1;const Ar=Xn[ln];Kr||(Kr=Xn[X],Vr=Xn[z]),Ar&&Vr.call(Xn,Ei,Ar);const En=Xn[ln]=()=>{if(Xn.readyState===Xn.DONE)if(!mn.aborted&&Xn[ai]&&Un.state===Hr){const pn=Xn[Tt.__symbol__("loadfalse")];if(0!==Xn.status&&pn&&pn.length>0){const Ke=Un.invoke;Un.invoke=function(){const gt=Xn[Tt.__symbol__("loadfalse")];for(let Bn=0;Bnfunction(Un,mn){return Un[Et]=0==mn[2],Un[ei]=mn[1],ct.apply(Un,mn)}),tn=we("fetchTaskAborting"),Qt=we("fetchTaskScheduling"),Gt=Rt(ji,"send",()=>function(Un,mn){if(!0===Tt.current[Qt]||Un[Et])return Gt.apply(Un,mn);{const Xn={target:Un,url:Un[ei],isPeriodic:!1,args:mn,aborted:!1},Ar=me("XMLHttpRequest.send",he,Xn,De,Ve);Un&&!0===Un[Qn]&&!Xn.aborted&&Ar.state===Hr&&Ar.invoke()}}),Pn=Rt(ji,"abort",()=>function(Un,mn){const Xn=function Sr(Un){return Un[rt]}(Un);if(Xn&&"string"==typeof Xn.type){if(null==Xn.cancelFn||Xn.data&&Xn.data.aborted)return;Xn.zone.cancelTask(Xn)}else if(!0===Tt.current[tn])return Pn.apply(Un,mn)})}(Ye);const rt=we("xhrTask"),Et=we("xhrSync"),ln=we("xhrListener"),ai=we("xhrScheduled"),ei=we("xhrURL"),Qn=we("xhrErrorBeforeScheduled")}),et.__load_patch("geolocation",Ye=>{Ye.navigator&&Ye.navigator.geolocation&&function qe(et,Ye){const Tt=et.constructor.name;for(let rt=0;rt{const Qn=function(){return ei.apply(this,He(arguments,Tt+"."+Et))};return $n(Qn,ei),Qn})(ln)}}}(Ye.navigator.geolocation,["getCurrentPosition","watchPosition"])}),et.__load_patch("PromiseRejectionEvent",(Ye,Tt)=>{function rt(Et){return function(ln){Lr(Ye,Et).forEach(ei=>{const Qn=Ye.PromiseRejectionEvent;if(Qn){const Xt=new Qn(Et,{promise:ln.promise,reason:ln.rejection});ei.invoke(Xt)}})}}Ye.PromiseRejectionEvent&&(Tt[we("unhandledPromiseRejectionHandler")]=rt("unhandledrejection"),Tt[we("rejectionHandledHandler")]=rt("rejectionhandled"))}),et.__load_patch("queueMicrotask",(Ye,Tt,rt)=>{!function Ii(et,Ye){Ye.patchMethod(et,"queueMicrotask",Tt=>function(rt,Et){Zone.current.scheduleMicroTask("queueMicrotask",Et[0])})}(Ye,rt)})}(Ji)},1190:nt=>{nt.exports="varying highp float vDelta;\nvarying vec2 vUV;\nvarying vec4 vOutgoingDiffuseColor;\nvarying vec4 vOutgoingDiffuseDeltaColor;\nvarying vec3 vWorldNormal;\n\nbool normalPointingUp(const in vec3 normal)\n{\n return normal.y > 0.9;\n}\n\nvoid main() {\n const float minDelta = 0.001;\n bool isTop = normalPointingUp(vWorldNormal);\n \n if (abs(vDelta) > minDelta && (vUV.y > 1.0 - abs(vDelta) || isTop))\n {\n gl_FragColor = vOutgoingDiffuseDeltaColor;\n } else {\n gl_FragColor = vOutgoingDiffuseColor;\n }\n}\n"},1812:nt=>{nt.exports="#define saturate(a) clamp( a, 0.0, 1.0)\n#define RECIPROCAL_PI 0.31830988618\n#define PI 3.14159265359\n\nattribute vec3 color;\nattribute vec3 deltaColor;\nattribute highp float delta;\nattribute lowp float isHeight;\n\nvarying vec3 vWorldNormal;\nvarying highp float vDelta;\nvarying vec2 vUV;\nvarying vec4 vOutgoingDiffuseColor;\nvarying vec4 vOutgoingDiffuseDeltaColor;\n\nuniform vec3 ambientLightColor;\n\nstruct DirectionalLight {\n vec3 direction;\n vec3 color;\n};\nuniform DirectionalLight directionalLights[NUM_DIR_LIGHTS];\n\nstruct IncidentLight {\n vec3 color;\n vec3 direction;\n};\n\nstruct ReflectedLight {\n vec3 directDiffuse;\n vec3 directSpecular;\n vec3 indirectDiffuse;\n vec3 indirectSpecular;\n};\n\nvoid getDirectionalDirectLightIrradiance(const in DirectionalLight directionalLight,out IncidentLight directLight) {\n directLight.color = directionalLight.color;\n directLight.direction = directionalLight.direction;\n}\n\nvec3 BRDF_Diffuse_Lambert (const in vec3 diffuseColor) {\n return RECIPROCAL_PI * diffuseColor;\n}\n\nvec3 getAmbientLightIrradiance() {\n return ambientLightColor*PI;\n}\n\nvec3 getBaseOutgoingLight(const vec3 lightFront) {\n ReflectedLight reflectedLight = ReflectedLight(vec3(0.0), vec3(0.0), vec3(0.0), vec3(0.0));\n reflectedLight.indirectDiffuse = getAmbientLightIrradiance();\n reflectedLight.directDiffuse = lightFront;\n return (reflectedLight.directDiffuse + reflectedLight.indirectDiffuse);\n}\n\n// better to calc the colors in vertex as no color interpolation is used, performance improvements will be noticeable \n// once frustum or occlusion culling is properly used\n\nvoid main() \n{\n vec3 adjustedHeightPos = position;\n \n // height position will be adjusted based on camera position in order to prevent \n // z-fighting in different zoom levels when position is positive.\n // preferred multiplication over if branching of the isHeight variable \n // the same line could be written this way : \n //\n // adjustedHeightPos = position\n // if (isHeight>0.5 && cameraPosition.y>0) {\n // adjustedHeightPos.y = position.y + cameraPosition.y/1000.\n // } \n // \n \n adjustedHeightPos.y = position.y + (isHeight*max(0.,cameraPosition.y/1000.));\n\n\tvec4 modelViewPosition = modelViewMatrix * vec4(adjustedHeightPos, 1.0);\n\tgl_Position = projectionMatrix * modelViewPosition;\n\n vec3 worldNormal = vWorldNormal = normalize((modelMatrix * vec4(normal, 0.0)).xyz);\n vec3 normal= normalize(normalMatrix * normal);\n vec3 lightFront = vec3(0.0);\n\n vUV = uv;\n vDelta = abs(delta);\n\n for (int i=0; i < 2; ++i)\n {\n IncidentLight directLight;\n\n getDirectionalDirectLightIrradiance(directionalLights[i],directLight);\n float dotNL = dot(normal, directLight.direction);\n vec3 directLightColor_Diffuse = PI * directLight.color; \n lightFront += saturate(dotNL) * directLightColor_Diffuse;\n }\n\n vec3 baseOutgoingLight = getBaseOutgoingLight(lightFront);\n \n vOutgoingDiffuseColor = vec4(BRDF_Diffuse_Lambert(color.rgb)*baseOutgoingLight,1.0);\n vOutgoingDiffuseDeltaColor = vec4(BRDF_Diffuse_Lambert(deltaColor)*baseOutgoingLight,1.0);\n}\n"},6655:nt=>{nt.exports='precision highp float;\n\t\t\nuniform sampler2D tDiffuse;\nuniform vec2 resolution;\n\t\t\nvarying vec2 vUv;\n\t\t\n// FXAA 3.11 implementation by NVIDIA, ported to WebGL by Agost Biro (biro@archilogic.com)\n\n//----------------------------------------------------------------------------------\n// File: es3-kepler\\FXAA\\assets\\shaders/FXAA_DefaultES.frag\n// SDK Version: v3.00\n// Email: gameworks@nvidia.com\n// Site: http://developer.nvidia.com/\n//\n// Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved.\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// * Neither the name of NVIDIA CORPORATION nor the names of its\n// contributors may be used to endorse or promote products derived\n// from this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS\\\\ AND ANY\n// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\n//----------------------------------------------------------------------------------\n\t\t\n#define FXAA_PC 1\n#define FXAA_GLSL_100 1\n#define FXAA_QUALITY_PRESET 15\n#define FXAA_GATHER4_ALPHA 0\n#define FXAA_GREEN_AS_LUMA 1\n#define FXAA_EARLY_EXIT 1\n\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GLSL_120\n #define FXAA_GLSL_120 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GLSL_130\n #define FXAA_GLSL_130 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_3\n #define FXAA_HLSL_3 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_4\n #define FXAA_HLSL_4 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_HLSL_5\n #define FXAA_HLSL_5 0\n#endif\n/*==========================================================================*/\n#ifndef FXAA_GREEN_AS_LUMA\n //\n // For those using non-linear color,\n // and either not able to get luma in alpha, or not wanting to,\n // this enables FXAA to run using green as a proxy for luma.\n // So with this enabled, no need to pack luma in alpha.\n //\n // This will turn off AA on anything which lacks some amount of green.\n // Pure red and blue or combination of only R and B, will get no AA.\n //\n // Might want to lower the settings for both,\n // fxaaConsoleEdgeThresholdMin\n // fxaaQualityEdgeThresholdMin\n // In order to insure AA does not get turned off on colors\n // which contain a minor amount of green.\n //\n // 1 = On.\n // 0 = Off.\n //\n #define FXAA_GREEN_AS_LUMA 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_EARLY_EXIT\n //\n // Controls algorithm\\s early exit path.\n // On PS3 turning this ON adds 2 cycles to the shader.\n // On 360 turning this OFF adds 10ths of a millisecond to the shader.\n // Turning this off on console will result in a more blurry image.\n // So this defaults to on.\n //\n // 1 = On.\n // 0 = Off.\n //\n #define FXAA_EARLY_EXIT 1\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_DISCARD\n //\n // Only valid for PC OpenGL currently.\n // Probably will not work when FXAA_GREEN_AS_LUMA = 1.\n //\n // 1 = Use discard on pixels which don\\t need AA.\n // For APIs which enable concurrent TEX+ROP from same surface.\n // 0 = Return unchanged color on pixels which don\\t need AA.\n //\n #define FXAA_DISCARD 0\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_FAST_PIXEL_OFFSET\n //\n // Used for GLSL 120 only.\n //\n // 1 = GL API supports fast pixel offsets\n // 0 = do not use fast pixel offsets\n //\n #ifdef GL_EXT_gpu_shader4\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifdef GL_NV_gpu_shader5\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifdef GL_ARB_gpu_shader5\n #define FXAA_FAST_PIXEL_OFFSET 1\n #endif\n #ifndef FXAA_FAST_PIXEL_OFFSET\n #define FXAA_FAST_PIXEL_OFFSET 0\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#ifndef FXAA_GATHER4_ALPHA\n //\n // 1 = API supports gather4 on alpha channel.\n // 0 = API does not support gather4 on alpha channel.\n //\n #if (FXAA_HLSL_5 == 1)\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifdef GL_ARB_gpu_shader5\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifdef GL_NV_gpu_shader5\n #define FXAA_GATHER4_ALPHA 1\n #endif\n #ifndef FXAA_GATHER4_ALPHA\n #define FXAA_GATHER4_ALPHA 0\n #endif\n#endif\n\n\n/*============================================================================\n FXAA QUALITY - TUNING KNOBS\n------------------------------------------------------------------------------\nNOTE the other tuning knobs are now in the shader function inputs!\n============================================================================*/\n#ifndef FXAA_QUALITY_PRESET\n //\n // Choose the quality preset.\n // This needs to be compiled into the shader as it effects code.\n // Best option to include multiple presets is to\n // in each shader define the preset, then include this file.\n //\n // OPTIONS\n // -----------------------------------------------------------------------\n // 10 to 15 - default medium dither (10=fastest, 15=highest quality)\n // 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality)\n // 39 - no dither, very expensive\n //\n // NOTES\n // -----------------------------------------------------------------------\n // 12 = slightly faster then FXAA 3.9 and higher edge quality (default)\n // 13 = about same speed as FXAA 3.9 and better than 12\n // 23 = closest to FXAA 3.9 visually and performance wise\n // _ = the lowest digit is directly related to performance\n // _ = the highest digit is directly related to style\n //\n #define FXAA_QUALITY_PRESET 12\n#endif\n\n\n/*============================================================================\n\n FXAA QUALITY - PRESETS\n\n============================================================================*/\n\n/*============================================================================\n FXAA QUALITY - MEDIUM DITHER PRESETS\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 10)\n #define FXAA_QUALITY_PS 3\n #define FXAA_QUALITY_P0 1.5\n #define FXAA_QUALITY_P1 3.0\n #define FXAA_QUALITY_P2 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 11)\n #define FXAA_QUALITY_PS 4\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 3.0\n #define FXAA_QUALITY_P3 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 12)\n #define FXAA_QUALITY_PS 5\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 4.0\n #define FXAA_QUALITY_P4 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 13)\n #define FXAA_QUALITY_PS 6\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 4.0\n #define FXAA_QUALITY_P5 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 14)\n #define FXAA_QUALITY_PS 7\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 4.0\n #define FXAA_QUALITY_P6 12.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 15)\n #define FXAA_QUALITY_PS 8\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 4.0\n #define FXAA_QUALITY_P7 12.0\n#endif\n\n/*============================================================================\n FXAA QUALITY - LOW DITHER PRESETS\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 20)\n #define FXAA_QUALITY_PS 3\n #define FXAA_QUALITY_P0 1.5\n #define FXAA_QUALITY_P1 2.0\n #define FXAA_QUALITY_P2 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 21)\n #define FXAA_QUALITY_PS 4\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 22)\n #define FXAA_QUALITY_PS 5\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 23)\n #define FXAA_QUALITY_PS 6\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 24)\n #define FXAA_QUALITY_PS 7\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 3.0\n #define FXAA_QUALITY_P6 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 25)\n #define FXAA_QUALITY_PS 8\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 4.0\n #define FXAA_QUALITY_P7 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 26)\n #define FXAA_QUALITY_PS 9\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 4.0\n #define FXAA_QUALITY_P8 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 27)\n #define FXAA_QUALITY_PS 10\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 4.0\n #define FXAA_QUALITY_P9 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 28)\n #define FXAA_QUALITY_PS 11\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 4.0\n #define FXAA_QUALITY_P10 8.0\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_QUALITY_PRESET == 29)\n #define FXAA_QUALITY_PS 12\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 2.0\n #define FXAA_QUALITY_P10 4.0\n #define FXAA_QUALITY_P11 8.0\n#endif\n\n/*============================================================================\n FXAA QUALITY - EXTREME QUALITY\n============================================================================*/\n#if (FXAA_QUALITY_PRESET == 39)\n #define FXAA_QUALITY_PS 12\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.0\n #define FXAA_QUALITY_P2 1.0\n #define FXAA_QUALITY_P3 1.0\n #define FXAA_QUALITY_P4 1.0\n #define FXAA_QUALITY_P5 1.5\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 2.0\n #define FXAA_QUALITY_P10 4.0\n #define FXAA_QUALITY_P11 8.0\n#endif\n\n\n\n/*============================================================================\n\n API PORTING\n\n============================================================================*/\n#if (FXAA_GLSL_100 == 1) || (FXAA_GLSL_120 == 1) || (FXAA_GLSL_130 == 1)\n #define FxaaBool bool\n #define FxaaDiscard discard\n #define FxaaFloat float\n #define FxaaFloat2 vec2\n #define FxaaFloat3 vec3\n #define FxaaFloat4 vec4\n #define FxaaHalf float\n #define FxaaHalf2 vec2\n #define FxaaHalf3 vec3\n #define FxaaHalf4 vec4\n #define FxaaInt2 ivec2\n #define FxaaSat(x) clamp(x, 0.0, 1.0)\n #define FxaaTex sampler2D\n#else\n #define FxaaBool bool\n #define FxaaDiscard clip(-1)\n #define FxaaFloat float\n #define FxaaFloat2 float2\n #define FxaaFloat3 float3\n #define FxaaFloat4 float4\n #define FxaaHalf half\n #define FxaaHalf2 half2\n #define FxaaHalf3 half3\n #define FxaaHalf4 half4\n #define FxaaSat(x) saturate(x)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_100 == 1)\n #define FxaaTexTop(t, p) texture2D(t, p, 0.0)\n #define FxaaTexOff(t, p, o, r) texture2D(t, p + (o * r), 0.0)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_120 == 1)\n // Requires,\n // #version 120\n // And at least,\n // #extension GL_EXT_gpu_shader4 : enable\n // (or set FXAA_FAST_PIXEL_OFFSET 1 to work like DX9)\n #define FxaaTexTop(t, p) texture2DLod(t, p, 0.0)\n #if (FXAA_FAST_PIXEL_OFFSET == 1)\n #define FxaaTexOff(t, p, o, r) texture2DLodOffset(t, p, 0.0, o)\n #else\n #define FxaaTexOff(t, p, o, r) texture2DLod(t, p + (o * r), 0.0)\n #endif\n #if (FXAA_GATHER4_ALPHA == 1)\n // use #extension GL_ARB_gpu_shader5 : enable\n #define FxaaTexAlpha4(t, p) textureGather(t, p, 3)\n #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3)\n #define FxaaTexGreen4(t, p) textureGather(t, p, 1)\n #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1)\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_GLSL_130 == 1)\n // Requires "#version 130" or better\n #define FxaaTexTop(t, p) textureLod(t, p, 0.0)\n #define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o)\n #if (FXAA_GATHER4_ALPHA == 1)\n // use #extension GL_ARB_gpu_shader5 : enable\n #define FxaaTexAlpha4(t, p) textureGather(t, p, 3)\n #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3)\n #define FxaaTexGreen4(t, p) textureGather(t, p, 1)\n #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1)\n #endif\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_3 == 1)\n #define FxaaInt2 float2\n #define FxaaTex sampler2D\n #define FxaaTexTop(t, p) tex2Dlod(t, float4(p, 0.0, 0.0))\n #define FxaaTexOff(t, p, o, r) tex2Dlod(t, float4(p + (o * r), 0, 0))\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_4 == 1)\n #define FxaaInt2 int2\n struct FxaaTex { SamplerState smpl; Texture2D tex; };\n #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0)\n #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o)\n#endif\n/*--------------------------------------------------------------------------*/\n#if (FXAA_HLSL_5 == 1)\n #define FxaaInt2 int2\n struct FxaaTex { SamplerState smpl; Texture2D tex; };\n #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0)\n #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o)\n #define FxaaTexAlpha4(t, p) t.tex.GatherAlpha(t.smpl, p)\n #define FxaaTexOffAlpha4(t, p, o) t.tex.GatherAlpha(t.smpl, p, o)\n #define FxaaTexGreen4(t, p) t.tex.GatherGreen(t.smpl, p)\n #define FxaaTexOffGreen4(t, p, o) t.tex.GatherGreen(t.smpl, p, o)\n#endif\n\n\n/*============================================================================\n GREEN AS LUMA OPTION SUPPORT FUNCTION\n============================================================================*/\n#if (FXAA_GREEN_AS_LUMA == 0)\n FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.w; }\n#else\n FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.y; }\n#endif\n\n/*============================================================================\n\n FXAA3 QUALITY - PC\n\n============================================================================*/\n#if (FXAA_PC == 1)\n/*--------------------------------------------------------------------------*/\nFxaaFloat4 FxaaPixelShader(\n //\n // Use noperspective interpolation here (turn off perspective interpolation).\n // {xy} = center of pixel\n FxaaFloat2 pos,\n //\n // Used only for FXAA Console, and not used on the 360 version.\n // Use noperspective interpolation here (turn off perspective interpolation).\n // {xy_} = upper left of pixel\n // {_zw} = lower right of pixel\n FxaaFloat4 fxaaConsolePosPos,\n //\n // Input color texture.\n // {rgb_} = color in linear or perceptual color space\n // if (FXAA_GREEN_AS_LUMA == 0)\n // {__a} = luma in perceptual color space (not linear)\n FxaaTex tex,\n //\n // Only used on the optimized 360 version of FXAA Console.\n // For everything but 360, just use the same input here as for "tex".\n // For 360, same texture, just alias with a 2nd sampler.\n // This sampler needs to have an exponent bias of -1.\n FxaaTex fxaaConsole360TexExpBiasNegOne,\n //\n // Only used on the optimized 360 version of FXAA Console.\n // For everything but 360, just use the same input here as for "tex".\n // For 360, same texture, just alias with a 3nd sampler.\n // This sampler needs to have an exponent bias of -2.\n FxaaTex fxaaConsole360TexExpBiasNegTwo,\n //\n // Only used on FXAA Quality.\n // This must be from a constant/uniform.\n // {x_} = 1.0/screenWidthInPixels\n // {_y} = 1.0/screenHeightInPixels\n FxaaFloat2 fxaaQualityRcpFrame,\n //\n // Only used on FXAA Console.\n // This must be from a constant/uniform.\n // This effects sub-pixel AA quality and inversely sharpness.\n // Where N ranges between,\n // N = 0.50 (default)\n // N = 0.33 (sharper)\n // {x__} = -N/screenWidthInPixels\n // {_y_} = -N/screenHeightInPixels\n // {_z_} = N/screenWidthInPixels\n // {__w} = N/screenHeightInPixels\n FxaaFloat4 fxaaConsoleRcpFrameOpt,\n //\n // Only used on FXAA Console.\n // Not used on 360, but used on PS3 and PC.\n // This must be from a constant/uniform.\n // {x__} = -2.0/screenWidthInPixels\n // {_y_} = -2.0/screenHeightInPixels\n // {_z_} = 2.0/screenWidthInPixels\n // {__w} = 2.0/screenHeightInPixels\n FxaaFloat4 fxaaConsoleRcpFrameOpt2,\n //\n // Only used on FXAA Console.\n // Only used on 360 in place of fxaaConsoleRcpFrameOpt2.\n // This must be from a constant/uniform.\n // {x__} = 8.0/screenWidthInPixels\n // {_y_} = 8.0/screenHeightInPixels\n // {_z_} = -4.0/screenWidthInPixels\n // {__w} = -4.0/screenHeightInPixels\n FxaaFloat4 fxaaConsole360RcpFrameOpt2,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_SUBPIX define.\n // It is here now to allow easier tuning.\n // Choose the amount of sub-pixel aliasing removal.\n // This can effect sharpness.\n // 1.00 - upper limit (softer)\n // 0.75 - default amount of filtering\n // 0.50 - lower limit (sharper, less sub-pixel aliasing removal)\n // 0.25 - almost off\n // 0.00 - completely off\n FxaaFloat fxaaQualitySubpix,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_EDGE_THRESHOLD define.\n // It is here now to allow easier tuning.\n // The minimum amount of local contrast required to apply algorithm.\n // 0.333 - too little (faster)\n // 0.250 - low quality\n // 0.166 - default\n // 0.125 - high quality\n // 0.063 - overkill (slower)\n FxaaFloat fxaaQualityEdgeThreshold,\n //\n // Only used on FXAA Quality.\n // This used to be the FXAA_QUALITY_EDGE_THRESHOLD_MIN define.\n // It is here now to allow easier tuning.\n // Trims the algorithm from processing darks.\n // 0.0833 - upper limit (default, the start of visible unfiltered edges)\n // 0.0625 - high quality (faster)\n // 0.0312 - visible limit (slower)\n // Special notes when using FXAA_GREEN_AS_LUMA,\n // Likely want to set this to zero.\n // As colors that are mostly not-green\n // will appear very dark in the green channel!\n // Tune by looking at mostly non-green content,\n // then start at zero and increase until aliasing is a problem.\n FxaaFloat fxaaQualityEdgeThresholdMin,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_SHARPNESS define.\n // It is here now to allow easier tuning.\n // This does not effect PS3, as this needs to be compiled in.\n // Use FXAA_CONSOLE_PS3_EDGE_SHARPNESS for PS3.\n // Due to the PS3 being ALU bound,\n // there are only three safe values here: 2 and 4 and 8.\n // These options use the shaders ability to a free *|/ by 2|4|8.\n // For all other platforms can be a non-power of two.\n // 8.0 is sharper (default!!!)\n // 4.0 is softer\n // 2.0 is really soft (good only for vector graphics inputs)\n FxaaFloat fxaaConsoleEdgeSharpness,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_THRESHOLD define.\n // It is here now to allow easier tuning.\n // This does not effect PS3, as this needs to be compiled in.\n // Use FXAA_CONSOLE_PS3_EDGE_THRESHOLD for PS3.\n // Due to the PS3 being ALU bound,\n // there are only two safe values here: 1/4 and 1/8.\n // These options use the shaders ability to a free *|/ by 2|4|8.\n // The console setting has a different mapping than the quality setting.\n // Other platforms can use other values.\n // 0.125 leaves less aliasing, but is softer (default!!!)\n // 0.25 leaves more aliasing, and is sharper\n FxaaFloat fxaaConsoleEdgeThreshold,\n //\n // Only used on FXAA Console.\n // This used to be the FXAA_CONSOLE_EDGE_THRESHOLD_MIN define.\n // It is here now to allow easier tuning.\n // Trims the algorithm from processing darks.\n // The console setting has a different mapping than the quality setting.\n // This only applies when FXAA_EARLY_EXIT is 1.\n // This does not apply to PS3,\n // PS3 was simplified to avoid more shader instructions.\n // 0.06 - faster but more aliasing in darks\n // 0.05 - default\n // 0.04 - slower and less aliasing in darks\n // Special notes when using FXAA_GREEN_AS_LUMA,\n // Likely want to set this to zero.\n // As colors that are mostly not-green\n // will appear very dark in the green channel!\n // Tune by looking at mostly non-green content,\n // then start at zero and increase until aliasing is a problem.\n FxaaFloat fxaaConsoleEdgeThresholdMin,\n //\n // Extra constants for 360 FXAA Console only.\n // Use zeros or anything else for other platforms.\n // These must be in physical constant registers and NOT immediates.\n // Immediates will result in compiler un-optimizing.\n // {xyzw} = float4(1.0, -1.0, 0.25, -0.25)\n FxaaFloat4 fxaaConsole360ConstDir\n) {\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posM;\n posM.x = pos.x;\n posM.y = pos.y;\n #if (FXAA_GATHER4_ALPHA == 1)\n #if (FXAA_DISCARD == 0)\n FxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\n #if (FXAA_GREEN_AS_LUMA == 0)\n #define lumaM rgbyM.w\n #else\n #define lumaM rgbyM.y\n #endif\n #endif\n #if (FXAA_GREEN_AS_LUMA == 0)\n FxaaFloat4 luma4A = FxaaTexAlpha4(tex, posM);\n FxaaFloat4 luma4B = FxaaTexOffAlpha4(tex, posM, FxaaInt2(-1, -1));\n #else\n FxaaFloat4 luma4A = FxaaTexGreen4(tex, posM);\n FxaaFloat4 luma4B = FxaaTexOffGreen4(tex, posM, FxaaInt2(-1, -1));\n #endif\n #if (FXAA_DISCARD == 1)\n #define lumaM luma4A.w\n #endif\n #define lumaE luma4A.z\n #define lumaS luma4A.x\n #define lumaSE luma4A.y\n #define lumaNW luma4B.w\n #define lumaN luma4B.z\n #define lumaW luma4B.x\n #else\n FxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\n #if (FXAA_GREEN_AS_LUMA == 0)\n #define lumaM rgbyM.w\n #else\n #define lumaM rgbyM.y\n #endif\n #if (FXAA_GLSL_100 == 1)\n FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 0.0, 1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0, 0.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 0.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0, 0.0), fxaaQualityRcpFrame.xy));\n #else\n FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0, 1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy));\n #endif\n #endif\n/*--------------------------------------------------------------------------*/\n FxaaFloat maxSM = max(lumaS, lumaM);\n FxaaFloat minSM = min(lumaS, lumaM);\n FxaaFloat maxESM = max(lumaE, maxSM);\n FxaaFloat minESM = min(lumaE, minSM);\n FxaaFloat maxWN = max(lumaN, lumaW);\n FxaaFloat minWN = min(lumaN, lumaW);\n FxaaFloat rangeMax = max(maxWN, maxESM);\n FxaaFloat rangeMin = min(minWN, minESM);\n FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold;\n FxaaFloat range = rangeMax - rangeMin;\n FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled);\n FxaaBool earlyExit = range < rangeMaxClamped;\n/*--------------------------------------------------------------------------*/\n if(earlyExit)\n #if (FXAA_DISCARD == 1)\n FxaaDiscard;\n #else\n return rgbyM;\n #endif\n/*--------------------------------------------------------------------------*/\n #if (FXAA_GATHER4_ALPHA == 0)\n #if (FXAA_GLSL_100 == 1)\n FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0, 1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2( 1.0,-1.0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaFloat2(-1.0, 1.0), fxaaQualityRcpFrame.xy));\n #else\n FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\n #endif\n #else\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\n #endif\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNS = lumaN + lumaS;\n FxaaFloat lumaWE = lumaW + lumaE;\n FxaaFloat subpixRcpRange = 1.0/range;\n FxaaFloat subpixNSWE = lumaNS + lumaWE;\n FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS;\n FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE;\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNESE = lumaNE + lumaSE;\n FxaaFloat lumaNWNE = lumaNW + lumaNE;\n FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE;\n FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE;\n/*--------------------------------------------------------------------------*/\n FxaaFloat lumaNWSW = lumaNW + lumaSW;\n FxaaFloat lumaSWSE = lumaSW + lumaSE;\n FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2);\n FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2);\n FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW;\n FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE;\n FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4;\n FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4;\n/*--------------------------------------------------------------------------*/\n FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE;\n FxaaFloat lengthSign = fxaaQualityRcpFrame.x;\n FxaaBool horzSpan = edgeHorz >= edgeVert;\n FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE;\n/*--------------------------------------------------------------------------*/\n if(!horzSpan) lumaN = lumaW;\n if(!horzSpan) lumaS = lumaE;\n if(horzSpan) lengthSign = fxaaQualityRcpFrame.y;\n FxaaFloat subpixB = (subpixA * (1.0/12.0)) - lumaM;\n/*--------------------------------------------------------------------------*/\n FxaaFloat gradientN = lumaN - lumaM;\n FxaaFloat gradientS = lumaS - lumaM;\n FxaaFloat lumaNN = lumaN + lumaM;\n FxaaFloat lumaSS = lumaS + lumaM;\n FxaaBool pairN = abs(gradientN) >= abs(gradientS);\n FxaaFloat gradient = max(abs(gradientN), abs(gradientS));\n if(pairN) lengthSign = -lengthSign;\n FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange);\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posB;\n posB.x = posM.x;\n posB.y = posM.y;\n FxaaFloat2 offNP;\n offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x;\n offNP.y = ( horzSpan) ? 0.0 : fxaaQualityRcpFrame.y;\n if(!horzSpan) posB.x += lengthSign * 0.5;\n if( horzSpan) posB.y += lengthSign * 0.5;\n/*--------------------------------------------------------------------------*/\n FxaaFloat2 posN;\n posN.x = posB.x - offNP.x * FXAA_QUALITY_P0;\n posN.y = posB.y - offNP.y * FXAA_QUALITY_P0;\n FxaaFloat2 posP;\n posP.x = posB.x + offNP.x * FXAA_QUALITY_P0;\n posP.y = posB.y + offNP.y * FXAA_QUALITY_P0;\n FxaaFloat subpixD = ((-2.0)*subpixC) + 3.0;\n FxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN));\n FxaaFloat subpixE = subpixC * subpixC;\n FxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP));\n/*--------------------------------------------------------------------------*/\n if(!pairN) lumaNN = lumaSS;\n FxaaFloat gradientScaled = gradient * 1.0/4.0;\n FxaaFloat lumaMM = lumaM - lumaNN * 0.5;\n FxaaFloat subpixF = subpixD * subpixE;\n FxaaBool lumaMLTZero = lumaMM < 0.0;\n/*--------------------------------------------------------------------------*/\n lumaEndN -= lumaNN * 0.5;\n lumaEndP -= lumaNN * 0.5;\n FxaaBool doneN = abs(lumaEndN) >= gradientScaled;\n FxaaBool doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P1;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P1;\n FxaaBool doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P1;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P1;\n/*--------------------------------------------------------------------------*/\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P2;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P2;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P2;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P2;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 3)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P3;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P3;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P3;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P3;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 4)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P4;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P4;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P4;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P4;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 5)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P5;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P5;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P5;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P5;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 6)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P6;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P6;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P6;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P6;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 7)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P7;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P7;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P7;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P7;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 8)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P8;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P8;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P8;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P8;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 9)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P9;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P9;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P9;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P9;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 10)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P10;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P10;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P10;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P10;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 11)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P11;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P11;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P11;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P11;\n/*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 12)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P12;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P12;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P12;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P12;\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n #endif\n/*--------------------------------------------------------------------------*/\n }\n/*--------------------------------------------------------------------------*/\n FxaaFloat dstN = posM.x - posN.x;\n FxaaFloat dstP = posP.x - posM.x;\n if(!horzSpan) dstN = posM.y - posN.y;\n if(!horzSpan) dstP = posP.y - posM.y;\n/*--------------------------------------------------------------------------*/\n FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero;\n FxaaFloat spanLength = (dstP + dstN);\n FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero;\n FxaaFloat spanLengthRcp = 1.0/spanLength;\n/*--------------------------------------------------------------------------*/\n FxaaBool directionN = dstN < dstP;\n FxaaFloat dst = min(dstN, dstP);\n FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP;\n FxaaFloat subpixG = subpixF * subpixF;\n FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5;\n FxaaFloat subpixH = subpixG * fxaaQualitySubpix;\n/*--------------------------------------------------------------------------*/\n FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0;\n FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH);\n if(!horzSpan) posM.x += pixelOffsetSubpix * lengthSign;\n if( horzSpan) posM.y += pixelOffsetSubpix * lengthSign;\n #if (FXAA_DISCARD == 1)\n return FxaaTexTop(tex, posM);\n #else\n return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM);\n #endif\n}\n/*==========================================================================*/\n#endif\n\nvoid main() {\n gl_FragColor = FxaaPixelShader(\n vUv,\n vec4(0.0),\n tDiffuse,\n tDiffuse,\n tDiffuse,\n resolution,\n vec4(0.0),\n vec4(0.0),\n vec4(0.0),\n 0.75,\n 0.166,\n 0.0833,\n 0.0,\n 0.0,\n 0.0,\n vec4(0.0)\n );\n\n // TODO avoid querying texture twice for same texel\n gl_FragColor.a = texture2D(tDiffuse, vUv).a;\n}\n'},889:nt=>{nt.exports="varying vec2 vUv;\n\nvoid main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}\n"},9969:(nt,Ee,v)=>{"use strict";v.d(Ee,{FX:()=>We,If:()=>j,K2:()=>L,MA:()=>Q,Os:()=>U,P:()=>re,hZ:()=>y,i0:()=>Z,iF:()=>Y,kY:()=>z,kp:()=>o,sf:()=>Ge,ui:()=>st,wk:()=>V});var j=function(ve){return ve[ve.State=0]="State",ve[ve.Transition=1]="Transition",ve[ve.Sequence=2]="Sequence",ve[ve.Group=3]="Group",ve[ve.Animate=4]="Animate",ve[ve.Keyframes=5]="Keyframes",ve[ve.Style=6]="Style",ve[ve.Trigger=7]="Trigger",ve[ve.Reference=8]="Reference",ve[ve.AnimateChild=9]="AnimateChild",ve[ve.AnimateRef=10]="AnimateRef",ve[ve.Query=11]="Query",ve[ve.Stagger=12]="Stagger",ve}(j||{});const o="*";function y(ve,fe){return{type:j.Trigger,name:ve,definitions:fe,options:{}}}function Z(ve,fe=null){return{type:j.Animate,styles:fe,timings:ve}}function U(ve,fe=null){return{type:j.Group,steps:ve,options:fe}}function L(ve,fe=null){return{type:j.Sequence,steps:ve,options:fe}}function Y(ve){return{type:j.Style,styles:ve,offset:null}}function V(ve,fe,Qe){return{type:j.State,name:ve,styles:fe,options:Qe}}function z(ve,fe,Qe=null){return{type:j.Transition,expr:ve,animation:fe,options:Qe}}function Q(ve=null){return{type:j.AnimateChild,options:ve}}function re(ve,fe,Qe=null){return{type:j.Query,selector:ve,animation:fe,options:Qe}}class Ge{constructor(fe=0,Qe=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._originalOnDoneFns=[],this._originalOnStartFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=fe+Qe}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(fe=>fe()),this._onDoneFns=[])}onStart(fe){this._originalOnStartFns.push(fe),this._onStartFns.push(fe)}onDone(fe){this._originalOnDoneFns.push(fe),this._onDoneFns.push(fe)}onDestroy(fe){this._onDestroyFns.push(fe)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(fe=>fe()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(fe=>fe()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(fe){this._position=this.totalTime?fe*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(fe){const Qe="start"==fe?this._onStartFns:this._onDoneFns;Qe.forEach(Te=>Te()),Qe.length=0}}class st{constructor(fe){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=fe;let Qe=0,Te=0,Le=0;const pt=this.players.length;0==pt?queueMicrotask(()=>this._onFinish()):this.players.forEach(wt=>{wt.onDone(()=>{++Qe==pt&&this._onFinish()}),wt.onDestroy(()=>{++Te==pt&&this._onDestroy()}),wt.onStart(()=>{++Le==pt&&this._onStart()})}),this.totalTime=this.players.reduce((wt,Nt)=>Math.max(wt,Nt.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(fe=>fe()),this._onDoneFns=[])}init(){this.players.forEach(fe=>fe.init())}onStart(fe){this._onStartFns.push(fe)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(fe=>fe()),this._onStartFns=[])}onDone(fe){this._onDoneFns.push(fe)}onDestroy(fe){this._onDestroyFns.push(fe)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(fe=>fe.play())}pause(){this.players.forEach(fe=>fe.pause())}restart(){this.players.forEach(fe=>fe.restart())}finish(){this._onFinish(),this.players.forEach(fe=>fe.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(fe=>fe.destroy()),this._onDestroyFns.forEach(fe=>fe()),this._onDestroyFns=[])}reset(){this.players.forEach(fe=>fe.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(fe){const Qe=fe*this.totalTime;this.players.forEach(Te=>{const Le=Te.totalTime?Math.min(1,Qe/Te.totalTime):1;Te.setPosition(Le)})}getPosition(){const fe=this.players.reduce((Qe,Te)=>null===Qe||Te.totalTime>Qe.totalTime?Te:Qe,null);return null!=fe?fe.getPosition():0}beforeDestroy(){this.players.forEach(fe=>{fe.beforeDestroy&&fe.beforeDestroy()})}triggerCallback(fe){const Qe="start"==fe?this._onStartFns:this._onDoneFns;Qe.forEach(Te=>Te()),Qe.length=0}}const We="!"},4438:(nt,Ee,v)=>{"use strict";function j(a,c){return Object.is(a,c)}v.d(Ee,{bc$:()=>PV,sZ2:()=>My,hnV:()=>iw,o8S:()=>nc,BIS:()=>a4,gRc:()=>YB,OM3:()=>e1,Ocv:()=>i5,abz:()=>dh,Z63:()=>bc,aKT:()=>Di,uvJ:()=>al,zcH:()=>Tc,bkB:()=>zl,y_5:()=>aA,nKC:()=>Sn,zZn:()=>ps,_q3:()=>YE,MKu:()=>ZE,xe9:()=>qB,Vns:()=>np,SKi:()=>io,Agw:()=>Ey,PLl:()=>iT,rOR:()=>md,sFG:()=>JH,_9s:()=>AI,czy:()=>SC,C4Q:()=>Wy,NYb:()=>LE,giA:()=>tw,RxE:()=>FE,c1b:()=>t1,gXe:()=>vc,mal:()=>fu,Tzd:()=>fM,Af3:()=>_f,tdH:()=>rF,L39:()=>fk,EWP:()=>gk,sbv:()=>AN,w6W:()=>SN,QZP:()=>Bu,Rfq:()=>Qn,WQX:()=>On,naY:()=>$9,Hps:()=>BI,EmA:()=>yc,Udg:()=>pk,N4e:()=>I0,vPA:()=>dN,O8t:()=>lS,An2:()=>au,H3F:()=>JL,H8p:()=>T0,KH2:()=>og,TgB:()=>Ql,wOt:()=>Jt,WHO:()=>yb,e01:()=>ew,H5H:()=>KM,Zy3:()=>xr,mq5:()=>ab,JZv:()=>Ji,TL3:()=>Pp,jNT:()=>xb,zjR:()=>nw,ngT:()=>Ia,TL$:()=>zf,Tbb:()=>Et,nM4:()=>Ro,Vt3:()=>$I,GFd:()=>YI,OA$:()=>Mn,Jv_:()=>hg,aNF:()=>Md,R7$:()=>sO,BMQ:()=>FM,HbH:()=>BF,ZvI:()=>OF,STu:()=>KN,AVh:()=>NM,BUC:()=>bp,vxM:()=>VF,wni:()=>kD,C6U:()=>OD,VBU:()=>AA,FsC:()=>wa,jDH:()=>En,G2t:()=>pn,$C:()=>ra,EJ8:()=>us,rXU:()=>mm,nrm:()=>WM,eu8:()=>E1,bVm:()=>vp,qex:()=>M1,k0s:()=>C1,j41:()=>x1,RV6:()=>zF,xGo:()=>dy,Mr5:()=>XM,KVO:()=>ds,kS0:()=>pd,QTQ:()=>Kl,bIt:()=>B1,lsd:()=>PD,joV:()=>ry,qSk:()=>ny,XpG:()=>R1,nI1:()=>_u,bMT:()=>LL,i5U:()=>UL,ii3:()=>AB,SdG:()=>CD,NAR:()=>uE,Y8G:()=>FF,FS9:()=>hE,Mz_:()=>P1,lJ4:()=>sB,eq3:()=>aB,l_i:()=>lB,NyB:()=>LD,mGM:()=>Cd,sdS:()=>dg,Dyx:()=>HF,Z7z:()=>$M,fX1:()=>jM,Vm6:()=>GM,Njj:()=>TA,EBC:()=>H4,tSv:()=>V4,eBV:()=>X0,npT:()=>hm,B4B:()=>Xf,Aen:()=>Lc,xc7:()=>J_,DNE:()=>z_,C5r:()=>da,EFF:()=>XD,JRh:()=>gE,SpI:()=>O1,Lme:()=>_E,LHq:()=>bE,DH7:()=>tB,mxI:()=>U1,R50:()=>L1,GBs:()=>RD});let o=null,y=!1,Z=1;const U=Symbol("SIGNAL");function L(a){const c=o;return o=a,c}function Y(){return o}const z={version:0,lastCleanEpoch:0,dirty:!1,producerNode:void 0,producerLastReadVersion:void 0,producerIndexOfThis:void 0,nextProducerIndex:0,liveConsumerNode:void 0,liveConsumerIndexOfThis:void 0,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function G(a){if(y)throw new Error("");if(null===o)return;o.consumerOnSignalRead(a);const c=o.nextProducerIndex++;Ge(o),ca.nextProducerIndex;)a.producerNode.pop(),a.producerLastReadVersion.pop(),a.producerIndexOfThis.pop()}}function Ne(a){Ge(a);for(let c=0;c0}function Ge(a){a.producerNode??=[],a.producerIndexOfThis??=[],a.producerLastReadVersion??=[]}function st(a){a.liveConsumerNode??=[],a.liveConsumerIndexOfThis??=[]}function We(a){return void 0!==a.producerNode}function ve(a){const c=Object.create(Le);c.computation=a;const d=()=>{if(ne(c),G(c),c.value===Te)throw c.error;return c.value};return d[U]=c,d}const fe=Symbol("UNSET"),Qe=Symbol("COMPUTING"),Te=Symbol("ERRORED"),Le={...z,value:fe,dirty:!0,error:null,equal:j,producerMustRecompute:a=>a.value===fe||a.value===Qe,producerRecomputeValue(a){if(a.value===Qe)throw new Error("Detected cycle in computations.");const c=a.value;a.value=Qe;const d=Be(a);let h;try{h=a.computation()}catch(A){h=Te,a.error=A}finally{Ie(a,d)}c!==fe&&c!==Te&&h!==Te&&a.equal(c,h)?a.value=c:(a.value=h,a.version++)}};let wt=function pt(){throw new Error};function Nt(){wt()}let fn=null;function Bi(a,c){me()||Nt(),a.equal(a.value,c)||(a.value=c,function kt(a){a.version++,function Q(){Z++}(),re(a),fn?.()}(a))}const it={...z,equal:j,value:void 0};const cn=()=>{},Wt={...z,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!1,consumerMarkedDirty:a=>{null!==a.schedule&&a.schedule(a.ref)},hasRun:!1,cleanupFn:cn};var si=v(4412),Zi=v(1413),fr=v(8359),Lr=v(6354);const Ii="https://g.co/ng/security#xss";class Jt extends Error{constructor(c,d){super(xr(c,d)),this.code=c}}function xr(a,c){return`NG0${Math.abs(a)}${c?": "+c:""}`}function Li(a){return{toString:a}.toString()}const Fs="__parameters__";function po(a,c,d){return Li(()=>{const h=function ls(a){return function(...d){if(a){const h=a(...d);for(const A in h)this[A]=h[A]}}}(c);function A(...g){if(this instanceof A)return h.apply(this,g),this;const x=new A(...g);return B.annotation=x,B;function B(k,H,K){const ae=k.hasOwnProperty(Fs)?k[Fs]:Object.defineProperty(k,Fs,{value:[]})[Fs];for(;ae.length<=K;)ae.push(null);return(ae[K]=ae[K]||[]).push(x),k}}return d&&(A.prototype=Object.create(d.prototype)),A.prototype.ngMetadataName=a,A.annotationCls=A,A})}const Ji=globalThis;function Tt(a){for(let c in a)if(a[c]===Tt)return c;throw Error("Could not find renamed property on target object.")}function rt(a,c){for(const d in c)c.hasOwnProperty(d)&&!a.hasOwnProperty(d)&&(a[d]=c[d])}function Et(a){if("string"==typeof a)return a;if(Array.isArray(a))return"["+a.map(Et).join(", ")+"]";if(null==a)return""+a;if(a.overriddenName)return`${a.overriddenName}`;if(a.name)return`${a.name}`;const c=a.toString();if(null==c)return""+c;const d=c.indexOf("\n");return-1===d?c:c.substring(0,d)}function ln(a,c){return null==a||""===a?null===c?"":c:null==c||""===c?a:a+" "+c}const ei=Tt({__forward_ref__:Tt});function Qn(a){return a.__forward_ref__=Qn,a.toString=function(){return Et(this())},a}function Xt(a){return Rn(a)?a():a}function Rn(a){return"function"==typeof a&&a.hasOwnProperty(ei)&&a.__forward_ref__===Qn}function En(a){return{token:a.token,providedIn:a.providedIn||null,factory:a.factory,value:void 0}}function pn(a){return{providers:a.providers||[],imports:a.imports||[]}}function Ke(a){return Bn(a,vi)||Bn(a,Ao)}function Bn(a,c){return a.hasOwnProperty(c)?a[c]:null}function bi(a){return a&&(a.hasOwnProperty(eo)||a.hasOwnProperty(To))?a[eo]:null}const vi=Tt({\u0275prov:Tt}),eo=Tt({\u0275inj:Tt}),Ao=Tt({ngInjectableDef:Tt}),To=Tt({ngInjectorDef:Tt});class Sn{constructor(c,d){this._desc=c,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof d?this.__NG_ELEMENT_ID__=d:void 0!==d&&(this.\u0275prov=En({token:this,providedIn:d.providedIn||"root",factory:d.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}function Cr(a){return a&&!!a.\u0275providers}const vr=Tt({\u0275cmp:Tt}),cs=Tt({\u0275dir:Tt}),Zo=Tt({\u0275pipe:Tt}),il=Tt({\u0275mod:Tt}),No=Tt({\u0275fac:Tt}),ia=Tt({__NG_ELEMENT_ID__:Tt}),ma=Tt({__NG_ENV_ID__:Tt});function yi(a){return"string"==typeof a?a:null==a?"":String(a)}function zn(a,c){throw new Jt(-201,!1)}var Si=function(a){return a[a.Default=0]="Default",a[a.Host=1]="Host",a[a.Self=2]="Self",a[a.SkipSelf=4]="SkipSelf",a[a.Optional=8]="Optional",a}(Si||{});let Lo;function cf(){return Lo}function Bs(a){const c=Lo;return Lo=a,c}function oA(a,c,d){const h=Ke(a);return h&&"root"==h.providedIn?void 0===h.value?h.value=h.factory():h.value:d&Si.Optional?null:void 0!==c?c:void zn()}const $u={},_a="__NG_DI_FLAG__",qu="ngTempTokenPath",_0=/\n/gm,df="__source";let Od;function gc(a){const c=Od;return Od=a,c}function Cv(a,c=Si.Default){if(void 0===Od)throw new Jt(-203,!1);return null===Od?oA(a,void 0,c):Od.get(a,c&Si.Optional?null:void 0,c)}function ds(a,c=Si.Default){return(cf()||Cv)(Xt(a),c)}function On(a,c=Si.Default){return ds(a,b0(c))}function b0(a){return typeof a>"u"||"number"==typeof a?a:(a.optional&&8)|(a.host&&1)|(a.self&&2)|(a.skipSelf&&4)}function ba(a){const c=[];for(let d=0;d({token:a})),-1),uf=Xu(po("Optional"),8),v0=Xu(po("SkipSelf"),4);function rl(a,c){return a.hasOwnProperty(No)?a[No]:null}function _c(a,c){a.forEach(d=>Array.isArray(d)?_c(d,c):c(d))}function Rx(a,c,d){c>=a.length?a.push(d):a.splice(c,0,d)}function hf(a,c){return c>=a.length-1?a.pop():a.splice(c,1)[0]}function ya(a,c,d){let h=ff(a,c);return h>=0?a[1|h]=d:(h=~h,function w0(a,c,d,h){let A=a.length;if(A==c)a.push(d,h);else if(1===A)a.push(h,a[0]),a[0]=d;else{for(A--,a.push(a[A-1],a[A]);A>c;)a[A]=a[A-2],A--;a[c]=d,a[c+1]=h}}(a,h,c,d)),h}function x0(a,c){const d=ff(a,c);if(d>=0)return a[1|d]}function ff(a,c){return function Sv(a,c,d){let h=0,A=a.length>>d;for(;A!==h;){const g=h+(A-h>>1),x=a[g<c?A=g:h=g+1}return~(A<c){x=g-1;break}}}for(;g-1){let g;for(;++Ag?"":A[K+1].toLowerCase(),2&h&&H!==ae){if(wi(h))return!1;x=!0}}}}else{if(!x&&!wi(h)&&!wi(k))return!1;if(x&&wi(k))continue;x=!1,h=k|1&h}}return wi(h)||x}function wi(a){return!(1&a)}function Ox(a,c,d,h){if(null===c)return-1;let A=0;if(h||!d){let g=!1;for(;A-1)for(d++;d0?'="'+B+'"':"")+"]"}else 8&h?A+="."+x:4&h&&(A+=" "+x);else""!==A&&!wi(x)&&(c+=Dv(g,A),A=""),h=x,g=g||!wi(h);d++}return""!==A&&(c+=Dv(g,A)),c}function AA(a){return Li(()=>{const c=Ux(a),d={...c,decls:a.decls,vars:a.vars,template:a.template,consts:a.consts||null,ngContentSelectors:a.ngContentSelectors,onPush:a.changeDetection===uA.OnPush,directiveDefs:null,pipeDefs:null,dependencies:c.standalone&&a.dependencies||null,getStandaloneInjector:null,signals:a.signals??!1,data:a.data||{},encapsulation:a.encapsulation||vc.Emulated,styles:a.styles||Tr,_:null,schemas:a.schemas||null,tView:null,id:""};td(d);const h=a.dependencies;return d.directiveDefs=xa(h,!1),d.pipeDefs=xa(h,!0),d.id=function Vx(a){let c=0;const d=[a.selectors,a.ngContentSelectors,a.hostVars,a.hostAttrs,a.consts,a.vars,a.decls,a.encapsulation,a.standalone,a.signals,a.exportAs,JSON.stringify(a.inputs),JSON.stringify(a.outputs),Object.getOwnPropertyNames(a.type.prototype),!!a.contentQueries,!!a.viewQuery].join("|");for(const A of d)c=Math.imul(31,c)+A.charCodeAt(0)|0;return c+=2147483648,"c"+c}(d),d})}function E0(a){return $i(a)||Uo(a)}function kv(a){return null!==a}function ra(a){return Li(()=>({type:a.type,bootstrap:a.bootstrap||Tr,declarations:a.declarations||Tr,imports:a.imports||Tr,exports:a.exports||Tr,transitiveCompileScopes:null,schemas:a.schemas||null,id:a.id||null}))}function sl(a,c){if(null==a)return Fl;const d={};for(const h in a)if(a.hasOwnProperty(h)){const A=a[h];let g,x,B=Zc.None;Array.isArray(A)?(B=A[0],g=A[1],x=A[2]??g):(g=A,x=A),c?(d[g]=B!==Zc.None?[h,B]:h,c[g]=x):d[g]=h}return d}function wa(a){return Li(()=>{const c=Ux(a);return td(c),c})}function us(a){return{type:a.type,name:a.name,factory:null,pure:!1!==a.pure,standalone:!0===a.standalone,onDestroy:a.type.prototype.ngOnDestroy||null}}function $i(a){return a[vr]||null}function Uo(a){return a[cs]||null}function Jo(a){return a[Zo]||null}function Ux(a){const c={};return{type:a.type,providersResolver:null,factory:null,hostBindings:a.hostBindings||null,hostVars:a.hostVars||0,hostAttrs:a.hostAttrs||null,contentQueries:a.contentQueries||null,declaredInputs:c,inputTransforms:null,inputConfig:a.inputs||Fl,exportAs:a.exportAs||null,standalone:!0===a.standalone,signals:!0===a.signals,selectors:a.selectors||Tr,viewQuery:a.viewQuery||null,features:a.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:sl(a.inputs,c),outputs:sl(a.outputs),debugInfo:null}}function td(a){a.features?.forEach(c=>c(a))}function xa(a,c){if(!a)return null;const d=c?Jo:E0;return()=>("function"==typeof a?a():a).map(h=>d(h)).filter(kv)}function yc(a){return{\u0275providers:a}}function Hd(...a){return{\u0275providers:Pv(0,a),\u0275fromNgModule:!0}}function Pv(a,...c){const d=[],h=new Set;let A;const g=x=>{d.push(x)};return _c(c,x=>{const B=x;Ca(B,g,[],h)&&(A||=[],A.push(B))}),void 0!==A&&Hx(A,g),d}function Hx(a,c){for(let d=0;d{c(g,h)})}}function Ca(a,c,d,h){if(!(a=Xt(a)))return!1;let A=null,g=bi(a);const x=!g&&$i(a);if(g||x){if(x&&!x.standalone)return!1;A=a}else{const k=a.ngModule;if(g=bi(k),!g)return!1;A=k}const B=h.has(A);if(x){if(B)return!1;if(h.add(A),x.dependencies){const k="function"==typeof x.dependencies?x.dependencies():x.dependencies;for(const H of k)Ca(H,c,d,h)}}else{if(!g)return!1;{if(null!=g.imports&&!B){let H;h.add(A);try{_c(g.imports,K=>{Ca(K,c,d,h)&&(H||=[],H.push(K))})}finally{}void 0!==H&&Hx(H,c)}if(!B){const H=rl(A)||(()=>new A);c({provide:A,useFactory:H,deps:Tr},A),c({provide:C0,useValue:A,multi:!0},A),c({provide:bc,useValue:()=>ds(A),multi:!0},A)}const k=g.providers;if(null!=k&&!B){const H=a;Ov(k,K=>{c(K,H)})}}}return A!==a&&void 0!==a.providers}function Ov(a,c){for(let d of a)Cr(d)&&(d=d.\u0275providers),Array.isArray(d)?Ov(d,c):c(d)}const j2=Tt({provide:String,useValue:Tt});function pf(a){return null!==a&&"object"==typeof a&&j2 in a}function nd(a){return"function"==typeof a}const T0=new Sn(""),Af={},zx={};let mA;function mf(){return void 0===mA&&(mA=new dA),mA}class al{}class id extends al{get destroyed(){return this._destroyed}constructor(c,d,h,A){super(),this.parent=d,this.source=h,this.scopes=A,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,Vv(c,x=>this.processProvider(x)),this.records.set(Px,Zu(void 0,this)),A.has("environment")&&this.records.set(al,Zu(void 0,this));const g=this.records.get(T0);null!=g&&"string"==typeof g.value&&this.scopes.add(g.value),this.injectorDefTypes=new Set(this.get(C0,Tr,Si.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;const c=L(null);try{for(const h of this._ngOnDestroyHooks)h.ngOnDestroy();const d=this._onDestroyHooks;this._onDestroyHooks=[];for(const h of d)h()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),L(c)}}onDestroy(c){return this.assertNotDestroyed(),this._onDestroyHooks.push(c),()=>this.removeOnDestroy(c)}runInContext(c){this.assertNotDestroyed();const d=gc(this),h=Bs(void 0);try{return c()}finally{gc(d),Bs(h)}}get(c,d=$u,h=Si.Default){if(this.assertNotDestroyed(),c.hasOwnProperty(ma))return c[ma](this);h=b0(h);const g=gc(this),x=Bs(void 0);try{if(!(h&Si.SkipSelf)){let k=this.records.get(c);if(void 0===k){const H=function X2(a){return"function"==typeof a||"object"==typeof a&&a instanceof Sn}(c)&&Ke(c);k=H&&this.injectableDefInScope(H)?Zu(Lv(c),Af):null,this.records.set(c,k)}if(null!=k)return this.hydrate(c,k)}return(h&Si.Self?mf():this.parent).get(c,d=h&Si.Optional&&d===$u?null:d)}catch(B){if("NullInjectorError"===B.name){if((B[qu]=B[qu]||[]).unshift(Et(c)),g)throw B;return function Bx(a,c,d,h){const A=a[qu];throw c[df]&&A.unshift(c[df]),a.message=function Mv(a,c,d,h=null){a=a&&"\n"===a.charAt(0)&&"\u0275"==a.charAt(1)?a.slice(2):a;let A=Et(c);if(Array.isArray(c))A=c.map(Et).join(" -> ");else if("object"==typeof c){let g=[];for(let x in c)if(c.hasOwnProperty(x)){let B=c[x];g.push(x+":"+("string"==typeof B?JSON.stringify(B):Et(B)))}A=`{${g.join(", ")}}`}return`${d}${h?"("+h+")":""}[${A}]: ${a.replace(_0,"\n ")}`}("\n"+a.message,A,d,h),a.ngTokenPath=A,a[qu]=null,a}(B,c,"R3InjectorError",this.source)}throw B}finally{Bs(x),gc(g)}}resolveInjectorInitializers(){const c=L(null),d=gc(this),h=Bs(void 0);try{const g=this.get(bc,Tr,Si.Self);for(const x of g)x()}finally{gc(d),Bs(h),L(c)}}toString(){const c=[],d=this.records;for(const h of d.keys())c.push(Et(h));return`R3Injector[${c.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Jt(205,!1)}processProvider(c){let d=nd(c=Xt(c))?c:Xt(c&&c.provide);const h=function Uv(a){return pf(a)?Zu(void 0,a.useValue):Zu(Gx(a),Af)}(c);if(!nd(c)&&!0===c.multi){let A=this.records.get(d);A||(A=Zu(void 0,Af,!0),A.factory=()=>ba(A.multi),this.records.set(d,A)),d=c,A.multi.push(c)}this.records.set(d,h)}hydrate(c,d){const h=L(null);try{return d.value===Af&&(d.value=zx,d.value=d.factory()),"object"==typeof d.value&&d.value&&function W2(a){return null!==a&&"object"==typeof a&&"function"==typeof a.ngOnDestroy}(d.value)&&this._ngOnDestroyHooks.add(d.value),d.value}finally{L(h)}}injectableDefInScope(c){if(!c.providedIn)return!1;const d=Xt(c.providedIn);return"string"==typeof d?"any"===d||this.scopes.has(d):this.injectorDefTypes.has(d)}removeOnDestroy(c){const d=this._onDestroyHooks.indexOf(c);-1!==d&&this._onDestroyHooks.splice(d,1)}}function Lv(a){const c=Ke(a),d=null!==c?c.factory:rl(a);if(null!==d)return d;if(a instanceof Sn)throw new Jt(204,!1);if(a instanceof Function)return function $2(a){if(a.length>0)throw new Jt(204,!1);const d=function ti(a){return a&&(a[vi]||a[Ao])||null}(a);return null!==d?()=>d.factory(a):()=>new a}(a);throw new Jt(204,!1)}function Gx(a,c,d){let h;if(nd(a)){const A=Xt(a);return rl(A)||Lv(A)}if(pf(a))h=()=>Xt(a.useValue);else if(function S0(a){return!(!a||!a.useFactory)}(a))h=()=>a.useFactory(...ba(a.deps||[]));else if(function Qx(a){return!(!a||!a.useExisting)}(a))h=()=>ds(Xt(a.useExisting));else{const A=Xt(a&&(a.useClass||a.provide));if(!function q2(a){return!!a.deps}(a))return rl(A)||Lv(A);h=()=>new A(...ba(a.deps))}return h}function Zu(a,c,d=!1){return{factory:a,value:c,multi:d?[]:void 0}}function Vv(a,c){for(const d of a)Array.isArray(d)?Vv(d,c):d&&Cr(d)?Vv(d.\u0275providers,c):c(d)}function I0(a,c){a instanceof id&&a.assertNotDestroyed();const h=gc(a),A=Bs(void 0);try{return c()}finally{gc(h),Bs(A)}}function gf(){return void 0!==cf()||null!=function Wu(){return Od}()}function _f(a){if(!gf())throw new Jt(-203,!1)}const to=0,en=1,xi=2,$o=3,ll=4,Cs=5,Gs=6,Ju=7,no=8,Vo=9,La=10,Oi=11,Qd=12,Wx=13,zd=14,go=15,xc=16,Gd=17,cl=18,Dl=19,Qv=20,od=21,_A=22,Ua=23,hi=25,bA=1,Bl=7,eh=9,Ho=10;var B0=function(a){return a[a.None=0]="None",a[a.HasTransplantedViews=2]="HasTransplantedViews",a}(B0||{});function hs(a){return Array.isArray(a)&&"object"==typeof a[bA]}function Rs(a){return Array.isArray(a)&&!0===a[bA]}function k0(a){return!!(4&a.flags)}function th(a){return a.componentOffset>-1}function R0(a){return!(1&~a.flags)}function kl(a){return!!a.template}function yA(a){return!!(512&a[xi])}class Z2{constructor(c,d,h){this.previousValue=c,this.currentValue=d,this.firstChange=h}isFirstChange(){return this.firstChange}}function U0(a,c,d,h){null!==c?c.applyValueToInputSignal(c,h):a[d]=h}function Mn(){return $d}function $d(a){return a.type.prototype.ngOnChanges&&(a.setInput=mi),qr}function qr(){const a=Gv(this),c=a?.current;if(c){const d=a.previous;if(d===Fl)a.previous=c;else for(let h in c)d[h]=c[h];a.current=null,this.ngOnChanges(c)}}function mi(a,c,d,h,A){const g=this.declaredInputs[h],x=Gv(a)||function xA(a,c){return a[un]=c}(a,{previous:Fl,current:null}),B=x.current||(x.current={}),k=x.previous,H=k[g];B[g]=new Z2(H&&H.currentValue,d,k===Fl),U0(a,c,A,d)}Mn.ngInherit=!0;const un="__ngSimpleChanges__";function Gv(a){return a[un]||null}const Rl=function(a,c,d){},Cf="svg";function cr(a){for(;Array.isArray(a);)a=a[to];return a}function Mf(a,c){return cr(c[a])}function oa(a,c){return cr(c[a.index])}function Ir(a,c){return a.data[c]}function lr(a,c){return a[c]}function $s(a,c){const d=c[a];return hs(d)?d:d[to]}function H0(a){return!(128&~a[xi])}function Va(a,c){return null==c?null:a[c]}function jv(a){a[Gd]=0}function $v(a){1024&a[xi]||(a[xi]|=1024,H0(a)&&z0(a))}function Q0(a){return!!(9216&a[xi]||a[Ua]?.dirty)}function qv(a){a[La].changeDetectionScheduler?.notify(8),64&a[xi]&&(a[xi]|=1024),Q0(a)&&z0(a)}function z0(a){a[La].changeDetectionScheduler?.notify(0);let c=Cc(a);for(;null!==c&&!(8192&c[xi])&&(c[xi]|=8192,H0(c));)c=Cc(c)}function MA(a,c){if(!(256&~a[xi]))throw new Jt(911,!1);null===a[od]&&(a[od]=[]),a[od].push(c)}function Cc(a){const c=a[$o];return Rs(c)?c[$o]:c}const Ni={lFrame:ih(null),bindingsEnabled:!0,skipHydrationRootTNode:null};let G0=!1;function SA(){return Ni.bindingsEnabled}function sd(){return null!==Ni.skipHydrationRootTNode}function Pt(){return Ni.lFrame.lView}function ar(){return Ni.lFrame.tView}function X0(a){return Ni.lFrame.contextLView=a,a[no]}function TA(a){return Ni.lFrame.contextLView=null,a}function Qr(){let a=Yv();for(;null!==a&&64===a.type;)a=a.parent;return a}function Yv(){return Ni.lFrame.currentTNode}function xo(a,c){const d=Ni.lFrame;d.currentTNode=a,d.isParent=c}function Yr(){return Ni.lFrame.isParent}function FA(){Ni.lFrame.isParent=!1}function Zv(){return G0}function Z0(a){G0=a}function Ps(){const a=Ni.lFrame;let c=a.bindingRootIndex;return-1===c&&(c=a.bindingRootIndex=a.tView.bindingStartIndex),c}function Nl(){return Ni.lFrame.bindingIndex}function dl(){return Ni.lFrame.bindingIndex++}function Rr(a){const c=Ni.lFrame,d=c.bindingIndex;return c.bindingIndex=c.bindingIndex+a,d}function Tf(a,c){const d=Ni.lFrame;d.bindingIndex=d.bindingRootIndex=a,BA(c)}function BA(a){Ni.lFrame.currentDirectiveIndex=a}function If(){return Ni.lFrame.currentQueryIndex}function Ll(a){Ni.lFrame.currentQueryIndex=a}function J0(a){const c=a[en];return 2===c.type?c.declTNode:1===c.type?a[Cs]:null}function e_(a,c,d){if(d&Si.SkipSelf){let A=c,g=a;for(;!(A=A.parent,null!==A||d&Si.Host||(A=J0(g),null===A||(g=g[zd],10&A.type))););if(null===A)return!1;c=A,a=g}const h=Ni.lFrame=RA();return h.currentTNode=c,h.lView=a,!0}function Ff(a){const c=RA(),d=a[en];Ni.lFrame=c,c.currentTNode=d.firstChild,c.lView=a,c.tView=d,c.contextLView=a,c.bindingIndex=d.bindingStartIndex,c.inI18n=!1}function RA(){const a=Ni.lFrame,c=null===a?null:a.child;return null===c?ih(a):c}function ih(a){const c={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:a,child:null,inI18n:!1};return null!==a&&(a.child=c),c}function ey(){const a=Ni.lFrame;return Ni.lFrame=a.parent,a.currentTNode=null,a.lView=null,a}const ul=ey;function PA(){const a=ey();a.isParent=!0,a.tView=null,a.selectedIndex=-1,a.contextLView=null,a.elementDepthCount=0,a.currentDirectiveIndex=-1,a.currentNamespace=null,a.bindingRootIndex=-1,a.bindingIndex=-1,a.currentQueryIndex=0}function qn(){return Ni.lFrame.selectedIndex}function ad(a){Ni.lFrame.selectedIndex=a}function kr(){const a=Ni.lFrame;return Ir(a.tView,a.selectedIndex)}function ny(){Ni.lFrame.currentNamespace=Cf}function ry(){!function J2(){Ni.lFrame.currentNamespace=null}()}let Df=!0;function rh(){return Df}function hl(a){Df=a}function NA(a,c){for(let d=c.directiveStart,h=c.directiveEnd;d=h)break}else c[k]<0&&(a[Gd]+=65536),(B>14>16&&(3&a[xi])===c&&(a[xi]+=16384,Bf(B,g)):Bf(B,g)}const kf=-1;class LA{constructor(c,d,h){this.factory=c,this.resolving=!1,this.canSeeViewProviders=d,this.injectImpl=h}}const Pf={};class Ul{constructor(c,d){this.injector=c,this.parentInjector=d}get(c,d,h){h=b0(h);const A=this.injector.get(c,Pf,h);return A!==Pf||d===Pf?A:this.parentInjector.get(c,d,h)}}function Of(a){return a!==kf}function cd(a){return 32767&a}function Xd(a,c){let d=function UA(a){return a>>16}(a),h=c;for(;d>0;)h=h[zd],d--;return h}let HA=!0;function dd(a){const c=HA;return HA=a,c}const zA=255,GA=5;let jA=0;const Ha={};function Nf(a,c){const d=Ec(a,c);if(-1!==d)return d;const h=c[en];h.firstCreatePass&&(a.injectorIndex=c.length,Kd(h.data,a),Kd(c,null),Kd(h.blueprint,null));const A=ud(a,c),g=a.injectorIndex;if(Of(A)){const x=cd(A),B=Xd(A,c),k=B[en].data;for(let H=0;H<8;H++)c[g+H]=B[x+H]|k[x+H]}return c[g+8]=A,g}function Kd(a,c){a.push(0,0,0,0,0,0,0,0,c)}function Ec(a,c){return-1===a.injectorIndex||a.parent&&a.parent.injectorIndex===a.injectorIndex||null===c[a.injectorIndex+8]?-1:a.injectorIndex}function ud(a,c){if(a.parent&&-1!==a.parent.injectorIndex)return a.parent.injectorIndex;let d=0,h=null,A=c;for(;null!==A;){if(h=uy(A),null===h)return kf;if(d++,A=A[zd],-1!==h.injectorIndex)return h.injectorIndex|d<<16}return kf}function _o(a,c,d){!function t_(a,c,d){let h;"string"==typeof d?h=d.charCodeAt(0)||0:d.hasOwnProperty(ia)&&(h=d[ia]),null==h&&(h=d[ia]=jA++);const A=h&zA;c.data[a+(A>>GA)]|=1<=0?c&zA:sC:c}(d);if("function"==typeof g){if(!e_(c,a,h))return h&Si.Host?Yd(A,0,h):Vl(c,d,h,A);try{let x;if(x=g(h),null!=x||h&Si.Optional)return x;zn()}finally{ul()}}else if("number"==typeof g){let x=null,B=Ec(a,c),k=kf,H=h&Si.Host?c[go][Cs]:null;for((-1===B||h&Si.SkipSelf)&&(k=-1===B?ud(a,c):c[B+8],k!==kf&&Sc(h,!1)?(x=c[en],B=cd(k),c=Xd(k,c)):B=-1);-1!==B;){const K=c[en];if($A(g,B,K.data)){const ae=fl(B,c,d,x,h,H);if(ae!==Ha)return ae}k=c[B+8],k!==kf&&Sc(h,c[en].data[B+8]===H)&&$A(g,B,c)?(x=K,B=cd(k),c=Xd(k,c)):B=-1}}return A}function fl(a,c,d,h,A,g){const x=c[en],B=x.data[a+8],K=sh(B,x,d,null==h?th(B)&&HA:h!=x&&!!(3&B.type),A&Si.Host&&g===B);return null!==K?hd(c,x,K,B):Ha}function sh(a,c,d,h,A){const g=a.providerIndexes,x=c.data,B=1048575&g,k=a.directiveStart,K=g>>20,Re=A?B+K:a.directiveEnd;for(let je=h?B:B+K;je=k&&ot.type===d)return je}if(A){const je=x[k];if(je&&kl(je)&&je.type===d)return k}return null}function hd(a,c,d,h){let A=a[d];const g=c.data;if(function ay(a){return a instanceof LA}(A)){const x=A;x.resolving&&function ga(a,c){throw c&&c.join(" > "),new Jt(-200,a)}(function er(a){return"function"==typeof a?a.name||a.toString():"object"==typeof a&&null!=a&&"function"==typeof a.type?a.type.name||a.type.toString():yi(a)}(g[d]));const B=dd(x.canSeeViewProviders);x.resolving=!0;const H=x.injectImpl?Bs(x.injectImpl):null;e_(a,h,Si.Default);try{A=a[d]=x.factory(void 0,g,a,h),c.firstCreatePass&&d>=h.directiveStart&&function qd(a,c,d){const{ngOnChanges:h,ngOnInit:A,ngDoCheck:g}=c.type.prototype;if(h){const x=$d(c);(d.preOrderHooks??=[]).push(a,x),(d.preOrderCheckHooks??=[]).push(a,x)}A&&(d.preOrderHooks??=[]).push(0-a,A),g&&((d.preOrderHooks??=[]).push(a,g),(d.preOrderCheckHooks??=[]).push(a,g))}(d,g[d],c)}finally{null!==H&&Bs(H),dd(B),x.resolving=!1,ul()}}return A}function $A(a,c,d){return!!(d[c+(a>>GA)]&1<{const c=a.prototype.constructor,d=c[No]||Yt(c),h=Object.prototype;let A=Object.getPrototypeOf(a.prototype).constructor;for(;A&&A!==h;){const g=A[No]||Yt(A);if(g&&g!==d)return g;A=Object.getPrototypeOf(A)}return g=>new g})}function Yt(a){return Rn(a)?()=>{const c=Yt(Xt(a));return c&&c()}:rl(a)}function uy(a){const c=a[en],d=c.type;return 2===d?c.declTNode:1===d?a[Cs]:null}function pd(a){return function Ea(a,c){if("class"===c)return a.classes;if("style"===c)return a.styles;const d=a.attrs;if(d){const h=d.length;let A=0;for(;Ads(Px)})}static{this.__NG_ELEMENT_ID__=-1}}new Sn("").__NG_ELEMENT_ID__=a=>{const c=Qr();if(null===c)throw new Jt(204,!1);if(2&c.type)return c.value;if(a&Si.Optional)return null;throw new Jt(204,!1)};function ch(a){return a.ngOriginalError}const Sa=!0;let dh=(()=>{class a{static{this.__NG_ELEMENT_ID__=Co}static{this.__NG_ENV_ID__=d=>d}}return a})();class Wr extends dh{constructor(c){super(),this._lView=c}onDestroy(c){return MA(this._lView,c),()=>function Sf(a,c){if(null===a[od])return;const d=a[od].indexOf(c);-1!==d&&a[od].splice(d,1)}(this._lView,c)}}function Co(){return new Wr(Pt())}let Ql=(()=>{class a{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new si.t(!1)}get _hasPendingTasks(){return this.hasPendingTasks.value}add(){this._hasPendingTasks||this.hasPendingTasks.next(!0);const d=this.taskId++;return this.pendingTasks.add(d),d}remove(d){this.pendingTasks.delete(d),0===this.pendingTasks.size&&this._hasPendingTasks&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this._hasPendingTasks&&this.hasPendingTasks.next(!1)}static{this.\u0275prov=En({token:a,providedIn:"root",factory:()=>new a})}}return a})();const zl=class YA extends Zi.B{constructor(c=!1){super(),this.destroyRef=void 0,this.pendingTasks=void 0,this.__isAsync=c,gf()&&(this.destroyRef=On(dh,{optional:!0})??void 0,this.pendingTasks=On(Ql,{optional:!0})??void 0)}emit(c){const d=L(null);try{super.next(c)}finally{L(d)}}subscribe(c,d,h){let A=c,g=d||(()=>null),x=h;if(c&&"object"==typeof c){const k=c;A=k.next?.bind(k),g=k.error?.bind(k),x=k.complete?.bind(k)}this.__isAsync&&(g=this.wrapInTimeout(g),A&&(A=this.wrapInTimeout(A)),x&&(x=this.wrapInTimeout(x)));const B=super.subscribe({next:A,error:g,complete:x});return c instanceof fr.yU&&c.add(B),B}wrapInTimeout(c){return d=>{const h=this.pendingTasks?.add();setTimeout(()=>{c(d),void 0!==h&&this.pendingTasks?.remove(h)})}}};function Ad(...a){}function gy(a){let c,d;function h(){a=Ad;try{void 0!==d&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(d),void 0!==c&&clearTimeout(c)}catch{}}return c=setTimeout(()=>{a(),h()}),"function"==typeof requestAnimationFrame&&(d=requestAnimationFrame(()=>{a(),h()})),()=>h()}function _y(a){return queueMicrotask(()=>a()),()=>{a=Ad}}const Uf="isAngularZone",Vf=Uf+"_ID";let a_=0;class io{constructor(c){this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new zl(!1),this.onMicrotaskEmpty=new zl(!1),this.onStable=new zl(!1),this.onError=new zl(!1);const{enableLongStackTrace:d=!1,shouldCoalesceEventChangeDetection:h=!1,shouldCoalesceRunChangeDetection:A=!1,scheduleInRootZone:g=Sa}=c;if(typeof Zone>"u")throw new Jt(908,!1);Zone.assertZonePatched();const x=this;x._nesting=0,x._outer=x._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(x._inner=x._inner.fork(new Zone.TaskTrackingZoneSpec)),d&&Zone.longStackTraceZoneSpec&&(x._inner=x._inner.fork(Zone.longStackTraceZoneSpec)),x.shouldCoalesceEventChangeDetection=!A&&h,x.shouldCoalesceRunChangeDetection=A,x.callbackScheduled=!1,x.scheduleInRootZone=g,function dC(a){const c=()=>{!function vy(a){function c(){gy(()=>{a.callbackScheduled=!1,uh(a),a.isCheckStableRunning=!0,Hf(a),a.isCheckStableRunning=!1})}a.isCheckStableRunning||a.callbackScheduled||(a.callbackScheduled=!0,a.scheduleInRootZone?Zone.root.run(()=>{c()}):a._outer.run(()=>{c()}),uh(a))}(a)},d=a_++;a._inner=a._inner.fork({name:"angular",properties:{[Uf]:!0,[Vf]:d,[Vf+d]:!0},onInvokeTask:(h,A,g,x,B,k)=>{if(function JA(a){return xy(a,"__ignore_ng_zone__")}(k))return h.invokeTask(g,x,B,k);try{return yy(a),h.invokeTask(g,x,B,k)}finally{(a.shouldCoalesceEventChangeDetection&&"eventTask"===x.type||a.shouldCoalesceRunChangeDetection)&&c(),wy(a)}},onInvoke:(h,A,g,x,B,k,H)=>{try{return yy(a),h.invoke(g,x,B,k,H)}finally{a.shouldCoalesceRunChangeDetection&&!a.callbackScheduled&&!function Qa(a){return xy(a,"__scheduler_tick__")}(k)&&c(),wy(a)}},onHasTask:(h,A,g,x)=>{h.hasTask(g,x),A===g&&("microTask"==x.change?(a._hasPendingMicrotasks=x.microTask,uh(a),Hf(a)):"macroTask"==x.change&&(a.hasPendingMacrotasks=x.macroTask))},onHandleError:(h,A,g,x)=>(h.handleError(g,x),a.runOutsideAngular(()=>a.onError.emit(x)),!1)})}(x)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get(Uf)}static assertInAngularZone(){if(!io.isInAngularZone())throw new Jt(909,!1)}static assertNotInAngularZone(){if(io.isInAngularZone())throw new Jt(909,!1)}run(c,d,h){return this._inner.run(c,d,h)}runTask(c,d,h,A){const g=this._inner,x=g.scheduleEventTask("NgZoneEvent: "+A,c,by,Ad,Ad);try{return g.runTask(x,d,h)}finally{g.cancelTask(x)}}runGuarded(c,d,h){return this._inner.runGuarded(c,d,h)}runOutsideAngular(c){return this._outer.run(c)}}const by={};function Hf(a){if(0==a._nesting&&!a.hasPendingMicrotasks&&!a.isStable)try{a._nesting++,a.onMicrotaskEmpty.emit(null)}finally{if(a._nesting--,!a.hasPendingMicrotasks)try{a.runOutsideAngular(()=>a.onStable.emit(null))}finally{a.isStable=!0}}}function uh(a){a.hasPendingMicrotasks=!!(a._hasPendingMicrotasks||(a.shouldCoalesceEventChangeDetection||a.shouldCoalesceRunChangeDetection)&&!0===a.callbackScheduled)}function yy(a){a._nesting++,a.isStable&&(a.isStable=!1,a.onUnstable.emit(null))}function wy(a){a._nesting--,Hf(a)}class ZA{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new zl,this.onMicrotaskEmpty=new zl,this.onStable=new zl,this.onError=new zl}run(c,d,h){return c.apply(d,h)}runGuarded(c,d,h){return c.apply(d,h)}runOutsideAngular(c){return c()}runTask(c,d,h,A){return c.apply(d,h)}}function xy(a,c){return!(!Array.isArray(a)||1!==a.length)&&!0===a[0]?.data?.[c]}class Tc{constructor(){this._console=console}handleError(c){const d=this._findOriginalError(c);this._console.error("ERROR",c),d&&this._console.error("ORIGINAL ERROR",d)}_findOriginalError(c){let d=c&&ch(c);for(;d&&ch(d);)d=ch(d);return d||null}}const uC=new Sn("",{providedIn:"root",factory:()=>{const a=On(io),c=On(Tc);return d=>a.runOutsideAngular(()=>c.handleError(d))}});function nT(){return yn(Qr(),Pt())}function yn(a,c){return new Di(oa(a,c))}let Di=(()=>{class a{constructor(d){this.nativeElement=d}static{this.__NG_ELEMENT_ID__=nT}}return a})();function Ic(a){return a instanceof Di?a.nativeElement:a}function c_(){return this._results[Symbol.iterator]()}class md{get changes(){return this._changes??=new zl}constructor(c=!1){this._emitDistinctChangesOnly=c,this.dirty=!0,this._onDirty=void 0,this._results=[],this._changesDetected=!1,this._changes=void 0,this.length=0,this.first=void 0,this.last=void 0;const d=md.prototype;d[Symbol.iterator]||(d[Symbol.iterator]=c_)}get(c){return this._results[c]}map(c){return this._results.map(c)}filter(c){return this._results.filter(c)}find(c){return this._results.find(c)}reduce(c,d){return this._results.reduce(c,d)}forEach(c){this._results.forEach(c)}some(c){return this._results.some(c)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(c,d){this.dirty=!1;const h=function va(a){return a.flat(Number.POSITIVE_INFINITY)}(c);(this._changesDetected=!function Ku(a,c,d){if(a.length!==c.length)return!1;for(let h=0;hd_}),d_="ng",iT=new Sn(""),Ey=new Sn("",{providedIn:"platform",factory:()=>"unknown"}),PV=new Sn(""),a4=new Sn("",{providedIn:"root",factory:()=>fh().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});let d4=()=>null;function Dy(a,c,d=!1){return d4(a,c,d)}const m4=new Sn("",{providedIn:"root",factory:()=>!1});let bC,yC;function ph(a){return function vC(){if(void 0===bC&&(bC=null,Ji.trustedTypes))try{bC=Ji.trustedTypes.createPolicy("angular",{createHTML:a=>a,createScript:a=>a,createScriptURL:a=>a})}catch{}return bC}()?.createHTML(a)||a}function y4(a){return function uT(){if(void 0===yC&&(yC=null,Ji.trustedTypes))try{yC=Ji.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:a=>a,createScript:a=>a,createScriptURL:a=>a})}catch{}return yC}()?.createHTML(a)||a}class C4{constructor(c){this.changingThisBreaksApplicationSecurity=c}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${Ii})`}}function Ah(a){return a instanceof C4?a.changingThisBreaksApplicationSecurity:a}function ky(a,c){const d=function QV(a){return a instanceof C4&&a.getTypeName()||null}(a);if(null!=d&&d!==c){if("ResourceURL"===d&&"URL"===c)return!0;throw new Error(`Required a safe ${c}, got a ${d} (see ${Ii})`)}return d===c}class A_{constructor(c){this.inertDocumentHelper=c}getInertBodyElement(c){c=""+c;try{const d=(new window.DOMParser).parseFromString(ph(c),"text/html").body;return null===d?this.inertDocumentHelper.getInertBodyElement(c):(d.firstChild?.remove(),d)}catch{return null}}}class M4{constructor(c){this.defaultDoc=c,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(c){const d=this.inertDocument.createElement("template");return d.innerHTML=ph(c),d}}const zV=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function xC(a){return(a=String(a)).match(zV)?a:"unsafe:"+a}function mh(a){const c={};for(const d of a.split(","))c[d]=!0;return c}function Ry(...a){const c={};for(const d of a)for(const h in d)d.hasOwnProperty(h)&&(c[h]=!0);return c}const E4=mh("area,br,col,hr,img,wbr"),m_=mh("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),S4=mh("rp,rt"),gh=Ry(E4,Ry(m_,mh("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),Ry(S4,mh("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),Ry(S4,m_)),fT=mh("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),I4=Ry(fT,mh("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),mh("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),jV=mh("script,style,template");class F4{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(c){let d=c.firstChild,h=!0,A=[];for(;d;)if(d.nodeType===Node.ELEMENT_NODE?h=this.startElement(d):d.nodeType===Node.TEXT_NODE?this.chars(d.nodeValue):this.sanitizedSomething=!0,h&&d.firstChild)A.push(d),d=D4(d);else for(;d;){d.nodeType===Node.ELEMENT_NODE&&this.endElement(d);let g=Wf(d);if(g){d=g;break}d=A.pop()}return this.buf.join("")}startElement(c){const d=pT(c).toLowerCase();if(!gh.hasOwnProperty(d))return this.sanitizedSomething=!0,!jV.hasOwnProperty(d);this.buf.push("<"),this.buf.push(d);const h=c.attributes;for(let A=0;A"),!0}endElement(c){const d=pT(c).toLowerCase();gh.hasOwnProperty(d)&&!E4.hasOwnProperty(d)&&(this.buf.push(""))}chars(c){this.buf.push(dm(c))}}function Wf(a){const c=a.nextSibling;if(c&&a!==c.previousSibling)throw AT(c);return c}function D4(a){const c=a.firstChild;if(c&&function $V(a,c){return(a.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}(a,c))throw AT(c);return c}function pT(a){const c=a.nodeName;return"string"==typeof c?c:"FORM"}function AT(a){return new Error(`Failed to sanitize html because the element is clobbered: ${a.outerHTML}`)}const qV=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,WV=/([^\#-~ |!])/g;function dm(a){return a.replace(/&/g,"&").replace(qV,function(c){return"&#"+(1024*(c.charCodeAt(0)-55296)+(c.charCodeAt(1)-56320)+65536)+";"}).replace(WV,function(c){return"&#"+c.charCodeAt(0)+";"}).replace(//g,">")}let vd;function CC(a){return"content"in a&&function k4(a){return a.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===a.nodeName}(a)?a.content:null}var um=function(a){return a[a.NONE=0]="NONE",a[a.HTML=1]="HTML",a[a.STYLE=2]="STYLE",a[a.SCRIPT=3]="SCRIPT",a[a.URL=4]="URL",a[a.RESOURCE_URL=5]="RESOURCE_URL",a}(um||{});function hm(a){const c=Py();return c?y4(c.sanitize(um.HTML,a)||""):ky(a,"HTML")?y4(Ah(a)):function B4(a,c){let d=null;try{vd=vd||function cm(a){const c=new M4(a);return function wC(){try{return!!(new window.DOMParser).parseFromString(ph(""),"text/html")}catch{return!1}}()?new A_(c):c}(a);let h=c?String(c):"";d=vd.getInertBodyElement(h);let A=5,g=h;do{if(0===A)throw new Error("Failed to sanitize html because the input is unstable");A--,h=g,g=d.innerHTML,d=vd.getInertBodyElement(h)}while(h!==g);return ph((new F4).sanitizeChildren(CC(d)||d))}finally{if(d){const h=CC(d)||d;for(;h.firstChild;)h.firstChild.remove()}}}(fh(),yi(a))}function Xf(a){const c=Py();return c?c.sanitize(um.URL,a)||"":ky(a,"URL")?Ah(a):xC(yi(a))}function Py(){const a=Pt();return a&&a[La].sanitizer}const JV=/^>|^->||--!>|)/g,tH="\u200b$1\u200b";function V4(a){return a.ownerDocument.defaultView}function H4(a){return a.ownerDocument}function Xl(a){return"browser"===(a??On(ps)).get(Ey)}var SC=function(a){return a[a.Important=1]="Important",a[a.DashCase=2]="DashCase",a}(SC||{});let _T;function bT(a,c){return _T(a,c)}function v_(a,c,d,h,A){if(null!=h){let g,x=!1;Rs(h)?g=h:hs(h)&&(x=!0,h=h[to]);const B=cr(h);0===a&&null!==d?null==A?X4(c,d,B):pm(c,d,B,A||null,!0):1===a&&null!==d?pm(c,d,B,A||null,!0):2===a?function Ny(a,c,d){a.removeChild(null,c,d)}(c,B,x):3===a&&c.destroyNode(B),null!=g&&function bH(a,c,d,h,A){const g=d[Bl];g!==cr(d)&&v_(c,a,h,g,A);for(let B=Ho;Bc.replace(eH,tH))}(c))}function TC(a,c,d){return a.createElement(c,d)}function $4(a,c){c[La].changeDetectionScheduler?.notify(9),DC(a,c,c[Oi],2,null,null)}function q4(a,c){const d=a[eh],h=c[$o];(hs(h)||c[go]!==h[$o][go])&&(a[xi]|=B0.HasTransplantedViews),null===d?a[eh]=[c]:d.push(c)}function wT(a,c){const d=a[eh],h=d.indexOf(c);d.splice(h,1)}function Oy(a,c){if(a.length<=Ho)return;const d=Ho+c,h=a[d];if(h){const A=h[xc];null!==A&&A!==a&&wT(A,h),c>0&&(a[d-1][ll]=h[ll]);const g=hf(a,Ho+c);!function uH(a,c){$4(a,c),c[to]=null,c[Cs]=null}(h[en],h);const x=g[cl];null!==x&&x.detachView(g[en]),h[$o]=null,h[ll]=null,h[xi]&=-129}return h}function IC(a,c){if(!(256&c[xi])){const d=c[Oi];d.destroyNode&&DC(a,c,d,3,null,null),function fH(a){let c=a[Qd];if(!c)return xT(a[en],a);for(;c;){let d=null;if(hs(c))d=c[Qd];else{const h=c[Ho];h&&(d=h)}if(!d){for(;c&&!c[ll]&&c!==a;)hs(c)&&xT(c[en],c),c=c[$o];null===c&&(c=a),hs(c)&&xT(c[en],c),d=c&&c[ll]}c=d}}(c)}}function xT(a,c){if(256&c[xi])return;const d=L(null);try{c[xi]&=-129,c[xi]|=256,c[Ua]&&Je(c[Ua]),function mH(a,c){let d;if(null!=a&&null!=(d=a.destroyHooks))for(let h=0;h=0?h[x]():h[-x].unsubscribe(),g+=2}else d[g].call(h[d[g+1]]);null!==h&&(c[Ju]=null);const A=c[od];if(null!==A){c[od]=null;for(let g=0;g-1){const{encapsulation:g}=a.data[h.directiveStart+A];if(g===vc.None||g===vc.Emulated)return null}return oa(h,d)}}(a,c.parent,d)}function pm(a,c,d,h,A){a.insertBefore(c,d,h,A)}function X4(a,c,d){a.appendChild(c,d)}function K4(a,c,d,h,A){null!==h?pm(a,c,d,h,A):X4(a,c,d)}function MT(a,c){return a.parentNode(c)}function Y4(a,c,d){return J4(a,c,d)}let ET,J4=function Z4(a,c,d){return 40&a.type?oa(a,d):null};function FC(a,c,d,h){const A=CT(a,h,c),g=c[Oi],B=Y4(h.parent||c[Cs],h,c);if(null!=A)if(Array.isArray(d))for(let k=0;khi&&aO(a,c,hi,!1),Rl(x?2:0,A),d(h,A)}finally{ad(g),Rl(x?3:1,A)}}function PC(a,c,d){if(k0(c)){const h=L(null);try{const g=c.directiveEnd;for(let x=c.directiveStart;xnull;function y_(a,c,d,h,A){for(let g in c){if(!c.hasOwnProperty(g))continue;const x=c[g];if(void 0===x)continue;h??={};let B,k=Zc.None;Array.isArray(x)?(B=x[0],k=x[1]):B=x;let H=g;if(null!==A){if(!A.hasOwnProperty(g))continue;H=A[g]}0===a?LC(h,d,H,B,k):LC(h,d,H,B)}return h}function LC(a,c,d,h,A){let g;a.hasOwnProperty(d)?(g=a[d]).push(c,h):g=a[d]=[c,h],void 0!==A&&g.push(A)}function As(a,c,d,h,A,g,x,B){const k=oa(c,d);let K,H=c.inputs;!B&&null!=H&&(K=H[h])?(S_(a,d,K,h,A),th(c)&&function DT(a,c){const d=$s(c,a);16&d[xi]||(d[xi]|=64)}(d,c.index)):3&c.type&&(h=function pO(a){return"class"===a?"className":"for"===a?"htmlFor":"formaction"===a?"formAction":"innerHtml"===a?"innerHTML":"readonly"===a?"readOnly":"tabindex"===a?"tabIndex":a}(h),A=null!=x?x(A,c.value||"",h):A,g.setProperty(k,h,A))}function kT(a,c,d,h){if(SA()){const A=null===h?null:{"":-1},g=function _O(a,c){const d=a.directiveRegistry;let h=null,A=null;if(d)for(let g=0;g0;){const d=a[--c];if("number"==typeof d&&d<0)return d}return 0})(x)!=B&&x.push(B),x.push(d,h,g)}}(a,c,h,Yf(a,d,A.hostVars,ir),A)}function iu(a,c,d,h,A,g){const x=oa(a,c);!function w_(a,c,d,h,A,g,x){if(null==g)a.removeAttribute(c,A,d);else{const B=null==x?yi(g):x(g,h||"",A);a.setAttribute(c,A,B,d)}}(c[Oi],x,g,a.value,d,h,A)}function x_(a,c,d,h,A,g){const x=g[c];if(null!==x)for(let B=0;B0&&(d[A-1][ll]=c),h{z0(a.lView)},consumerOnSignalRead(){this.lView[Ua]=this}},CO={...z,consumerIsAlwaysLive:!0,consumerMarkedDirty:a=>{let c=Cc(a.lView);for(;c&&!QT(c[en]);)c=Cc(c);c&&$v(c)},consumerOnSignalRead(){this.lView[Ua]=this}};function QT(a){return 2!==a.type}const MO=100;function Gy(a,c=!0,d=0){const h=a[La],A=h.rendererFactory;A.begin?.();try{!function EO(a,c){const d=Zv();try{Z0(!0),jy(a,c);let h=0;for(;Q0(a);){if(h===MO)throw new Jt(103,!1);h++,jy(a,1)}}finally{Z0(d)}}(a,d)}catch(x){throw c&&Zf(a,x),x}finally{A.end?.(),h.inlineEffectRunner?.flush()}}function GT(a,c,d,h){const A=c[xi];if(!(256&~A))return;c[La].inlineEffectRunner?.flush(),Ff(c);let B=!0,k=null,H=null;QT(a)?(H=function wO(a){return a[Ua]??function SH(a){const c=HT.pop()??Object.create(zC);return c.lView=a,c}(a)}(c),k=Be(H)):null===Y()?(B=!1,H=function xO(a){const c=a[Ua]??Object.create(CO);return c.lView=a,c}(c),k=Be(H)):c[Ua]&&(Je(c[Ua]),c[Ua]=null);try{jv(c),function DA(a){return Ni.lFrame.bindingIndex=a}(a.bindingStartIndex),null!==d&&RC(a,c,d,2,h);const K=!(3&~A);if(K){const je=a.preOrderCheckHooks;null!==je&&bn(c,je,null)}else{const je=a.preOrderHooks;null!==je&&Vn(c,je,0,null),oy(c,0)}if(function SO(a){for(let c=Hn(a);null!==c;c=gr(c)){if(!(c[xi]&B0.HasTransplantedViews))continue;const d=c[eh];for(let h=0;h-1&&(Oy(c,h),hf(d,h))}this._attachedToViewContainer=!1}IC(this._lView[en],this._lView)}onDestroy(c){MA(this._lView,c)}markForCheck(){$y(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[xi]&=-129}reattach(){qv(this._lView),this._lView[xi]|=128}detectChanges(){this._lView[xi]|=1024,Gy(this._lView,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new Jt(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;const c=yA(this._lView),d=this._lView[xc];null!==d&&!c&&wT(d,this._lView),$4(this._lView[en],this._lView)}attachToAppRef(c){if(this._attachedToViewContainer)throw new Jt(902,!1);this._appRef=c;const d=yA(this._lView),h=this._lView[xc];null!==h&&!d&&q4(h,this._lView),qv(this._lView)}}let Wy=(()=>{class a{static{this.__NG_ELEMENT_ID__=DH}}return a})();const IH=Wy,FH=class extends IH{constructor(c,d,h){super(),this._declarationLView=c,this._declarationTContainer=d,this.elementRef=h}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(c,d){return this.createEmbeddedViewImpl(c,d)}createEmbeddedViewImpl(c,d,h){const A=Jf(this._declarationLView,this._declarationTContainer,c,{embeddedViewInjector:d,dehydratedView:h});return new qy(A)}};function DH(){return vm(Qr(),Pt())}function vm(a,c){return 4&a.type?new FH(c,a,yn(a,c)):null}let jO=()=>null;function Tm(a,c){return jO(a,c)}class au{}const Jy=new Sn("",{providedIn:"root",factory:()=>!1}),$O=new Sn(""),nM=new Sn("");class qO{}class pI{}class XO{resolveComponentFactory(c){throw function YH(a){const c=Error(`No component factory found for ${Et(a)}.`);return c.ngComponent=a,c}(c)}}class e1{static{this.NULL=new XO}}class AI{}let JH=(()=>{class a{constructor(){this.destroyNode=null}static{this.__NG_ELEMENT_ID__=()=>function e9(){const a=Pt(),d=$s(Qr().index,a);return(hs(d)?d:a)[Oi]}()}}return a})(),mI=(()=>{class a{static{this.\u0275prov=En({token:a,providedIn:"root",factory:()=>null})}}return a})();function R_(a,c,d){let h=d?a.styles:null,A=d?a.classes:null,g=0;if(null!==c)for(let x=0;x0&&rO(a,d,g.join(" "))}}(Re,Or,ot,h),void 0!==d&&function r9(a,c,d){const h=a.projection=[];for(let A=0;A{class a{static{this.__NG_ELEMENT_ID__=yd}}return a})();function yd(){return oM(Qr(),Pt())}const eN=t1,xI=class extends eN{constructor(c,d,h){super(),this._lContainer=c,this._hostTNode=d,this._hostLView=h}get element(){return yn(this._hostTNode,this._hostLView)}get injector(){return new Vi(this._hostTNode,this._hostLView)}get parentInjector(){const c=ud(this._hostTNode,this._hostLView);if(Of(c)){const d=Xd(c,this._hostLView),h=cd(c);return new Vi(d[en].data[h+8],d)}return new Vi(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(c){const d=tN(this._lContainer);return null!==d&&d[c]||null}get length(){return this._lContainer.length-Ho}createEmbeddedView(c,d,h){let A,g;"number"==typeof h?A=h:null!=h&&(A=h.index,g=h.injector);const x=Tm(this._lContainer,c.ssrId),B=c.createEmbeddedViewImpl(d||{},g,x);return this.insertImpl(B,A,ou(this._hostTNode,x)),B}createComponent(c,d,h,A,g){const x=c&&!function rd(a){return"function"==typeof a}(c);let B;if(x)B=d;else{const ot=d||{};B=ot.index,h=ot.injector,A=ot.projectableNodes,g=ot.environmentInjector||ot.ngModuleRef}const k=x?c:new ml($i(c)),H=h||this.parentInjector;if(!g&&null==k.ngModule){const Vt=(x?H:this.parentInjector).get(al,null);Vt&&(g=Vt)}const K=$i(k.componentType??{}),ae=Tm(this._lContainer,K?.id??null),je=k.create(H,A,ae?.firstChild??null,g);return this.insertImpl(je.hostView,B,ou(this._hostTNode,ae)),je}insert(c,d){return this.insertImpl(c,d,!0)}insertImpl(c,d,h){const A=c._lView;if(function Ef(a){return Rs(a[$o])}(A)){const B=this.indexOf(c);if(-1!==B)this.detach(B);else{const k=A[$o],H=new xI(k,k[Cs],k[$o]);H.detach(H.indexOf(c))}}const g=this._adjustIndex(d),x=this._lContainer;return _m(x,A,g,h),c.attachToViewContainerRef(),Rx(n1(x),g,c),c}move(c,d){return this.insert(c,d)}indexOf(c){const d=tN(this._lContainer);return null!==d?d.indexOf(c):-1}remove(c){const d=this._adjustIndex(c,-1),h=Oy(this._lContainer,d);h&&(hf(n1(this._lContainer),d),IC(h[en],h))}detach(c){const d=this._adjustIndex(c,-1),h=Oy(this._lContainer,d);return h&&null!=hf(n1(this._lContainer),d)?new qy(h):null}_adjustIndex(c,d=0){return c??this.length+d}};function tN(a){return a[8]}function n1(a){return a[8]||(a[8]=[])}function oM(a,c){let d;const h=c[a.index];return Rs(h)?d=h:(d=C_(h,c,null,a),c[a.index]=d,M_(c,d)),r1(d,c,a,h),new xI(d,a,c)}let r1=function CI(a,c,d,h){if(a[Bl])return;let A;A=8&d.type?cr(h):function sM(a,c){const d=a[Oi],h=d.createComment(""),A=oa(c,a);return pm(d,MT(d,A),h,function gH(a,c){return a.nextSibling(c)}(d,A),!1),h}(c,d),a[Bl]=A},o1=()=>!1;class aM{constructor(c){this.queryList=c,this.matches=null}clone(){return new aM(this.queryList)}setDirty(){this.queryList.setDirty()}}class EI{constructor(c=[]){this.queries=c}createEmbeddedView(c){const d=c.queries;if(null!==d){const h=null!==c.contentQueries?c.contentQueries[0]:d.length,A=[];for(let g=0;gc.trim())}(c):c}}class SI{constructor(c=[]){this.queries=c}elementStart(c,d){for(let h=0;h0)h.push(x[B/2]);else{const H=g[B+1],K=c[-k];for(let ae=Ho;ae(G(c),c.value);return d[U]=c,d}(a),h=d[U];return c?.equal&&(h.equal=c.equal),d.set=A=>Bi(h,A),d.update=A=>function ri(a,c){me()||Nt(),Bi(a,c(a.value))}(h,A),d.asReadonly=uN.bind(d),d}function uN(){const a=this[U];if(void 0===a.readonlyFn){const c=()=>this();c[U]=a,a.readonlyFn=c}return a.readonlyFn}function kI(a){return BI(a)&&"function"==typeof a.set}function lu(a,c){let d;const h=ve(()=>{d._dirtyCounter();const A=function hN(a,c){const d=a._lView,h=a._queryIndex;if(void 0===d||void 0===h||4&d[xi])return c?void 0:Tr;const A=lM(d,h),g=lN(d,h);return A.reset(g,Ic),c?A.first:A._changesDetected||void 0===a._flatValue?a._flatValue=A.toArray():a._flatValue}(d,a);if(c&&void 0===A)throw new Jt(-951,!1);return A});return d=h[U],d._dirtyCounter=dN(0),d._flatValue=void 0,h}function O_(a,c){return function RI(){return lu(!0,!1)}()}const AN=(O_.required=function pN(a,c){return function PI(){return lu(!0,!0)}()},O_);function $I(a){let c=function uM(a){return Object.getPrototypeOf(a.prototype).constructor}(a.type),d=!0;const h=[a];for(;c;){let A;if(kl(a))A=c.\u0275cmp||c.\u0275dir;else{if(c.\u0275cmp)throw new Jt(903,!1);A=c.\u0275dir}if(A){if(d){h.push(A);const x=a;x.inputs=a1(a.inputs),x.inputTransforms=a1(a.inputTransforms),x.declaredInputs=a1(a.declaredInputs),x.outputs=a1(a.outputs);const B=A.hostBindings;B&&MN(a,B);const k=A.viewQuery,H=A.contentQueries;if(k&&qI(a,k),H&&WI(a,H),w9(a,A),rt(a.outputs,A.outputs),kl(A)&&A.data.animation){const K=a.data;K.animation=(K.animation||[]).concat(A.data.animation)}}const g=A.features;if(g)for(let x=0;x=0;h--){const A=a[h];A.hostVars=c+=A.hostVars,A.hostAttrs=hA(A.hostAttrs,d=hA(d,A.hostAttrs))}}(h)}function w9(a,c){for(const d in c.inputs){if(!c.inputs.hasOwnProperty(d)||a.inputs.hasOwnProperty(d))continue;const h=c.inputs[d];if(void 0!==h&&(a.inputs[d]=h,a.declaredInputs[d]=c.declaredInputs[d],null!==c.inputTransforms)){const A=Array.isArray(h)?h[0]:h;if(!c.inputTransforms.hasOwnProperty(A))continue;a.inputTransforms??={},a.inputTransforms[A]=c.inputTransforms[A]}}}function a1(a){return a===Fl?{}:a===Tr?[]:a}function qI(a,c){const d=a.viewQuery;a.viewQuery=d?(h,A)=>{c(h,A),d(h,A)}:c}function WI(a,c){const d=a.contentQueries;a.contentQueries=d?(h,A,g)=>{c(h,A,g),d(h,A,g)}:c}function MN(a,c){const d=a.hostBindings;a.hostBindings=d?(h,A)=>{c(h,A),d(h,A)}:c}function Ro(a){const c=d=>{const h=(Array.isArray(a)?a:a()).map(A=>"function"==typeof A?{directive:Xt(A),inputs:Fl,outputs:Fl}:{directive:Xt(A.directive),inputs:U_(A.inputs),outputs:U_(A.outputs)});null===d.hostDirectives?(d.findHostDirectiveDefs=L_,d.hostDirectives=h):d.hostDirectives.unshift(...h)};return c.ngInherit=!0,c}function L_(a,c,d){if(null!==a.hostDirectives)for(const h of a.hostDirectives){const A=Uo(h.directive);XI(A.declaredInputs,h.inputs),L_(A,c,d),d.set(A,h),c.push(A)}}function U_(a){if(void 0===a||0===a.length)return Fl;const c={};for(let d=0;dd()),this.destroyCbs=null}onDestroy(c){this.destroyCbs.push(c)}}class ZI extends np{constructor(c){super(),this.componentFactoryResolver=new Dm(this),this.instance=null;const d=new id([...c.providers,{provide:np,useValue:this},{provide:e1,useValue:this.componentFactoryResolver}],c.parent||mf(),c.debugName,new Set(["environment"]));this.injector=d,c.runEnvironmentInitializers&&d.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(c){this.injector.onDestroy(c)}}function H_(a){return!!Pm(a)&&(Array.isArray(a)||!(a instanceof Map)&&Symbol.iterator in a)}function Pm(a){return null!==a&&("function"==typeof a||"object"==typeof a)}function Pc(a,c,d){return a[c]=d}function qo(a,c,d){return!Object.is(a[c],d)&&(a[c]=d,!0)}function du(a,c,d,h){const A=qo(a,c,d);return qo(a,c+1,h)||A}function gl(a,c,d,h,A,g){const x=du(a,c,d,h);return du(a,c+2,A,g)||x}function Nm(a,c,d,h,A,g,x,B,k,H){const K=d+hi,ae=c.firstCreatePass?function FN(a,c,d,h,A,g,x,B,k){const H=c.consts,K=Kf(c,a,4,x||null,B||null);kT(c,d,K,Va(H,k)),NA(c,K);const ae=K.tView=IT(2,K,h,A,g,c.directiveRegistry,c.pipeRegistry,null,c.schemas,H,null);return null!==c.queries&&(c.queries.template(c,K),ae.queries=c.queries.embeddedTView(K)),K}(K,c,a,h,A,g,x,B,k):c.data[K];xo(ae,!1);const Re=u1(c,a,ae,d);rh()&&FC(c,a,Re,ae),ge(Re,a);const je=C_(Re,a,Re,ae);return a[K]=je,M_(a,je),function P_(a,c,d){return o1(a,c,d)}(je,ae,a),R0(ae)&&OC(c,a,ae),null!=k&&gm(a,ae,H),ae}function z_(a,c,d,h,A,g,x,B){const k=Pt(),H=ar();return Nm(k,H,a,c,d,h,A,Va(H.consts,g),x,B),z_}let u1=function wh(a,c,d,h){return hl(!0),c[Oi].createComment("")};function rF(a,c){if(null!==Y())throw new Jt(-602,!1)}var Um=function(a){return a[a.EarlyRead=0]="EarlyRead",a[a.Write=1]="Write",a[a.MixedReadWrite=2]="MixedReadWrite",a[a.Read=3]="Read",a}(Um||{});let oF=(()=>{class a{constructor(){this.impl=null}execute(){this.impl?.execute()}static{this.\u0275prov=En({token:a,providedIn:"root",factory:()=>new a})}}return a})();class Vm{constructor(){this.ngZone=On(io),this.scheduler=On(au),this.errorHandler=On(Tc,{optional:!0}),this.sequences=new Set,this.deferredRegistrations=new Set,this.executing=!1}static{this.PHASES=[Um.EarlyRead,Um.Write,Um.MixedReadWrite,Um.Read]}execute(){this.executing=!0;for(const c of Vm.PHASES)for(const d of this.sequences)if(!d.erroredOrDestroyed&&d.hooks[c])try{d.pipelinedValue=this.ngZone.runOutsideAngular(()=>d.hooks[c](d.pipelinedValue))}catch(h){d.erroredOrDestroyed=!0,this.errorHandler?.handleError(h)}this.executing=!1;for(const c of this.sequences)c.afterRun(),c.once&&(this.sequences.delete(c),c.destroy());for(const c of this.deferredRegistrations)this.sequences.add(c);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear()}register(c){this.executing?this.deferredRegistrations.add(c):(this.sequences.add(c),this.scheduler.notify(6))}unregister(c){this.executing&&this.sequences.has(c)?(c.erroredOrDestroyed=!0,c.pipelinedValue=void 0,c.once=!0):(this.sequences.delete(c),this.deferredRegistrations.delete(c))}static{this.\u0275prov=En({token:Vm,providedIn:"root",factory:()=>new Vm})}}class mr{constructor(c,d,h,A){this.impl=c,this.hooks=d,this.once=h,this.erroredOrDestroyed=!1,this.pipelinedValue=void 0,this.unregisterOnDestroy=A?.onDestroy(()=>this.destroy())}afterRun(){this.erroredOrDestroyed=!1,this.pipelinedValue=void 0}destroy(){this.impl.unregister(this),this.unregisterOnDestroy?.()}}function fM(a,c){!c?.injector&&_f();const d=c?.injector??On(ps);return Xl(d)?(Ia("NgAfterRender"),sF(a,d,c,!1)):pM}function fu(a,c){!c?.injector&&_f();const d=c?.injector??On(ps);return Xl(d)?(Ia("NgAfterNextRender"),sF(a,d,c,!0)):pM}function sF(a,c,d,h){const A=c.get(oF);A.impl??=c.get(Vm);const g=d?.phase??Um.MixedReadWrite,x=!0!==d?.manualCleanup?c.get(dh):null,B=new mr(A.impl,function RN(a,c){if(a instanceof Function){const d=[void 0,void 0,void 0,void 0];return d[c]=a,d}return[a.earlyRead,a.write,a.mixedReadWrite,a.read]}(a,g),h,x);return A.impl.register(B),B}const pM={destroy(){}};function FM(a,c,d,h){const A=Pt();return qo(A,dl(),c)&&(ar(),iu(kr(),A,a,c,d,h)),FM}function $m(a,c,d,h){return qo(a,dl(),d)?c+yi(d)+h:ir}function up(a,c,d,h,A,g){const B=du(a,Nl(),d,A);return Rr(2),B?c+yi(d)+h+yi(A)+g:ir}function DM(a,c){return a<<17|c<<2}function Fo(a){return a>>17&32767}function BM(a){return 2|a}function Au(a){return(131068&a)>>2}function kM(a,c){return-131069&a|c<<2}function RM(a){return 1|a}function PM(a,c,d,h){const A=a[d+1],g=null===c;let x=h?Fo(A):Au(A),B=!1;for(;0!==x&&(!1===B||g);){const H=a[x+1];Ys(a[x],c)&&(B=!0,a[x+1]=h?RM(H):BM(H)),x=h?Fo(H):Au(H)}B&&(a[d+1]=h?BM(A):RM(A))}function Ys(a,c){return null===a||null==c||(Array.isArray(a)?a[1]:a)===c||!(!Array.isArray(a)||"string"!=typeof c)&&ff(a,c)>=0}const gs={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Nc(a){return a.substring(gs.key,gs.keyEnd)}function GN(a){return a.substring(gs.value,gs.valueEnd)}function SF(a,c){const d=gs.textEnd;return d===c?-1:(c=gs.keyEnd=function $N(a,c,d){for(;c32;)c++;return c}(a,gs.key=c,d),Jm(a,c,d))}function Y_(a,c){const d=gs.textEnd;let h=gs.key=Jm(a,c,d);return d===h?-1:(h=gs.keyEnd=function qN(a,c,d){let h;for(;c=65&&(-33&h)<=90||h>=48&&h<=57);)c++;return c}(a,h,d),h=Z_(a,h,d),h=gs.value=Jm(a,h,d),h=gs.valueEnd=function WN(a,c,d){let h=-1,A=-1,g=-1,x=c,B=x;for(;x32&&(B=x),g=A,A=h,h=-33&k}return B}(a,h,d),Z_(a,h,d))}function TF(a){gs.key=0,gs.keyEnd=0,gs.value=0,gs.valueEnd=0,gs.textEnd=a.length}function Jm(a,c,d){for(;c=0;d=Y_(c,d))la(a,Nc(c),GN(c))}function BF(a){_s(eg,rr,a,!0)}function rr(a,c){for(let d=function OM(a){return TF(a),SF(a,Jm(a,0,gs.textEnd))}(c);d>=0;d=SF(c,d))ya(a,Nc(c),!0)}function Us(a,c,d,h){const A=Pt(),g=ar(),x=Rr(2);g.firstUpdatePass&&mp(g,a,x,h),c!==ir&&qo(A,x,c)&&_p(g,g.data[qn()],A,A[Oi],a,A[x+1]=function PF(a,c){return null==a||""===a||("string"==typeof c?a+=c:"object"==typeof a&&(a=Et(Ah(a)))),a}(c,d),h,x)}function _s(a,c,d,h){const A=ar(),g=Rr(2);A.firstUpdatePass&&mp(A,null,g,h);const x=Pt();if(d!==ir&&qo(x,g,d)){const B=A.data[qn()];if(mu(B,h)&&!kF(A,g)){let k=h?B.classesWithoutHost:B.stylesWithoutHost;null!==k&&(d=ln(k,d||"")),DF(A,B,x,d,h)}else!function gp(a,c,d,h,A,g,x,B){A===ir&&(A=Tr);let k=0,H=0,K=0=a.expandoStartIndex}function mp(a,c,d,h){const A=a.data;if(null===A[d+1]){const g=A[qn()],x=kF(a,d);mu(g,h)&&null===c&&!x&&(c=!1),c=function LM(a,c,d,h){const A=function kA(a){const c=Ni.lFrame.currentDirectiveIndex;return-1===c?null:a[c]}(a);let g=h?c.residualClasses:c.residualStyles;if(null===A)0===(h?c.classBindings:c.styleBindings)&&(d=Uc(d=eb(null,a,c,d,h),c.attrs,h),g=null);else{const x=c.directiveStylingLast;if(-1===x||a[x]!==A)if(d=eb(A,a,c,d,h),null===g){let k=function UM(a,c,d){const h=d?c.classBindings:c.styleBindings;if(0!==Au(h))return a[Fo(h)]}(a,c,h);void 0!==k&&Array.isArray(k)&&(k=eb(null,a,c,k[1],h),k=Uc(k,c.attrs,h),function VM(a,c,d,h){a[Fo(d?c.classBindings:c.styleBindings)]=h}(a,c,h,k))}else g=function HM(a,c,d){let h;const A=c.directiveEnd;for(let g=1+c.directiveStylingLast;g0)&&(H=!0)):K=d,A)if(0!==k){const Re=Fo(a[B+1]);a[h+1]=DM(Re,B),0!==Re&&(a[Re+1]=kM(a[Re+1],h)),a[B+1]=function pp(a,c){return 131071&a|c<<17}(a[B+1],h)}else a[h+1]=DM(B,0),0!==B&&(a[B+1]=kM(a[B+1],h)),B=h;else a[h+1]=DM(k,0),0===B?B=h:a[k+1]=kM(a[k+1],h),k=h;H&&(a[h+1]=BM(a[h+1])),PM(a,K,h,!0),PM(a,K,h,!1),function Jl(a,c,d,h,A){const g=A?a.residualClasses:a.residualStyles;null!=g&&"string"==typeof c&&ff(g,c)>=0&&(d[h+1]=RM(d[h+1]))}(c,K,a,h,g),x=DM(B,k),g?c.classBindings=x:c.styleBindings=x}(A,g,c,d,x,h)}}function eb(a,c,d,h,A){let g=null;const x=d.directiveEnd;let B=d.directiveStylingLast;for(-1===B?B=d.directiveStart:B++;B0;){const k=a[A],H=Array.isArray(k),K=H?k[1]:k,ae=null===K;let Re=d[A+1];Re===ir&&(Re=ae?Tr:void 0);let je=ae?x0(Re,h):K===h?Re:void 0;if(H&&!xd(je)&&(je=x0(k,h)),xd(je)&&(B=je,x))return B;const ot=a[A+1];A=x?Fo(ot):Au(ot)}if(null!==c){let k=g?c.residualClasses:c.residualStyles;null!=k&&(B=x0(k,h))}return B}function xd(a){return void 0!==a}function mu(a,c){return!!(a.flags&(c?8:16))}function OF(a,c,d){_s(ya,rr,$m(Pt(),a,c,d),!0)}function KN(a,c,d,h,A){_s(ya,rr,up(Pt(),a,c,d,h,A),!0)}function bp(){return Pt()[go][no]}class LF{destroy(c){}updateValue(c,d){}swap(c,d){const h=Math.min(c,d),A=Math.max(c,d),g=this.detach(A);if(A-h>1){const x=this.detach(h);this.attach(h,g),this.attach(A,x)}else this.attach(h,g)}move(c,d){this.attach(d,this.detach(c))}}function ib(a,c,d,h,A){return a===d&&Object.is(c,h)?1:Object.is(A(a,c),A(d,h))?-1:0}function zM(a,c,d,h){return!(void 0===c||!c.has(h)||(a.attach(d,c.get(h)),c.delete(h),0))}function Vc(a,c,d,h,A){if(zM(a,c,h,d(h,A)))a.updateValue(h,A);else{const g=a.create(h,A);a.attach(h,g)}}function tg(a,c,d,h){const A=new Set;for(let g=c;g<=d;g++)A.add(h(g,a.at(g)));return A}class UF{constructor(){this.kvMap=new Map,this._vMap=void 0}has(c){return this.kvMap.has(c)}delete(c){if(!this.has(c))return!1;const d=this.kvMap.get(c);return void 0!==this._vMap&&this._vMap.has(d)?(this.kvMap.set(c,this._vMap.get(d)),this._vMap.delete(d)):this.kvMap.delete(c),!0}get(c){return this.kvMap.get(c)}set(c,d){if(this.kvMap.has(c)){let h=this.kvMap.get(c);void 0===this._vMap&&(this._vMap=new Map);const A=this._vMap;for(;A.has(h);)h=A.get(h);A.set(h,d)}else this.kvMap.set(c,d)}forEach(c){for(let[d,h]of this.kvMap)if(c(h,d),void 0!==this._vMap){const A=this._vMap;for(;A.has(h);)h=A.get(h),c(h,d)}}}function VF(a,c){Ia("NgControlFlow");const d=Pt(),h=dl(),A=d[h]!==ir?d[h]:-1,g=-1!==A?w1(d,hi+A):void 0;if(qo(d,h,a)){const B=L(null);try{if(void 0!==g&&zy(g,0),-1!==a){const k=hi+a,H=w1(d,k),K=qM(d[en],k),ae=Tm(H,K.tView.ssrId);_m(H,Jf(d,K,c,{dehydratedView:ae}),0,ou(K,ae))}}finally{L(B)}}else if(void 0!==g){const B=VT(g,0);void 0!==B&&(B[no]=c)}}class ob{constructor(c,d,h){this.lContainer=c,this.$implicit=d,this.$index=h}get $count(){return this.lContainer.length-Ho}}function GM(a){return a}function jM(a,c){return c}class ZN{constructor(c,d,h){this.hasEmptyBlock=c,this.trackByFn=d,this.liveCollection=h}}function $M(a,c,d,h,A,g,x,B,k,H,K,ae,Re){Ia("NgControlFlow");const je=Pt(),ot=ar(),Vt=void 0!==k,an=Pt(),gn=B?x.bind(an[go][no]):x,Lt=new ZN(Vt,gn);an[hi+a]=Lt,Nm(je,ot,a+1,c,d,h,A,Va(ot.consts,g)),Vt&&Nm(je,ot,a+2,k,H,K,ae,Va(ot.consts,Re))}class JN extends LF{constructor(c,d,h){super(),this.lContainer=c,this.hostLView=d,this.templateTNode=h,this.operationsCounter=void 0,this.needsIndexUpdate=!1}get length(){return this.lContainer.length-Ho}at(c){return this.getLView(c)[no].$implicit}attach(c,d){const h=d[Gs];this.needsIndexUpdate||=c!==this.length,_m(this.lContainer,d,c,ou(this.templateTNode,h))}detach(c){return this.needsIndexUpdate||=c!==this.length-1,function eL(a,c){return Oy(a,c)}(this.lContainer,c)}create(c,d){const h=Tm(this.lContainer,this.templateTNode.tView.ssrId),A=Jf(this.hostLView,this.templateTNode,new ob(this.lContainer,d,c),{dehydratedView:h});return this.operationsCounter?.recordCreate(),A}destroy(c){IC(c[en],c),this.operationsCounter?.recordDestroy()}updateValue(c,d){this.getLView(c)[no].$implicit=d}reset(){this.needsIndexUpdate=!1,this.operationsCounter?.reset()}updateIndexes(){if(this.needsIndexUpdate)for(let c=0;c{a.destroy(k)})}(k,a,g.trackByFn),k.updateIndexes(),g.hasEmptyBlock){const H=dl(),K=0===k.length;if(qo(h,H,K)){const ae=d+2,Re=w1(h,ae);if(K){const je=qM(A,ae),ot=Tm(Re,je.tView.ssrId);_m(Re,Jf(h,je,void 0,{dehydratedView:ot}),0,ou(je,ot))}else zy(Re,0)}}}finally{L(c)}}function w1(a,c){return a[c]}function qM(a,c){return Ir(a,c)}function x1(a,c,d,h){const A=Pt(),g=ar(),x=hi+a,B=A[Oi],k=g.firstCreatePass?function nL(a,c,d,h,A,g){const x=c.consts,k=Kf(c,a,2,h,Va(x,A));return kT(c,d,k,Va(x,g)),null!==k.attrs&&R_(k,k.attrs,!1),null!==k.mergedAttrs&&R_(k,k.mergedAttrs,!0),null!==c.queries&&c.queries.elementStart(c,k),k}(x,g,A,c,d,h):g.data[x],H=QF(g,A,k,B,c,a);A[x]=H;const K=R0(k);return xo(k,!0),oO(B,H,k),!function Om(a){return!(32&~a.flags)}(k)&&rh()&&FC(g,A,H,k),0===function eC(){return Ni.lFrame.elementDepthCount}()&&ge(H,A),function $0(){Ni.lFrame.elementDepthCount++}(),K&&(OC(g,A,k),PC(g,k,A)),null!==h&&gm(A,k),x1}function C1(){let a=Qr();Yr()?FA():(a=a.parent,xo(a,!1));const c=a;(function Wv(a){return Ni.skipHydrationRootTNode===a})(c)&&function Kv(){Ni.skipHydrationRootTNode=null}(),function Ol(){Ni.lFrame.elementDepthCount--}();const d=ar();return d.firstCreatePass&&(NA(d,a),k0(a)&&d.queries.elementEnd(a)),null!=c.classesWithoutHost&&function rC(a){return!!(8&a.flags)}(c)&&DF(d,c,Pt(),c.classesWithoutHost,!0),null!=c.stylesWithoutHost&&function ly(a){return!!(16&a.flags)}(c)&&DF(d,c,Pt(),c.stylesWithoutHost,!1),C1}function WM(a,c,d,h){return x1(a,c,d,h),C1(),WM}let QF=(a,c,d,h,A,g)=>(hl(!0),TC(h,A,function OA(){return Ni.lFrame.currentNamespace}()));function M1(a,c,d){const h=Pt(),A=ar(),g=a+hi,x=A.firstCreatePass?function rL(a,c,d,h,A){const g=c.consts,x=Va(g,h),B=Kf(c,a,8,"ng-container",x);return null!==x&&R_(B,x,!0),kT(c,d,B,Va(g,A)),null!==c.queries&&c.queries.elementStart(c,B),B}(g,A,h,c,d):A.data[g];xo(x,!0);const B=ng(A,h,x,a);return h[g]=B,rh()&&FC(A,h,B,x),ge(B,h),R0(x)&&(OC(A,h,x),PC(A,x,h)),null!=d&&gm(h,x),M1}function vp(){let a=Qr();const c=ar();return Yr()?FA():(a=a.parent,xo(a,!1)),c.firstCreatePass&&(NA(c,a),k0(a)&&c.queries.elementEnd(a)),vp}function E1(a,c,d){return M1(a,c,d),vp(),E1}let ng=(a,c,d,h)=>(hl(!0),yT(c[Oi],""));function zF(){return Pt()}function XM(a,c,d){const h=Pt();return qo(h,dl(),c)&&As(ar(),kr(),h,a,c,h[Oi],d,!0),XM}const yp=void 0;var jF=["en",[["a","p"],["AM","PM"],yp],[["AM","PM"],yp,yp],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],yp,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],yp,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",yp,"{1} 'at' {0}",yp],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function GF(a){const d=Math.floor(Math.abs(a)),h=a.toString().replace(/^[^.]*\.?/,"").length;return 1===d&&0===h?1:5}];let rg={};function KM(a){const c=function aL(a){return a.toLowerCase().replace(/_/g,"-")}(a);let d=$F(c);if(d)return d;const h=c.split("-")[0];if(d=$F(h),d)return d;if("en"===h)return jF;throw new Jt(701,!1)}function ab(a){return KM(a)[og.PluralCase]}function $F(a){return a in rg||(rg[a]=Ji.ng&&Ji.ng.common&&Ji.ng.common.locales&&Ji.ng.common.locales[a]),rg[a]}var og=function(a){return a[a.LocaleId=0]="LocaleId",a[a.DayPeriodsFormat=1]="DayPeriodsFormat",a[a.DayPeriodsStandalone=2]="DayPeriodsStandalone",a[a.DaysFormat=3]="DaysFormat",a[a.DaysStandalone=4]="DaysStandalone",a[a.MonthsFormat=5]="MonthsFormat",a[a.MonthsStandalone=6]="MonthsStandalone",a[a.Eras=7]="Eras",a[a.FirstDayOfWeek=8]="FirstDayOfWeek",a[a.WeekendRange=9]="WeekendRange",a[a.DateFormat=10]="DateFormat",a[a.TimeFormat=11]="TimeFormat",a[a.DateTimeFormat=12]="DateTimeFormat",a[a.NumberSymbols=13]="NumberSymbols",a[a.NumberFormats=14]="NumberFormats",a[a.CurrencyCode=15]="CurrencyCode",a[a.CurrencySymbol=16]="CurrencySymbol",a[a.CurrencyName=17]="CurrencyName",a[a.Currencies=18]="Currencies",a[a.Directionality=19]="Directionality",a[a.PluralCase=20]="PluralCase",a[a.ExtraData=21]="ExtraData",a}(og||{});const S1="en-US";let qF=S1,vD=(a,c,d)=>{};function B1(a,c,d,h){const A=Pt(),g=ar(),x=Qr();return k1(g,A,A[Oi],x,a,c,h),B1}function k1(a,c,d,h,A,g,x){const B=R0(h),H=a.firstCreatePass&&vO(a),K=c[no],ae=E_(c);let Re=!0;if(3&h.type||x){const Vt=oa(h,c),an=x?x(Vt):Vt,gn=ae.length,Lt=x?Zt=>x(cr(Zt[h.index])):h.index;let qi=null;if(!x&&B&&(qi=function yD(a,c,d,h){const A=a.cleanup;if(null!=A)for(let g=0;gk?B[k]:null}"string"==typeof x&&(g+=2)}return null}(a,c,A,h.index)),null!==qi)(qi.__ngLastListenerFn__||qi).__ngNextListenerFn__=g,qi.__ngLastListenerFn__=g,Re=!1;else{g=dE(h,c,K,g),vD(Vt,A,g);const Zt=d.listen(an,A,g);ae.push(g,Zt),H&&H.push(A,Lt,gn,gn+1)}}else g=dE(h,c,K,g);const je=h.outputs;let ot;if(Re&&null!==je&&(ot=je[A])){const Vt=ot.length;if(Vt)for(let an=0;an-1?$s(a.index,c):c,5);let B=wD(c,d,h,g),k=A.__ngNextListenerFn__;for(;k;)B=wD(c,d,k,g)&&B,k=k.__ngNextListenerFn__;return B}}function R1(a=1){return function ty(a){return(Ni.lFrame.contextLView=function Jx(a,c){for(;a>0;)c=c[zd],a--;return c}(a,Ni.lFrame.contextLView))[no]}(a)}function xL(a,c){let d=null;const h=function Fv(a){const c=a.attrs;if(null!=c){const d=c.indexOf(5);if(!(1&d))return c[d+1]}return null}(a);for(let A=0;Ad._dirtyCounter.update(h=>h+1))}(c,sN(a,d,h,A))}function LD(a=1){Ll(If()+a)}function dg(a){return lr(function K0(){return Ni.lFrame.contextLView}(),hi+a)}function XD(a,c=""){const d=Pt(),h=ar(),A=a+hi,g=h.firstCreatePass?Kf(h,A,1,c,null):h.data[A],x=KD(h,d,g,c,a);d[A]=x,rh()&&FC(h,d,x,g),xo(g,!1)}let KD=(a,c,d,h,A)=>(hl(!0),function vT(a,c){return a.createText(c)}(c[Oi],h));function gE(a){return O1("",a,""),gE}function O1(a,c,d){const h=Pt(),A=$m(h,a,c,d);return A!==ir&&ru(h,qn(),A),O1}function _E(a,c,d,h,A){const g=Pt(),x=up(g,a,c,d,h,A);return x!==ir&&ru(g,qn(),x),_E}function bE(a,c,d,h,A,g,x,B,k){const H=Pt(),K=function hp(a,c,d,h,A,g,x,B,k,H){const ae=gl(a,Nl(),d,A,x,k);return Rr(4),ae?c+yi(d)+h+yi(A)+g+yi(x)+B+yi(k)+H:ir}(H,a,c,d,h,A,g,x,B,k);return K!==ir&&ru(H,qn(),K),bE}function L1(a,c,d){kI(c)&&(c=c());const h=Pt();return qo(h,dl(),c)&&As(ar(),kr(),h,a,c,h[Oi],d,!1),L1}function tB(a,c){const d=kI(a);return d&&a.set(c),d}function U1(a,c){const d=Pt(),h=ar(),A=Qr();return k1(h,d,d[Oi],A,a,c),U1}function H1(a,c,d,h,A){if(a=Xt(a),Array.isArray(a))for(let g=0;g>20;if(nd(a)||!a.multi){const je=new LA(H,A,mm),ot=ec(k,c,A?K:K+Re,ae);-1===ot?(_o(Nf(B,x),g,k),yE(g,a,c.length),c.push(k),B.directiveStart++,B.directiveEnd++,A&&(B.providerIndexes+=1048576),d.push(je),x.push(je)):(d[ot]=je,x[ot]=je)}else{const je=ec(k,c,K+Re,ae),ot=ec(k,c,K,K+Re),an=ot>=0&&d[ot];if(A&&!an||!A&&!(je>=0&&d[je])){_o(Nf(B,x),g,k);const gn=function Eo(a,c,d,h,A){const g=new LA(a,d,mm);return g.multi=[],g.index=c,g.componentProviders=0,ug(g,A,h&&!d),g}(A?Zs:wE,d.length,A,h,H);!A&&an&&(d[ot].providerFactory=gn),yE(g,a,c.length,0),c.push(k),B.directiveStart++,B.directiveEnd++,A&&(B.providerIndexes+=1048576),d.push(gn),x.push(gn)}else yE(g,a,je>-1?je:ot,ug(d[A?ot:je],H,!A&&h));!A&&h&&an&&d[ot].componentProviders++}}}function yE(a,c,d,h){const A=nd(c),g=function Nv(a){return!!a.useClass}(c);if(A||g){const k=(g?Xt(c.useClass):c).prototype.ngOnDestroy;if(k){const H=a.destroyHooks||(a.destroyHooks=[]);if(!A&&c.multi){const K=H.indexOf(d);-1===K?H.push(d,[h,k]):H[K+1].push(h,k)}else H.push(d,k)}}}function ug(a,c,d){return d&&a.componentProviders++,a.multi.push(c)-1}function ec(a,c,d,h){for(let A=d;A{d.providersResolver=(h,A)=>function iB(a,c,d){const h=ar();if(h.firstCreatePass){const A=kl(a);H1(d,h.data,h.blueprint,A,!0),H1(c,h.data,h.blueprint,A,!1)}}(h,A?A(a):a,c)}}let rB=(()=>{class a{constructor(d){this._injector=d,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(d){if(!d.standalone)return null;if(!this.cachedInjectors.has(d)){const h=Pv(0,d.type),A=h.length>0?function JI(a,c,d=null){return new ZI({providers:a,parent:c,debugName:d,runEnvironmentInitializers:!0}).injector}([h],this._injector,`Standalone[${d.type.name}]`):null;this.cachedInjectors.set(d,A)}return this.cachedInjectors.get(d)}ngOnDestroy(){try{for(const d of this.cachedInjectors.values())null!==d&&d.destroy()}finally{this.cachedInjectors.clear()}}static{this.\u0275prov=En({token:a,providedIn:"environment",factory:()=>new a(ds(al))})}}return a})();function Md(a){Ia("NgStandalone"),a.getStandaloneInjector=c=>c.get(rB).getOrCreateStandaloneInjector(a)}function sB(a,c,d){const h=Ps()+a,A=Pt();return A[h]===ir?Pc(A,h,d?c.call(d):c()):function yh(a,c){return a[c]}(A,h)}function aB(a,c,d,h){return G1(Pt(),Ps(),a,c,d,h)}function lB(a,c,d,h,A){return hB(Pt(),Ps(),a,c,d,h,A)}function Cp(a,c){const d=a[c];return d===ir?void 0:d}function G1(a,c,d,h,A,g){const x=c+d;return qo(a,x,A)?Pc(a,x+1,g?h.call(g,A):h(A)):Cp(a,x+1)}function hB(a,c,d,h,A,g,x){const B=c+d;return du(a,B,A,g)?Pc(a,B+2,x?h.call(x,A,g):h(A,g)):Cp(a,B+2)}function _u(a,c){const d=ar();let h;const A=a+hi;d.firstCreatePass?(h=function OL(a,c){if(c)for(let d=c.length-1;d>=0;d--){const h=c[d];if(a===h.name)return h}}(c,d.pipeRegistry),d.data[A]=h,h.onDestroy&&(d.destroyHooks??=[]).push(A,h.onDestroy)):h=d.data[A];const g=h.factory||(h.factory=rl(h.type)),B=Bs(mm);try{const k=dd(!1),H=g();return dd(k),function fE(a,c,d,h){d>=a.data.length&&(a.data[d]=null,a.blueprint[d]=null),c[d]=h}(d,Pt(),A,H),H}finally{Bs(B)}}function LL(a,c,d){const h=a+hi,A=Pt(),g=lr(A,h);return tc(A,h)?G1(A,Ps(),c,g.transform,d,g):g.transform(d)}function UL(a,c,d,h){const A=a+hi,g=Pt(),x=lr(g,A);return tc(g,A)?hB(g,Ps(),c,x.transform,d,h,x):x.transform(d,h)}function AB(a,c,d,h,A,g){const x=a+hi,B=Pt(),k=lr(B,x);return tc(B,x)?function j1(a,c,d,h,A,g,x,B,k){const H=c+d;return gl(a,H,A,g,x,B)?Pc(a,H+4,k?h.call(k,A,g,x,B):h(A,g,x,B)):Cp(a,H+4)}(B,Ps(),c,k.transform,d,h,A,g,k):k.transform(d,h,A,g)}function tc(a,c){return a[en].data[c].pure}function da(a,c){return vm(a,c)}class FE{constructor(c){this.full=c;const d=c.split(".");this.major=d[0],this.minor=d[1],this.patch=d.slice(2).join(".")}}let JL=(()=>{class a{log(d){console.log(d)}warn(d){console.warn(d)}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"platform"})}}return a})();const yb=new Sn(""),ew=new Sn("");let wb,LE=(()=>{class a{constructor(d,h,A){this._ngZone=d,this.registry=h,this._isZoneStable=!0,this._callbacks=[],this.taskTrackingZone=null,wb||(function UE(a){wb=a}(A),A.addToWindow(h)),this._watchAngularEvents(),d.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{io.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}isStable(){return this._isZoneStable&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let d=this._callbacks.pop();clearTimeout(d.timeoutId),d.doneCb()}});else{let d=this.getPendingTasks();this._callbacks=this._callbacks.filter(h=>!h.updateCb||!h.updateCb(d)||(clearTimeout(h.timeoutId),!1))}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(d=>({source:d.source,creationLocation:d.creationLocation,data:d.data})):[]}addCallback(d,h,A){let g=-1;h&&h>0&&(g=setTimeout(()=>{this._callbacks=this._callbacks.filter(x=>x.timeoutId!==g),d()},h)),this._callbacks.push({doneCb:d,timeoutId:g,updateCb:A})}whenStable(d,h,A){if(A&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(d,h,A),this._runCallbacksIfReady()}registerApplication(d){this.registry.registerApplication(d,this)}unregisterApplication(d){this.registry.unregisterApplication(d)}findProviders(d,h,A){return[]}static{this.\u0275fac=function(h){return new(h||a)(ds(io),ds(tw),ds(ew))}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac})}}return a})(),tw=(()=>{class a{constructor(){this._applications=new Map}registerApplication(d,h){this._applications.set(d,h)}unregisterApplication(d){this._applications.delete(d)}unregisterAllApplications(){this._applications.clear()}getTestability(d){return this._applications.get(d)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(d,h=!0){return wb?.findTestabilityInTree(this,d,h)??null}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"platform"})}}return a})();function xb(a){return!!a&&"function"==typeof a.then}function nw(a){return!!a&&"function"==typeof a.subscribe}const iw=new Sn("");let rw=(()=>{class a{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((d,h)=>{this.resolve=d,this.reject=h}),this.appInits=On(iw,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const d=[];for(const A of this.appInits){const g=A();if(xb(g))d.push(g);else if(nw(g)){const x=new Promise((B,k)=>{g.subscribe({complete:B,error:k})});d.push(x)}}const h=()=>{this.done=!0,this.resolve()};Promise.all(d).then(()=>{h()}).catch(A=>{this.reject(A)}),0===d.length&&h(),this.initialized=!0}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();const Cb=new Sn("");let nc=(()=>{class a{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=On(uC),this.afterRenderManager=On(oF),this.zonelessEnabled=On(Jy),this.dirtyFlags=0,this.deferredDirtyFlags=0,this.externalTestViews=new Set,this.beforeRender=new Zi.B,this.afterTick=new Zi.B,this.componentTypes=[],this.components=[],this.isStable=On(Ql).hasPendingTasks.pipe((0,Lr.T)(d=>!d)),this._injector=On(al)}get allViews(){return[...this.externalTestViews.keys(),...this._views]}get destroyed(){return this._destroyed}whenStable(){let d;return new Promise(h=>{d=this.isStable.subscribe({next:A=>{A&&h()}})}).finally(()=>{d.unsubscribe()})}get injector(){return this._injector}bootstrap(d,h){const A=d instanceof pI;if(!this._injector.get(rw).done)throw!A&&function ed(a){const c=$i(a)||Uo(a)||Jo(a);return null!==c&&c.standalone}(d),new Jt(405,!1);let x;x=A?d:this._injector.get(e1).resolveComponentFactory(d),this.componentTypes.push(x.componentType);const B=function VE(a){return a.isBoundToModule}(x)?void 0:this._injector.get(np),H=x.create(ps.NULL,[],h||x.selector,B),K=H.location.nativeElement,ae=H.injector.get(yb,null);return ae?.registerApplication(K),H.onDestroy(()=>{this.detachView(H.hostView),yg(this.components,H),ae?.unregisterApplication(K)}),this._loadComponent(H),H}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){if(this._runningTick)throw new Jt(101,!1);const d=L(null);try{this._runningTick=!0,this.synchronize()}catch(h){this.internalErrorHandler(h)}finally{this._runningTick=!1,L(d),this.afterTick.next()}}synchronize(){let d=null;this._injector.destroyed||(d=this._injector.get(AI,null,{optional:!0})),this.dirtyFlags|=this.deferredDirtyFlags,this.deferredDirtyFlags=0;let h=0;for(;0!==this.dirtyFlags&&h++<10;)this.synchronizeOnce(d)}synchronizeOnce(d){if(this.dirtyFlags|=this.deferredDirtyFlags,this.deferredDirtyFlags=0,7&this.dirtyFlags){const h=!!(1&this.dirtyFlags);this.dirtyFlags&=-8,this.dirtyFlags|=8,this.beforeRender.next(h);for(let{_lView:A,notifyErrorHandler:g}of this._views)lw(A,g,h,this.zonelessEnabled);if(this.dirtyFlags&=-5,this.syncDirtyFlagsWithViews(),7&this.dirtyFlags)return}else d?.begin?.(),d?.end?.();8&this.dirtyFlags&&(this.dirtyFlags&=-9,this.afterRenderManager.execute()),this.syncDirtyFlagsWithViews()}syncDirtyFlagsWithViews(){this.allViews.some(({_lView:d})=>Q0(d))?this.dirtyFlags|=2:this.dirtyFlags&=-8}attachView(d){const h=d;this._views.push(h),h.attachToAppRef(this)}detachView(d){const h=d;yg(this._views,h),h.detachFromAppRef()}_loadComponent(d){this.attachView(d.hostView),this.tick(),this.components.push(d);const h=this._injector.get(Cb,[]);[...this._bootstrapListeners,...h].forEach(A=>A(d))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(d=>d()),this._views.slice().forEach(d=>d.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(d){return this._destroyListeners.push(d),()=>yg(this._destroyListeners,d)}destroy(){if(this._destroyed)throw new Jt(406,!1);const d=this._injector;d.destroy&&!d.destroyed&&d.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();function yg(a,c){const d=a.indexOf(c);d>-1&&a.splice(d,1)}function lw(a,c,d,h){(d||Q0(a))&&Gy(a,c,d&&!h?0:1)}let t5=(()=>{class a{constructor(){this.zone=On(io),this.changeDetectionScheduler=On(au),this.applicationRef=On(nc)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();function jE({ngZoneFactory:a,ignoreChangesOutsideZone:c,scheduleInRootZone:d}){return a??=()=>new io({...Mb(),scheduleInRootZone:d}),[{provide:io,useFactory:a},{provide:bc,multi:!0,useFactory:()=>{const h=On(t5,{optional:!0});return()=>h.initialize()}},{provide:bc,multi:!0,useFactory:()=>{const h=On(qE);return()=>{h.initialize()}}},!0===c?{provide:$O,useValue:!0}:[],{provide:nM,useValue:d??Sa}]}function Mb(a){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:a?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:a?.runCoalescing??!1}}let qE=(()=>{class a{constructor(){this.subscription=new fr.yU,this.initialized=!1,this.zone=On(io),this.pendingTasks=On(Ql)}initialize(){if(this.initialized)return;this.initialized=!0;let d=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(d=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{io.assertNotInAngularZone(),queueMicrotask(()=>{null!==d&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(d),d=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{io.assertInAngularZone(),d??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})(),xg=(()=>{class a{constructor(){this.appRef=On(nc),this.taskService=On(Ql),this.ngZone=On(io),this.zonelessEnabled=On(Jy),this.disableScheduling=On($O,{optional:!0})??!1,this.zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run,this.schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}],this.subscriptions=new fr.yU,this.angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(Vf):null,this.scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(On(nM,{optional:!0})??!1),this.cancelScheduledCallback=null,this.useMicrotaskScheduler=!1,this.runningTick=!1,this.pendingRenderTaskId=null,this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof ZA||!this.zoneIsDefined)}notify(d){if(!this.zonelessEnabled&&5===d)return;switch(d){case 0:this.appRef.dirtyFlags|=2;break;case 3:case 2:case 4:case 5:case 1:this.appRef.dirtyFlags|=4;break;case 7:this.appRef.deferredDirtyFlags|=8;break;default:this.appRef.dirtyFlags|=8}if(!this.shouldScheduleTick())return;const h=this.useMicrotaskScheduler?_y:gy;this.pendingRenderTaskId=this.taskService.add(),this.cancelScheduledCallback=this.scheduleInRootZone?Zone.root.run(()=>h(()=>this.tick())):this.ngZone.runOutsideAngular(()=>h(()=>this.tick()))}shouldScheduleTick(){return!(this.disableScheduling||null!==this.pendingRenderTaskId||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(Vf+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;!this.zonelessEnabled&&7&this.appRef.dirtyFlags&&(this.appRef.dirtyFlags|=1);const d=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(h){throw this.taskService.remove(d),h}finally{this.cleanup()}this.useMicrotaskScheduler=!0,_y(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(d)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,null!==this.pendingRenderTaskId){const d=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(d)}}static{this.\u0275fac=function(h){return new(h||a)}}static{this.\u0275prov=En({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();const qB=new Sn("",{providedIn:"root",factory:()=>On(qB,Si.Optional|Si.SkipSelf)||function H9(){return typeof $localize<"u"&&$localize.locale||S1}()}),i5=new Sn("",{providedIn:"root",factory:()=>"USD"}),Cg=new Sn("");function Ip(a){return!a.moduleRef}let Hc=null;function $9(){return!1}let YB=(()=>{class a{static{this.__NG_ELEMENT_ID__=l5}}return a})();function l5(a){return function ZB(a,c,d){if(th(a)&&!d){const h=$s(a.index,c);return new qy(h,h)}return 175&a.type?new qy(c[go],c):null}(Qr(),Pt(),!(16&~a))}class Fp{constructor(){}supports(c){return H_(c)}create(c){return new Xo(c)}}const xl=(a,c)=>c;class Xo{constructor(c){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=c||xl}forEachItem(c){let d;for(d=this._itHead;null!==d;d=d._next)c(d)}forEachOperation(c){let d=this._itHead,h=this._removalsHead,A=0,g=null;for(;d||h;){const x=!h||d&&d.currentIndex{x=this._trackByFn(A,B),null!==d&&Object.is(d.trackById,x)?(h&&(d=this._verifyReinsertion(d,B,x,A)),Object.is(d.item,B)||this._addIdentityChange(d,B)):(d=this._mismatch(d,B,x,A),h=!0),d=d._next,A++}),this.length=A;return this._truncate(d),this.collection=c,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let c;for(c=this._previousItHead=this._itHead;null!==c;c=c._next)c._nextPrevious=c._next;for(c=this._additionsHead;null!==c;c=c._nextAdded)c.previousIndex=c.currentIndex;for(this._additionsHead=this._additionsTail=null,c=this._movesHead;null!==c;c=c._nextMoved)c.previousIndex=c.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(c,d,h,A){let g;return null===c?g=this._itTail:(g=c._prev,this._remove(c)),null!==(c=null===this._unlinkedRecords?null:this._unlinkedRecords.get(h,null))?(Object.is(c.item,d)||this._addIdentityChange(c,d),this._reinsertAfter(c,g,A)):null!==(c=null===this._linkedRecords?null:this._linkedRecords.get(h,A))?(Object.is(c.item,d)||this._addIdentityChange(c,d),this._moveAfter(c,g,A)):c=this._addAfter(new KE(d,h),g,A),c}_verifyReinsertion(c,d,h,A){let g=null===this._unlinkedRecords?null:this._unlinkedRecords.get(h,null);return null!==g?c=this._reinsertAfter(g,c._prev,A):c.currentIndex!=A&&(c.currentIndex=A,this._addToMoves(c,A)),c}_truncate(c){for(;null!==c;){const d=c._next;this._addToRemovals(this._unlink(c)),c=d}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(c,d,h){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(c);const A=c._prevRemoved,g=c._nextRemoved;return null===A?this._removalsHead=g:A._nextRemoved=g,null===g?this._removalsTail=A:g._prevRemoved=A,this._insertAfter(c,d,h),this._addToMoves(c,h),c}_moveAfter(c,d,h){return this._unlink(c),this._insertAfter(c,d,h),this._addToMoves(c,h),c}_addAfter(c,d,h){return this._insertAfter(c,d,h),this._additionsTail=null===this._additionsTail?this._additionsHead=c:this._additionsTail._nextAdded=c,c}_insertAfter(c,d,h){const A=null===d?this._itHead:d._next;return c._next=A,c._prev=d,null===A?this._itTail=c:A._prev=c,null===d?this._itHead=c:d._next=c,null===this._linkedRecords&&(this._linkedRecords=new nk),this._linkedRecords.put(c),c.currentIndex=h,c}_remove(c){return this._addToRemovals(this._unlink(c))}_unlink(c){null!==this._linkedRecords&&this._linkedRecords.remove(c);const d=c._prev,h=c._next;return null===d?this._itHead=h:d._next=h,null===h?this._itTail=d:h._prev=d,c}_addToMoves(c,d){return c.previousIndex===d||(this._movesTail=null===this._movesTail?this._movesHead=c:this._movesTail._nextMoved=c),c}_addToRemovals(c){return null===this._unlinkedRecords&&(this._unlinkedRecords=new nk),this._unlinkedRecords.put(c),c.currentIndex=null,c._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=c,c._prevRemoved=null):(c._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=c),c}_addIdentityChange(c,d){return c.item=d,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=c:this._identityChangesTail._nextIdentityChange=c,c}}class KE{constructor(c,d){this.item=c,this.trackById=d,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class f5{constructor(){this._head=null,this._tail=null}add(c){null===this._head?(this._head=this._tail=c,c._nextDup=null,c._prevDup=null):(this._tail._nextDup=c,c._prevDup=this._tail,c._nextDup=null,this._tail=c)}get(c,d){let h;for(h=this._head;null!==h;h=h._nextDup)if((null===d||d<=h.currentIndex)&&Object.is(h.trackById,c))return h;return null}remove(c){const d=c._prevDup,h=c._nextDup;return null===d?this._head=h:d._nextDup=h,null===h?this._tail=d:h._prevDup=d,null===this._head}}class nk{constructor(){this.map=new Map}put(c){const d=c.trackById;let h=this.map.get(d);h||(h=new f5,this.map.set(d,h)),h.add(c)}get(c,d){const A=this.map.get(c);return A?A.get(c,d):null}remove(c){const d=c.trackById;return this.map.get(d).remove(c)&&this.map.delete(d),c}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function Ig(a,c,d){const h=a.previousIndex;if(null===h)return h;let A=0;return d&&h{if(d&&d.key===A)this._maybeAddToChanges(d,h),this._appendAfter=d,d=d._next;else{const g=this._getOrCreateRecordForKey(A,h);d=this._insertBeforeOrAppend(d,g)}}),d){d._prev&&(d._prev._next=null),this._removalsHead=d;for(let h=d;null!==h;h=h._nextRemoved)h===this._mapHead&&(this._mapHead=null),this._records.delete(h.key),h._nextRemoved=h._next,h.previousValue=h.currentValue,h.currentValue=null,h._prev=null,h._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(c,d){if(c){const h=c._prev;return d._next=c,d._prev=h,c._prev=d,h&&(h._next=d),c===this._mapHead&&(this._mapHead=d),this._appendAfter=c,c}return this._appendAfter?(this._appendAfter._next=d,d._prev=this._appendAfter):this._mapHead=d,this._appendAfter=d,null}_getOrCreateRecordForKey(c,d){if(this._records.has(c)){const A=this._records.get(c);this._maybeAddToChanges(A,d);const g=A._prev,x=A._next;return g&&(g._next=x),x&&(x._prev=g),A._next=null,A._prev=null,A}const h=new A5(c);return this._records.set(c,h),h.currentValue=d,this._addToAdditions(h),h}_reset(){if(this.isDirty){let c;for(this._previousMapHead=this._mapHead,c=this._previousMapHead;null!==c;c=c._next)c._nextPrevious=c._next;for(c=this._changesHead;null!==c;c=c._nextChanged)c.previousValue=c.currentValue;for(c=this._additionsHead;null!=c;c=c._nextAdded)c.previousValue=c.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(c,d){Object.is(d,c.currentValue)||(c.previousValue=c.currentValue,c.currentValue=d,this._addToChanges(c))}_addToAdditions(c){null===this._additionsHead?this._additionsHead=this._additionsTail=c:(this._additionsTail._nextAdded=c,this._additionsTail=c)}_addToChanges(c){null===this._changesHead?this._changesHead=this._changesTail=c:(this._changesTail._nextChanged=c,this._changesTail=c)}_forEach(c,d){c instanceof Map?c.forEach(d):Object.keys(c).forEach(h=>d(c[h],h))}}class A5{constructor(c){this.key=c,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function rk(){return new YE([new Fp])}let YE=(()=>{class a{static{this.\u0275prov=En({token:a,providedIn:"root",factory:rk})}constructor(d){this.factories=d}static create(d,h){if(null!=h){const A=h.factories.slice();d=d.concat(A)}return new a(d)}static extend(d){return{provide:a,useFactory:h=>a.create(d,h||rk()),deps:[[a,new v0,new uf]]}}find(d){const h=this.factories.find(A=>A.supports(d));if(null!=h)return h;throw new Jt(901,!1)}}return a})();function ok(){return new ZE([new ik])}let ZE=(()=>{class a{static{this.\u0275prov=En({token:a,providedIn:"root",factory:ok})}constructor(d){this.factories=d}static create(d,h){if(h){const A=h.factories.slice();d=d.concat(A)}return new a(d)}static extend(d){return{provide:a,useFactory:h=>a.create(d,h||ok()),deps:[[a,new v0,new uf]]}}find(d){const h=this.factories.find(A=>A.supports(d));if(h)return h;throw new Jt(901,!1)}}return a})();function Pp(a){try{const{rootComponent:c,appProviders:d,platformProviders:h}=a,A=function j9(a=[]){if(Hc)return Hc;const c=function o5(a=[],c){return ps.create({name:c,providers:[{provide:T0,useValue:"platform"},{provide:Cg,useValue:new Set([()=>Hc=null])},...a]})}(a);return Hc=c,function ow(){!function Rt(a){wt=a}(()=>{throw new Jt(600,!1)})}(),function s5(a){a.get(iT,null)?.forEach(d=>d())}(c),c}(h),g=[jE({}),{provide:au,useExisting:xg},...d||[]];return function Sb(a){const c=Ip(a)?a.r3Injector:a.moduleRef.injector,d=c.get(io);return d.run(()=>{Ip(a)?a.r3Injector.resolveInjectorInitializers():a.moduleRef.resolveInjectorInitializers();const h=c.get(Tc,null);let A;if(d.runOutsideAngular(()=>{A=d.onError.subscribe({next:g=>{h.handleError(g)}})}),Ip(a)){const g=()=>c.destroy(),x=a.platformInjector.get(Cg);x.add(g),c.onDestroy(()=>{A.unsubscribe(),x.delete(g)})}else{const g=()=>a.moduleRef.destroy(),x=a.platformInjector.get(Cg);x.add(g),a.moduleRef.onDestroy(()=>{yg(a.allPlatformModules,a.moduleRef),A.unsubscribe(),x.delete(g)})}return function QE(a,c,d){try{const h=d();return xb(h)?h.catch(A=>{throw c.runOutsideAngular(()=>a.handleError(A)),A}):h}catch(h){throw c.runOutsideAngular(()=>a.handleError(h)),h}}(h,d,()=>{const g=c.get(rw);return g.runInitializers(),g.donePromise.then(()=>{if(function cL(a){"string"==typeof a&&(qF=a.toLowerCase().replace(/_/g,"-"))}(c.get(qB,S1)||S1),Ip(a)){const B=c.get(nc);return void 0!==a.rootComponent&&B.bootstrap(a.rootComponent),B}return function Bo(a,c){const d=a.injector.get(nc);if(a._bootstrapComponents.length>0)a._bootstrapComponents.forEach(h=>d.bootstrap(h));else{if(!a.instance.ngDoBootstrap)throw new Jt(-403,!1);a.instance.ngDoBootstrap(d)}c.push(a)}(a.moduleRef,a.allPlatformModules),a.moduleRef})})})}({r3Injector:new ZI({providers:g,parent:A,debugName:"",runEnvironmentInitializers:!1}).injector,platformInjector:A,rootComponent:c})}catch(c){return Promise.reject(c)}}function fk(a){return"boolean"==typeof a?a:null!=a&&"false"!==a}function pk(a,c=NaN){return isNaN(parseFloat(a))||isNaN(Number(a))?c:Number(a)}function gk(a,c){Ia("NgSignals");const d=ve(a);return c?.equal&&(d[U].equal=c.equal),d}function lS(a){const c=L(null);try{return a()}finally{L(c)}}const cS=new Sn("",{providedIn:"root",factory:()=>On(dS)});let dS=(()=>{class a{static{this.\u0275prov=En({token:a,providedIn:"root",factory:()=>new sc})}}return a})();class sc{constructor(){this.queuedEffectCount=0,this.queues=new Map,this.pendingTasks=On(Ql),this.taskId=null}scheduleEffect(c){if(this.enqueue(c),null===this.taskId){const d=this.taskId=this.pendingTasks.add();queueMicrotask(()=>{this.flush(),this.pendingTasks.remove(d),this.taskId=null})}}enqueue(c){const d=c.creationZone;this.queues.has(d)||this.queues.set(d,new Set);const h=this.queues.get(d);h.has(c)||(this.queuedEffectCount++,h.add(c))}flush(){for(;this.queuedEffectCount>0;)for(const[c,d]of this.queues)null===c?this.flushQueue(d):c.run(()=>this.flushQueue(d))}flushQueue(c){for(const d of c)c.delete(d),this.queuedEffectCount--,d.run()}}class _k{constructor(c,d,h,A,g,x){this.scheduler=c,this.effectFn=d,this.creationZone=h,this.injector=g,this.watcher=function qt(a,c,d){const h=Object.create(Wt);d&&(h.consumerAllowSignalWrites=!0),h.fn=a,h.schedule=c;const A=k=>{h.cleanupFn=k};return h.ref={notify:()=>we(h),run:()=>{if(null===h.fn)return;if(function V(){return y}())throw new Error("Schedulers cannot synchronously execute watches while scheduling.");if(h.dirty=!1,h.hasRun&&!Ne(h))return;h.hasRun=!0;const k=Be(h);try{h.cleanupFn(),h.cleanupFn=cn,h.fn(A)}finally{Ie(h,k)}},cleanup:()=>h.cleanupFn(),destroy:()=>function x(k){(function g(k){return null===k.fn&&null===k.schedule})(k)||(Je(k),k.cleanupFn(),k.fn=null,k.schedule=null,k.cleanupFn=cn)}(h),[U]:h},h.ref}(B=>this.runEffect(B),()=>this.schedule(),x),this.unregisterOnDestroy=A?.onDestroy(()=>this.destroy())}runEffect(c){try{this.effectFn(c)}catch(d){this.injector.get(Tc,null,{optional:!0})?.handleError(d)}}run(){this.watcher.run()}schedule(){this.scheduler.scheduleEffect(this)}destroy(){this.watcher.destroy(),this.unregisterOnDestroy?.()}}function Bu(a,c){Ia("NgSignals"),!c?.injector&&_f();const d=c?.injector??On(ps),h=!0!==c?.manualCleanup?d.get(dh):null,A=new _k(d.get(cS),a,typeof Zone>"u"?null:Zone.current,h,d,c?.allowSignalWrites??!1),g=d.get(YB,null,{optional:!0});return g&&8&g._lView[xi]?(g._lView[_A]??=[]).push(A.watcher.notify):A.watcher.notify(),A}},3420:nt=>{"use strict";nt.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON Schema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},8198:nt=>{"use strict";nt.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"http://json-schema.org/draft-07/schema#","title":"Core schema meta-schema","definitions":{"schemaArray":{"type":"array","minItems":1,"items":{"$ref":"#"}},"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"allOf":[{"$ref":"#/definitions/nonNegativeInteger"},{"default":0}]},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}},"type":["object","boolean"],"properties":{"$id":{"type":"string","format":"uri-reference"},"$schema":{"type":"string","format":"uri"},"$ref":{"type":"string","format":"uri-reference"},"$comment":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"default":true,"readOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/definitions/nonNegativeInteger"},"minLength":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"additionalItems":{"$ref":"#"},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}],"default":true},"maxItems":{"$ref":"#/definitions/nonNegativeInteger"},"minItems":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"contains":{"$ref":"#"},"maxProperties":{"$ref":"#/definitions/nonNegativeInteger"},"minProperties":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"required":{"$ref":"#/definitions/stringArray"},"additionalProperties":{"$ref":"#"},"definitions":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"properties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$ref":"#"},"propertyNames":{"format":"regex"},"default":{}},"dependencies":{"type":"object","additionalProperties":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/stringArray"}]}},"propertyNames":{"$ref":"#"},"const":true,"enum":{"type":"array","items":true,"minItems":1,"uniqueItems":true},"type":{"anyOf":[{"$ref":"#/definitions/simpleTypes"},{"type":"array","items":{"$ref":"#/definitions/simpleTypes"},"minItems":1,"uniqueItems":true}]},"format":{"type":"string"},"contentMediaType":{"type":"string"},"contentEncoding":{"type":"string"},"if":{"$ref":"#"},"then":{"$ref":"#"},"else":{"$ref":"#"},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"}},"default":true}')}},nt=>{nt(nt.s=5102)}]); \ No newline at end of file