1/* 2 * Copyright (C) 2022 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17import {ClipboardModule} from '@angular/cdk/clipboard'; 18import {DragDropModule} from '@angular/cdk/drag-drop'; 19import {CdkMenuModule} from '@angular/cdk/menu'; 20import {OverlayModule} from '@angular/cdk/overlay'; 21import {ScrollingModule} from '@angular/cdk/scrolling'; 22import {CommonModule} from '@angular/common'; 23import {HttpClientModule} from '@angular/common/http'; 24import {CUSTOM_ELEMENTS_SCHEMA, ErrorHandler, NgModule} from '@angular/core'; 25import {FormsModule, ReactiveFormsModule} from '@angular/forms'; 26import {MatButtonModule} from '@angular/material/button'; 27import {MatCardModule} from '@angular/material/card'; 28import {MatCheckboxModule} from '@angular/material/checkbox'; 29import {MatDialogModule} from '@angular/material/dialog'; 30import {MatDividerModule} from '@angular/material/divider'; 31import {MatFormFieldModule} from '@angular/material/form-field'; 32import {MatGridListModule} from '@angular/material/grid-list'; 33import {MatIconModule} from '@angular/material/icon'; 34import {MatInputModule} from '@angular/material/input'; 35import {MatListModule} from '@angular/material/list'; 36import {MatProgressBarModule} from '@angular/material/progress-bar'; 37import {MatProgressSpinnerModule} from '@angular/material/progress-spinner'; 38import {MatRadioModule} from '@angular/material/radio'; 39import {MatSelectModule} from '@angular/material/select'; 40import {MatSliderModule} from '@angular/material/slider'; 41import {MatSnackBarModule} from '@angular/material/snack-bar'; 42import {MatTableModule} from '@angular/material/table'; 43import {MatTabsModule} from '@angular/material/tabs'; 44import {MatToolbarModule} from '@angular/material/toolbar'; 45import {MatTooltipModule} from '@angular/material/tooltip'; 46import {BrowserModule, Title} from '@angular/platform-browser'; 47import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; 48import {CollapsedSectionsComponent} from 'viewers/components/collapsed_sections_component'; 49import {CollapsibleSectionTitleComponent} from 'viewers/components/collapsible_section_title_component'; 50import {CoordinatesTableComponent} from 'viewers/components/coordinates_table_component'; 51import {HierarchyComponent} from 'viewers/components/hierarchy_component'; 52import {HierarchyTreeNodeDataViewComponent} from 'viewers/components/hierarchy_tree_node_data_view_component'; 53import {ImeAdditionalPropertiesComponent} from 'viewers/components/ime_additional_properties_component'; 54import {LogComponent} from 'viewers/components/log_component'; 55import {PropertiesComponent} from 'viewers/components/properties_component'; 56import {PropertiesTableComponent} from 'viewers/components/properties_table_component'; 57import {PropertyTreeNodeDataViewComponent} from 'viewers/components/property_tree_node_data_view_component'; 58import {RectsComponent} from 'viewers/components/rects/rects_component'; 59import {SearchBoxComponent} from 'viewers/components/search_box_component'; 60import {SelectWithFilterComponent} from 'viewers/components/select_with_filter_component'; 61import {SurfaceFlingerPropertyGroupsComponent} from 'viewers/components/surface_flinger_property_groups_component'; 62import {TransformMatrixComponent} from 'viewers/components/transform_matrix_component'; 63import {TreeComponent} from 'viewers/components/tree_component'; 64import {TreeNodeComponent} from 'viewers/components/tree_node_component'; 65import {UserOptionsComponent} from 'viewers/components/user_options_component'; 66import {ViewerInputMethodComponent} from 'viewers/components/viewer_input_method_component'; 67import {ViewCapturePropertyGroupsComponent} from 'viewers/components/view_capture_property_groups_component'; 68import {ViewerInputComponent} from 'viewers/viewer_input/viewer_input_component'; 69import {ViewerJankCujsComponent} from 'viewers/viewer_jank_cujs/viewer_jank_cujs_component'; 70import {ViewerMediaBasedComponent} from 'viewers/viewer_media_based/viewer_media_based_component'; 71import {ProtologScrollDirective} from 'viewers/viewer_protolog/scroll_strategy/protolog_scroll_directive'; 72import {ViewerProtologComponent} from 'viewers/viewer_protolog/viewer_protolog_component'; 73import {SearchListComponent} from 'viewers/viewer_search/search_list_component'; 74import {ViewerSearchComponent} from 'viewers/viewer_search/viewer_search_component'; 75import {ViewerSurfaceFlingerComponent} from 'viewers/viewer_surface_flinger/viewer_surface_flinger_component'; 76import {TransactionsScrollDirective} from 'viewers/viewer_transactions/scroll_strategy/transactions_scroll_directive'; 77import {ViewerTransactionsComponent} from 'viewers/viewer_transactions/viewer_transactions_component'; 78import {TransitionsScrollDirective} from 'viewers/viewer_transitions/scroll_strategy/transitions_scroll_directive'; 79import {ViewerTransitionsComponent} from 'viewers/viewer_transitions/viewer_transitions_component'; 80import {ViewerViewCaptureComponent} from 'viewers/viewer_view_capture/viewer_view_capture_component'; 81import {ViewerWindowManagerComponent} from 'viewers/viewer_window_manager/viewer_window_manager_component'; 82import {AdbProxyComponent} from './components/adb_proxy_component'; 83import {AppComponent} from './components/app_component'; 84import { 85 MatDrawer, 86 MatDrawerContainer, 87 MatDrawerContent, 88} from './components/bottomnav/bottom_drawer_component'; 89import {CollectTracesComponent} from './components/collect_traces_component'; 90import {LoadProgressComponent} from './components/load_progress_component'; 91import {ShortcutsComponent} from './components/shortcuts_component'; 92import {SnackBarComponent} from './components/snack_bar_component'; 93import {DefaultTimelineRowComponent} from './components/timeline/expanded-timeline/default_timeline_row_component'; 94import {ExpandedTimelineComponent} from './components/timeline/expanded-timeline/expanded_timeline_component'; 95import {TransitionTimelineComponent} from './components/timeline/expanded-timeline/transition_timeline_component'; 96import {MiniTimelineComponent} from './components/timeline/mini-timeline/mini_timeline_component'; 97import {SliderComponent} from './components/timeline/mini-timeline/slider_component'; 98import {TimelineComponent} from './components/timeline/timeline_component'; 99import {TraceConfigComponent} from './components/trace_config_component'; 100import {TraceViewComponent} from './components/trace_view_component'; 101import {UploadTracesComponent} from './components/upload_traces_component'; 102import {WarningDialogComponent} from './components/warning_dialog_component'; 103import {WebAdbComponent} from './components/web_adb_component'; 104import {GlobalErrorHandler} from './global_error_handler'; 105 106@NgModule({ 107 declarations: [ 108 AppComponent, 109 ViewerWindowManagerComponent, 110 ViewerSurfaceFlingerComponent, 111 ViewerInputComponent, 112 ViewerInputMethodComponent, 113 ViewerProtologComponent, 114 ViewerJankCujsComponent, 115 ViewerTransactionsComponent, 116 ViewerMediaBasedComponent, 117 ViewerTransitionsComponent, 118 ViewerViewCaptureComponent, 119 ViewerSearchComponent, 120 CollectTracesComponent, 121 UploadTracesComponent, 122 AdbProxyComponent, 123 WebAdbComponent, 124 TraceConfigComponent, 125 HierarchyComponent, 126 PropertiesComponent, 127 RectsComponent, 128 TraceViewComponent, 129 TreeComponent, 130 TreeNodeComponent, 131 HierarchyTreeNodeDataViewComponent, 132 PropertyTreeNodeDataViewComponent, 133 SurfaceFlingerPropertyGroupsComponent, 134 TransformMatrixComponent, 135 PropertiesTableComponent, 136 ImeAdditionalPropertiesComponent, 137 CoordinatesTableComponent, 138 TimelineComponent, 139 MiniTimelineComponent, 140 ExpandedTimelineComponent, 141 DefaultTimelineRowComponent, 142 TransitionTimelineComponent, 143 SnackBarComponent, 144 MatDrawer, 145 MatDrawerContent, 146 MatDrawerContainer, 147 LoadProgressComponent, 148 SliderComponent, 149 ProtologScrollDirective, 150 TransactionsScrollDirective, 151 TransitionsScrollDirective, 152 ViewCapturePropertyGroupsComponent, 153 SelectWithFilterComponent, 154 ShortcutsComponent, 155 CollapsedSectionsComponent, 156 CollapsibleSectionTitleComponent, 157 UserOptionsComponent, 158 LogComponent, 159 WarningDialogComponent, 160 SearchBoxComponent, 161 SearchListComponent, 162 ], 163 imports: [ 164 BrowserModule, 165 HttpClientModule, 166 CommonModule, 167 MatCardModule, 168 MatButtonModule, 169 MatGridListModule, 170 FormsModule, 171 MatListModule, 172 MatCheckboxModule, 173 MatDividerModule, 174 MatIconModule, 175 MatProgressSpinnerModule, 176 MatProgressBarModule, 177 MatFormFieldModule, 178 MatInputModule, 179 MatSelectModule, 180 BrowserAnimationsModule, 181 HttpClientModule, 182 MatSliderModule, 183 MatRadioModule, 184 MatTooltipModule, 185 MatToolbarModule, 186 MatTabsModule, 187 MatSnackBarModule, 188 ScrollingModule, 189 DragDropModule, 190 ClipboardModule, 191 ReactiveFormsModule, 192 CdkMenuModule, 193 MatDialogModule, 194 MatTableModule, 195 OverlayModule, 196 ], 197 providers: [Title, {provide: ErrorHandler, useClass: GlobalErrorHandler}], 198 schemas: [CUSTOM_ELEMENTS_SCHEMA], 199 bootstrap: [AppComponent], 200}) 201export class AppModule {} 202