-
Notifications
You must be signed in to change notification settings - Fork 434
/
module.ts
111 lines (106 loc) · 3.17 KB
/
module.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
/*
* 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,
ContentFieldComponent,
ContentHistoryComponent,
ContentItemComponent,
ContentPageComponent,
ContentsPageComponent,
ContentsSelectorComponent,
ContentStatusComponent,
DueTimeSelectorComponent,
FieldEditorComponent,
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]
},
{
path: 'new',
component: ContentPageComponent,
canActivate: [SchemaMustNotBeSingletonGuard, UnsetContentGuard],
canDeactivate: [CanDeactivateGuard]
},
{
path: ':contentId',
component: ContentPageComponent,
canActivate: [ContentMustExistGuard],
canDeactivate: [CanDeactivateGuard],
children: [
{
path: 'history',
component: ContentHistoryComponent,
data: {
channel: 'contents.{contentId}'
}
}
]
}
]
}]
}
];
@NgModule({
imports: [
ColorPickerModule,
DndModule,
SqxFrameworkModule,
SqxSharedModule,
RouterModule.forChild(routes)
],
declarations: [
ArrayEditorComponent,
ArrayItemComponent,
AssetsEditorComponent,
ContentFieldComponent,
ContentHistoryComponent,
ContentItemComponent,
ContentPageComponent,
ContentStatusComponent,
ContentsPageComponent,
ContentsSelectorComponent,
DueTimeSelectorComponent,
FieldEditorComponent,
ReferencesEditorComponent,
SchemasPageComponent
]
})
export class SqxFeatureContentModule { }