@aristid/leav-types 0.0.7-dc9cdc7 → 0.0.7-df0e86c7
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/config/default.d.ts +3 -1
- package/apps/core/config/test.d.ts +1 -0
- package/apps/core/src/__tests__/e2e/api/getConditionPart/getConditionPart.test.d.ts +1 -0
- package/apps/core/src/__tests__/e2e/api/joinLibraries/joinLibraries.test.d.ts +1 -0
- package/apps/core/src/__tests__/mockers/amqp.d.ts +8 -0
- package/apps/core/src/__tests__/mockers/logger.d.ts +7 -0
- package/apps/core/src/__tests__/mocks/attribute.d.ts +2 -1
- package/apps/core/src/__tests__/mocks/cache.d.ts +4 -0
- package/apps/core/src/_constants/attributes.d.ts +1 -0
- package/apps/core/src/_types/attribute.d.ts +6 -0
- package/apps/core/src/_types/config.d.ts +2 -2
- package/apps/core/src/_types/dbProfiler.d.ts +20 -1
- package/apps/core/src/_types/forms.d.ts +17 -7
- package/apps/core/src/_types/globalSettings.d.ts +2 -0
- package/apps/core/src/_types/library.d.ts +3 -1
- package/apps/core/src/_types/permissions.d.ts +2 -1
- package/apps/core/src/_types/queryInfos.d.ts +6 -1
- package/apps/core/src/_types/record.d.ts +4 -4
- package/apps/core/src/_types/tree.d.ts +1 -1
- package/apps/core/src/_types/value.d.ts +64 -5
- 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/_types.d.ts +10 -0
- package/apps/core/src/app/core/formApp/formApp.d.ts +4 -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 +8 -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/form/formDomain.d.ts +9 -1
- package/apps/core/src/domain/globalSettings/globalSettingsDomain.d.ts +5 -1
- package/apps/core/src/domain/import/importDomain.d.ts +1 -1
- package/apps/core/src/domain/indexationManager/indexationManagerDomain.d.ts +4 -2
- package/apps/core/src/domain/permission/_types.d.ts +10 -14
- package/apps/core/src/domain/permission/helpers/globalPermission.d.ts +1 -10
- package/apps/core/src/domain/permission/helpers/permissionByUserGroups.d.ts +20 -5
- package/apps/core/src/domain/permission/helpers/treeBasedPermissions.d.ts +0 -4
- 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 +24 -0
- package/apps/core/src/domain/record/helpers/index.d.ts +3 -0
- package/apps/core/src/domain/record/recordDomain.d.ts +19 -3
- package/apps/core/src/domain/tree/treeDomain.d.ts +2 -2
- 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 +11 -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/dbUtils.d.ts +1 -3
- package/apps/core/src/infra/db/migrations/008-addSkeletonApp.d.ts +7 -0
- package/apps/core/src/infra/db/migrations/009-addDisplayMultiLinkOptAttributeProperty.d.ts +11 -0
- package/apps/core/src/infra/db/migrations/010-formSidePanel.d.ts +8 -0
- package/apps/core/src/infra/db/migrations/011-moveSkeletonApptoAppStudio.d.ts +7 -0
- package/apps/core/src/infra/oidc/oidcClientService.d.ts +1 -1
- package/apps/core/src/infra/permission/permissionRepo.d.ts +9 -1
- package/apps/core/src/infra/record/helpers/getSearchVariableName.d.ts +1 -1
- package/apps/core/src/infra/record/recordRepo.d.ts +11 -0
- package/apps/core/src/infra/tree/treeRepo.d.ts +2 -2
- package/apps/core/src/infra/value/valueRepo.d.ts +3 -3
- package/apps/core/src/interface/server.d.ts +7 -0
- package/apps/core/src/pluginsLoader.d.ts +1 -1
- package/apps/core/src/utils/dataloader.d.ts +8 -0
- package/apps/core/src/utils/helpers/getSystemQueryContext.d.ts +8 -0
- package/apps/core/src/utils/index.d.ts +1 -0
- package/apps/core/src/utils/utils.d.ts +1 -0
- package/libs/utils/src/types/forms.d.ts +3 -1
- package/package.json +5 -2
|
@@ -69,10 +69,12 @@ export declare namespace logs {
|
|
|
69
69
|
let level: string;
|
|
70
70
|
let transport: string;
|
|
71
71
|
let destinationFile: string;
|
|
72
|
+
let useJsonFormat: string | boolean;
|
|
72
73
|
}
|
|
73
74
|
export declare namespace permissions {
|
|
74
75
|
let _default_1: boolean;
|
|
75
76
|
export { _default_1 as default };
|
|
77
|
+
export let enableCache: string | boolean;
|
|
76
78
|
}
|
|
77
79
|
export declare namespace amqp {
|
|
78
80
|
namespace connOpt {
|
|
@@ -188,5 +190,5 @@ export declare namespace elasticSearch {
|
|
|
188
190
|
let url_1: string;
|
|
189
191
|
export { url_1 as url };
|
|
190
192
|
}
|
|
191
|
-
export declare let pluginsPath: string;
|
|
193
|
+
export declare let pluginsPath: string | any[];
|
|
192
194
|
export { _export as export, _import as import };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AttributeFormats, AttributeTypes, IAttribute } from '../../_types/attribute';
|
|
1
|
+
import { AttributeFormats, AttributeTypes, MultiLinkDisplayOption, IAttribute } from '../../_types/attribute';
|
|
2
2
|
export declare const mockAttrSimple: IAttribute;
|
|
3
3
|
export declare const mockUniqueAttrSimple: IAttribute;
|
|
4
4
|
export declare const mockAttrId: IAttribute;
|
|
@@ -31,6 +31,7 @@ export declare const mockAttrTree: {
|
|
|
31
31
|
unique?: boolean;
|
|
32
32
|
description?: import("../../_types/systemTranslation").ISystemTranslation;
|
|
33
33
|
settings?: import("../../_types/shared").IKeyValue<any>;
|
|
34
|
+
multi_link_display_option?: MultiLinkDisplayOption;
|
|
34
35
|
label?: import("../../_types/systemTranslation").ISystemTranslation | string;
|
|
35
36
|
};
|
|
36
37
|
export declare const mockAttrTreeVersionable: IAttribute;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const baseAttributes: string[];
|
|
@@ -25,6 +25,7 @@ export interface IAttribute extends ICoreEntity {
|
|
|
25
25
|
unique?: boolean;
|
|
26
26
|
description?: ISystemTranslation;
|
|
27
27
|
settings?: IKeyValue<any>;
|
|
28
|
+
multi_link_display_option?: MultiLinkDisplayOption;
|
|
28
29
|
}
|
|
29
30
|
export declare enum ValueVersionMode {
|
|
30
31
|
SIMPLE = "simple",
|
|
@@ -88,6 +89,11 @@ export declare enum AttributeFormats {
|
|
|
88
89
|
COLOR = "color",
|
|
89
90
|
RICH_TEXT = "rich_text"
|
|
90
91
|
}
|
|
92
|
+
export declare enum MultiLinkDisplayOption {
|
|
93
|
+
AVATAR = "avatar",
|
|
94
|
+
TAG = "tag",
|
|
95
|
+
BADGE_QTY = "badge_qty"
|
|
96
|
+
}
|
|
91
97
|
export declare enum IOTypes {
|
|
92
98
|
STRING = "string",
|
|
93
99
|
NUMBER = "number",
|
|
@@ -28,7 +28,7 @@ export interface IConfig {
|
|
|
28
28
|
dbProfiler: IDbProfilerConfig;
|
|
29
29
|
instanceId: string;
|
|
30
30
|
elasticSearch: IElasticSearchConfig;
|
|
31
|
-
pluginsPath: string;
|
|
31
|
+
pluginsPath: string[];
|
|
32
32
|
}
|
|
33
33
|
export declare enum CoreMode {
|
|
34
34
|
SERVER = "server",
|
|
@@ -107,13 +107,13 @@ export interface ILogs {
|
|
|
107
107
|
}
|
|
108
108
|
export interface IPermissions {
|
|
109
109
|
default: boolean;
|
|
110
|
+
enableCache: boolean;
|
|
110
111
|
}
|
|
111
112
|
export interface IAmqp {
|
|
112
113
|
connOpt: Options.Connect;
|
|
113
114
|
exchange: string;
|
|
114
115
|
type: string;
|
|
115
116
|
prefetch?: number;
|
|
116
|
-
queues?: string[];
|
|
117
117
|
}
|
|
118
118
|
export interface IRedis {
|
|
119
119
|
host: string;
|
|
@@ -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 {
|
|
@@ -5,6 +6,11 @@ export interface IForm extends ICoreEntity {
|
|
|
5
6
|
system?: boolean;
|
|
6
7
|
dependencyAttributes?: string[];
|
|
7
8
|
elements?: IFormDependentElements[];
|
|
9
|
+
sidePanel: IFormSidePanel;
|
|
10
|
+
}
|
|
11
|
+
export interface IFormSidePanel {
|
|
12
|
+
enable: boolean;
|
|
13
|
+
isOpenByDefault: boolean;
|
|
8
14
|
}
|
|
9
15
|
export interface IRecordForm {
|
|
10
16
|
id: string;
|
|
@@ -12,10 +18,12 @@ export interface IRecordForm {
|
|
|
12
18
|
system: boolean;
|
|
13
19
|
recordId: string;
|
|
14
20
|
dependencyAttributes?: string[];
|
|
15
|
-
elements:
|
|
21
|
+
elements: IFormElement[];
|
|
22
|
+
sidePanel: IFormSidePanel;
|
|
16
23
|
}
|
|
17
24
|
export declare enum FormElementTypes {
|
|
18
25
|
field = "field",
|
|
26
|
+
tabs = "tabs",
|
|
19
27
|
layout = "layout"
|
|
20
28
|
}
|
|
21
29
|
export type IFormStrict = Required<IForm>;
|
|
@@ -34,17 +42,19 @@ export interface IFormElement {
|
|
|
34
42
|
uiElementType: string;
|
|
35
43
|
containerId: string;
|
|
36
44
|
settings?: IKeyValue<any>;
|
|
45
|
+
children?: IFormElement[];
|
|
37
46
|
}
|
|
38
|
-
export interface
|
|
39
|
-
|
|
47
|
+
export interface IFormElementValues {
|
|
48
|
+
id: string;
|
|
49
|
+
values: IValue[];
|
|
40
50
|
valueError?: string;
|
|
41
51
|
}
|
|
42
|
-
export type IFormElementWithValuesAndChildren = IFormElementWithValues & {
|
|
43
|
-
children: IFormElementWithValuesAndChildren[];
|
|
44
|
-
};
|
|
45
52
|
/**
|
|
46
|
-
* Accepted fields to filter
|
|
53
|
+
* Accepted fields to filter an attribute list
|
|
47
54
|
*/
|
|
48
55
|
export interface IFormFilterOptions extends ICoreEntityFilterOptions {
|
|
49
56
|
library?: string;
|
|
50
57
|
}
|
|
58
|
+
export interface IFormElementJoinLibraryContext {
|
|
59
|
+
mandatoryAttribute: IAttribute;
|
|
60
|
+
}
|
|
@@ -7,6 +7,7 @@ import { IKeyValue } from './shared';
|
|
|
7
7
|
export interface ILibrary extends ICoreEntity {
|
|
8
8
|
system?: boolean;
|
|
9
9
|
behavior?: LibraryBehavior;
|
|
10
|
+
mandatoryAttribute?: string;
|
|
10
11
|
/**
|
|
11
12
|
* List of attributes usable in this library
|
|
12
13
|
*/
|
|
@@ -45,8 +46,9 @@ export interface ILibraryPreviewsSettings {
|
|
|
45
46
|
}
|
|
46
47
|
export declare enum LibraryBehavior {
|
|
47
48
|
STANDARD = "standard",
|
|
49
|
+
DIRECTORIES = "directories",
|
|
48
50
|
FILES = "files",
|
|
49
|
-
|
|
51
|
+
JOIN = "join"
|
|
50
52
|
}
|
|
51
53
|
export declare const USERS_LIBRARY = "users";
|
|
52
54
|
export declare const USERS_GROUPS_LIBRARY = "users_groups";
|
|
@@ -76,7 +76,8 @@ export declare enum AdminPermissionsActions {
|
|
|
76
76
|
CREATE_API_KEY = "admin_create_api_key",
|
|
77
77
|
EDIT_API_KEY = "admin_edit_api_key",
|
|
78
78
|
DELETE_API_KEY = "admin_delete_api_key",
|
|
79
|
-
EDIT_GLOBAL_SETTINGS = "admin_edit_global_settings"
|
|
79
|
+
EDIT_GLOBAL_SETTINGS = "admin_edit_global_settings",
|
|
80
|
+
ACCESS_LOGS = "admin_access_logs"
|
|
80
81
|
}
|
|
81
82
|
export type PermissionsActions = LibraryPermissionsActions | RecordPermissionsActions | RecordAttributePermissionsActions | AdminPermissionsActions | AttributePermissionsActions | TreePermissionsActions | TreeNodePermissionsActions | ApplicationPermissionsActions;
|
|
82
83
|
export interface ILabeledPermissionsAction {
|
|
@@ -1,16 +1,21 @@
|
|
|
1
|
+
import DataLoader from 'dataloader';
|
|
1
2
|
import type LeavError from 'errors/LeavError';
|
|
2
3
|
import { IDbProfiler } from './dbProfiler';
|
|
3
4
|
import { IValueVersion } from './value';
|
|
4
5
|
export interface IQueryInfos {
|
|
5
6
|
userId: string;
|
|
7
|
+
groupsId?: string[];
|
|
6
8
|
lang?: string;
|
|
7
9
|
defaultLang?: string;
|
|
8
10
|
queryId?: string;
|
|
9
11
|
version?: IValueVersion;
|
|
10
12
|
treeId?: string;
|
|
11
|
-
groupsId?: string[];
|
|
12
13
|
applicationId?: string;
|
|
13
14
|
dbProfiler?: IDbProfiler;
|
|
14
15
|
trigger?: string;
|
|
15
16
|
errors?: Array<LeavError<unknown>>;
|
|
17
|
+
/**
|
|
18
|
+
* For request duration store dataloader on demand with getOrCreateDataLoaderInCtx
|
|
19
|
+
*/
|
|
20
|
+
dataLoaders?: Record<string, DataLoader<unknown, unknown>>;
|
|
16
21
|
}
|
|
@@ -75,10 +75,10 @@ export interface IQueryField {
|
|
|
75
75
|
export interface IRecordIdentity {
|
|
76
76
|
id: string;
|
|
77
77
|
library: ILibrary;
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
78
|
+
getLabel?: () => Promise<string | null>;
|
|
79
|
+
getSubLabel?: () => Promise<string | null>;
|
|
80
|
+
getColor?: () => Promise<string | null>;
|
|
81
|
+
getPreview?: () => Promise<IPreview | null>;
|
|
82
82
|
}
|
|
83
83
|
export interface IRecordIdentityConf {
|
|
84
84
|
label?: string;
|
|
@@ -38,7 +38,7 @@ export type ITreeNodeLight = Pick<ITreeNode, 'id' | 'order'>;
|
|
|
38
38
|
export interface ITreeNodeWithTreeId extends ITreeNode {
|
|
39
39
|
treeId: string;
|
|
40
40
|
}
|
|
41
|
-
export type
|
|
41
|
+
export type TreePath = ITreeNode[];
|
|
42
42
|
export declare enum TreeBehavior {
|
|
43
43
|
STANDARD = "standard",
|
|
44
44
|
FILES = "files"
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { AnyPrimitive, Override } from '@leav/utils';
|
|
2
2
|
import { IDbEdge } from 'infra/db/_types';
|
|
3
3
|
import { IRecord } from './record';
|
|
4
|
-
import { ITreeNode,
|
|
4
|
+
import { ITreeNode, TreePath } 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;
|
|
@@ -67,7 +111,7 @@ export interface IValuesOptions {
|
|
|
67
111
|
export interface IFindValueTree {
|
|
68
112
|
name: string;
|
|
69
113
|
currentIndex: number;
|
|
70
|
-
elements:
|
|
114
|
+
elements: TreePath;
|
|
71
115
|
}
|
|
72
116
|
export interface IValueEdge extends IDbEdge {
|
|
73
117
|
attribute: string;
|
|
@@ -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;
|
|
@@ -29,6 +29,16 @@ export interface IGetRecordFormArgs {
|
|
|
29
29
|
treeNodeId: string;
|
|
30
30
|
}>;
|
|
31
31
|
}
|
|
32
|
+
export interface IGetElementFormValuesArgs {
|
|
33
|
+
recordId: string;
|
|
34
|
+
libraryId: string;
|
|
35
|
+
formId: string;
|
|
36
|
+
version?: Array<{
|
|
37
|
+
treeId: string;
|
|
38
|
+
treeNodeId: string;
|
|
39
|
+
}>;
|
|
40
|
+
elementIds: string[];
|
|
41
|
+
}
|
|
32
42
|
export interface ISaveFormArgs {
|
|
33
43
|
form: IFormForGraphql;
|
|
34
44
|
}
|
|
@@ -4,17 +4,16 @@ 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
|
-
getGraphQLSchema(): IAppGraphQLSchema;
|
|
9
|
-
}
|
|
7
|
+
import { IfLibraryJoinLinkAttribute } from 'domain/attribute/helpers/ifLibraryJoinLinkAttribute';
|
|
10
8
|
interface IDeps {
|
|
11
9
|
'core.domain.attribute': IAttributeDomain;
|
|
12
10
|
'core.domain.form': IFormDomain;
|
|
13
11
|
'core.domain.library': ILibraryDomain;
|
|
14
12
|
'core.app.helpers.convertVersionFromGqlFormat': ConvertVersionFromGqlFormatFunc;
|
|
13
|
+
'core.domain.attribute.helpers.ifLibraryJoinLinkAttribute': IfLibraryJoinLinkAttribute;
|
|
15
14
|
'core.utils': IUtils;
|
|
16
15
|
}
|
|
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
|
|
16
|
+
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): {
|
|
17
|
+
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
19
18
|
};
|
|
20
19
|
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
|
}
|