@things-factory/shell 4.0.0-alpha.7 → 4.0.0-beta.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.
- package/bin/things-factory-dev +5 -11
- package/client/elements/oops-progress.js +15 -7
- package/client/graphql-client.js +23 -17
- package/client/index.js +2 -2
- package/client/{notification-store.js → indexdb.js} +49 -40
- package/client/serviceworker/sw-src.js +1 -1
- package/client/themes/oops-theme.css +9 -9
- package/config/config.development.js +12 -1
- package/dist-server/graphql-local-client.js +1 -1
- package/dist-server/graphql-local-client.js.map +1 -1
- package/dist-server/index.js +1 -1
- package/dist-server/initializers/database.js +3 -2
- package/dist-server/initializers/database.js.map +1 -1
- package/dist-server/initializers/naming-strategy.js +1 -1
- package/dist-server/initializers/naming-strategy.js.map +1 -1
- package/dist-server/middlewares/domain-middleware.js +1 -1
- package/dist-server/middlewares/domain-middleware.js.map +1 -1
- package/dist-server/middlewares/index.js +2 -2
- package/dist-server/middlewares/index.js.map +1 -1
- package/dist-server/migrations/1000000000000-SeedDomain.js +2 -2
- package/dist-server/migrations/1000000000000-SeedDomain.js.map +1 -1
- package/dist-server/pubsub-log-transport.js +1 -1
- package/dist-server/pubsub-log-transport.js.map +1 -1
- package/dist-server/pubsub.js +15 -13
- package/dist-server/pubsub.js.map +1 -1
- package/dist-server/routers/index.js +1 -1
- package/dist-server/schema.js +7 -7
- package/dist-server/schema.js.map +1 -1
- package/dist-server/server-dev.js +12 -12
- package/dist-server/server-dev.js.map +1 -1
- package/dist-server/server.js +11 -11
- package/dist-server/server.js.map +1 -1
- package/dist-server/service/common-types/index.js +1 -1
- package/dist-server/service/common-types/list-param.js +15 -15
- package/dist-server/service/common-types/list-param.js.map +1 -1
- package/dist-server/service/common-types/log.js +5 -5
- package/dist-server/service/common-types/log.js.map +1 -1
- package/dist-server/service/common-types/object-ref.js +4 -4
- package/dist-server/service/common-types/object-ref.js.map +1 -1
- package/dist-server/service/directive-transaction/index.js +1 -1
- package/dist-server/service/directive-transaction/transaction.js +5 -4
- package/dist-server/service/directive-transaction/transaction.js.map +1 -1
- package/dist-server/service/domain/domain-resolver.js +43 -41
- package/dist-server/service/domain/domain-resolver.js.map +1 -1
- package/dist-server/service/domain/domain-types.js +17 -17
- package/dist-server/service/domain/domain-types.js.map +1 -1
- package/dist-server/service/domain/domain.js +31 -31
- package/dist-server/service/domain/domain.js.map +1 -1
- package/dist-server/service/index.js +8 -7
- package/dist-server/service/index.js.map +1 -1
- package/dist-server/service/subscription-data/data-resolver.js +5 -4
- package/dist-server/service/subscription-data/data-resolver.js.map +1 -1
- package/dist-server/service/subscription-data/data-types.js +4 -4
- package/dist-server/service/subscription-data/data-types.js.map +1 -1
- package/dist-server/utils/condition-builder.js +25 -26
- package/dist-server/utils/condition-builder.js.map +1 -1
- package/dist-server/utils/get-domain.js +3 -3
- package/dist-server/utils/get-domain.js.map +1 -1
- package/dist-server/utils/index.js +1 -1
- package/dist-server/utils/list-params-converter.js +21 -21
- package/dist-server/utils/list-params-converter.js.map +1 -1
- package/dist-server/utils/list-query-builder.js +4 -3
- package/dist-server/utils/list-query-builder.js.map +1 -1
- package/helps/about/components.md +3 -0
- package/helps/about/{common → framework}/redirection.md +0 -0
- package/helps/about/framework/typegraphql.md +74 -0
- package/helps/about/framework.md +10 -0
- package/helps/about/modules.md +3 -1
- package/helps/about/things-factory.en.md +3 -0
- package/helps/about/things-factory.ko.md +4 -0
- package/helps/components/oops-progress.md +73 -0
- package/package.json +25 -29
- package/server/pubsub.ts +16 -15
- package/server/schema.ts +5 -5
- package/server/server-dev.ts +55 -36
- package/server/server.ts +47 -31
- package/server/service/domain/domain-resolver.ts +8 -6
- package/server/service/index.ts +12 -5
- package/server/utils/condition-builder.ts +23 -25
- package/server/utils/list-query-builder.ts +1 -1
- package/db.test.sqlite +0 -0
- package/dist-server/service/directive-transaction/transaction-type.js +0 -11
- package/dist-server/service/directive-transaction/transaction-type.js.map +0 -1
@@ -5,64 +5,62 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.buildCondition = void 0;
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
8
|
-
|
8
|
+
const buildCondition = function (alias, fieldName, operator, value, relation, seq) {
|
9
9
|
seq++;
|
10
10
|
fieldName = lodash_1.default.snakeCase(fieldName);
|
11
11
|
switch (operator) {
|
12
12
|
case 'eq':
|
13
13
|
return {
|
14
|
-
clause:
|
14
|
+
clause: `${alias}.${fieldName} = :args${seq}`,
|
15
15
|
parameters: { [`args${seq}`]: value }
|
16
16
|
};
|
17
17
|
case 'like':
|
18
18
|
return {
|
19
|
-
clause:
|
19
|
+
clause: `${alias}.${fieldName} LIKE :args${seq}`,
|
20
20
|
parameters: { [`args${seq}`]: `${value}` }
|
21
21
|
};
|
22
22
|
case 'i_like':
|
23
23
|
return {
|
24
|
-
clause: `LOWER(
|
24
|
+
clause: `LOWER(${alias}.${fieldName}) LIKE :args${seq}`,
|
25
25
|
parameters: { [`args${seq}`]: `${String(value).toLowerCase()}` }
|
26
26
|
};
|
27
27
|
case 'nlike':
|
28
28
|
return {
|
29
|
-
clause:
|
29
|
+
clause: `${alias}.${fieldName} NOT LIKE :args${seq}`,
|
30
30
|
value: { [`args${seq}`]: `${value}` }
|
31
31
|
};
|
32
32
|
case 'i_nlike':
|
33
33
|
return {
|
34
|
-
clause: `LOWER(
|
34
|
+
clause: `LOWER(${alias}.${fieldName}) NOT LIKE :args${seq}`,
|
35
35
|
value: { [`args${seq}`]: `${String(value).toLowerCase()}` }
|
36
36
|
};
|
37
37
|
case 'lt':
|
38
38
|
return {
|
39
|
-
clause:
|
39
|
+
clause: `${alias}.${fieldName} < :args${seq}`,
|
40
40
|
parameters: { [`args${seq}`]: value }
|
41
41
|
};
|
42
42
|
case 'gt':
|
43
43
|
return {
|
44
|
-
clause:
|
44
|
+
clause: `${alias}.${fieldName} > :args${seq}`,
|
45
45
|
parameters: { [`args${seq}`]: value }
|
46
46
|
};
|
47
47
|
case 'lte':
|
48
48
|
return {
|
49
|
-
clause:
|
49
|
+
clause: `${alias}.${fieldName} <= :args${seq}`,
|
50
50
|
parameters: { [`args${seq}`]: value }
|
51
51
|
};
|
52
52
|
case 'gte':
|
53
53
|
return {
|
54
|
-
clause:
|
54
|
+
clause: `${alias}.${fieldName} >= :args${seq}`,
|
55
55
|
parameters: { [`args${seq}`]: value }
|
56
56
|
};
|
57
57
|
case 'noteq':
|
58
58
|
return {
|
59
|
-
clause:
|
59
|
+
clause: `${alias}.${fieldName} != :args${seq}`,
|
60
60
|
parameters: { [`args${seq}`]: value }
|
61
61
|
};
|
62
62
|
case 'in':
|
63
|
-
const clause = relation
|
64
|
-
? `"${fieldName}"."id" IN (:...args${seq})`
|
65
|
-
: `"${alias}"."${fieldName}" IN (:...args${seq})`;
|
63
|
+
const clause = relation ? `${fieldName}.id IN (:...args${seq})` : `${alias}.${fieldName} IN (:...args${seq})`;
|
66
64
|
value = (value === null || value === void 0 ? void 0 : value.length) ? value : [value];
|
67
65
|
return {
|
68
66
|
clause,
|
@@ -71,56 +69,57 @@ exports.buildCondition = function (alias, fieldName, operator, value, relation,
|
|
71
69
|
case 'notin':
|
72
70
|
value = (value === null || value === void 0 ? void 0 : value.length) ? value : [value];
|
73
71
|
return {
|
74
|
-
clause:
|
72
|
+
clause: `${alias}.${fieldName} NOT IN (:...args${seq})`,
|
75
73
|
parameters: { [`args${seq}`]: value }
|
76
74
|
};
|
77
75
|
case 'notin_with_null':
|
78
76
|
value = (value === null || value === void 0 ? void 0 : value.length) ? value : [value];
|
79
77
|
return {
|
80
|
-
clause: `(
|
78
|
+
clause: `(${alias}.${fieldName} IS NULL OR ${alias}.${fieldName} NOT IN (:...args${seq}))`,
|
81
79
|
parameters: { [`args${seq}`]: value }
|
82
80
|
};
|
83
81
|
case 'is_null':
|
84
82
|
return {
|
85
|
-
clause:
|
83
|
+
clause: `${alias}.${fieldName} IS NULL`
|
86
84
|
};
|
87
85
|
case 'is_not_null':
|
88
86
|
return {
|
89
|
-
clause:
|
87
|
+
clause: `${alias}.${fieldName} IS NOT NULL`
|
90
88
|
};
|
91
89
|
case 'is_false':
|
92
90
|
return {
|
93
|
-
clause:
|
91
|
+
clause: `${alias}.${fieldName} IS FALSE`
|
94
92
|
};
|
95
93
|
case 'is_true':
|
96
94
|
return {
|
97
|
-
clause:
|
95
|
+
clause: `${alias}.${fieldName} IS TRUE`
|
98
96
|
};
|
99
97
|
case 'is_not_false':
|
100
98
|
return {
|
101
|
-
clause:
|
99
|
+
clause: `${alias}.${fieldName} IS NOT FALSE`
|
102
100
|
};
|
103
101
|
case 'is_not_true':
|
104
102
|
return {
|
105
|
-
clause:
|
103
|
+
clause: `${alias}.${fieldName} IS NOT TRUE`
|
106
104
|
};
|
107
105
|
case 'is_present':
|
108
106
|
return {
|
109
|
-
clause:
|
107
|
+
clause: `${alias}.${fieldName} IS PRESENT`
|
110
108
|
};
|
111
109
|
case 'is_blank':
|
112
110
|
return {
|
113
|
-
clause:
|
111
|
+
clause: `${alias}.${fieldName} IS BLANK`
|
114
112
|
};
|
115
113
|
case 'is_empty_num_id':
|
116
114
|
return {
|
117
|
-
clause:
|
115
|
+
clause: `${alias}.${fieldName} IS EMPTY NUMERIC ID`
|
118
116
|
};
|
119
117
|
case 'between':
|
120
118
|
return {
|
121
|
-
clause:
|
119
|
+
clause: `${alias}.${fieldName} BETWEEN :args${seq}_1 AND :args${seq}_2`,
|
122
120
|
parameters: { [`args${seq}_1`]: value[0], [`args${seq}_2`]: value[1] }
|
123
121
|
};
|
124
122
|
}
|
125
123
|
};
|
124
|
+
exports.buildCondition = buildCondition;
|
126
125
|
//# sourceMappingURL=condition-builder.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"condition-builder.js","sourceRoot":"","sources":["../../server/utils/condition-builder.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAsB;
|
1
|
+
{"version":3,"file":"condition-builder.js","sourceRoot":"","sources":["../../server/utils/condition-builder.ts"],"names":[],"mappings":"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"}
|
@@ -35,7 +35,7 @@ function getSubdomainsFromHost(context) {
|
|
35
35
|
function getSubdomainFromPath(context) {
|
36
36
|
var _a, _b;
|
37
37
|
var { path } = context;
|
38
|
-
var domain = (_a = utils_1.getPathInfo(path || '')) === null || _a === void 0 ? void 0 : _a.domain;
|
38
|
+
var domain = (_a = (0, utils_1.getPathInfo)(path || '')) === null || _a === void 0 ? void 0 : _a.domain;
|
39
39
|
if (domain) {
|
40
40
|
return domain;
|
41
41
|
}
|
@@ -43,7 +43,7 @@ function getSubdomainFromPath(context) {
|
|
43
43
|
if (referer) {
|
44
44
|
var { host: refererHost, pathname } = new url_1.URL(referer);
|
45
45
|
if (refererHost === host) {
|
46
|
-
return (_b = utils_1.getPathInfo(pathname || '')) === null || _b === void 0 ? void 0 : _b.domain;
|
46
|
+
return (_b = (0, utils_1.getPathInfo)(pathname || '')) === null || _b === void 0 ? void 0 : _b.domain;
|
47
47
|
}
|
48
48
|
}
|
49
49
|
}
|
@@ -58,7 +58,7 @@ async function getDomainFromURL(context) {
|
|
58
58
|
const { header } = context;
|
59
59
|
const subdomain = header['x-things-factory-domain'] || getSubdomainFromURL(context);
|
60
60
|
if (subdomain) {
|
61
|
-
return await typeorm_1.getRepository(domain_1.Domain).findOne({ subdomain }, { cache: true });
|
61
|
+
return await (0, typeorm_1.getRepository)(domain_1.Domain).findOne({ subdomain }, { cache: true });
|
62
62
|
}
|
63
63
|
}
|
64
64
|
exports.getDomainFromURL = getDomainFromURL;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"get-domain.js","sourceRoot":"","sources":["../../server/utils/get-domain.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,iDAAmD;AACnD,qCAAuC;AACvC,6BAAyB;AACzB,qDAAiD;AAEjD,MAAM,yBAAyB,GAAG,CAAC,CAAC,YAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;AAC3E,MAAM,QAAQ,GAAW,YAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;AAC/C,MAAM,KAAK,GAAG,YAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;AACrC,MAAM,eAAe,GAAG,YAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAA;AAE9D,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,iCAAiC,CAAC,CAAA;AAEjE,SAAgB,iBAAiB,CAAC,OAAO,EAAE,IAAI,GAAG,EAAE;IAClD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAA;IACtC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAA;IAElC,IAAI,IAAI,GAAG,IAAI,CAAA;IAEf,IAAI,MAAM,KAAK,KAAK,IAAI,OAAO,EAAE;QAC/B,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,SAAG,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,WAAW,KAAK,IAAI,EAAE;YACxB,IAAI,GAAG,OAAO,CAAA;SACf;KACF;IAED,KAAK,CAAC,sBAAsB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC3C,IAAI,GAAG,GAAQ,IAAI,SAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAClC,GAAG,CAAC,QAAQ,GAAG,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAA;IACvC,OAAO,GAAG,CAAA;AACZ,CAAC;AAjBD,8CAiBC;AAED,SAAS,qBAAqB,CAAC,OAAY;IACzC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IAC3B,IAAI,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAA;IAC1D,OAAO,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;AAC1C,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAY;;IACxC,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAA;IAEtB,IAAI,MAAM,
|
1
|
+
{"version":3,"file":"get-domain.js","sourceRoot":"","sources":["../../server/utils/get-domain.ts"],"names":[],"mappings":"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"}
|
@@ -7,7 +7,7 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
7
7
|
o[k2] = m[k];
|
8
8
|
}));
|
9
9
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
10
|
-
for (var p in m) if (p !== "default" && !
|
10
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
11
11
|
};
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
13
13
|
__exportStar(require("./get-domain"), exports);
|
@@ -3,27 +3,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.convertListParams = void 0;
|
4
4
|
const typeorm_1 = require("typeorm");
|
5
5
|
const OPERATION_FUNCTION_MAP = {
|
6
|
-
eq: value => typeorm_1.Equal(value),
|
7
|
-
noteq: value => typeorm_1.Not(typeorm_1.Equal(value)),
|
8
|
-
like: value => typeorm_1.Like(value),
|
9
|
-
i_like: value => typeorm_1.Raw(alias => `LOWER(${alias}) LIKE '${String(value).toLowerCase()}'`),
|
10
|
-
nlike: value => typeorm_1.Not(typeorm_1.Like(value)),
|
11
|
-
i_nlike: value => typeorm_1.Raw(alias => `LOWER(${alias}) NOT LIKE '${String(value).toLowerCase()}'`),
|
12
|
-
lt: value => typeorm_1.Raw(alias => `${alias} < ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
13
|
-
gt: value => typeorm_1.Raw(alias => `${alias} > ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
14
|
-
lte: value => typeorm_1.Raw(alias => `${alias} <= ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
15
|
-
gte: value => typeorm_1.Raw(alias => `${alias} >= ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
16
|
-
in: value => typeorm_1.In(value),
|
17
|
-
notin: value => typeorm_1.Not(typeorm_1.In(value)),
|
18
|
-
is_null: () => typeorm_1.IsNull(),
|
19
|
-
is_not_null: () => typeorm_1.Not(typeorm_1.IsNull()),
|
20
|
-
is_false: () => typeorm_1.Raw(alias => `${alias} IS FALSE`),
|
21
|
-
in_true: () => typeorm_1.Raw(alias => `${alias} IS TRUE`),
|
22
|
-
is_not_true: () => typeorm_1.Raw(alias => `${alias} IS NOT TRUE`),
|
23
|
-
is_present: () => typeorm_1.Raw(alias => `${alias} IS PRESENT`),
|
24
|
-
is_blank: () => typeorm_1.Raw(alias => `${alias} IS BLANK`),
|
25
|
-
is_empty_num_id: () => typeorm_1.Raw(alias => `${alias} IS EMPTY NUMERIC ID`),
|
26
|
-
between: value => typeorm_1.Between(value[0], value[1])
|
6
|
+
eq: value => (0, typeorm_1.Equal)(value),
|
7
|
+
noteq: value => (0, typeorm_1.Not)((0, typeorm_1.Equal)(value)),
|
8
|
+
like: value => (0, typeorm_1.Like)(value),
|
9
|
+
i_like: value => (0, typeorm_1.Raw)(alias => `LOWER(${alias}) LIKE '${String(value).toLowerCase()}'`),
|
10
|
+
nlike: value => (0, typeorm_1.Not)((0, typeorm_1.Like)(value)),
|
11
|
+
i_nlike: value => (0, typeorm_1.Raw)(alias => `LOWER(${alias}) NOT LIKE '${String(value).toLowerCase()}'`),
|
12
|
+
lt: value => (0, typeorm_1.Raw)(alias => `${alias} < ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
13
|
+
gt: value => (0, typeorm_1.Raw)(alias => `${alias} > ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
14
|
+
lte: value => (0, typeorm_1.Raw)(alias => `${alias} <= ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
15
|
+
gte: value => (0, typeorm_1.Raw)(alias => `${alias} >= ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
16
|
+
in: value => (0, typeorm_1.In)(value),
|
17
|
+
notin: value => (0, typeorm_1.Not)((0, typeorm_1.In)(value)),
|
18
|
+
is_null: () => (0, typeorm_1.IsNull)(),
|
19
|
+
is_not_null: () => (0, typeorm_1.Not)((0, typeorm_1.IsNull)()),
|
20
|
+
is_false: () => (0, typeorm_1.Raw)(alias => `${alias} IS FALSE`),
|
21
|
+
in_true: () => (0, typeorm_1.Raw)(alias => `${alias} IS TRUE`),
|
22
|
+
is_not_true: () => (0, typeorm_1.Raw)(alias => `${alias} IS NOT TRUE`),
|
23
|
+
is_present: () => (0, typeorm_1.Raw)(alias => `${alias} IS PRESENT`),
|
24
|
+
is_blank: () => (0, typeorm_1.Raw)(alias => `${alias} IS BLANK`),
|
25
|
+
is_empty_num_id: () => (0, typeorm_1.Raw)(alias => `${alias} IS EMPTY NUMERIC ID`),
|
26
|
+
between: value => (0, typeorm_1.Between)(value[0], value[1])
|
27
27
|
};
|
28
28
|
// function getOperatorFunction({ operator, name, value, dataType }) {
|
29
29
|
// switch (operator) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"list-params-converter.js","sourceRoot":"","sources":["../../server/utils/list-params-converter.ts"],"names":[],"mappings":";;;AAAA,qCAAoE;AAGpE,MAAM,sBAAsB,GAAG;IAC7B,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,eAAK,
|
1
|
+
{"version":3,"file":"list-params-converter.js","sourceRoot":"","sources":["../../server/utils/list-params-converter.ts"],"names":[],"mappings":"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"}
|
@@ -2,14 +2,14 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.buildQuery = void 0;
|
4
4
|
const condition_builder_1 = require("./condition-builder");
|
5
|
-
|
5
|
+
const buildQuery = function (queryBuilder, params, context, domainRef = true) {
|
6
6
|
const filters = params.filters;
|
7
7
|
const pagination = params.pagination;
|
8
8
|
const sortings = params.sortings;
|
9
9
|
const domainId = context && context.state.domain && context.state.domain.id;
|
10
10
|
if (filters && filters.length > 0) {
|
11
11
|
filters.forEach(filter => {
|
12
|
-
const condition = condition_builder_1.buildCondition(queryBuilder.alias, filter.name, filter.operator, filter.value, filter.relation, Object.keys(queryBuilder.getParameters()).length);
|
12
|
+
const condition = (0, condition_builder_1.buildCondition)(queryBuilder.alias, filter.name, filter.operator, filter.value, filter.relation, Object.keys(queryBuilder.getParameters()).length);
|
13
13
|
if (condition === null || condition === void 0 ? void 0 : condition.clause)
|
14
14
|
queryBuilder.andWhere(condition.clause);
|
15
15
|
if (condition === null || condition === void 0 ? void 0 : condition.parameters)
|
@@ -17,7 +17,7 @@ exports.buildQuery = function (queryBuilder, params, context, domainRef = true)
|
|
17
17
|
});
|
18
18
|
}
|
19
19
|
if (domainRef) {
|
20
|
-
queryBuilder.andWhere(
|
20
|
+
queryBuilder.andWhere(`${queryBuilder.alias}.domain = :domainId`, { domainId });
|
21
21
|
}
|
22
22
|
if (pagination && pagination.page > 0 && pagination.limit > 0) {
|
23
23
|
queryBuilder.skip(pagination.limit * (pagination.page - 1));
|
@@ -35,4 +35,5 @@ exports.buildQuery = function (queryBuilder, params, context, domainRef = true)
|
|
35
35
|
});
|
36
36
|
}
|
37
37
|
};
|
38
|
+
exports.buildQuery = buildQuery;
|
38
39
|
//# sourceMappingURL=list-query-builder.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"list-query-builder.js","sourceRoot":"","sources":["../../server/utils/list-query-builder.ts"],"names":[],"mappings":";;;AAAA,2DAAoD;
|
1
|
+
{"version":3,"file":"list-query-builder.js","sourceRoot":"","sources":["../../server/utils/list-query-builder.ts"],"names":[],"mappings":";;;AAAA,2DAAoD;AAE7C,MAAM,UAAU,GAAG,UAAU,YAAiB,EAAE,MAAW,EAAE,OAAY,EAAE,YAAqB,IAAI;IACzG,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;IACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;IAChC,MAAM,QAAQ,GAAG,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAA;IAE3E,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACjC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,MAAM,SAAS,GAAG,IAAA,kCAAc,EAC9B,YAAY,CAAC,KAAK,EAClB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,CACjD,CAAA;YAED,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM;gBAAE,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YAC9D,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU;gBAAE,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAC7E,CAAC,CAAC,CAAA;KACH;IAED,IAAI,SAAS,EAAE;QACb,YAAY,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,KAAK,qBAAqB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;KAChF;IAED,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC,IAAI,UAAU,CAAC,KAAK,GAAG,CAAC,EAAE;QAC7D,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAA;QAC3D,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;KACpC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;QACnC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,CAAA;YAC7G,IAAI,KAAK,KAAK,CAAC,EAAE;gBACf,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;aAC/D;iBAAM;gBACL,YAAY,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;aAClE;QACH,CAAC,CAAC,CAAA;KACH;AACH,CAAC,CAAA;AAzCY,QAAA,UAAU,cAyCtB"}
|
File without changes
|
@@ -0,0 +1,74 @@
|
|
1
|
+
# TypeGraphql을 적용하는 이유.
|
2
|
+
|
3
|
+
[Modern framework for GraphQL API in Node.js](https://typegraphql.com/)
|
4
|
+
|
5
|
+
## 이전 방식에서 아쉬운 점
|
6
|
+
|
7
|
+
[관련 이슈 - [shell] typegraphql fully support](https://github.com/hatiolab/things-factory/issues/770)
|
8
|
+
|
9
|
+
- graphql의 타입이 typescript의 타입형태가 아니므로 resolver 구현시 명시적인 타입 적용이 어려워서 typescript의 장점이 반감됨.
|
10
|
+
- 사실상 graphql타입과 entity는 거의 동일한 경우가 많은데, graphql의 타입이 entity의 타입과 일치하지 않으므로, resolver 구현시 typescript 타입을 다시 정의하게되는 경우도 있음.
|
11
|
+
- graphql 관련된 구현(타입, 리솔버, 엔티티)가 분산되어 있으므로, redundant한 느낌이 있으며, 오류를 인식하거나 찾아내기가 어려웠음.
|
12
|
+
|
13
|
+
## typegraphql을 적용시 개선되는 점
|
14
|
+
|
15
|
+
- resolver를 구현할 때, typescript 타입을 온전히 적용할 수 있으므로, 타입관련된 코드 오류를 코딩 시점에 인지할 가능성이 높다.
|
16
|
+
- gql template literal을 사용하여 graphql 타입을 정의하지 않아도 되므로, gql template literal과 관련된 오류가 방지된다.
|
17
|
+
- resolver 구현시 graphql 타입정보가 같이 있으므로(타입과 구현이 분산되지 않으므로), 코드 오류가 방지된다.
|
18
|
+
|
19
|
+
## 적용 방법
|
20
|
+
|
21
|
+
- 이전방식과 typegraphql 방식이 혼용될 수 있도록 구성하였으므로, 신규로 개발하는 모듈부터 적용할 것을 추천함.
|
22
|
+
- 다른 entity와 resolver에서 많이 레퍼런스되는 것들 우선하여 typegraphql을 적용하였음 (domain, auth-base, ..)
|
23
|
+
- shell
|
24
|
+
- auth-base (일부)
|
25
|
+
- setting-base
|
26
|
+
- integration-base
|
27
|
+
- board-service
|
28
|
+
- lite-menu
|
29
|
+
- ..
|
30
|
+
- plop template - 'entity' generator 를 'service' generator 로 변경 적용하였음
|
31
|
+
|
32
|
+

|
33
|
+
|
34
|
+
## 유의 사항
|
35
|
+
|
36
|
+
### types mapping
|
37
|
+
|
38
|
+
| description | typescript | typegraphql | graphql |
|
39
|
+
| ----------------- | ----------------- | ------------------------------------------ | --------------- |
|
40
|
+
| 문자열 | string | String (tyepgraphql 자동 매핑) | String |
|
41
|
+
| 정수형 | number (Integer) | Int | Int |
|
42
|
+
| 실수형 | number (Float) | Float | Float |
|
43
|
+
| 날자형 | Date | Timestamp (tyepgraphql 자동 매핑) | Timestamp |
|
44
|
+
| 오브젝트형 | ScalarObject | ScalarObject | ScalarObject |
|
45
|
+
| any | any | ScalarAny | ScalarAny |
|
46
|
+
| 사용자정의 클래스 | SomeClass | SomeClass (ObjectType or InputType로 정의) | SomeClass |
|
47
|
+
| 사용자정의 Enum | SomeEnumeration | SomeEnumeration | SomeEnumeration |
|
48
|
+
| 어레이형 | SomeType[] | [SomeType] | [SomeType!] |
|
49
|
+
| mandatory | 변수명: SomeType | SomeType with nullable => false (default) | SomeType! |
|
50
|
+
| optional | 변수명?: SomeType | SomeType with nullable => true | SomeType |
|
51
|
+
|
52
|
+
### Annotations
|
53
|
+
|
54
|
+
- ObjectType / InputType
|
55
|
+
- Field
|
56
|
+
- Resolver
|
57
|
+
- Query / Mutation
|
58
|
+
- Directive
|
59
|
+
- Arg / Args
|
60
|
+
- Context
|
61
|
+
|
62
|
+
### Query sample
|
63
|
+
|
64
|
+

|
65
|
+
|
66
|
+
### Resolver sample
|
67
|
+
|
68
|
+

|
69
|
+
|
70
|
+
### 기존 방식과 새로운 방식의 혼용
|
71
|
+
|
72
|
+
- auth-base 모듈에 기존 방식과 새로운 방식이 혼용되어 있으므로 참고.
|
73
|
+
|
74
|
+

|
@@ -0,0 +1,10 @@
|
|
1
|
+
# Things Factory Framework
|
2
|
+
|
3
|
+
## Developers Guide
|
4
|
+
|
5
|
+
[Things Factory Framework Developers Guide](http://www.hatiolab.com/things-factory-doc/ko/intro/framework/)
|
6
|
+
|
7
|
+
## Framework Concepts
|
8
|
+
|
9
|
+
- [redirection](/helps/about/framework/redirection.md)
|
10
|
+
- [typegraphql](/helps/about/framework/typegraphql.md)
|
package/helps/about/modules.md
CHANGED
@@ -5,6 +5,9 @@ Things-Factory is an framework to develop web-based apps for desktop, mobile and
|
|
5
5
|
Things-Factory framework is managed as a monorepo that is composed of hundreds of npm packages.
|
6
6
|
These modules compose together to help you create performant modern JS apps that you love to develop and test. These packages are developed primarily to be used on top of the stack we like best for our JS apps; Typescript for the flavor, Koa for the server, LitElement for UI, Apollo for data fetching, and Jest for tests. That said, you can mix and match as you like.
|
7
7
|
|
8
|
+
- [Contents for modules](./modules.md)
|
9
|
+
- [Contents for components](./components.md)
|
10
|
+
|
8
11
|
## features
|
9
12
|
|
10
13
|
- It is based on module structure.
|
@@ -7,6 +7,10 @@ Things-Factory 프레임워크는 수많은 NPM 패키지들로 구성된 모노
|
|
7
7
|
이 패키지들은 자바스크립트 앱을 개발하기위한 최적의 계층적 구조를 구성하도록 개발되었습니다.
|
8
8
|
Typescript를 포함하여, 서버사이들의 Koa, 웹컴포넌트 UI를 위한 LitElement, 클라이언트 서버간의 Graphql 통신을 위한 Apollo 그리고 테스트를 위한 Jest 등이 적용되었습니다. 이들을 잘 연결하고 조립하여 최고의 어플리케이션을 만들어보세요.
|
9
9
|
|
10
|
+
- [Contents for modules](./modules.md)
|
11
|
+
- [Contents for components](./components.md)
|
12
|
+
- [Concepts for framework](./framework.md)
|
13
|
+
|
10
14
|
## features
|
11
15
|
|
12
16
|
- It is based on module structure.
|
@@ -0,0 +1,73 @@
|
|
1
|
+
# OOPS Progress 컴포넌트
|
2
|
+
|
3
|
+
긴 시간 진행되는 작업의 진행 상황을 표현해주기 위해 서버에 진행율을 Subscribe하는 클라이언트 컴포넌트이다.
|
4
|
+
이 컴포넌트는 자체적으로 시각적 요소를 포함하지 않지만, 시각적 표현을 위해서 자식 노드(Light DOM)를 포함할 수는 있다.
|
5
|
+
|
6
|
+
## properties
|
7
|
+
|
8
|
+
- tag: String 서브스크립션 태그이며, 서버의 'publishProgress'의 tag와 일치시키도록 한다.
|
9
|
+
- subscription: String (readonly) 이 속성이 값을 가지고 있으면, 서브스크립션 중임을 의미한다.
|
10
|
+
|
11
|
+
## methods
|
12
|
+
|
13
|
+
- startSubscribe() 진행율 구독을 시작한다.
|
14
|
+
- stopSubscribe() 진행율 구독을 종료한다.(서버쪽 작업의 종료를 의미하지 않으며, 클라이언트에서 구독을 종료한다는 의미임.)
|
15
|
+
|
16
|
+
## event
|
17
|
+
|
18
|
+
- progress(event) 서버로부터 진행율이 Subscribe 되었을 때 발생한다.
|
19
|
+
- event.detail : progress 값을 갖는다.
|
20
|
+
- finish(event) 진행율이 100% 도달하면 발생한다.
|
21
|
+
|
22
|
+
## 예시
|
23
|
+
|
24
|
+
### 클라이언트 사이드
|
25
|
+
|
26
|
+
```
|
27
|
+
<oops-progress
|
28
|
+
.tag='progress-pending-job'
|
29
|
+
@progress=${e => {
|
30
|
+
this.progress = e.detail
|
31
|
+
}}
|
32
|
+
@finish=${() => {
|
33
|
+
console.log('complete')
|
34
|
+
}}
|
35
|
+
?hidden=${progress < 0 || progress > 100}
|
36
|
+
>
|
37
|
+
<div>
|
38
|
+
<mwc-linear-progress .progress=${progress / 100}></mwc-linear-progress>
|
39
|
+
<span>Progress : ${progress} % (${message})</span>
|
40
|
+
</div>
|
41
|
+
</oops-progress>
|
42
|
+
|
43
|
+
```
|
44
|
+
|
45
|
+
### 서버사이드
|
46
|
+
|
47
|
+
```
|
48
|
+
import { sleep } from '@things-factory/utils'
|
49
|
+
|
50
|
+
...
|
51
|
+
|
52
|
+
@Mutation(returns => String, { description: 'To reference of pending job progress' })
|
53
|
+
async referencePendingJob(
|
54
|
+
@Root() _,
|
55
|
+
@Ctx() context: any
|
56
|
+
) : Promise<string> {
|
57
|
+
|
58
|
+
const { domain } = context.state
|
59
|
+
|
60
|
+
for(var i = 0;i <= 100;i++) {
|
61
|
+
await sleep(100)
|
62
|
+
|
63
|
+
publishProgress({
|
64
|
+
domain,
|
65
|
+
tag: 'progress-pending-job',
|
66
|
+
progress: i,
|
67
|
+
message: `${i * 10} / 1000`
|
68
|
+
})
|
69
|
+
}
|
70
|
+
|
71
|
+
return 'success'
|
72
|
+
}
|
73
|
+
```
|