@sava-info-systems/api-maker-with-extensions 1.19.8 → 1.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/1025.95948d3d2668bb14.js +1 -0
- package/dist/1097.f259891962623e63.js +1 -0
- package/dist/148.1dc7d9e0cfe45510.js +1 -0
- package/dist/1558.0aae3e5c538d3815.js +1 -0
- package/dist/1678.ed1e4a269e0f42bc.js +1 -0
- package/dist/1754.691f142aa1eabe28.js +1 -0
- package/dist/1928.5c81326985ca5f64.js +1 -0
- package/dist/1957.ab7fda21d9978597.js +1 -0
- package/dist/2140.1ce150285aebe3cc.js +1 -0
- package/dist/2295.4fa1d4b5ff482f3a.js +1 -0
- package/dist/238.891233aa670bdd2b.js +1 -0
- package/dist/2473.4b2bb1ad5b1cc99d.js +1 -0
- package/dist/2714.9880836f6b8b78a7.js +1 -0
- package/dist/2735.a66ecf607b9654e0.js +1 -0
- package/dist/2908.c26d49c83d4cbc85.js +1 -0
- package/dist/292.a9b9c6aef70ca8b4.js +1 -0
- package/dist/3081.cd465078d391b50b.js +1 -0
- package/dist/3139.b15465b9cea3b772.js +1 -0
- package/dist/3450.9b5cfc83039b02b5.js +1 -0
- package/dist/3664.4a1dd7f16f8b57fb.js +1 -0
- package/dist/3rdpartylicenses.txt +829 -0
- package/dist/4110.c8b37cab34b21d0d.js +1 -0
- package/dist/4186.3bd4de588fe7617d.js +1 -0
- package/dist/4211.188f84c688ab656f.js +1 -0
- package/dist/4575.f2056aa18e4cc778.js +1 -0
- package/dist/4842.e7649d81606ad80d.js +1 -0
- package/dist/485.ec283c2f8b792308.js +1 -0
- package/dist/4895.a54759704d1994b1.js +1 -0
- package/dist/5334.b4ed1b45db24d12f.js +1 -0
- package/dist/5421.2067001c10533303.js +1 -0
- package/dist/5679.4e22239895c7f520.js +1 -0
- package/dist/5761.331ca41ab64cca92.js +1 -0
- package/dist/5765.1994a5bd001c1c55.js +1 -0
- package/dist/6236.5b62431db131ce4d.js +1 -0
- package/dist/6393.958d3e53cb6f8226.js +1 -0
- package/dist/6401.374823002788afe7.js +1 -0
- package/dist/7368.fa9ed2cea7c284b8.js +1 -0
- package/dist/7436.640bf5fe48814cbe.js +1 -0
- package/dist/7470.1bdcf8e01acb62bd.js +1 -0
- package/dist/7649.ab4744cfe713eec0.js +1 -0
- package/dist/7975.6f386123f5c64f78.js +1 -0
- package/dist/7977.afeded970bac8b66.js +1 -0
- package/dist/7987.d15aacc264588b12.js +1 -0
- package/dist/8125.35fe2368910566d5.js +1 -0
- package/dist/8266.aca59a0a04590ab1.js +1 -0
- package/dist/8296.e4e3f60f70779a30.js +1 -0
- package/dist/8841.f7eb5568831c2981.js +1 -0
- package/dist/885.c5fd870ec02f004d.js +1 -0
- package/dist/891.5e08c81e5200413e.js +1 -0
- package/dist/913.4580b4ce4307a40f.js +1 -0
- package/dist/9243.08630ad94e1fddba.js +1 -0
- package/dist/9575.30ac91b65602c0ca.js +1 -0
- package/dist/9939.4b0d758462bcc042.js +1 -0
- package/dist/assets/images/icons/scanning-period.svg +13 -0
- package/dist/assets/schema-types/InterfaceProps.ts +38 -0
- package/dist/assets/schema-types/store-types.ts +4 -0
- package/dist/assets/schema-types/types.ts +82 -0
- package/dist/assets/styles/colors-dark.scss +4 -0
- package/dist/assets/styles/out/bootstrap-overrides.css.map +1 -0
- package/dist/assets/styles/out/colors-dark.css +1 -1
- package/dist/assets/styles/out/colors-dark.css.map +1 -0
- package/dist/assets/styles/out/colors-light.css.map +1 -0
- package/dist/assets/styles/out/monaco-editor-overrides.css.map +1 -0
- package/dist/assets/styles/out/styles.css +1 -1
- package/dist/assets/styles/out/styles.css.map +1 -0
- package/dist/assets/styles/out/variables.css.map +1 -0
- package/dist/assets/styles/styles.scss +42 -1
- package/dist/common.912ad7a22e5de63a.js +1 -0
- package/dist/index.html +5 -1
- package/dist/main.71d23d87fc0a83a2.js +1 -0
- package/dist/polyfills.47193e1d7d4041b5.js +1 -0
- package/dist/runtime.3e2c700389e48f46.js +1 -0
- package/main.js +1 -1
- package/package.json +15 -15
- package/sandbox/Dockerfile +3 -2
- package/sandbox/assets/schema-types/store-types.js +53 -49
- package/sandbox/assets/schema-types/types.js +285 -265
- package/sandbox/package.json +1 -4
- package/sandbox/sandbox.js +1 -1
- package/src/assets/schema-types/store-types.ts +4 -0
- package/src/assets/schema-types/types.ts +82 -0
- package/src/public/dist-db-masters/browser/assets/data/mime_types.json +1 -0
- package/src/public/dist-db-masters/browser/index.html +1 -1
- package/src/public/dist-db-masters/browser/main-HGRBZVEX.js +139 -0
- package/src/public/dist-db-masters/browser/main-LWHKTSAI.js +139 -0
- package/src/tools/local-client.js +1 -1
- package/dist/1025.ad3d7fe2972421a7.js +0 -1
- package/dist/1097.f7edc9a254293cbe.js +0 -1
- package/dist/148.3d1172921fc38628.js +0 -1
- package/dist/1558.d77067ef3989dc57.js +0 -1
- package/dist/1617.cd35a3a268fd8f90.js +0 -1
- package/dist/1678.2c6fe869dc9df280.js +0 -1
- package/dist/1754.616b92791d39dab1.js +0 -1
- package/dist/1928.a299b3986d670379.js +0 -1
- package/dist/1957.cafa315c70f23efe.js +0 -1
- package/dist/2140.82e389d21656cd83.js +0 -1
- package/dist/2295.b066a00a7c4c4d9c.js +0 -1
- package/dist/238.ec990f26e1e29a5e.js +0 -1
- package/dist/2473.6a522dcf87dfb922.js +0 -1
- package/dist/2714.1ed8bfd73f5693eb.js +0 -1
- package/dist/2735.880b4c038ef3207e.js +0 -1
- package/dist/2908.c7cbde300e1840a4.js +0 -1
- package/dist/3081.dd32ee0f5db41577.js +0 -1
- package/dist/3139.7a6ebcaa6a5f38f6.js +0 -1
- package/dist/3450.68d8d179c9496764.js +0 -1
- package/dist/4110.1747a68dfaacbbd8.js +0 -1
- package/dist/4186.601304798e909236.js +0 -1
- package/dist/4211.ad181f08e1073d52.js +0 -1
- package/dist/4575.987834c6e73af961.js +0 -1
- package/dist/4842.f89ded9e1e9f1110.js +0 -1
- package/dist/485.b333cf63f954b75c.js +0 -1
- package/dist/4895.95e42b567a89ce84.js +0 -1
- package/dist/5249.73e35de880a7af92.js +0 -1
- package/dist/5334.8ed5b236a6948681.js +0 -1
- package/dist/5421.e729ed3585afa9af.js +0 -1
- package/dist/5679.53292305f1448567.js +0 -1
- package/dist/5761.c363fe26244e8787.js +0 -1
- package/dist/5765.2b385a8405d8e7b2.js +0 -1
- package/dist/6236.b81e95926f7fcd60.js +0 -1
- package/dist/6393.1323e8b7d2cdae70.js +0 -1
- package/dist/6401.02e5b3cb94d0322a.js +0 -1
- package/dist/6925.d59cabb0e343d24c.js +0 -1
- package/dist/7368.4c04430d3efc5947.js +0 -1
- package/dist/7436.7e4876b9e90efde6.js +0 -1
- package/dist/7470.9195bddaee5202e0.js +0 -1
- package/dist/7649.870e05f3aa978078.js +0 -1
- package/dist/7975.dbe6e674c50ab553.js +0 -1
- package/dist/7977.35ebfb6f4c9503b4.js +0 -1
- package/dist/7987.5202964524a17ffa.js +0 -1
- package/dist/8125.58e1a7a385797896.js +0 -1
- package/dist/8266.d665463de8b8d75a.js +0 -1
- package/dist/8296.32f107844a1381b6.js +0 -1
- package/dist/8374.11d430ef2432bfba.js +0 -1
- package/dist/8682.5bde1163690a18dc.js +0 -1
- package/dist/8841.6cb824dd9d5ad8f8.js +0 -1
- package/dist/885.e3d53b62c51f8311.js +0 -1
- package/dist/891.333c6913b8246e3c.js +0 -1
- package/dist/913.e60cadd27b99097f.js +0 -1
- package/dist/9243.c223cdbc4cd84cb8.js +0 -1
- package/dist/9575.0a35a4da70f9e6e5.js +0 -1
- package/dist/9939.218315684234eb18.js +0 -1
- package/dist/common.442040891fd4ef29.js +0 -1
- package/dist/main.ca1eb95b67ff9761.js +0 -1
- package/dist/polyfills.93062920aa87d580.js +0 -1
- package/dist/runtime.66bf12954a778fb7.js +0 -1
|
@@ -83,6 +83,7 @@ export enum ESupportedAPIParamType {
|
|
|
83
83
|
export enum EContentType {
|
|
84
84
|
JSON = 'application/json',
|
|
85
85
|
XML = 'text/xml',
|
|
86
|
+
APPLICATION_XML = 'application/xml',
|
|
86
87
|
YAML = 'text/yaml',
|
|
87
88
|
TEXT = 'text/plain',
|
|
88
89
|
HTML = 'text/html',
|
|
@@ -126,9 +127,12 @@ export enum EHeader {
|
|
|
126
127
|
INTER_COMM = 'x-am-inter-comm', // Used between sandbox and process communication. It will have encrypted content.
|
|
127
128
|
SEND_ONLY_OBJECTS = 'x-am-send-only-objects-in-stream', // used by sandbox API calls internally.
|
|
128
129
|
AM_REQUEST_ID = 'x-am-request-id', // used to send requestId in response headers and internal calls can have same request Id.
|
|
130
|
+
AM_CODE_EXEC_ID = 'x-am-code-exec-id', // It will be same for custom apis and db calls made inside that and same for schedulers, tp apis, ws code, initializers code etc.
|
|
129
131
|
AM_STORE_TOKEN = 'x-am-store-token', // used to get data from store public APIs
|
|
130
132
|
AM_WS_Client_ID = 'x-am-ws-client-id',
|
|
131
133
|
RUN_IN_DEBUGGER = 'x-am-run-in-debugger', // Used to run code in debugger sandbox
|
|
134
|
+
TENANT_USERNAME = 'x-am-tenant-username', // Used in multi tenant architecture, if passed, no need to pass specifically in APIs for manipulating that tenant specific data.
|
|
135
|
+
TENANT_SECRET_PATH = 'x-am-tenant-secret-path', // Used in multi tenant architecture, if passed, no need to pass specifically in APIs for manipulating that tenant specific data.
|
|
132
136
|
}
|
|
133
137
|
|
|
134
138
|
export enum EHeaderDBMasters {
|
|
@@ -125,6 +125,9 @@ export enum EAPIIdEnum {
|
|
|
125
125
|
IS_VALID_DATA_FOR_TABLE = 'IS_VALID_DATA_FOR_TABLE',
|
|
126
126
|
IS_VALID_DATA_FOR_CUSTOM_API = 'IS_VALID_DATA_FOR_CUSTOM_API',
|
|
127
127
|
IS_VALID_DATA_FOR_THIRD_PARTY_API = 'IS_VALID_DATA_FOR_THIRD_PARTY_API',
|
|
128
|
+
|
|
129
|
+
MULTI_TENANT_INSTANCE_UPDATED = 'MULTI_TENANT_INSTANCE_UPDATED',
|
|
130
|
+
IS_VALID_CONNECTION_STRING = 'IS_VALID_CONNECTION_STRING',
|
|
128
131
|
}
|
|
129
132
|
|
|
130
133
|
export interface IAuthInfoObjects {
|
|
@@ -209,6 +212,10 @@ export interface IBaseParams {
|
|
|
209
212
|
* It is used in instance & database & collection hooks
|
|
210
213
|
*/
|
|
211
214
|
hookType?: 'pre' | 'post';
|
|
215
|
+
|
|
216
|
+
// Multi tenant architecture related internal fields.
|
|
217
|
+
tenantUsername?: string;
|
|
218
|
+
tenantSecretPath?: string;
|
|
212
219
|
}
|
|
213
220
|
|
|
214
221
|
export interface IAMGlobalResponse {
|
|
@@ -234,6 +241,21 @@ export interface IAMGlobalResponse {
|
|
|
234
241
|
headers?: any;
|
|
235
242
|
}
|
|
236
243
|
|
|
244
|
+
export interface IMultiTenantSecretObj {
|
|
245
|
+
instanceName: string;
|
|
246
|
+
databaseName: string;
|
|
247
|
+
collectionName: string;
|
|
248
|
+
usernameColumn: string;
|
|
249
|
+
connectionStringColumn: string;
|
|
250
|
+
|
|
251
|
+
// Oracle database fields.
|
|
252
|
+
oracleDBUsernameColumn?: string;
|
|
253
|
+
oracleDBPasswordColumn?: string;
|
|
254
|
+
oracleDBPrivilegeColumn?: string;
|
|
255
|
+
|
|
256
|
+
find: any;
|
|
257
|
+
}
|
|
258
|
+
|
|
237
259
|
export enum EType {
|
|
238
260
|
string = 'string',
|
|
239
261
|
number = 'number',
|
|
@@ -605,6 +627,9 @@ export enum EApiPaths {
|
|
|
605
627
|
IS_VALID_DATA_FOR_TABLE = '/is-valid-data-for-table',
|
|
606
628
|
IS_VALID_DATA_FOR_CUSTOM_API = '/is-valid-data-for-custom-api',
|
|
607
629
|
IS_VALID_DATA_FOR_THIRD_PARTY_API = '/is-valid-data-for-third-party-api',
|
|
630
|
+
|
|
631
|
+
MULTI_TENANT_INSTANCE_UPDATED = '/multi-tenant-instance-updated',
|
|
632
|
+
IS_VALID_CONNECTION_STRING = '/is-valid-connection-string',
|
|
608
633
|
}
|
|
609
634
|
|
|
610
635
|
export interface IQueryFormat {
|
|
@@ -1128,6 +1153,19 @@ export interface IAMGlobalSysSystem {
|
|
|
1128
1153
|
isValidDataForThirdPartyAPI(data: IIsValidDataForThirdPartyAPI[]): Promise<IResponseError[][]>;
|
|
1129
1154
|
isValidDataForThirdPartyAPI(data: IIsValidDataForThirdPartyAPI, getFullResponse: boolean): Promise<IResponseError[]>;
|
|
1130
1155
|
isValidDataForThirdPartyAPI(data: IIsValidDataForThirdPartyAPI[], getFullResponse: boolean): Promise<IResponseError[][]>;
|
|
1156
|
+
|
|
1157
|
+
multiTenantInstanceUpdated(data: IMultiTenantInstanceUpdated | IMultiTenantInstanceUpdated[]): Promise<IResponseError[]>;
|
|
1158
|
+
isValidConnectionString(data: IIsValidConnectionString | IIsValidConnectionString[]): Promise<IAPIResponseSmall<boolean> | IAPIResponseSmall<boolean>[]>;
|
|
1159
|
+
}
|
|
1160
|
+
|
|
1161
|
+
// $$$$_8796864_Duplicate
|
|
1162
|
+
export enum EInstanceType {
|
|
1163
|
+
MONGO_DB = 'MONGO_DB',
|
|
1164
|
+
MYSQL_DB = 'MYSQL_DB',
|
|
1165
|
+
MARIA_DB = 'MARIA_DB',
|
|
1166
|
+
SQL_SERVER_DB = 'SQL_SERVER_DB',
|
|
1167
|
+
POSTGRE_SQL_DB = 'POSTGRE_SQL_DB',
|
|
1168
|
+
ORACLE_DB = 'ORACLE_DB',
|
|
1131
1169
|
}
|
|
1132
1170
|
|
|
1133
1171
|
export interface ICallExternalApiResp<T> {
|
|
@@ -1136,13 +1174,21 @@ export interface ICallExternalApiResp<T> {
|
|
|
1136
1174
|
body: T;
|
|
1137
1175
|
}
|
|
1138
1176
|
|
|
1177
|
+
export interface IResetCacheApiFormat {
|
|
1178
|
+
name: string;
|
|
1179
|
+
tenantSecretPath?: string;
|
|
1180
|
+
tenantUsername?: string;
|
|
1181
|
+
}
|
|
1182
|
+
|
|
1139
1183
|
export interface IAMGlobalSysCache {
|
|
1140
1184
|
getKey(name: string | string[]): any;
|
|
1141
1185
|
setKey(name: string | ISetRedisInternalRequestObj[], value?: string, ttlSeconds?: number): any;
|
|
1142
1186
|
removeKey(name: string | string[]): any;
|
|
1143
1187
|
resetCacheDB(params: IResetRedisCacheDB): any;
|
|
1144
1188
|
resetCacheCustomApis(name: string): any;
|
|
1189
|
+
resetCacheCustomApis(data: IResetCacheApiFormat): any;
|
|
1145
1190
|
resetCacheSystemApis(name: string): any;
|
|
1191
|
+
resetCacheSystemApis(data: IResetCacheApiFormat): any;
|
|
1146
1192
|
resetCacheThirdPartyApis(params: IResetRedisCacheTP): any;
|
|
1147
1193
|
}
|
|
1148
1194
|
|
|
@@ -1319,6 +1365,8 @@ export interface IResetRedisCacheDB extends ICollectionIdentity {
|
|
|
1319
1365
|
export interface IResetRedisCacheTP {
|
|
1320
1366
|
apiBundleName: string;
|
|
1321
1367
|
apiVersionName?: string;
|
|
1368
|
+
tenantSecretPath?: string;
|
|
1369
|
+
tenantUsername?: string;
|
|
1322
1370
|
}
|
|
1323
1371
|
|
|
1324
1372
|
export interface IGetSecretInternalRequestBody {
|
|
@@ -1358,6 +1406,8 @@ export interface IAPIResponse<T> {
|
|
|
1358
1406
|
warnings?: IResponseError[];
|
|
1359
1407
|
}
|
|
1360
1408
|
|
|
1409
|
+
export type IAPIResponseSmall<T> = Pick<IAPIResponse<T>, 'success' | 'data'> & { error?: any };
|
|
1410
|
+
|
|
1361
1411
|
// WebSocket connection response format.
|
|
1362
1412
|
export interface IWSResponse {
|
|
1363
1413
|
type: EWSObjectType;
|
|
@@ -1388,6 +1438,7 @@ export interface IWSLocalClientDataResponse {
|
|
|
1388
1438
|
|
|
1389
1439
|
export interface IAPIResponseMeta {
|
|
1390
1440
|
executionTime?: string;
|
|
1441
|
+
executionTimeMS?: number;
|
|
1391
1442
|
executionPlan?: any[]; // IMongodbExplainPlan[];
|
|
1392
1443
|
apiAccessGroups?: IAPIAccessGroupMeta[];
|
|
1393
1444
|
runBy?: ICodeRunByResponse[];
|
|
@@ -1445,6 +1496,21 @@ export interface IIsValidDataForThirdPartyAPI extends IThirdPartyAPIIdentity {
|
|
|
1445
1496
|
isArray?: boolean;
|
|
1446
1497
|
}
|
|
1447
1498
|
|
|
1499
|
+
export interface IIsValidConnectionString {
|
|
1500
|
+
connectionString: string;
|
|
1501
|
+
instanceType: EInstanceType;
|
|
1502
|
+
|
|
1503
|
+
// Oracle database fields.
|
|
1504
|
+
oracleDBUsername?: string;
|
|
1505
|
+
oracleDBPassword?: string;
|
|
1506
|
+
oracleDBPrivilege?: string;
|
|
1507
|
+
}
|
|
1508
|
+
|
|
1509
|
+
export interface IMultiTenantInstanceUpdated {
|
|
1510
|
+
instanceName: string;
|
|
1511
|
+
username: string;
|
|
1512
|
+
}
|
|
1513
|
+
|
|
1448
1514
|
export enum EWSEventType {
|
|
1449
1515
|
INSTANCES = 'INSTANCES',
|
|
1450
1516
|
THIRD_PARTY_APIS = 'THIRD_PARTY_APIS',
|
|
@@ -1527,6 +1593,7 @@ export interface IWSRegisterOnEvent {
|
|
|
1527
1593
|
// calculated field. // user will not provide it.
|
|
1528
1594
|
eventData?: any;
|
|
1529
1595
|
apiPath: string; // user will not send it. We will set it from api user token. and user hit that get token system api to get token of specific admin.
|
|
1596
|
+
tenantUsername?: string;
|
|
1530
1597
|
}
|
|
1531
1598
|
|
|
1532
1599
|
export type IWSRegisterOnEvent_P = Partial<IWSRegisterOnEvent>;
|
|
@@ -1725,6 +1792,9 @@ export enum EDBMasterDataImport {
|
|
|
1725
1792
|
export interface IDBMasterConfig {
|
|
1726
1793
|
theme?: EDBMasterTheme;
|
|
1727
1794
|
|
|
1795
|
+
// Multi tenant architecture related fields
|
|
1796
|
+
tenantUsername?: string;
|
|
1797
|
+
|
|
1728
1798
|
/**
|
|
1729
1799
|
* Used in many places. Use in add form will look like ex: Add ${screenName}.<br/>
|
|
1730
1800
|
* You can provide value like 'Person' | 'Contact Details'. <br/>
|
|
@@ -4322,6 +4392,9 @@ export enum EDBMasterConfigAppendTo {
|
|
|
4322
4392
|
beforeEditModalOpen = 'beforeEditModalOpen',
|
|
4323
4393
|
beforeViewModalOpen = 'beforeViewModalOpen',
|
|
4324
4394
|
columnSelectionChanged = 'columnSelectionChanged',
|
|
4395
|
+
|
|
4396
|
+
/** this code will be executed just before making CSV file from data. (gridData will have CSV data) */
|
|
4397
|
+
processDataBeforeExport = 'processDataBeforeExport',
|
|
4325
4398
|
}
|
|
4326
4399
|
|
|
4327
4400
|
// genericConfig : start
|
|
@@ -4389,6 +4462,8 @@ export enum IDBMasterEventFromIframeToParent {
|
|
|
4389
4462
|
CLOSE_BUTTON_CLICKED = 'CLOSE_BUTTON_CLICKED',
|
|
4390
4463
|
CUSTOM_ACTION_BUTTON_CLICKED = 'CUSTOM_ACTION_BUTTON_CLICKED',
|
|
4391
4464
|
DROPDOWN_ADD_NEW_RECORD_SAVED = 'DROPDOWN_ADD_NEW_RECORD_SAVED',
|
|
4465
|
+
DOUBLE_CLICK_GRID_EVENT = 'DOUBLE_CLICK_GRID_EVENT',
|
|
4466
|
+
CLICK_GRID_EVENT = 'CLICK_GRID_EVENT',
|
|
4392
4467
|
}
|
|
4393
4468
|
|
|
4394
4469
|
/**
|
|
@@ -4521,6 +4596,13 @@ export interface IDBMasterUIPageUtilsScope {
|
|
|
4521
4596
|
event: any | null;
|
|
4522
4597
|
config: IDBMasterConfig | null;
|
|
4523
4598
|
column: IDBMasterConfigFormField | null;
|
|
4599
|
+
|
|
4600
|
+
/**
|
|
4601
|
+
* It will be the object of parentFormData & grandParentFormData.<br/>
|
|
4602
|
+
* If you make change in any value, it will be changed automatically in their respective UI.<br/>
|
|
4603
|
+
* You can use it for validation purpose also.
|
|
4604
|
+
* */
|
|
4605
|
+
parentFormData: any | null;
|
|
4524
4606
|
formData: any | null;
|
|
4525
4607
|
allDropdownDataMap: { [path: string]: any[] } | null;
|
|
4526
4608
|
reqBody: any | null;
|
|
@@ -27,5 +27,5 @@
|
|
|
27
27
|
</style><link rel="stylesheet" href="styles-6NG3EUMP.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-6NG3EUMP.css"></noscript><link rel="modulepreload" href="chunk-MON7YFGF.js"></head>
|
|
28
28
|
<body>
|
|
29
29
|
<app-root></app-root>
|
|
30
|
-
<script src="polyfills-6EAL64PA.js" type="module"></script><script src="main-
|
|
30
|
+
<script src="polyfills-6EAL64PA.js" type="module"></script><script src="main-LWHKTSAI.js" type="module"></script></body>
|
|
31
31
|
</html>
|