forked from RedHatInsights/curiosity-frontend
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathplatformConstants.js
More file actions
238 lines (216 loc) · 6.01 KB
/
Copy pathplatformConstants.js
File metadata and controls
238 lines (216 loc) · 6.01 KB
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
226
227
228
229
230
231
232
233
234
235
236
237
238
/**
* @memberof Platform
* @module PlatformConstants
*/
/**
* Platform Export response data type.
*
* @type {string}
*/
const PLATFORM_API_EXPORT_RESPONSE_DATA = 'data';
/**
* Platform Export response meta type.
*
* @type {string}
*/
const PLATFORM_API_EXPORT_RESPONSE_META = 'meta';
/**
* Platform Export, available application types.
*
* @type {{SUBSCRIPTIONS: string}}
*/
const PLATFORM_API_EXPORT_APPLICATION_TYPES = {
SUBSCRIPTIONS: 'subscriptions'
};
/**
* Platform Export, available resource types for related application types.
*
* @type {{SUBSCRIPTIONS: string, INSTANCES: string}}
*/
const PLATFORM_API_EXPORT_RESOURCE_TYPES = {
INSTANCES: 'instances',
SUBSCRIPTIONS: 'subscriptions'
};
/**
* Platform Export, available content types.
*
* @type {{CSV: string, JSON: string}}
*/
const PLATFORM_API_EXPORT_CONTENT_TYPES = {
CSV: 'csv',
JSON: 'json'
};
/**
* Platform Export, export filename prefix
*
* @type {string}
*/
const PLATFORM_API_EXPORT_FILENAME_PREFIX = 'swatch';
/**
* Platform Export, available status types.
*
* @type {{COMPLETE: string, FAILED: string, RUNNING: string, PARTIAL: string, PENDING: string}}
*/
const PLATFORM_API_EXPORT_STATUS_TYPES = {
FAILED: 'failed',
COMPLETE: 'complete',
PARTIAL: 'partial',
PENDING: 'pending',
RUNNING: 'running'
};
/**
* Platform Export, available response, POST source types.
*
* @type {{APPLICATION: string, FILTERS: string, RESOURCE: string}}
*/
const PLATFORM_API_EXPORT_SOURCE_TYPES = {
APPLICATION: 'application',
FILTERS: 'filters',
RESOURCE: 'resource'
};
/**
* Platform Export, available POST types.
*
* @type {{SOURCES: string, FORMAT: string, EXPIRES_AT: string, NAME: string}}
*/
const PLATFORM_API_EXPORT_POST_TYPES = {
EXPIRES_AT: 'expires_at',
FORMAT: 'format',
NAME: 'name',
SOURCES: 'sources'
};
/**
* Platform Export, available SUBSCRIPTION FILTER POST types.
*
* @type {{BILLING_ACCOUNT_ID: string, USAGE: string, CATEGORY: string, METRIC_ID: string, SLA: string,
* BILLING_PROVIDER: string, PRODUCT_ID: string}}
*/
const PLATFORM_API_EXPORT_POST_SUBSCRIPTIONS_FILTER_TYPES = {
BILLING_PROVIDER: 'billing_provider',
BILLING_ACCOUNT_ID: 'billing_account_id',
CATEGORY: 'category',
METRIC_ID: 'metric_id',
PRODUCT_ID: 'product_id',
SLA: 'sla',
USAGE: 'usage'
};
/**
* Platform Export, available response types.
*
* @type {{STATUS: string, FORMAT: string, EXPIRES_AT: string, ID: string, NAME: string}}
*/
const PLATFORM_API_EXPORT_RESPONSE_TYPES = {
EXPIRES_AT: 'expires_at',
FORMAT: 'format',
ID: 'id',
NAME: 'name',
STATUS: 'status'
};
/**
* Platform response entitlements type.
*
* @type {string}
*/
const PLATFORM_API_RESPONSE_USER_ENTITLEMENTS = 'entitlements';
/**
* Platform response of ENTITLEMENTS type values.
* Schema/map of expected response entitlement types.
*
* @type {{ENTITLED: string}}
*/
const PLATFORM_API_RESPONSE_USER_ENTITLEMENTS_APP_TYPES = {
ENTITLED: 'is_entitled'
};
/**
* Platform response identity type.
*
* @type {string}
*/
const PLATFORM_API_RESPONSE_USER_IDENTITY = 'identity';
/**
* Platform response of IDENTITY type values.
* Schema/map of expected response identity types.
*
* @type {{ORG_ID: string, USER: string}}
*/
const PLATFORM_API_RESPONSE_USER_IDENTITY_TYPES = {
ORG_ID: 'org_id',
USER: 'user'
};
/**
* Platform response of IDENTITY USER type values.
* Schema/map of expected response identity user types.
*
* @type {{ORG_ADMIN: string}}
*/
const PLATFORM_API_RESPONSE_USER_IDENTITY_USER_TYPES = {
ORG_ADMIN: 'is_org_admin'
};
/**
* Platform response of USER PERMISSION type values.
* Schema/map of expected response identity user permission types.
*
* @type {{PERMISSION: string, RESOURCE_DEFS: string}}
*/
const PLATFORM_API_RESPONSE_USER_PERMISSION_TYPES = {
PERMISSION: 'permission',
RESOURCE_DEFS: 'resourceDefinitions'
};
// ToDo: clean up this app name piece, these facets come through the helpers and src/config/rbac.json
const PLATFORM_API_RESPONSE_USER_PERMISSION_APP_TYPES = {
SUBSCRIPTIONS: process.env.REACT_APP_UI_NAME
};
const PLATFORM_API_RESPONSE_USER_PERMISSION_RESOURCE_TYPES = {
ALL: '*'
};
const PLATFORM_API_RESPONSE_USER_PERMISSION_OPERATION_TYPES = {
ALL: '*',
READ: 'read',
WRITE: 'write'
};
const platformConstants = {
PLATFORM_API_EXPORT_APPLICATION_TYPES,
PLATFORM_API_EXPORT_CONTENT_TYPES,
PLATFORM_API_EXPORT_FILENAME_PREFIX,
PLATFORM_API_EXPORT_POST_TYPES,
PLATFORM_API_EXPORT_POST_SUBSCRIPTIONS_FILTER_TYPES,
PLATFORM_API_EXPORT_RESOURCE_TYPES,
PLATFORM_API_EXPORT_RESPONSE_DATA,
PLATFORM_API_EXPORT_RESPONSE_META,
PLATFORM_API_EXPORT_RESPONSE_TYPES,
PLATFORM_API_EXPORT_SOURCE_TYPES,
PLATFORM_API_EXPORT_STATUS_TYPES,
PLATFORM_API_RESPONSE_USER_ENTITLEMENTS,
PLATFORM_API_RESPONSE_USER_ENTITLEMENTS_APP_TYPES,
PLATFORM_API_RESPONSE_USER_IDENTITY,
PLATFORM_API_RESPONSE_USER_IDENTITY_TYPES,
PLATFORM_API_RESPONSE_USER_IDENTITY_USER_TYPES,
PLATFORM_API_RESPONSE_USER_PERMISSION_TYPES,
PLATFORM_API_RESPONSE_USER_PERMISSION_APP_TYPES,
PLATFORM_API_RESPONSE_USER_PERMISSION_RESOURCE_TYPES,
PLATFORM_API_RESPONSE_USER_PERMISSION_OPERATION_TYPES
};
export {
platformConstants as default,
platformConstants,
PLATFORM_API_EXPORT_APPLICATION_TYPES,
PLATFORM_API_EXPORT_CONTENT_TYPES,
PLATFORM_API_EXPORT_FILENAME_PREFIX,
PLATFORM_API_EXPORT_POST_TYPES,
PLATFORM_API_EXPORT_POST_SUBSCRIPTIONS_FILTER_TYPES,
PLATFORM_API_EXPORT_RESOURCE_TYPES,
PLATFORM_API_EXPORT_RESPONSE_DATA,
PLATFORM_API_EXPORT_RESPONSE_META,
PLATFORM_API_EXPORT_RESPONSE_TYPES,
PLATFORM_API_EXPORT_SOURCE_TYPES,
PLATFORM_API_EXPORT_STATUS_TYPES,
PLATFORM_API_RESPONSE_USER_ENTITLEMENTS,
PLATFORM_API_RESPONSE_USER_ENTITLEMENTS_APP_TYPES,
PLATFORM_API_RESPONSE_USER_IDENTITY,
PLATFORM_API_RESPONSE_USER_IDENTITY_TYPES,
PLATFORM_API_RESPONSE_USER_IDENTITY_USER_TYPES,
PLATFORM_API_RESPONSE_USER_PERMISSION_TYPES,
PLATFORM_API_RESPONSE_USER_PERMISSION_APP_TYPES,
PLATFORM_API_RESPONSE_USER_PERMISSION_RESOURCE_TYPES,
PLATFORM_API_RESPONSE_USER_PERMISSION_OPERATION_TYPES
};