@qrvey/assets-sharing 0.0.1

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 (72) hide show
  1. package/.eslintrc +88 -0
  2. package/README.md +18 -0
  3. package/dist/cjs/common/common.type.js +3 -0
  4. package/dist/cjs/common/common.type.js.map +1 -0
  5. package/dist/cjs/common/constants.js +37 -0
  6. package/dist/cjs/common/constants.js.map +1 -0
  7. package/dist/cjs/common/persistence/base.js +15 -0
  8. package/dist/cjs/common/persistence/base.js.map +1 -0
  9. package/dist/cjs/common/persistence/poolClient.js +11 -0
  10. package/dist/cjs/common/persistence/poolClient.js.map +1 -0
  11. package/dist/cjs/context.js +10 -0
  12. package/dist/cjs/context.js.map +1 -0
  13. package/dist/cjs/index.js +23 -0
  14. package/dist/cjs/index.js.map +1 -0
  15. package/dist/cjs/sharing/entities/details.js +109 -0
  16. package/dist/cjs/sharing/entities/details.js.map +1 -0
  17. package/dist/cjs/sharing/entities/sharing.js +63 -0
  18. package/dist/cjs/sharing/entities/sharing.js.map +1 -0
  19. package/dist/cjs/sharing/entities/types/details.type.js +3 -0
  20. package/dist/cjs/sharing/entities/types/details.type.js.map +1 -0
  21. package/dist/cjs/sharing/entities/types/sharing.type.js +3 -0
  22. package/dist/cjs/sharing/entities/types/sharing.type.js.map +1 -0
  23. package/dist/cjs/sharing/implementations/details.model.js +93 -0
  24. package/dist/cjs/sharing/implementations/details.model.js.map +1 -0
  25. package/dist/cjs/sharing/implementations/details.repository.js +63 -0
  26. package/dist/cjs/sharing/implementations/details.repository.js.map +1 -0
  27. package/dist/cjs/sharing/implementations/sharing.model.js +33 -0
  28. package/dist/cjs/sharing/implementations/sharing.model.js.map +1 -0
  29. package/dist/cjs/sharing/implementations/sharing.repository.js +31 -0
  30. package/dist/cjs/sharing/implementations/sharing.repository.js.map +1 -0
  31. package/dist/cjs/sharing/interfaces/details.interface.js +3 -0
  32. package/dist/cjs/sharing/interfaces/details.interface.js.map +1 -0
  33. package/dist/cjs/sharing/interfaces/sharingRepository.interface.js +3 -0
  34. package/dist/cjs/sharing/interfaces/sharingRepository.interface.js.map +1 -0
  35. package/dist/cjs/sharing/services/checkUserAccessLevel.js +44 -0
  36. package/dist/cjs/sharing/services/checkUserAccessLevel.js.map +1 -0
  37. package/dist/cjs/sharing/services/delete.js +32 -0
  38. package/dist/cjs/sharing/services/delete.js.map +1 -0
  39. package/dist/cjs/sharing/services/list.js +39 -0
  40. package/dist/cjs/sharing/services/list.js.map +1 -0
  41. package/dist/cjs/sharing/services/upsert.js +80 -0
  42. package/dist/cjs/sharing/services/upsert.js.map +1 -0
  43. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  44. package/dist/esm/index.mjs +631 -0
  45. package/dist/esm/index.mjs.map +1 -0
  46. package/dist/types/index.d.ts +108 -0
  47. package/package.json +50 -0
  48. package/src/common/common.type.ts +27 -0
  49. package/src/common/constants.ts +36 -0
  50. package/src/common/persistence/base.ts +13 -0
  51. package/src/common/persistence/poolClient.ts +7 -0
  52. package/src/context.ts +17 -0
  53. package/src/index.ts +29 -0
  54. package/src/sharing/entities/details.ts +143 -0
  55. package/src/sharing/entities/sharing.ts +84 -0
  56. package/src/sharing/entities/types/details.type.ts +58 -0
  57. package/src/sharing/entities/types/sharing.type.ts +24 -0
  58. package/src/sharing/implementations/details.model.ts +93 -0
  59. package/src/sharing/implementations/details.repository.ts +85 -0
  60. package/src/sharing/implementations/sharing.model.ts +33 -0
  61. package/src/sharing/implementations/sharing.repository.ts +36 -0
  62. package/src/sharing/interfaces/details.interface.ts +45 -0
  63. package/src/sharing/interfaces/sharingRepository.interface.ts +32 -0
  64. package/src/sharing/services/checkUserAccessLevel.ts +40 -0
  65. package/src/sharing/services/delete.ts +24 -0
  66. package/src/sharing/services/list.ts +45 -0
  67. package/src/sharing/services/upsert.ts +111 -0
  68. package/tsconfig.cjs.json +7 -0
  69. package/tsconfig.json +19 -0
  70. package/tsup.config.cjs.ts +11 -0
  71. package/tsup.config.esm.ts +12 -0
  72. package/tsup.config.types.ts +9 -0
package/.eslintrc ADDED
@@ -0,0 +1,88 @@
1
+ {
2
+ "parser": "@typescript-eslint/parser",
3
+ "plugins": [
4
+ "import"
5
+ ],
6
+ "extends": [
7
+ "../../.eslintrc",
8
+ "plugin:import/recommended",
9
+ "plugin:import/typescript"
10
+ ],
11
+ "rules": {
12
+ "sort-imports": [
13
+ "error",
14
+ {
15
+ "ignoreCase": false,
16
+ "ignoreDeclarationSort": true,
17
+ "ignoreMemberSort": false,
18
+ "memberSyntaxSortOrder": [
19
+ "none",
20
+ "all",
21
+ "multiple",
22
+ "single"
23
+ ],
24
+ "allowSeparatedGroups": true
25
+ }
26
+ ],
27
+ "import/no-unresolved": "warn",
28
+ "import/order": [
29
+ "error",
30
+ {
31
+ "groups": [
32
+ "builtin",
33
+ "external",
34
+ "internal",
35
+ [
36
+ "sibling",
37
+ "parent"
38
+ ],
39
+ "index",
40
+ "unknown"
41
+ ],
42
+ "newlines-between": "always",
43
+ "alphabetize": {
44
+ "order": "asc",
45
+ "caseInsensitive": true
46
+ }
47
+ }
48
+ ],
49
+ "padding-line-between-statements": [
50
+ "error",
51
+ {
52
+ "blankLine": "always",
53
+ "prev": "function",
54
+ "next": "*"
55
+ },
56
+ {
57
+ "blankLine": "always",
58
+ "prev": "*",
59
+ "next": "function"
60
+ },
61
+ {
62
+ "blankLine": "always",
63
+ "prev": "class",
64
+ "next": "*"
65
+ },
66
+ {
67
+ "blankLine": "always",
68
+ "prev": "*",
69
+ "next": "class"
70
+ }
71
+ ],
72
+ "lines-between-class-members": [
73
+ "error",
74
+ "always",
75
+ {
76
+ "exceptAfterSingleLine": true
77
+ }
78
+ ],
79
+ "no-console": "error"
80
+ },
81
+ "settings": {
82
+ "import/resolver": {
83
+ "typescript": {
84
+ "project": "./tsconfig.json"
85
+ }
86
+ }
87
+ }
88
+ }
package/README.md ADDED
@@ -0,0 +1,18 @@
1
+ # @qrvey/assets-sharing
2
+
3
+ ![install size](https://packagephobia.com/badge?p=@qrvey/assets-sharing)
4
+
5
+
6
+ The `@qrvey/assets-sharing` package ...
7
+
8
+ # Installation
9
+
10
+ ```bash
11
+ npm install @qrvey/assets-sharing
12
+ ```
13
+
14
+ Or with yarn:
15
+
16
+ ```bash
17
+ yarn add @qrvey/assets-sharing
18
+ ```
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=common.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.type.js","sourceRoot":"","sources":["../../../src/common/common.type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LIMIT_PER_PAGE = exports.ACCESS_LEVEL = exports.SHARE_TYPE = exports.SHARED_ORIGIN = exports.ASSET_TYPE = exports.ORGANIZATION_QRVEY = exports.DATABASE_INFO = exports.ENVIRONMENT = void 0;
4
+ exports.ENVIRONMENT = {
5
+ SERVER_PREFIX: process.env.SERVER_PREFIX,
6
+ TABLE_PREFIX: process.env.TABLE_PREFIX,
7
+ };
8
+ exports.DATABASE_INFO = {
9
+ DATA_PERSISTENCE_SCHEMA: 'admin',
10
+ SERVER_PREFIX: exports.ENVIRONMENT.SERVER_PREFIX,
11
+ TABLE_PREFIX: exports.ENVIRONMENT.TABLE_PREFIX,
12
+ };
13
+ exports.ORGANIZATION_QRVEY = 'org:0';
14
+ var ASSET_TYPE;
15
+ (function (ASSET_TYPE) {
16
+ ASSET_TYPE["DX"] = "DX";
17
+ })(ASSET_TYPE || (exports.ASSET_TYPE = ASSET_TYPE = {}));
18
+ var SHARED_ORIGIN;
19
+ (function (SHARED_ORIGIN) {
20
+ SHARED_ORIGIN["INTERNAL"] = "INTERNAL";
21
+ SHARED_ORIGIN["EXTERNAL"] = "EXTERNAL";
22
+ })(SHARED_ORIGIN || (exports.SHARED_ORIGIN = SHARED_ORIGIN = {}));
23
+ var SHARE_TYPE;
24
+ (function (SHARE_TYPE) {
25
+ SHARE_TYPE["USER"] = "USER";
26
+ SHARE_TYPE["ROLE"] = "ROLE";
27
+ SHARE_TYPE["ORGANIZATION"] = "ORGANIZATION";
28
+ })(SHARE_TYPE || (exports.SHARE_TYPE = SHARE_TYPE = {}));
29
+ var ACCESS_LEVEL;
30
+ (function (ACCESS_LEVEL) {
31
+ ACCESS_LEVEL[ACCESS_LEVEL["NONE"] = 0] = "NONE";
32
+ ACCESS_LEVEL[ACCESS_LEVEL["CAN_USE"] = 1] = "CAN_USE";
33
+ ACCESS_LEVEL[ACCESS_LEVEL["CAN_EDIT"] = 2] = "CAN_EDIT";
34
+ ACCESS_LEVEL[ACCESS_LEVEL["ADMIN"] = 4] = "ADMIN";
35
+ })(ACCESS_LEVEL || (exports.ACCESS_LEVEL = ACCESS_LEVEL = {}));
36
+ exports.LIMIT_PER_PAGE = 10;
37
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/common/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG;IACvB,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;IACxC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY;CACzC,CAAC;AAEW,QAAA,aAAa,GAAG;IACzB,uBAAuB,EAAE,OAAO;IAChC,aAAa,EAAE,mBAAW,CAAC,aAAa;IACxC,YAAY,EAAE,mBAAW,CAAC,YAAY;CACzC,CAAC;AAEW,QAAA,kBAAkB,GAAG,OAAO,CAAC;AAE1C,IAAY,UAEX;AAFD,WAAY,UAAU;IAClB,uBAAS,CAAA;AACb,CAAC,EAFW,UAAU,0BAAV,UAAU,QAErB;AAED,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,sCAAqB,CAAA;IACrB,sCAAqB,CAAA;AACzB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAED,IAAY,UAIX;AAJD,WAAY,UAAU;IAClB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,2CAA6B,CAAA;AACjC,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAED,IAAY,YAKX;AALD,WAAY,YAAY;IACpB,+CAAQ,CAAA;IACR,qDAAW,CAAA;IACX,uDAAY,CAAA;IACZ,iDAAS,CAAA;AACb,CAAC,EALW,YAAY,4BAAZ,YAAY,QAKvB;AAEY,QAAA,cAAc,GAAG,EAAE,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseRepository = void 0;
4
+ const data_persistence_1 = require("@qrvey/data-persistence");
5
+ const poolClient_1 = require("./poolClient");
6
+ class BaseRepository extends data_persistence_1.CrudService {
7
+ constructor(schema) {
8
+ super(schema, (0, poolClient_1.getPoolClient)());
9
+ }
10
+ filter(attribute, value) {
11
+ return (0, data_persistence_1.buildFilter)(attribute, value);
12
+ }
13
+ }
14
+ exports.BaseRepository = BaseRepository;
15
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/common/persistence/base.ts"],"names":[],"mappings":";;;AAAA,8DAAmE;AAEnE,6CAA6C;AAE7C,MAAa,cAAe,SAAQ,8BAAgB;IAChD,YAAY,MAAW;QACnB,KAAK,CAAC,MAAM,EAAE,IAAA,0BAAa,GAAE,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,SAAiB,EAAE,KAAU;QAChC,OAAO,IAAA,8BAAW,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACzC,CAAC;CACJ;AARD,wCAQC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPoolClient = getPoolClient;
4
+ const data_persistence_1 = require("@qrvey/data-persistence");
5
+ let poolClient;
6
+ function getPoolClient() {
7
+ if (!poolClient)
8
+ poolClient = (0, data_persistence_1.getDbPool)();
9
+ return poolClient;
10
+ }
11
+ //# sourceMappingURL=poolClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poolClient.js","sourceRoot":"","sources":["../../../../src/common/persistence/poolClient.ts"],"names":[],"mappings":";;AAGA,sCAGC;AAND,8DAAoD;AAEpD,IAAI,UAAe,CAAC;AACpB,SAAgB,aAAa;IACzB,IAAI,CAAC,UAAU;QAAE,UAAU,GAAG,IAAA,4BAAS,GAAE,CAAC;IAC1C,OAAO,UAAU,CAAC;AACtB,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Context = void 0;
4
+ const tsyringe_1 = require("tsyringe");
5
+ const details_repository_1 = require("./sharing/implementations/details.repository");
6
+ const sharing_repository_1 = require("./sharing/implementations/sharing.repository");
7
+ tsyringe_1.container.register('SharingRepository', sharing_repository_1.SharingRepository);
8
+ tsyringe_1.container.register('SharingDetailsRepository', details_repository_1.SharingDetailsRepository);
9
+ exports.Context = tsyringe_1.container;
10
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":";;;AAAA,uCAAqC;AAErC,qFAAwF;AACxF,qFAAiF;AAIjF,oBAAS,CAAC,QAAQ,CACd,mBAAmB,EACnB,sCAAiB,CACpB,CAAC;AACF,oBAAS,CAAC,QAAQ,CACd,0BAA0B,EAC1B,6CAAwB,CAC3B,CAAC;AAEW,QAAA,OAAO,GAAG,oBAAS,CAAC"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SHARE_TYPE = exports.SHARED_ORIGIN = exports.ORGANIZATION_QRVEY = exports.ASSET_TYPE = exports.ACCESS_LEVEL = exports.checkUserAccessLevel = exports.api = void 0;
4
+ require("reflect-metadata");
5
+ const context_1 = require("./context");
6
+ const checkUserAccessLevel_1 = require("./sharing/services/checkUserAccessLevel");
7
+ const delete_1 = require("./sharing/services/delete");
8
+ const list_1 = require("./sharing/services/list");
9
+ const upsert_1 = require("./sharing/services/upsert");
10
+ exports.api = {
11
+ upsert: (...args) => context_1.Context.resolve(upsert_1.UpsertSharing).execute(...args),
12
+ list: (...args) => context_1.Context.resolve(list_1.ListSharing).execute(...args),
13
+ delete: (...args) => context_1.Context.resolve(delete_1.DeleteSharing).execute(...args),
14
+ };
15
+ const checkUserAccessLevel = (...args) => context_1.Context.resolve(checkUserAccessLevel_1.CheckUserAccessLevel).execute(...args);
16
+ exports.checkUserAccessLevel = checkUserAccessLevel;
17
+ var constants_1 = require("./common/constants");
18
+ Object.defineProperty(exports, "ACCESS_LEVEL", { enumerable: true, get: function () { return constants_1.ACCESS_LEVEL; } });
19
+ Object.defineProperty(exports, "ASSET_TYPE", { enumerable: true, get: function () { return constants_1.ASSET_TYPE; } });
20
+ Object.defineProperty(exports, "ORGANIZATION_QRVEY", { enumerable: true, get: function () { return constants_1.ORGANIZATION_QRVEY; } });
21
+ Object.defineProperty(exports, "SHARED_ORIGIN", { enumerable: true, get: function () { return constants_1.SHARED_ORIGIN; } });
22
+ Object.defineProperty(exports, "SHARE_TYPE", { enumerable: true, get: function () { return constants_1.SHARE_TYPE; } });
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,4BAA0B;AAC1B,uCAAoC;AACpC,kFAA+E;AAC/E,sDAA0D;AAC1D,kDAAsD;AACtD,sDAA0D;AAE7C,QAAA,GAAG,GAAG;IACf,MAAM,EAAE,CAAC,GAAG,IAA0C,EAAE,EAAE,CACtD,iBAAO,CAAC,OAAO,CAAC,sBAAa,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACnD,IAAI,EAAE,CAAC,GAAG,IAAwC,EAAE,EAAE,CAClD,iBAAO,CAAC,OAAO,CAAC,kBAAW,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACjD,MAAM,EAAE,CAAC,GAAG,IAA0C,EAAE,EAAE,CACtD,iBAAO,CAAC,OAAO,CAAC,sBAAa,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;CACtD,CAAC;AAEK,MAAM,oBAAoB,GAAG,CAChC,GAAG,IAAiD,EACtD,EAAE,CAAC,iBAAO,CAAC,OAAO,CAAC,2CAAoB,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;AAF/C,QAAA,oBAAoB,wBAE2B;AAE5D,gDAM4B;AALxB,yGAAA,YAAY,OAAA;AACZ,uGAAA,UAAU,OAAA;AACV,+GAAA,kBAAkB,OAAA;AAClB,0GAAA,aAAa,OAAA;AACb,uGAAA,UAAU,OAAA"}
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SharingDetail = void 0;
4
+ const id_generator_1 = require("@qrvey/id-generator");
5
+ const constants_1 = require("../../common/constants");
6
+ class SharingDetail {
7
+ constructor(params) {
8
+ this.sharingDetailsId = params.sharingDetailsId;
9
+ this.assetId = params.assetId;
10
+ this.accessLevel = params.accessLevel;
11
+ this.accessLevelAsText = this.convertAccessLevelToText(params.accessLevel);
12
+ this.orgId = params.orgId;
13
+ this.sharedWith = params.sharedWith;
14
+ this.sharedType = params.sharedType;
15
+ this.sharedEmail = params.sharedEmail;
16
+ this.sharedOrigin = params.sharedOrigin;
17
+ this.createdAt = params.createdAt;
18
+ this.updatedAt = params.updatedAt;
19
+ this.deletedAt = params.deletedAt;
20
+ }
21
+ static create(params) {
22
+ var _a;
23
+ const now = new Date().toISOString();
24
+ const obj = Object.assign(Object.assign({}, params), { sharingDetailsId: (_a = params.sharedId) !== null && _a !== void 0 ? _a : (0, id_generator_1.getId)(), createdAt: now, updatedAt: now });
25
+ return new SharingDetail(obj);
26
+ }
27
+ static parse(params) {
28
+ return new SharingDetail({
29
+ sharingDetailsId: params.sharing_details_id,
30
+ assetId: params.asset_id,
31
+ accessLevel: params.access_level,
32
+ orgId: params.org_id,
33
+ sharedWith: params.shared_with,
34
+ sharedType: params.shared_type,
35
+ sharedEmail: params.shared_email,
36
+ sharedOrigin: params.share_origin,
37
+ createdAt: params.created_at,
38
+ updatedAt: params.updated_at,
39
+ deletedAt: params.deleted_at,
40
+ });
41
+ }
42
+ update(params) {
43
+ if (params.accessLevel)
44
+ this.accessLevel = params.accessLevel;
45
+ if (params.sharedEmail)
46
+ this.sharedEmail = params.sharedEmail;
47
+ this.updatedAt = new Date().toISOString();
48
+ }
49
+ toTable() {
50
+ return {
51
+ sharing_details_id: this.sharingDetailsId,
52
+ asset_id: this.assetId,
53
+ access_level: this.accessLevel,
54
+ org_id: this.orgId,
55
+ shared_with: this.sharedWith,
56
+ shared_type: this.sharedType,
57
+ shared_email: this.sharedEmail,
58
+ share_origin: this.sharedOrigin,
59
+ created_at: this.createdAt,
60
+ updated_at: this.updatedAt,
61
+ deleted_at: this.deletedAt,
62
+ };
63
+ }
64
+ toPlain() {
65
+ return {
66
+ sharingDetailsId: this.sharingDetailsId,
67
+ assetId: this.assetId,
68
+ accessLevel: this.accessLevel,
69
+ orgId: this.orgId,
70
+ sharedWith: this.sharedWith,
71
+ sharedType: this.sharedType,
72
+ sharedEmail: this.sharedEmail,
73
+ sharedOrigin: this.sharedOrigin,
74
+ createdAt: this.createdAt,
75
+ updatedAt: this.updatedAt,
76
+ deletedAt: this.deletedAt,
77
+ };
78
+ }
79
+ toJSON() {
80
+ return {
81
+ sharedId: this.sharingDetailsId,
82
+ assetId: this.assetId,
83
+ accessLevel: this.accessLevel,
84
+ accessLevelAsText: this.accessLevelAsText,
85
+ orgId: this.orgId,
86
+ sharedWith: this.sharedWith,
87
+ sharedType: this.sharedType,
88
+ sharedEmail: this.sharedEmail,
89
+ sharedOrigin: this.sharedOrigin,
90
+ createdAt: this.createdAt,
91
+ updatedAt: this.updatedAt,
92
+ };
93
+ }
94
+ get getSharingDetailsId() {
95
+ return this.sharingDetailsId;
96
+ }
97
+ get getAccessLevel() {
98
+ return this.accessLevel;
99
+ }
100
+ get getAccessLevelAsText() {
101
+ return this.accessLevelAsText;
102
+ }
103
+ convertAccessLevelToText(level) {
104
+ var _a;
105
+ return (_a = constants_1.ACCESS_LEVEL[level]) !== null && _a !== void 0 ? _a : 'UNKNOWN';
106
+ }
107
+ }
108
+ exports.SharingDetail = SharingDetail;
109
+ //# sourceMappingURL=details.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"details.js","sourceRoot":"","sources":["../../../../src/sharing/entities/details.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Sharing = void 0;
4
+ class Sharing {
5
+ constructor(params) {
6
+ this.assetId = params.assetId;
7
+ this.assetType = params.assetType;
8
+ this.createdAt = params.createdAt;
9
+ this.updatedAt = params.updatedAt;
10
+ this.deletedAt = params.deletedAt;
11
+ }
12
+ static create(params) {
13
+ const now = new Date().toISOString();
14
+ const obj = Object.assign(Object.assign({}, params), { createdAt: now, updatedAt: now });
15
+ return new Sharing(obj);
16
+ }
17
+ static parse(params) {
18
+ return new Sharing({
19
+ assetId: params.asset_id,
20
+ assetType: params.asset_type,
21
+ createdAt: params.created_at,
22
+ updatedAt: params.updated_at,
23
+ deletedAt: params.deleted_at,
24
+ });
25
+ }
26
+ update() {
27
+ this.updatedAt = new Date().toISOString();
28
+ }
29
+ toTable() {
30
+ return {
31
+ asset_id: this.assetId,
32
+ asset_type: this.assetType,
33
+ created_at: this.createdAt,
34
+ updated_at: this.updatedAt,
35
+ deleted_at: this.deletedAt,
36
+ };
37
+ }
38
+ toPlain() {
39
+ return {
40
+ assetId: this.assetId,
41
+ assetType: this.assetType,
42
+ createdAt: this.createdAt,
43
+ updatedAt: this.updatedAt,
44
+ deletedAt: this.deletedAt,
45
+ };
46
+ }
47
+ toJSON() {
48
+ return {
49
+ assetId: this.assetId,
50
+ assetType: this.assetType,
51
+ createdAt: this.createdAt,
52
+ updatedAt: this.updatedAt,
53
+ };
54
+ }
55
+ get getAssetId() {
56
+ return this.assetId;
57
+ }
58
+ get getAssetType() {
59
+ return this.assetType;
60
+ }
61
+ }
62
+ exports.Sharing = Sharing;
63
+ //# 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;IAOhB,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;IACtC,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,UAAU;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;CACJ;AA3ED,0BA2EC"}
@@ -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=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,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,63 @@
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 getList(options) {
19
+ const assetIndex = details_model_1.SharingDetailsModel.indexes.sharingDetailsAssetId;
20
+ const pagination = this.getPagination(options.pagination);
21
+ const params = {
22
+ pagination,
23
+ index: {
24
+ indexName: assetIndex.name,
25
+ columns: assetIndex.columns,
26
+ },
27
+ };
28
+ const filterList = [this.filter('asset_id', options.data.assetId)];
29
+ if (options.filters) {
30
+ options.filters.forEach((filter) => {
31
+ filterList.push(this.filter(filter.column, filter.value));
32
+ });
33
+ }
34
+ params.filters = filterList;
35
+ if (options.sorting)
36
+ params.sorting = options.sorting;
37
+ const response = await super.find(params);
38
+ return response;
39
+ }
40
+ async create(details) {
41
+ const response = (await super.create(details));
42
+ return response;
43
+ }
44
+ async patch(sharingDetailId, details) {
45
+ await super.update([this.filter('sharing_details_id', sharingDetailId)], details);
46
+ return true;
47
+ }
48
+ async delete(sharingDetailId) {
49
+ await super.remove([
50
+ this.filter('sharing_details_id', sharingDetailId),
51
+ ]);
52
+ return true;
53
+ }
54
+ getPagination(options) {
55
+ var _a, _b;
56
+ return {
57
+ limit: (_a = options === null || options === void 0 ? void 0 : options.limit) !== null && _a !== void 0 ? _a : constants_1.LIMIT_PER_PAGE,
58
+ from: (_b = options === null || options === void 0 ? void 0 : options.from) !== null && _b !== void 0 ? _b : undefined,
59
+ };
60
+ }
61
+ }
62
+ exports.SharingDetailsRepository = SharingDetailsRepository;
63
+ //# 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":";;;AAAA,mDAAsD;AAEtD,sDAAwD;AACxD,wDAA+D;AAI/D,MAAa,wBACT,SAAQ,qBAAc;IAGtB;QACI,KAAK,CAAC,mCAAmB,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,eAAuB;QAChC,MAAM,MAAM,GAAG;YACX,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;SAChE,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,QAA+B,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,OAAO,CACT,OAAuC;QAEvC,MAAM,UAAU,GAAG,mCAAmB,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACrE,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1D,MAAM,MAAM,GAKR;YACA,UAAU;YACV,KAAK,EAAE;gBACH,SAAS,EAAE,UAAU,CAAC,IAAI;gBAC1B,OAAO,EAAE,UAAU,CAAC,OAAO;aAC9B;SACJ,CAAC;QAEF,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC/B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;QACP,CAAC;QACD,MAAM,CAAC,OAAO,GAAG,UAAU,CAAC;QAE5B,IAAI,OAAO,CAAC,OAAO;YAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAEtD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,QAA2C,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA4B;QACrC,MAAM,QAAQ,GAAG,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAwB,CAAC;QACtE,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,KAAK,CACP,eAAuB,EACvB,OAA4B;QAE5B,MAAM,KAAK,CAAC,MAAM,CACd,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC,EACpD,OAAO,CACV,CAAC;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,eAAuB;QAChC,MAAM,KAAK,CAAC,MAAM,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,eAAe,CAAC;SACrD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,aAAa,CAAC,OAAoB;;QACtC,OAAO;YACH,KAAK,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,0BAAc;YACvC,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,SAAS;SACnC,CAAC;IACN,CAAC;CACJ;AA7ED,4DA6EC"}
@@ -0,0 +1,33 @@
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
+ created_at: { type: 'date' },
17
+ updated_at: { type: 'date' },
18
+ deleted_at: { type: 'date' },
19
+ qvAttributes: { type: 'object' },
20
+ };
21
+ SharingModel.indexes = {
22
+ sharingAssetIdAssetType: {
23
+ name: 'sharing_asset_id_asset_type_index',
24
+ columns: ['asset_id', 'asset_type'],
25
+ },
26
+ sharingAssetType: {
27
+ name: 'sharing_asset_type_index',
28
+ columns: ['asset_type'],
29
+ },
30
+ };
31
+ SharingModel.schema = constants_1.DATABASE_INFO.DATA_PERSISTENCE_SCHEMA;
32
+ SharingModel.usePool = true;
33
+ //# sourceMappingURL=sharing.model.js.map
@@ -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,oCA4BC;AA3BU,kBAAK,GAAG;IACX,IAAI,EAAE,GAAG,yBAAa,CAAC,aAAa,UAAU;IAC9C,KAAK,EAAE,GAAG,yBAAa,CAAC,YAAY,UAAU;CACjD,CAAC;AAEK,oBAAO,GAAG;IACb,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;IAC3C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC9B,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;AAEK,oBAAO,GAAG;IACb,uBAAuB,EAAE;QACrB,IAAI,EAAE,mCAAmC;QACzC,OAAO,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC;KACtC;IACD,gBAAgB,EAAE;QACd,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,CAAC,YAAY,CAAC;KAC1B;CACJ,CAAC;AAEK,mBAAM,GAAG,yBAAa,CAAC,uBAAuB,CAAC;AAC/C,oBAAO,GAAG,IAAI,CAAC"}