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

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 (101) hide show
  1. package/dist/cjs/common/common.type.js +3 -0
  2. package/dist/cjs/common/common.type.js.map +1 -0
  3. package/dist/cjs/common/constants.js +56 -0
  4. package/dist/cjs/common/constants.js.map +1 -0
  5. package/dist/cjs/common/persistence/base.js +15 -0
  6. package/dist/cjs/common/persistence/base.js.map +1 -0
  7. package/dist/cjs/common/persistence/poolClient.js +11 -0
  8. package/dist/cjs/common/persistence/poolClient.js.map +1 -0
  9. package/dist/cjs/common/util.js +12 -0
  10. package/dist/cjs/common/util.js.map +1 -0
  11. package/dist/cjs/context.js +22 -0
  12. package/dist/cjs/context.js.map +1 -0
  13. package/dist/cjs/index.js +45 -0
  14. package/dist/cjs/index.js.map +1 -0
  15. package/dist/cjs/quser/entities/types/user.type.js +3 -0
  16. package/dist/cjs/quser/entities/types/user.type.js.map +1 -0
  17. package/dist/cjs/quser/entities/user.js +25 -0
  18. package/dist/cjs/quser/entities/user.js.map +1 -0
  19. package/dist/cjs/quser/implementations/group.model.js +19 -0
  20. package/dist/cjs/quser/implementations/group.model.js.map +1 -0
  21. package/dist/cjs/quser/implementations/group.repository.js +19 -0
  22. package/dist/cjs/quser/implementations/group.repository.js.map +1 -0
  23. package/dist/cjs/quser/implementations/user.model.js +24 -0
  24. package/dist/cjs/quser/implementations/user.model.js.map +1 -0
  25. package/dist/cjs/quser/implementations/user.repository.js +29 -0
  26. package/dist/cjs/quser/implementations/user.repository.js.map +1 -0
  27. package/dist/cjs/quser/interfaces/rolesRepository.interface.js +3 -0
  28. package/dist/cjs/quser/interfaces/rolesRepository.interface.js.map +1 -0
  29. package/dist/cjs/quser/interfaces/userRepository.interface.js +3 -0
  30. package/dist/cjs/quser/interfaces/userRepository.interface.js.map +1 -0
  31. package/dist/cjs/quser/services/fromTokenToUser.js +52 -0
  32. package/dist/cjs/quser/services/fromTokenToUser.js.map +1 -0
  33. package/dist/cjs/quser/services/hasAdminRole.js +48 -0
  34. package/dist/cjs/quser/services/hasAdminRole.js.map +1 -0
  35. package/dist/cjs/sharing/entities/details.js +109 -0
  36. package/dist/cjs/sharing/entities/details.js.map +1 -0
  37. package/dist/cjs/sharing/entities/sharing.js +72 -0
  38. package/dist/cjs/sharing/entities/sharing.js.map +1 -0
  39. package/dist/cjs/sharing/entities/types/details.type.js +3 -0
  40. package/dist/cjs/sharing/entities/types/details.type.js.map +1 -0
  41. package/dist/cjs/sharing/entities/types/orgTreeResult.js +3 -0
  42. package/dist/cjs/sharing/entities/types/orgTreeResult.js.map +1 -0
  43. package/dist/cjs/sharing/entities/types/organization.type.js +3 -0
  44. package/dist/cjs/sharing/entities/types/organization.type.js.map +1 -0
  45. package/dist/cjs/sharing/entities/types/sharing.type.js +3 -0
  46. package/dist/cjs/sharing/entities/types/sharing.type.js.map +1 -0
  47. package/dist/cjs/sharing/implementations/admin.repository.js +47 -0
  48. package/dist/cjs/sharing/implementations/admin.repository.js.map +1 -0
  49. package/dist/cjs/sharing/implementations/details.model.js +93 -0
  50. package/dist/cjs/sharing/implementations/details.model.js.map +1 -0
  51. package/dist/cjs/sharing/implementations/details.repository.js +114 -0
  52. package/dist/cjs/sharing/implementations/details.repository.js.map +1 -0
  53. package/dist/cjs/sharing/implementations/dm.model.js +22 -0
  54. package/dist/cjs/sharing/implementations/dm.model.js.map +1 -0
  55. package/dist/cjs/sharing/implementations/dm.repository.js +20 -0
  56. package/dist/cjs/sharing/implementations/dm.repository.js.map +1 -0
  57. package/dist/cjs/sharing/implementations/dx.model.js +30 -0
  58. package/dist/cjs/sharing/implementations/dx.model.js.map +1 -0
  59. package/dist/cjs/sharing/implementations/dx.repository.js +21 -0
  60. package/dist/cjs/sharing/implementations/dx.repository.js.map +1 -0
  61. package/dist/cjs/sharing/implementations/organization.model.js +31 -0
  62. package/dist/cjs/sharing/implementations/organization.model.js.map +1 -0
  63. package/dist/cjs/sharing/implementations/organization.repository.js +66 -0
  64. package/dist/cjs/sharing/implementations/organization.repository.js.map +1 -0
  65. package/dist/cjs/sharing/implementations/sharing.model.js +35 -0
  66. package/dist/cjs/sharing/implementations/sharing.model.js.map +1 -0
  67. package/dist/cjs/sharing/implementations/sharing.repository.js +31 -0
  68. package/dist/cjs/sharing/implementations/sharing.repository.js.map +1 -0
  69. package/dist/cjs/sharing/interfaces/adminRepository.interface.js +3 -0
  70. package/dist/cjs/sharing/interfaces/adminRepository.interface.js.map +1 -0
  71. package/dist/cjs/sharing/interfaces/dashboardRepository.interface.js +3 -0
  72. package/dist/cjs/sharing/interfaces/dashboardRepository.interface.js.map +1 -0
  73. package/dist/cjs/sharing/interfaces/detailsRepository.interface.js +3 -0
  74. package/dist/cjs/sharing/interfaces/detailsRepository.interface.js.map +1 -0
  75. package/dist/cjs/sharing/interfaces/downloadManagerRepository.interface.js +3 -0
  76. package/dist/cjs/sharing/interfaces/downloadManagerRepository.interface.js.map +1 -0
  77. package/dist/cjs/sharing/interfaces/organizationRepository.interface.js +3 -0
  78. package/dist/cjs/sharing/interfaces/organizationRepository.interface.js.map +1 -0
  79. package/dist/cjs/sharing/interfaces/sharingRepository.interface.js +3 -0
  80. package/dist/cjs/sharing/interfaces/sharingRepository.interface.js.map +1 -0
  81. package/dist/cjs/sharing/services/checkAppPermissions.js +45 -0
  82. package/dist/cjs/sharing/services/checkAppPermissions.js.map +1 -0
  83. package/dist/cjs/sharing/services/checkOrgPermissions.js +32 -0
  84. package/dist/cjs/sharing/services/checkOrgPermissions.js.map +1 -0
  85. package/dist/cjs/sharing/services/checkUserAccessLevel.js +58 -0
  86. package/dist/cjs/sharing/services/checkUserAccessLevel.js.map +1 -0
  87. package/dist/cjs/sharing/services/delete.js +32 -0
  88. package/dist/cjs/sharing/services/delete.js.map +1 -0
  89. package/dist/cjs/sharing/services/getOrgTree.js +26 -0
  90. package/dist/cjs/sharing/services/getOrgTree.js.map +1 -0
  91. package/dist/cjs/sharing/services/list.js +44 -0
  92. package/dist/cjs/sharing/services/list.js.map +1 -0
  93. package/dist/cjs/sharing/services/upsert.js +135 -0
  94. package/dist/cjs/sharing/services/upsert.js.map +1 -0
  95. package/dist/cjs/sharing/services/upsertDefaultSharing.js +48 -0
  96. package/dist/cjs/sharing/services/upsertDefaultSharing.js.map +1 -0
  97. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  98. package/dist/esm/index.mjs +1251 -0
  99. package/dist/esm/index.mjs.map +1 -0
  100. package/dist/types/index.d.ts +217 -0
  101. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharing.model.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/sharing.model.ts"],"names":[],"mappings":";;;AAAA,8DAAqD;AAErD,sDAAuD;AAEvD,MAAa,YAAa,SAAQ,6BAAU;;AAA5C,oCA8BC;AA7BmB,kBAAK,GAAG;IACpB,IAAI,EAAE,GAAG,yBAAa,CAAC,aAAa,UAAU;IAC9C,KAAK,EAAE,GAAG,yBAAa,CAAC,YAAY,UAAU;CACjD,CAAC;AAEc,oBAAO,GAAG;IACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC9B,+BAA+B,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IACpD,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACxC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;CACnC,CAAC;AAEc,oBAAO,GAAG;IACtB,mBAAmB,EAAE;QACjB,IAAI,EAAE,2BAA2B;QACjC,OAAO,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC;KACtC;IACD,gBAAgB,EAAE;QACd,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,CAAC,YAAY,CAAC;KAC1B;CACJ,CAAC;AAEc,mBAAM,GAAG,yBAAa,CAAC,uBAAuB,CAAC;AAC/C,oBAAO,GAAG,IAAI,CAAC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SharingRepository = void 0;
4
+ const sharing_model_1 = require("./sharing.model");
5
+ const base_1 = require("../../common/persistence/base");
6
+ class SharingRepository extends base_1.BaseRepository {
7
+ constructor() {
8
+ super(sharing_model_1.SharingModel);
9
+ }
10
+ async getOne(assetId) {
11
+ const params = {
12
+ filters: [this.filter('asset_id', assetId)],
13
+ };
14
+ const response = await super.findItem(params);
15
+ return response;
16
+ }
17
+ async create(sharing) {
18
+ const response = (await super.create(sharing));
19
+ return response;
20
+ }
21
+ async patch(assetId, sharing) {
22
+ await super.update([this.filter('asset_id', assetId)], sharing);
23
+ return true;
24
+ }
25
+ async delete(assetId) {
26
+ await super.remove([this.filter('asset_id', assetId)]);
27
+ return true;
28
+ }
29
+ }
30
+ exports.SharingRepository = SharingRepository;
31
+ //# sourceMappingURL=sharing.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharing.repository.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/sharing.repository.ts"],"names":[],"mappings":";;;AAAA,mDAA+C;AAC/C,wDAA+D;AAI/D,MAAa,iBACT,SAAQ,qBAAc;IAGtB;QACI,KAAK,CAAC,4BAAY,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe;QACxB,MAAM,MAAM,GAAG;YACX,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;SAC9C,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,QAAwB,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAqB;QAC9B,MAAM,QAAQ,GAAG,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAiB,CAAC;QAC/D,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAe,EAAE,OAAqB;QAC9C,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe;QACxB,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AA9BD,8CA8BC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=adminRepository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adminRepository.interface.js","sourceRoot":"","sources":["../../../../src/sharing/interfaces/adminRepository.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=dashboardRepository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboardRepository.interface.js","sourceRoot":"","sources":["../../../../src/sharing/interfaces/dashboardRepository.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=detailsRepository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detailsRepository.interface.js","sourceRoot":"","sources":["../../../../src/sharing/interfaces/detailsRepository.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=downloadManagerRepository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"downloadManagerRepository.interface.js","sourceRoot":"","sources":["../../../../src/sharing/interfaces/downloadManagerRepository.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=organizationRepository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organizationRepository.interface.js","sourceRoot":"","sources":["../../../../src/sharing/interfaces/organizationRepository.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=sharingRepository.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharingRepository.interface.js","sourceRoot":"","sources":["../../../../src/sharing/interfaces/sharingRepository.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,45 @@
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 CheckAppPermissions = class CheckAppPermissions {
15
+ constructor(adminRepository) {
16
+ this.adminRepository = adminRepository;
17
+ }
18
+ //TODO Need Test
19
+ async execute({ appId, userId, }) {
20
+ // If no user is available, block access by default
21
+ if (!userId)
22
+ return { privacy: constants_1.APP_SHARING_STATUS.PRIVATE };
23
+ // Fetch application status and global platform configuration in parallel
24
+ const appInfo = await this.adminRepository.getApplicationInfo({
25
+ appId,
26
+ userId,
27
+ });
28
+ const platform = await this.adminRepository.getPlatformConfiguration();
29
+ // Check if the application is shared with the current user
30
+ if (appInfo.status !== 200)
31
+ return { privacy: constants_1.APP_SHARING_STATUS.PRIVATE };
32
+ // According to QRV-297, the LegacyMode ON will have public access, in future implementation, other options will be added.
33
+ const hasPublicAccess = platform === null || platform === void 0 ? void 0 : platform.legacyMode;
34
+ const privacy = hasPublicAccess
35
+ ? constants_1.APP_SHARING_STATUS.PUBLIC
36
+ : constants_1.APP_SHARING_STATUS.PRIVATE;
37
+ return { privacy };
38
+ }
39
+ };
40
+ CheckAppPermissions = __decorate([
41
+ (0, tsyringe_1.injectable)(),
42
+ __param(0, (0, tsyringe_1.inject)('AdminRepository'))
43
+ ], CheckAppPermissions);
44
+ exports.default = CheckAppPermissions;
45
+ //# sourceMappingURL=checkAppPermissions.js.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,32 @@
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
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,58 @@
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
+ exports.CheckUserAccessLevel = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ const constants_1 = require("../../common/constants");
15
+ const index_1 = require("../../index");
16
+ const details_1 = require("../entities/details");
17
+ let CheckUserAccessLevel = class CheckUserAccessLevel {
18
+ constructor(detailsRepository) {
19
+ this.detailsRepository = detailsRepository;
20
+ }
21
+ async execute({ userId, assetId, clientId, loginType, roles, orgId, }) {
22
+ const user = await (0, index_1.fromTokenToUser)({
23
+ body: { userId, clientId, roles, orgId, loginType },
24
+ });
25
+ const details = await this.detailsRepository.getList({
26
+ data: { assetId, user },
27
+ sorting: [{ column: 'access_level', direction: 'DESC' }],
28
+ });
29
+ if (details.items.length === 0)
30
+ return { level: constants_1.ACCESS_LEVEL.NONE, levelAsText: 'NONE' };
31
+ const priority = {
32
+ [constants_1.SHARE_TYPE.USER]: 3,
33
+ [constants_1.SHARE_TYPE.ROLE]: 2,
34
+ [constants_1.SHARE_TYPE.ORGANIZATION]: 1,
35
+ };
36
+ const priorityDetail = details.items.reduce((best, current) => {
37
+ const bestPriority = priority[best.shared_type];
38
+ const currentPriority = priority[current.shared_type];
39
+ const isBetter = currentPriority > bestPriority ||
40
+ (currentPriority === bestPriority &&
41
+ current.access_level > best.access_level);
42
+ if (isBetter)
43
+ return current;
44
+ return best;
45
+ });
46
+ const currentDetail = details_1.SharingDetail.parse(priorityDetail);
47
+ return {
48
+ level: currentDetail.getAccessLevel,
49
+ levelAsText: currentDetail.getAccessLevelAsText,
50
+ };
51
+ }
52
+ };
53
+ exports.CheckUserAccessLevel = CheckUserAccessLevel;
54
+ exports.CheckUserAccessLevel = CheckUserAccessLevel = __decorate([
55
+ (0, tsyringe_1.injectable)(),
56
+ __param(0, (0, tsyringe_1.inject)('SharingDetailsRepository'))
57
+ ], CheckUserAccessLevel);
58
+ //# sourceMappingURL=checkUserAccessLevel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkUserAccessLevel.js","sourceRoot":"","sources":["../../../../src/sharing/services/checkUserAccessLevel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA8C;AAE9C,sDAAkE;AAClE,uCAA8C;AAC9C,iDAAoD;AAI7C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC7B,YAEqB,iBAAoD;QAApD,sBAAiB,GAAjB,iBAAiB,CAAmC;IACtE,CAAC;IAEG,KAAK,CAAC,OAAO,CAAC,EACjB,MAAM,EACN,OAAO,EACP,QAAQ,EACR,SAAS,EACT,KAAK,EACL,KAAK,GAQR;QACG,MAAM,IAAI,GAAG,MAAM,IAAA,uBAAe,EAAC;YAC/B,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE;SACtD,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;YACjD,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YACvB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;SAC3D,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YAC1B,OAAO,EAAE,KAAK,EAAE,wBAAY,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;QAE7D,MAAM,QAAQ,GAAG;YACb,CAAC,sBAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB,CAAC,sBAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB,CAAC,sBAAU,CAAC,YAAY,CAAC,EAAE,CAAC;SAC/B,CAAC;QACF,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;YAC1D,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAyB,CAAC,CAAC;YAC9D,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAyB,CAAC,CAAC;YACpE,MAAM,QAAQ,GACV,eAAe,GAAG,YAAY;gBAC9B,CAAC,eAAe,KAAK,YAAY;oBAC7B,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;YAElD,IAAI,QAAQ;gBAAE,OAAO,OAAO,CAAC;YAC7B,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,uBAAa,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC1D,OAAO;YACH,KAAK,EAAE,aAAa,CAAC,cAAc;YACnC,WAAW,EAAE,aAAa,CAAC,oBAAoB;SAClD,CAAC;IACN,CAAC;CACJ,CAAA;AAtDY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,0BAA0B,CAAC,CAAA;GAF9B,oBAAoB,CAsDhC"}
@@ -0,0 +1,32 @@
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
+ exports.DeleteSharing = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ let DeleteSharing = class DeleteSharing {
15
+ constructor(sharingRepository) {
16
+ this.sharingRepository = sharingRepository;
17
+ }
18
+ async execute({ body }) {
19
+ const { assetId } = body;
20
+ const sharing = await this.sharingRepository.getOne(assetId);
21
+ if (!sharing)
22
+ return null;
23
+ const detailSharing = await this.sharingRepository.delete(assetId);
24
+ return detailSharing;
25
+ }
26
+ };
27
+ exports.DeleteSharing = DeleteSharing;
28
+ exports.DeleteSharing = DeleteSharing = __decorate([
29
+ (0, tsyringe_1.injectable)(),
30
+ __param(0, (0, tsyringe_1.inject)('SharingRepository'))
31
+ ], DeleteSharing);
32
+ //# sourceMappingURL=delete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../src/sharing/services/delete.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA8C;AASvC,IAAM,aAAa,GAAnB,MAAM,aAAa;IACtB,YAEqB,iBAA6C;QAA7C,sBAAiB,GAAjB,iBAAiB,CAA4B;IAC/D,CAAC;IAEG,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAoB;QAC3C,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QACzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE7D,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnE,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ,CAAA;AAdY,sCAAa;wBAAb,aAAa;IADzB,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,mBAAmB,CAAC,CAAA;GAFvB,aAAa,CAczB"}
@@ -0,0 +1,26 @@
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
+ let GetOrgTree = class GetOrgTree {
14
+ constructor(organizationRepository) {
15
+ this.organizationRepository = organizationRepository;
16
+ }
17
+ async execute(orgId, contentSharingStatus) {
18
+ return this.organizationRepository.getOrgTree(orgId, contentSharingStatus);
19
+ }
20
+ };
21
+ GetOrgTree = __decorate([
22
+ (0, tsyringe_1.injectable)(),
23
+ __param(0, (0, tsyringe_1.inject)('OrganizationRepository'))
24
+ ], GetOrgTree);
25
+ exports.default = GetOrgTree;
26
+ //# sourceMappingURL=getOrgTree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOrgTree.js","sourceRoot":"","sources":["../../../../src/sharing/services/getOrgTree.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,uCAA8C;AAM/B,IAAM,UAAU,GAAhB,MAAM,UAAU;IAC3B,YAEqB,sBAAuD;QAAvD,2BAAsB,GAAtB,sBAAsB,CAAiC;IACzE,CAAC;IAEJ,KAAK,CAAC,OAAO,CACT,KAAa,EACb,oBAA8B;QAE9B,OAAO,IAAI,CAAC,sBAAsB,CAAC,UAAU,CACzC,KAAK,EACL,oBAAoB,CACvB,CAAC;IACN,CAAC;CACJ,CAAA;AAfoB,UAAU;IAD9B,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,wBAAwB,CAAC,CAAA;GAFpB,UAAU,CAe9B;kBAfoB,UAAU"}
@@ -0,0 +1,44 @@
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
+ exports.ListSharing = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ const details_1 = require("../entities/details");
15
+ let ListSharing = class ListSharing {
16
+ constructor(sharingRepository, detailsRepository) {
17
+ this.sharingRepository = sharingRepository;
18
+ this.detailsRepository = detailsRepository;
19
+ }
20
+ async execute({ body, }) {
21
+ var _a;
22
+ const { data: { assetId }, pagination, } = body;
23
+ const sharing = await this.sharingRepository.getOne(assetId);
24
+ if (!sharing)
25
+ return null;
26
+ const sorting = body.sorting && ((_a = body.sorting) === null || _a === void 0 ? void 0 : _a.length) > 0
27
+ ? body.sorting
28
+ : [{ column: 'created_at', direction: 'ASC' }];
29
+ const detailSharing = await this.detailsRepository.getList({
30
+ data: { assetId },
31
+ pagination,
32
+ sorting,
33
+ });
34
+ const items = detailSharing.items.map((item) => details_1.SharingDetail.parse(item).toJSON());
35
+ return Object.assign(Object.assign({}, detailSharing), { items });
36
+ }
37
+ };
38
+ exports.ListSharing = ListSharing;
39
+ exports.ListSharing = ListSharing = __decorate([
40
+ (0, tsyringe_1.injectable)(),
41
+ __param(0, (0, tsyringe_1.inject)('SharingRepository')),
42
+ __param(1, (0, tsyringe_1.inject)('SharingDetailsRepository'))
43
+ ], ListSharing);
44
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/sharing/services/list.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA8C;AAG9C,iDAAoD;AAU7C,IAAM,WAAW,GAAjB,MAAM,WAAW;IACpB,YAEqB,iBAA6C,EAE7C,iBAAoD;QAFpD,sBAAiB,GAAjB,iBAAiB,CAA4B;QAE7C,sBAAiB,GAAjB,iBAAiB,CAAmC;IACtE,CAAC;IAEG,KAAK,CAAC,OAAO,CAAC,EACjB,IAAI,GAGP;;QACG,MAAM,EACF,IAAI,EAAE,EAAE,OAAO,EAAE,EACjB,UAAU,GACb,GAAG,IAAI,CAAC;QACT,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE7D,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE1B,MAAM,OAAO,GACT,IAAI,CAAC,OAAO,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,IAAG,CAAC;YACpC,CAAC,CAAC,IAAI,CAAC,OAAO;YACd,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAEvD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;YACvD,IAAI,EAAE,EAAE,OAAO,EAAE;YACjB,UAAU;YACV,OAAO;SACV,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3C,uBAAa,CAAC,KAAK,CAAC,IAA2B,CAAC,CAAC,MAAM,EAAE,CAC5D,CAAC;QACF,uCACO,aAAa,KAChB,KAAK,IACP;IACN,CAAC;CACJ,CAAA;AAvCY,kCAAW;sBAAX,WAAW;IADvB,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,mBAAmB,CAAC,CAAA;IAE3B,WAAA,IAAA,iBAAM,EAAC,0BAA0B,CAAC,CAAA;GAJ9B,WAAW,CAuCvB"}
@@ -0,0 +1,135 @@
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
+ exports.UpsertSharing = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ const constants_1 = require("../../common/constants");
15
+ const details_1 = require("../entities/details");
16
+ const sharing_1 = require("../entities/sharing");
17
+ let UpsertSharing = class UpsertSharing {
18
+ constructor(sharingRepository, detailsRepository, dxRepository, dmRepository, userRepository, roleRepository) {
19
+ this.sharingRepository = sharingRepository;
20
+ this.detailsRepository = detailsRepository;
21
+ this.dxRepository = dxRepository;
22
+ this.dmRepository = dmRepository;
23
+ this.userRepository = userRepository;
24
+ this.roleRepository = roleRepository;
25
+ }
26
+ async execute({ body, }) {
27
+ const assetId = body.assetId;
28
+ const isValidAsset = await this.validateIfAssetExists(assetId, body.assetType);
29
+ if (!isValidAsset)
30
+ throw new Error(`Asset with ID ${assetId} not found`);
31
+ const sharing = await this.sharingRepository.getOne(assetId);
32
+ let currentSharing;
33
+ if (sharing) {
34
+ currentSharing = sharing_1.Sharing.parse(sharing);
35
+ }
36
+ else {
37
+ const createSharing = {
38
+ assetId,
39
+ assetType: body.assetType,
40
+ };
41
+ currentSharing = sharing_1.Sharing.create(createSharing);
42
+ await this.sharingRepository.create(currentSharing.toTable());
43
+ }
44
+ let updatedList = [];
45
+ if (body.add)
46
+ updatedList = await this.addDetails(assetId, body.add);
47
+ if (body.remove)
48
+ await this.removeDetails(body.remove);
49
+ currentSharing.update();
50
+ await this.sharingRepository.patch(currentSharing.getAssetId, currentSharing.toTable());
51
+ return updatedList.map((detail) => detail.toJSON());
52
+ }
53
+ async validateIfAssetExists(assetId, assetType) {
54
+ switch (assetType) {
55
+ case constants_1.ASSET_TYPE.DX: {
56
+ const result = await this.dxRepository.get(assetId);
57
+ if (result)
58
+ return true;
59
+ return false;
60
+ }
61
+ case constants_1.ASSET_TYPE.DM: {
62
+ return true;
63
+ }
64
+ default:
65
+ return false;
66
+ }
67
+ }
68
+ async addDetails(assetId, list) {
69
+ const sharingList = [];
70
+ for (const detail of list) {
71
+ const currentDetail = await this.addSpecificDetail(assetId, detail);
72
+ if (currentDetail)
73
+ sharingList.push(currentDetail);
74
+ }
75
+ return sharingList;
76
+ }
77
+ async addSpecificDetail(assetId, detail) {
78
+ var _a;
79
+ let currentDetail;
80
+ const isValid = await this.validateIfSharedWithExist(detail);
81
+ if (!isValid)
82
+ return null;
83
+ let sharingDetail = await this.detailsRepository.getBySharedWith(assetId, detail.sharedWith);
84
+ if (!sharingDetail && detail.sharedId) {
85
+ sharingDetail = await this.detailsRepository.getOne(detail.sharedId);
86
+ }
87
+ if (sharingDetail) {
88
+ currentDetail = details_1.SharingDetail.parse(sharingDetail);
89
+ currentDetail.update(detail);
90
+ await this.detailsRepository.patch(currentDetail.getSharingDetailsId, currentDetail.toTable());
91
+ }
92
+ else {
93
+ const createDetails = Object.assign({ assetId: assetId, orgId: (_a = detail.orgId) !== null && _a !== void 0 ? _a : constants_1.ORGANIZATION_QRVEY }, detail);
94
+ currentDetail = details_1.SharingDetail.create(createDetails);
95
+ await this.detailsRepository.create(currentDetail.toTable());
96
+ }
97
+ return currentDetail;
98
+ }
99
+ async validateIfSharedWithExist(detail) {
100
+ if (detail.sharedOrigin === constants_1.SHARED_ORIGIN.EXTERNAL ||
101
+ detail.sharedOrigin === constants_1.SHARED_ORIGIN.UNKNOWN)
102
+ return true;
103
+ const isQrveyOrg = detail.sharedType === constants_1.SHARE_TYPE.ORGANIZATION &&
104
+ detail.sharedWith === constants_1.ORGANIZATION_QRVEY;
105
+ if (isQrveyOrg)
106
+ return true; // NOTE: If more Internal Organization arrive, need to change this validation
107
+ if (detail.sharedType === constants_1.SHARE_TYPE.USER) {
108
+ const user = await this.userRepository.getOne(detail.sharedWith);
109
+ if (user)
110
+ return true;
111
+ }
112
+ if (detail.sharedType === constants_1.SHARE_TYPE.ROLE) {
113
+ const role = await this.roleRepository.getOne(detail.sharedWith);
114
+ if (role)
115
+ return true;
116
+ }
117
+ return false;
118
+ }
119
+ async removeDetails(list) {
120
+ for (const detail of list) {
121
+ await this.detailsRepository.delete(detail.sharedId);
122
+ }
123
+ }
124
+ };
125
+ exports.UpsertSharing = UpsertSharing;
126
+ exports.UpsertSharing = UpsertSharing = __decorate([
127
+ (0, tsyringe_1.injectable)(),
128
+ __param(0, (0, tsyringe_1.inject)('SharingRepository')),
129
+ __param(1, (0, tsyringe_1.inject)('SharingDetailsRepository')),
130
+ __param(2, (0, tsyringe_1.inject)('dxRepository')),
131
+ __param(3, (0, tsyringe_1.inject)('dmRepository')),
132
+ __param(4, (0, tsyringe_1.inject)('UserRepository')),
133
+ __param(5, (0, tsyringe_1.inject)('RoleRepository'))
134
+ ], UpsertSharing);
135
+ //# sourceMappingURL=upsert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsert.js","sourceRoot":"","sources":["../../../../src/sharing/services/upsert.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
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
+ exports.UpsertDefaultSharing = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ const sharing_1 = require("../entities/sharing");
15
+ let UpsertDefaultSharing = class UpsertDefaultSharing {
16
+ constructor(sharingRepository) {
17
+ this.sharingRepository = sharingRepository;
18
+ }
19
+ async execute({ body, }) {
20
+ const { assetId, assetType, contentSharingEnabled = true, defaultAccessLevel } = body;
21
+ const sharingRecord = await this.sharingRepository.getOne(assetId);
22
+ let currentSharing;
23
+ if (sharingRecord) {
24
+ currentSharing = sharing_1.Sharing.parse(sharingRecord);
25
+ }
26
+ else {
27
+ const createSharing = {
28
+ assetId,
29
+ assetType,
30
+ defaultContentSharingEnabled: contentSharingEnabled,
31
+ defaultAccessLevel: defaultAccessLevel !== null && defaultAccessLevel !== void 0 ? defaultAccessLevel : null
32
+ };
33
+ currentSharing = sharing_1.Sharing.create(createSharing);
34
+ await this.sharingRepository.create(currentSharing.toTable());
35
+ }
36
+ currentSharing.setDefaultAccessLevel = defaultAccessLevel !== null && defaultAccessLevel !== void 0 ? defaultAccessLevel : null;
37
+ currentSharing.setDefaultContentSharingEnabled = contentSharingEnabled;
38
+ currentSharing.update();
39
+ await this.sharingRepository.patch(currentSharing.getAssetId, currentSharing.toTable());
40
+ return currentSharing;
41
+ }
42
+ };
43
+ exports.UpsertDefaultSharing = UpsertDefaultSharing;
44
+ exports.UpsertDefaultSharing = UpsertDefaultSharing = __decorate([
45
+ (0, tsyringe_1.injectable)(),
46
+ __param(0, (0, tsyringe_1.inject)('SharingRepository'))
47
+ ], UpsertDefaultSharing);
48
+ //# sourceMappingURL=upsertDefaultSharing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upsertDefaultSharing.js","sourceRoot":"","sources":["../../../../src/sharing/services/upsertDefaultSharing.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA8C;AAG9C,iDAA8C;AAUvC,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC7B,YAEqB,iBAA6C;QAA7C,sBAAiB,GAAjB,iBAAiB,CAA4B;IAC/D,CAAC;IAEG,KAAK,CAAC,OAAO,CAAC,EACjB,IAAI,GAGP;QACG,MAAM,EACF,OAAO,EACP,SAAS,EACT,qBAAqB,GAAG,IAAI,EAC5B,kBAAkB,EACrB,GAAG,IAAI,CAAC;QAGT,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnE,IAAI,cAAuB,CAAC;QAE5B,IAAI,aAAa,EAAE,CAAC;YAChB,cAAc,GAAG,iBAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACJ,MAAM,aAAa,GAAG;gBAClB,OAAO;gBACP,SAAS;gBACT,4BAA4B,EAAE,qBAAqB;gBACnD,kBAAkB,EAAE,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,GAAI,IAAI;aACjD,CAAC;YACF,cAAc,GAAG,iBAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAE/C,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;QAClE,CAAC;QAGD,cAAc,CAAC,qBAAqB,GAAI,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,GAAI,IAAI,CAAC;QAEnE,cAAc,CAAC,+BAA+B,GAAG,qBAAqB,CAAC;QAEvE,cAAc,CAAC,MAAM,EAAE,CAAC;QAExB,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAC9B,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,OAAO,EAAE,CAC3B,CAAC;QAEF,OAAO,cAAc,CAAC;IAC1B,CAAC;CACJ,CAAA;AAlDY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,mBAAmB,CAAC,CAAA;GAFvB,oBAAoB,CAkDhC"}
@@ -0,0 +1 @@
1
+ {"root":["../../src/index.ts"],"version":"5.7.3"}