@aristid/leav-types 1.6.0-a8026fa4 → 1.6.0-ac31844d

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.
@@ -15,6 +15,7 @@ export interface IApplication extends ICoreEntity {
15
15
  module: string;
16
16
  endpoint: string;
17
17
  settings?: IKeyValue<any>;
18
+ appStudioSettings?: IKeyValue<any>;
18
19
  }
19
20
  /**
20
21
  * Accepted fields to filter attributes list
@@ -113,6 +113,7 @@ export interface ITreePermissionsDependentValuesConf {
113
113
  * IDs of attributes used for permissions
114
114
  */
115
115
  dependenciesTreeAttributes: string[];
116
+ allowByDefault: boolean;
116
117
  }
117
118
  export interface IPermissionsTreeTarget {
118
119
  /**
@@ -6,6 +6,7 @@ import { type IPermissionDomain } from 'domain/permission/permissionDomain';
6
6
  import { type IRecordDomain } from 'domain/record/recordDomain';
7
7
  import { type IUtils } from 'utils/utils';
8
8
  import { type ILogger } from '@leav/logger';
9
+ import { type IAppStudioDomain } from '../../domain/application/appStudioDomain';
9
10
  import { type IApplicationDomain } from '../../domain/application/applicationDomain';
10
11
  import { type ValidateRequestTokenFunc } from '../helpers/validateRequestToken';
11
12
  import { type IAuthApp } from '../auth/authApp';
@@ -20,6 +21,7 @@ export interface IApplicationAppDeps {
20
21
  'core.app.helpers.validateRequestToken': ValidateRequestTokenFunc;
21
22
  'core.app.core.subscriptionsHelper': ICoreSubscriptionsHelpersApp;
22
23
  'core.domain.application': IApplicationDomain;
24
+ 'core.domain.application.appStudio': IAppStudioDomain;
23
25
  'core.domain.permission': IPermissionDomain;
24
26
  'core.domain.record': IRecordDomain;
25
27
  'core.domain.eventsManager': IEventsManagerDomain;
@@ -28,4 +30,4 @@ export interface IApplicationAppDeps {
28
30
  'core.utils': IUtils;
29
31
  config: IConfig;
30
32
  }
31
- export default function ({ 'core.app.graphql': graphqlApp, 'core.app.auth': authApp, 'core.app.helpers.initQueryContext': initQueryContext, 'core.app.helpers.validateRequestToken': validateRequestToken, 'core.app.core.subscriptionsHelper': subscriptionsHelper, 'core.domain.application': applicationDomain, 'core.domain.permission': permissionDomain, 'core.domain.record': recordDomain, 'core.domain.eventsManager': eventsManagerDomain, 'core.domain.globalSettings': globalSettings, 'core.utils.logger': logger, 'core.utils': utils, config, }: IApplicationAppDeps): IApplicationApp;
33
+ export default function ({ 'core.app.graphql': graphqlApp, 'core.app.auth': authApp, 'core.app.helpers.initQueryContext': initQueryContext, 'core.app.helpers.validateRequestToken': validateRequestToken, 'core.app.core.subscriptionsHelper': subscriptionsHelper, 'core.domain.application': applicationDomain, 'core.domain.application.appStudio': appStudioDomain, 'core.domain.permission': permissionDomain, 'core.domain.record': recordDomain, 'core.domain.eventsManager': eventsManagerDomain, 'core.domain.globalSettings': globalSettings, 'core.utils.logger': logger, 'core.utils': utils, config, }: IApplicationAppDeps): IApplicationApp;
@@ -0,0 +1,17 @@
1
+ import { type IPermissionDomain } from 'domain/permission/permissionDomain';
2
+ import { type IQueryInfos } from '_types/queryInfos';
3
+ import { type IApplication } from '../../_types/application';
4
+ export interface IAppStudioDomain {
5
+ /**
6
+ * Extract and filter appStudioSettings from application settings.
7
+ * Filters workspaces based on user permissions (ACCESS_LIBRARY for library type, ACCESS_RECORD for record type)
8
+ */
9
+ getAppStudioSettings(params: {
10
+ application: IApplication;
11
+ ctx: IQueryInfos;
12
+ }): Promise<IApplication['appStudioSettings']>;
13
+ }
14
+ export interface IAppStudioDomainDeps {
15
+ 'core.domain.permission': IPermissionDomain;
16
+ }
17
+ export default function ({ 'core.domain.permission': permissionDomain }: IAppStudioDomainDeps): IAppStudioDomain;
@@ -1 +1,2 @@
1
1
  export { default } from './applicationDomain';
2
+ export { default as appStudio } from './appStudioDomain';
@@ -4,7 +4,6 @@ import { type AttributeDependentValuesPermissionsActions, type IPermissionsDepen
4
4
  import { type IAttributeDomain } from '../attribute/attributeDomain';
5
5
  import { type IPermissionByUserGroupsHelper } from './helpers/permissionByUserGroups';
6
6
  import { type IElementAncestorsHelper } from 'domain/tree/helpers/elementAncestors';
7
- import { type IDefaultPermissionHelper } from './helpers/defaultPermission';
8
7
  import { type IConfig } from '_types/config';
9
8
  export interface IAttributeDependentValuesPermissionDomain {
10
9
  getAttributeDependentValuesPermission(params: {
@@ -26,7 +25,6 @@ export interface IAttributeDependentValuesPermissionDomain {
26
25
  }
27
26
  export interface IRecordAttributePermissionDomainDeps {
28
27
  'core.domain.permission.helpers.permissionByUserGroups': IPermissionByUserGroupsHelper;
29
- 'core.domain.permission.helpers.defaultPermission': IDefaultPermissionHelper;
30
28
  'core.domain.attribute': IAttributeDomain;
31
29
  'core.domain.tree.helpers.elementAncestors': IElementAncestorsHelper;
32
30
  'core.infra.value': IValueRepo;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aristid/leav-types",
3
- "version": "1.6.0-a8026fa4",
3
+ "version": "1.6.0-ac31844d",
4
4
  "description": "Shared Leav types",
5
5
  "scripts": {
6
6
  "tscheck": "",