mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2026-11-03 21:39:22 +00:00
175 lines
6.2 KiB
TypeScript
175 lines
6.2 KiB
TypeScript
import {
|
|
importProvidersFrom,
|
|
inject,
|
|
provideAppInitializer,
|
|
provideZonelessChangeDetection,
|
|
} from '@angular/core'
|
|
|
|
import { DragDropModule } from '@angular/cdk/drag-drop'
|
|
import { DatePipe, registerLocaleData } from '@angular/common'
|
|
import {
|
|
provideHttpClient,
|
|
withFetch,
|
|
withInterceptors,
|
|
withInterceptorsFromDi,
|
|
} from '@angular/common/http'
|
|
import { FormsModule, ReactiveFormsModule } from '@angular/forms'
|
|
import { BrowserModule, bootstrapApplication } from '@angular/platform-browser'
|
|
import {
|
|
NgbDateAdapter,
|
|
NgbDateParserFormatter,
|
|
NgbInputDatepickerConfig,
|
|
NgbModule,
|
|
} from '@ng-bootstrap/ng-bootstrap'
|
|
import { NgSelectModule } from '@ng-select/ng-select'
|
|
import { ColorSliderModule } from 'ngx-color/slider'
|
|
import { CookieService } from 'ngx-cookie-service'
|
|
import { AppRoutingModule } from './app/app-routing.module'
|
|
import { AppComponent } from './app/app.component'
|
|
import { DirtyDocGuard } from './app/guards/dirty-doc.guard'
|
|
import { DirtySavedViewGuard } from './app/guards/dirty-saved-view.guard'
|
|
import { PermissionsGuard } from './app/guards/permissions.guard'
|
|
import { withApiVersionInterceptor } from './app/interceptors/api-version.interceptor'
|
|
import { withAuthExpiryInterceptor } from './app/interceptors/auth-expiry.interceptor'
|
|
import { withCsrfInterceptor } from './app/interceptors/csrf.interceptor'
|
|
import { DocumentTitlePipe } from './app/pipes/document-title.pipe'
|
|
import { FilterPipe } from './app/pipes/filter.pipe'
|
|
import { UsernamePipe } from './app/pipes/username.pipe'
|
|
import { SettingsService } from './app/services/settings.service'
|
|
import { LocalizedDateParserFormatter } from './app/utils/ngb-date-parser-formatter'
|
|
import { ISODateAdapter } from './app/utils/ngb-iso-date-adapter'
|
|
|
|
import localeAf from '@angular/common/locales/af'
|
|
import localeAr from '@angular/common/locales/ar'
|
|
import localeBe from '@angular/common/locales/be'
|
|
import localeBg from '@angular/common/locales/bg'
|
|
import localeCa from '@angular/common/locales/ca'
|
|
import localeCs from '@angular/common/locales/cs'
|
|
import localeDa from '@angular/common/locales/da'
|
|
import localeDe from '@angular/common/locales/de'
|
|
import localeEl from '@angular/common/locales/el'
|
|
import localeEnGb from '@angular/common/locales/en-GB'
|
|
import localeEs from '@angular/common/locales/es'
|
|
import localeFa from '@angular/common/locales/fa'
|
|
import localeFi from '@angular/common/locales/fi'
|
|
import localeFr from '@angular/common/locales/fr'
|
|
import localeHu from '@angular/common/locales/hu'
|
|
import localeId from '@angular/common/locales/id'
|
|
import localeIt from '@angular/common/locales/it'
|
|
import localeJa from '@angular/common/locales/ja'
|
|
import localeKo from '@angular/common/locales/ko'
|
|
import localeLb from '@angular/common/locales/lb'
|
|
import localeNl from '@angular/common/locales/nl'
|
|
import localeNo from '@angular/common/locales/no'
|
|
import localePl from '@angular/common/locales/pl'
|
|
import localePt from '@angular/common/locales/pt'
|
|
import localeRo from '@angular/common/locales/ro'
|
|
import localeRu from '@angular/common/locales/ru'
|
|
import localeSk from '@angular/common/locales/sk'
|
|
import localeSl from '@angular/common/locales/sl'
|
|
import localeSr from '@angular/common/locales/sr'
|
|
import localeSv from '@angular/common/locales/sv'
|
|
import localeTr from '@angular/common/locales/tr'
|
|
import localeUk from '@angular/common/locales/uk'
|
|
import localeVi from '@angular/common/locales/vi'
|
|
import localeZh from '@angular/common/locales/zh'
|
|
import localeZhHant from '@angular/common/locales/zh-Hant'
|
|
import { provideUiTour } from 'ngx-ui-tour-ng-bootstrap'
|
|
import { CorrespondentNamePipe } from './app/pipes/correspondent-name.pipe'
|
|
import { DocumentTypeNamePipe } from './app/pipes/document-type-name.pipe'
|
|
import { StoragePathNamePipe } from './app/pipes/storage-path-name.pipe'
|
|
import { PngxDatePickerConfig } from './app/utils/ngb-input-date-picker-config'
|
|
|
|
registerLocaleData(localeAf)
|
|
registerLocaleData(localeAr)
|
|
registerLocaleData(localeBe)
|
|
registerLocaleData(localeBg)
|
|
registerLocaleData(localeCa)
|
|
registerLocaleData(localeCs)
|
|
registerLocaleData(localeDa)
|
|
registerLocaleData(localeDe)
|
|
registerLocaleData(localeEl)
|
|
registerLocaleData(localeEnGb)
|
|
registerLocaleData(localeEs)
|
|
registerLocaleData(localeFa)
|
|
registerLocaleData(localeFi)
|
|
registerLocaleData(localeFr)
|
|
registerLocaleData(localeHu)
|
|
registerLocaleData(localeId)
|
|
registerLocaleData(localeIt)
|
|
registerLocaleData(localeJa)
|
|
registerLocaleData(localeKo)
|
|
registerLocaleData(localeLb)
|
|
registerLocaleData(localeNl)
|
|
registerLocaleData(localeNo)
|
|
registerLocaleData(localePl)
|
|
registerLocaleData(localePt, 'pt-BR')
|
|
registerLocaleData(localePt, 'pt-PT')
|
|
registerLocaleData(localeRo)
|
|
registerLocaleData(localeRu)
|
|
registerLocaleData(localeSk)
|
|
registerLocaleData(localeSl)
|
|
registerLocaleData(localeSr)
|
|
registerLocaleData(localeSv)
|
|
registerLocaleData(localeTr)
|
|
registerLocaleData(localeVi)
|
|
registerLocaleData(localeUk)
|
|
registerLocaleData(localeZh)
|
|
registerLocaleData(localeZhHant)
|
|
|
|
function initializeApp() {
|
|
const settings = inject(SettingsService)
|
|
return settings.initializeSettings()
|
|
}
|
|
|
|
bootstrapApplication(AppComponent, {
|
|
providers: [
|
|
provideZonelessChangeDetection(),
|
|
importProvidersFrom(
|
|
BrowserModule,
|
|
AppRoutingModule,
|
|
NgbModule,
|
|
FormsModule,
|
|
ReactiveFormsModule,
|
|
NgSelectModule,
|
|
ColorSliderModule,
|
|
DragDropModule
|
|
),
|
|
provideAppInitializer(initializeApp),
|
|
DatePipe,
|
|
CookieService,
|
|
FilterPipe,
|
|
DocumentTitlePipe,
|
|
{ provide: NgbInputDatepickerConfig, useClass: PngxDatePickerConfig },
|
|
{ provide: NgbDateAdapter, useClass: ISODateAdapter },
|
|
{ provide: NgbDateParserFormatter, useClass: LocalizedDateParserFormatter },
|
|
PermissionsGuard,
|
|
DirtyDocGuard,
|
|
DirtySavedViewGuard,
|
|
UsernamePipe,
|
|
CorrespondentNamePipe,
|
|
DocumentTypeNamePipe,
|
|
StoragePathNamePipe,
|
|
provideHttpClient(
|
|
withInterceptorsFromDi(),
|
|
withInterceptors([
|
|
withCsrfInterceptor,
|
|
withApiVersionInterceptor,
|
|
withAuthExpiryInterceptor,
|
|
]),
|
|
withFetch()
|
|
),
|
|
provideUiTour({
|
|
enableBackdrop: true,
|
|
backdropConfig: {
|
|
offset: 10,
|
|
},
|
|
prevBtnTitle: $localize`Prev`,
|
|
nextBtnTitle: $localize`Next`,
|
|
endBtnTitle: $localize`End`,
|
|
isOptional: true,
|
|
useLegacyTitle: true,
|
|
}),
|
|
],
|
|
}).catch((err) => console.error(err))
|