@things-factory/board-service 9.0.0-beta.8 → 9.0.0
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.
- package/dist-server/controllers/analyzer/analyze-integration.js +4 -4
- package/dist-server/controllers/analyzer/analyze-integration.js.map +1 -1
- package/dist-server/controllers/fonts.js +12 -9
- package/dist-server/controllers/fonts.js.map +1 -1
- package/dist-server/controllers/headless-model.d.ts +1 -1
- package/dist-server/controllers/headless-model.js +6 -6
- package/dist-server/controllers/headless-model.js.map +1 -1
- package/dist-server/controllers/headless-playlist.d.ts +1 -1
- package/dist-server/controllers/headless-playlist.js +5 -5
- package/dist-server/controllers/headless-playlist.js.map +1 -1
- package/dist-server/controllers/headless-pool-for-label.js +4 -17
- package/dist-server/controllers/headless-pool-for-label.js.map +1 -1
- package/dist-server/controllers/index.d.ts +1 -1
- package/dist-server/controllers/index.js +8 -8
- package/dist-server/controllers/index.js.map +1 -1
- package/dist-server/controllers/label-command.js +5 -5
- package/dist-server/controllers/label-command.js.map +1 -1
- package/dist-server/controllers/pdf.d.ts +9 -1
- package/dist-server/controllers/pdf.js +18 -11
- package/dist-server/controllers/pdf.js.map +1 -1
- package/dist-server/controllers/screenshot.js +14 -10
- package/dist-server/controllers/screenshot.js.map +1 -1
- package/dist-server/controllers/thumbnail.js +2 -2
- package/dist-server/controllers/thumbnail.js.map +1 -1
- package/dist-server/errors/index.d.ts +1 -1
- package/dist-server/errors/index.js +1 -1
- package/dist-server/errors/index.js.map +1 -1
- package/dist-server/errors/license-error.js +4 -2
- package/dist-server/errors/license-error.js.map +1 -1
- package/dist-server/index.d.ts +4 -4
- package/dist-server/index.js +4 -4
- package/dist-server/index.js.map +1 -1
- package/dist-server/migrations/1556862253000-SeedGroup.js +7 -4
- package/dist-server/migrations/1556862253000-SeedGroup.js.map +1 -1
- package/dist-server/routers/internal-board-view-router.js +1 -1
- package/dist-server/routers/internal-board-view-router.js.map +1 -1
- package/dist-server/routers/standalone-board-service-router.js +41 -41
- package/dist-server/routers/standalone-board-service-router.js.map +1 -1
- package/dist-server/routes.js +12 -10
- package/dist-server/routes.js.map +1 -1
- package/dist-server/service/analysis/analysis-query.js +2 -2
- package/dist-server/service/analysis/analysis-query.js.map +1 -1
- package/dist-server/service/analysis/index.d.ts +1 -1
- package/dist-server/service/analysis/index.js +2 -2
- package/dist-server/service/analysis/index.js.map +1 -1
- package/dist-server/service/board/board-history.d.ts +4 -3
- package/dist-server/service/board/board-history.js +35 -20
- package/dist-server/service/board/board-history.js.map +1 -1
- package/dist-server/service/board/board-mutation.d.ts +2 -2
- package/dist-server/service/board/board-mutation.js +112 -53
- package/dist-server/service/board/board-mutation.js.map +1 -1
- package/dist-server/service/board/board-query.d.ts +5 -5
- package/dist-server/service/board/board-query.js +40 -39
- package/dist-server/service/board/board-query.js.map +1 -1
- package/dist-server/service/board/board-subscription.d.ts +1 -1
- package/dist-server/service/board/board-subscription.js +6 -6
- package/dist-server/service/board/board-subscription.js.map +1 -1
- package/dist-server/service/board/board-type.d.ts +4 -2
- package/dist-server/service/board/board-type.js +28 -20
- package/dist-server/service/board/board-type.js.map +1 -1
- package/dist-server/service/board/board.d.ts +3 -2
- package/dist-server/service/board/board.js +26 -21
- package/dist-server/service/board/board.js.map +1 -1
- package/dist-server/service/board/event-subscriber.d.ts +5 -5
- package/dist-server/service/board/event-subscriber.js +8 -8
- package/dist-server/service/board/event-subscriber.js.map +1 -1
- package/dist-server/service/board/index.d.ts +6 -6
- package/dist-server/service/board/index.js +9 -9
- package/dist-server/service/board/index.js.map +1 -1
- package/dist-server/service/board-favorite/board-favorite-query.d.ts +1 -1
- package/dist-server/service/board-favorite/board-favorite-query.js +5 -5
- package/dist-server/service/board-favorite/board-favorite-query.js.map +1 -1
- package/dist-server/service/board-favorite/board-favorite-type.d.ts +1 -1
- package/dist-server/service/board-favorite/board-favorite-type.js +7 -7
- package/dist-server/service/board-favorite/board-favorite-type.js.map +1 -1
- package/dist-server/service/board-favorite/index.d.ts +1 -1
- package/dist-server/service/board-favorite/index.js +2 -2
- package/dist-server/service/board-favorite/index.js.map +1 -1
- package/dist-server/service/board-template/board-template-mutation.d.ts +2 -2
- package/dist-server/service/board-template/board-template-mutation.js +43 -25
- package/dist-server/service/board-template/board-template-mutation.js.map +1 -1
- package/dist-server/service/board-template/board-template-query.d.ts +2 -2
- package/dist-server/service/board-template/board-template-query.js +13 -13
- package/dist-server/service/board-template/board-template-query.js.map +1 -1
- package/dist-server/service/board-template/board-template-type.d.ts +1 -1
- package/dist-server/service/board-template/board-template-type.js +21 -18
- package/dist-server/service/board-template/board-template-type.js.map +1 -1
- package/dist-server/service/board-template/board-template.js +14 -14
- package/dist-server/service/board-template/board-template.js.map +1 -1
- package/dist-server/service/board-template/index.d.ts +3 -3
- package/dist-server/service/board-template/index.js +5 -5
- package/dist-server/service/board-template/index.js.map +1 -1
- package/dist-server/service/group/group-mutation.d.ts +2 -2
- package/dist-server/service/group/group-mutation.js +25 -16
- package/dist-server/service/group/group-mutation.js.map +1 -1
- package/dist-server/service/group/group-query.d.ts +3 -3
- package/dist-server/service/group/group-query.js +17 -17
- package/dist-server/service/group/group-query.js.map +1 -1
- package/dist-server/service/group/group-type.d.ts +1 -1
- package/dist-server/service/group/group-type.js +10 -10
- package/dist-server/service/group/group-type.js.map +1 -1
- package/dist-server/service/group/group.d.ts +1 -1
- package/dist-server/service/group/group.js +12 -12
- package/dist-server/service/group/group.js.map +1 -1
- package/dist-server/service/group/index.d.ts +3 -3
- package/dist-server/service/group/index.js +5 -5
- package/dist-server/service/group/index.js.map +1 -1
- package/dist-server/service/index.d.ts +6 -6
- package/dist-server/service/index.js +31 -31
- package/dist-server/service/index.js.map +1 -1
- package/dist-server/service/permission/domain-permission-subscriber.js +3 -3
- package/dist-server/service/permission/domain-permission-subscriber.js.map +1 -1
- package/dist-server/service/permission/index.d.ts +1 -1
- package/dist-server/service/permission/index.js +2 -2
- package/dist-server/service/permission/index.js.map +1 -1
- package/dist-server/service/play-group/event-subscriber.d.ts +1 -1
- package/dist-server/service/play-group/event-subscriber.js +3 -3
- package/dist-server/service/play-group/event-subscriber.js.map +1 -1
- package/dist-server/service/play-group/index.d.ts +5 -5
- package/dist-server/service/play-group/index.js +8 -8
- package/dist-server/service/play-group/index.js.map +1 -1
- package/dist-server/service/play-group/play-group-mutation.d.ts +2 -2
- package/dist-server/service/play-group/play-group-mutation.js +35 -22
- package/dist-server/service/play-group/play-group-mutation.js.map +1 -1
- package/dist-server/service/play-group/play-group-query.d.ts +3 -3
- package/dist-server/service/play-group/play-group-query.js +20 -18
- package/dist-server/service/play-group/play-group-query.js.map +1 -1
- package/dist-server/service/play-group/play-group-subscription.d.ts +1 -1
- package/dist-server/service/play-group/play-group-subscription.js +6 -6
- package/dist-server/service/play-group/play-group-subscription.js.map +1 -1
- package/dist-server/service/play-group/play-group-type.d.ts +1 -1
- package/dist-server/service/play-group/play-group-type.js +10 -10
- package/dist-server/service/play-group/play-group-type.js.map +1 -1
- package/dist-server/service/play-group/play-group.d.ts +2 -2
- package/dist-server/service/play-group/play-group.js +17 -13
- package/dist-server/service/play-group/play-group.js.map +1 -1
- package/dist-server/service/theme/index.d.ts +3 -3
- package/dist-server/service/theme/index.js +5 -5
- package/dist-server/service/theme/index.js.map +1 -1
- package/dist-server/service/theme/theme-mutation.d.ts +2 -2
- package/dist-server/service/theme/theme-mutation.js +44 -24
- package/dist-server/service/theme/theme-mutation.js.map +1 -1
- package/dist-server/service/theme/theme-query.d.ts +2 -2
- package/dist-server/service/theme/theme-query.js +13 -13
- package/dist-server/service/theme/theme-query.js.map +1 -1
- package/dist-server/service/theme/theme-type.d.ts +1 -1
- package/dist-server/service/theme/theme-type.js +18 -18
- package/dist-server/service/theme/theme-type.js.map +1 -1
- package/dist-server/service/theme/theme.js +16 -13
- package/dist-server/service/theme/theme.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -9
- package/views/internal-board-full-feature-view.html +0 -1
- package/views/internal-board-player-view.html +0 -1
- package/views/internal-board-service-view.html +0 -1
|
@@ -3,47 +3,47 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.schema = exports.subscribers = exports.entities = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
/* EXPORT ENTITY TYPES */
|
|
6
|
-
tslib_1.__exportStar(require("./board-template/board-template"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./theme/theme"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./board/board"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./group/group"), exports);
|
|
10
|
-
tslib_1.__exportStar(require("./play-group/play-group"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./board-template/board-template.js"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./theme/theme.js"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./board/board.js"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("./group/group.js"), exports);
|
|
10
|
+
tslib_1.__exportStar(require("./play-group/play-group.js"), exports);
|
|
11
11
|
/* IMPORT ENTITIES AND RESOLVERS */
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
12
|
+
const index_js_1 = require("./board-template/index.js");
|
|
13
|
+
const index_js_2 = require("./theme/index.js");
|
|
14
|
+
const index_js_3 = require("./board/index.js");
|
|
15
|
+
const index_js_4 = require("./group/index.js");
|
|
16
|
+
const index_js_5 = require("./play-group/index.js");
|
|
17
|
+
const index_js_6 = require("./analysis/index.js");
|
|
18
|
+
const index_js_7 = require("./board-favorite/index.js");
|
|
19
|
+
const index_js_8 = require("./permission/index.js");
|
|
20
20
|
exports.entities = [
|
|
21
21
|
/* ENTITIES */
|
|
22
|
-
...
|
|
23
|
-
...
|
|
24
|
-
...
|
|
25
|
-
...
|
|
26
|
-
...
|
|
27
|
-
...
|
|
22
|
+
...index_js_1.entities,
|
|
23
|
+
...index_js_2.entities,
|
|
24
|
+
...index_js_3.entities,
|
|
25
|
+
...index_js_4.entities,
|
|
26
|
+
...index_js_5.entities,
|
|
27
|
+
...index_js_7.entities
|
|
28
28
|
];
|
|
29
29
|
exports.subscribers = [
|
|
30
30
|
/* SUBSCRIBERS */
|
|
31
|
-
...
|
|
32
|
-
...
|
|
33
|
-
...
|
|
34
|
-
...
|
|
35
|
-
...
|
|
31
|
+
...index_js_1.subscribers,
|
|
32
|
+
...index_js_2.subscribers,
|
|
33
|
+
...index_js_3.subscribers,
|
|
34
|
+
...index_js_5.subscribers,
|
|
35
|
+
...index_js_8.subscribers
|
|
36
36
|
];
|
|
37
37
|
exports.schema = {
|
|
38
38
|
resolverClasses: [
|
|
39
39
|
/* RESOLVER CLASSES */
|
|
40
|
-
...
|
|
41
|
-
...
|
|
42
|
-
...
|
|
43
|
-
...
|
|
44
|
-
...
|
|
45
|
-
...
|
|
46
|
-
...
|
|
40
|
+
...index_js_1.resolvers,
|
|
41
|
+
...index_js_2.resolvers,
|
|
42
|
+
...index_js_3.resolvers,
|
|
43
|
+
...index_js_4.resolvers,
|
|
44
|
+
...index_js_5.resolvers,
|
|
45
|
+
...index_js_6.resolvers,
|
|
46
|
+
...index_js_7.resolvers
|
|
47
47
|
]
|
|
48
48
|
};
|
|
49
49
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/service/index.ts"],"names":[],"mappings":";;;;AAAA,yBAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/service/index.ts"],"names":[],"mappings":";;;;AAAA,yBAAyB;AACzB,6EAAkD;AAClD,2DAAgC;AAChC,2DAAgC;AAChC,2DAAgC;AAChC,qEAA0C;AAE1C,mCAAmC;AACnC,wDAIkC;AAClC,+CAIyB;AACzB,+CAIyB;AACzB,+CAAyF;AACzF,oDAI8B;AAC9B,kDAA2E;AAC3E,wDAAkH;AAClH,oDAA2E;AAE9D,QAAA,QAAQ,GAAG;IACtB,cAAc;IACd,GAAG,mBAAqB;IACxB,GAAG,mBAAa;IAChB,GAAG,mBAAa;IAChB,GAAG,mBAAa;IAChB,GAAG,mBAAiB;IACpB,GAAG,mBAAqB;CACzB,CAAA;AAEY,QAAA,WAAW,GAAG;IACzB,iBAAiB;IACjB,GAAG,sBAAwB;IAC3B,GAAG,sBAAgB;IACnB,GAAG,sBAAgB;IACnB,GAAG,sBAAoB;IACvB,GAAG,sBAAoB;CACxB,CAAA;AAEY,QAAA,MAAM,GAAG;IACpB,eAAe,EAAE;QACf,sBAAsB;QACtB,GAAG,oBAAsB;QACzB,GAAG,oBAAc;QACjB,GAAG,oBAAc;QACjB,GAAG,oBAAc;QACjB,GAAG,oBAAkB;QACrB,GAAG,oBAAwB;QAC3B,GAAG,oBAAsB;KAC1B;CACF,CAAA","sourcesContent":["/* EXPORT ENTITY TYPES */\nexport * from './board-template/board-template.js'\nexport * from './theme/theme.js'\nexport * from './board/board.js'\nexport * from './group/group.js'\nexport * from './play-group/play-group.js'\n\n/* IMPORT ENTITIES AND RESOLVERS */\nimport {\n entities as BoardTemplateEntities,\n resolvers as BoardTemplateResolvers,\n subscribers as BoardTemplateSubscribers\n} from './board-template/index.js'\nimport {\n entities as ThemeEntities,\n resolvers as ThemeResolvers,\n subscribers as ThemeSubscribers\n} from './theme/index.js'\nimport {\n entities as BoardEntities,\n resolvers as BoardResolvers,\n subscribers as BoardSubscribers\n} from './board/index.js'\nimport { entities as GroupEntities, resolvers as GroupResolvers } from './group/index.js'\nimport {\n entities as PlayGroupEntities,\n resolvers as PlayGroupResolvers,\n subscribers as PlayGroupSubscribers\n} from './play-group/index.js'\nimport { resolvers as IntegrationAnalysisQuery } from './analysis/index.js'\nimport { entities as BoardFavoriteEntities, resolvers as BoardFavoriteResolvers } from './board-favorite/index.js'\nimport { subscribers as PermissionSubscriber } from './permission/index.js'\n\nexport const entities = [\n /* ENTITIES */\n ...BoardTemplateEntities,\n ...ThemeEntities,\n ...BoardEntities,\n ...GroupEntities,\n ...PlayGroupEntities,\n ...BoardFavoriteEntities\n]\n\nexport const subscribers = [\n /* SUBSCRIBERS */\n ...BoardTemplateSubscribers,\n ...ThemeSubscribers,\n ...BoardSubscribers,\n ...PlayGroupSubscribers,\n ...PermissionSubscriber\n]\n\nexport const schema = {\n resolverClasses: [\n /* RESOLVER CLASSES */\n ...BoardTemplateResolvers,\n ...ThemeResolvers,\n ...BoardResolvers,\n ...GroupResolvers,\n ...PlayGroupResolvers,\n ...IntegrationAnalysisQuery,\n ...BoardFavoriteResolvers\n ]\n}\n"]}
|
|
@@ -5,7 +5,7 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const typeorm_1 = require("typeorm");
|
|
6
6
|
const operato_license_checker_1 = require("@things-factory/operato-license-checker");
|
|
7
7
|
const shell_1 = require("@things-factory/shell");
|
|
8
|
-
const
|
|
8
|
+
const license_error_js_1 = require("../../errors/license-error.js");
|
|
9
9
|
let DomainPermissionSubscriber = class DomainPermissionSubscriber {
|
|
10
10
|
listenTo() {
|
|
11
11
|
return shell_1.Domain;
|
|
@@ -17,8 +17,8 @@ let DomainPermissionSubscriber = class DomainPermissionSubscriber {
|
|
|
17
17
|
var entityManager = event.manager;
|
|
18
18
|
var count = (await entityManager.createQueryBuilder().select('id').from(shell_1.Domain, 'domain').getCount()) + 1;
|
|
19
19
|
if (!(0, operato_license_checker_1.checkDomain)(count)) {
|
|
20
|
-
throw new
|
|
21
|
-
errorCode:
|
|
20
|
+
throw new license_error_js_1.LicenseError({
|
|
21
|
+
errorCode: license_error_js_1.LicenseError.ERROR_CODES.VERIFICATION_ERROR
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-permission-subscriber.js","sourceRoot":"","sources":["../../../server/service/permission/domain-permission-subscriber.ts"],"names":[],"mappings":";;;;AAAA,qCAAiF;AAEjF,qFAAqE;AACrE,iDAA8C;AAE9C,
|
|
1
|
+
{"version":3,"file":"domain-permission-subscriber.js","sourceRoot":"","sources":["../../../server/service/permission/domain-permission-subscriber.ts"],"names":[],"mappings":";;;;AAAA,qCAAiF;AAEjF,qFAAqE;AACrE,iDAA8C;AAE9C,oEAA4D;AAGrD,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACrC,QAAQ;QACN,OAAO,cAAM,CAAA;IACf,CAAC;IACD;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,KAA0B;QAC1C,IAAI,aAAa,GAAG,KAAK,CAAC,OAAO,CAAA;QAEjC,IAAI,KAAK,GAAG,CAAC,MAAM,aAAa,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAA;QAEzG,IAAI,CAAC,IAAA,qCAAW,EAAC,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,+BAAY,CAAC;gBACrB,SAAS,EAAE,+BAAY,CAAC,WAAW,CAAC,kBAAkB;aACvD,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AAlBY,gEAA0B;qCAA1B,0BAA0B;IADtC,IAAA,yBAAe,GAAE;GACL,0BAA0B,CAkBtC","sourcesContent":["import { EntitySubscriberInterface, EventSubscriber, InsertEvent } from 'typeorm'\n\nimport { checkDomain } from '@things-factory/operato-license-checker'\nimport { Domain } from '@things-factory/shell'\n\nimport { LicenseError } from '../../errors/license-error.js'\n\n@EventSubscriber()\nexport class DomainPermissionSubscriber implements EntitySubscriberInterface<Domain> {\n listenTo() {\n return Domain\n }\n /**\n * Called before domain insertion.\n */\n async afterInsert(event: InsertEvent<Domain>) {\n var entityManager = event.manager\n\n var count = (await entityManager.createQueryBuilder().select('id').from(Domain, 'domain').getCount()) + 1\n\n if (!checkDomain(count)) {\n throw new LicenseError({\n errorCode: LicenseError.ERROR_CODES.VERIFICATION_ERROR\n })\n }\n }\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { DomainPermissionSubscriber } from './domain-permission-subscriber';
|
|
1
|
+
import { DomainPermissionSubscriber } from './domain-permission-subscriber.js';
|
|
2
2
|
export declare const subscribers: (typeof DomainPermissionSubscriber)[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.subscribers = void 0;
|
|
4
|
-
const
|
|
5
|
-
exports.subscribers = [
|
|
4
|
+
const domain_permission_subscriber_js_1 = require("./domain-permission-subscriber.js");
|
|
5
|
+
exports.subscribers = [domain_permission_subscriber_js_1.DomainPermissionSubscriber];
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/permission/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/permission/index.ts"],"names":[],"mappings":";;;AAAA,uFAA8E;AAEjE,QAAA,WAAW,GAAG,CAAC,4DAA0B,CAAC,CAAA","sourcesContent":["import { DomainPermissionSubscriber } from './domain-permission-subscriber.js'\n\nexport const subscribers = [DomainPermissionSubscriber]\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EntitySubscriberInterface, UpdateEvent } from 'typeorm';
|
|
2
|
-
import { PlayGroup } from './play-group';
|
|
2
|
+
import { PlayGroup } from './play-group.js';
|
|
3
3
|
export declare class PlayGroupSubscriber implements EntitySubscriberInterface<PlayGroup> {
|
|
4
4
|
listenTo(): typeof PlayGroup;
|
|
5
5
|
afterUpdate(event: UpdateEvent<PlayGroup>): Promise<any>;
|
|
@@ -4,10 +4,10 @@ exports.PlayGroupSubscriber = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const typeorm_1 = require("typeorm");
|
|
6
6
|
const shell_1 = require("@things-factory/shell");
|
|
7
|
-
const
|
|
7
|
+
const play_group_js_1 = require("./play-group.js");
|
|
8
8
|
let PlayGroupSubscriber = class PlayGroupSubscriber {
|
|
9
9
|
listenTo() {
|
|
10
|
-
return
|
|
10
|
+
return play_group_js_1.PlayGroup;
|
|
11
11
|
}
|
|
12
12
|
// afterInsert(event: InsertEvent<PlayGroup>): Promise<any> | void {
|
|
13
13
|
// const playGroup = event.entity
|
|
@@ -17,7 +17,7 @@ let PlayGroupSubscriber = class PlayGroupSubscriber {
|
|
|
17
17
|
// }
|
|
18
18
|
async afterUpdate(event) {
|
|
19
19
|
var playGroup = event.entity;
|
|
20
|
-
playGroup = await (0, shell_1.getRepository)(
|
|
20
|
+
playGroup = await (0, shell_1.getRepository)(play_group_js_1.PlayGroup).findOne({
|
|
21
21
|
where: { domain: { id: playGroup.domainId }, id: playGroup.id },
|
|
22
22
|
relations: ['domain', 'boards']
|
|
23
23
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-subscriber.js","sourceRoot":"","sources":["../../../server/service/play-group/event-subscriber.ts"],"names":[],"mappings":";;;;AAAA,qCAA8F;AAE9F,iDAA6D;AAE7D,
|
|
1
|
+
{"version":3,"file":"event-subscriber.js","sourceRoot":"","sources":["../../../server/service/play-group/event-subscriber.ts"],"names":[],"mappings":";;;;AAAA,qCAA8F;AAE9F,iDAA6D;AAE7D,mDAA2C;AAGpC,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,QAAQ;QACN,OAAO,yBAAS,CAAA;IAClB,CAAC;IAED,oEAAoE;IACpE,mCAAmC;IAEnC,kCAAkC;IAClC,gBAAgB;IAChB,OAAO;IACP,IAAI;IAEJ,KAAK,CAAC,WAAW,CAAC,KAA6B;QAC7C,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,CAAA;QAE5B,SAAS,GAAG,MAAM,IAAA,qBAAa,EAAC,yBAAS,CAAC,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE;YAC/D,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;SAChC,CAAC,CAAA;QAEF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAM;QACR,CAAC;QAED,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAChD,4BAA4B;YAC5B,MAAM,YAAY,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAC1D,MAAM,aAAa,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAE3D,yBAAyB;YACzB,IAAI,YAAY,KAAK,CAAC,CAAC,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;gBAChD,mCAAmC;gBACnC,OAAO,CAAC,CAAA;YACV,CAAC;iBAAM,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC/B,uCAAuC;gBACvC,OAAO,CAAC,CAAA;YACV,CAAC;iBAAM,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;gBAChC,uCAAuC;gBACvC,OAAO,CAAC,CAAC,CAAA;YACX,CAAC;iBAAM,CAAC;gBACN,8CAA8C;gBAC9C,OAAO,YAAY,GAAG,aAAa,CAAA;YACrC,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,cAAM,CAAC,OAAO,CAAC,YAAY,EAAE;YAC3B,SAAS;SACV,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAlDY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,yBAAe,GAAE;GACL,mBAAmB,CAkD/B","sourcesContent":["import { EventSubscriber, EntitySubscriberInterface, InsertEvent, UpdateEvent } from 'typeorm'\n\nimport { pubsub, getRepository } from '@things-factory/shell'\n\nimport { PlayGroup } from './play-group.js'\n\n@EventSubscriber()\nexport class PlayGroupSubscriber implements EntitySubscriberInterface<PlayGroup> {\n listenTo() {\n return PlayGroup\n }\n\n // afterInsert(event: InsertEvent<PlayGroup>): Promise<any> | void {\n // const playGroup = event.entity\n\n // pubsub.publish('playGroup', {\n // playGroup\n // })\n // }\n\n async afterUpdate(event: UpdateEvent<PlayGroup>): Promise<any> {\n var playGroup = event.entity\n\n playGroup = await getRepository(PlayGroup).findOne({\n where: { domain: { id: playGroup.domainId }, id: playGroup.id },\n relations: ['domain', 'boards']\n })\n\n if (!playGroup) {\n return\n }\n\n playGroup.boards = playGroup.boards.sort((a, b) => {\n // 배열 A에 포함된 아이디의 순서를 가져옵니다.\n const indexOfOrder = (playGroup.order || []).indexOf(a.id)\n const indexOfBoards = (playGroup.order || []).indexOf(b.id)\n\n // 두 아이디의 순서를 비교하여 정렬합니다.\n if (indexOfOrder === -1 && indexOfBoards === -1) {\n // 두 아이디 모두 배열 A에 없는 경우, 그대로 유지합니다.\n return 0\n } else if (indexOfOrder === -1) {\n // 아이디 A만 배열 A에 없는 경우, 아이디 B를 먼저 정렬합니다.\n return 1\n } else if (indexOfBoards === -1) {\n // 아이디 B만 배열 A에 없는 경우, 아이디 A를 먼저 정렬합니다.\n return -1\n } else {\n // 두 아이디 모두 배열 A에 있는 경우, 배열 A의 아이디 순서대로 정렬합니다.\n return indexOfOrder - indexOfBoards\n }\n })\n\n pubsub.publish('play-group', {\n playGroup\n })\n }\n}\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { PlayGroup } from './play-group';
|
|
2
|
-
import { PlayGroupQuery } from './play-group-query';
|
|
3
|
-
import { PlayGroupMutation } from './play-group-mutation';
|
|
4
|
-
import { PlayGroupSubscription } from './play-group-subscription';
|
|
5
|
-
import { PlayGroupSubscriber } from './event-subscriber';
|
|
1
|
+
import { PlayGroup } from './play-group.js';
|
|
2
|
+
import { PlayGroupQuery } from './play-group-query.js';
|
|
3
|
+
import { PlayGroupMutation } from './play-group-mutation.js';
|
|
4
|
+
import { PlayGroupSubscription } from './play-group-subscription.js';
|
|
5
|
+
import { PlayGroupSubscriber } from './event-subscriber.js';
|
|
6
6
|
export declare const entities: (typeof PlayGroup)[];
|
|
7
7
|
export declare const resolvers: (typeof PlayGroupQuery | typeof PlayGroupMutation | typeof PlayGroupSubscription)[];
|
|
8
8
|
export declare const subscribers: (typeof PlayGroupSubscriber)[];
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.subscribers = exports.resolvers = exports.entities = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
exports.entities = [
|
|
10
|
-
exports.resolvers = [
|
|
11
|
-
exports.subscribers = [
|
|
4
|
+
const play_group_js_1 = require("./play-group.js");
|
|
5
|
+
const play_group_query_js_1 = require("./play-group-query.js");
|
|
6
|
+
const play_group_mutation_js_1 = require("./play-group-mutation.js");
|
|
7
|
+
const play_group_subscription_js_1 = require("./play-group-subscription.js");
|
|
8
|
+
const event_subscriber_js_1 = require("./event-subscriber.js");
|
|
9
|
+
exports.entities = [play_group_js_1.PlayGroup];
|
|
10
|
+
exports.resolvers = [play_group_query_js_1.PlayGroupQuery, play_group_mutation_js_1.PlayGroupMutation, play_group_subscription_js_1.PlayGroupSubscription];
|
|
11
|
+
exports.subscribers = [event_subscriber_js_1.PlayGroupSubscriber];
|
|
12
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/play-group/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/play-group/index.ts"],"names":[],"mappings":";;;AAAA,mDAA2C;AAC3C,+DAAsD;AACtD,qEAA4D;AAC5D,6EAAoE;AACpE,+DAA2D;AAE9C,QAAA,QAAQ,GAAG,CAAC,yBAAS,CAAC,CAAA;AACtB,QAAA,SAAS,GAAG,CAAC,oCAAc,EAAE,0CAAiB,EAAE,kDAAqB,CAAC,CAAA;AACtE,QAAA,WAAW,GAAG,CAAC,yCAAmB,CAAC,CAAA","sourcesContent":["import { PlayGroup } from './play-group.js'\nimport { PlayGroupQuery } from './play-group-query.js'\nimport { PlayGroupMutation } from './play-group-mutation.js'\nimport { PlayGroupSubscription } from './play-group-subscription.js'\nimport { PlayGroupSubscriber } from './event-subscriber.js'\n\nexport const entities = [PlayGroup]\nexport const resolvers = [PlayGroupQuery, PlayGroupMutation, PlayGroupSubscription]\nexport const subscribers = [PlayGroupSubscriber]\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { PlayGroup } from './play-group';
|
|
2
|
-
import { NewPlayGroup, PlayGroupPatch } from './play-group-type';
|
|
1
|
+
import { PlayGroup } from './play-group.js';
|
|
2
|
+
import { NewPlayGroup, PlayGroupPatch } from './play-group-type.js';
|
|
3
3
|
export declare class PlayGroupMutation {
|
|
4
4
|
createPlayGroup(playGroup: NewPlayGroup, context: ResolverContext): Promise<PlayGroup>;
|
|
5
5
|
updatePlayGroup(id: string, patch: PlayGroupPatch, context: ResolverContext): Promise<PlayGroup>;
|
|
@@ -4,29 +4,42 @@ exports.PlayGroupMutation = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const type_graphql_1 = require("type-graphql");
|
|
6
6
|
const typeorm_1 = require("typeorm");
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
7
|
+
const board_js_1 = require("../board/board.js");
|
|
8
|
+
const play_group_js_1 = require("./play-group.js");
|
|
9
|
+
const play_group_type_js_1 = require("./play-group-type.js");
|
|
10
10
|
let PlayGroupMutation = class PlayGroupMutation {
|
|
11
11
|
async createPlayGroup(playGroup, context) {
|
|
12
12
|
const { domain, user, tx } = context.state;
|
|
13
|
-
return await tx.getRepository(
|
|
13
|
+
return await tx.getRepository(play_group_js_1.PlayGroup).save({
|
|
14
|
+
domain,
|
|
15
|
+
...playGroup,
|
|
16
|
+
creator: user,
|
|
17
|
+
updater: user
|
|
18
|
+
});
|
|
14
19
|
}
|
|
15
20
|
async updatePlayGroup(id, patch, context) {
|
|
16
21
|
const { domain, user, tx } = context.state;
|
|
17
|
-
const repository = tx.getRepository(
|
|
22
|
+
const repository = tx.getRepository(play_group_js_1.PlayGroup);
|
|
18
23
|
const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id });
|
|
19
|
-
return await repository.save(
|
|
24
|
+
return await repository.save({
|
|
25
|
+
...playGroup,
|
|
26
|
+
...patch,
|
|
27
|
+
updater: user
|
|
28
|
+
});
|
|
20
29
|
}
|
|
21
30
|
async reorderPlayGroup(id, boardIds, context) {
|
|
22
31
|
const { domain, user, tx } = context.state;
|
|
23
|
-
const repository = tx.getRepository(
|
|
32
|
+
const repository = tx.getRepository(play_group_js_1.PlayGroup);
|
|
24
33
|
const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id });
|
|
25
|
-
return await repository.save(
|
|
34
|
+
return await repository.save({
|
|
35
|
+
...playGroup,
|
|
36
|
+
order: boardIds,
|
|
37
|
+
updater: user
|
|
38
|
+
});
|
|
26
39
|
}
|
|
27
40
|
async joinPlayGroup(id, boardIds, context) {
|
|
28
41
|
const { tx } = context.state;
|
|
29
|
-
const repository = tx.getRepository(
|
|
42
|
+
const repository = tx.getRepository(play_group_js_1.PlayGroup);
|
|
30
43
|
const playGroup = await repository.findOne({
|
|
31
44
|
where: { id },
|
|
32
45
|
relations: ['boards']
|
|
@@ -41,7 +54,7 @@ let PlayGroupMutation = class PlayGroupMutation {
|
|
|
41
54
|
order.push(boardId);
|
|
42
55
|
}
|
|
43
56
|
});
|
|
44
|
-
const boardRepository = tx.getRepository(
|
|
57
|
+
const boardRepository = tx.getRepository(board_js_1.Board);
|
|
45
58
|
playGroup.boards = await boardRepository.findBy({ id: (0, typeorm_1.In)(boardIdList) });
|
|
46
59
|
playGroup.updatedAt = new Date();
|
|
47
60
|
playGroup.order = order;
|
|
@@ -49,7 +62,7 @@ let PlayGroupMutation = class PlayGroupMutation {
|
|
|
49
62
|
}
|
|
50
63
|
async leavePlayGroup(id, boardIds, context) {
|
|
51
64
|
const { tx } = context.state;
|
|
52
|
-
const repository = tx.getRepository(
|
|
65
|
+
const repository = tx.getRepository(play_group_js_1.PlayGroup);
|
|
53
66
|
const playGroup = await repository.findOne({
|
|
54
67
|
where: { id },
|
|
55
68
|
relations: ['boards']
|
|
@@ -66,7 +79,7 @@ let PlayGroupMutation = class PlayGroupMutation {
|
|
|
66
79
|
order.splice(index, 1);
|
|
67
80
|
}
|
|
68
81
|
});
|
|
69
|
-
const boardRepository = tx.getRepository(
|
|
82
|
+
const boardRepository = tx.getRepository(board_js_1.Board);
|
|
70
83
|
playGroup.boards = await boardRepository.findBy({ id: (0, typeorm_1.In)(boardIdList) });
|
|
71
84
|
playGroup.updatedAt = new Date();
|
|
72
85
|
playGroup.order = order;
|
|
@@ -74,7 +87,7 @@ let PlayGroupMutation = class PlayGroupMutation {
|
|
|
74
87
|
}
|
|
75
88
|
async deletePlayGroup(id, context) {
|
|
76
89
|
const { domain, tx } = context.state;
|
|
77
|
-
const repository = tx.getRepository(
|
|
90
|
+
const repository = tx.getRepository(play_group_js_1.PlayGroup);
|
|
78
91
|
/* TODO - 플레이 그룹은 소속된 보드-플레이그룹 관계들도 제거되어야 한다. */
|
|
79
92
|
const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id });
|
|
80
93
|
await repository.delete(id);
|
|
@@ -83,26 +96,26 @@ let PlayGroupMutation = class PlayGroupMutation {
|
|
|
83
96
|
};
|
|
84
97
|
exports.PlayGroupMutation = PlayGroupMutation;
|
|
85
98
|
tslib_1.__decorate([
|
|
86
|
-
(0, type_graphql_1.Mutation)(returns =>
|
|
99
|
+
(0, type_graphql_1.Mutation)(returns => play_group_js_1.PlayGroup, { description: 'Creates a new play group.' }),
|
|
87
100
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
88
101
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('playGroup')),
|
|
89
102
|
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
|
90
103
|
tslib_1.__metadata("design:type", Function),
|
|
91
|
-
tslib_1.__metadata("design:paramtypes", [
|
|
104
|
+
tslib_1.__metadata("design:paramtypes", [play_group_type_js_1.NewPlayGroup, Object]),
|
|
92
105
|
tslib_1.__metadata("design:returntype", Promise)
|
|
93
106
|
], PlayGroupMutation.prototype, "createPlayGroup", null);
|
|
94
107
|
tslib_1.__decorate([
|
|
95
|
-
(0, type_graphql_1.Mutation)(returns =>
|
|
108
|
+
(0, type_graphql_1.Mutation)(returns => play_group_js_1.PlayGroup, { description: 'Updates an existing play group.' }),
|
|
96
109
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
97
110
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
98
111
|
tslib_1.__param(1, (0, type_graphql_1.Arg)('patch')),
|
|
99
112
|
tslib_1.__param(2, (0, type_graphql_1.Ctx)()),
|
|
100
113
|
tslib_1.__metadata("design:type", Function),
|
|
101
|
-
tslib_1.__metadata("design:paramtypes", [String,
|
|
114
|
+
tslib_1.__metadata("design:paramtypes", [String, play_group_type_js_1.PlayGroupPatch, Object]),
|
|
102
115
|
tslib_1.__metadata("design:returntype", Promise)
|
|
103
116
|
], PlayGroupMutation.prototype, "updatePlayGroup", null);
|
|
104
117
|
tslib_1.__decorate([
|
|
105
|
-
(0, type_graphql_1.Mutation)(returns =>
|
|
118
|
+
(0, type_graphql_1.Mutation)(returns => play_group_js_1.PlayGroup, { description: 'Sets the custom playback order for boards in a play group.' }),
|
|
106
119
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
107
120
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
108
121
|
tslib_1.__param(1, (0, type_graphql_1.Arg)('boardIds', type => [String])),
|
|
@@ -112,7 +125,7 @@ tslib_1.__decorate([
|
|
|
112
125
|
tslib_1.__metadata("design:returntype", Promise)
|
|
113
126
|
], PlayGroupMutation.prototype, "reorderPlayGroup", null);
|
|
114
127
|
tslib_1.__decorate([
|
|
115
|
-
(0, type_graphql_1.Mutation)(returns =>
|
|
128
|
+
(0, type_graphql_1.Mutation)(returns => play_group_js_1.PlayGroup, { description: 'Adds one or more boards to a play group.' }),
|
|
116
129
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
117
130
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
118
131
|
tslib_1.__param(1, (0, type_graphql_1.Arg)('boardIds', type => [String])),
|
|
@@ -122,7 +135,7 @@ tslib_1.__decorate([
|
|
|
122
135
|
tslib_1.__metadata("design:returntype", Promise)
|
|
123
136
|
], PlayGroupMutation.prototype, "joinPlayGroup", null);
|
|
124
137
|
tslib_1.__decorate([
|
|
125
|
-
(0, type_graphql_1.Mutation)(returns =>
|
|
138
|
+
(0, type_graphql_1.Mutation)(returns => play_group_js_1.PlayGroup, { description: 'Removes one or more boards from a play group.' }),
|
|
126
139
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
127
140
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
128
141
|
tslib_1.__param(1, (0, type_graphql_1.Arg)('boardIds', type => [String])),
|
|
@@ -132,7 +145,7 @@ tslib_1.__decorate([
|
|
|
132
145
|
tslib_1.__metadata("design:returntype", Promise)
|
|
133
146
|
], PlayGroupMutation.prototype, "leavePlayGroup", null);
|
|
134
147
|
tslib_1.__decorate([
|
|
135
|
-
(0, type_graphql_1.Mutation)(returns => Boolean, { description: '
|
|
148
|
+
(0, type_graphql_1.Mutation)(returns => Boolean, { description: 'Deletes a play group.' }),
|
|
136
149
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
137
150
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
138
151
|
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
|
@@ -141,6 +154,6 @@ tslib_1.__decorate([
|
|
|
141
154
|
tslib_1.__metadata("design:returntype", Promise)
|
|
142
155
|
], PlayGroupMutation.prototype, "deletePlayGroup", null);
|
|
143
156
|
exports.PlayGroupMutation = PlayGroupMutation = tslib_1.__decorate([
|
|
144
|
-
(0, type_graphql_1.Resolver)(
|
|
157
|
+
(0, type_graphql_1.Resolver)(play_group_js_1.PlayGroup)
|
|
145
158
|
], PlayGroupMutation);
|
|
146
159
|
//# sourceMappingURL=play-group-mutation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"play-group-mutation.js","sourceRoot":"","sources":["../../../server/service/play-group/play-group-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Data } from '@things-factory/shell'\nimport { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport { Board } from '../board/board'\nimport { PlayGroup } from './play-group'\nimport { NewPlayGroup, PlayGroupPatch } from './play-group-type'\n\n@Resolver(PlayGroup)\nexport class PlayGroupMutation {\n @Mutation(returns => PlayGroup, { description: 'To create new PlayGroup' })\n @Directive('@transaction')\n async createPlayGroup(\n @Arg('playGroup') playGroup: NewPlayGroup,\n @Ctx() context: ResolverContext\n ): Promise<PlayGroup> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(PlayGroup).save({\n domain,\n ...playGroup,\n creator: user,\n updater: user\n })\n }\n\n @Mutation(returns => PlayGroup, { description: 'To modify PlayGroup information' })\n @Directive('@transaction')\n async updatePlayGroup(\n @Arg('id') id: string,\n @Arg('patch') patch: PlayGroupPatch,\n @Ctx() context: ResolverContext\n ): Promise<PlayGroup> {\n const { domain, user, tx } = context.state\n const repository = tx.getRepository(PlayGroup)\n\n const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id })\n\n return await repository.save({\n ...playGroup,\n ...patch,\n updater: user\n })\n }\n\n @Mutation(returns => PlayGroup, { description: 'To modify board order of a PlayGroup' })\n @Directive('@transaction')\n async reorderPlayGroup(\n @Arg('id') id: string,\n @Arg('boardIds', type => [String]) boardIds: string[],\n @Ctx() context: ResolverContext\n ): Promise<PlayGroup> {\n const { domain, user, tx } = context.state\n const repository = tx.getRepository(PlayGroup)\n\n const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id })\n\n return await repository.save({\n ...playGroup,\n order: boardIds,\n updater: user\n })\n }\n\n @Mutation(returns => PlayGroup, { description: 'To make the board to join the play group' })\n @Directive('@transaction')\n async joinPlayGroup(\n @Arg('id') id: string,\n @Arg('boardIds', type => [String]) boardIds: string[],\n @Ctx() context: ResolverContext\n ) {\n const { tx } = context.state\n\n const repository = tx.getRepository(PlayGroup)\n const playGroup = await repository.findOne({\n where: { id },\n relations: ['boards']\n })\n const order = playGroup.order || []\n\n const boardIdList = playGroup.boards.map(board => board.id)\n boardIds.forEach(boardId => {\n if (boardIdList.indexOf(boardId) == -1) {\n boardIdList.push(boardId)\n }\n if (order.indexOf(boardId) == -1) {\n order.push(boardId)\n }\n })\n\n const boardRepository = tx.getRepository(Board)\n playGroup.boards = await boardRepository.findBy({ id: In(boardIdList) })\n playGroup.updatedAt = new Date()\n playGroup.order = order\n\n return await repository.save(playGroup)\n }\n\n @Mutation(returns => PlayGroup, { description: 'To make the board to leave from the play group' })\n @Directive('@transaction')\n async leavePlayGroup(\n @Arg('id') id: string,\n @Arg('boardIds', type => [String]) boardIds: string[],\n @Ctx() context: ResolverContext\n ) {\n const { tx } = context.state\n\n const repository = tx.getRepository(PlayGroup)\n const playGroup = await repository.findOne({\n where: { id },\n relations: ['boards']\n })\n const order = playGroup.order || []\n\n const boardIdList = playGroup.boards.map(board => board.id)\n boardIds.forEach(boardId => {\n let index = boardIdList.indexOf(boardId)\n if (index !== -1) {\n boardIdList.splice(index, 1)\n }\n\n index = order.indexOf(boardId)\n if (index !== -1) {\n order.splice(index, 1)\n }\n })\n\n const boardRepository = tx.getRepository(Board)\n playGroup.boards = await boardRepository.findBy({ id: In(boardIdList) })\n playGroup.updatedAt = new Date()\n playGroup.order = order\n\n return await repository.save(playGroup)\n }\n\n @Mutation(returns => Boolean, { description: 'To delete PlayGroup' })\n @Directive('@transaction')\n async deletePlayGroup(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n const repository = tx.getRepository(PlayGroup)\n\n /* TODO - 플레이 그룹은 소속된 보드-플레이그룹 관계들도 제거되어야 한다. */\n const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id })\n\n await repository.delete(id)\n return true\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"play-group-mutation.js","sourceRoot":"","sources":["../../../server/service/play-group/play-group-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Data } from '@things-factory/shell'\nimport { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport { Board } from '../board/board.js'\nimport { PlayGroup } from './play-group.js'\nimport { NewPlayGroup, PlayGroupPatch } from './play-group-type.js'\n\n@Resolver(PlayGroup)\nexport class PlayGroupMutation {\n @Mutation(returns => PlayGroup, { description: 'Creates a new play group.' })\n @Directive('@transaction')\n async createPlayGroup(\n @Arg('playGroup') playGroup: NewPlayGroup,\n @Ctx() context: ResolverContext\n ): Promise<PlayGroup> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(PlayGroup).save({\n domain,\n ...playGroup,\n creator: user,\n updater: user\n })\n }\n\n @Mutation(returns => PlayGroup, { description: 'Updates an existing play group.' })\n @Directive('@transaction')\n async updatePlayGroup(\n @Arg('id') id: string,\n @Arg('patch') patch: PlayGroupPatch,\n @Ctx() context: ResolverContext\n ): Promise<PlayGroup> {\n const { domain, user, tx } = context.state\n const repository = tx.getRepository(PlayGroup)\n\n const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id })\n\n return await repository.save({\n ...playGroup,\n ...patch,\n updater: user\n })\n }\n\n @Mutation(returns => PlayGroup, { description: 'Sets the custom playback order for boards in a play group.' })\n @Directive('@transaction')\n async reorderPlayGroup(\n @Arg('id') id: string,\n @Arg('boardIds', type => [String]) boardIds: string[],\n @Ctx() context: ResolverContext\n ): Promise<PlayGroup> {\n const { domain, user, tx } = context.state\n const repository = tx.getRepository(PlayGroup)\n\n const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id })\n\n return await repository.save({\n ...playGroup,\n order: boardIds,\n updater: user\n })\n }\n\n @Mutation(returns => PlayGroup, { description: 'Adds one or more boards to a play group.' })\n @Directive('@transaction')\n async joinPlayGroup(\n @Arg('id') id: string,\n @Arg('boardIds', type => [String]) boardIds: string[],\n @Ctx() context: ResolverContext\n ) {\n const { tx } = context.state\n\n const repository = tx.getRepository(PlayGroup)\n const playGroup = await repository.findOne({\n where: { id },\n relations: ['boards']\n })\n const order = playGroup.order || []\n\n const boardIdList = playGroup.boards.map(board => board.id)\n boardIds.forEach(boardId => {\n if (boardIdList.indexOf(boardId) == -1) {\n boardIdList.push(boardId)\n }\n if (order.indexOf(boardId) == -1) {\n order.push(boardId)\n }\n })\n\n const boardRepository = tx.getRepository(Board)\n playGroup.boards = await boardRepository.findBy({ id: In(boardIdList) })\n playGroup.updatedAt = new Date()\n playGroup.order = order\n\n return await repository.save(playGroup)\n }\n\n @Mutation(returns => PlayGroup, { description: 'Removes one or more boards from a play group.' })\n @Directive('@transaction')\n async leavePlayGroup(\n @Arg('id') id: string,\n @Arg('boardIds', type => [String]) boardIds: string[],\n @Ctx() context: ResolverContext\n ) {\n const { tx } = context.state\n\n const repository = tx.getRepository(PlayGroup)\n const playGroup = await repository.findOne({\n where: { id },\n relations: ['boards']\n })\n const order = playGroup.order || []\n\n const boardIdList = playGroup.boards.map(board => board.id)\n boardIds.forEach(boardId => {\n let index = boardIdList.indexOf(boardId)\n if (index !== -1) {\n boardIdList.splice(index, 1)\n }\n\n index = order.indexOf(boardId)\n if (index !== -1) {\n order.splice(index, 1)\n }\n })\n\n const boardRepository = tx.getRepository(Board)\n playGroup.boards = await boardRepository.findBy({ id: In(boardIdList) })\n playGroup.updatedAt = new Date()\n playGroup.order = order\n\n return await repository.save(playGroup)\n }\n\n @Mutation(returns => Boolean, { description: 'Deletes a play group.' })\n @Directive('@transaction')\n async deletePlayGroup(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n const repository = tx.getRepository(PlayGroup)\n\n /* TODO - 플레이 그룹은 소속된 보드-플레이그룹 관계들도 제거되어야 한다. */\n const playGroup = await repository.findOneBy({ domain: { id: domain.id }, id })\n\n await repository.delete(id)\n return true\n }\n}\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { User } from '@things-factory/auth-base';
|
|
2
2
|
import { Domain, ListParam } from '@things-factory/shell';
|
|
3
|
-
import { Board } from '../board/board';
|
|
4
|
-
import { PlayGroup } from './play-group';
|
|
5
|
-
import { PlayGroupList } from './play-group-type';
|
|
3
|
+
import { Board } from '../board/board.js';
|
|
4
|
+
import { PlayGroup } from './play-group.js';
|
|
5
|
+
import { PlayGroupList } from './play-group-type.js';
|
|
6
6
|
export declare class PlayGroupQuery {
|
|
7
7
|
playGroup(id: string, context: ResolverContext): Promise<PlayGroup>;
|
|
8
8
|
playGroupByName(name: string, context: ResolverContext): Promise<PlayGroup>;
|
|
@@ -5,26 +5,26 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const type_graphql_1 = require("type-graphql");
|
|
6
6
|
const auth_base_1 = require("@things-factory/auth-base");
|
|
7
7
|
const shell_1 = require("@things-factory/shell");
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
8
|
+
const board_js_1 = require("../board/board.js");
|
|
9
|
+
const play_group_js_1 = require("./play-group.js");
|
|
10
|
+
const play_group_type_js_1 = require("./play-group-type.js");
|
|
11
11
|
let PlayGroupQuery = class PlayGroupQuery {
|
|
12
12
|
async playGroup(id, context) {
|
|
13
13
|
const { domain } = context.state;
|
|
14
|
-
return await (0, shell_1.getRepository)(
|
|
14
|
+
return await (0, shell_1.getRepository)(play_group_js_1.PlayGroup).findOne({
|
|
15
15
|
where: { domain: { id: domain.id }, id }
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
18
|
async playGroupByName(name, context) {
|
|
19
19
|
const { domain } = context.state;
|
|
20
|
-
return await (0, shell_1.getRepository)(
|
|
20
|
+
return await (0, shell_1.getRepository)(play_group_js_1.PlayGroup).findOne({
|
|
21
21
|
where: { domain: { id: domain.id }, name }
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
async playGroups(params, context) {
|
|
25
25
|
const { domain } = context.state;
|
|
26
26
|
const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
|
|
27
|
-
repository: (0, shell_1.getRepository)(
|
|
27
|
+
repository: (0, shell_1.getRepository)(play_group_js_1.PlayGroup),
|
|
28
28
|
params,
|
|
29
29
|
domain,
|
|
30
30
|
searchables: ['name', 'description']
|
|
@@ -33,7 +33,7 @@ let PlayGroupQuery = class PlayGroupQuery {
|
|
|
33
33
|
return { items, total };
|
|
34
34
|
}
|
|
35
35
|
async boards(playGroup) {
|
|
36
|
-
const { order = [], boards = [] } = await (0, shell_1.getRepository)(
|
|
36
|
+
const { order = [], boards = [] } = await (0, shell_1.getRepository)(play_group_js_1.PlayGroup).findOne({
|
|
37
37
|
where: { id: playGroup.id },
|
|
38
38
|
relations: ['boards']
|
|
39
39
|
});
|
|
@@ -72,7 +72,7 @@ let PlayGroupQuery = class PlayGroupQuery {
|
|
|
72
72
|
};
|
|
73
73
|
exports.PlayGroupQuery = PlayGroupQuery;
|
|
74
74
|
tslib_1.__decorate([
|
|
75
|
-
(0, type_graphql_1.Query)(returns =>
|
|
75
|
+
(0, type_graphql_1.Query)(returns => play_group_js_1.PlayGroup, { nullable: true, description: 'Finds a single play group by its ID.' }),
|
|
76
76
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
77
77
|
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
|
78
78
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -80,7 +80,7 @@ tslib_1.__decorate([
|
|
|
80
80
|
tslib_1.__metadata("design:returntype", Promise)
|
|
81
81
|
], PlayGroupQuery.prototype, "playGroup", null);
|
|
82
82
|
tslib_1.__decorate([
|
|
83
|
-
(0, type_graphql_1.Query)(returns =>
|
|
83
|
+
(0, type_graphql_1.Query)(returns => play_group_js_1.PlayGroup, { nullable: true, description: 'Finds a single play group by its name.' }),
|
|
84
84
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('name')),
|
|
85
85
|
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
|
86
86
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -88,7 +88,7 @@ tslib_1.__decorate([
|
|
|
88
88
|
tslib_1.__metadata("design:returntype", Promise)
|
|
89
89
|
], PlayGroupQuery.prototype, "playGroupByName", null);
|
|
90
90
|
tslib_1.__decorate([
|
|
91
|
-
(0, type_graphql_1.Query)(returns =>
|
|
91
|
+
(0, type_graphql_1.Query)(returns => play_group_type_js_1.PlayGroupList, { description: 'Retrieves a paginated list of play groups.' }),
|
|
92
92
|
tslib_1.__param(0, (0, type_graphql_1.Args)(type => shell_1.ListParam)),
|
|
93
93
|
tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
|
|
94
94
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -96,34 +96,36 @@ tslib_1.__decorate([
|
|
|
96
96
|
tslib_1.__metadata("design:returntype", Promise)
|
|
97
97
|
], PlayGroupQuery.prototype, "playGroups", null);
|
|
98
98
|
tslib_1.__decorate([
|
|
99
|
-
(0, type_graphql_1.FieldResolver)(type => [
|
|
99
|
+
(0, type_graphql_1.FieldResolver)(type => [board_js_1.Board], {
|
|
100
|
+
description: 'Resolves the ordered list of boards for a play group, sorted by the custom order array.'
|
|
101
|
+
}),
|
|
100
102
|
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
101
103
|
tslib_1.__metadata("design:type", Function),
|
|
102
104
|
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
103
105
|
tslib_1.__metadata("design:returntype", Promise)
|
|
104
106
|
], PlayGroupQuery.prototype, "boards", null);
|
|
105
107
|
tslib_1.__decorate([
|
|
106
|
-
(0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
|
|
108
|
+
(0, type_graphql_1.FieldResolver)(type => shell_1.Domain, { description: 'Resolves the domain associated with the play group.' }),
|
|
107
109
|
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
108
110
|
tslib_1.__metadata("design:type", Function),
|
|
109
|
-
tslib_1.__metadata("design:paramtypes", [
|
|
111
|
+
tslib_1.__metadata("design:paramtypes", [play_group_js_1.PlayGroup]),
|
|
110
112
|
tslib_1.__metadata("design:returntype", Promise)
|
|
111
113
|
], PlayGroupQuery.prototype, "domain", null);
|
|
112
114
|
tslib_1.__decorate([
|
|
113
|
-
(0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
|
|
115
|
+
(0, type_graphql_1.FieldResolver)(type => auth_base_1.User, { description: 'Resolves the user who last updated the play group.' }),
|
|
114
116
|
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
115
117
|
tslib_1.__metadata("design:type", Function),
|
|
116
|
-
tslib_1.__metadata("design:paramtypes", [
|
|
118
|
+
tslib_1.__metadata("design:paramtypes", [play_group_js_1.PlayGroup]),
|
|
117
119
|
tslib_1.__metadata("design:returntype", Promise)
|
|
118
120
|
], PlayGroupQuery.prototype, "updater", null);
|
|
119
121
|
tslib_1.__decorate([
|
|
120
|
-
(0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
|
|
122
|
+
(0, type_graphql_1.FieldResolver)(type => auth_base_1.User, { description: 'Resolves the user who created the play group.' }),
|
|
121
123
|
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
122
124
|
tslib_1.__metadata("design:type", Function),
|
|
123
|
-
tslib_1.__metadata("design:paramtypes", [
|
|
125
|
+
tslib_1.__metadata("design:paramtypes", [play_group_js_1.PlayGroup]),
|
|
124
126
|
tslib_1.__metadata("design:returntype", Promise)
|
|
125
127
|
], PlayGroupQuery.prototype, "creator", null);
|
|
126
128
|
exports.PlayGroupQuery = PlayGroupQuery = tslib_1.__decorate([
|
|
127
|
-
(0, type_graphql_1.Resolver)(
|
|
129
|
+
(0, type_graphql_1.Resolver)(play_group_js_1.PlayGroup)
|
|
128
130
|
], PlayGroupQuery);
|
|
129
131
|
//# sourceMappingURL=play-group-query.js.map
|