This repository has been archived by the owner on Nov 22, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathconfig.interface.ts
225 lines (225 loc) · 4.53 KB
/
config.interface.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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
//TODO:region ?
/**
* Environment settings
*/
interface IGlobalEnvironment {
/**
* App versison
*/
appVersion: string,
/**
* Debugging flag
*/
debugging: boolean,
/**
* Js caching of requireJs
*/
cacheBusting: string,
/**
* Client Id of OpenId
*/
clientId: string;
/**
* Authority uri for authentication
*/
authority: string;
/**
* Allow anouynmous access
*/
allowAnonymousAccess: boolean;
/**
* Elmah logging enabled client exceptions
*/
elmahLoggingEnabled: boolean;
/**
* Elmah logging backend endpoint
*/
elmahLoggingUrl?: string;
/**
* Report Viwer Url
*/
reportViewerUrl?: string;
/**
* Session endppotiny for Report params session
*/
reportControllerUrl?: string;
/**
* Show model panel
*/
showModelDebugPanel?: boolean;
/**
* EntiForgerytokenEnabled flag
*/
antiForgeryTokenEnabled?: boolean;
/**
* Cross Domain root Paths,like https://xdomain.com
*/
xDomPaths?: { [index: string]: string };
}
/**
* Common event names used through the app
*/
interface IEvents {
/**
* Broadcast when login/logoff happened
*/
userLoginChanged: string;
/**
* Fired unauthorized action taken or token expires
*/
loginRequired: string;
/**
* Fired when http request begins
*/
ajaxStarted: string;
/**
* Fired when http request ends
*/
ajaxFinished: string;
/**
* Fired when menu changed programtically/manually
*/
menuChanged: string;
/**
* Fired when model loaded in BaseModelController
*/
modelLoaded: string;
}
/**
* Date time formats used in rtDatetime directive
*/
interface IDateTimeFormat {
timeFormat: string;
dateFormat: string;
monthFormat: string;
yearFormat: string;
/**
* Minute step value default 5
*/
datePickerTimeMinStep?: number;
}
/**
* Main config settings
*/
interface IMainConfig extends IBaseConfig {
/**
* Api path used when there is only one api in use
*/
defaultApiPrefix?: string;
/**
* Default form element name
*/
defaultFormName?: string,
/**
* New item id param value default name
*/
defaultNewItemParamValue?: string,
/**
* New item id param default name
*/
defaultNewItemParamName?: string,
/**
* Application version number
*/
appVersion?: string;
/**
* App title
*/
appTitle?: string;
/**
* Indicates that app is running in debug mode
*/
debugMode?: boolean;
/**
* Common event names
*/
eventNames?: IEvents;
/**
* Default grid page size
*/
gridDefaultPageSize?: number;
/**
* Default grid options scope name
*/
gridDefaultOptionsName?: string;
/**
* Grid Full feature list
*/
gridFullFeatureList?: string;
/**
* Grid standart features list
*/
gridStandartFeatureList?: string;
/**
* Supported languages
* @description if new lang is added,nls folder must be updaded accordingly in resource
*/
supportedLanguages?: ILanguage[];
/**
* Exception will be logged to Elmah db
*/
serverExceptionLoggingEnabled?: boolean;
/**
* Elmah logging endpoint
*/
serverExceptionLoggingBackendUrl?: string;
/**
* DateTime formats
*/
datetimeFormat?: IDateTimeFormat;
/**
* Only model changes will be posting to server
*/
postOnlyModelChanges?: boolean;
/**
* Report Viwer Url
*/
reportViewerUrl?: string;
/**
* Session endppotiny for Report params session
*/
reportControllerUrl?: string;
/**
* Show company name on stratup next to avatar/user name
*/
showCompanyName?: boolean;
/**
* Home page options
*/
homePageOptions?: IHomePageOptions;
/**
* AutoSave interval in ms,default
*/
autoSaveInterval?: number;
}
/**
* Main config provider
*/
interface IMainConfigProvider extends IBaseConfigProvider<IMainConfig> {
}
/**
* HomePage settings
*/
interface IHomePageOptions {
/**
* Home page url,eg./dashboard
*/
url: string;
/**
* Homepage Background image uri
*/
imageUri?: string;
/**
* Homepage background video options
*/
videoOptions?: IVideoOptions;
}
/**
* Video options
*/
interface IVideoOptions {
urlMp4?: string;
urlWebm?: string;
urlOgg?: string;
poster: string;
}