@aristid/leav-types 0.0.7-2c820e6 → 0.0.7-2ca46028
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/apps/core/src/__tests__/e2e/api/joinLibraries/joinLibraries.test.d.ts +1 -0
- package/apps/core/src/__tests__/mockers/amqp.d.ts +1 -1
- package/apps/core/src/__tests__/mockers/logger.d.ts +4 -4
- package/apps/core/src/_types/dbProfiler.d.ts +20 -1
- package/apps/core/src/_types/forms.d.ts +4 -0
- package/apps/core/src/_types/value.d.ts +62 -3
- package/apps/core/src/app/application/applicationApp.d.ts +3 -7
- package/apps/core/src/app/auth/authApp.d.ts +7 -6
- package/apps/core/src/app/core/actionListApp.d.ts +2 -4
- package/apps/core/src/app/core/apiKeyApp/apiKeyApp.d.ts +2 -4
- package/apps/core/src/app/core/attributeApp/attributeApp.d.ts +2 -5
- package/apps/core/src/app/core/coreApp.d.ts +2 -4
- package/apps/core/src/app/core/exportApp.d.ts +2 -4
- package/apps/core/src/app/core/filesManagerApp.d.ts +3 -5
- package/apps/core/src/app/core/formApp/formApp.d.ts +6 -5
- package/apps/core/src/app/core/globalSettingsApp.d.ts +3 -6
- package/apps/core/src/app/core/importApp.d.ts +2 -4
- package/apps/core/src/app/core/libraryApp/libraryApp.d.ts +2 -5
- package/apps/core/src/app/core/logApp.d.ts +2 -4
- package/apps/core/src/app/core/permissionApp/permissionApp.d.ts +2 -4
- package/apps/core/src/app/core/pluginsApp.d.ts +2 -3
- package/apps/core/src/app/core/recordApp/recordApp.d.ts +2 -5
- package/apps/core/src/app/core/tasksManagerApp.d.ts +2 -3
- package/apps/core/src/app/core/treeApp/treeApp.d.ts +5 -6
- package/apps/core/src/app/core/userDataApp.d.ts +2 -4
- package/apps/core/src/app/core/valueApp.d.ts +2 -4
- package/apps/core/src/app/core/versionProfileApp/versionProfileApp.d.ts +2 -4
- package/apps/core/src/app/core/viewApp.d.ts +2 -4
- package/apps/core/src/app/endpoint/endpointApp.d.ts +3 -8
- package/apps/core/src/app/graphql/graphqlApp.d.ts +4 -0
- package/apps/core/src/domain/attribute/helpers/ifLibraryJoinLinkAttribute.d.ts +11 -0
- package/apps/core/src/domain/attribute/helpers/ifLibraryJoinLinkAttribute.spec.d.ts +1 -0
- package/apps/core/src/domain/attribute/helpers/index.d.ts +1 -0
- package/apps/core/src/domain/filesManager/helpers/handleFileSystemEvent/handleMoveEvent.d.ts +1 -1
- package/apps/core/src/domain/import/importDomain.d.ts +1 -1
- package/apps/core/src/domain/indexationManager/indexationManagerDomain.d.ts +1 -1
- package/apps/core/src/domain/permission/_types.d.ts +8 -0
- package/apps/core/src/domain/permission/recordPermissionDomain.d.ts +4 -1
- package/apps/core/src/domain/record/_types.d.ts +4 -3
- package/apps/core/src/domain/record/helpers/createRecord.d.ts +21 -0
- package/apps/core/src/domain/record/helpers/deleteRecord.d.ts +19 -0
- package/apps/core/src/domain/record/helpers/getAccessPermissionFilters.d.ts +1 -1
- package/apps/core/src/domain/record/helpers/index.d.ts +2 -0
- package/apps/core/src/domain/record/recordDomain.d.ts +16 -4
- package/apps/core/src/domain/value/helpers/prepareValue.d.ts +3 -3
- package/apps/core/src/domain/value/helpers/saveOneValue.d.ts +2 -2
- package/apps/core/src/domain/value/helpers/validateValue.d.ts +3 -3
- package/apps/core/src/domain/value/valueDomain.d.ts +10 -4
- package/apps/core/src/errors/LeavError.d.ts +6 -0
- package/apps/core/src/infra/attributeTypes/attributeAdvancedLinkRepo.d.ts +5 -2
- package/apps/core/src/infra/attributeTypes/attributeAdvancedRepo.d.ts +3 -1
- package/apps/core/src/infra/attributeTypes/attributeSimpleLinkRepo.d.ts +5 -2
- package/apps/core/src/infra/attributeTypes/attributeSimpleRepo.d.ts +3 -1
- package/apps/core/src/infra/attributeTypes/attributeTreeRepo.d.ts +3 -1
- package/apps/core/src/infra/attributeTypes/attributeTypesRepo.d.ts +27 -21
- package/apps/core/src/infra/db/migrations/011-moveSkeletonApptoAppStudio.d.ts +7 -0
- package/apps/core/src/infra/record/helpers/getSearchVariableName.d.ts +1 -1
- package/apps/core/src/infra/value/valueRepo.d.ts +3 -3
- package/apps/core/src/interface/server.d.ts +7 -0
- package/libs/utils/src/types/forms.d.ts +1 -0
- package/package.json +5 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
declare const _default: {
|
|
2
|
-
info: jest.Mock<any, any
|
|
3
|
-
warn: jest.Mock<any, any
|
|
4
|
-
error: jest.Mock<any, any
|
|
5
|
-
debug: jest.Mock<any, any
|
|
2
|
+
info: jest.Mock<any, any>;
|
|
3
|
+
warn: jest.Mock<any, any>;
|
|
4
|
+
error: jest.Mock<any, any>;
|
|
5
|
+
debug: jest.Mock<any, any>;
|
|
6
6
|
};
|
|
7
7
|
export default _default;
|
|
@@ -2,7 +2,26 @@ import { AqlQuery } from 'arangojs/aql';
|
|
|
2
2
|
export interface IDbProfilerQuery {
|
|
3
3
|
count: number;
|
|
4
4
|
query: string | AqlQuery;
|
|
5
|
-
callers:
|
|
5
|
+
callers: Record<string, {
|
|
6
|
+
/**
|
|
7
|
+
* Stacktrace of caller
|
|
8
|
+
*/
|
|
9
|
+
stack: string;
|
|
10
|
+
count: number;
|
|
11
|
+
/**
|
|
12
|
+
* Stats for each call for that query
|
|
13
|
+
*/
|
|
14
|
+
stats: Array<{
|
|
15
|
+
/**
|
|
16
|
+
* Arangodb query execution time in ms
|
|
17
|
+
*/
|
|
18
|
+
executionTimeMs: number | null;
|
|
19
|
+
/**
|
|
20
|
+
* Time spent in nodejs to process the query in ms
|
|
21
|
+
*/
|
|
22
|
+
nodejsTimeMs: number;
|
|
23
|
+
}>;
|
|
24
|
+
}>;
|
|
6
25
|
}
|
|
7
26
|
export interface IDbProfiler {
|
|
8
27
|
totalCount: number;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { IAttribute } from './attribute';
|
|
1
2
|
import { IKeyValue } from './shared';
|
|
2
3
|
import { IValue } from './value';
|
|
3
4
|
export interface IForm extends ICoreEntity {
|
|
@@ -54,3 +55,6 @@ export type IFormElementWithValuesAndChildren = IFormElementWithValues & {
|
|
|
54
55
|
export interface IFormFilterOptions extends ICoreEntityFilterOptions {
|
|
55
56
|
library?: string;
|
|
56
57
|
}
|
|
58
|
+
export interface IFormElementJoinLibraryContext {
|
|
59
|
+
mandatoryAttribute: IAttribute;
|
|
60
|
+
}
|
|
@@ -3,6 +3,7 @@ import { IDbEdge } from 'infra/db/_types';
|
|
|
3
3
|
import { IRecord } from './record';
|
|
4
4
|
import { ITreeNode, TreePaths } from './tree';
|
|
5
5
|
import { EMPTY_VALUE } from 'infra/value/valueRepo';
|
|
6
|
+
import { AttributeTypes } from './attribute';
|
|
6
7
|
export type IValueFromGql = Override<Omit<IValue, 'version'>, {
|
|
7
8
|
value: IValue['payload'];
|
|
8
9
|
metadata: Array<{
|
|
@@ -30,8 +31,12 @@ export interface IValueMetadata {
|
|
|
30
31
|
[fieldName: string]: IStandardValue | AnyPrimitive;
|
|
31
32
|
}
|
|
32
33
|
export type EmptyValue = typeof EMPTY_VALUE;
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
interface ICommonGenericSaveValue {
|
|
35
|
+
/**
|
|
36
|
+
* The id of the edge for advanced, advanced link or tree values
|
|
37
|
+
* In case of advanced reverse link from simple link, this is the id of the linked record
|
|
38
|
+
*/
|
|
39
|
+
id_value?: string | null;
|
|
35
40
|
attribute?: string;
|
|
36
41
|
created_at?: number;
|
|
37
42
|
modified_at?: number;
|
|
@@ -39,21 +44,60 @@ export interface IGenericValue {
|
|
|
39
44
|
modified_by?: string;
|
|
40
45
|
version?: IValueVersion;
|
|
41
46
|
metadata?: IValueMetadata;
|
|
47
|
+
}
|
|
48
|
+
export interface IGenericValue extends ICommonGenericSaveValue {
|
|
42
49
|
isInherited?: boolean;
|
|
43
50
|
isCalculated?: boolean;
|
|
44
51
|
}
|
|
45
52
|
export interface IStandardValue extends IGenericValue {
|
|
53
|
+
/**
|
|
54
|
+
* Computed value after get actions on attribute are done
|
|
55
|
+
* TODO remove that any when possible
|
|
56
|
+
* TODO remove optional when possible
|
|
57
|
+
*/
|
|
46
58
|
payload?: any | EmptyValue;
|
|
47
|
-
|
|
59
|
+
/**
|
|
60
|
+
* Raw value from the database, before any computation
|
|
61
|
+
* TODO, remove that any when possible
|
|
62
|
+
*/
|
|
63
|
+
raw_payload?: any;
|
|
48
64
|
}
|
|
49
65
|
export interface ILinkValue extends IGenericValue {
|
|
66
|
+
/**
|
|
67
|
+
* Linked record
|
|
68
|
+
* TODO remove optional when possible
|
|
69
|
+
*/
|
|
50
70
|
payload?: IRecord;
|
|
51
71
|
}
|
|
52
72
|
export interface ITreeValue extends IGenericValue {
|
|
73
|
+
/**
|
|
74
|
+
* Linked tree node
|
|
75
|
+
* TODO remove optional when possible
|
|
76
|
+
*/
|
|
53
77
|
payload?: ITreeNode;
|
|
54
78
|
treeId: string;
|
|
55
79
|
}
|
|
56
80
|
export type IValue = IStandardValue | ILinkValue | ITreeValue;
|
|
81
|
+
type IGenericSaveValue = ICommonGenericSaveValue;
|
|
82
|
+
export interface ISaveStandardValue extends IGenericSaveValue {
|
|
83
|
+
/**
|
|
84
|
+
* Any base type value to save
|
|
85
|
+
*/
|
|
86
|
+
payload: number | string | boolean | EmptyValue | null;
|
|
87
|
+
}
|
|
88
|
+
export interface ISaveLinkValue extends IGenericSaveValue {
|
|
89
|
+
/**
|
|
90
|
+
* Record id to link
|
|
91
|
+
*/
|
|
92
|
+
payload: string | null;
|
|
93
|
+
}
|
|
94
|
+
export interface ISaveTreeValue extends IGenericSaveValue {
|
|
95
|
+
/**
|
|
96
|
+
* Tree node id to link
|
|
97
|
+
*/
|
|
98
|
+
payload: string | null;
|
|
99
|
+
}
|
|
100
|
+
export type ISaveValue = ISaveStandardValue | ISaveLinkValue | ISaveTreeValue;
|
|
57
101
|
export interface IDateRangeValue<T = string | number> {
|
|
58
102
|
from: T;
|
|
59
103
|
to: T;
|
|
@@ -78,3 +122,18 @@ export interface IValueEdge extends IDbEdge {
|
|
|
78
122
|
version?: IDbValueVersion;
|
|
79
123
|
metadata?: IValueMetadata;
|
|
80
124
|
}
|
|
125
|
+
export interface IValueByAttributeType {
|
|
126
|
+
[AttributeTypes.SIMPLE]: IStandardValue;
|
|
127
|
+
[AttributeTypes.SIMPLE_LINK]: ILinkValue;
|
|
128
|
+
[AttributeTypes.ADVANCED]: IStandardValue;
|
|
129
|
+
[AttributeTypes.ADVANCED_LINK]: ILinkValue;
|
|
130
|
+
[AttributeTypes.TREE]: ITreeValue;
|
|
131
|
+
}
|
|
132
|
+
export interface ISaveValueByAttributeType {
|
|
133
|
+
[AttributeTypes.SIMPLE]: ISaveStandardValue;
|
|
134
|
+
[AttributeTypes.SIMPLE_LINK]: ISaveLinkValue;
|
|
135
|
+
[AttributeTypes.ADVANCED]: ISaveStandardValue;
|
|
136
|
+
[AttributeTypes.ADVANCED_LINK]: ISaveLinkValue;
|
|
137
|
+
[AttributeTypes.TREE]: ISaveTreeValue;
|
|
138
|
+
}
|
|
139
|
+
export {};
|
|
@@ -1,21 +1,17 @@
|
|
|
1
1
|
import { ICoreSubscriptionsHelpersApp } from 'app/core/helpers/subscriptions';
|
|
2
|
-
import { IGraphqlApp } from 'app/graphql/graphqlApp';
|
|
2
|
+
import { IGraphqlAppModule, IGraphqlApp } from 'app/graphql/graphqlApp';
|
|
3
3
|
import { InitQueryContextFunc } from 'app/helpers/initQueryContext';
|
|
4
4
|
import { IEventsManagerDomain } from 'domain/eventsManager/eventsManagerDomain';
|
|
5
5
|
import { IPermissionDomain } from 'domain/permission/permissionDomain';
|
|
6
6
|
import { IRecordDomain } from 'domain/record/recordDomain';
|
|
7
|
-
import { Express } from 'express';
|
|
8
7
|
import { IUtils } from 'utils/utils';
|
|
9
8
|
import winston from 'winston';
|
|
10
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
11
9
|
import { IApplicationDomain } from '../../domain/application/applicationDomain';
|
|
12
10
|
import { ValidateRequestTokenFunc } from '../helpers/validateRequestToken';
|
|
13
11
|
import { IAuthApp } from '../auth/authApp';
|
|
14
12
|
import { IGlobalSettingsDomain } from '../../domain/globalSettings/globalSettingsDomain';
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
18
|
-
}
|
|
13
|
+
import { IServerRouteAppModule } from 'interface/server';
|
|
14
|
+
export type IApplicationApp = IGraphqlAppModule & IServerRouteAppModule;
|
|
19
15
|
export interface IApplicationAppDeps {
|
|
20
16
|
'core.app.graphql': IGraphqlApp;
|
|
21
17
|
'core.app.auth': IAuthApp;
|
|
@@ -2,9 +2,8 @@ import { IApiKeyDomain } from 'domain/apiKey/apiKeyDomain';
|
|
|
2
2
|
import { IRecordDomain } from 'domain/record/recordDomain';
|
|
3
3
|
import { IUserDomain } from 'domain/user/userDomain';
|
|
4
4
|
import { IValueDomain } from 'domain/value/valueDomain';
|
|
5
|
-
import {
|
|
5
|
+
import { Response } from 'express';
|
|
6
6
|
import { IConfig } from '_types/config';
|
|
7
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
8
7
|
import { ICachesService } from '../../infra/cache/cacheService';
|
|
9
8
|
import { ITokenUserData } from '../../_types/auth';
|
|
10
9
|
import { IRequestWithContext } from '../../_types/express';
|
|
@@ -13,19 +12,21 @@ import { IOIDCClientService } from '../../infra/oidc/oidcClientService';
|
|
|
13
12
|
import { InitQueryContextFunc } from '../helpers/initQueryContext';
|
|
14
13
|
import { IConvertOIDCIdentifier } from '../helpers/convertOIDCIdentifier';
|
|
15
14
|
import { IncomingHttpHeaders } from 'http';
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
import { IRecordRepo } from '../../infra/record/recordRepo';
|
|
16
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
17
|
+
import { IServerRouteAppModule } from 'interface/server';
|
|
18
|
+
export interface IAuthApp extends IGraphqlAppModule, IServerRouteAppModule {
|
|
18
19
|
validateRequestToken(params: {
|
|
19
20
|
apiKey?: string;
|
|
20
21
|
headers: IncomingHttpHeaders;
|
|
21
22
|
cookies?: {};
|
|
22
23
|
}, res: Response<unknown>): Promise<ITokenUserData>;
|
|
23
|
-
registerRoute(app: Express): void;
|
|
24
24
|
authenticateWithOIDCService(req: IRequestWithContext, res: Response<unknown>): Promise<void | Response>;
|
|
25
25
|
}
|
|
26
26
|
export interface IAuthAppDeps {
|
|
27
27
|
'core.domain.value': IValueDomain;
|
|
28
28
|
'core.domain.record': IRecordDomain;
|
|
29
|
+
'core.infra.record': IRecordRepo;
|
|
29
30
|
'core.domain.apiKey': IApiKeyDomain;
|
|
30
31
|
'core.domain.user': IUserDomain;
|
|
31
32
|
'core.infra.cache.cacheService': ICachesService;
|
|
@@ -35,4 +36,4 @@ export interface IAuthAppDeps {
|
|
|
35
36
|
'core.app.helpers.convertOIDCIdentifier': IConvertOIDCIdentifier;
|
|
36
37
|
config: IConfig;
|
|
37
38
|
}
|
|
38
|
-
export default function ({ 'core.domain.value': valueDomain, 'core.domain.record': recordDomain, 'core.domain.apiKey': apiKeyDomain, 'core.domain.user': userDomain, 'core.utils.logger': logger, 'core.infra.cache.cacheService': cacheService, 'core.infra.oidc.oidcClientService': oidcClientService, 'core.app.helpers.initQueryContext': initQueryContext, 'core.app.helpers.convertOIDCIdentifier': convertOIDCIdentifier, config }: IAuthAppDeps): IAuthApp;
|
|
39
|
+
export default function ({ 'core.domain.value': valueDomain, 'core.domain.record': recordDomain, 'core.infra.record': recordRepo, 'core.domain.apiKey': apiKeyDomain, 'core.domain.user': userDomain, 'core.utils.logger': logger, 'core.infra.cache.cacheService': cacheService, 'core.infra.oidc.oidcClientService': oidcClientService, 'core.app.helpers.initQueryContext': initQueryContext, 'core.app.helpers.convertOIDCIdentifier': convertOIDCIdentifier, config }: IAuthAppDeps): IAuthApp;
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { IActionsListDomain } from 'domain/actionsList/actionsListDomain';
|
|
2
2
|
import { i18n } from 'i18next';
|
|
3
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
4
3
|
import { IAppModule } from '_types/shared';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
4
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
5
|
+
export type ICoreActionListApp = IAppModule & IGraphqlAppModule;
|
|
8
6
|
interface IDeps {
|
|
9
7
|
'core.domain.actionsList': IActionsListDomain;
|
|
10
8
|
translator: i18n;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { IApiKeyDomain } from 'domain/apiKey/apiKeyDomain';
|
|
2
2
|
import { IRecordDomain } from 'domain/record/recordDomain';
|
|
3
|
-
import {
|
|
4
|
-
export
|
|
5
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
6
|
-
}
|
|
3
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
4
|
+
export type ICoreVersionProfileApp = IGraphqlAppModule;
|
|
7
5
|
interface IDeps {
|
|
8
6
|
'core.domain.apiKey': IApiKeyDomain;
|
|
9
7
|
'core.domain.record': IRecordDomain;
|
|
@@ -6,12 +6,9 @@ import { IRecordDomain } from 'domain/record/recordDomain';
|
|
|
6
6
|
import { ITreeDomain } from 'domain/tree/treeDomain';
|
|
7
7
|
import { IVersionProfileDomain } from 'domain/versionProfile/versionProfileDomain';
|
|
8
8
|
import { IUtils } from 'utils/utils';
|
|
9
|
-
import {
|
|
10
|
-
import { IGraphqlApp } from '../../graphql/graphqlApp';
|
|
9
|
+
import { IGraphqlAppModule, IGraphqlApp } from '../../graphql/graphqlApp';
|
|
11
10
|
import { ICoreApp } from '../coreApp';
|
|
12
|
-
export
|
|
13
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
14
|
-
}
|
|
11
|
+
export type ICoreAttributeApp = IGraphqlAppModule;
|
|
15
12
|
interface IDeps {
|
|
16
13
|
'core.domain.attribute': IAttributeDomain;
|
|
17
14
|
'core.domain.library': ILibraryDomain;
|
|
@@ -3,12 +3,10 @@ import { ICoreDomain } from 'domain/core/coreDomain';
|
|
|
3
3
|
import { IEventsManagerDomain } from 'domain/eventsManager/eventsManagerDomain';
|
|
4
4
|
import { GraphQLScalarType } from 'graphql';
|
|
5
5
|
import { i18n } from 'i18next';
|
|
6
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
7
6
|
import { IAppModule } from '_types/shared';
|
|
8
7
|
import { ISystemTranslation } from '_types/systemTranslation';
|
|
9
|
-
import { IGraphqlApp } from '../graphql/graphqlApp';
|
|
10
|
-
export interface ICoreApp extends IAppModule {
|
|
11
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
8
|
+
import { IGraphqlAppModule, IGraphqlApp } from '../graphql/graphqlApp';
|
|
9
|
+
export interface ICoreApp extends IAppModule, IGraphqlAppModule {
|
|
12
10
|
filterSysTranslationField(fieldData: ISystemTranslation, requestedLangs: string[]): ISystemTranslation | null;
|
|
13
11
|
initPubSubEventsConsumer(): Promise<void>;
|
|
14
12
|
}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { IExportDomain } from 'domain/export/exportDomain';
|
|
2
|
-
import {
|
|
3
|
-
export
|
|
4
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
5
|
-
}
|
|
2
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
3
|
+
export type ICoreExportApp = IGraphqlAppModule;
|
|
6
4
|
interface IDeps {
|
|
7
5
|
'core.domain.export': IExportDomain;
|
|
8
6
|
}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { InitQueryContextFunc } from 'app/helpers/initQueryContext';
|
|
2
2
|
import { IEventsManagerDomain } from 'domain/eventsManager/eventsManagerDomain';
|
|
3
|
-
import { Express } from 'express';
|
|
4
3
|
import { IConfig } from '_types/config';
|
|
5
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
6
4
|
import { IFilesManagerDomain } from '../../domain/filesManager/filesManagerDomain';
|
|
7
5
|
import { ValidateRequestTokenFunc } from '../helpers/validateRequestToken';
|
|
8
|
-
|
|
6
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
7
|
+
import { IServerRouteAppModule } from 'interface/server';
|
|
8
|
+
export interface IFilesManagerApp extends IGraphqlAppModule, IServerRouteAppModule {
|
|
9
9
|
init(): Promise<void>;
|
|
10
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
11
|
-
registerRoute(app: Express): void;
|
|
12
10
|
}
|
|
13
11
|
interface IDeps {
|
|
14
12
|
'core.app.helpers.initQueryContext': InitQueryContextFunc;
|
|
@@ -4,17 +4,18 @@ import { IFormDomain } from 'domain/form/formDomain';
|
|
|
4
4
|
import { ILibraryDomain } from 'domain/library/libraryDomain';
|
|
5
5
|
import { IUtils } from 'utils/utils';
|
|
6
6
|
import { IAppGraphQLSchema } from '_types/graphql';
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
import { IfLibraryJoinLinkAttribute } from 'domain/attribute/helpers/ifLibraryJoinLinkAttribute';
|
|
8
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
9
|
+
export type ICoreFormApp = IGraphqlAppModule;
|
|
10
10
|
interface IDeps {
|
|
11
11
|
'core.domain.attribute': IAttributeDomain;
|
|
12
12
|
'core.domain.form': IFormDomain;
|
|
13
13
|
'core.domain.library': ILibraryDomain;
|
|
14
14
|
'core.app.helpers.convertVersionFromGqlFormat': ConvertVersionFromGqlFormatFunc;
|
|
15
|
+
'core.domain.attribute.helpers.ifLibraryJoinLinkAttribute': IfLibraryJoinLinkAttribute;
|
|
15
16
|
'core.utils': IUtils;
|
|
16
17
|
}
|
|
17
|
-
export default function ({ 'core.domain.attribute': attributeDomain, 'core.domain.form': formDomain, 'core.domain.library': libraryDomain, 'core.app.helpers.convertVersionFromGqlFormat': convertVersionFromGqlFormat, 'core.utils': utils }: IDeps): {
|
|
18
|
-
getGraphQLSchema(): IAppGraphQLSchema
|
|
18
|
+
export default function ({ 'core.domain.attribute': attributeDomain, 'core.domain.form': formDomain, 'core.domain.library': libraryDomain, 'core.app.helpers.convertVersionFromGqlFormat': convertVersionFromGqlFormat, 'core.domain.attribute.helpers.ifLibraryJoinLinkAttribute': ifLibraryJoinLinkAttribute, 'core.utils': utils }: IDeps): {
|
|
19
|
+
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
19
20
|
};
|
|
20
21
|
export {};
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
import { InitQueryContextFunc } from 'app/helpers/initQueryContext';
|
|
2
2
|
import { IRecordDomain } from 'domain/record/recordDomain';
|
|
3
|
-
import { Express } from 'express';
|
|
4
3
|
import { IUtils } from 'utils/utils';
|
|
5
4
|
import winston from 'winston';
|
|
6
5
|
import { IConfig } from '_types/config';
|
|
7
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
8
6
|
import { IAppModule } from '_types/shared';
|
|
9
7
|
import { IGlobalSettingsDomain } from '../../domain/globalSettings/globalSettingsDomain';
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
8
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
9
|
+
import { IServerRouteAppModule } from 'interface/server';
|
|
10
|
+
export type ICoreApp = IAppModule & IGraphqlAppModule & IServerRouteAppModule;
|
|
14
11
|
interface IDeps {
|
|
15
12
|
'core.app.helpers.initQueryContext': InitQueryContextFunc;
|
|
16
13
|
'core.domain.globalSettings': IGlobalSettingsDomain;
|
|
@@ -4,10 +4,8 @@ import { IImportDomain } from 'domain/import/importDomain';
|
|
|
4
4
|
import { IDbUtils } from 'infra/db/dbUtils';
|
|
5
5
|
import { IUtils } from 'utils/utils';
|
|
6
6
|
import * as Config from '_types/config';
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
export interface ICoreImportApp {
|
|
10
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
7
|
+
import { IGraphqlAppModule, IGraphqlApp } from '../graphql/graphqlApp';
|
|
8
|
+
export interface ICoreImportApp extends IGraphqlAppModule {
|
|
11
9
|
importConfig(filepath: string, clear: boolean): Promise<void>;
|
|
12
10
|
importData(filepath: string): Promise<void>;
|
|
13
11
|
}
|
|
@@ -4,12 +4,9 @@ import { IPermissionDomain } from 'domain/permission/permissionDomain';
|
|
|
4
4
|
import { IRecordDomain } from 'domain/record/recordDomain';
|
|
5
5
|
import { ITreeDomain } from 'domain/tree/treeDomain';
|
|
6
6
|
import { IViewDomain } from 'domain/view/viewDomain';
|
|
7
|
-
import {
|
|
8
|
-
import { IGraphqlApp } from '../../graphql/graphqlApp';
|
|
7
|
+
import { IGraphqlAppModule, IGraphqlApp } from '../../graphql/graphqlApp';
|
|
9
8
|
import { ICoreApp } from '../coreApp';
|
|
10
|
-
export
|
|
11
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
12
|
-
}
|
|
9
|
+
export type ICoreLibraryApp = IGraphqlAppModule;
|
|
13
10
|
interface IDeps {
|
|
14
11
|
'core.domain.library'?: ILibraryDomain;
|
|
15
12
|
'core.domain.record'?: IRecordDomain;
|
|
@@ -5,11 +5,9 @@ import { ILibraryDomain } from 'domain/library/libraryDomain';
|
|
|
5
5
|
import { ILogDomain } from 'domain/log/logDomain';
|
|
6
6
|
import { ITreeDomain } from 'domain/tree/treeDomain';
|
|
7
7
|
import { IVersionProfileDomain } from 'domain/versionProfile/versionProfileDomain';
|
|
8
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
9
8
|
import { IAppModule } from '_types/shared';
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
9
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
10
|
+
export type ICoreLogApp = IAppModule & IGraphqlAppModule;
|
|
13
11
|
interface IDeps {
|
|
14
12
|
'core.domain.log': ILogDomain;
|
|
15
13
|
'core.domain.eventsManager': IEventsManagerDomain;
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { IAttributeDomain } from 'domain/attribute/attributeDomain';
|
|
2
2
|
import { IPermissionDomain } from 'domain/permission/permissionDomain';
|
|
3
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
4
3
|
import { IAppModule } from '_types/shared';
|
|
5
4
|
import { PermissionTypes } from '../../../_types/permissions';
|
|
5
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
6
6
|
export interface IPluginPermission {
|
|
7
7
|
name: string;
|
|
8
8
|
type: PermissionTypes;
|
|
9
9
|
applyOn?: string[];
|
|
10
10
|
}
|
|
11
|
-
export
|
|
12
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
13
|
-
}
|
|
11
|
+
export type ICorePermissionApp = IAppModule & IGraphqlAppModule;
|
|
14
12
|
interface IDeps {
|
|
15
13
|
'core.domain.permission'?: IPermissionDomain;
|
|
16
14
|
'core.domain.attribute'?: IAttributeDomain;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { IPluginsDomain } from 'domain/plugins/pluginsDomain';
|
|
2
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
3
2
|
import { IPluginInfos } from '../../_types/plugin';
|
|
4
|
-
|
|
3
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
4
|
+
export interface ICorePluginsApp extends IGraphqlAppModule {
|
|
5
5
|
registerPlugin(path: string, plugin: IPluginInfos): void;
|
|
6
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
7
6
|
}
|
|
8
7
|
interface IDeps {
|
|
9
8
|
'core.domain.plugins': IPluginsDomain;
|
|
@@ -5,14 +5,11 @@ import { IPermissionDomain } from 'domain/permission/permissionDomain';
|
|
|
5
5
|
import { IRecordDomain } from 'domain/record/recordDomain';
|
|
6
6
|
import { ITreeDomain } from 'domain/tree/treeDomain';
|
|
7
7
|
import { IUtils } from 'utils/utils';
|
|
8
|
-
import {
|
|
9
|
-
import { IGraphqlApp } from '../../graphql/graphqlApp';
|
|
8
|
+
import { IGraphqlAppModule, IGraphqlApp } from '../../graphql/graphqlApp';
|
|
10
9
|
import { ICoreSubscriptionsHelpersApp } from '../helpers/subscriptions';
|
|
11
10
|
import { IIndexationManagerApp } from '../indexationManagerApp';
|
|
12
11
|
import { IAttributeDomain } from 'domain/attribute/attributeDomain';
|
|
13
|
-
export
|
|
14
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
15
|
-
}
|
|
12
|
+
export type ICoreRecordApp = IGraphqlAppModule;
|
|
16
13
|
interface IDeps {
|
|
17
14
|
'core.domain.record': IRecordDomain;
|
|
18
15
|
'core.domain.tree': ITreeDomain;
|
|
@@ -3,14 +3,13 @@ import { IRecordDomain } from 'domain/record/recordDomain';
|
|
|
3
3
|
import { IUtils } from 'utils/utils';
|
|
4
4
|
import winston from 'winston';
|
|
5
5
|
import { IConfig } from '_types/config';
|
|
6
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
7
6
|
import { IPaginationParams, ISortParams } from '_types/list';
|
|
8
7
|
import { ITasksManagerDomain } from '../../domain/tasksManager/tasksManagerDomain';
|
|
9
8
|
import { TaskStatus } from '../../_types/tasksManager';
|
|
10
|
-
|
|
9
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
10
|
+
export interface ITasksManagerApp extends IGraphqlAppModule {
|
|
11
11
|
initMaster(): Promise<NodeJS.Timer>;
|
|
12
12
|
initWorker(): Promise<void>;
|
|
13
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
14
13
|
}
|
|
15
14
|
interface IDeps {
|
|
16
15
|
'core.domain.tasksManager'?: ITasksManagerDomain;
|
|
@@ -2,14 +2,12 @@ import { IAttributeDomain } from 'domain/attribute/attributeDomain';
|
|
|
2
2
|
import { IEventsManagerDomain } from 'domain/eventsManager/eventsManagerDomain';
|
|
3
3
|
import { ILibraryDomain } from 'domain/library/libraryDomain';
|
|
4
4
|
import { IPermissionDomain } from 'domain/permission/permissionDomain';
|
|
5
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
6
5
|
import { ITreeDomain } from '../../../domain/tree/treeDomain';
|
|
7
|
-
import { IGraphqlApp } from '../../graphql/graphqlApp';
|
|
6
|
+
import { IGraphqlAppModule, IGraphqlApp } from '../../graphql/graphqlApp';
|
|
8
7
|
import { ICoreApp } from '../coreApp';
|
|
9
8
|
import { ICoreSubscriptionsHelpersApp } from '../helpers/subscriptions';
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
9
|
+
import { IRecordPermissionDomain } from '../../../domain/permission/recordPermissionDomain';
|
|
10
|
+
export type ITreeAttributeApp = IGraphqlAppModule;
|
|
13
11
|
interface IDeps {
|
|
14
12
|
'core.domain.tree': ITreeDomain;
|
|
15
13
|
'core.domain.attribute': IAttributeDomain;
|
|
@@ -19,6 +17,7 @@ interface IDeps {
|
|
|
19
17
|
'core.app.core': ICoreApp;
|
|
20
18
|
'core.app.core.subscriptionsHelper': ICoreSubscriptionsHelpersApp;
|
|
21
19
|
'core.domain.library': ILibraryDomain;
|
|
20
|
+
'core.domain.permission.record': IRecordPermissionDomain;
|
|
22
21
|
}
|
|
23
|
-
export default function ({ 'core.domain.tree': treeDomain, 'core.domain.attribute': attributeDomain, 'core.domain.permission': permissionDomain, 'core.domain.eventsManager': eventsManagerDomain, 'core.app.core': coreApp, 'core.app.graphql': graphqlApp, 'core.app.core.subscriptionsHelper': subscriptionsHelper, 'core.domain.library': libraryDomain }: IDeps): ITreeAttributeApp;
|
|
22
|
+
export default function ({ 'core.domain.tree': treeDomain, 'core.domain.attribute': attributeDomain, 'core.domain.permission': permissionDomain, 'core.domain.eventsManager': eventsManagerDomain, 'core.app.core': coreApp, 'core.app.graphql': graphqlApp, 'core.app.core.subscriptionsHelper': subscriptionsHelper, 'core.domain.library': libraryDomain, 'core.domain.permission.record': recordPermissionDomain }: IDeps): ITreeAttributeApp;
|
|
24
23
|
export {};
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { IUserDomain } from '../../domain/user/userDomain';
|
|
2
|
-
import {
|
|
3
|
-
export
|
|
4
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
5
|
-
}
|
|
2
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
3
|
+
export type ICoreImportApp = IGraphqlAppModule;
|
|
6
4
|
interface IDeps {
|
|
7
5
|
'core.domain.user': IUserDomain;
|
|
8
6
|
}
|
|
@@ -3,10 +3,8 @@ import { IAttributeDomain } from 'domain/attribute/attributeDomain';
|
|
|
3
3
|
import { IRecordDomain } from 'domain/record/recordDomain';
|
|
4
4
|
import { IValueDomain } from 'domain/value/valueDomain';
|
|
5
5
|
import { IUtils } from 'utils/utils';
|
|
6
|
-
import {
|
|
7
|
-
export
|
|
8
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
9
|
-
}
|
|
6
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
7
|
+
export type ICoreValueApp = IGraphqlAppModule;
|
|
10
8
|
interface IDeps {
|
|
11
9
|
'core.domain.value': IValueDomain;
|
|
12
10
|
'core.domain.attribute': IAttributeDomain;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { ITreeDomain } from 'domain/tree/treeDomain';
|
|
2
2
|
import { IVersionProfileDomain } from 'domain/versionProfile/versionProfileDomain';
|
|
3
|
-
import {
|
|
4
|
-
export
|
|
5
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
6
|
-
}
|
|
3
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
4
|
+
export type ICoreVersionProfileApp = IGraphqlAppModule;
|
|
7
5
|
interface IDeps {
|
|
8
6
|
'core.domain.versionProfile'?: IVersionProfileDomain;
|
|
9
7
|
'core.domain.tree'?: ITreeDomain;
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { IRecordDomain } from 'domain/record/recordDomain';
|
|
2
2
|
import { IViewDomain } from 'domain/view/viewDomain';
|
|
3
3
|
import { IUtils } from 'utils/utils';
|
|
4
|
-
import { IAppGraphQLSchema } from '_types/graphql';
|
|
5
4
|
import { IAttributeDomain } from 'domain/attribute/attributeDomain';
|
|
5
|
+
import { IGraphqlAppModule } from 'app/graphql/graphqlApp';
|
|
6
6
|
interface IDeps {
|
|
7
7
|
'core.domain.record': IRecordDomain;
|
|
8
8
|
'core.domain.view': IViewDomain;
|
|
9
9
|
'core.domain.attribute': IAttributeDomain;
|
|
10
10
|
'core.utils': IUtils;
|
|
11
11
|
}
|
|
12
|
-
export
|
|
13
|
-
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
14
|
-
}
|
|
12
|
+
export type IViewApp = IGraphqlAppModule;
|
|
15
13
|
export default function ({ 'core.domain.view': viewDomain, 'core.domain.record': recordDomain, 'core.domain.attribute': attributeDomain, 'core.utils': utils }: IDeps): IViewApp;
|
|
16
14
|
export {};
|
|
@@ -1,17 +1,12 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { RequestHandler } from 'express';
|
|
2
2
|
import type { IAppModule } from '../../_types/shared';
|
|
3
3
|
import type { ExpressAppMethod } from '../../_types/endpoint';
|
|
4
4
|
import type { InitQueryContextFunc } from '../helpers/initQueryContext';
|
|
5
5
|
import type { ValidateRequestTokenFunc } from '../helpers/validateRequestToken';
|
|
6
6
|
import { IConfig } from '_types/config';
|
|
7
7
|
import { IValueDomain } from 'domain/value/valueDomain';
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
* Method call automatically by the LEAV Core: server.ts
|
|
11
|
-
* @param app Express instance, can be used to extend the app
|
|
12
|
-
*/
|
|
13
|
-
registerRoute(app: Express): void;
|
|
14
|
-
}
|
|
8
|
+
import { IServerRouteAppModule } from 'interface/server';
|
|
9
|
+
type IEndpointApp = IAppModule & IServerRouteAppModule;
|
|
15
10
|
export interface IPluginRoute {
|
|
16
11
|
path: string;
|
|
17
12
|
method: ExpressAppMethod;
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { AwilixContainer } from 'awilix';
|
|
2
2
|
import { GraphQLResolveInfo, GraphQLSchema } from 'graphql';
|
|
3
3
|
import { IUtils } from 'utils/utils';
|
|
4
|
+
import { IAppGraphQLSchema } from '_types/graphql';
|
|
4
5
|
import { IAppModule } from '_types/shared';
|
|
5
6
|
import { IQueryField } from '../../_types/record';
|
|
6
7
|
export interface IGraphqlApp extends IAppModule {
|
|
7
8
|
getSchema(): Promise<GraphQLSchema>;
|
|
8
9
|
getQueryFields(info: GraphQLResolveInfo): IQueryField[];
|
|
9
10
|
}
|
|
11
|
+
export interface IGraphqlAppModule {
|
|
12
|
+
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
13
|
+
}
|
|
10
14
|
interface IDeps {
|
|
11
15
|
'core.depsManager'?: AwilixContainer;
|
|
12
16
|
'core.utils'?: IUtils;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IAttribute } from '../../../_types/attribute';
|
|
2
|
+
import { IQueryInfos } from '../../../_types/queryInfos';
|
|
3
|
+
import { IAttributeDomain } from 'domain/attribute/attributeDomain';
|
|
4
|
+
import { GetCoreEntityByIdFunc } from 'domain/helpers/getCoreEntityById';
|
|
5
|
+
export type IfLibraryJoinLinkAttributeCallback<R> = (joinLibId: string, joinAttributeProps: IAttribute) => Promise<R>;
|
|
6
|
+
export type IfLibraryJoinLinkAttribute = <R = unknown>(attributeProps: IAttribute, callback: IfLibraryJoinLinkAttributeCallback<R>, ctx: IQueryInfos) => Promise<R | void>;
|
|
7
|
+
export interface IIfLibraryJoinLinkDeps {
|
|
8
|
+
'core.domain.helpers.getCoreEntityById': GetCoreEntityByIdFunc;
|
|
9
|
+
'core.domain.attribute': IAttributeDomain;
|
|
10
|
+
}
|
|
11
|
+
export default function ({ 'core.domain.helpers.getCoreEntityById': getCoreEntityById, 'core.domain.attribute': attributeDomain }: IIfLibraryJoinLinkDeps): IfLibraryJoinLinkAttribute;
|