@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,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Sharing = void 0;
4
+ class Sharing {
5
+ constructor(params) {
6
+ var _a, _b;
7
+ this.assetId = params.assetId;
8
+ this.assetType = params.assetType;
9
+ this.createdAt = params.createdAt;
10
+ this.updatedAt = params.updatedAt;
11
+ this.deletedAt = params.deletedAt;
12
+ this.defaultContentSharingEnabled = (_a = params.defaultContentSharingEnabled) !== null && _a !== void 0 ? _a : true;
13
+ this.defaultAccessLevel = (_b = params.defaultAccessLevel) !== null && _b !== void 0 ? _b : null;
14
+ }
15
+ static create(params) {
16
+ const now = new Date().toISOString();
17
+ const obj = Object.assign(Object.assign({}, params), { createdAt: now, updatedAt: now });
18
+ return new Sharing(obj);
19
+ }
20
+ static parse(params) {
21
+ return new Sharing({
22
+ assetId: params.asset_id,
23
+ assetType: params.asset_type,
24
+ createdAt: params.created_at,
25
+ updatedAt: params.updated_at,
26
+ deletedAt: params.deleted_at,
27
+ });
28
+ }
29
+ update() {
30
+ this.updatedAt = new Date().toISOString();
31
+ }
32
+ toTable() {
33
+ return {
34
+ asset_id: this.assetId,
35
+ asset_type: this.assetType,
36
+ created_at: this.createdAt,
37
+ updated_at: this.updatedAt,
38
+ deleted_at: this.deletedAt,
39
+ };
40
+ }
41
+ toPlain() {
42
+ return {
43
+ assetId: this.assetId,
44
+ assetType: this.assetType,
45
+ createdAt: this.createdAt,
46
+ updatedAt: this.updatedAt,
47
+ deletedAt: this.deletedAt,
48
+ };
49
+ }
50
+ toJSON() {
51
+ return {
52
+ assetId: this.assetId,
53
+ assetType: this.assetType,
54
+ createdAt: this.createdAt,
55
+ updatedAt: this.updatedAt,
56
+ };
57
+ }
58
+ set setDefaultContentSharingEnabled(defaultContentSharingEnabled) {
59
+ this.defaultContentSharingEnabled = defaultContentSharingEnabled;
60
+ }
61
+ set setDefaultAccessLevel(defaultAccessLevel) {
62
+ this.defaultAccessLevel = defaultAccessLevel;
63
+ }
64
+ get getAssetId() {
65
+ return this.assetId;
66
+ }
67
+ get getAssetType() {
68
+ return this.assetType;
69
+ }
70
+ }
71
+ exports.Sharing = Sharing;
72
+ //# sourceMappingURL=sharing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharing.js","sourceRoot":"","sources":["../../../../src/sharing/entities/sharing.ts"],"names":[],"mappings":";;;AAQA,MAAa,OAAO;IAShB,YAAY,MAAmB;;QAC3B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,4BAA4B,GAAG,MAAA,MAAM,CAAC,4BAA4B,mCAAI,IAAI,CAAC;QAChF,IAAI,CAAC,kBAAkB,GAAG,MAAA,MAAM,CAAC,kBAAkB,mCAAI,IAAI,CAAC;IAChE,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,MAAqB;QAC/B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,GAAG,mCACF,MAAM,KACT,SAAS,EAAE,GAAG,EACd,SAAS,EAAE,GAAG,GACjB,CAAC;QACF,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAoB;QAC7B,OAAO,IAAI,OAAO,CAAC;YACf,OAAO,EAAE,MAAM,CAAC,QAAQ;YACxB,SAAS,EAAE,MAAM,CAAC,UAAwB;YAC1C,SAAS,EAAE,MAAM,CAAC,UAAU;YAC5B,SAAS,EAAE,MAAM,CAAC,UAAU;YAC5B,SAAS,EAAE,MAAM,CAAC,UAAU;SAC/B,CAAC,CAAC;IACP,CAAC;IAED,MAAM;QACF,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,CAAC;IAED,OAAO;QACH,OAAO;YACH,QAAQ,EAAE,IAAI,CAAC,OAAO;YACtB,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,UAAU,EAAE,IAAI,CAAC,SAAS;SAC7B,CAAC;IACN,CAAC;IAED,OAAO;QACH,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC5B,CAAC;IACN,CAAC;IAED,MAAM;QACF,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC5B,CAAC;IACN,CAAC;IAED,IAAW,+BAA+B,CACtC,4BAAqC;QACrC,IAAI,CAAC,4BAA4B,GAAG,4BAA4B,CAAC;IACrE,CAAC;IAED,IAAW,qBAAqB,CAAC,kBAAiC;QAC9D,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;CACJ;AAxFD,0BAwFC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=details.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"details.type.js","sourceRoot":"","sources":["../../../../../src/sharing/entities/types/details.type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=orgTreeResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orgTreeResult.js","sourceRoot":"","sources":["../../../../../src/sharing/entities/types/orgTreeResult.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=organization.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.type.js","sourceRoot":"","sources":["../../../../../src/sharing/entities/types/organization.type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=sharing.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharing.type.js","sourceRoot":"","sources":["../../../../../src/sharing/entities/types/sharing.type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AdminRepository = void 0;
4
+ const utils_1 = require("@qrvey/utils");
5
+ const constants_1 = require("../../common/constants");
6
+ class AdminRepository {
7
+ async getApplicationInfo(body) {
8
+ var _a;
9
+ const url = `${constants_1.ENVIRONMENT.DOMAIN}/devapi/v4/user/${body.userId}/app/${body.appId}`;
10
+ const headers = {
11
+ 'x-api-key': constants_1.ENVIRONMENT.API_KEY,
12
+ };
13
+ const requestOptions = {
14
+ method: 'GET',
15
+ headers,
16
+ };
17
+ const response = await fetch(url, requestOptions);
18
+ const data = (await response.json());
19
+ return {
20
+ status: response.status,
21
+ data: {
22
+ userId: (_a = data === null || data === void 0 ? void 0 : data.userid) !== null && _a !== void 0 ? _a : body.userId,
23
+ appId: (0, utils_1.getAttribute)(data, 'appId'),
24
+ userEmail: (0, utils_1.getAttribute)(data, 'userEmail'),
25
+ },
26
+ };
27
+ }
28
+ async getPlatformConfiguration() {
29
+ var _a, _b, _c;
30
+ const url = `${constants_1.ENVIRONMENT.DOMAIN}/admin/api/v5/customization/features/platform`;
31
+ const headers = {
32
+ 'x-api-key': constants_1.ENVIRONMENT.API_KEY,
33
+ };
34
+ const requestOptions = {
35
+ method: 'GET',
36
+ headers,
37
+ };
38
+ const response = await fetch(url, requestOptions);
39
+ const data = (await response.json());
40
+ return {
41
+ status: response.status,
42
+ legacyMode: (_c = (_b = (_a = data === null || data === void 0 ? void 0 : data.Item) === null || _a === void 0 ? void 0 : _a.settings) === null || _b === void 0 ? void 0 : _b.legacyMode) !== null && _c !== void 0 ? _c : true,
43
+ };
44
+ }
45
+ }
46
+ exports.AdminRepository = AdminRepository;
47
+ //# sourceMappingURL=admin.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin.repository.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/admin.repository.ts"],"names":[],"mappings":";;;AAAA,wCAA4C;AAE5C,sDAAqD;AAGrD,MAAa,eAAe;IACxB,KAAK,CAAC,kBAAkB,CAAC,IAAuC;;QAC5D,MAAM,GAAG,GAAG,GAAG,uBAAW,CAAC,MAAM,mBAAmB,IAAI,CAAC,MAAM,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;QAEpF,MAAM,OAAO,GAAG;YACZ,WAAW,EAAE,uBAAW,CAAC,OAAiB;SAC7C,CAAC;QAEF,MAAM,cAAc,GAAgB;YAChC,MAAM,EAAE,KAAK;YACb,OAAO;SACV,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAElD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAIlC,CAAC;QAEF,OAAO;YACH,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,IAAI,EAAE;gBACF,MAAM,EAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,mCAAI,IAAI,CAAC,MAAM;gBACnC,KAAK,EAAE,IAAA,oBAAY,EAAC,IAAI,EAAE,OAAO,CAAC;gBAClC,SAAS,EAAE,IAAA,oBAAY,EAAC,IAAI,EAAE,WAAW,CAAC;aAC7C;SACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,wBAAwB;;QAI1B,MAAM,GAAG,GAAG,GAAG,uBAAW,CAAC,MAAM,+CAA+C,CAAC;QAEjF,MAAM,OAAO,GAAG;YACZ,WAAW,EAAE,uBAAW,CAAC,OAAiB;SAC7C,CAAC;QAEF,MAAM,cAAc,GAAgB;YAChC,MAAM,EAAE,KAAK;YACb,OAAO;SACV,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAElD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAMlC,CAAC;QACF,OAAO;YACH,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,MAAA,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,QAAQ,0CAAE,UAAU,mCAAI,IAAI;SACvD,CAAC;IACN,CAAC;CACJ;AA5DD,0CA4DC"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SharingDetailsModel = void 0;
4
+ const data_persistence_1 = require("@qrvey/data-persistence");
5
+ const constants_1 = require("../../common/constants");
6
+ class SharingDetailsModel extends data_persistence_1.CrudSchema {
7
+ }
8
+ exports.SharingDetailsModel = SharingDetailsModel;
9
+ SharingDetailsModel.table = {
10
+ name: `${constants_1.DATABASE_INFO.SERVER_PREFIX}_sharing_details`,
11
+ alias: `${constants_1.DATABASE_INFO.TABLE_PREFIX}_sharing_details`,
12
+ };
13
+ SharingDetailsModel.columns = {
14
+ sharing_details_id: { type: 'string', primary: true },
15
+ asset_id: { type: 'string' },
16
+ access_level: { type: 'numeric' },
17
+ org_id: { type: 'string' },
18
+ shared_with: { type: 'string' },
19
+ shared_type: { type: 'string' },
20
+ shared_email: { type: 'string' },
21
+ share_origin: { type: 'string' },
22
+ created_at: { type: 'date' },
23
+ updated_at: { type: 'date' },
24
+ deleted_at: { type: 'date' },
25
+ };
26
+ SharingDetailsModel.indexes = {
27
+ sharingDetailsOrgId: {
28
+ name: 'sharing_details_org_id_index',
29
+ columns: [
30
+ 'org_id',
31
+ 'asset_id',
32
+ 'sharing_details_id',
33
+ 'shared_with',
34
+ 'shared_type',
35
+ 'shared_email',
36
+ 'share_origin',
37
+ ],
38
+ },
39
+ sharingDetailsSharedWithAccessLevel: {
40
+ name: 'sharing_details_shared_with_access_level_index',
41
+ columns: [
42
+ 'shared_with',
43
+ 'access_level',
44
+ 'asset_id',
45
+ 'sharing_details_id',
46
+ 'org_id',
47
+ 'shared_type',
48
+ 'shared_email',
49
+ 'share_origin',
50
+ ],
51
+ },
52
+ sharingDetailsAccessLevelSharedWithOrgId: {
53
+ name: 'sharing_details_access_level_shared_with_org_id_index',
54
+ columns: [
55
+ 'access_level',
56
+ 'shared_with',
57
+ 'org_id',
58
+ 'asset_id',
59
+ 'sharing_details_id',
60
+ 'shared_type',
61
+ 'shared_email',
62
+ 'share_origin',
63
+ ],
64
+ },
65
+ sharingDetailsAccessLevelOrgId: {
66
+ name: 'sharing_details_access_level_org_id_index',
67
+ columns: [
68
+ 'access_level',
69
+ 'org_id',
70
+ 'asset_id',
71
+ 'sharing_details_id',
72
+ 'shared_with',
73
+ 'shared_type',
74
+ 'shared_email',
75
+ 'share_origin',
76
+ ],
77
+ },
78
+ sharingDetailsAssetId: {
79
+ name: 'sharing_details_asset_id_index',
80
+ columns: [
81
+ 'asset_id',
82
+ 'sharing_details_id',
83
+ 'org_id',
84
+ 'shared_with',
85
+ 'shared_type',
86
+ 'shared_email',
87
+ 'share_origin',
88
+ ],
89
+ },
90
+ };
91
+ SharingDetailsModel.schema = constants_1.DATABASE_INFO.DATA_PERSISTENCE_SCHEMA;
92
+ SharingDetailsModel.usePool = true;
93
+ //# sourceMappingURL=details.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"details.model.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/details.model.ts"],"names":[],"mappings":";;;AAAA,8DAAqD;AAErD,sDAAuD;AAEvD,MAAa,mBAAoB,SAAQ,6BAAU;;AAAnD,kDAwFC;AAvFU,yBAAK,GAAG;IACX,IAAI,EAAE,GAAG,yBAAa,CAAC,aAAa,kBAAkB;IACtD,KAAK,EAAE,GAAG,yBAAa,CAAC,YAAY,kBAAkB;CACzD,CAAC;AAEK,2BAAO,GAAG;IACb,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;IACrD,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC5B,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IACjC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC/B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC/B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAChC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAChC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;CAC/B,CAAC;AAEK,2BAAO,GAAG;IACb,mBAAmB,EAAE;QACjB,IAAI,EAAE,8BAA8B;QACpC,OAAO,EAAE;YACL,QAAQ;YACR,UAAU;YACV,oBAAoB;YACpB,aAAa;YACb,aAAa;YACb,cAAc;YACd,cAAc;SACjB;KACJ;IACD,mCAAmC,EAAE;QACjC,IAAI,EAAE,gDAAgD;QACtD,OAAO,EAAE;YACL,aAAa;YACb,cAAc;YACd,UAAU;YACV,oBAAoB;YACpB,QAAQ;YACR,aAAa;YACb,cAAc;YACd,cAAc;SACjB;KACJ;IACD,wCAAwC,EAAE;QACtC,IAAI,EAAE,uDAAuD;QAC7D,OAAO,EAAE;YACL,cAAc;YACd,aAAa;YACb,QAAQ;YACR,UAAU;YACV,oBAAoB;YACpB,aAAa;YACb,cAAc;YACd,cAAc;SACjB;KACJ;IACD,8BAA8B,EAAE;QAC5B,IAAI,EAAE,2CAA2C;QACjD,OAAO,EAAE;YACL,cAAc;YACd,QAAQ;YACR,UAAU;YACV,oBAAoB;YACpB,aAAa;YACb,aAAa;YACb,cAAc;YACd,cAAc;SACjB;KACJ;IACD,qBAAqB,EAAE;QACnB,IAAI,EAAE,gCAAgC;QACtC,OAAO,EAAE;YACL,UAAU;YACV,oBAAoB;YACpB,QAAQ;YACR,aAAa;YACb,aAAa;YACb,cAAc;YACd,cAAc;SACjB;KACJ;CACJ,CAAC;AAEK,0BAAM,GAAG,yBAAa,CAAC,uBAAuB,CAAC;AAC/C,2BAAO,GAAG,IAAI,CAAC"}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SharingDetailsRepository = void 0;
4
+ const details_model_1 = require("./details.model");
5
+ const constants_1 = require("../../common/constants");
6
+ const base_1 = require("../../common/persistence/base");
7
+ class SharingDetailsRepository extends base_1.BaseRepository {
8
+ constructor() {
9
+ super(details_model_1.SharingDetailsModel);
10
+ }
11
+ async getOne(sharingDetailId) {
12
+ const params = {
13
+ filters: [this.filter('sharing_details_id', sharingDetailId)],
14
+ };
15
+ const response = await super.findItem(params);
16
+ return response;
17
+ }
18
+ async getBySharedWith(assetId, sharedWith) {
19
+ const filterList = [
20
+ this.filter('asset_id', assetId),
21
+ this.filter('shared_with', sharedWith),
22
+ ];
23
+ const params = {
24
+ filters: filterList,
25
+ };
26
+ const response = await super.findItem(params);
27
+ return response;
28
+ }
29
+ async getList(options) {
30
+ const assetIndex = details_model_1.SharingDetailsModel.indexes.sharingDetailsAssetId;
31
+ const pagination = this.getPagination(options.pagination);
32
+ const params = {
33
+ pagination,
34
+ index: {
35
+ indexName: assetIndex.name,
36
+ columns: assetIndex.columns,
37
+ },
38
+ };
39
+ const filterList = [this.filter('asset_id', options.data.assetId)];
40
+ if (options.filters) {
41
+ options.filters.forEach((filter) => {
42
+ filterList.push(this.filter(filter.column, filter.value));
43
+ });
44
+ }
45
+ params.filters = filterList;
46
+ if (options.data.user) {
47
+ const currentFilter = this.getUserFilter(options.data.user, filterList);
48
+ params.filters = currentFilter;
49
+ }
50
+ if (options.sorting)
51
+ params.sorting = options.sorting;
52
+ const response = await super.find(params);
53
+ return response;
54
+ }
55
+ async create(details) {
56
+ const response = (await super.create(details));
57
+ return response;
58
+ }
59
+ async patch(sharingDetailId, details) {
60
+ await super.update([this.filter('sharing_details_id', sharingDetailId)], details);
61
+ return true;
62
+ }
63
+ async delete(sharingDetailId) {
64
+ await super.remove([
65
+ this.filter('sharing_details_id', sharingDetailId),
66
+ ]);
67
+ return true;
68
+ }
69
+ getPagination(options) {
70
+ var _a, _b;
71
+ return {
72
+ limit: (_a = options === null || options === void 0 ? void 0 : options.limit) !== null && _a !== void 0 ? _a : constants_1.LIMIT_PER_PAGE,
73
+ from: (_b = options === null || options === void 0 ? void 0 : options.from) !== null && _b !== void 0 ? _b : undefined,
74
+ };
75
+ }
76
+ getUserFilter(user, currentFilters) {
77
+ const { userId, roles } = user;
78
+ const orgId = user.orgId === '' ? constants_1.ORGANIZATION_QRVEY : user.orgId; //Review if this is right
79
+ const sharing = {
80
+ OR: [
81
+ {
82
+ AND: [
83
+ this.buildFilter('shared_with', userId),
84
+ this.buildFilter('shared_type', 'USER'),
85
+ this.buildFilter('org_id', orgId),
86
+ ],
87
+ },
88
+ {
89
+ AND: [
90
+ this.buildFilter('shared_with', orgId),
91
+ this.buildFilter('shared_type', 'ORGANIZATION'),
92
+ this.buildFilter('org_id', orgId),
93
+ ],
94
+ },
95
+ ],
96
+ };
97
+ if (roles && (roles === null || roles === void 0 ? void 0 : roles.length) > 0) {
98
+ sharing.OR.push({
99
+ AND: [
100
+ this.buildFilter('shared_with', roles, 'IN'),
101
+ this.buildFilter('shared_type', 'ROLE'),
102
+ this.buildFilter('org_id', orgId),
103
+ ],
104
+ });
105
+ }
106
+ const filter = [];
107
+ if (currentFilters)
108
+ filter.push(...currentFilters);
109
+ filter.push(sharing);
110
+ return { AND: filter };
111
+ }
112
+ }
113
+ exports.SharingDetailsRepository = SharingDetailsRepository;
114
+ //# sourceMappingURL=details.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"details.repository.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/details.repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DownloadManagerSchema = void 0;
4
+ const data_persistence_1 = require("@qrvey/data-persistence");
5
+ const constants_1 = require("../../common/constants");
6
+ class DownloadManagerSchema extends data_persistence_1.CrudSchema {
7
+ }
8
+ exports.DownloadManagerSchema = DownloadManagerSchema;
9
+ DownloadManagerSchema.table = {
10
+ name: `${constants_1.DATABASE_INFO.SERVER_PREFIX}DownloadManager`,
11
+ alias: `${constants_1.DATABASE_INFO.TABLE_PREFIX}_download_manager`,
12
+ };
13
+ DownloadManagerSchema.columns = {
14
+ downloadManagerId: {
15
+ primary: true,
16
+ type: 'String',
17
+ columnId: true,
18
+ },
19
+ };
20
+ DownloadManagerSchema.schema = 'exports';
21
+ DownloadManagerSchema.usePool = true;
22
+ //# sourceMappingURL=dm.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dm.model.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/dm.model.ts"],"names":[],"mappings":";;;AAAA,8DAAqD;AAErD,sDAAuD;AAEvD,MAAa,qBAAsB,SAAQ,6BAAU;;AAArD,sDAgBC;AAfU,2BAAK,GAAG;IACX,IAAI,EAAE,GAAG,yBAAa,CAAC,aAAa,iBAAiB;IACrD,KAAK,EAAE,GAAG,yBAAa,CAAC,YAAY,mBAAmB;CAC1D,CAAC;AAEK,6BAAO,GAAG;IACb,iBAAiB,EAAE;QACf,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI;KACjB;CACJ,CAAC;AAEK,4BAAM,GAAG,SAAS,CAAC;AACnB,6BAAO,GAAG,IAAI,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DownloadManagerRepository = void 0;
4
+ const dm_model_1 = require("./dm.model");
5
+ const base_1 = require("../../common/persistence/base");
6
+ class DownloadManagerRepository extends base_1.BaseRepository {
7
+ constructor() {
8
+ super(dm_model_1.DownloadManagerSchema);
9
+ }
10
+ async get(identifier) {
11
+ const filterList = [this.filter('downloadManagerId', identifier)];
12
+ const params = {
13
+ filters: filterList,
14
+ };
15
+ const response = await super.findItem(params);
16
+ return response;
17
+ }
18
+ }
19
+ exports.DownloadManagerRepository = DownloadManagerRepository;
20
+ //# sourceMappingURL=dm.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dm.repository.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/dm.repository.ts"],"names":[],"mappings":";;;AAAA,yCAAmD;AACnD,wDAA+D;AAG/D,MAAa,yBACT,SAAQ,qBAAc;IAGtB;QACI,KAAK,CAAC,gCAAqB,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,GAAG,CACL,UAAkB;QAElB,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG;YACX,OAAO,EAAE,UAAU;SACtB,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,QAAyC,CAAC;IACrD,CAAC;CACJ;AAlBD,8DAkBC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DashboardSchema = void 0;
4
+ const data_persistence_1 = require("@qrvey/data-persistence");
5
+ const constants_1 = require("../../common/constants");
6
+ class DashboardSchema extends data_persistence_1.CrudSchema {
7
+ }
8
+ exports.DashboardSchema = DashboardSchema;
9
+ DashboardSchema.table = {
10
+ name: `${constants_1.DATABASE_INFO.SERVER_PREFIX}_dx_dashboard`,
11
+ alias: `${constants_1.DATABASE_INFO.TABLE_PREFIX}_dashboard`,
12
+ };
13
+ DashboardSchema.columns = {
14
+ ResourceUID: { type: 'string', primary: true },
15
+ dashboardId: { type: 'string' },
16
+ contentId: { type: 'string' },
17
+ userId: { type: 'string' },
18
+ ownerId: { type: 'string' },
19
+ appId: { type: 'string' },
20
+ qvAttributes: { type: 'object' },
21
+ };
22
+ DashboardSchema.indexes = {
23
+ ResourceUID: {
24
+ name: 'MetadataByResource',
25
+ columns: ['Metadata', 'ResourceUID'],
26
+ },
27
+ };
28
+ DashboardSchema.schema = 'dashboard_x';
29
+ DashboardSchema.usePool = true;
30
+ //# sourceMappingURL=dx.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dx.model.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/dx.model.ts"],"names":[],"mappings":";;;AAAA,8DAAqD;AAErD,sDAAuD;AAEvD,MAAa,eAAgB,SAAQ,6BAAU;;AAA/C,0CAyBC;AAxBU,qBAAK,GAAG;IACX,IAAI,EAAE,GAAG,yBAAa,CAAC,aAAa,eAAe;IACnD,KAAK,EAAE,GAAG,yBAAa,CAAC,YAAY,YAAY;CACnD,CAAC;AAEK,uBAAO,GAAG;IACb,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;IAC9C,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC/B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC1B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACzB,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;CACnC,CAAC;AAEK,uBAAO,GAAG;IACb,WAAW,EAAE;QACT,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC;KACvC;CACJ,CAAC;AAEK,sBAAM,GAAG,aAAa,CAAC;AACvB,uBAAO,GAAG,IAAI,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DashboardRepository = void 0;
4
+ const dx_model_1 = require("./dx.model");
5
+ const base_1 = require("../../common/persistence/base");
6
+ class DashboardRepository extends base_1.BaseRepository {
7
+ constructor() {
8
+ super(dx_model_1.DashboardSchema);
9
+ }
10
+ async get(identifier) {
11
+ const uid = `DASHBOARD=${identifier}&BRANCH=MAIN`;
12
+ const filterList = [this.filter('ResourceUID', uid)];
13
+ const params = {
14
+ filters: filterList,
15
+ };
16
+ const response = await super.findItem(params);
17
+ return response;
18
+ }
19
+ }
20
+ exports.DashboardRepository = DashboardRepository;
21
+ //# sourceMappingURL=dx.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dx.repository.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/dx.repository.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAC7C,wDAA+D;AAG/D,MAAa,mBACT,SAAQ,qBAAc;IAGtB;QACI,KAAK,CAAC,0BAAe,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,UAAkB;QACxB,MAAM,GAAG,GAAG,aAAa,UAAU,cAAc,CAAC;QAClD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG;YACX,OAAO,EAAE,UAAU;SACtB,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,QAAmC,CAAC;IAC/C,CAAC;CACJ;AAjBD,kDAiBC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const data_persistence_1 = require("@qrvey/data-persistence");
4
+ const constants_1 = require("../../common/constants");
5
+ class OrganizationModel extends data_persistence_1.CrudSchema {
6
+ }
7
+ OrganizationModel.table = {
8
+ name: 'qv_organization',
9
+ alias: `${constants_1.DATABASE_INFO.TABLE_PREFIX}_organization`,
10
+ };
11
+ OrganizationModel.columns = {
12
+ org_id: { type: 'string', primary: true },
13
+ name: { type: 'string' },
14
+ parent_org_id: { type: 'string' },
15
+ org_path: { type: 'string' },
16
+ content_privacy: { type: 'boolean' },
17
+ effective_content_privacy: { type: 'boolean' },
18
+ created_at: { type: 'string' },
19
+ updated_at: { type: 'string' },
20
+ };
21
+ OrganizationModel.indexes = {
22
+ org_path: { name: 'idx_qv_orgs_org_path_gist', columns: ['org_path'] },
23
+ parent_org_id: {
24
+ name: 'idx_qv_orgs_parent',
25
+ columns: ['parent_org_id'],
26
+ },
27
+ };
28
+ OrganizationModel.schema = constants_1.DATABASE_INFO.DATA_PERSISTENCE_SCHEMA;
29
+ OrganizationModel.usePool = true;
30
+ exports.default = OrganizationModel;
31
+ //# sourceMappingURL=organization.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.model.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/organization.model.ts"],"names":[],"mappings":";;AAAA,8DAAqD;AAErD,sDAAuD;AAEvD,MAAqB,iBAAkB,SAAQ,6BAAU;;AACrC,uBAAK,GAAG;IACpB,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,GAAG,yBAAa,CAAC,YAAY,eAAe;CACtD,CAAC;AAEc,yBAAO,GAAG;IACtB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;IACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACxB,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC5B,eAAe,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IACpC,yBAAyB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IAC9C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC9B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;CACjC,CAAC;AAEc,yBAAO,GAAG;IACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE;IACtE,aAAa,EAAE;QACX,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,CAAC,eAAe,CAAC;KAC7B;CACJ,CAAC;AAEc,wBAAM,GAAG,yBAAa,CAAC,uBAAuB,CAAC;AAC/C,yBAAO,GAAG,IAAI,CAAC;kBA1Bd,iBAAiB"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.OrganizationRepository = void 0;
7
+ const organization_model_1 = __importDefault(require("./organization.model"));
8
+ const base_1 = require("../../common/persistence/base");
9
+ class OrganizationRepository extends base_1.BaseRepository {
10
+ constructor() {
11
+ super(organization_model_1.default);
12
+ }
13
+ async getOne(orgId) {
14
+ const params = {
15
+ filters: [this.filter('org_id', orgId)],
16
+ };
17
+ const response = await super.findItem(params);
18
+ return response;
19
+ }
20
+ async getOrgTree(orgId, contentSharing) {
21
+ const cte = `WITH target AS (SELECT org_path FROM admin.qv_organization WHERE org_id = '${orgId}')`;
22
+ let selectClause = '';
23
+ let whereClause = `
24
+ FROM admin.qv_organization, target
25
+ WHERE (
26
+ admin.qv_organization.org_path <@ target.org_path
27
+ OR
28
+ admin.qv_organization.org_path @> target.org_path
29
+ )
30
+ AND org_id != '${orgId}'
31
+ `;
32
+ if (contentSharing === undefined) {
33
+ selectClause = `
34
+ SELECT
35
+ COALESCE(ARRAY_AGG(org_id) FILTER (WHERE effective_content_privacy = true), '{}') as db_private,
36
+ COALESCE(ARRAY_AGG(org_id) FILTER (WHERE effective_content_privacy = false), '{}') as db_public
37
+ `;
38
+ }
39
+ else {
40
+ selectClause = `SELECT COALESCE(ARRAY_AGG(org_id), '{}') as db_specific`;
41
+ whereClause += ` AND effective_content_privacy = ${contentSharing}`;
42
+ }
43
+ const fullSql = `${cte} ${selectClause} ${whereClause};`;
44
+ const result = await super.runRawQuery(fullSql, []);
45
+ const row = result === null || result === void 0 ? void 0 : result.rows[0];
46
+ if (!row)
47
+ return {
48
+ privateIds: [],
49
+ publicIds: [],
50
+ };
51
+ if (contentSharing === undefined) {
52
+ return {
53
+ privateIds: row.db_private,
54
+ publicIds: row.db_public,
55
+ };
56
+ }
57
+ else {
58
+ return {
59
+ privateIds: contentSharing ? row.db_specific : [],
60
+ publicIds: contentSharing ? [] : row.db_specific,
61
+ };
62
+ }
63
+ }
64
+ }
65
+ exports.OrganizationRepository = OrganizationRepository;
66
+ //# sourceMappingURL=organization.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.repository.js","sourceRoot":"","sources":["../../../../src/sharing/implementations/organization.repository.ts"],"names":[],"mappings":";;;;;;AAAA,8EAAqD;AACrD,wDAA+D;AAK/D,MAAa,sBACT,SAAQ,qBAAc;IAGtB;QACI,KAAK,CAAC,4BAAiB,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa;QACtB,MAAM,MAAM,GAAG;YACX,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;SAC1C,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,QAA4B,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,UAAU,CACZ,KAAa,EACb,cAAwB;QAExB,MAAM,GAAG,GAAG,8EAA8E,KAAK,IAAI,CAAC;QAEpG,IAAI,YAAY,GAAG,EAAE,CAAC;QACtB,IAAI,WAAW,GAAG;;;;;;;yBAOD,KAAK;KACzB,CAAC;QAEE,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YAC/B,YAAY,GAAG;;;;SAIlB,CAAC;QACF,CAAC;aAAM,CAAC;YACJ,YAAY,GAAG,yDAAyD,CAAC;YACzE,WAAW,IAAI,oCAAoC,cAAc,EAAE,CAAC;QACxE,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,GAAG,IAAI,YAAY,IAAI,WAAW,GAAG,CAAC;QAEzD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAE5B,IAAI,CAAC,GAAG;YACJ,OAAO;gBACH,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,EAAE;aAChB,CAAC;QAEN,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO;gBACH,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;aAC3B,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,OAAO;gBACH,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;gBACjD,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW;aACnD,CAAC;QACN,CAAC;IACL,CAAC;CACJ;AAnED,wDAmEC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SharingModel = void 0;
4
+ const data_persistence_1 = require("@qrvey/data-persistence");
5
+ const constants_1 = require("../../common/constants");
6
+ class SharingModel extends data_persistence_1.CrudSchema {
7
+ }
8
+ exports.SharingModel = SharingModel;
9
+ SharingModel.table = {
10
+ name: `${constants_1.DATABASE_INFO.SERVER_PREFIX}_sharing`,
11
+ alias: `${constants_1.DATABASE_INFO.TABLE_PREFIX}_sharing`,
12
+ };
13
+ SharingModel.columns = {
14
+ asset_id: { type: 'string', primary: true },
15
+ asset_type: { type: 'string' },
16
+ default_content_sharing_enabled: { type: 'boolean' },
17
+ default_access_level: { type: 'number' },
18
+ created_at: { type: 'date' },
19
+ updated_at: { type: 'date' },
20
+ deleted_at: { type: 'date' },
21
+ qvAttributes: { type: 'object' },
22
+ };
23
+ SharingModel.indexes = {
24
+ sharingConfigLookup: {
25
+ name: 'sharing_config_lookup_idx',
26
+ columns: ['asset_id', 'asset_type'],
27
+ },
28
+ sharingAssetType: {
29
+ name: 'sharing_asset_type_index',
30
+ columns: ['asset_type'],
31
+ },
32
+ };
33
+ SharingModel.schema = constants_1.DATABASE_INFO.DATA_PERSISTENCE_SCHEMA;
34
+ SharingModel.usePool = true;
35
+ //# sourceMappingURL=sharing.model.js.map