@things-factory/shell 4.3.671 → 4.3.672
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/graphql-local-client.js +36 -0
- package/dist-server/graphql-local-client.js.map +1 -0
- package/dist-server/index.js +25 -0
- package/dist-server/index.js.map +1 -0
- package/dist-server/initializers/database.js +30 -0
- package/dist-server/initializers/database.js.map +1 -0
- package/dist-server/initializers/naming-strategy.js +19 -0
- package/dist-server/initializers/naming-strategy.js.map +1 -0
- package/dist-server/middlewares/domain-middleware.js +23 -0
- package/dist-server/middlewares/domain-middleware.js.map +1 -0
- package/dist-server/middlewares/index.js +59 -0
- package/dist-server/middlewares/index.js.map +1 -0
- package/dist-server/migrations/1000000000000-SeedDomain.js +29 -0
- package/dist-server/migrations/1000000000000-SeedDomain.js.map +1 -0
- package/dist-server/migrations/index.js +12 -0
- package/dist-server/migrations/index.js.map +1 -0
- package/dist-server/pubsub-log-transport.js +27 -0
- package/dist-server/pubsub-log-transport.js.map +1 -0
- package/dist-server/pubsub.js +84 -0
- package/dist-server/pubsub.js.map +1 -0
- package/dist-server/routers/domain-router.js +20 -0
- package/dist-server/routers/domain-router.js.map +1 -0
- package/dist-server/routers/global-router.js +47 -0
- package/dist-server/routers/global-router.js.map +1 -0
- package/dist-server/routers/index.js +19 -0
- package/dist-server/routers/index.js.map +1 -0
- package/dist-server/schema.js +109 -0
- package/dist-server/schema.js.map +1 -0
- package/dist-server/server-dev.js +217 -0
- package/dist-server/server-dev.js.map +1 -0
- package/dist-server/server.js +177 -0
- package/dist-server/server.js.map +1 -0
- package/dist-server/service/common-types/index.js +23 -0
- package/dist-server/service/common-types/index.js.map +1 -0
- package/dist-server/service/common-types/list-param.js +83 -0
- package/dist-server/service/common-types/list-param.js.map +1 -0
- package/dist-server/service/common-types/log.js +37 -0
- package/dist-server/service/common-types/log.js.map +1 -0
- package/dist-server/service/common-types/object-ref.js +32 -0
- package/dist-server/service/common-types/object-ref.js.map +1 -0
- package/dist-server/service/common-types/scalar-any.js +45 -0
- package/dist-server/service/common-types/scalar-any.js.map +1 -0
- package/dist-server/service/common-types/scalar-date.js +25 -0
- package/dist-server/service/common-types/scalar-date.js.map +1 -0
- package/dist-server/service/common-types/scalar-object.js +18 -0
- package/dist-server/service/common-types/scalar-object.js.map +1 -0
- package/dist-server/service/directive-transaction/index.js +18 -0
- package/dist-server/service/directive-transaction/index.js.map +1 -0
- package/dist-server/service/directive-transaction/transaction.js +35 -0
- package/dist-server/service/directive-transaction/transaction.js.map +1 -0
- package/dist-server/service/domain/domain-resolver.js +150 -0
- package/dist-server/service/domain/domain-resolver.js.map +1 -0
- package/dist-server/service/domain/domain-types.js +89 -0
- package/dist-server/service/domain/domain-types.js.map +1 -0
- package/dist-server/service/domain/domain.js +113 -0
- package/dist-server/service/domain/domain.js.map +1 -0
- package/dist-server/service/domain/index.js +8 -0
- package/dist-server/service/domain/index.js.map +1 -0
- package/dist-server/service/index.js +45 -0
- package/dist-server/service/index.js.map +1 -0
- package/dist-server/service/subscription-data/data-resolver.js +62 -0
- package/dist-server/service/subscription-data/data-resolver.js.map +1 -0
- package/dist-server/service/subscription-data/data-types.js +35 -0
- package/dist-server/service/subscription-data/data-types.js.map +1 -0
- package/dist-server/service/subscription-data/index.js +7 -0
- package/dist-server/service/subscription-data/index.js.map +1 -0
- package/dist-server/utils/condition-builder.js +126 -0
- package/dist-server/utils/condition-builder.js.map +1 -0
- package/dist-server/utils/get-domain.js +128 -0
- package/dist-server/utils/get-domain.js.map +1 -0
- package/dist-server/utils/index.js +22 -0
- package/dist-server/utils/index.js.map +1 -0
- package/dist-server/utils/list-params-converter.js +102 -0
- package/dist-server/utils/list-params-converter.js.map +1 -0
- package/dist-server/utils/list-query-builder.js +51 -0
- package/dist-server/utils/list-query-builder.js.map +1 -0
- package/dist-server/utils/publish-progress.js +18 -0
- package/dist-server/utils/publish-progress.js.map +1 -0
- package/dist-server/webpack/koa-webpack/client.js +24 -0
- package/dist-server/webpack/koa-webpack/client.js.map +1 -0
- package/dist-server/webpack/koa-webpack/index.js +58 -0
- package/dist-server/webpack/koa-webpack/index.js.map +1 -0
- package/dist-server/webpack/koa-webpack/middleware.js +42 -0
- package/dist-server/webpack/koa-webpack/middleware.js.map +1 -0
- package/dist-server/webpack/koa-webpack/validate.js +26 -0
- package/dist-server/webpack/koa-webpack/validate.js.map +1 -0
- package/package.json +2 -2
- package/server/index.ts +0 -2
@@ -0,0 +1,62 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.DataResolver = void 0;
|
16
|
+
const type_graphql_1 = require("type-graphql");
|
17
|
+
const pubsub_1 = require("../../pubsub");
|
18
|
+
const graphql_subscriptions_1 = require("graphql-subscriptions");
|
19
|
+
const data_types_1 = require("./data-types");
|
20
|
+
const debug = require('debug')('things-factory:shell:data-subscription');
|
21
|
+
let DataResolver = class DataResolver {
|
22
|
+
data(payload, tag) {
|
23
|
+
return payload.data;
|
24
|
+
}
|
25
|
+
};
|
26
|
+
__decorate([
|
27
|
+
(0, type_graphql_1.Subscription)({
|
28
|
+
subscribe: (_, args, context, info) => {
|
29
|
+
var _a;
|
30
|
+
const { domain, user } = context.state;
|
31
|
+
const { tag } = args;
|
32
|
+
const subdomain = domain === null || domain === void 0 ? void 0 : domain.subdomain;
|
33
|
+
debug('subscribe', subdomain, tag);
|
34
|
+
if (!domain || !tag) {
|
35
|
+
throw new Error('domain and tag required');
|
36
|
+
}
|
37
|
+
if (!((_a = user.domains) === null || _a === void 0 ? void 0 : _a.find(d => d.subdomain === subdomain))) {
|
38
|
+
throw new Error(`domain(${subdomain}) is not working for user(${user.email}).`);
|
39
|
+
}
|
40
|
+
return (0, graphql_subscriptions_1.withFilter)(() => pubsub_1.pubsub.asyncIterator('data'), (payload, variables, context, info) => {
|
41
|
+
const { domain: pdomain, tag } = payload.data;
|
42
|
+
if (tag !== variables.tag) {
|
43
|
+
return false;
|
44
|
+
}
|
45
|
+
if (subdomain !== (pdomain === null || pdomain === void 0 ? void 0 : pdomain.subdomain)) {
|
46
|
+
return false;
|
47
|
+
}
|
48
|
+
return true;
|
49
|
+
})(_, args, context, info);
|
50
|
+
}
|
51
|
+
}),
|
52
|
+
__param(0, (0, type_graphql_1.Root)()),
|
53
|
+
__param(1, (0, type_graphql_1.Arg)('tag')),
|
54
|
+
__metadata("design:type", Function),
|
55
|
+
__metadata("design:paramtypes", [Object, String]),
|
56
|
+
__metadata("design:returntype", data_types_1.Data)
|
57
|
+
], DataResolver.prototype, "data", null);
|
58
|
+
DataResolver = __decorate([
|
59
|
+
(0, type_graphql_1.Resolver)()
|
60
|
+
], DataResolver);
|
61
|
+
exports.DataResolver = DataResolver;
|
62
|
+
//# sourceMappingURL=data-resolver.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"data-resolver.js","sourceRoot":"","sources":["../../../server/service/subscription-data/data-resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,yCAAqC;AACrC,iEAAkD;AAClD,6CAAmC;AAEnC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,wCAAwC,CAAC,CAAA;AAGjE,IAAM,YAAY,GAAlB,MAAM,YAAY;IAmCvB,IAAI,CAAS,OAAuB,EAAc,GAAW;QAC3D,OAAO,OAAO,CAAC,IAAI,CAAA;IACrB,CAAC;CACF,CAAA;AArCC;IAAC,IAAA,2BAAY,EAAC;QACZ,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;;YACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;YACtC,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;YACpB,MAAM,SAAS,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAA;YAEnC,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;YAElC,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;aAC3C;YAED,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAA,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,6BAA6B,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;aAChF;YAED,OAAO,IAAA,kCAAU,EACf,GAAG,EAAE,CAAC,eAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAClC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBACpC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAA;gBAE7C,IAAI,GAAG,KAAK,SAAS,CAAC,GAAG,EAAE;oBACzB,OAAO,KAAK,CAAA;iBACb;gBAED,IAAI,SAAS,MAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,CAAA,EAAE;oBACpC,OAAO,KAAK,CAAA;iBACb;gBAED,OAAO,IAAI,CAAA;YACb,CAAC,CACF,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAC3B,CAAC;KACF,CAAC;IACI,WAAA,IAAA,mBAAI,GAAE,CAAA;IAA2B,WAAA,IAAA,kBAAG,EAAC,KAAK,CAAC,CAAA;;;oCAAe,iBAAI;wCAEnE;AArCU,YAAY;IADxB,IAAA,uBAAQ,GAAE;GACE,YAAY,CAsCxB;AAtCY,oCAAY"}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.Data = void 0;
|
13
|
+
const type_graphql_1 = require("type-graphql");
|
14
|
+
const scalar_object_1 = require("../common-types/scalar-object");
|
15
|
+
const domain_1 = require("../domain/domain");
|
16
|
+
const debug = require('debug')('things-factory:integraton-base:subscribe-data');
|
17
|
+
let Data = class Data {
|
18
|
+
};
|
19
|
+
__decorate([
|
20
|
+
(0, type_graphql_1.Field)(type => domain_1.Domain, { nullable: true, description: 'The domain where the data originated' }),
|
21
|
+
__metadata("design:type", domain_1.Domain)
|
22
|
+
], Data.prototype, "domain", void 0);
|
23
|
+
__decorate([
|
24
|
+
(0, type_graphql_1.Field)({ description: 'Tag name attached to data' }),
|
25
|
+
__metadata("design:type", String)
|
26
|
+
], Data.prototype, "tag", void 0);
|
27
|
+
__decorate([
|
28
|
+
(0, type_graphql_1.Field)(type => scalar_object_1.ScalarObject, { nullable: true, description: 'Data delivered by subscription' }),
|
29
|
+
__metadata("design:type", Object)
|
30
|
+
], Data.prototype, "data", void 0);
|
31
|
+
Data = __decorate([
|
32
|
+
(0, type_graphql_1.ObjectType)()
|
33
|
+
], Data);
|
34
|
+
exports.Data = Data;
|
35
|
+
//# sourceMappingURL=data-types.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"data-types.js","sourceRoot":"","sources":["../../../server/service/subscription-data/data-types.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAgD;AAChD,iEAA4D;AAC5D,6CAAyC;AAEzC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,+CAA+C,CAAC,CAAA;AAGxE,IAAM,IAAI,GAAV,MAAM,IAAI;CAShB,CAAA;AARC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,eAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC;8BACtF,eAAM;oCAAA;AAEf;IAAC,IAAA,oBAAK,EAAC,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;;iCACzC;AAEX;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,4BAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;8BACxF,MAAM;kCAAA;AARF,IAAI;IADhB,IAAA,yBAAU,GAAE;GACA,IAAI,CAShB;AATY,oBAAI"}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.resolvers = exports.entities = void 0;
|
4
|
+
const data_resolver_1 = require("./data-resolver");
|
5
|
+
exports.entities = [];
|
6
|
+
exports.resolvers = [data_resolver_1.DataResolver];
|
7
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/subscription-data/index.ts"],"names":[],"mappings":";;;AAAA,mDAA8C;AAEjC,QAAA,QAAQ,GAAG,EAAE,CAAA;AACb,QAAA,SAAS,GAAG,CAAC,4BAAY,CAAC,CAAA"}
|
@@ -0,0 +1,126 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.buildCondition = void 0;
|
7
|
+
const lodash_1 = __importDefault(require("lodash"));
|
8
|
+
const buildCondition = function (alias, fieldName, operator, value, relation, seq) {
|
9
|
+
seq++;
|
10
|
+
fieldName = lodash_1.default.snakeCase(fieldName);
|
11
|
+
switch (operator) {
|
12
|
+
case 'eq':
|
13
|
+
return {
|
14
|
+
clause: `${alias}.${fieldName} = :args${seq}`,
|
15
|
+
parameters: { [`args${seq}`]: value }
|
16
|
+
};
|
17
|
+
case 'like':
|
18
|
+
return {
|
19
|
+
clause: `${alias}.${fieldName} LIKE :args${seq}`,
|
20
|
+
parameters: { [`args${seq}`]: `${value}` }
|
21
|
+
};
|
22
|
+
case 'search':
|
23
|
+
case 'i_like':
|
24
|
+
return {
|
25
|
+
clause: `LOWER(${alias}.${fieldName}) LIKE :args${seq}`,
|
26
|
+
parameters: { [`args${seq}`]: `${String(value).toLowerCase()}` }
|
27
|
+
};
|
28
|
+
case 'nlike':
|
29
|
+
return {
|
30
|
+
clause: `${alias}.${fieldName} NOT LIKE :args${seq}`,
|
31
|
+
value: { [`args${seq}`]: `${value}` }
|
32
|
+
};
|
33
|
+
case 'i_nlike':
|
34
|
+
return {
|
35
|
+
clause: `LOWER(${alias}.${fieldName}) NOT LIKE :args${seq}`,
|
36
|
+
value: { [`args${seq}`]: `${String(value).toLowerCase()}` }
|
37
|
+
};
|
38
|
+
case 'lt':
|
39
|
+
return {
|
40
|
+
clause: `${alias}.${fieldName} < :args${seq}`,
|
41
|
+
parameters: { [`args${seq}`]: value }
|
42
|
+
};
|
43
|
+
case 'gt':
|
44
|
+
return {
|
45
|
+
clause: `${alias}.${fieldName} > :args${seq}`,
|
46
|
+
parameters: { [`args${seq}`]: value }
|
47
|
+
};
|
48
|
+
case 'lte':
|
49
|
+
return {
|
50
|
+
clause: `${alias}.${fieldName} <= :args${seq}`,
|
51
|
+
parameters: { [`args${seq}`]: value }
|
52
|
+
};
|
53
|
+
case 'gte':
|
54
|
+
return {
|
55
|
+
clause: `${alias}.${fieldName} >= :args${seq}`,
|
56
|
+
parameters: { [`args${seq}`]: value }
|
57
|
+
};
|
58
|
+
case 'noteq':
|
59
|
+
return {
|
60
|
+
clause: `${alias}.${fieldName} != :args${seq}`,
|
61
|
+
parameters: { [`args${seq}`]: value }
|
62
|
+
};
|
63
|
+
case 'in':
|
64
|
+
const clause = relation ? `${fieldName}.id IN (:...args${seq})` : `${alias}.${fieldName} IN (:...args${seq})`;
|
65
|
+
value = (value === null || value === void 0 ? void 0 : value.length) ? value : [value];
|
66
|
+
return {
|
67
|
+
clause,
|
68
|
+
parameters: { [`args${seq}`]: value }
|
69
|
+
};
|
70
|
+
case 'notin':
|
71
|
+
value = (value === null || value === void 0 ? void 0 : value.length) ? value : [value];
|
72
|
+
return {
|
73
|
+
clause: `${alias}.${fieldName} NOT IN (:...args${seq})`,
|
74
|
+
parameters: { [`args${seq}`]: value }
|
75
|
+
};
|
76
|
+
case 'notin_with_null':
|
77
|
+
value = (value === null || value === void 0 ? void 0 : value.length) ? value : [value];
|
78
|
+
return {
|
79
|
+
clause: `(${alias}.${fieldName} IS NULL OR ${alias}.${fieldName} NOT IN (:...args${seq}))`,
|
80
|
+
parameters: { [`args${seq}`]: value }
|
81
|
+
};
|
82
|
+
case 'is_null':
|
83
|
+
return {
|
84
|
+
clause: `${alias}.${fieldName} IS NULL`
|
85
|
+
};
|
86
|
+
case 'is_not_null':
|
87
|
+
return {
|
88
|
+
clause: `${alias}.${fieldName} IS NOT NULL`
|
89
|
+
};
|
90
|
+
case 'is_false':
|
91
|
+
return {
|
92
|
+
clause: `${alias}.${fieldName} IS FALSE`
|
93
|
+
};
|
94
|
+
case 'is_true':
|
95
|
+
return {
|
96
|
+
clause: `${alias}.${fieldName} IS TRUE`
|
97
|
+
};
|
98
|
+
case 'is_not_false':
|
99
|
+
return {
|
100
|
+
clause: `${alias}.${fieldName} IS NOT FALSE`
|
101
|
+
};
|
102
|
+
case 'is_not_true':
|
103
|
+
return {
|
104
|
+
clause: `${alias}.${fieldName} IS NOT TRUE`
|
105
|
+
};
|
106
|
+
case 'is_present':
|
107
|
+
return {
|
108
|
+
clause: `${alias}.${fieldName} IS PRESENT`
|
109
|
+
};
|
110
|
+
case 'is_blank':
|
111
|
+
return {
|
112
|
+
clause: `${alias}.${fieldName} IS BLANK`
|
113
|
+
};
|
114
|
+
case 'is_empty_num_id':
|
115
|
+
return {
|
116
|
+
clause: `${alias}.${fieldName} IS EMPTY NUMERIC ID`
|
117
|
+
};
|
118
|
+
case 'between':
|
119
|
+
return {
|
120
|
+
clause: `${alias}.${fieldName} BETWEEN :args${seq}_1 AND :args${seq}_2`,
|
121
|
+
parameters: { [`args${seq}_1`]: value[0], [`args${seq}_2`]: value[1] }
|
122
|
+
};
|
123
|
+
}
|
124
|
+
};
|
125
|
+
exports.buildCondition = buildCondition;
|
126
|
+
//# sourceMappingURL=condition-builder.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"condition-builder.js","sourceRoot":"","sources":["../../server/utils/condition-builder.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,128 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.getSiteRootPath = exports.findSubdomainFromPath = exports.getRedirectSubdomainPath = exports.getContextPath = exports.getCookieDomainFromHostname = exports.getDomainFromURL = exports.getUrlFromContext = void 0;
|
4
|
+
const env_1 = require("@things-factory/env");
|
5
|
+
const utils_1 = require("@things-factory/utils");
|
6
|
+
const typeorm_1 = require("typeorm");
|
7
|
+
const url_1 = require("url");
|
8
|
+
const domain_1 = require("../service/domain/domain");
|
9
|
+
const useVirtualHostBasedDomain = !!env_1.config.get('useVirtualHostBasedDomain');
|
10
|
+
const protocol = env_1.config.get('protocol');
|
11
|
+
const fixed = env_1.config.get('subdomain');
|
12
|
+
const subdomainOffset = env_1.config.getNumber('subdomainOffset', 2);
|
13
|
+
const debug = require('debug')('things-factory:shell:get-domain');
|
14
|
+
function getUrlFromContext(context, path = '') {
|
15
|
+
const { method, href, host } = context;
|
16
|
+
const { referer } = context.header;
|
17
|
+
var base = href;
|
18
|
+
if (method !== 'GET' && referer) {
|
19
|
+
var { host: refererHost } = new url_1.URL(referer);
|
20
|
+
if (refererHost === host) {
|
21
|
+
base = referer;
|
22
|
+
}
|
23
|
+
}
|
24
|
+
debug('get-url-from-context', method, base);
|
25
|
+
let url = new url_1.URL(path, base);
|
26
|
+
url.protocol = protocol || url.protocol;
|
27
|
+
return url;
|
28
|
+
}
|
29
|
+
exports.getUrlFromContext = getUrlFromContext;
|
30
|
+
function getSubdomainsFromHost(context) {
|
31
|
+
const { request } = context;
|
32
|
+
var subdomains = request.headers.host.split('.').reverse();
|
33
|
+
return subdomains.slice(subdomainOffset);
|
34
|
+
}
|
35
|
+
function getSubdomainFromPath(context) {
|
36
|
+
var _a, _b;
|
37
|
+
var { path } = context;
|
38
|
+
var domain = (_a = (0, utils_1.getPathInfo)(path || '')) === null || _a === void 0 ? void 0 : _a.domain;
|
39
|
+
if (domain) {
|
40
|
+
return domain;
|
41
|
+
}
|
42
|
+
var { host, header: { referer } } = context;
|
43
|
+
if (referer) {
|
44
|
+
var { host: refererHost, pathname } = new url_1.URL(referer);
|
45
|
+
if (refererHost === host) {
|
46
|
+
return (_b = (0, utils_1.getPathInfo)(pathname || '')) === null || _b === void 0 ? void 0 : _b.domain;
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}
|
50
|
+
function getSubdomainFromVhost(context) {
|
51
|
+
const subdomain = (context.subdomains || getSubdomainsFromHost(context)).slice(-1)[0];
|
52
|
+
return subdomain;
|
53
|
+
}
|
54
|
+
function getSubdomainFromURL(context) {
|
55
|
+
return fixed || (useVirtualHostBasedDomain ? getSubdomainFromVhost(context) : getSubdomainFromPath(context));
|
56
|
+
}
|
57
|
+
async function getDomainFromURL(context) {
|
58
|
+
const { header } = context;
|
59
|
+
const subdomain = header['x-things-factory-domain'] || getSubdomainFromURL(context);
|
60
|
+
if (subdomain) {
|
61
|
+
return await (0, typeorm_1.getRepository)(domain_1.Domain).findOne({ subdomain }, { cache: true });
|
62
|
+
}
|
63
|
+
}
|
64
|
+
exports.getDomainFromURL = getDomainFromURL;
|
65
|
+
function getCookieDomainFromHostname(hostname) {
|
66
|
+
if (useVirtualHostBasedDomain) {
|
67
|
+
return hostname.split('.').slice(-subdomainOffset).join('.');
|
68
|
+
}
|
69
|
+
}
|
70
|
+
exports.getCookieDomainFromHostname = getCookieDomainFromHostname;
|
71
|
+
function getContextPath(subdomain) {
|
72
|
+
return fixed || useVirtualHostBasedDomain ? '' : '/domain/' + subdomain;
|
73
|
+
}
|
74
|
+
exports.getContextPath = getContextPath;
|
75
|
+
function getRedirectSubdomainPath(context, subdomain, redirectTo = '/') {
|
76
|
+
if (fixed) {
|
77
|
+
return redirectTo || '/';
|
78
|
+
}
|
79
|
+
var parsed = getUrlFromContext(context, redirectTo);
|
80
|
+
var { hostname, pathname } = parsed;
|
81
|
+
if (useVirtualHostBasedDomain) {
|
82
|
+
const splitHost = hostname.split('.').reverse();
|
83
|
+
splitHost[subdomainOffset] = subdomain;
|
84
|
+
parsed.hostname = splitHost
|
85
|
+
.reverse()
|
86
|
+
.filter(a => a)
|
87
|
+
.join('.');
|
88
|
+
}
|
89
|
+
else {
|
90
|
+
const contextPath = `/domain/${subdomain}`;
|
91
|
+
const match = pathname.match(/^\/domain\/([^\/]+)/);
|
92
|
+
if (match) {
|
93
|
+
parsed.pathname = pathname.replace(match[0], contextPath);
|
94
|
+
}
|
95
|
+
else {
|
96
|
+
parsed.pathname = `${contextPath}${pathname}`;
|
97
|
+
}
|
98
|
+
}
|
99
|
+
debug('get-redirect-subdomain-path', parsed.toString());
|
100
|
+
return parsed.toString();
|
101
|
+
}
|
102
|
+
exports.getRedirectSubdomainPath = getRedirectSubdomainPath;
|
103
|
+
function findSubdomainFromPath(context, path) {
|
104
|
+
if (fixed) {
|
105
|
+
return fixed;
|
106
|
+
}
|
107
|
+
var parsed = getUrlFromContext(context, path);
|
108
|
+
var { hostname, pathname } = parsed;
|
109
|
+
if (useVirtualHostBasedDomain) {
|
110
|
+
return hostname.split('.').reverse()[subdomainOffset];
|
111
|
+
}
|
112
|
+
const match = pathname.match(/^\/domain\/([^\/]+)/);
|
113
|
+
return match && match[1];
|
114
|
+
}
|
115
|
+
exports.findSubdomainFromPath = findSubdomainFromPath;
|
116
|
+
function getSiteRootPath(context) {
|
117
|
+
if (useVirtualHostBasedDomain) {
|
118
|
+
var { protocol, host } = context;
|
119
|
+
protocol = protocol.replace(':', '');
|
120
|
+
let domainname = host.split('.').slice(-subdomainOffset).join('.');
|
121
|
+
return protocol + '://' + domainname + '/';
|
122
|
+
}
|
123
|
+
else {
|
124
|
+
return '/';
|
125
|
+
}
|
126
|
+
}
|
127
|
+
exports.getSiteRootPath = getSiteRootPath;
|
128
|
+
//# sourceMappingURL=get-domain.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-domain.js","sourceRoot":"","sources":["../../server/utils/get-domain.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./get-domain"), exports);
|
18
|
+
__exportStar(require("./condition-builder"), exports);
|
19
|
+
__exportStar(require("./list-query-builder"), exports);
|
20
|
+
__exportStar(require("./list-params-converter"), exports);
|
21
|
+
__exportStar(require("./publish-progress"), exports);
|
22
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,sDAAmC;AACnC,uDAAoC;AACpC,0DAAuC;AACvC,qDAAkC"}
|
@@ -0,0 +1,102 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.convertListParams = void 0;
|
4
|
+
const typeorm_1 = require("typeorm");
|
5
|
+
const OPERATION_FUNCTION_MAP = {
|
6
|
+
search: value => (0, typeorm_1.ILike)(value),
|
7
|
+
eq: value => (0, typeorm_1.Equal)(value),
|
8
|
+
noteq: value => (0, typeorm_1.Not)((0, typeorm_1.Equal)(value)),
|
9
|
+
like: value => (0, typeorm_1.Like)(value),
|
10
|
+
i_like: value => (0, typeorm_1.ILike)(value),
|
11
|
+
nlike: value => (0, typeorm_1.Not)((0, typeorm_1.Like)(value)),
|
12
|
+
i_nlike: value => (0, typeorm_1.Not)((0, typeorm_1.ILike)(value)),
|
13
|
+
lt: value => (0, typeorm_1.Raw)(alias => `${alias} < ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
14
|
+
gt: value => (0, typeorm_1.Raw)(alias => `${alias} > ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
15
|
+
lte: value => (0, typeorm_1.Raw)(alias => `${alias} <= ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
16
|
+
gte: value => (0, typeorm_1.Raw)(alias => `${alias} >= ${typeof value === 'string' ? "'" + value + "'" : value}`),
|
17
|
+
in: value => (0, typeorm_1.In)(value),
|
18
|
+
notin: value => (0, typeorm_1.Not)((0, typeorm_1.In)(value)),
|
19
|
+
is_null: () => (0, typeorm_1.IsNull)(),
|
20
|
+
is_not_null: () => (0, typeorm_1.Not)((0, typeorm_1.IsNull)()),
|
21
|
+
is_false: () => (0, typeorm_1.Raw)(alias => `${alias} IS FALSE`),
|
22
|
+
in_true: () => (0, typeorm_1.Raw)(alias => `${alias} IS TRUE`),
|
23
|
+
is_not_true: () => (0, typeorm_1.Raw)(alias => `${alias} IS NOT TRUE`),
|
24
|
+
is_present: () => (0, typeorm_1.Raw)(alias => `${alias} IS PRESENT`),
|
25
|
+
is_blank: () => (0, typeorm_1.Raw)(alias => `${alias} IS BLANK`),
|
26
|
+
is_empty_num_id: () => (0, typeorm_1.Raw)(alias => `${alias} IS EMPTY NUMERIC ID`),
|
27
|
+
between: value => (0, typeorm_1.Between)(value[0], value[1])
|
28
|
+
};
|
29
|
+
function getOperatorFunction({ operator, name, value, dataType }) {
|
30
|
+
return OPERATION_FUNCTION_MAP[operator](value);
|
31
|
+
}
|
32
|
+
function makePaginationParams(pagination) {
|
33
|
+
var jsonParams = {};
|
34
|
+
if (pagination) {
|
35
|
+
var { page = 0, limit = 0 } = pagination;
|
36
|
+
var skip = 0;
|
37
|
+
var take = 0;
|
38
|
+
if (limit > 0) {
|
39
|
+
skip = Math.max(page - 1, 0) * limit;
|
40
|
+
take = limit;
|
41
|
+
Object.assign(jsonParams, {
|
42
|
+
skip,
|
43
|
+
take
|
44
|
+
});
|
45
|
+
}
|
46
|
+
}
|
47
|
+
return jsonParams;
|
48
|
+
}
|
49
|
+
function makeSortingParams(sortings) {
|
50
|
+
var jsonParams = {};
|
51
|
+
if (sortings) {
|
52
|
+
var order = {};
|
53
|
+
sortings.forEach(s => {
|
54
|
+
order[s.name] = s.desc ? 'DESC' : 'ASC';
|
55
|
+
});
|
56
|
+
Object.assign(jsonParams, {
|
57
|
+
order
|
58
|
+
});
|
59
|
+
}
|
60
|
+
return jsonParams;
|
61
|
+
}
|
62
|
+
function makeFilterParams(filters) {
|
63
|
+
/* for where AND clauses */
|
64
|
+
const columnFilters = filters.filter(filter => filter.operator !== 'search');
|
65
|
+
const columnWhere = columnFilters.reduce((where, f) => {
|
66
|
+
where[f.name] = getOperatorFunction(f);
|
67
|
+
return where;
|
68
|
+
}, {});
|
69
|
+
const searchFilters = filters.filter(filter => filter.operator === 'search');
|
70
|
+
if (searchFilters.length === 0) {
|
71
|
+
return {
|
72
|
+
where: columnWhere
|
73
|
+
};
|
74
|
+
}
|
75
|
+
/* for fulltext searching ... OR-AND composition */
|
76
|
+
const searchWheres = searchFilters.map(f => {
|
77
|
+
return Object.assign({ [f.name]: getOperatorFunction(f) }, columnWhere);
|
78
|
+
});
|
79
|
+
return {
|
80
|
+
where: searchWheres
|
81
|
+
};
|
82
|
+
}
|
83
|
+
function convertListParams(params, domain) {
|
84
|
+
var { pagination, filters = [], sortings } = params;
|
85
|
+
var jsonParams = {};
|
86
|
+
if (domain) {
|
87
|
+
filters.push({
|
88
|
+
name: 'domain',
|
89
|
+
operator: 'eq',
|
90
|
+
value: domain
|
91
|
+
});
|
92
|
+
}
|
93
|
+
if (pagination)
|
94
|
+
Object.assign(jsonParams, makePaginationParams(pagination));
|
95
|
+
if (sortings)
|
96
|
+
Object.assign(jsonParams, makeSortingParams(sortings));
|
97
|
+
if (filters)
|
98
|
+
Object.assign(jsonParams, makeFilterParams(filters));
|
99
|
+
return jsonParams;
|
100
|
+
}
|
101
|
+
exports.convertListParams = convertListParams;
|
102
|
+
//# sourceMappingURL=list-params-converter.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"list-params-converter.js","sourceRoot":"","sources":["../../server/utils/list-params-converter.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,51 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.buildQuery = void 0;
|
4
|
+
const typeorm_1 = require("typeorm");
|
5
|
+
const condition_builder_1 = require("./condition-builder");
|
6
|
+
const buildQuery = function (queryBuilder, params, context, domainRef = true) {
|
7
|
+
var _a, _b;
|
8
|
+
const columnFilters = ((_a = params.filters) === null || _a === void 0 ? void 0 : _a.filter(filter => filter.operator !== 'search')) || [];
|
9
|
+
const searchFilters = ((_b = params.filters) === null || _b === void 0 ? void 0 : _b.filter(filter => filter.operator === 'search')) || [];
|
10
|
+
const pagination = params.pagination;
|
11
|
+
const sortings = params.sortings;
|
12
|
+
const domainId = context && context.state.domain && context.state.domain.id;
|
13
|
+
if (columnFilters && columnFilters.length > 0) {
|
14
|
+
columnFilters.forEach(filter => {
|
15
|
+
const condition = (0, condition_builder_1.buildCondition)(queryBuilder.alias, filter.name, filter.operator, filter.value, filter.relation, Object.keys(queryBuilder.getParameters()).length);
|
16
|
+
if (condition === null || condition === void 0 ? void 0 : condition.clause)
|
17
|
+
queryBuilder.andWhere(condition.clause);
|
18
|
+
if (condition === null || condition === void 0 ? void 0 : condition.parameters)
|
19
|
+
queryBuilder.setParameters(condition.parameters);
|
20
|
+
});
|
21
|
+
}
|
22
|
+
if (searchFilters.length > 0) {
|
23
|
+
queryBuilder.andWhere(new typeorm_1.Brackets(qb => {
|
24
|
+
searchFilters.forEach((filter, index) => {
|
25
|
+
const clause = `${queryBuilder.alias}.${filter.name} LIKE :${filter.name}`;
|
26
|
+
const parameters = { [filter.name]: filter.value };
|
27
|
+
index === 0 ? qb.where(clause, parameters) : qb.orWhere(clause, parameters);
|
28
|
+
});
|
29
|
+
}));
|
30
|
+
}
|
31
|
+
if (domainRef) {
|
32
|
+
queryBuilder.andWhere(`${queryBuilder.alias}.domain = :domainId`, { domainId });
|
33
|
+
}
|
34
|
+
if (pagination && pagination.page > 0 && pagination.limit > 0) {
|
35
|
+
queryBuilder.skip(pagination.limit * (pagination.page - 1));
|
36
|
+
queryBuilder.take(pagination.limit);
|
37
|
+
}
|
38
|
+
if (sortings && sortings.length > 0) {
|
39
|
+
sortings.forEach((sorting, index) => {
|
40
|
+
const sortField = sorting.name.split('.').length > 1 ? sorting.name : `${queryBuilder.alias}.${sorting.name}`;
|
41
|
+
if (index === 0) {
|
42
|
+
queryBuilder.orderBy(sortField, sorting.desc ? 'DESC' : 'ASC');
|
43
|
+
}
|
44
|
+
else {
|
45
|
+
queryBuilder.addOrderBy(sortField, sorting.desc ? 'DESC' : 'ASC');
|
46
|
+
}
|
47
|
+
});
|
48
|
+
}
|
49
|
+
};
|
50
|
+
exports.buildQuery = buildQuery;
|
51
|
+
//# sourceMappingURL=list-query-builder.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"list-query-builder.js","sourceRoot":"","sources":["../../server/utils/list-query-builder.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.publishProgress = void 0;
|
4
|
+
const pubsub_1 = require("../pubsub");
|
5
|
+
function publishProgress({ domain, tag, progress, message }) {
|
6
|
+
pubsub_1.pubsub.publish('data', {
|
7
|
+
data: {
|
8
|
+
domain,
|
9
|
+
tag,
|
10
|
+
data: {
|
11
|
+
progress,
|
12
|
+
message
|
13
|
+
}
|
14
|
+
}
|
15
|
+
});
|
16
|
+
}
|
17
|
+
exports.publishProgress = publishProgress;
|
18
|
+
//# sourceMappingURL=publish-progress.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"publish-progress.js","sourceRoot":"","sources":["../../server/utils/publish-progress.ts"],"names":[],"mappings":";;;AAAA,sCAAkC;AAElC,SAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE;IAChE,eAAM,CAAC,OAAO,CAAC,MAAM,EAAE;QACrB,IAAI,EAAE;YACJ,MAAM;YACN,GAAG;YACH,IAAI,EAAE;gBACJ,QAAQ;gBACR,OAAO;aACR;SACF;KACF,CAAC,CAAA;AACJ,CAAC;AAXD,0CAWC"}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
/*
|
2
|
+
Copyright © 2016 Andrew Powell
|
3
|
+
|
4
|
+
This Source Code Form is subject to the terms of the Mozilla Public
|
5
|
+
License, v. 2.0. If a copy of the MPL was not distributed with this
|
6
|
+
file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
7
|
+
|
8
|
+
The above copyright notice and this permission notice shall be
|
9
|
+
included in all copies or substantial portions of this Source Code Form.
|
10
|
+
*/
|
11
|
+
const webpackHotClient = require('@hatiolab/webpack-hot-client');
|
12
|
+
module.exports = {
|
13
|
+
getClient(compiler, options) {
|
14
|
+
if (!options.hotClient) {
|
15
|
+
return Promise.resolve(null);
|
16
|
+
}
|
17
|
+
return new Promise(resolve => {
|
18
|
+
const client = webpackHotClient(compiler, options.hotClient);
|
19
|
+
const { server } = client;
|
20
|
+
server.on('listening', () => resolve(client));
|
21
|
+
});
|
22
|
+
}
|
23
|
+
};
|
24
|
+
//# sourceMappingURL=client.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../server/webpack/koa-webpack/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;EASE;AACF,MAAM,gBAAgB,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAA;AAEhE,MAAM,CAAC,OAAO,GAAG;IACf,SAAS,CAAC,QAAQ,EAAE,OAAO;QACzB,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SAC7B;QAED,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YAC3B,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;YAC5D,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;YAEzB,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
|