@nu-art/permissions-shared 0.401.9 → 0.500.6

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.
Files changed (85) hide show
  1. package/_entity/access-group/db-def.d.ts +3 -0
  2. package/_entity/access-group/db-def.js +30 -0
  3. package/_entity/access-group/types.d.ts +26 -0
  4. package/_entity/access-group/types.js +1 -0
  5. package/_entity/permission-scope/brand.d.ts +23 -0
  6. package/_entity/permission-scope/brand.js +20 -0
  7. package/_entity/permission-scope/db-def.d.ts +3 -0
  8. package/_entity/{permission-project → permission-scope}/db-def.js +10 -11
  9. package/_entity/permission-scope/types.d.ts +18 -0
  10. package/_entity/permission-scope/types.js +1 -0
  11. package/_entity/user-permissions/api-def.d.ts +8 -0
  12. package/_entity/user-permissions/api-def.js +4 -0
  13. package/_entity/user-permissions/db-def.d.ts +3 -0
  14. package/_entity/user-permissions/db-def.js +22 -0
  15. package/_entity/user-permissions/types.d.ts +19 -0
  16. package/_entity/user-permissions/types.js +1 -0
  17. package/consts.d.ts +1 -80
  18. package/consts.js +1 -60
  19. package/document-access.d.ts +20 -0
  20. package/document-access.js +8 -0
  21. package/group-definition.d.ts +14 -0
  22. package/group-definition.js +18 -0
  23. package/index.d.ts +12 -10
  24. package/index.js +12 -10
  25. package/package.json +9 -8
  26. package/permissions-scopes.d.ts +8 -0
  27. package/permissions-scopes.js +3 -0
  28. package/session-data.d.ts +4 -0
  29. package/_entity/permission-access-level/api-def.d.ts +0 -5
  30. package/_entity/permission-access-level/api-def.js +0 -3
  31. package/_entity/permission-access-level/db-def.d.ts +0 -3
  32. package/_entity/permission-access-level/db-def.js +0 -31
  33. package/_entity/permission-access-level/index.d.ts +0 -3
  34. package/_entity/permission-access-level/index.js +0 -4
  35. package/_entity/permission-access-level/types.d.ts +0 -27
  36. package/_entity/permission-api/api-def.d.ts +0 -5
  37. package/_entity/permission-api/api-def.js +0 -3
  38. package/_entity/permission-api/db-def.d.ts +0 -3
  39. package/_entity/permission-api/db-def.js +0 -39
  40. package/_entity/permission-api/index.d.ts +0 -3
  41. package/_entity/permission-api/index.js +0 -4
  42. package/_entity/permission-api/types.d.ts +0 -29
  43. package/_entity/permission-api/types.js +0 -1
  44. package/_entity/permission-domain/api-def.d.ts +0 -5
  45. package/_entity/permission-domain/api-def.js +0 -3
  46. package/_entity/permission-domain/db-def.d.ts +0 -3
  47. package/_entity/permission-domain/db-def.js +0 -31
  48. package/_entity/permission-domain/index.d.ts +0 -3
  49. package/_entity/permission-domain/index.js +0 -4
  50. package/_entity/permission-domain/types.d.ts +0 -19
  51. package/_entity/permission-domain/types.js +0 -1
  52. package/_entity/permission-group/api-def.d.ts +0 -5
  53. package/_entity/permission-group/api-def.js +0 -3
  54. package/_entity/permission-group/db-def.d.ts +0 -3
  55. package/_entity/permission-group/db-def.js +0 -37
  56. package/_entity/permission-group/index.d.ts +0 -3
  57. package/_entity/permission-group/index.js +0 -4
  58. package/_entity/permission-group/types.d.ts +0 -31
  59. package/_entity/permission-group/types.js +0 -1
  60. package/_entity/permission-project/api-def.d.ts +0 -5
  61. package/_entity/permission-project/api-def.js +0 -3
  62. package/_entity/permission-project/db-def.d.ts +0 -3
  63. package/_entity/permission-project/index.d.ts +0 -3
  64. package/_entity/permission-project/index.js +0 -4
  65. package/_entity/permission-project/types.d.ts +0 -15
  66. package/_entity/permission-project/types.js +0 -1
  67. package/_entity/permission-user/api-def.d.ts +0 -12
  68. package/_entity/permission-user/api-def.js +0 -6
  69. package/_entity/permission-user/db-def.d.ts +0 -3
  70. package/_entity/permission-user/db-def.js +0 -31
  71. package/_entity/permission-user/index.d.ts +0 -3
  72. package/_entity/permission-user/index.js +0 -4
  73. package/_entity/permission-user/types.d.ts +0 -22
  74. package/_entity/permission-user/types.js +0 -1
  75. package/_entity.d.ts +0 -6
  76. package/_entity.js +0 -6
  77. package/apis.d.ts +0 -75
  78. package/apis.js +0 -42
  79. package/permission-keys.d.ts +0 -4
  80. package/permission-keys.js +0 -4
  81. package/types.d.ts +0 -48
  82. package/types.js +0 -1
  83. package/validators.d.ts +0 -6
  84. package/validators.js +0 -25
  85. /package/{_entity/permission-access-level/types.js → session-data.js} +0 -0
@@ -1,27 +0,0 @@
1
- import { AuditableV2, DB_Object, DBProto, Proto_DB_Object, VersionsDeclaration } from '@nu-art/ts-common';
2
- import { DBProto_PermissionDomain } from '../permission-domain/types.js';
3
- type VersionTypes_PermissionAccessLevel = {
4
- '1.0.0': DB_PermissionAccessLevel;
5
- '1.0.1': DB_PermissionAccessLevel;
6
- };
7
- type Versions = VersionsDeclaration<['1.0.1', '1.0.0'], VersionTypes_PermissionAccessLevel>;
8
- type Dependencies = {
9
- domainId: DBProto_PermissionDomain;
10
- };
11
- type UniqueKeys = '_id';
12
- type GeneratedProps = '_auditorId';
13
- type Proto = Proto_DB_Object<DB_PermissionAccessLevel, 'permissions--level', GeneratedProps, Versions, UniqueKeys, Dependencies>;
14
- export type DBProto_PermissionAccessLevel = DBProto<Proto>;
15
- export type UI_PermissionAccessLevel = DBProto_PermissionAccessLevel['uiType'];
16
- export type Base_AccessLevel = {
17
- domainId: string;
18
- value: number;
19
- };
20
- export type DB_PermissionAccessLevel = DB_Object & Base_AccessLevel & AuditableV2 & {
21
- name: string;
22
- uiLabel: string;
23
- };
24
- export type DB_PermissionAccessLevel_1_0_0 = DB_Object & Base_AccessLevel & AuditableV2 & {
25
- name: string;
26
- };
27
- export {};
@@ -1,5 +0,0 @@
1
- import { ApiDefResolver } from '@nu-art/thunderstorm-shared';
2
- export type ApiStruct_PermissionAPI = {
3
- _v1: {};
4
- };
5
- export declare const ApiDef_PermissionAPI: ApiDefResolver<ApiStruct_PermissionAPI>;
@@ -1,3 +0,0 @@
1
- export const ApiDef_PermissionAPI = {
2
- _v1: {}
3
- };
@@ -1,3 +0,0 @@
1
- import { DBDef_V3 } from '@nu-art/ts-common';
2
- import { DBProto_PermissionAPI } from './types.js';
3
- export declare const DBDef_PermissionAPI: DBDef_V3<DBProto_PermissionAPI>;
@@ -1,39 +0,0 @@
1
- import { tsValidateArray, tsValidateBoolean, tsValidateDynamicObject, tsValidateNumber, tsValidateString, tsValidateUniqueId } from '@nu-art/ts-common';
2
- import { PermissionDBGroup } from '../../consts.js';
3
- import { tsValidateStringWithDashesAndSlash, validateProjectId } from '../../validators.js';
4
- const Validator_ModifiableProps = {
5
- projectId: validateProjectId,
6
- path: tsValidateStringWithDashesAndSlash,
7
- accessLevelIds: tsValidateArray(tsValidateUniqueId, false),
8
- deprecated: tsValidateBoolean(false),
9
- onlyForApplication: tsValidateBoolean(false),
10
- };
11
- const Validator_GeneratedProps = {
12
- _auditorId: tsValidateString(),
13
- _accessLevels: tsValidateDynamicObject(tsValidateNumber(), tsValidateString(), false),
14
- };
15
- export const DBDef_PermissionAPI = {
16
- modifiablePropsValidator: Validator_ModifiableProps,
17
- generatedPropsValidator: Validator_GeneratedProps,
18
- versions: ['1.0.1', '1.0.0'],
19
- dbKey: 'permissions--api',
20
- frontend: {
21
- group: PermissionDBGroup,
22
- name: 'api',
23
- },
24
- backend: {
25
- name: 'permissions--api',
26
- },
27
- entityName: 'PermissionsAPI',
28
- uniqueKeys: ['projectId', 'path'],
29
- dependencies: {
30
- projectId: {
31
- dbKey: 'permissions--project',
32
- fieldType: 'string'
33
- },
34
- accessLevelIds: {
35
- dbKey: 'permissions--level',
36
- fieldType: 'string[]'
37
- }
38
- }
39
- };
@@ -1,3 +0,0 @@
1
- export * from './types.js';
2
- export * from './db-def.js';
3
- export * from './api-def.js';
@@ -1,4 +0,0 @@
1
- // Generated DB Item type: PermissionAPI
2
- export * from './types.js';
3
- export * from './db-def.js';
4
- export * from './api-def.js';
@@ -1,29 +0,0 @@
1
- import { AuditableV2, DB_Object, DBProto, Proto_DB_Object, UniqueId, VersionsDeclaration } from '@nu-art/ts-common';
2
- import { DBProto_PermissionProject } from '../permission-project/index.js';
3
- import { DBProto_PermissionAccessLevel } from '../permission-access-level/index.js';
4
- type VersionTypes_PermissionAPI = {
5
- '1.0.0': DB_PermissionAPI;
6
- '1.0.1': DB_PermissionAPI;
7
- };
8
- type Versions = VersionsDeclaration<['1.0.1', '1.0.0'], VersionTypes_PermissionAPI>;
9
- type Dependencies = {
10
- projectId: DBProto_PermissionProject;
11
- accessLevelIds: DBProto_PermissionAccessLevel;
12
- };
13
- type UniqueKeys = 'projectId' | 'path';
14
- type GeneratedProps = '_auditorId' | '_accessLevels';
15
- type Proto = Proto_DB_Object<DB_PermissionAPI, 'permissions--api', GeneratedProps, Versions, UniqueKeys, Dependencies>;
16
- export type DBProto_PermissionAPI = DBProto<Proto>;
17
- export type UI_PermissionAPI = DBProto_PermissionAPI['uiType'];
18
- export type DB_PermissionAPI = DB_Object & AuditableV2 & {
19
- projectId: string;
20
- path: string;
21
- accessLevelIds?: string[];
22
- deprecated?: boolean;
23
- onlyForApplication?: boolean;
24
- _accessLevels?: DomainToLevelValueMap;
25
- };
26
- export type DomainToLevelValueMap = {
27
- [domainId: UniqueId]: number;
28
- };
29
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,5 +0,0 @@
1
- import { ApiDefResolver } from '@nu-art/thunderstorm-shared';
2
- export type ApiStruct_PermissionDomain = {
3
- _v1: {};
4
- };
5
- export declare const ApiDef_PermissionDomain: ApiDefResolver<ApiStruct_PermissionDomain>;
@@ -1,3 +0,0 @@
1
- export const ApiDef_PermissionDomain = {
2
- _v1: {}
3
- };
@@ -1,3 +0,0 @@
1
- import { DBDef_V3 } from '@nu-art/ts-common';
2
- import { DBProto_PermissionDomain } from './types.js';
3
- export declare const DBDef_PermissionDomain: DBDef_V3<DBProto_PermissionDomain>;
@@ -1,31 +0,0 @@
1
- import { tsValidateString } from '@nu-art/ts-common';
2
- import { validateProjectId } from '../../validators.js';
3
- import { PermissionDBGroup } from '../../consts.js';
4
- const Validator_ModifiableProps = {
5
- projectId: validateProjectId,
6
- namespace: tsValidateString(50),
7
- };
8
- const Validator_GeneratedProps = {
9
- _auditorId: tsValidateString()
10
- };
11
- export const DBDef_PermissionDomain = {
12
- modifiablePropsValidator: Validator_ModifiableProps,
13
- generatedPropsValidator: Validator_GeneratedProps,
14
- versions: ['1.0.0'],
15
- dbKey: 'permissions--domain',
16
- frontend: {
17
- group: PermissionDBGroup,
18
- name: 'domain',
19
- },
20
- backend: {
21
- name: 'permissions--domain',
22
- },
23
- entityName: 'PermissionDomain',
24
- lockKeys: ['projectId'],
25
- dependencies: {
26
- projectId: {
27
- fieldType: 'string',
28
- dbKey: 'permissions--project',
29
- }
30
- }
31
- };
@@ -1,3 +0,0 @@
1
- export * from './types.js';
2
- export * from './db-def.js';
3
- export * from './api-def.js';
@@ -1,4 +0,0 @@
1
- // Generated DB Item type: PermissionDomain
2
- export * from './types.js';
3
- export * from './db-def.js';
4
- export * from './api-def.js';
@@ -1,19 +0,0 @@
1
- import { AuditableV2, DB_Object, DBProto, Proto_DB_Object, VersionsDeclaration } from '@nu-art/ts-common';
2
- import { DBProto_PermissionProject } from '../permission-project/index.js';
3
- type VersionTypes_PermissionDomain = {
4
- '1.0.0': DB_PermissionDomain;
5
- };
6
- type Versions = VersionsDeclaration<['1.0.0'], VersionTypes_PermissionDomain>;
7
- type Dependencies = {
8
- projectId: DBProto_PermissionProject;
9
- };
10
- type UniqueKeys = '_id';
11
- type GeneratedProps = '_auditorId';
12
- type Proto = Proto_DB_Object<DB_PermissionDomain, 'permissions--domain', GeneratedProps, Versions, UniqueKeys, Dependencies>;
13
- export type DBProto_PermissionDomain = DBProto<Proto>;
14
- export type UI_PermissionDomain = DBProto_PermissionDomain['uiType'];
15
- export type DB_PermissionDomain = DB_Object & AuditableV2 & {
16
- projectId: string;
17
- namespace: string;
18
- };
19
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,5 +0,0 @@
1
- import { ApiDefResolver } from '@nu-art/thunderstorm-shared';
2
- export type ApiStruct_PermissionGroup = {
3
- _v1: {};
4
- };
5
- export declare const ApiDef_PermissionGroup: ApiDefResolver<ApiStruct_PermissionGroup>;
@@ -1,3 +0,0 @@
1
- export const ApiDef_PermissionGroup = {
2
- _v1: {}
3
- };
@@ -1,3 +0,0 @@
1
- import { DBDef_V3 } from '@nu-art/ts-common';
2
- import { DBProto_PermissionGroup } from './types.js';
3
- export declare const DBDef_PermissionGroup: DBDef_V3<DBProto_PermissionGroup>;
@@ -1,37 +0,0 @@
1
- import { tsValidateArray, tsValidateDynamicObject, tsValidateNumber, tsValidateOptionalId, tsValidateString, tsValidateUniqueId } from '@nu-art/ts-common';
2
- import { PermissionDBGroup } from '../../consts.js';
3
- import { validateGroupLabel } from '../../validators.js';
4
- const Validator_ModifiableProps = {
5
- label: validateGroupLabel,
6
- uiLabel: tsValidateString(),
7
- projectId: tsValidateOptionalId,
8
- accessLevelIds: tsValidateArray(tsValidateUniqueId, false),
9
- };
10
- const Validator_GeneratedProps = {
11
- _levelsMap: tsValidateDynamicObject(tsValidateNumber(), tsValidateString(), false),
12
- _auditorId: tsValidateString(),
13
- };
14
- export const DBDef_PermissionGroup = {
15
- modifiablePropsValidator: Validator_ModifiableProps,
16
- generatedPropsValidator: Validator_GeneratedProps,
17
- versions: ['1.0.1', '1.0.0'],
18
- dbKey: 'permissions--group',
19
- entityName: 'PermissionGroup',
20
- frontend: {
21
- group: PermissionDBGroup,
22
- name: 'group',
23
- },
24
- backend: {
25
- name: 'permissions--group'
26
- },
27
- dependencies: {
28
- projectId: {
29
- dbKey: 'permissions--project',
30
- fieldType: 'string',
31
- },
32
- accessLevelIds: {
33
- dbKey: 'permissions--level',
34
- fieldType: 'string[]',
35
- }
36
- }
37
- };
@@ -1,3 +0,0 @@
1
- export * from './types.js';
2
- export * from './db-def.js';
3
- export * from './api-def.js';
@@ -1,4 +0,0 @@
1
- // Generated DB Item type: PermissionGroup
2
- export * from './types.js';
3
- export * from './db-def.js';
4
- export * from './api-def.js';
@@ -1,31 +0,0 @@
1
- import { AuditableV2, DB_Object, DBProto, Proto_DB_Object, TypedMap, VersionsDeclaration } from '@nu-art/ts-common';
2
- import { DBProto_PermissionProject } from '../permission-project/index.js';
3
- import { DBProto_PermissionAccessLevel } from '../permission-access-level/index.js';
4
- type VersionTypes_PermissionGroup = {
5
- '1.0.0': DB_PermissionGroup;
6
- '1.0.1': DB_PermissionGroup;
7
- };
8
- type Versions = VersionsDeclaration<['1.0.1', '1.0.0'], VersionTypes_PermissionGroup>;
9
- type Dependencies = {
10
- projectId: DBProto_PermissionProject;
11
- accessLevelIds: DBProto_PermissionAccessLevel;
12
- };
13
- type UniqueKeys = '_id';
14
- type GeneratedProps = '_levelsMap' | '_auditorId';
15
- type Proto = Proto_DB_Object<DB_PermissionGroup, 'permissions--group', GeneratedProps, Versions, UniqueKeys, Dependencies>;
16
- export type DBProto_PermissionGroup = DBProto<Proto>;
17
- export type UI_PermissionGroup = DBProto_PermissionGroup['uiType'];
18
- export type DB_PermissionGroup = DB_Object & AuditableV2 & {
19
- projectId?: string;
20
- label: string;
21
- uiLabel: string;
22
- accessLevelIds: string[];
23
- _levelsMap?: TypedMap<number>;
24
- };
25
- export type DB_PermissionGroup_1_0_0 = DB_Object & AuditableV2 & {
26
- projectId?: string;
27
- label: string;
28
- accessLevelIds: string[];
29
- _levelsMap?: TypedMap<number>;
30
- };
31
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,5 +0,0 @@
1
- import { ApiDefResolver } from '@nu-art/thunderstorm-shared';
2
- export type ApiStruct_PermissionProject = {
3
- _v1: {};
4
- };
5
- export declare const ApiDef_PermissionProject: ApiDefResolver<ApiStruct_PermissionProject>;
@@ -1,3 +0,0 @@
1
- export const ApiDef_PermissionProject = {
2
- _v1: {}
3
- };
@@ -1,3 +0,0 @@
1
- import { DBDef_V3 } from '@nu-art/ts-common';
2
- import { DBProto_PermissionProject } from './types.js';
3
- export declare const DBDef_PermissionProject: DBDef_V3<DBProto_PermissionProject>;
@@ -1,3 +0,0 @@
1
- export * from './types.js';
2
- export * from './db-def.js';
3
- export * from './api-def.js';
@@ -1,4 +0,0 @@
1
- // Generated DB Item type: PermissionProject
2
- export * from './types.js';
3
- export * from './db-def.js';
4
- export * from './api-def.js';
@@ -1,15 +0,0 @@
1
- import { AuditableV2, DB_Object, DBProto, Proto_DB_Object, VersionsDeclaration } from '@nu-art/ts-common';
2
- type VersionTypes_PermissionProject = {
3
- '1.0.0': DB_PermissionProject;
4
- };
5
- type Versions = VersionsDeclaration<['1.0.0'], VersionTypes_PermissionProject>;
6
- type Dependencies = {};
7
- type UniqueKeys = '_id';
8
- type GeneratedProps = '_auditorId';
9
- type Proto = Proto_DB_Object<DB_PermissionProject, 'permissions--project', GeneratedProps, Versions, UniqueKeys, Dependencies>;
10
- export type DBProto_PermissionProject = DBProto<Proto>;
11
- export type UI_PermissionProject = DBProto_PermissionProject['uiType'];
12
- export type DB_PermissionProject = DB_Object & AuditableV2 & {
13
- name: string;
14
- };
15
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,12 +0,0 @@
1
- import { ApiDefResolver, BodyApi } from '@nu-art/thunderstorm-shared';
2
- export type Request_AssignPermissions = {
3
- projectId?: string;
4
- permissionGroupIds: string[];
5
- targetAccountIds: string[];
6
- };
7
- export type ApiStruct_PermissionUser = {
8
- _v1: {
9
- assignPermissions: BodyApi<void, Request_AssignPermissions>;
10
- };
11
- };
12
- export declare const ApiDef_PermissionUser: ApiDefResolver<ApiStruct_PermissionUser>;
@@ -1,6 +0,0 @@
1
- import { HttpMethod } from '@nu-art/thunderstorm-shared';
2
- export const ApiDef_PermissionUser = {
3
- _v1: {
4
- assignPermissions: { method: HttpMethod.POST, path: '/pah/permissions/assign/app-permissions' }
5
- }
6
- };
@@ -1,3 +0,0 @@
1
- import { DBDef_V3 } from '@nu-art/ts-common';
2
- import { DBProto_PermissionUser } from './types.js';
3
- export declare const DBDef_PermissionUser: DBDef_V3<DBProto_PermissionUser>;
@@ -1,31 +0,0 @@
1
- import { tsValidateArray, tsValidateString, tsValidateStringAndNumbersWithDashes } from '@nu-art/ts-common';
2
- import { PermissionDBGroup } from '../../consts.js';
3
- const Validator_ModifiableProps = {
4
- groups: tsValidateArray({
5
- groupId: tsValidateStringAndNumbersWithDashes,
6
- }, false),
7
- };
8
- const Validator_GeneratedProps = {
9
- __groupIds: tsValidateArray(tsValidateStringAndNumbersWithDashes, false),
10
- _auditorId: tsValidateString()
11
- };
12
- export const DBDef_PermissionUser = {
13
- modifiablePropsValidator: Validator_ModifiableProps,
14
- generatedPropsValidator: Validator_GeneratedProps,
15
- versions: ['1.0.0'],
16
- dbKey: 'permissions--user',
17
- entityName: 'PermissionUser',
18
- frontend: {
19
- group: PermissionDBGroup,
20
- name: 'user',
21
- },
22
- backend: {
23
- name: 'permissions--user'
24
- },
25
- dependencies: {
26
- '__groupIds': {
27
- fieldType: 'string[]',
28
- dbKey: 'permissions--group',
29
- }
30
- }
31
- };
@@ -1,3 +0,0 @@
1
- export * from './types.js';
2
- export * from './db-def.js';
3
- export * from './api-def.js';
@@ -1,4 +0,0 @@
1
- // Generated DB Item type: PermissionUser
2
- export * from './types.js';
3
- export * from './db-def.js';
4
- export * from './api-def.js';
@@ -1,22 +0,0 @@
1
- import { AuditableV2, DB_Object, DBProto, Proto_DB_Object, VersionsDeclaration } from '@nu-art/ts-common';
2
- import { DBProto_PermissionGroup } from '../permission-group/index.js';
3
- type VersionTypes_PermissionUser = {
4
- '1.0.0': DB_PermissionUser;
5
- };
6
- type Versions = VersionsDeclaration<['1.0.0'], VersionTypes_PermissionUser>;
7
- type Dependencies = {
8
- '__groupIds': DBProto_PermissionGroup;
9
- };
10
- type UniqueKeys = '_id';
11
- type GeneratedProps = '__groupIds' | '_auditorId';
12
- type Proto = Proto_DB_Object<DB_PermissionUser, 'permissions--user', GeneratedProps, Versions, UniqueKeys, Dependencies>;
13
- export type DBProto_PermissionUser = DBProto<Proto>;
14
- export type UI_PermissionUser = DBProto_PermissionUser['uiType'];
15
- export type User_Group = {
16
- groupId: string;
17
- };
18
- export type DB_PermissionUser = DB_Object & AuditableV2 & {
19
- groups: User_Group[];
20
- __groupIds?: string[];
21
- };
22
- export {};
@@ -1 +0,0 @@
1
- export {};
package/_entity.d.ts DELETED
@@ -1,6 +0,0 @@
1
- export * from './_entity/permission-access-level/index.js';
2
- export * from './_entity/permission-api/index.js';
3
- export * from './_entity/permission-project/index.js';
4
- export * from './_entity/permission-domain/index.js';
5
- export * from './_entity/permission-group/index.js';
6
- export * from './_entity/permission-user/index.js';
package/_entity.js DELETED
@@ -1,6 +0,0 @@
1
- export * from './_entity/permission-access-level/index.js';
2
- export * from './_entity/permission-api/index.js';
3
- export * from './_entity/permission-project/index.js';
4
- export * from './_entity/permission-domain/index.js';
5
- export * from './_entity/permission-group/index.js';
6
- export * from './_entity/permission-user/index.js';
package/apis.d.ts DELETED
@@ -1,75 +0,0 @@
1
- import { ApiDefResolver, BodyApi, QueryApi } from '@nu-art/thunderstorm-shared';
2
- import { PreDB, StringMap } from '@nu-art/ts-common';
3
- import { DB_PermissionProject } from './_entity.js';
4
- export type UserUrlsPermissions = {
5
- [url: string]: boolean;
6
- };
7
- export type Request_AssertApiForUser = {
8
- projectId: string;
9
- path: string;
10
- };
11
- export type Request_UserUrlsPermissions = {
12
- projectId: string;
13
- urls: UserUrlsPermissions;
14
- };
15
- export type Request_UserCFsByShareGroups = {
16
- groupsIds: string[];
17
- };
18
- export type Request_UsersCFsByShareGroups = Request_UserCFsByShareGroups & {
19
- usersEmails: string[];
20
- };
21
- export type Response_UsersCFsByShareGroups = {
22
- [userEmail: string]: StringMap[];
23
- };
24
- export type Request_AssignAppPermissions<T extends StringMap = StringMap> = {
25
- projectId: string;
26
- groupsToRemove: PredefinedGroup[];
27
- group: PredefinedGroup;
28
- customField: T;
29
- assertKeys?: (keyof T)[];
30
- customKey: string;
31
- sharedUserIds?: string[];
32
- appAccountId?: string;
33
- };
34
- export type AssignAppPermissions = Request_AssignAppPermissions & {
35
- granterUserId: string;
36
- };
37
- export type PredefinedGroup = {
38
- _id: string;
39
- key: string;
40
- label: string;
41
- customKeys?: string[];
42
- };
43
- export type PredefinedUser = {
44
- accountId: string;
45
- _id: string;
46
- groups: PredefinedGroup[];
47
- };
48
- export type Request_RegisterProject = {
49
- project: PreDB<DB_PermissionProject>;
50
- routes: string[];
51
- predefinedGroups?: PredefinedGroup[];
52
- predefinedUser?: PredefinedUser;
53
- };
54
- export type Response_User = {
55
- userId: string;
56
- };
57
- export type _ApiStruct_PermissionsUser = {
58
- pah: {
59
- assignAppPermissions: BodyApi<void, Request_AssignAppPermissions>;
60
- };
61
- };
62
- export declare const _ApiDef_PermissionUser: ApiDefResolver<_ApiStruct_PermissionsUser>;
63
- export type ApiStruct_PermissionsAssert = {
64
- vv1: {
65
- assertUserPermissions: BodyApi<Response_User, Request_AssertApiForUser>;
66
- };
67
- };
68
- export declare const ApiDef_PermissionsAssert: ApiDefResolver<ApiStruct_PermissionsAssert>;
69
- export type ApiStruct_Permissions = {
70
- v1: {
71
- toggleStrictMode: QueryApi<void>;
72
- createProject: QueryApi<void>;
73
- };
74
- };
75
- export declare const ApiDef_Permissions: ApiDefResolver<ApiStruct_Permissions>;
package/apis.js DELETED
@@ -1,42 +0,0 @@
1
- /*
2
- * Permissions management system, define access level for each of
3
- * your server apis, and restrict users by giving them access levels
4
- *
5
- * Copyright (C) 2020 Adam van der Kruk aka TacB0sS
6
- *
7
- * Licensed under the Apache License, Version 2.0 (the "License");
8
- * you may not use this file except in compliance with the License.
9
- * You may obtain a copy of the License at
10
- *
11
- * http://www.apache.org/licenses/LICENSE-2.0
12
- *
13
- * Unless required by applicable law or agreed to in writing, software
14
- * distributed under the License is distributed on an "AS IS" BASIS,
15
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- * See the License for the specific language governing permissions and
17
- * limitations under the License.
18
- */
19
- import { HttpMethod } from '@nu-art/thunderstorm-shared';
20
- import { Minute } from '@nu-art/ts-common';
21
- export const _ApiDef_PermissionUser = {
22
- pah: {
23
- assignAppPermissions: { method: HttpMethod.POST, path: '/v1/permissions/assign/app-permissions' }
24
- }
25
- };
26
- export const ApiDef_PermissionsAssert = {
27
- vv1: {
28
- assertUserPermissions: { method: HttpMethod.POST, path: 'v1/permissions/assert-user-access' }
29
- }
30
- };
31
- export const ApiDef_Permissions = {
32
- v1: {
33
- // getUserUrlsPermissions: {method: HttpMethod.POST, path: 'v1/permissions/user-urls-permissions'},
34
- // getUserCFsByShareGroups: {method: HttpMethod.POST, path: 'v1/user-custom-fields/user-cf-by-share-groups'},
35
- // getUsersCFsByShareGroups: {method: HttpMethod.POST, path: 'v1/user-custom-fields/users-cf-by-share-groups'},
36
- // registerExternalProject: {method: HttpMethod.POST, path: 'v1/register/register-external-project'},
37
- // registerProject: {method: HttpMethod.GET, path: 'v1/register/register-project'},
38
- toggleStrictMode: { method: HttpMethod.GET, path: 'v1/permissions/toggle-strict-mode', timeout: Minute },
39
- createProject: { method: HttpMethod.GET, path: 'v1/permissions/create-first-project', timeout: Minute },
40
- // connectDomainToRoutes: {method: HttpMethod.POST, path: 'v1/permissions/connect-domain-to-routes'},
41
- }
42
- };
@@ -1,4 +0,0 @@
1
- export declare const PermissionKey_DeveloperViewer = "permission-key--developer-viewer";
2
- export declare const PermissionKey_DeveloperWriter = "permission-key--developer-editor";
3
- export declare const PermissionKey_DeveloperAdmin = "permission-key--developer-admin";
4
- export declare const PermissionKey_AccountManagementAdmin = "permission-key--account-management-admin";
@@ -1,4 +0,0 @@
1
- export const PermissionKey_DeveloperViewer = 'permission-key--developer-viewer';
2
- export const PermissionKey_DeveloperWriter = 'permission-key--developer-editor';
3
- export const PermissionKey_DeveloperAdmin = 'permission-key--developer-admin';
4
- export const PermissionKey_AccountManagementAdmin = 'permission-key--account-management-admin';