import { ViewArrayImpl } from "./services/view-array/view-array.impl"; import { RegexMatchViewComponent } from "./directives/ui/regex-match-view/regex-match-view.component"; import { NgModule } from 'ng-metadata/core'; import { QuayRoutesModule } from "./quay-routes.module"; import { DockerfilePathSelectComponent } from './directives/ui/dockerfile-path-select/dockerfile-path-select.component'; import { ContextPathSelectComponent } from './directives/ui/context-path-select/context-path-select.component'; import { LinearWorkflowComponent } from './directives/ui/linear-workflow/linear-workflow.component'; import { LinearWorkflowSectionComponent } from './directives/ui/linear-workflow/linear-workflow-section.component'; import { QuayConfigModule } from './quay-config.module'; import { AppPublicViewComponent } from './directives/ui/app-public-view/app-public-view.component'; import { VisibilityIndicatorComponent } from './directives/ui/visibility-indicator/visibility-indicator.component'; import { CorTableComponent } from './directives/ui/cor-table/cor-table.component'; import { CorTableColumn } from './directives/ui/cor-table/cor-table-col.component'; import { CorTabPanelComponent } from './directives/ui/cor-tabs/cor-tab-panel.component'; import { CorTabContentComponent } from './directives/ui/cor-tabs/cor-tab-content.component'; import { CorTabsComponent } from './directives/ui/cor-tabs/cor-tabs.component'; import { CorTabComponent } from './directives/ui/cor-tabs/cor-tab.component'; import { CorTabPaneComponent } from './directives/ui/cor-tabs/cor-tab-pane.component'; import { CorTabCurrentHandlerFactory } from './directives/ui/cor-tabs/cor-tab-handlers'; import { ChannelIconComponent } from './directives/ui/channel-icon/channel-icon.component'; import { TagSigningDisplayComponent } from './directives/ui/tag-signing-display/tag-signing-display.component'; import { RepositorySigningConfigComponent } from './directives/ui/repository-signing-config/repository-signing-config.component'; import { TimeMachineSettingsComponent } from './directives/ui/time-machine-settings/time-machine-settings.component'; import { DurationInputComponent } from './directives/ui/duration-input/duration-input.component'; import { SearchBoxComponent } from './directives/ui/search-box/search-box.component'; import { TypeaheadDirective } from './directives/ui/typeahead/typeahead.directive'; import { BuildServiceImpl } from './services/build/build.service.impl'; import { AvatarServiceImpl } from './services/avatar/avatar.service.impl'; import { DockerfileServiceImpl } from './services/dockerfile/dockerfile.service.impl'; import { DataFileServiceImpl } from './services/datafile/datafile.service.impl'; import { UtilServiceImpl } from './services/util/util.service.impl'; import { QuayRequireDirective } from './directives/structural/quay-require/quay-require.directive'; import { MarkdownInputComponent } from './directives/ui/markdown/markdown-input.component'; import { MarkdownViewComponent } from './directives/ui/markdown/markdown-view.component'; import { MarkdownToolbarComponent } from './directives/ui/markdown/markdown-toolbar.component'; import { MarkdownEditorComponent } from './directives/ui/markdown/markdown-editor.component'; import { BrowserPlatform, browserPlatform } from './constants/platform.constant'; import { ManageTriggerComponent } from './directives/ui/manage-trigger/manage-trigger.component'; import { Converter, ConverterOptions } from 'showdown'; /** * Main application module. */ @NgModule({ imports: [ QuayRoutesModule, QuayConfigModule, ], declarations: [ RegexMatchViewComponent, DockerfilePathSelectComponent, ContextPathSelectComponent, LinearWorkflowComponent, LinearWorkflowSectionComponent, AppPublicViewComponent, VisibilityIndicatorComponent, CorTableComponent, CorTableColumn, ChannelIconComponent, QuayRequireDirective, TagSigningDisplayComponent, RepositorySigningConfigComponent, TimeMachineSettingsComponent, DurationInputComponent, MarkdownInputComponent, MarkdownViewComponent, MarkdownToolbarComponent, MarkdownEditorComponent, SearchBoxComponent, TypeaheadDirective, CorTabPanelComponent, CorTabContentComponent, CorTabsComponent, CorTabComponent, CorTabPaneComponent, ManageTriggerComponent, ], providers: [ ViewArrayImpl, BuildServiceImpl, AvatarServiceImpl, DockerfileServiceImpl, DataFileServiceImpl, {provide: 'fileReaderFactory', useValue: () => new FileReader()}, {provide: 'markdownConverterFactory', useValue: (options?: ConverterOptions) => new Converter(options)}, {provide: 'BrowserPlatform', useValue: browserPlatform}, {provide: 'CorTabCurrentHandlerFactory', useValue: CorTabCurrentHandlerFactory}, ], }) export class QuayModule { }