@qrvey/assets-sharing 0.3.4-dev.2179 → 0.3.4-dev.2186

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.
@@ -1,45 +1,3 @@
1
- interface Pagination {
2
- limit: number;
3
- from?: number;
4
- }
5
- interface Filter {
6
- column: string;
7
- value: string;
8
- }
9
- interface ParamsFromTokenToUser {
10
- userId: string;
11
- roles: string[];
12
- orgId: string;
13
- }
14
- interface Sorting {
15
- column: string;
16
- direction: 'ASC' | 'DESC';
17
- }
18
- interface ListInput<T> {
19
- data: T;
20
- pagination?: Pagination;
21
- filters?: Array<Filter>;
22
- sorting?: Array<Sorting>;
23
- }
24
- interface ListOutput<T> {
25
- count: number;
26
- items: T[];
27
- pagination: Pagination;
28
- }
29
-
30
- interface UserToken {
31
- userId: string;
32
- clientId?: string;
33
- roles?: string[];
34
- orgId?: string;
35
- loginType?: string;
36
- }
37
-
38
- interface OrgTreeResult {
39
- privateIds: string[];
40
- publicIds: string[];
41
- }
42
-
43
1
  declare const ORGANIZATION_QRVEY = "org:0";
44
2
  declare const ORGANIZATION_ANONYMOUS = "anonymous";
45
3
  declare enum ASSET_TYPE {
@@ -71,12 +29,23 @@ declare enum ACCESS_LEVEL {
71
29
  CAN_EDIT = 2,
72
30
  ADMIN = 4
73
31
  }
32
+ /**
33
+ * Sharing Mode for assets.
34
+ * Those are calculated with Base 2, so:
35
+ * - PRIVATE = 0 (undefined)
36
+ * - SAME_AS_APP = 1 (2^0)
37
+ */
38
+ declare enum SHARING_MODE {
39
+ PRIVATE = 0,
40
+ SAME_AS_APP = 1
41
+ }
74
42
  declare enum APP_SHARING_STATUS {
75
43
  PUBLIC = "public",
76
- PRIVATE = "private"
44
+ PRIVATE = "private",
45
+ SHARED = "shared"
77
46
  }
78
- interface AppPermissionResponse {
79
- privacy: APP_SHARING_STATUS;
47
+ interface AppAccessResponse {
48
+ hasAccess: boolean;
80
49
  }
81
50
 
82
51
  interface BaseSharing {
@@ -85,7 +54,7 @@ interface BaseSharing {
85
54
  createdAt: string;
86
55
  updatedAt: string;
87
56
  deletedAt?: string;
88
- defaultAccessLevel?: number | null;
57
+ defaultAccessLevel?: SHARING_MODE | null;
89
58
  defaultContentSharingEnabled?: boolean;
90
59
  }
91
60
  type CreateSharing = Omit<BaseSharing, 'createdAt' | 'updatedAt' | 'deletedAt'>;
@@ -114,16 +83,56 @@ declare class Sharing {
114
83
  toPlain(): BaseSharing;
115
84
  toJSON(): ResponseSharing;
116
85
  set setDefaultContentSharingEnabled(defaultContentSharingEnabled: boolean);
117
- set setDefaultAccessLevel(defaultAccessLevel: number | null);
86
+ set setDefaultAccessLevel(defaultAccessLevel: SHARING_MODE | null);
118
87
  get getAssetId(): string;
119
88
  get getAssetType(): string;
120
89
  }
121
90
 
122
- interface UpsertDefaultSharingInterface {
123
- assetId: string;
124
- assetType: ASSET_TYPE;
125
- contentSharingEnabled?: boolean;
126
- defaultAccessLevel?: number | null;
91
+ interface Pagination {
92
+ limit: number;
93
+ from?: number;
94
+ }
95
+ interface Filter {
96
+ column: string;
97
+ value: string;
98
+ }
99
+ interface ParamsFromTokenToUser {
100
+ userId: string;
101
+ roles: string[];
102
+ orgId: string;
103
+ }
104
+ interface Sorting {
105
+ column: string;
106
+ direction: 'ASC' | 'DESC';
107
+ }
108
+ interface ListInput<T> {
109
+ data: T;
110
+ pagination?: Pagination;
111
+ filters?: Array<Filter>;
112
+ sorting?: Array<Sorting>;
113
+ }
114
+ interface ListOutput<T> {
115
+ count: number;
116
+ items: T[];
117
+ pagination: Pagination;
118
+ }
119
+
120
+ interface UserToken {
121
+ userId: string;
122
+ clientId?: string;
123
+ roles?: string[];
124
+ orgId?: string;
125
+ loginType?: string;
126
+ }
127
+
128
+ declare enum HIERARCHY_SCOPE {
129
+ CHILDREN = "children",
130
+ PARENTS = "parents",
131
+ BOTH = "both"
132
+ }
133
+ interface OrgHierarchyResult {
134
+ childrenIds: string[];
135
+ parentIds: string[];
127
136
  }
128
137
 
129
138
  interface Delete {
@@ -180,9 +189,6 @@ declare const api: {
180
189
  delete: (args_0: {
181
190
  body: Delete;
182
191
  }) => Promise<boolean | null>;
183
- upsertDefaultSharing: (args_0: {
184
- body: UpsertDefaultSharingInterface;
185
- }) => Promise<Sharing>;
186
192
  };
187
193
  declare const checkUserAccessLevel: (args_0: {
188
194
  assetId: string;
@@ -195,14 +201,11 @@ declare const checkUserAccessLevel: (args_0: {
195
201
  level: ACCESS_LEVEL;
196
202
  levelAsText: string;
197
203
  }>;
198
- declare const checkAppPermissions: (args_0: {
204
+ declare const checkAppAccess: (args_0: {
199
205
  appId: string;
200
206
  userId: string;
201
- }) => Promise<AppPermissionResponse>;
202
- declare const checkOrgPermissions: (args_0: {
203
- orgId: string;
204
- }) => Promise<AppPermissionResponse>;
205
- declare const getOrgTree: (orgId: string, contentSharingStatus?: boolean | undefined) => Promise<OrgTreeResult>;
207
+ }) => Promise<AppAccessResponse>;
208
+ declare const getOrgTree: (orgId: string, scope?: HIERARCHY_SCOPE | undefined) => Promise<OrgHierarchyResult>;
206
209
  declare const fromTokenToUser: (args_0: {
207
210
  body: UserToken;
208
211
  }) => Promise<ParamsFromTokenToUser>;
@@ -213,5 +216,11 @@ declare const hasAdminRole: (args_0?: {
213
216
  userId?: string;
214
217
  loginType?: string;
215
218
  } | undefined) => Promise<boolean>;
219
+ declare const upsertDefaultSharing: (args_0: {
220
+ assetId: string;
221
+ assetType: ASSET_TYPE;
222
+ sharingMode?: SHARING_MODE;
223
+ contentSharingEnabled?: boolean;
224
+ }) => Promise<Sharing>;
216
225
 
217
- export { ACCESS_LEVEL, APP_SHARING_STATUS, ASSET_TYPE, type GetSharingList, ORGANIZATION_ANONYMOUS, ORGANIZATION_QRVEY, SHARED_ORIGIN, SHARE_TYPE, api, checkAppPermissions, checkOrgPermissions, checkUserAccessLevel, fromTokenToUser, getOrgTree, hasAdminRole };
226
+ export { ACCESS_LEVEL, APP_SHARING_STATUS, ASSET_TYPE, type GetSharingList, HIERARCHY_SCOPE, ORGANIZATION_ANONYMOUS, ORGANIZATION_QRVEY, SHARED_ORIGIN, SHARE_TYPE, SHARING_MODE, api, checkAppAccess, checkUserAccessLevel, fromTokenToUser, getOrgTree, hasAdminRole, upsertDefaultSharing };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qrvey/assets-sharing",
3
- "version": "0.3.4-dev.2179",
3
+ "version": "0.3.4-dev.2186",
4
4
  "types": "dist/types/index.d.ts",
5
5
  "main": "dist/cjs/index.js",
6
6
  "exports": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkAppPermissions.js","sourceRoot":"","sources":["../../../../src/sharing/services/checkAppPermissions.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,uCAA8C;AAE9C,sDAGgC;AAIjB,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IACpC,YAEqB,eAAyC;QAAzC,oBAAe,GAAf,eAAe,CAA0B;IAC3D,CAAC;IAEJ,gBAAgB;IAChB,KAAK,CAAC,OAAO,CAAC,EACV,KAAK,EACL,MAAM,GAIT;QACG,mDAAmD;QACnD,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,OAAO,EAAE,8BAAkB,CAAC,OAAO,EAAE,CAAC;QAE5D,yEAAyE;QACzE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;YAC1D,KAAK;YACL,MAAM;SACT,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,wBAAwB,EAAE,CAAC;QAEvE,2DAA2D;QAC3D,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG;YACtB,OAAO,EAAE,OAAO,EAAE,8BAAkB,CAAC,OAAO,EAAE,CAAC;QAEnD,0HAA0H;QAC1H,MAAM,eAAe,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,CAAC;QAE7C,MAAM,OAAO,GAAG,eAAe;YAC3B,CAAC,CAAC,8BAAkB,CAAC,MAAM;YAC3B,CAAC,CAAC,8BAAkB,CAAC,OAAO,CAAC;QAEjC,OAAO,EAAE,OAAO,EAAE,CAAC;IACvB,CAAC;CACJ,CAAA;AArCoB,mBAAmB;IADvC,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,iBAAiB,CAAC,CAAA;GAFb,mBAAmB,CAqCvC;kBArCoB,mBAAmB"}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __param = (this && this.__param) || function (paramIndex, decorator) {
9
- return function (target, key) { decorator(target, key, paramIndex); }
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const tsyringe_1 = require("tsyringe");
13
- const constants_1 = require("../../common/constants");
14
- let CheckOrgPermissions = class CheckOrgPermissions {
15
- constructor(organizationRepository) {
16
- this.organizationRepository = organizationRepository;
17
- }
18
- //TODO Need Tes
19
- async execute({ orgId, }) {
20
- const hasPublicAccess = await this.organizationRepository.getOne(orgId);
21
- const privacy = (hasPublicAccess === null || hasPublicAccess === void 0 ? void 0 : hasPublicAccess.effective_content_privacy)
22
- ? constants_1.APP_SHARING_STATUS.PRIVATE
23
- : constants_1.APP_SHARING_STATUS.PUBLIC;
24
- return { privacy };
25
- }
26
- };
27
- CheckOrgPermissions = __decorate([
28
- (0, tsyringe_1.injectable)(),
29
- __param(0, (0, tsyringe_1.inject)('OrganizationRepository'))
30
- ], CheckOrgPermissions);
31
- exports.default = CheckOrgPermissions;
32
- //# sourceMappingURL=checkOrgPermissions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkOrgPermissions.js","sourceRoot":"","sources":["../../../../src/sharing/services/checkOrgPermissions.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,uCAA8C;AAE9C,sDAGgC;AAIjB,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IACpC,YAEqB,sBAAuD;QAAvD,2BAAsB,GAAtB,sBAAsB,CAAiC;IACzE,CAAC;IAEJ,eAAe;IACf,KAAK,CAAC,OAAO,CAAC,EACV,KAAK,GAGR;QACG,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,yBAAyB;YACtD,CAAC,CAAC,8BAAkB,CAAC,OAAO;YAC5B,CAAC,CAAC,8BAAkB,CAAC,MAAM,CAAC;QAEhC,OAAO,EAAE,OAAO,EAAE,CAAC;IACvB,CAAC;CACJ,CAAA;AAnBoB,mBAAmB;IADvC,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,wBAAwB,CAAC,CAAA;GAFpB,mBAAmB,CAmBvC;kBAnBoB,mBAAmB"}