mirror of https://github.com/Squidex/squidex.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
131 lines
3.9 KiB
131 lines
3.9 KiB
/*
|
|
* Squidex Headless CMS
|
|
*
|
|
* @license
|
|
* Copyright (c) Squidex UG (haftungsbeschränkt). All rights reserved.
|
|
*/
|
|
|
|
import { NgModule } from '@angular/core';
|
|
import { RouterModule, Routes } from '@angular/router';
|
|
import { DndModule } from 'ng2-dnd';
|
|
import { ColorPickerModule } from 'ngx-color-picker';
|
|
|
|
import {
|
|
CanDeactivateGuard,
|
|
ContentMustExistGuard,
|
|
LoadLanguagesGuard,
|
|
SchemaMustExistPublishedGuard,
|
|
SchemaMustNotBeSingletonGuard,
|
|
SqxFrameworkModule,
|
|
SqxSharedModule,
|
|
UnsetContentGuard
|
|
} from '@app/shared';
|
|
|
|
import {
|
|
ArrayEditorComponent,
|
|
ArrayItemComponent,
|
|
AssetsEditorComponent,
|
|
CommentsPageComponent,
|
|
ContentFieldComponent,
|
|
ContentHistoryPageComponent,
|
|
ContentItemComponent,
|
|
ContentItemEditorComponent,
|
|
ContentPageComponent,
|
|
ContentsFiltersPageComponent,
|
|
ContentsPageComponent,
|
|
ContentsSelectorComponent,
|
|
ContentStatusComponent,
|
|
DueTimeSelectorComponent,
|
|
FieldEditorComponent,
|
|
FieldLanguagesComponent,
|
|
PreviewButtonComponent,
|
|
ReferencesEditorComponent,
|
|
SchemasPageComponent
|
|
} from './declarations';
|
|
|
|
const routes: Routes = [
|
|
{
|
|
path: '',
|
|
component: SchemasPageComponent,
|
|
canActivate: [LoadLanguagesGuard],
|
|
children: [
|
|
{
|
|
path: ''
|
|
},
|
|
{
|
|
path: ':schemaName',
|
|
canActivate: [SchemaMustExistPublishedGuard],
|
|
children: [
|
|
{
|
|
path: '',
|
|
component: ContentsPageComponent,
|
|
canActivate: [SchemaMustNotBeSingletonGuard],
|
|
canDeactivate: [CanDeactivateGuard],
|
|
children: [
|
|
{
|
|
path: 'filters',
|
|
component: ContentsFiltersPageComponent
|
|
}
|
|
]
|
|
},
|
|
{
|
|
path: 'new',
|
|
component: ContentPageComponent,
|
|
canActivate: [SchemaMustNotBeSingletonGuard, UnsetContentGuard],
|
|
canDeactivate: [CanDeactivateGuard]
|
|
},
|
|
{
|
|
path: ':contentId',
|
|
component: ContentPageComponent,
|
|
canActivate: [ContentMustExistGuard],
|
|
canDeactivate: [CanDeactivateGuard],
|
|
children: [
|
|
{
|
|
path: 'history',
|
|
component: ContentHistoryPageComponent,
|
|
data: {
|
|
channel: 'contents.{contentId}'
|
|
}
|
|
},
|
|
{
|
|
path: 'comments',
|
|
component: CommentsPageComponent
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}]
|
|
}
|
|
];
|
|
|
|
@NgModule({
|
|
imports: [
|
|
ColorPickerModule,
|
|
DndModule,
|
|
SqxFrameworkModule,
|
|
SqxSharedModule,
|
|
RouterModule.forChild(routes)
|
|
],
|
|
declarations: [
|
|
ArrayEditorComponent,
|
|
ArrayItemComponent,
|
|
AssetsEditorComponent,
|
|
CommentsPageComponent,
|
|
ContentFieldComponent,
|
|
ContentHistoryPageComponent,
|
|
ContentItemComponent,
|
|
ContentItemEditorComponent,
|
|
ContentPageComponent,
|
|
ContentsFiltersPageComponent,
|
|
ContentStatusComponent,
|
|
ContentsPageComponent,
|
|
ContentsSelectorComponent,
|
|
DueTimeSelectorComponent,
|
|
FieldEditorComponent,
|
|
FieldLanguagesComponent,
|
|
PreviewButtonComponent,
|
|
ReferencesEditorComponent,
|
|
SchemasPageComponent
|
|
]
|
|
})
|
|
export class SqxFeatureContentModule { }
|