@aristid/leav-types 0.0.7-e091028 → 0.0.7-e1cc27f1
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 +12 -0
- package/apps/core/config/development.d.ts +1 -0
- 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/globalSetup.d.ts +6 -1
- package/apps/core/src/__tests__/e2e/api/joinLibraries/joinLibraries.test.d.ts +1 -0
- package/apps/core/src/__tests__/integration/globalSetup.d.ts +1 -0
- package/apps/core/src/__tests__/integration/globalSetupHook.d.ts +1 -0
- package/apps/core/src/__tests__/integration/infra/attributeAdvancedLinkRepo.test.d.ts +1 -0
- package/apps/core/src/__tests__/integration/infra/attributeAdvancedRepo.test.d.ts +1 -0
- package/apps/core/src/__tests__/integration/infra/attributeSimpleLinkRepo.test.d.ts +1 -0
- package/apps/core/src/__tests__/integration/infra/attributeSimpleRepo.test.d.ts +1 -0
- package/apps/core/src/__tests__/integration/infra/attributeTreeRepo.test.d.ts +1 -0
- package/apps/core/src/__tests__/integration/infra/integrationTestRepoUtils.d.ts +7 -0
- package/apps/core/src/__tests__/integration/infra/recordRepo.test.d.ts +1 -0
- package/apps/core/src/__tests__/integration/infra/treeRepo.test.d.ts +1 -0
- package/apps/core/src/__tests__/integration/teardown.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/__tests__/mocks/attribute.d.ts +2 -1
- 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 +29 -1
- package/apps/core/src/_types/dbProfiler.d.ts +20 -1
- package/apps/core/src/_types/events.d.ts +45 -0
- package/apps/core/src/_types/forms.d.ts +10 -0
- package/apps/core/src/_types/library.d.ts +10 -1
- package/apps/core/src/_types/permissions.d.ts +3 -1
- package/apps/core/src/_types/queryInfos.d.ts +5 -0
- 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/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 +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/eventsManager/eventsManagerDomain.d.ts +3 -2
- package/apps/core/src/domain/filesManager/helpers/handleFileSystemEvent/handleMoveEvent.d.ts +1 -1
- package/apps/core/src/domain/import/importDomain.d.ts +12 -2
- package/apps/core/src/domain/indexationManager/indexationManagerDomain.d.ts +4 -2
- package/apps/core/src/domain/log/logDomain.d.ts +3 -1
- package/apps/core/src/domain/permission/_types.d.ts +10 -2
- package/apps/core/src/domain/permission/helpers/globalPermission.d.ts +3 -12
- package/apps/core/src/domain/permission/helpers/permissionByUserGroups.d.ts +7 -7
- package/apps/core/src/domain/permission/helpers/treeBasedPermissions.d.ts +0 -4
- package/apps/core/src/domain/permission/permissionDomain.d.ts +1 -0
- package/apps/core/src/domain/permission/recordPermissionDomain.d.ts +4 -1
- package/apps/core/src/domain/permission/treeNodePermissionDomain.d.ts +2 -2
- package/apps/core/src/domain/record/_types.d.ts +4 -3
- package/apps/core/src/domain/record/helpers/createRecord.d.ts +22 -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 +24 -4
- 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 +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 +52 -22
- 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/record/helpers/getSearchVariableName.d.ts +1 -1
- package/apps/core/src/infra/record/recordRepo.d.ts +9 -0
- package/apps/core/src/infra/tree/treeRepo.d.ts +3 -2
- package/apps/core/src/infra/value/valueRepo.d.ts +10 -8
- package/apps/core/src/interface/server.d.ts +7 -0
- package/apps/core/src/utils/dataloader.d.ts +9 -0
- package/apps/core/src/utils/dataloader.spec.d.ts +1 -0
- package/apps/core/src/utils/helpers/getSystemQueryContext.d.ts +8 -0
- package/apps/core/src/utils/index.d.ts +1 -0
- package/libs/utils/src/types/forms.d.ts +1 -0
- package/package.json +5 -2
|
@@ -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,20 @@
|
|
|
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 {
|
|
8
|
+
/**
|
|
9
|
+
* Parse all registered GraphQL schemas and return a single schema
|
|
10
|
+
* Very costly operation, should be called only once at application startup
|
|
11
|
+
*/
|
|
7
12
|
getSchema(): Promise<GraphQLSchema>;
|
|
8
13
|
getQueryFields(info: GraphQLResolveInfo): IQueryField[];
|
|
9
14
|
}
|
|
15
|
+
export interface IGraphqlAppModule {
|
|
16
|
+
getGraphQLSchema(): Promise<IAppGraphQLSchema>;
|
|
17
|
+
}
|
|
10
18
|
interface IDeps {
|
|
11
19
|
'core.depsManager'?: AwilixContainer;
|
|
12
20
|
'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;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as ifLibraryJoinLinkAttribute } from './ifLibraryJoinLinkAttribute';
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { IAmqpService } from '@leav/message-broker';
|
|
2
|
-
import {
|
|
2
|
+
import { EventAction, IPubSubPayload } from '@leav/utils';
|
|
3
3
|
import * as amqp from 'amqplib';
|
|
4
4
|
import { IUtils } from 'utils/utils';
|
|
5
5
|
import winston from 'winston';
|
|
6
6
|
import * as Config from '_types/config';
|
|
7
7
|
import { IQueryInfos } from '_types/queryInfos';
|
|
8
|
+
import { IDbPayloadInternal } from '_types/events';
|
|
8
9
|
export interface IEventsManagerDomain {
|
|
9
|
-
sendDatabaseEvent(payload:
|
|
10
|
+
sendDatabaseEvent<DBPayloadAction extends EventAction>(payload: IDbPayloadInternal<DBPayloadAction>, ctx: IQueryInfos): Promise<boolean>;
|
|
10
11
|
sendPubSubEvent(payload: IPubSubPayload, ctx: IQueryInfos): Promise<boolean>;
|
|
11
12
|
subscribe(triggersName: string[]): AsyncIterator<any>;
|
|
12
13
|
initPubSubEventsConsumer(): Promise<void>;
|
package/apps/core/src/domain/filesManager/helpers/handleFileSystemEvent/handleMoveEvent.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { IQueryInfos } from '_types/queryInfos';
|
|
2
2
|
import { IFileEventData } from '../../../../_types/filesManager';
|
|
3
3
|
import { IHandleFileSystemEventDeps, IHandleFileSystemEventResources } from './_types';
|
|
4
|
-
export declare const handleMoveEvent: (scanMsg: IFileEventData, { library }: IHandleFileSystemEventResources, deps: IHandleFileSystemEventDeps, ctx: IQueryInfos) => Promise<boolean>;
|
|
4
|
+
export declare const handleMoveEvent: (scanMsg: IFileEventData, { library }: IHandleFileSystemEventResources, deps: IHandleFileSystemEventDeps, ctx: IQueryInfos) => Promise<boolean | void>;
|
|
@@ -6,15 +6,19 @@ import { IRecordDomain } from 'domain/record/recordDomain';
|
|
|
6
6
|
import { ITasksManagerDomain } from 'domain/tasksManager/tasksManagerDomain';
|
|
7
7
|
import { ITreeDomain } from 'domain/tree/treeDomain';
|
|
8
8
|
import { IValueDomain } from 'domain/value/valueDomain';
|
|
9
|
+
import { IPermissionDomain } from 'domain/permission/permissionDomain';
|
|
10
|
+
import { AwilixContainer } from 'awilix';
|
|
9
11
|
import { i18n } from 'i18next';
|
|
10
12
|
import { IUtils } from 'utils/utils';
|
|
11
13
|
import * as Config from '_types/config';
|
|
12
14
|
import { ICachesService } from '../../infra/cache/cacheService';
|
|
15
|
+
import { IDbUtils } from '../../infra/db/dbUtils';
|
|
13
16
|
import { ImportMode, ImportType } from '../../_types/import';
|
|
14
17
|
import { IQueryInfos } from '../../_types/queryInfos';
|
|
15
18
|
import { ITaskFuncParams } from '../../_types/tasksManager';
|
|
16
19
|
import { IValidateHelper } from '../helpers/validate';
|
|
17
20
|
import { IVersionProfileDomain } from '../versionProfile/versionProfileDomain';
|
|
21
|
+
import winston from 'winston';
|
|
18
22
|
export declare const IMPORT_DATA_SCHEMA_PATH: string;
|
|
19
23
|
export declare const IMPORT_CONFIG_SCHEMA_PATH: string;
|
|
20
24
|
export interface IImportExcelParams {
|
|
@@ -40,9 +44,11 @@ interface IImportConfigParams {
|
|
|
40
44
|
filepath: string;
|
|
41
45
|
ctx: IQueryInfos;
|
|
42
46
|
forceNoTask?: boolean;
|
|
47
|
+
clearDatabase?: boolean;
|
|
48
|
+
dbMigrate?: boolean;
|
|
43
49
|
}
|
|
44
50
|
export interface IImportDomain {
|
|
45
|
-
importConfig(params: IImportConfigParams, task?: ITaskFuncParams): Promise<string>;
|
|
51
|
+
importConfig(params: IImportConfigParams, task?: ITaskFuncParams): Promise<string | undefined>;
|
|
46
52
|
importData(params: IImportDataParams, task?: ITaskFuncParams): Promise<string>;
|
|
47
53
|
importExcel({ filename, sheets, startAt }: IImportExcelParams, ctx: IQueryInfos): Promise<string>;
|
|
48
54
|
}
|
|
@@ -61,12 +67,16 @@ export interface IImportDomainDeps {
|
|
|
61
67
|
'core.domain.tree': ITreeDomain;
|
|
62
68
|
'core.domain.versionProfile': IVersionProfileDomain;
|
|
63
69
|
'core.domain.tasksManager': ITasksManagerDomain;
|
|
70
|
+
'core.domain.permission': IPermissionDomain;
|
|
64
71
|
'core.domain.helpers.updateTaskProgress': UpdateTaskProgress;
|
|
65
72
|
'core.domain.eventsManager': IEventsManagerDomain;
|
|
66
73
|
'core.infra.cache.cacheService': ICachesService;
|
|
74
|
+
'core.infra.db.dbUtils': IDbUtils;
|
|
75
|
+
'core.depsManager': AwilixContainer;
|
|
67
76
|
config: Config.IConfig;
|
|
68
77
|
translator: i18n;
|
|
69
78
|
'core.utils': IUtils;
|
|
79
|
+
'core.utils.logger'?: winston.Winston;
|
|
70
80
|
}
|
|
71
|
-
export default function ({ 'core.domain.library': libraryDomain, 'core.domain.record': recordDomain, 'core.domain.helpers.validate': validateHelper, 'core.domain.attribute': attributeDomain, 'core.domain.value': valueDomain, 'core.domain.tree': treeDomain, 'core.domain.versionProfile': versionProfileDomain, 'core.domain.tasksManager': tasksManagerDomain, 'core.domain.helpers.updateTaskProgress': updateTaskProgress, 'core.domain.eventsManager': eventsManagerDomain, 'core.infra.cache.cacheService': cacheService, 'core.utils': utils, config, translator }: IImportDomainDeps): IImportDomain;
|
|
81
|
+
export default function ({ 'core.domain.library': libraryDomain, 'core.domain.record': recordDomain, 'core.domain.helpers.validate': validateHelper, 'core.domain.attribute': attributeDomain, 'core.domain.value': valueDomain, 'core.domain.tree': treeDomain, 'core.domain.versionProfile': versionProfileDomain, 'core.domain.tasksManager': tasksManagerDomain, 'core.domain.permission': permissionDomain, 'core.domain.helpers.updateTaskProgress': updateTaskProgress, 'core.domain.eventsManager': eventsManagerDomain, 'core.infra.cache.cacheService': cacheService, 'core.infra.db.dbUtils': dbUtils, 'core.depsManager': depsManager, 'core.utils': utils, 'core.utils.logger': logger, config, translator }: IImportDomainDeps): IImportDomain;
|
|
72
82
|
export {};
|
|
@@ -11,6 +11,7 @@ import * as Config from '_types/config';
|
|
|
11
11
|
import { IQueryInfos } from '_types/queryInfos';
|
|
12
12
|
import { IIndexationService } from '../../infra/indexation/indexationService';
|
|
13
13
|
import { ITaskFuncParams } from '../../_types/tasksManager';
|
|
14
|
+
import { GetSystemQueryContext } from '../../utils/helpers/getSystemQueryContext';
|
|
14
15
|
interface IIndexDatabaseParams {
|
|
15
16
|
findRecordParams: IFindRecordParams | IFindRecordParams[];
|
|
16
17
|
attributes?: {
|
|
@@ -22,7 +23,7 @@ interface IIndexDatabaseParams {
|
|
|
22
23
|
}
|
|
23
24
|
export interface IIndexationManagerDomain {
|
|
24
25
|
init(): Promise<void>;
|
|
25
|
-
indexDatabase(params: IIndexDatabaseParams, task?: ITaskFuncParams): Promise<
|
|
26
|
+
indexDatabase(params: IIndexDatabaseParams, task?: ITaskFuncParams): Promise<void>;
|
|
26
27
|
}
|
|
27
28
|
export interface IIndexationManagerDomainDeps {
|
|
28
29
|
config: Config.IConfig;
|
|
@@ -34,7 +35,8 @@ export interface IIndexationManagerDomainDeps {
|
|
|
34
35
|
'core.domain.tasksManager': ITasksManagerDomain;
|
|
35
36
|
'core.domain.eventsManager': IEventsManagerDomain;
|
|
36
37
|
'core.utils.logger': winston.Winston;
|
|
38
|
+
'core.utils.getSystemQueryContext': GetSystemQueryContext;
|
|
37
39
|
translator: i18n;
|
|
38
40
|
}
|
|
39
|
-
export default function ({ config, 'core.infra.amqpService': amqpService, 'core.domain.record': recordDomain, 'core.domain.library': libraryDomain, 'core.domain.attribute': attributeDomain, 'core.domain.tasksManager': tasksManagerDomain, 'core.infra.indexation.indexationService': indexationService, 'core.domain.eventsManager': eventsManager, 'core.utils.logger': logger, translator }: IIndexationManagerDomainDeps): IIndexationManagerDomain;
|
|
41
|
+
export default function ({ config, 'core.infra.amqpService': amqpService, 'core.domain.record': recordDomain, 'core.domain.library': libraryDomain, 'core.domain.attribute': attributeDomain, 'core.domain.tasksManager': tasksManagerDomain, 'core.infra.indexation.indexationService': indexationService, 'core.domain.eventsManager': eventsManager, 'core.utils.logger': logger, 'core.utils.getSystemQueryContext': getSystemQueryContext, translator }: IIndexationManagerDomainDeps): IIndexationManagerDomain;
|
|
40
42
|
export {};
|
|
@@ -2,6 +2,7 @@ import { Log } from '@leav/utils';
|
|
|
2
2
|
import { ILogRepo } from 'infra/log/logRepo';
|
|
3
3
|
import { ILogFilters, ILogPagination, ILogSort } from '_types/log';
|
|
4
4
|
import { IQueryInfos } from '_types/queryInfos';
|
|
5
|
+
import { IPermissionDomain } from 'domain/permission/permissionDomain';
|
|
5
6
|
export interface ILogDomain {
|
|
6
7
|
getLogs: (params: {
|
|
7
8
|
filters?: ILogFilters;
|
|
@@ -11,6 +12,7 @@ export interface ILogDomain {
|
|
|
11
12
|
}
|
|
12
13
|
interface IDeps {
|
|
13
14
|
'core.infra.log': ILogRepo;
|
|
15
|
+
'core.domain.permission': IPermissionDomain;
|
|
14
16
|
}
|
|
15
|
-
export default function ({ 'core.infra.log': logRepo }: IDeps): ILogDomain;
|
|
17
|
+
export default function ({ 'core.infra.log': logRepo, 'core.domain.permission': permissionDomain }: IDeps): ILogDomain;
|
|
16
18
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AdminPermissionsActions, ApplicationPermissionsActions, AttributePermissionsActions, IPermissionsTreeTarget, ITreePermissionsConf, LibraryPermissionsActions, PermissionsActions, PermissionTypes, RecordAttributePermissionsActions, RecordPermissionsActions, TreeNodePermissionsActions, TreePermissionsActions } from '_types/permissions';
|
|
2
2
|
import { IQueryInfos } from '_types/queryInfos';
|
|
3
|
-
import {
|
|
3
|
+
import { TreePath } from '_types/tree';
|
|
4
4
|
export declare const PERMISSIONS_CACHE_HEADER = "permissions";
|
|
5
5
|
export declare const PERMISSIONS_NULL_PLACEHOLDER = "__null__";
|
|
6
6
|
export interface IPermissionTarget {
|
|
@@ -163,7 +163,7 @@ export interface IGetDefaultPermissionParams {
|
|
|
163
163
|
action?: any;
|
|
164
164
|
applyTo?: string;
|
|
165
165
|
userId?: string;
|
|
166
|
-
userGroups?:
|
|
166
|
+
userGroups?: TreePath[];
|
|
167
167
|
}
|
|
168
168
|
export interface IGetTreeBasedPermissionParams {
|
|
169
169
|
type: PermissionTypes;
|
|
@@ -199,3 +199,11 @@ export interface IGetInheritedRecordPermissionParams {
|
|
|
199
199
|
permTreeNode: string;
|
|
200
200
|
ctx: IQueryInfos;
|
|
201
201
|
}
|
|
202
|
+
export interface IEstimateTreeValueRecordPermissionParams {
|
|
203
|
+
action: RecordPermissionsActions;
|
|
204
|
+
userId: string;
|
|
205
|
+
libraryId: string;
|
|
206
|
+
attributeId: string;
|
|
207
|
+
nodeId: string;
|
|
208
|
+
ctx: IQueryInfos;
|
|
209
|
+
}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
import { IAttributeRepo } from 'infra/attribute/attributeRepo';
|
|
2
|
-
import { IPermissionRepo } from 'infra/permission/permissionRepo';
|
|
3
|
-
import { ITreeRepo } from 'infra/tree/treeRepo';
|
|
4
|
-
import { IValueRepo } from 'infra/value/valueRepo';
|
|
5
1
|
import { IQueryInfos } from '_types/queryInfos';
|
|
6
|
-
import { ICachesService } from '../../../infra/cache/cacheService';
|
|
7
2
|
import { PermissionsActions, PermissionTypes } from '../../../_types/permissions';
|
|
8
3
|
import { IDefaultPermissionHelper } from './defaultPermission';
|
|
9
4
|
import { IPermissionByUserGroupsHelper } from './permissionByUserGroups';
|
|
5
|
+
import { IElementAncestorsHelper } from 'domain/tree/helpers/elementAncestors';
|
|
10
6
|
interface IGetGlobalPermissionParams {
|
|
11
7
|
type: PermissionTypes;
|
|
12
8
|
applyTo?: string;
|
|
13
|
-
userId: string;
|
|
14
9
|
action: PermissionsActions;
|
|
15
10
|
getDefaultPermission?: (params?: IGetDefaultGlobalPermissionParams) => Promise<boolean> | boolean;
|
|
16
11
|
}
|
|
@@ -35,11 +30,7 @@ export interface IGlobalPermissionHelper {
|
|
|
35
30
|
export interface IGlobalPermissionDeps {
|
|
36
31
|
'core.domain.permission.helpers.permissionByUserGroups': IPermissionByUserGroupsHelper;
|
|
37
32
|
'core.domain.permission.helpers.defaultPermission': IDefaultPermissionHelper;
|
|
38
|
-
'core.
|
|
39
|
-
'core.infra.attribute': IAttributeRepo;
|
|
40
|
-
'core.infra.tree': ITreeRepo;
|
|
41
|
-
'core.infra.value': IValueRepo;
|
|
42
|
-
'core.infra.cache.cacheService': ICachesService;
|
|
33
|
+
'core.domain.tree.helpers.elementAncestors': IElementAncestorsHelper;
|
|
43
34
|
}
|
|
44
|
-
export default function ({ 'core.domain.permission.helpers.permissionByUserGroups': permByUserGroupsHelper, 'core.domain.permission.helpers.defaultPermission': defaultPermHelper, 'core.
|
|
35
|
+
export default function ({ 'core.domain.permission.helpers.permissionByUserGroups': permByUserGroupsHelper, 'core.domain.permission.helpers.defaultPermission': defaultPermHelper, 'core.domain.tree.helpers.elementAncestors': elementAncestorsHelper }: IGlobalPermissionDeps): IGlobalPermissionHelper;
|
|
45
36
|
export {};
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { IPermissionRepo } from 'infra/permission/permissionRepo';
|
|
2
1
|
import { IReducePermissionsArrayHelper } from './reducePermissionsArray';
|
|
3
2
|
import { ISimplePermissionHelper } from './simplePermission';
|
|
4
3
|
import { IDefaultPermissionHelper } from './defaultPermission';
|
|
5
|
-
import {
|
|
6
|
-
import { ITreeNode, TreePaths } from '../../../_types/tree';
|
|
4
|
+
import { TreePath } from '../../../_types/tree';
|
|
7
5
|
import { PermissionsActions, PermissionTypes } from '../../../_types/permissions';
|
|
8
6
|
import { IQueryInfos } from '../../../_types/queryInfos';
|
|
7
|
+
import { ICachesService } from '../../../infra/cache/cacheService';
|
|
8
|
+
import { IConfig } from '_types/config';
|
|
9
9
|
export interface IPermissionByUserGroupsHelperDeps {
|
|
10
10
|
'core.domain.permission.helpers.simplePermission': ISimplePermissionHelper;
|
|
11
11
|
'core.domain.permission.helpers.reducePermissionsArray': IReducePermissionsArrayHelper;
|
|
12
12
|
'core.domain.permission.helpers.defaultPermission': IDefaultPermissionHelper;
|
|
13
|
-
'core.
|
|
14
|
-
|
|
13
|
+
'core.infra.cache.cacheService': ICachesService;
|
|
14
|
+
config: IConfig;
|
|
15
15
|
}
|
|
16
16
|
interface IGetPermissionByUserGroupsParams {
|
|
17
17
|
type: PermissionTypes;
|
|
18
18
|
action: PermissionsActions;
|
|
19
|
-
userGroupsPaths:
|
|
19
|
+
userGroupsPaths: TreePath[];
|
|
20
20
|
applyTo?: string;
|
|
21
21
|
treeTarget?: {
|
|
22
22
|
tree: string;
|
|
23
|
-
path:
|
|
23
|
+
path: TreePath;
|
|
24
24
|
};
|
|
25
25
|
getDefaultPermission?: () => Promise<boolean> | boolean;
|
|
26
26
|
ctx: IQueryInfos;
|
|
@@ -2,19 +2,15 @@ import { IAttributeDomain } from 'domain/attribute/attributeDomain';
|
|
|
2
2
|
import { IElementAncestorsHelper } from 'domain/tree/helpers/elementAncestors';
|
|
3
3
|
import { IPermissionRepo } from 'infra/permission/permissionRepo';
|
|
4
4
|
import { IQueryInfos } from '_types/queryInfos';
|
|
5
|
-
import { ICachesService } from '../../../infra/cache/cacheService';
|
|
6
5
|
import { IGetInheritedTreeBasedPermissionParams, IGetTreeBasedPermissionParams } from '../_types';
|
|
7
|
-
import { IDefaultPermissionHelper } from './defaultPermission';
|
|
8
6
|
import { IPermissionByUserGroupsHelper } from './permissionByUserGroups';
|
|
9
7
|
import { IReducePermissionsArrayHelper } from './reducePermissionsArray';
|
|
10
8
|
export interface ITreeBasedPermissionsDeps {
|
|
11
9
|
'core.domain.attribute': IAttributeDomain;
|
|
12
10
|
'core.domain.permission.helpers.permissionByUserGroups': IPermissionByUserGroupsHelper;
|
|
13
|
-
'core.domain.permission.helpers.defaultPermission': IDefaultPermissionHelper;
|
|
14
11
|
'core.domain.permission.helpers.reducePermissionsArray': IReducePermissionsArrayHelper;
|
|
15
12
|
'core.domain.tree.helpers.elementAncestors': IElementAncestorsHelper;
|
|
16
13
|
'core.infra.permission': IPermissionRepo;
|
|
17
|
-
'core.infra.cache.cacheService': ICachesService;
|
|
18
14
|
}
|
|
19
15
|
export interface ITreeBasedPermissionHelper {
|
|
20
16
|
getTreeBasedPermission(params: IGetTreeBasedPermissionParams, ctx: IQueryInfos): Promise<boolean>;
|