shared.module.ts 8.67 KiB
import {DefaultLogo} from '../directive/defaultlogo.directive';
import {RolesDirective} from '../directive/roles.directive';
import {CUSTOM_ELEMENTS_SCHEMA, NgModule, NO_ERRORS_SCHEMA} from '@angular/core';
import {FormsModule, ReactiveFormsModule} from '@angular/forms';
import {CommonModule, DatePipe} from '@angular/common';
import {CommentsComponent} from './comments/index';
import {FooterComponent} from './footer/index';
import {RateComponent} from './rate/index';
import {ScreenshotsComponent} from './screenshots/index';
import {ModalComponent} from './modal/index';
import {PipesModule} from '../pipe/pipes.module';
import {ServicesModule} from '../service/services.module';
import {UserDataService} from '../service/userdata.service';
import {PasswordComponent, PasswordValidator} from './common/password/password.component';
import {UserDetailsComponent} from './users/details/userdetails.component';
import {UsersListComponent} from './users/list/userslist.component';
import {UserPrivilegesComponent} from './users/privileges/userprivileges.component';
import {BaseComponent} from './common/basecomponent/base.component';
import {RouterModule} from '@angular/router';
import {NavbarComponent} from './navbar/index';
import {SearchComponent} from './common/search/search.component';
import {TagFilterComponent} from './common/tagfilter/tagfilter.component';
import {DomainFilterComponent} from './common/domainfilter/domainfilter.component';
import {AppListComponent} from './applications/list/applist.component';
import {ApplicationsViewComponent} from './applications/applications.component';
import {AppElementComponent} from './applications/list/element/appelement.component';
import {ClusterDetailsComponent} from './admin/clusters/details/clusterdetails.component';
import {ModalInfoTermsComponent} from './modal/modal-info-terms/modal-info-terms.component';
import {ModalInfoPolicyComponent} from './modal/modal-info-policy/modal-info-policy.component';
import {TranslateModule} from '@ngx-translate/core';
import {SortableColumnComponent} from './sortable-column/sortable-column.component';
import {SortableTableDirective} from './sortable-column/sortable-table.directive';
import {AppInstallModalComponent} from './modal/appinstall';
import {RatingExtendedComponent} from './rating-extended/rating-extended.component';
import {PasswordStrengthMeterComponent} from 'angular-password-strength-meter';
import {AboutComponent} from './about/about.component';
import {ChangelogComponent} from './changelog/changelog.component';
import {NotificationService} from '../service/notification.service';
import {RECAPTCHA_V3_SITE_KEY, RecaptchaModule, RecaptchaV3Module} from 'ng-recaptcha';
import {SingleCommentComponent} from './comments/single-comment/single-comment.component';
import {TranslateStateModule} from './translate-state/translate-state.module';
import {MinLengthDirective} from '../directive/min-length.directive';
import {MaxLengthDirective} from '../directive/max-length.directive';
import {AppConfigService} from '../service';
import {ModalTestInstanceComponent} from './modal/modal-test-instance/modal-test-instance.component';
import {ModalNotificationSendComponent} from './modal/modal-notification-send/modal-notification-send.component';
import {NgxPaginationModule} from 'ngx-pagination';
import {PageNotFoundComponent} from './page-not-found/page-not-found.component';
import {DomainRolesDirective} from '../directive/domain-roles.directive';
import {SshKeysComponent} from './users/ssh-keys/ssh-keys.component';
import {NewSshKeyComponent} from './users/new-ssh-key/new-ssh-key.component';
import {ModalProvideSshKeyComponent} from './modal/modal-provide-ssh-key/modal-provide-ssh-key.component';
import { ContactComponent } from './contact/contact.component';
import {FormioModule} from '@formio/angular';
import { PreferencesComponent } from './users/preferences/preferences.component';
import {TooltipModule} from 'primeng/tooltip';
import {DropdownModule} from 'primeng/dropdown';
import {SortableHeaderDirective} from '../service/sort-domain.directive';
import {InputTextModule} from 'primeng/inputtext';
import { DomainNamespaceAnnotationsComponent } from './domain-namespace-annotations/domain-namespace-annotations.component';
import { provideZxvbnServiceForPSM } from 'angular-password-strength-meter/zxcvbn';
import { AccessTokensComponent } from './users/access-token/access-tokens.component';
import { LeftMenuComponent } from './left-menu/left-menu.component';
import {TableModule} from 'primeng/table';
import { AdminDashboardComponent } from './admin-dashboard/admin-dashboard.component';
import {CheckboxModule} from 'primeng/checkbox';
import { InputGroupModule } from 'primeng/inputgroup';
import { InputGroupAddonModule } from 'primeng/inputgroupaddon';
import { ButtonModule } from 'primeng/button';
import { BrowserModule } from '@angular/platform-browser';
import {ChartModule} from 'primeng/chart';
import { RolesExcludedDirective } from '../directive/roles-exluded.directive';
import { FileUploadModule } from 'primeng/fileupload';
import { RecaptchaVisibilityService } from '../service/recaptcha-visibility.service';
@NgModule({
imports: [
CommonModule,
PipesModule,
FormsModule,
ServicesModule,
RouterModule,
ReactiveFormsModule,
PasswordStrengthMeterComponent,
TranslateModule.forChild(),
NgxPaginationModule,
FormioModule,
TooltipModule,
DropdownModule,
InputTextModule,
FormioModule,
TableModule,
CheckboxModule,
InputGroupModule,
InputGroupAddonModule,
ButtonModule,
RecaptchaV3Module,
ButtonModule,
ChartModule,
FileUploadModule,
TableModule
],
declarations: [
RateComponent,
FooterComponent,
CommentsComponent,
ScreenshotsComponent,
ModalComponent,
UserDetailsComponent,
UsersListComponent,
PasswordComponent,
UserPrivilegesComponent,
BaseComponent,
DefaultLogo,
NavbarComponent,
DefaultLogo,
RolesDirective,
RolesExcludedDirective,
MinLengthDirective,
MaxLengthDirective,
SearchComponent,
TagFilterComponent,
DomainFilterComponent,
AppElementComponent,
AppListComponent,
AppInstallModalComponent,
ApplicationsViewComponent,
ClusterDetailsComponent,
ModalInfoTermsComponent,
ModalInfoPolicyComponent,
SortableColumnComponent,
SortableTableDirective,
RatingExtendedComponent,
AboutComponent,
ChangelogComponent,
SingleCommentComponent,
ModalTestInstanceComponent,
ModalNotificationSendComponent,
DomainRolesDirective,
PageNotFoundComponent,
SshKeysComponent,
NewSshKeyComponent,
ModalProvideSshKeyComponent,
ContactComponent,
PreferencesComponent,
SortableHeaderDirective,
DomainNamespaceAnnotationsComponent,
AccessTokensComponent,
AdminDashboardComponent,
],
providers: [
PasswordValidator,
UserDataService,
NotificationService,
RecaptchaVisibilityService,
AppConfigService,
DatePipe,
{
provide: RECAPTCHA_V3_SITE_KEY,
useFactory: function (appConfigService: AppConfigService) {
return appConfigService.getSiteKey();
},
deps: [AppConfigService]
}
],
exports: [
RateComponent,
FooterComponent,
CommentsComponent,
ScreenshotsComponent,
ModalComponent,
UserDetailsComponent,
UsersListComponent,
PasswordComponent,
UserPrivilegesComponent,
NavbarComponent,
UserPrivilegesComponent,
AppInstallModalComponent,
RolesDirective,
MinLengthDirective,
MaxLengthDirective,
SearchComponent,
TagFilterComponent,
DomainFilterComponent,
ApplicationsViewComponent,
ClusterDetailsComponent,
ModalInfoTermsComponent,
ModalInfoPolicyComponent,
SortableColumnComponent,
SortableTableDirective,
RatingExtendedComponent,
AboutComponent,
TranslateStateModule,
ModalTestInstanceComponent,
ModalNotificationSendComponent,
DomainRolesDirective,
RolesExcludedDirective,
SshKeysComponent,
ModalProvideSshKeyComponent,
PreferencesComponent,
SortableHeaderDirective,
DomainNamespaceAnnotationsComponent,
AccessTokensComponent
],
schemas: [NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA]
})
export class SharedModule {
}