@lenne.tech/ng-base 14.21.3 → 14.22.0
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/base-components/components/upload-image/upload-image.component.d.ts +2 -1
- package/esm2020/base-cms/base-cms-routing.module.mjs +5 -5
- package/esm2020/base-cms/base-cms.module.mjs +5 -5
- package/esm2020/base-cms/pages/base-cms/base-cms.component.mjs +4 -4
- package/esm2020/base-components/base-components.module.mjs +5 -5
- package/esm2020/base-components/components/breadcrumb/breadcrumb.component.mjs +4 -4
- package/esm2020/base-components/components/change-password/change-password.component.mjs +4 -4
- package/esm2020/base-components/components/checkbox/checkbox.component.mjs +4 -4
- package/esm2020/base-components/components/delete-account/delete-account.component.mjs +4 -4
- package/esm2020/base-components/components/fab-button/fab-button.component.mjs +4 -4
- package/esm2020/base-components/components/input/input.component.mjs +4 -4
- package/esm2020/base-components/components/loading-bar/loading-bar.component.mjs +4 -4
- package/esm2020/base-components/components/model-form/model-form.component.mjs +24 -19
- package/esm2020/base-components/components/model-form-sub/model-form-sub.component.mjs +5 -5
- package/esm2020/base-components/components/model-table/model-table.component.mjs +4 -4
- package/esm2020/base-components/components/refence-input/refence-input.component.mjs +4 -4
- package/esm2020/base-components/components/select/select.component.mjs +4 -4
- package/esm2020/base-components/components/skeleton-loader/skeleton-loader.component.mjs +4 -4
- package/esm2020/base-components/components/tags/tags.component.mjs +4 -4
- package/esm2020/base-components/components/textarea/textarea.component.mjs +4 -4
- package/esm2020/base-components/components/toast/toast.component.mjs +4 -4
- package/esm2020/base-components/components/upload-image/upload-image.component.mjs +19 -9
- package/esm2020/base-components/directives/back-button.directive.mjs +4 -4
- package/esm2020/base-components/directives/context-menu.directive.mjs +4 -4
- package/esm2020/base-components/directives/sort.directive.mjs +4 -4
- package/esm2020/base-components/directives/stop-propagation.directive.mjs +4 -4
- package/esm2020/base-components/pipes/ellipses.pipe.mjs +4 -4
- package/esm2020/base-prototype/base-prototype.module.mjs +5 -5
- package/esm2020/base-prototype/pages/email-verification/email-verification.component.mjs +4 -4
- package/esm2020/base-prototype/pages/forgot-password/forgot-password.component.mjs +4 -4
- package/esm2020/base-prototype/pages/login/login.component.mjs +5 -5
- package/esm2020/base-prototype/pages/profile/profile.component.mjs +4 -4
- package/esm2020/base-prototype/pages/register/register.component.mjs +4 -4
- package/esm2020/base-prototype/pages/set-password/set-password.component.mjs +4 -4
- package/esm2020/shared/classes/graphql-meta.class.mjs +24 -1
- package/esm2020/shared/classes/helper.class.mjs +4 -4
- package/esm2020/shared/interfaces/cms-field-config.interface.mjs +1 -1
- package/esm2020/shared/services/auth.service.mjs +4 -4
- package/esm2020/shared/services/breadcrumb.service.mjs +4 -4
- package/esm2020/shared/services/cms.service.mjs +4 -4
- package/esm2020/shared/services/file.service.mjs +18 -22
- package/esm2020/shared/services/forms.service.mjs +4 -4
- package/esm2020/shared/services/graphql-meta.service.mjs +4 -4
- package/esm2020/shared/services/graphql-plus.service.mjs +4 -4
- package/esm2020/shared/services/graphql.service.mjs +89 -27
- package/esm2020/shared/services/image.service.mjs +4 -4
- package/esm2020/shared/services/loader.service.mjs +4 -4
- package/esm2020/shared/services/navigation.service.mjs +4 -4
- package/esm2020/shared/services/scroll.service.mjs +4 -4
- package/esm2020/shared/services/storage.service.mjs +4 -4
- package/esm2020/shared/services/toast.service.mjs +4 -4
- package/esm2020/shared/services/user.service.mjs +4 -4
- package/esm2020/shared/services/ws.service.mjs +4 -4
- package/esm2020/src/base.module.mjs +5 -5
- package/esm2020/src/directives/lazy-load.directive.mjs +4 -4
- package/esm2020/src/directives/match-height.directive.mjs +4 -4
- package/esm2020/src/directives/resizable.directive.mjs +4 -4
- package/esm2020/src/factories/apollo-options.factory.mjs +3 -1
- package/esm2020/src/functions/extract-files.function.mjs +84 -0
- package/esm2020/src/guards/auth.guard.mjs +4 -4
- package/esm2020/src/guards/can-deactivate.guard.mjs +4 -4
- package/esm2020/src/guards/logout.guard.mjs +4 -4
- package/esm2020/src/pipes/date-ago.pipe.mjs +4 -4
- package/esm2020/src/pipes/safe-html.pipe.mjs +4 -4
- package/esm2020/src/services/fullscreen.service.mjs +4 -4
- package/esm2020/src/services/seo.service.mjs +4 -4
- package/esm2020/src/services/theme.service.mjs +4 -4
- package/fesm2015/lenne.tech-ng-base-base-cms.mjs +11 -11
- package/fesm2015/lenne.tech-ng-base-base-cms.mjs.map +1 -1
- package/fesm2015/lenne.tech-ng-base-base-components.mjs +112 -97
- package/fesm2015/lenne.tech-ng-base-base-components.mjs.map +1 -1
- package/fesm2015/lenne.tech-ng-base-base-prototype.mjs +23 -23
- package/fesm2015/lenne.tech-ng-base-base-prototype.mjs.map +1 -1
- package/fesm2015/lenne.tech-ng-base-shared.mjs +161 -82
- package/fesm2015/lenne.tech-ng-base-shared.mjs.map +1 -1
- package/fesm2015/lenne.tech-ng-base.mjs +122 -37
- package/fesm2015/lenne.tech-ng-base.mjs.map +1 -1
- package/fesm2020/lenne.tech-ng-base-base-cms.mjs +11 -11
- package/fesm2020/lenne.tech-ng-base-base-cms.mjs.map +1 -1
- package/fesm2020/lenne.tech-ng-base-base-components.mjs +106 -91
- package/fesm2020/lenne.tech-ng-base-base-components.mjs.map +1 -1
- package/fesm2020/lenne.tech-ng-base-base-prototype.mjs +23 -23
- package/fesm2020/lenne.tech-ng-base-base-prototype.mjs.map +1 -1
- package/fesm2020/lenne.tech-ng-base-shared.mjs +172 -92
- package/fesm2020/lenne.tech-ng-base-shared.mjs.map +1 -1
- package/fesm2020/lenne.tech-ng-base.mjs +122 -37
- package/fesm2020/lenne.tech-ng-base.mjs.map +1 -1
- package/package.json +4 -4
- package/shared/classes/graphql-meta.class.d.ts +8 -0
- package/shared/classes/helper.class.d.ts +2 -2
- package/shared/interfaces/cms-field-config.interface.d.ts +1 -0
- package/shared/services/graphql.service.d.ts +14 -1
- package/src/functions/extract-files.function.d.ts +15 -0
|
@@ -171,11 +171,11 @@ class Helper {
|
|
|
171
171
|
return Object.freeze(object);
|
|
172
172
|
}
|
|
173
173
|
/**
|
|
174
|
-
* Generates an unique identifier with
|
|
174
|
+
* Generates an unique identifier with a specific length
|
|
175
175
|
*/
|
|
176
|
-
static getUID() {
|
|
176
|
+
static getUID(length = 24) {
|
|
177
177
|
let dt = new Date().getTime();
|
|
178
|
-
const uuid = '
|
|
178
|
+
const uuid = 'x'.repeat(length).replace(/[xy]/g, (c) => {
|
|
179
179
|
// eslint-disable-next-line no-bitwise
|
|
180
180
|
const r = (dt + Math.random() * 16) % 16 | 0;
|
|
181
181
|
dt = Math.floor(dt / 16);
|
|
@@ -450,6 +450,29 @@ class GraphQLMeta {
|
|
|
450
450
|
throw Error('Missing schema');
|
|
451
451
|
}
|
|
452
452
|
}
|
|
453
|
+
/**
|
|
454
|
+
* Get an object with GraphQLRequestType (operation type) as keys and method (fields) names as value
|
|
455
|
+
*/
|
|
456
|
+
getMethodNames() {
|
|
457
|
+
return {
|
|
458
|
+
query: Object.keys(this.schema.getQueryType()?.getFields() || {}),
|
|
459
|
+
mutation: Object.keys(this.schema.getMutationType()?.getFields() || {}),
|
|
460
|
+
subscription: Object.keys(this.schema.getSubscriptionType()?.getFields() || {}),
|
|
461
|
+
};
|
|
462
|
+
}
|
|
463
|
+
/**
|
|
464
|
+
* Get GraphQLRequestTypes (operation types) via method (field) name
|
|
465
|
+
*/
|
|
466
|
+
getRequestTypesViaMethod(methodName) {
|
|
467
|
+
const result = [];
|
|
468
|
+
const methodNames = this.getMethodNames();
|
|
469
|
+
for (const [key, value] of Object.entries(methodNames)) {
|
|
470
|
+
if (value.includes(methodName)) {
|
|
471
|
+
result.push(key);
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
return result;
|
|
475
|
+
}
|
|
453
476
|
/**
|
|
454
477
|
* We're going to get the query and mutation types from the schema, then we're going to loop through the fields of each
|
|
455
478
|
* type and check if the field name starts with `find`, `create`, `update`, or `delete`. If it does, we're going to add
|
|
@@ -944,9 +967,9 @@ class StorageService {
|
|
|
944
967
|
this.storage.clear();
|
|
945
968
|
}
|
|
946
969
|
}
|
|
947
|
-
StorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
948
|
-
StorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
949
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
970
|
+
StorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: StorageService, deps: [{ token: BASE_MODULE_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
971
|
+
StorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: StorageService, providedIn: 'root' });
|
|
972
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: StorageService, decorators: [{
|
|
950
973
|
type: Injectable,
|
|
951
974
|
args: [{
|
|
952
975
|
providedIn: 'root',
|
|
@@ -961,9 +984,9 @@ class WsService {
|
|
|
961
984
|
this.client?.restart();
|
|
962
985
|
}
|
|
963
986
|
}
|
|
964
|
-
WsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
965
|
-
WsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
966
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
987
|
+
WsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
988
|
+
WsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WsService, providedIn: 'root' });
|
|
989
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: WsService, decorators: [{
|
|
967
990
|
type: Injectable,
|
|
968
991
|
args: [{
|
|
969
992
|
providedIn: 'root',
|
|
@@ -1029,9 +1052,9 @@ class AuthService {
|
|
|
1029
1052
|
return this._token.asObservable();
|
|
1030
1053
|
}
|
|
1031
1054
|
}
|
|
1032
|
-
AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
1033
|
-
AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
1034
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
1055
|
+
AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: AuthService, deps: [{ token: BASE_MODULE_CONFIG }, { token: StorageService }, { token: WsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1056
|
+
AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: AuthService, providedIn: 'root' });
|
|
1057
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: AuthService, decorators: [{
|
|
1035
1058
|
type: Injectable,
|
|
1036
1059
|
args: [{
|
|
1037
1060
|
providedIn: 'root',
|
|
@@ -1156,9 +1179,9 @@ class GraphQLMetaService {
|
|
|
1156
1179
|
return observable;
|
|
1157
1180
|
}
|
|
1158
1181
|
}
|
|
1159
|
-
GraphQLMetaService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
1160
|
-
GraphQLMetaService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
1161
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
1182
|
+
GraphQLMetaService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLMetaService, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1183
|
+
GraphQLMetaService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLMetaService, providedIn: 'root' });
|
|
1184
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLMetaService, decorators: [{
|
|
1162
1185
|
type: Injectable,
|
|
1163
1186
|
args: [{
|
|
1164
1187
|
providedIn: 'root',
|
|
@@ -1179,10 +1202,10 @@ class GraphQLService {
|
|
|
1179
1202
|
/**
|
|
1180
1203
|
* GraphQL request
|
|
1181
1204
|
*/
|
|
1182
|
-
graphQl(
|
|
1183
|
-
// Check
|
|
1184
|
-
if (!
|
|
1185
|
-
throwError('Missing graphql
|
|
1205
|
+
graphQl(graphqlMethodName, options = {}) {
|
|
1206
|
+
// Check parameters
|
|
1207
|
+
if (!graphqlMethodName) {
|
|
1208
|
+
throwError(() => new Error('Missing graphql method name'));
|
|
1186
1209
|
}
|
|
1187
1210
|
// Get config
|
|
1188
1211
|
const config = {
|
|
@@ -1190,7 +1213,6 @@ class GraphQLService {
|
|
|
1190
1213
|
fields: null,
|
|
1191
1214
|
log: false,
|
|
1192
1215
|
model: null,
|
|
1193
|
-
type: GraphQLRequestType.QUERY,
|
|
1194
1216
|
...options,
|
|
1195
1217
|
};
|
|
1196
1218
|
// Convert class to Object for arguments
|
|
@@ -1209,6 +1231,21 @@ class GraphQLService {
|
|
|
1209
1231
|
return new Observable((subscriber) => {
|
|
1210
1232
|
// Get meta
|
|
1211
1233
|
this.graphQLMetaService.getMeta({ log: config.log }).subscribe((meta) => {
|
|
1234
|
+
// Set GraphQLRequestType automatically
|
|
1235
|
+
if (!config.type) {
|
|
1236
|
+
const types = meta.getRequestTypesViaMethod(graphqlMethodName);
|
|
1237
|
+
if (!types?.length) {
|
|
1238
|
+
throwError(() => new Error('No GraphQLRequestType detected'));
|
|
1239
|
+
}
|
|
1240
|
+
config.type = types[0];
|
|
1241
|
+
if (config.type) {
|
|
1242
|
+
throwError(() => new Error('No GraphQLRequestType detected'));
|
|
1243
|
+
}
|
|
1244
|
+
if (types.length > 1) {
|
|
1245
|
+
// eslint-disable-next-line no-console
|
|
1246
|
+
console.debug('GraphQLRequestType ' + config.type + ' used for ' + graphqlMethodName, types);
|
|
1247
|
+
}
|
|
1248
|
+
}
|
|
1212
1249
|
// Prepare fields
|
|
1213
1250
|
let fields;
|
|
1214
1251
|
let allowedFields;
|
|
@@ -1217,7 +1254,7 @@ class GraphQLService {
|
|
|
1217
1254
|
console.log({ meta });
|
|
1218
1255
|
}
|
|
1219
1256
|
if (config.fields) {
|
|
1220
|
-
allowedFields = meta.getFields(
|
|
1257
|
+
allowedFields = meta.getFields(graphqlMethodName, { type: config.type });
|
|
1221
1258
|
// Log meta
|
|
1222
1259
|
if (config.log) {
|
|
1223
1260
|
console.log({ allowedFields });
|
|
@@ -1235,7 +1272,7 @@ class GraphQLService {
|
|
|
1235
1272
|
console.log({ fields });
|
|
1236
1273
|
}
|
|
1237
1274
|
// Get allowed args
|
|
1238
|
-
const allowedArgs = meta.getArgs(
|
|
1275
|
+
const allowedArgs = meta.getArgs(graphqlMethodName, { type: config.type });
|
|
1239
1276
|
// Log allowed args
|
|
1240
1277
|
if (config.log) {
|
|
1241
1278
|
console.log({ allowedArgs });
|
|
@@ -1259,17 +1296,43 @@ class GraphQLService {
|
|
|
1259
1296
|
}
|
|
1260
1297
|
// Log
|
|
1261
1298
|
if (config.log) {
|
|
1262
|
-
console.log({ graphQL:
|
|
1299
|
+
console.log({ graphQL: graphqlMethodName, args, fields, type: config.type });
|
|
1263
1300
|
}
|
|
1264
1301
|
// Prepare request
|
|
1265
|
-
const
|
|
1266
|
-
|
|
1267
|
-
|
|
1302
|
+
const request = {};
|
|
1303
|
+
// Prepare GraphQL
|
|
1304
|
+
const gQlFuncBody = fields
|
|
1305
|
+
? ' {\n' + graphqlMethodName + args + fields + '\n}'
|
|
1306
|
+
: ' {\n' + graphqlMethodName + args + '\n}';
|
|
1307
|
+
let gQlBody = config.type + gQlFuncBody;
|
|
1308
|
+
// Handling for variables (e.g. for file uploads)
|
|
1309
|
+
if (Object.keys(argsData.variables).length) {
|
|
1310
|
+
// Preparations
|
|
1311
|
+
request.variables = {};
|
|
1312
|
+
let multipart = false;
|
|
1313
|
+
// Add surrounding
|
|
1314
|
+
gQlBody = config.type + ' Request(';
|
|
1315
|
+
for (const [key, item] of Object.entries(argsData.variables)) {
|
|
1316
|
+
gQlBody += '\n$' + key + ':' + item.type + ',';
|
|
1317
|
+
request.variables[key] = item.value;
|
|
1318
|
+
if (item.type.startsWith('Upload')) {
|
|
1319
|
+
multipart = true;
|
|
1320
|
+
}
|
|
1321
|
+
}
|
|
1322
|
+
gQlBody = gQlBody.slice(0, -1) + '\n)' + gQlFuncBody;
|
|
1323
|
+
// Set Multipart
|
|
1324
|
+
if (multipart) {
|
|
1325
|
+
request.context = {
|
|
1326
|
+
useMultipart: true,
|
|
1327
|
+
};
|
|
1328
|
+
}
|
|
1329
|
+
}
|
|
1330
|
+
const documentNode = gql(gQlBody);
|
|
1268
1331
|
// Log
|
|
1269
1332
|
if (config.log) {
|
|
1270
1333
|
console.log({ documentNode });
|
|
1271
1334
|
}
|
|
1272
|
-
|
|
1335
|
+
// Set document node
|
|
1273
1336
|
request[config.type] = documentNode;
|
|
1274
1337
|
// Log
|
|
1275
1338
|
if (config.log) {
|
|
@@ -1289,7 +1352,7 @@ class GraphQLService {
|
|
|
1289
1352
|
request[config.type] = documentNode;
|
|
1290
1353
|
}
|
|
1291
1354
|
this.apollo[func](request).subscribe((result) => {
|
|
1292
|
-
const data = result?.data?.[
|
|
1355
|
+
const data = result?.data?.[graphqlMethodName] !== undefined ? result.data[graphqlMethodName] : result;
|
|
1293
1356
|
// Direct data
|
|
1294
1357
|
if (!config.model) {
|
|
1295
1358
|
subscriber.next(data);
|
|
@@ -1341,17 +1404,19 @@ class GraphQLService {
|
|
|
1341
1404
|
*/
|
|
1342
1405
|
prepareArguments(args, options = {}) {
|
|
1343
1406
|
// Init config variables
|
|
1344
|
-
const { allowed, level, parent, schemaArgs, usedArgs } = {
|
|
1407
|
+
const { allowed, levelKey, level, parent, schemaArgs, usedArgs, variables } = {
|
|
1345
1408
|
allowed: null,
|
|
1409
|
+
levelKey: '',
|
|
1346
1410
|
level: 1,
|
|
1347
1411
|
parent: '',
|
|
1348
1412
|
schemaArgs: [],
|
|
1349
1413
|
usedArgs: [],
|
|
1414
|
+
variables: {},
|
|
1350
1415
|
...options,
|
|
1351
1416
|
};
|
|
1352
1417
|
// Check args
|
|
1353
1418
|
if (args === undefined || args === null) {
|
|
1354
|
-
return { argsString: '', schemaArgs, usedArgs };
|
|
1419
|
+
return { argsString: '', schemaArgs, usedArgs, variables };
|
|
1355
1420
|
}
|
|
1356
1421
|
// Init args
|
|
1357
1422
|
const result = [];
|
|
@@ -1369,29 +1434,37 @@ class GraphQLService {
|
|
|
1369
1434
|
// Process value
|
|
1370
1435
|
result.push(this.prepareArguments(item, {
|
|
1371
1436
|
allowed: key ? allowed.fields[key] : null,
|
|
1437
|
+
levelKey: key,
|
|
1372
1438
|
level: level + 1,
|
|
1373
1439
|
parent: parent + key + '.',
|
|
1374
1440
|
schemaArgs,
|
|
1375
1441
|
usedArgs,
|
|
1442
|
+
variables,
|
|
1376
1443
|
}).argsString);
|
|
1377
1444
|
}
|
|
1378
1445
|
// Encapsulation of the array result
|
|
1379
1446
|
if (result.length) {
|
|
1380
1447
|
// Complete result, encapsulated via round brackets
|
|
1381
1448
|
if (level === 1) {
|
|
1382
|
-
return { argsString: '(' + result.join(', ') + ')', schemaArgs, usedArgs };
|
|
1449
|
+
return { argsString: '(' + result.join(', ') + ')', schemaArgs, usedArgs, variables };
|
|
1383
1450
|
}
|
|
1384
1451
|
// Deeper result part, encapsulated via square brackets
|
|
1385
1452
|
else {
|
|
1386
|
-
return { argsString: '[' + result.join(', ') + ']', schemaArgs, usedArgs };
|
|
1453
|
+
return { argsString: '[' + result.join(', ') + ']', schemaArgs, usedArgs, variables };
|
|
1387
1454
|
}
|
|
1388
1455
|
}
|
|
1389
1456
|
}
|
|
1390
1457
|
// Process object
|
|
1391
1458
|
else if (typeof args === 'object') {
|
|
1459
|
+
// Check for Upload type for variable handling
|
|
1460
|
+
if (allowed?.type === 'Upload') {
|
|
1461
|
+
const name = levelKey + '_' + Helper.getUID(6);
|
|
1462
|
+
variables[name] = { type: allowed.type + (allowed.isRequired ? '!' : ''), value: args };
|
|
1463
|
+
return { argsString: '$' + name, schemaArgs, usedArgs, variables };
|
|
1464
|
+
}
|
|
1392
1465
|
// Check object is empty
|
|
1393
1466
|
if (args && Object.keys(args).length === 0 && Object.getPrototypeOf(args) === Object.prototype) {
|
|
1394
|
-
return { argsString: '{}', schemaArgs, usedArgs };
|
|
1467
|
+
return { argsString: '{}', schemaArgs, usedArgs, variables };
|
|
1395
1468
|
}
|
|
1396
1469
|
// Process all object entries
|
|
1397
1470
|
for (const [key, value] of Object.entries(args)) {
|
|
@@ -1429,10 +1502,12 @@ class GraphQLService {
|
|
|
1429
1502
|
': [' +
|
|
1430
1503
|
value.map((item) => this.prepareArguments(item, {
|
|
1431
1504
|
allowed: allowed.fields[key],
|
|
1505
|
+
levelKey: key,
|
|
1432
1506
|
level: level + 1,
|
|
1433
1507
|
parent: currentKey + '.',
|
|
1434
1508
|
schemaArgs,
|
|
1435
1509
|
usedArgs,
|
|
1510
|
+
variables,
|
|
1436
1511
|
}).argsString) +
|
|
1437
1512
|
']');
|
|
1438
1513
|
continue;
|
|
@@ -1460,13 +1535,22 @@ class GraphQLService {
|
|
|
1460
1535
|
}
|
|
1461
1536
|
// Others
|
|
1462
1537
|
else {
|
|
1463
|
-
|
|
1538
|
+
const prepareOptions = {
|
|
1464
1539
|
allowed: allowed.fields[key],
|
|
1540
|
+
levelKey: key,
|
|
1465
1541
|
level: level + 1,
|
|
1466
1542
|
parent: currentKey + '.',
|
|
1467
1543
|
schemaArgs,
|
|
1468
1544
|
usedArgs,
|
|
1469
|
-
|
|
1545
|
+
variables,
|
|
1546
|
+
};
|
|
1547
|
+
try {
|
|
1548
|
+
additionalResult += this.prepareArguments(value, prepareOptions).argsString;
|
|
1549
|
+
}
|
|
1550
|
+
catch (e) {
|
|
1551
|
+
console.error('Error during preparing arguments', value, prepareOptions);
|
|
1552
|
+
throw e;
|
|
1553
|
+
}
|
|
1470
1554
|
}
|
|
1471
1555
|
// Push deeper part into result array
|
|
1472
1556
|
result.push(additionalResult);
|
|
@@ -1475,17 +1559,17 @@ class GraphQLService {
|
|
|
1475
1559
|
if (result.length) {
|
|
1476
1560
|
// Complete result, encapsulated via round brackets
|
|
1477
1561
|
if (level === 1) {
|
|
1478
|
-
return { argsString: '(' + result.join(', ') + ')', schemaArgs, usedArgs };
|
|
1562
|
+
return { argsString: '(' + result.join(', ') + ')', schemaArgs, usedArgs, variables };
|
|
1479
1563
|
}
|
|
1480
1564
|
// Deeper result part, encapsulated via curly brackets
|
|
1481
1565
|
else {
|
|
1482
|
-
return { argsString: '{' + result.join(', ') + '}', schemaArgs, usedArgs };
|
|
1566
|
+
return { argsString: '{' + result.join(', ') + '}', schemaArgs, usedArgs, variables };
|
|
1483
1567
|
}
|
|
1484
1568
|
}
|
|
1485
1569
|
}
|
|
1486
1570
|
// Prepare and process other / unknown values as JSON
|
|
1487
1571
|
else {
|
|
1488
|
-
return { argsString: JSON.stringify(args), schemaArgs, usedArgs };
|
|
1572
|
+
return { argsString: JSON.stringify(args), schemaArgs, usedArgs, variables };
|
|
1489
1573
|
}
|
|
1490
1574
|
}
|
|
1491
1575
|
/**
|
|
@@ -1587,9 +1671,9 @@ class GraphQLService {
|
|
|
1587
1671
|
return { fieldsString, schemaFields, usedFields };
|
|
1588
1672
|
}
|
|
1589
1673
|
}
|
|
1590
|
-
GraphQLService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
1591
|
-
GraphQLService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
1592
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
1674
|
+
GraphQLService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLService, deps: [{ token: i1.Apollo }, { token: GraphQLMetaService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1675
|
+
GraphQLService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLService, providedIn: 'root' });
|
|
1676
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLService, decorators: [{
|
|
1593
1677
|
type: Injectable,
|
|
1594
1678
|
args: [{
|
|
1595
1679
|
providedIn: 'root',
|
|
@@ -1663,9 +1747,9 @@ class LoaderService {
|
|
|
1663
1747
|
});
|
|
1664
1748
|
}
|
|
1665
1749
|
}
|
|
1666
|
-
LoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
1667
|
-
LoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
1668
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
1750
|
+
LoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: LoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1751
|
+
LoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: LoaderService, providedIn: 'root' });
|
|
1752
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: LoaderService, decorators: [{
|
|
1669
1753
|
type: Injectable,
|
|
1670
1754
|
args: [{
|
|
1671
1755
|
providedIn: 'root',
|
|
@@ -1739,9 +1823,9 @@ class GraphQLPlusService extends GraphQLService {
|
|
|
1739
1823
|
console.error(error);
|
|
1740
1824
|
}
|
|
1741
1825
|
}
|
|
1742
|
-
GraphQLPlusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
1743
|
-
GraphQLPlusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
1744
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
1826
|
+
GraphQLPlusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLPlusService, deps: [{ token: i1.Apollo }, { token: GraphQLMetaService }, { token: LoaderService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1827
|
+
GraphQLPlusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLPlusService, providedIn: 'root' });
|
|
1828
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: GraphQLPlusService, decorators: [{
|
|
1745
1829
|
type: Injectable,
|
|
1746
1830
|
args: [{
|
|
1747
1831
|
providedIn: 'root',
|
|
@@ -1838,9 +1922,9 @@ class ImageService {
|
|
|
1838
1922
|
});
|
|
1839
1923
|
}
|
|
1840
1924
|
}
|
|
1841
|
-
ImageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
1842
|
-
ImageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
1843
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
1925
|
+
ImageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ImageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1926
|
+
ImageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ImageService, providedIn: 'root' });
|
|
1927
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ImageService, decorators: [{
|
|
1844
1928
|
type: Injectable,
|
|
1845
1929
|
args: [{
|
|
1846
1930
|
providedIn: 'root',
|
|
@@ -2009,9 +2093,9 @@ class ScrollService {
|
|
|
2009
2093
|
return this.scrollPromise;
|
|
2010
2094
|
}
|
|
2011
2095
|
}
|
|
2012
|
-
ScrollService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
2013
|
-
ScrollService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
2014
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
2096
|
+
ScrollService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ScrollService, deps: [{ token: i1$1.Router }, { token: BASE_MODULE_CONFIG }, { token: ImageService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2097
|
+
ScrollService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ScrollService, providedIn: 'root' });
|
|
2098
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ScrollService, decorators: [{
|
|
2015
2099
|
type: Injectable,
|
|
2016
2100
|
args: [{
|
|
2017
2101
|
providedIn: 'root',
|
|
@@ -2063,9 +2147,9 @@ class FormsService {
|
|
|
2063
2147
|
this.scrollService.scrollTo(invalidForm);
|
|
2064
2148
|
}
|
|
2065
2149
|
}
|
|
2066
|
-
FormsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
2067
|
-
FormsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
2068
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
2150
|
+
FormsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: FormsService, deps: [{ token: DOCUMENT }, { token: ScrollService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2151
|
+
FormsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: FormsService, providedIn: 'root' });
|
|
2152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: FormsService, decorators: [{
|
|
2069
2153
|
type: Injectable,
|
|
2070
2154
|
args: [{
|
|
2071
2155
|
providedIn: 'root',
|
|
@@ -2203,9 +2287,9 @@ class UserService extends GraphQLPlusService {
|
|
|
2203
2287
|
});
|
|
2204
2288
|
}
|
|
2205
2289
|
}
|
|
2206
|
-
UserService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
2207
|
-
UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
2208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
2290
|
+
UserService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: UserService, deps: [{ token: i1.Apollo }, { token: GraphQLMetaService }, { token: LoaderService }, { token: AuthService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2291
|
+
UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: UserService, providedIn: 'root' });
|
|
2292
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: UserService, decorators: [{
|
|
2209
2293
|
type: Injectable,
|
|
2210
2294
|
args: [{
|
|
2211
2295
|
providedIn: 'root',
|
|
@@ -2241,9 +2325,9 @@ class ToastService {
|
|
|
2241
2325
|
}
|
|
2242
2326
|
}
|
|
2243
2327
|
}
|
|
2244
|
-
ToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
2245
|
-
ToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
2246
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
2328
|
+
ToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ToastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2329
|
+
ToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ToastService, providedIn: 'root' });
|
|
2330
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ToastService, decorators: [{
|
|
2247
2331
|
type: Injectable,
|
|
2248
2332
|
args: [{
|
|
2249
2333
|
providedIn: 'root',
|
|
@@ -2304,9 +2388,9 @@ class BreadcrumbService {
|
|
|
2304
2388
|
return typeof data.breadcrumb === 'function' ? data.breadcrumb(data) : data.breadcrumb;
|
|
2305
2389
|
}
|
|
2306
2390
|
}
|
|
2307
|
-
BreadcrumbService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
2308
|
-
BreadcrumbService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
2309
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
2391
|
+
BreadcrumbService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BreadcrumbService, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2392
|
+
BreadcrumbService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BreadcrumbService, providedIn: 'root' });
|
|
2393
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BreadcrumbService, decorators: [{
|
|
2310
2394
|
type: Injectable,
|
|
2311
2395
|
args: [{
|
|
2312
2396
|
providedIn: 'root',
|
|
@@ -2337,9 +2421,9 @@ class NavigationService {
|
|
|
2337
2421
|
}
|
|
2338
2422
|
}
|
|
2339
2423
|
}
|
|
2340
|
-
NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
2341
|
-
NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
2342
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
2424
|
+
NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NavigationService, deps: [{ token: i1$1.Router }, { token: i2.Location }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2425
|
+
NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NavigationService, providedIn: 'root' });
|
|
2426
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NavigationService, decorators: [{
|
|
2343
2427
|
type: Injectable,
|
|
2344
2428
|
args: [{ providedIn: 'root' }]
|
|
2345
2429
|
}], ctorParameters: function () { return [{ type: i1$1.Router }, { type: i2.Location }]; } });
|
|
@@ -2412,9 +2496,9 @@ class CmsService {
|
|
|
2412
2496
|
return value.charAt(0).toLowerCase() + value.slice(1);
|
|
2413
2497
|
}
|
|
2414
2498
|
}
|
|
2415
|
-
CmsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
2416
|
-
CmsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
2417
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
2499
|
+
CmsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CmsService, deps: [{ token: GraphQLService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2500
|
+
CmsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CmsService, providedIn: 'root' });
|
|
2501
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CmsService, decorators: [{
|
|
2418
2502
|
type: Injectable,
|
|
2419
2503
|
args: [{
|
|
2420
2504
|
providedIn: 'root',
|
|
@@ -2431,29 +2515,25 @@ class FileService {
|
|
|
2431
2515
|
*/
|
|
2432
2516
|
compress(file, options) {
|
|
2433
2517
|
const config = {
|
|
2434
|
-
|
|
2435
|
-
|
|
2436
|
-
checkOrientation: false,
|
|
2437
|
-
},
|
|
2518
|
+
quality: 0.6,
|
|
2519
|
+
checkOrientation: false,
|
|
2438
2520
|
...options,
|
|
2439
2521
|
};
|
|
2440
2522
|
return new Promise((resolve, reject) => {
|
|
2441
2523
|
new Compressor(file, {
|
|
2442
|
-
|
|
2443
|
-
|
|
2444
|
-
|
|
2445
|
-
|
|
2446
|
-
|
|
2447
|
-
|
|
2448
|
-
|
|
2449
|
-
|
|
2450
|
-
resolve(result);
|
|
2451
|
-
}
|
|
2452
|
-
},
|
|
2453
|
-
error(err) {
|
|
2454
|
-
reject(err.message);
|
|
2455
|
-
},
|
|
2524
|
+
success(result) {
|
|
2525
|
+
// Check if result is blob for convert to file
|
|
2526
|
+
if (result instanceof Blob) {
|
|
2527
|
+
resolve(new File([result], result.name));
|
|
2528
|
+
}
|
|
2529
|
+
else {
|
|
2530
|
+
resolve(result);
|
|
2531
|
+
}
|
|
2456
2532
|
},
|
|
2533
|
+
error(err) {
|
|
2534
|
+
reject(err.message);
|
|
2535
|
+
},
|
|
2536
|
+
...config,
|
|
2457
2537
|
});
|
|
2458
2538
|
});
|
|
2459
2539
|
}
|
|
@@ -2494,9 +2574,9 @@ class FileService {
|
|
|
2494
2574
|
});
|
|
2495
2575
|
}
|
|
2496
2576
|
}
|
|
2497
|
-
FileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
2498
|
-
FileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.
|
|
2499
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
2577
|
+
FileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: FileService, deps: [{ token: AuthService }, { token: i2$1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2578
|
+
FileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: FileService, providedIn: 'root' });
|
|
2579
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: FileService, decorators: [{
|
|
2500
2580
|
type: Injectable,
|
|
2501
2581
|
args: [{
|
|
2502
2582
|
providedIn: 'root',
|