eservices-back-core 2.0.35 → 2.0.37
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.d.ts +0 -2
- package/dist/Server.d.ts.map +1 -1
- package/dist/Server.js.map +1 -1
- package/dist/auth/use-auth.d.ts +1 -2
- package/dist/auth/use-auth.d.ts.map +1 -1
- package/dist/middleware/auth-middleware.d.ts +1 -1
- package/dist/model/Filter.d.ts +135 -0
- package/dist/model/Filter.d.ts.map +1 -0
- package/dist/model/Filter.js +236 -0
- package/dist/model/Filter.js.map +1 -0
- package/dist/model/filter-config.d.ts +69 -0
- package/dist/model/filter-config.d.ts.map +1 -0
- package/dist/model/filter-config.js +146 -0
- package/dist/model/filter-config.js.map +1 -0
- package/dist/router/close/test-close-router.d.ts.map +1 -1
- package/dist/router/close/test-close-router.js +3 -0
- package/dist/router/close/test-close-router.js.map +1 -1
- package/dist/socket/events/entity_read.d.ts +8 -0
- package/dist/socket/events/entity_read.d.ts.map +1 -1
- package/dist/socket/events/entity_read.js +20 -0
- package/dist/socket/events/entity_read.js.map +1 -1
- package/dist/store/custom-filters-store.d.ts +7 -0
- package/dist/store/custom-filters-store.d.ts.map +1 -0
- package/dist/store/custom-filters-store.js +29 -0
- package/dist/store/custom-filters-store.js.map +1 -0
- package/dist/store/filters-store.d.ts +7 -0
- package/dist/store/filters-store.d.ts.map +1 -0
- package/dist/store/filters-store.js +28 -0
- package/dist/store/filters-store.js.map +1 -0
- package/dist/templates/error.html +4 -3
- package/dist/utils/Filter.d.ts +1 -0
- package/dist/utils/Filter.d.ts.map +1 -1
- package/dist/utils/Filter.js +1 -0
- package/dist/utils/Filter.js.map +1 -1
- package/dist/utils/get-extend-customer-filters.d.ts +1 -0
- package/dist/utils/get-extend-customer-filters.d.ts.map +1 -1
- package/dist/utils/get-extend-customer-filters.js +2 -1
- package/dist/utils/get-extend-customer-filters.js.map +1 -1
- package/dist/utils/get-required-attribute-values.d.ts +11 -0
- package/dist/utils/get-required-attribute-values.d.ts.map +1 -0
- package/dist/utils/get-required-attribute-values.js +46 -0
- package/dist/utils/get-required-attribute-values.js.map +1 -0
- package/dist/utils/use-config.d.ts.map +1 -1
- package/dist/utils/use-config.js +42 -17
- package/dist/utils/use-config.js.map +1 -1
- package/package.json +3 -2
package/dist/Server.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
/// <reference types="node/http" />
|
|
3
|
-
/// <reference types="got/dist/source/core/utils/timed-out" />
|
|
4
2
|
import { Express, Router } from "express";
|
|
5
3
|
import { Server as HTTPServer } from 'http';
|
|
6
4
|
import CoreSocketServer from "./socket/core-socket-server";
|
package/dist/Server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":";AAAA,OAAgB,EAAC,OAAO,EAAE,MAAM,EAAC,MAAM,SAAS,CAAC;AACjD,OAAa,EAAC,MAAM,IAAI,UAAU,EAAC,MAAM,MAAM,CAAC;AAQhD,OAAO,gBAAgB,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAC,yBAAyB,EAAE,aAAa,EAAE,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAQzF,MAAM,CAAC,OAAO,OAAO,MAAM;IAC1B;;OAEG;IACH,aAAa,CAAC,EAAE,yBAAyB,CAAC;IAC1C;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,MAAM,EAAE,aAAa,CAAA;IAErB;;OAEG;IACH,GAAG,EAAE,OAAO,CAAC;IAEb;;OAEG;IACH,UAAU,EAAE,UAAU,CAAA;IAEtB;;OAEG;IACH,IAAI,EAAE,UAAU,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,gBAAgB,CAAA;IAExB,IAAI,SAAS,WAEZ;IAED,MAAM,KAAK,IAAI,WAEd;IACD,MAAM,KAAK,KAAK,YAKf;IACD;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IAEf,MAAM,CAAC,SAAS,IAAI,MAAM;gBAGd,MAAM,EAAE,aAAa;IAiB3B,GAAG;YAoBK,eAAe;CAgB7B;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,aAAa,mBAwBvD;AAID,MAAM,MAAM,MAAM,GAAG,MAAM,CAAA"}
|
package/dist/Server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../src/Server.ts"],"names":[],"mappings":"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"}
|
package/dist/auth/use-auth.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Client } from 'openid-client';
|
|
2
1
|
import { Request } from "express";
|
|
3
2
|
import { IAuthOptions } from "../types/auth-type";
|
|
4
3
|
import { getAuthStateFormRequest } from "./get-auth-state-form-request";
|
|
@@ -7,7 +6,7 @@ import { getAuthStateFormRequest } from "./get-auth-state-form-request";
|
|
|
7
6
|
* также для WS.
|
|
8
7
|
*/
|
|
9
8
|
export default function useAuth(options: IAuthOptions): {
|
|
10
|
-
client:
|
|
9
|
+
client: import("openid-client").BaseClient;
|
|
11
10
|
useAuthMiddleware: () => import("express-serve-static-core").Router;
|
|
12
11
|
useWSAuthMiddleware: (req: Request) => Promise<void>;
|
|
13
12
|
silentLogout: (req: Request) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-auth.d.ts","sourceRoot":"","sources":["../../src/auth/use-auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-auth.d.ts","sourceRoot":"","sources":["../../src/auth/use-auth.ts"],"names":[],"mappings":"AACA,OAAgB,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAGzC,OAAO,EAAmB,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAUlE,OAAO,EAAC,uBAAuB,EAAC,MAAM,+BAA+B,CAAC;AActE;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,OAAO,EAAE,YAAY;;;+BA0JZ,OAAO;wBAqDpB,OAAO;;;;;EAuBlC;AA8DD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,UAIlD;AAID;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,UAExD;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,UAE1D"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// <reference types="express" />
|
|
3
3
|
import { IAuthOptions } from "../types/auth-type";
|
|
4
4
|
export declare function authModule(): {
|
|
5
|
-
client: import("openid-client").
|
|
5
|
+
client: import("openid-client").BaseClient;
|
|
6
6
|
useAuthMiddleware: () => import("express-serve-static-core").Router;
|
|
7
7
|
useWSAuthMiddleware: (req: import("express").Request<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>) => Promise<void>;
|
|
8
8
|
silentLogout: (req: import("express").Request<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>) => void;
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { IFilterEnum, IFilterNumber, IFilterString } from "../utils/Filter";
|
|
2
|
+
/**
|
|
3
|
+
* @description Класс предназначенный для работы с фильтрами. Предоставляет одиночные static методы
|
|
4
|
+
* при помощи, которых можно самостоятельно создать фильтр или полноценный механизм задачи фильтра
|
|
5
|
+
* через объект(Более краткий и удобный) через new.
|
|
6
|
+
*
|
|
7
|
+
* @example Using array declaration
|
|
8
|
+
* const filter = new Filter([
|
|
9
|
+
* ["eq", ["Name", "Jack"] ],
|
|
10
|
+
* ["eq", ["Age", "@age"] ]
|
|
11
|
+
* ]);
|
|
12
|
+
* const data = { age: 25 }
|
|
13
|
+
* const strFilter = filter.generate(data);
|
|
14
|
+
*
|
|
15
|
+
* @example Using array declaration
|
|
16
|
+
* const filter = new Filter([
|
|
17
|
+
* "or",
|
|
18
|
+
* [
|
|
19
|
+
* ["in", ["Status", ["A", "D"] ] ],
|
|
20
|
+
* ["in", ["Type", "$userType" ] ]
|
|
21
|
+
* ]
|
|
22
|
+
* ])
|
|
23
|
+
* const data = {
|
|
24
|
+
* userType: ["User", "Person"]
|
|
25
|
+
* }
|
|
26
|
+
* const strFilter = filter.generate(data)
|
|
27
|
+
*
|
|
28
|
+
* @example With Object
|
|
29
|
+
* const filter = new Filter({
|
|
30
|
+
* operation: "and",
|
|
31
|
+
* arguments: [
|
|
32
|
+
* {
|
|
33
|
+
* operation: "eq", arguments: ["StatusCode", "A"]
|
|
34
|
+
* },
|
|
35
|
+
* {
|
|
36
|
+
* operation: "eq", arguments: ["TypeCode", "New"]
|
|
37
|
+
* }
|
|
38
|
+
* ]
|
|
39
|
+
* })
|
|
40
|
+
* @example Use static eq function
|
|
41
|
+
* const strFilter = Filter.eq("StatusCode", "A");
|
|
42
|
+
*
|
|
43
|
+
* @example With String
|
|
44
|
+
* const filter = new Filter([
|
|
45
|
+
* "Status eq 'A'",
|
|
46
|
+
* "Type eq 'Person'"
|
|
47
|
+
* ])
|
|
48
|
+
*/
|
|
49
|
+
export default class Filter {
|
|
50
|
+
/**
|
|
51
|
+
* @description Набор доступных операций. Устанавливается напрямую программистом.
|
|
52
|
+
*/
|
|
53
|
+
static readonly AVAILABLE_OPERATION: string[];
|
|
54
|
+
static readonly ARGUMENT_SYMBOL = "$";
|
|
55
|
+
private readonly compileFn;
|
|
56
|
+
/**
|
|
57
|
+
* @description Массив обзятальных полей (без ARGUMENT_SYMBOL в начале!), который заправшиваются в конфигурации фильтра.
|
|
58
|
+
*/
|
|
59
|
+
readonly requiredArguments: string[];
|
|
60
|
+
private addRequiredArgument;
|
|
61
|
+
constructor(value: unknown);
|
|
62
|
+
/**
|
|
63
|
+
* @description Функция генерирует фильтр и возвращает строковое значение.
|
|
64
|
+
* @param data {object} Объект данных(Значения аргументов), которые будут использоватьс для полной генерации фильтра
|
|
65
|
+
*/
|
|
66
|
+
generate(data?: IArgumentsData): string;
|
|
67
|
+
/**
|
|
68
|
+
* @description Базовая функция компиляции элемента оъекта. Она разбирается в каком формате описан элемент и вызывается
|
|
69
|
+
* compileExpressionByType.
|
|
70
|
+
* @private
|
|
71
|
+
*/
|
|
72
|
+
private compileItem;
|
|
73
|
+
/**
|
|
74
|
+
* @description В зависимости от operation, выбирается нужная функция компиляции объекта.
|
|
75
|
+
* @param {string} operation Строкове значение операции.
|
|
76
|
+
* @param attributes Набор аргументов
|
|
77
|
+
* @private
|
|
78
|
+
*/
|
|
79
|
+
private compileExpressionByType;
|
|
80
|
+
private compileArray;
|
|
81
|
+
private compileEqual;
|
|
82
|
+
private compileInclude;
|
|
83
|
+
/**
|
|
84
|
+
* @description Проверяет переданное значение. Если это строка и начинается с @ вернёт true.
|
|
85
|
+
*/
|
|
86
|
+
private isRequiredCalculatedArgument;
|
|
87
|
+
private checkForRequiredCalculatedArgument;
|
|
88
|
+
/**
|
|
89
|
+
* @description Проверка на валдиность фильтрованного выражения.
|
|
90
|
+
*/
|
|
91
|
+
private isValidObjectExpression;
|
|
92
|
+
/**
|
|
93
|
+
* @description Для замены значения используется данная функция
|
|
94
|
+
* @param {string} argumentName
|
|
95
|
+
* @param availableArgumentData
|
|
96
|
+
* @private
|
|
97
|
+
*/
|
|
98
|
+
private treatArgument;
|
|
99
|
+
/**
|
|
100
|
+
* @description Not Equal(!==).
|
|
101
|
+
* @param operandName
|
|
102
|
+
* @param operandValue
|
|
103
|
+
*/
|
|
104
|
+
static notEq(operandName: string, operandValue: IFilterString | IFilterNumber): string;
|
|
105
|
+
/**
|
|
106
|
+
* @description Equal(===)
|
|
107
|
+
* @param operandName
|
|
108
|
+
* @param operandValue
|
|
109
|
+
*/
|
|
110
|
+
static eq(operandName: string, operandValue: IFilterString | IFilterNumber | IFilterEnum): string;
|
|
111
|
+
/**
|
|
112
|
+
* @description Include.
|
|
113
|
+
* @param operandName
|
|
114
|
+
* @param operandValue
|
|
115
|
+
*/
|
|
116
|
+
static in(operandName: string, operandValue: IFilterEnum): string;
|
|
117
|
+
private static combine;
|
|
118
|
+
static and(...expressions: string[]): string;
|
|
119
|
+
static or(...expressions: string[]): string;
|
|
120
|
+
static notIn(operandName: string, operandValue: unknown): string;
|
|
121
|
+
/**
|
|
122
|
+
* @description Универсальная функция для обёртки элемента.
|
|
123
|
+
* @param {string} value строкове значение, которое необходимо обернуть
|
|
124
|
+
* @param wrapSymbolStart Начальный символ обёртки
|
|
125
|
+
* @param wrapSymbolEnd Конечный символ обёртки
|
|
126
|
+
* @example just wrap with round brackets
|
|
127
|
+
* Filter.wrap('name'); // '(name)'
|
|
128
|
+
* @example just wrap with provided symbols
|
|
129
|
+
* Filter.wrap('name', '*', '*'); // '*name*'
|
|
130
|
+
*/
|
|
131
|
+
static wrap(value: string, wrapSymbolStart?: string, wrapSymbolEnd?: string): string;
|
|
132
|
+
}
|
|
133
|
+
type IArgumentsData = Record<string, any>;
|
|
134
|
+
export {};
|
|
135
|
+
//# sourceMappingURL=Filter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../src/model/Filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,aAAa,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAM1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAM,CAAC,OAAO,OAAO,MAAM;IACvB;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,mBAAmB,WAAyC;IAC5E,MAAM,CAAC,QAAQ,CAAC,eAAe,OAAO;IAEtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;IAErD;;OAEG;IACH,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAM;IAC1C,OAAO,CAAC,mBAAmB;gBAKf,KAAK,EAAE,OAAO;IAI1B;;;OAGG;IACI,QAAQ,CAAC,IAAI,GAAE,cAAmB;IAIzC;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAcnB;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAIpC,OAAO,CAAC,kCAAkC;IAK1C;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAK/B;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAMrB;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,GAAG,aAAa;IAI7E;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,GAAG,aAAa,GAAG,WAAW;IAKzF;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW;IAOxD,OAAO,CAAC,MAAM,CAAC,OAAO;IAUtB,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,EAAE,MAAM,EAAE;IAGnC,MAAM,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,MAAM,EAAE;IAGlC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO;IAKvD;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,GAAE,MAAY,EAAE,aAAa,GAAE,MAAY;CAcxF;AAaD,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA"}
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function wrapString(str) {
|
|
4
|
+
return typeof str === 'string' ? `'${str}'` : `${str}`;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* @description Класс предназначенный для работы с фильтрами. Предоставляет одиночные static методы
|
|
8
|
+
* при помощи, которых можно самостоятельно создать фильтр или полноценный механизм задачи фильтра
|
|
9
|
+
* через объект(Более краткий и удобный) через new.
|
|
10
|
+
*
|
|
11
|
+
* @example Using array declaration
|
|
12
|
+
* const filter = new Filter([
|
|
13
|
+
* ["eq", ["Name", "Jack"] ],
|
|
14
|
+
* ["eq", ["Age", "@age"] ]
|
|
15
|
+
* ]);
|
|
16
|
+
* const data = { age: 25 }
|
|
17
|
+
* const strFilter = filter.generate(data);
|
|
18
|
+
*
|
|
19
|
+
* @example Using array declaration
|
|
20
|
+
* const filter = new Filter([
|
|
21
|
+
* "or",
|
|
22
|
+
* [
|
|
23
|
+
* ["in", ["Status", ["A", "D"] ] ],
|
|
24
|
+
* ["in", ["Type", "$userType" ] ]
|
|
25
|
+
* ]
|
|
26
|
+
* ])
|
|
27
|
+
* const data = {
|
|
28
|
+
* userType: ["User", "Person"]
|
|
29
|
+
* }
|
|
30
|
+
* const strFilter = filter.generate(data)
|
|
31
|
+
*
|
|
32
|
+
* @example With Object
|
|
33
|
+
* const filter = new Filter({
|
|
34
|
+
* operation: "and",
|
|
35
|
+
* arguments: [
|
|
36
|
+
* {
|
|
37
|
+
* operation: "eq", arguments: ["StatusCode", "A"]
|
|
38
|
+
* },
|
|
39
|
+
* {
|
|
40
|
+
* operation: "eq", arguments: ["TypeCode", "New"]
|
|
41
|
+
* }
|
|
42
|
+
* ]
|
|
43
|
+
* })
|
|
44
|
+
* @example Use static eq function
|
|
45
|
+
* const strFilter = Filter.eq("StatusCode", "A");
|
|
46
|
+
*
|
|
47
|
+
* @example With String
|
|
48
|
+
* const filter = new Filter([
|
|
49
|
+
* "Status eq 'A'",
|
|
50
|
+
* "Type eq 'Person'"
|
|
51
|
+
* ])
|
|
52
|
+
*/
|
|
53
|
+
class Filter {
|
|
54
|
+
addRequiredArgument(name) {
|
|
55
|
+
this.requiredArguments.push(name);
|
|
56
|
+
}
|
|
57
|
+
constructor(value) {
|
|
58
|
+
this.compileFn = null;
|
|
59
|
+
/**
|
|
60
|
+
* @description Массив обзятальных полей (без ARGUMENT_SYMBOL в начале!), который заправшиваются в конфигурации фильтра.
|
|
61
|
+
*/
|
|
62
|
+
this.requiredArguments = [];
|
|
63
|
+
this.compileFn = this.compileItem(value);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* @description Функция генерирует фильтр и возвращает строковое значение.
|
|
67
|
+
* @param data {object} Объект данных(Значения аргументов), которые будут использоватьс для полной генерации фильтра
|
|
68
|
+
*/
|
|
69
|
+
generate(data = {}) {
|
|
70
|
+
return this.compileFn(data);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* @description Базовая функция компиляции элемента оъекта. Она разбирается в каком формате описан элемент и вызывается
|
|
74
|
+
* compileExpressionByType.
|
|
75
|
+
* @private
|
|
76
|
+
*/
|
|
77
|
+
compileItem(item) {
|
|
78
|
+
if (Array.isArray(item)) {
|
|
79
|
+
return (Filter.AVAILABLE_OPERATION.includes(item[0]))
|
|
80
|
+
? this.compileExpressionByType(item[0], item[1])
|
|
81
|
+
: this.compileExpressionByType('and', item);
|
|
82
|
+
}
|
|
83
|
+
else if (typeof item === 'string') {
|
|
84
|
+
return () => item;
|
|
85
|
+
}
|
|
86
|
+
else if (this.isValidObjectExpression(item))
|
|
87
|
+
return this.compileExpressionByType(item.operation, item.arguments);
|
|
88
|
+
else {
|
|
89
|
+
throw new Error(`Unknown filter item ${JSON.stringify(item)}`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* @description В зависимости от operation, выбирается нужная функция компиляции объекта.
|
|
94
|
+
* @param {string} operation Строкове значение операции.
|
|
95
|
+
* @param attributes Набор аргументов
|
|
96
|
+
* @private
|
|
97
|
+
*/
|
|
98
|
+
compileExpressionByType(operation, attributes) {
|
|
99
|
+
switch (operation) {
|
|
100
|
+
case 'and':
|
|
101
|
+
case 'or': {
|
|
102
|
+
if (!Array.isArray(attributes))
|
|
103
|
+
throw new Error(`Filter Config: with "and" should be provided array data.`);
|
|
104
|
+
return this.compileArray(operation, attributes);
|
|
105
|
+
}
|
|
106
|
+
case 'eq': return this.compileEqual(attributes[0], attributes[1]);
|
|
107
|
+
case 'in': return this.compileInclude(attributes[0], attributes[1]);
|
|
108
|
+
default: throw new Error(`filter-config: Unknown operation '${operation}'`);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
compileArray(combineType, data) {
|
|
112
|
+
const arrayCompileItems = data.map(item => this.compileItem(item));
|
|
113
|
+
return (compileValues) => Filter.combine(combineType, arrayCompileItems.map(fn => fn(compileValues)));
|
|
114
|
+
}
|
|
115
|
+
compileEqual(field, value) {
|
|
116
|
+
this.checkForRequiredCalculatedArgument(value);
|
|
117
|
+
return (data) => Filter.eq(field, this.treatArgument(value, data));
|
|
118
|
+
}
|
|
119
|
+
compileInclude(field, value) {
|
|
120
|
+
this.checkForRequiredCalculatedArgument(value);
|
|
121
|
+
return (data) => Filter.in(field, this.treatArgument(value, data));
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* @description Проверяет переданное значение. Если это строка и начинается с @ вернёт true.
|
|
125
|
+
*/
|
|
126
|
+
isRequiredCalculatedArgument(argumentName) {
|
|
127
|
+
return (typeof argumentName === 'string' && argumentName.startsWith(Filter.ARGUMENT_SYMBOL));
|
|
128
|
+
}
|
|
129
|
+
checkForRequiredCalculatedArgument(argumentName) {
|
|
130
|
+
if (!this.isRequiredCalculatedArgument(argumentName))
|
|
131
|
+
return;
|
|
132
|
+
this.addRequiredArgument(argumentName.slice(1));
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* @description Проверка на валдиность фильтрованного выражения.
|
|
136
|
+
*/
|
|
137
|
+
isValidObjectExpression(expression) {
|
|
138
|
+
if (!(typeof expression === 'object' && expression !== null))
|
|
139
|
+
return false;
|
|
140
|
+
return Filter.AVAILABLE_OPERATION.includes(expression.operation);
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* @description Для замены значения используется данная функция
|
|
144
|
+
* @param {string} argumentName
|
|
145
|
+
* @param availableArgumentData
|
|
146
|
+
* @private
|
|
147
|
+
*/
|
|
148
|
+
treatArgument(argumentName, availableArgumentData) {
|
|
149
|
+
if (!this.isRequiredCalculatedArgument(argumentName))
|
|
150
|
+
return argumentName;
|
|
151
|
+
return availableArgumentData[argumentName.slice(1)];
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* @description Not Equal(!==).
|
|
155
|
+
* @param operandName
|
|
156
|
+
* @param operandValue
|
|
157
|
+
*/
|
|
158
|
+
static notEq(operandName, operandValue) {
|
|
159
|
+
return `@${operandName} nq ${wrapString(operandValue)}`;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* @description Equal(===)
|
|
163
|
+
* @param operandName
|
|
164
|
+
* @param operandValue
|
|
165
|
+
*/
|
|
166
|
+
static eq(operandName, operandValue) {
|
|
167
|
+
if (Array.isArray(operandValue))
|
|
168
|
+
return Filter.in(operandName, operandValue);
|
|
169
|
+
return `@${operandName} eq ${wrapString(operandValue)}`;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* @description Include.
|
|
173
|
+
* @param operandName
|
|
174
|
+
* @param operandValue
|
|
175
|
+
*/
|
|
176
|
+
static in(operandName, operandValue) {
|
|
177
|
+
if (!Array.isArray(operandValue))
|
|
178
|
+
throw new Error(`Filter: Value for in must be array. But provided ${operandValue}.`);
|
|
179
|
+
const parsedValues = operandValue.map(wrapString).join(', ');
|
|
180
|
+
return `@${operandName} in (${parsedValues})`;
|
|
181
|
+
}
|
|
182
|
+
static combine(type, expressions) {
|
|
183
|
+
return expressions
|
|
184
|
+
.filter(item => {
|
|
185
|
+
if (typeof item !== 'string')
|
|
186
|
+
return false;
|
|
187
|
+
if (item.trim().length === 0)
|
|
188
|
+
return false;
|
|
189
|
+
return item;
|
|
190
|
+
})
|
|
191
|
+
.map(x => Filter.wrap(x))
|
|
192
|
+
.join(' ' + type + ' ');
|
|
193
|
+
}
|
|
194
|
+
static and(...expressions) {
|
|
195
|
+
return Filter.combine('and', expressions);
|
|
196
|
+
}
|
|
197
|
+
static or(...expressions) {
|
|
198
|
+
return Filter.combine('or', expressions);
|
|
199
|
+
}
|
|
200
|
+
static notIn(operandName, operandValue) {
|
|
201
|
+
if (!Array.isArray(operandValue) || operandValue.length === 0)
|
|
202
|
+
return '';
|
|
203
|
+
return Filter.and(...operandValue.map(value => Filter.notEq(operandName, value)));
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* @description Универсальная функция для обёртки элемента.
|
|
207
|
+
* @param {string} value строкове значение, которое необходимо обернуть
|
|
208
|
+
* @param wrapSymbolStart Начальный символ обёртки
|
|
209
|
+
* @param wrapSymbolEnd Конечный символ обёртки
|
|
210
|
+
* @example just wrap with round brackets
|
|
211
|
+
* Filter.wrap('name'); // '(name)'
|
|
212
|
+
* @example just wrap with provided symbols
|
|
213
|
+
* Filter.wrap('name', '*', '*'); // '*name*'
|
|
214
|
+
*/
|
|
215
|
+
static wrap(value, wrapSymbolStart = '(', wrapSymbolEnd = ')') {
|
|
216
|
+
/*
|
|
217
|
+
Не верно!
|
|
218
|
+
-->
|
|
219
|
+
if (value.startsWith(wrapSymbolStart) && value.endsWith(wrapSymbolEnd)) return value;
|
|
220
|
+
<--
|
|
221
|
+
Контр пример value = "(expr1) and (expr2)". В таком случае, мы не обернём выражение, однако
|
|
222
|
+
это не обходимо, если дальше идёт or и вместо
|
|
223
|
+
(() and ()) or ()
|
|
224
|
+
Мы получим
|
|
225
|
+
() and () or ()
|
|
226
|
+
*/
|
|
227
|
+
return [wrapSymbolStart, value, wrapSymbolEnd].join(' ');
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* @description Набор доступных операций. Устанавливается напрямую программистом.
|
|
232
|
+
*/
|
|
233
|
+
Filter.AVAILABLE_OPERATION = ['and', 'or', 'eq', 'nq', 'in', 'nin'];
|
|
234
|
+
Filter.ARGUMENT_SYMBOL = '$';
|
|
235
|
+
exports.default = Filter;
|
|
236
|
+
//# sourceMappingURL=Filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Filter.js","sourceRoot":"","sources":["../../src/model/Filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { IFilterEnum, IFilterNumber, IFilterString } from "../utils/Filter";
|
|
2
|
+
/**
|
|
3
|
+
* @description Класс предназначенный для работы с фильтрами. Предоставляет одиночные static методы
|
|
4
|
+
* при помощи, которых можно самостоятельно создать фильтр или полноценный механизм задачи фильтра
|
|
5
|
+
* через объект(Более краткий и удобный) через new.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const filter = new Filter([
|
|
9
|
+
* ["eq", ["Name", "Jack"] ],
|
|
10
|
+
* ["eq", ["Age", "@age"] ]
|
|
11
|
+
* ]);
|
|
12
|
+
* const data = { age: 25 }
|
|
13
|
+
* const strFilter = filter.generate(data);
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* const filter = new Filter([
|
|
17
|
+
* "or",
|
|
18
|
+
* [
|
|
19
|
+
* ["in", ["Status", ["A", "D"] ] ],
|
|
20
|
+
* ["in", ["Type", "$userType" ] ]
|
|
21
|
+
* ]
|
|
22
|
+
* ])
|
|
23
|
+
* const data = {
|
|
24
|
+
* userType: ["User", "Person"]
|
|
25
|
+
* }
|
|
26
|
+
* const strFilter = filter.generate(data)
|
|
27
|
+
*/
|
|
28
|
+
export default class Filter {
|
|
29
|
+
static readonly AVAILABLE_OPERATION: string[];
|
|
30
|
+
private readonly compileFn;
|
|
31
|
+
get valid(): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* @description Массив обзятальных полей, еоторый заправшиваются в конфигурации фильтра.
|
|
34
|
+
*/
|
|
35
|
+
readonly requiredArguments: string[];
|
|
36
|
+
private addRequiredArgument;
|
|
37
|
+
constructor(value: unknown);
|
|
38
|
+
generate(data?: ICompileData): string;
|
|
39
|
+
private compileItem;
|
|
40
|
+
private compileExpressionByType;
|
|
41
|
+
private compileArray;
|
|
42
|
+
private compileEqual;
|
|
43
|
+
private compileInclude;
|
|
44
|
+
private isRequiredValue;
|
|
45
|
+
private isValidObjectExpression;
|
|
46
|
+
private checkForRequiredValue;
|
|
47
|
+
private convertValue;
|
|
48
|
+
/**
|
|
49
|
+
* @description Not Equal(!==).
|
|
50
|
+
* @param name
|
|
51
|
+
* @param values
|
|
52
|
+
*/
|
|
53
|
+
static notEq(name: string, values: IFilterString | IFilterNumber): string;
|
|
54
|
+
/**
|
|
55
|
+
* @description Equal(===)
|
|
56
|
+
* @param name
|
|
57
|
+
* @param values
|
|
58
|
+
*/
|
|
59
|
+
static eq(name: string, values: IFilterString | IFilterNumber | IFilterEnum): string;
|
|
60
|
+
/**
|
|
61
|
+
* @description Include.
|
|
62
|
+
* @param name
|
|
63
|
+
* @param values
|
|
64
|
+
*/
|
|
65
|
+
static in(name: string, values: IFilterEnum): string;
|
|
66
|
+
}
|
|
67
|
+
type ICompileData = Record<string, any>;
|
|
68
|
+
export {};
|
|
69
|
+
//# sourceMappingURL=filter-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-config.d.ts","sourceRoot":"","sources":["../../src/model/filter-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAE,aAAa,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAM1E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,OAAO,OAAO,MAAM;IACvB,MAAM,CAAC,QAAQ,CAAC,mBAAmB,WAAkC;IAErE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;IACrD,IAAI,KAAK,YAER;IAED;;OAEG;IAEH,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAM;IAC1C,OAAO,CAAC,mBAAmB;gBAKf,KAAK,EAAE,OAAO;IAOnB,QAAQ,CAAC,IAAI,GAAE,YAAiB;IAIvC,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,YAAY;IAKpB;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,aAAa;IAIhE;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,aAAa,GAAG,WAAW;IAK5E;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;CAI9C;AAaD,KAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const use_logger_1 = require("../logger/use-logger");
|
|
4
|
+
function wrapString(str) {
|
|
5
|
+
return typeof str === 'string' ? `'${str}'` : `${str}`;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* @description Класс предназначенный для работы с фильтрами. Предоставляет одиночные static методы
|
|
9
|
+
* при помощи, которых можно самостоятельно создать фильтр или полноценный механизм задачи фильтра
|
|
10
|
+
* через объект(Более краткий и удобный) через new.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* const filter = new Filter([
|
|
14
|
+
* ["eq", ["Name", "Jack"] ],
|
|
15
|
+
* ["eq", ["Age", "@age"] ]
|
|
16
|
+
* ]);
|
|
17
|
+
* const data = { age: 25 }
|
|
18
|
+
* const strFilter = filter.generate(data);
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* const filter = new Filter([
|
|
22
|
+
* "or",
|
|
23
|
+
* [
|
|
24
|
+
* ["in", ["Status", ["A", "D"] ] ],
|
|
25
|
+
* ["in", ["Type", "$userType" ] ]
|
|
26
|
+
* ]
|
|
27
|
+
* ])
|
|
28
|
+
* const data = {
|
|
29
|
+
* userType: ["User", "Person"]
|
|
30
|
+
* }
|
|
31
|
+
* const strFilter = filter.generate(data)
|
|
32
|
+
*/
|
|
33
|
+
class Filter {
|
|
34
|
+
get valid() {
|
|
35
|
+
return !!this.compileFn;
|
|
36
|
+
}
|
|
37
|
+
addRequiredArgument(name) {
|
|
38
|
+
this.requiredArguments.push(name);
|
|
39
|
+
}
|
|
40
|
+
constructor(value) {
|
|
41
|
+
this.compileFn = null;
|
|
42
|
+
/**
|
|
43
|
+
* @description Массив обзятальных полей, еоторый заправшиваются в конфигурации фильтра.
|
|
44
|
+
*/
|
|
45
|
+
this.requiredArguments = [];
|
|
46
|
+
try {
|
|
47
|
+
this.compileFn = this.compileItem(value);
|
|
48
|
+
}
|
|
49
|
+
catch (e) {
|
|
50
|
+
use_logger_1.Logger.error(e);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
generate(data = {}) {
|
|
54
|
+
return this.compileFn(data);
|
|
55
|
+
}
|
|
56
|
+
compileItem(item) {
|
|
57
|
+
if (Array.isArray(item)) {
|
|
58
|
+
return (Filter.AVAILABLE_OPERATION.includes(item[0]))
|
|
59
|
+
? this.compileExpressionByType(item[0], item[1])
|
|
60
|
+
: this.compileExpressionByType('and', item);
|
|
61
|
+
}
|
|
62
|
+
else if (typeof item === 'string') {
|
|
63
|
+
return () => item;
|
|
64
|
+
}
|
|
65
|
+
else if (this.isValidObjectExpression(item))
|
|
66
|
+
return this.compileExpressionByType(item.operation, item.arguments);
|
|
67
|
+
else {
|
|
68
|
+
throw new Error(`Unknown filter item ${JSON.stringify(item)}`);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
compileExpressionByType(type, data) {
|
|
72
|
+
switch (type) {
|
|
73
|
+
case 'and':
|
|
74
|
+
case 'or': {
|
|
75
|
+
if (!Array.isArray(data))
|
|
76
|
+
throw new Error(`Filter Config: with "and" should be provided array data.`);
|
|
77
|
+
return this.compileArray(type, data);
|
|
78
|
+
}
|
|
79
|
+
case 'eq': return this.compileEqual(data[0], data[1]);
|
|
80
|
+
case 'in': return this.compileInclude(data[0], data[1]);
|
|
81
|
+
default: throw new Error(`filter-config: Unknown operation '${type}'`);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
compileArray(type, data) {
|
|
85
|
+
const arrayCompileItems = data.map(item => this.compileItem(item));
|
|
86
|
+
return (compileValues) => '( ' + arrayCompileItems.map(fn => fn(compileValues)).join(` ${type} `) + ' )';
|
|
87
|
+
}
|
|
88
|
+
compileEqual(field, value) {
|
|
89
|
+
this.checkForRequiredValue(value);
|
|
90
|
+
return (compileValues) => Filter.eq(field, this.convertValue(value, compileValues));
|
|
91
|
+
}
|
|
92
|
+
compileInclude(field, value) {
|
|
93
|
+
this.checkForRequiredValue(value);
|
|
94
|
+
return (compileValues) => Filter.in(field, this.convertValue(value, compileValues));
|
|
95
|
+
}
|
|
96
|
+
isRequiredValue(value) {
|
|
97
|
+
if (typeof value !== 'string')
|
|
98
|
+
return false;
|
|
99
|
+
return value.startsWith('@');
|
|
100
|
+
}
|
|
101
|
+
isValidObjectExpression(data) {
|
|
102
|
+
if (!(typeof data === 'object' && data !== null))
|
|
103
|
+
return false;
|
|
104
|
+
return Filter.AVAILABLE_OPERATION.includes(data.operation);
|
|
105
|
+
}
|
|
106
|
+
checkForRequiredValue(value) {
|
|
107
|
+
if (!this.isRequiredValue(value))
|
|
108
|
+
return;
|
|
109
|
+
this.addRequiredArgument(value);
|
|
110
|
+
}
|
|
111
|
+
convertValue(value, compileValues) {
|
|
112
|
+
if (typeof value !== 'string')
|
|
113
|
+
return value;
|
|
114
|
+
return compileValues[value] || value;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* @description Not Equal(!==).
|
|
118
|
+
* @param name
|
|
119
|
+
* @param values
|
|
120
|
+
*/
|
|
121
|
+
static notEq(name, values) {
|
|
122
|
+
return `@${name} nq ${wrapString(values)}`;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* @description Equal(===)
|
|
126
|
+
* @param name
|
|
127
|
+
* @param values
|
|
128
|
+
*/
|
|
129
|
+
static eq(name, values) {
|
|
130
|
+
if (Array.isArray(values))
|
|
131
|
+
return Filter.in(name, values);
|
|
132
|
+
return `@${name} eq ${wrapString(values)}`;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* @description Include.
|
|
136
|
+
* @param name
|
|
137
|
+
* @param values
|
|
138
|
+
*/
|
|
139
|
+
static in(name, values) {
|
|
140
|
+
const parsedValues = values.map(wrapString).join(', ');
|
|
141
|
+
return `@${name} in (${parsedValues})`;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
Filter.AVAILABLE_OPERATION = ['and', 'or', 'eq', 'nq', 'in'];
|
|
145
|
+
exports.default = Filter;
|
|
146
|
+
//# sourceMappingURL=filter-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-config.js","sourceRoot":"","sources":["../../src/model/filter-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-close-router.d.ts","sourceRoot":"","sources":["../../../src/router/close/test-close-router.ts"],"names":[],"mappings":";AAWA,
|
|
1
|
+
{"version":3,"file":"test-close-router.d.ts","sourceRoot":"","sources":["../../../src/router/close/test-close-router.ts"],"names":[],"mappings":";AAWA,wBAoGC"}
|
|
@@ -28,6 +28,9 @@ exports.default = () => {
|
|
|
28
28
|
TestCloseRouter.get('/session', (req, res) => {
|
|
29
29
|
res.json(req.session);
|
|
30
30
|
});
|
|
31
|
+
TestCloseRouter.get('/cookies', (req, res) => {
|
|
32
|
+
res.json(req.cookies);
|
|
33
|
+
});
|
|
31
34
|
TestCloseRouter.get('/err-1', (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
|
|
32
35
|
try {
|
|
33
36
|
throw 'Just String Error';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-close-router.js","sourceRoot":"","sources":["../../../src/router/close/test-close-router.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"test-close-router.js","sourceRoot":"","sources":["../../../src/router/close/test-close-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,5 +12,13 @@ export interface IEntityReadParams {
|
|
|
12
12
|
* к GrandObject. Подробнее тут https://form.jenesius.com/guide/utils.html#grandobject
|
|
13
13
|
*/
|
|
14
14
|
useGrand?: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* @issue 3692
|
|
17
|
+
* @description Пользовательские фильтры, которые нужно добавить в запрос
|
|
18
|
+
*/
|
|
19
|
+
customFilters?: (string | {
|
|
20
|
+
name: 'string';
|
|
21
|
+
arguments: Record<string, any>;
|
|
22
|
+
})[];
|
|
15
23
|
}
|
|
16
24
|
//# sourceMappingURL=entity_read.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity_read.d.ts","sourceRoot":"","sources":["../../../src/socket/events/entity_read.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,oBAAoB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"entity_read.d.ts","sourceRoot":"","sources":["../../../src/socket/events/entity_read.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,oBAAoB,EAAC,MAAM,kBAAkB,CAAC;AAOtD,wBAAsB,UAAU,CAAC,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,OAAO,eAoD5E;AASD,MAAM,WAAW,iBAAiB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,GAAG;QAAC,IAAI,EAAE,QAAQ,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAC,CAAC,EAAE,CAAA;CAC7E"}
|
|
@@ -21,6 +21,9 @@ const debug_1 = __importDefault(require("debug"));
|
|
|
21
21
|
const utils_1 = require("../../utils");
|
|
22
22
|
const jenesius_vue_form_1 = require("jenesius-vue-form");
|
|
23
23
|
const parse_order_1 = __importDefault(require("../../utils/parse-order"));
|
|
24
|
+
const custom_filters_store_1 = __importDefault(require("../../store/custom-filters-store"));
|
|
25
|
+
const use_logger_1 = require("../../logger/use-logger");
|
|
26
|
+
const get_required_attribute_values_1 = __importDefault(require("../../utils/get-required-attribute-values"));
|
|
24
27
|
const debug = (0, debug_1.default)((0, utils_1.getCoreDebugMark)("socket:entity-read"));
|
|
25
28
|
function readEntity(options, data) {
|
|
26
29
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -40,6 +43,23 @@ function readEntity(options, data) {
|
|
|
40
43
|
let filter = data.filter || "";
|
|
41
44
|
if (Server_1.default.instance.type === 'front' && data.useContextFilter !== false)
|
|
42
45
|
filter = yield (0, get_extend_customer_filters_1.joinExtendCustomerFilters)(filter, options.contextId, data.entity);
|
|
46
|
+
if (data.customFilters && Array.isArray(data.customFilters)) {
|
|
47
|
+
debug('Custom filters(%s): %o', data.entity, data.customFilters);
|
|
48
|
+
const generatedCustomFilters = yield Promise.all(data.customFilters.map((customFilterInfo) => __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
const customFilterName = typeof customFilterInfo === 'string' ? customFilterInfo : customFilterInfo.name;
|
|
50
|
+
const customerFilterAttributes = typeof customFilterInfo === 'string' ? {} : (customFilterInfo.arguments || {});
|
|
51
|
+
const filterConfig = custom_filters_store_1.default.get(customFilterName);
|
|
52
|
+
if (!filterConfig) {
|
|
53
|
+
use_logger_1.Logger.error('Filter %s not found.', customFilterName);
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
const insideValue = yield (0, get_required_attribute_values_1.default)(filterConfig, options, customerFilterAttributes);
|
|
57
|
+
debug(insideValue);
|
|
58
|
+
return filterConfig.generate(insideValue);
|
|
59
|
+
})));
|
|
60
|
+
debug('Result Custom filters: %s', generatedCustomFilters);
|
|
61
|
+
filter = (0, get_extend_customer_filters_1.joinFilters)(filter, ...generatedCustomFilters.filter(item => !!item));
|
|
62
|
+
}
|
|
43
63
|
debug(`For entity "%s" result filter %s`, data.entity, filter);
|
|
44
64
|
return dataService.getList(data.entity, Object.assign(Object.assign({}, data), { filter, order: (0, parse_order_1.default)(data.order) })).then(res => {
|
|
45
65
|
if (data.useGrand)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity_read.js","sourceRoot":"","sources":["../../../src/socket/events/entity_read.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uEAA8C;AAC9C,+EAAsD;AACtD,0DAAkC;AAClC,
|
|
1
|
+
{"version":3,"file":"entity_read.js","sourceRoot":"","sources":["../../../src/socket/events/entity_read.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-filters-store.d.ts","sourceRoot":"","sources":["../../src/store/custom-filters-store.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;;gBAMd,MAAM;iBAGL,OAAO,MAAM,EAAE,GAAG,CAAC;;AAN3C,wBAoBI"}
|
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
const Filter_1 = __importDefault(require("../model/Filter"));
|
|
7
|
+
const use_logger_1 = require("../logger/use-logger");
|
|
8
|
+
exports.default = (function CustomFiltersStore() {
|
|
9
|
+
const state = {};
|
|
10
|
+
function get(name) {
|
|
11
|
+
return state[name];
|
|
12
|
+
}
|
|
13
|
+
function init(data) {
|
|
14
|
+
Object.keys(data)
|
|
15
|
+
.forEach(name => {
|
|
16
|
+
try {
|
|
17
|
+
state[name] = new Filter_1.default(data[name]);
|
|
18
|
+
}
|
|
19
|
+
catch (e) {
|
|
20
|
+
use_logger_1.Logger.error(e);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
return {
|
|
25
|
+
get,
|
|
26
|
+
init
|
|
27
|
+
};
|
|
28
|
+
})();
|
|
29
|
+
//# sourceMappingURL=custom-filters-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-filters-store.js","sourceRoot":"","sources":["../../src/store/custom-filters-store.ts"],"names":[],"mappings":";;;;;AAAA,6DAAqC;AACrC,qDAA4C;AAE5C,kBAAe,CAAC,SAAS,kBAAkB;IACvC,MAAM,KAAK,GAA2B,EAAE,CAAA;IAExC,SAAS,GAAG,CAAC,IAAY;QACrB,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IACD,SAAS,IAAI,CAAC,IAAyB;QACnC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aAChB,OAAO,CAAC,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,gBAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACzC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,mBAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IACD,OAAO;QACH,GAAG;QACH,IAAI;KACP,CAAA;AACL,CAAC,CAAC,EAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filters-store.d.ts","sourceRoot":"","sources":["../../src/store/filters-store.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,wBAAwB,CAAC;;gBAK3B,MAAM;iBAGL,OAAO,MAAM,EAAE,GAAG,CAAC;;AAN3C,wBAoBI"}
|
|
@@ -0,0 +1,28 @@
|
|
|
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
|
+
const filter_config_1 = __importDefault(require("../model/filter-config"));
|
|
7
|
+
exports.default = (function FiltersStore() {
|
|
8
|
+
const state = {};
|
|
9
|
+
function get(name) {
|
|
10
|
+
return state[name];
|
|
11
|
+
}
|
|
12
|
+
function init(data) {
|
|
13
|
+
Object.keys(data)
|
|
14
|
+
.forEach(name => {
|
|
15
|
+
try {
|
|
16
|
+
state[name] = new filter_config_1.default(data[name]);
|
|
17
|
+
}
|
|
18
|
+
catch (e) {
|
|
19
|
+
console.log(e);
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
return {
|
|
24
|
+
get,
|
|
25
|
+
init
|
|
26
|
+
};
|
|
27
|
+
})();
|
|
28
|
+
//# sourceMappingURL=filters-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filters-store.js","sourceRoot":"","sources":["../../src/store/filters-store.ts"],"names":[],"mappings":";;;;;AAAA,2EAAkD;AAElD,kBAAe,CAAC,SAAS,YAAY;IACjC,MAAM,KAAK,GAAiC,EAAE,CAAA;IAE9C,SAAS,GAAG,CAAC,IAAY;QACrB,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IACD,SAAS,IAAI,CAAC,IAAyB;QACnC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aAChB,OAAO,CAAC,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,uBAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YAC9C,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YAClB,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IACD,OAAO;QACH,GAAG;QACH,IAAI;KACP,CAAA;AACL,CAAC,CAAC,EAAE,CAAA"}
|
package/dist/utils/Filter.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../src/utils/Filter.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,QAAQ;IACrB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,WAAW,GAAG,aAAa,GAAG,WAAW,GAAG,MAAM,CAAA;CAClF;AACD
|
|
1
|
+
{"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../src/utils/Filter.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,QAAQ;IACrB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,WAAW,GAAG,aAAa,GAAG,WAAW,GAAG,MAAM,CAAA;CAClF;AACD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,MAAM,CAAC,OAAO,EAAE,QAAQ,UAyChC;kBAzCQ,MAAM;;;;;;;;;;;;;AAsFf,eAAe,MAAM,CAAA;AAOrB,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC,MAAM,MAAM,WAAW,GAAG,CAAC,aAAa,GAAG,aAAa,CAAC,EAAE,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;CACf,CAAA"}
|
package/dist/utils/Filter.js
CHANGED
package/dist/utils/Filter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filter.js","sourceRoot":"","sources":["../../src/utils/Filter.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,SAAS,cAAc,CAAC,KAAc;IAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9E,OAAO,KAAK,CAAC;AACjB,CAAC;AAKD
|
|
1
|
+
{"version":3,"file":"Filter.js","sourceRoot":"","sources":["../../src/utils/Filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,4 +3,5 @@
|
|
|
3
3
|
* в данном методе нет проверок на то, является ли сервер front или back. Данную проверку нужно производить выше!
|
|
4
4
|
*/
|
|
5
5
|
export declare function joinExtendCustomerFilters(filters: any, contextId: any, entity: string): Promise<string>;
|
|
6
|
+
export declare function joinFilters(...filters: unknown[]): string;
|
|
6
7
|
//# sourceMappingURL=get-extend-customer-filters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-extend-customer-filters.d.ts","sourceRoot":"","sources":["../../src/utils/get-extend-customer-filters.ts"],"names":[],"mappings":"AAYA;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,mBAG3F"}
|
|
1
|
+
{"version":3,"file":"get-extend-customer-filters.d.ts","sourceRoot":"","sources":["../../src/utils/get-extend-customer-filters.ts"],"names":[],"mappings":"AAYA;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,mBAG3F;AAED,wBAAgB,WAAW,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,UAKhD"}
|
|
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.joinExtendCustomerFilters = void 0;
|
|
15
|
+
exports.joinFilters = exports.joinExtendCustomerFilters = void 0;
|
|
16
16
|
const metadata_service_1 = __importDefault(require("../services/metadata-service"));
|
|
17
17
|
const Server_1 = __importDefault(require("../Server"));
|
|
18
18
|
function getExtendCustomerFilters(contextId, entity) {
|
|
@@ -40,4 +40,5 @@ function joinFilters(...filters) {
|
|
|
40
40
|
.map(filter => `(${filter})`)
|
|
41
41
|
.join(` and `);
|
|
42
42
|
}
|
|
43
|
+
exports.joinFilters = joinFilters;
|
|
43
44
|
//# sourceMappingURL=get-extend-customer-filters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-extend-customer-filters.js","sourceRoot":"","sources":["../../src/utils/get-extend-customer-filters.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oFAA2D;AAC3D,uDAA+B;AAE/B,SAAe,wBAAwB,CAAC,SAAc,EAAE,MAAc;;QAClE,MAAM,eAAe,GAAa,gBAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,uBAAuB,IAAI,EAAE,CAAC;QAE9F,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,0BAAe,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAClG,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAErF,OAAO,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,OAAO,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChF,CAAC;CAAA;AAED;;;GAGG;AACH,SAAsB,yBAAyB,CAAC,OAAY,EAAE,SAAc,EAAE,MAAc;;QACxF,MAAM,kBAAkB,GAAG,MAAM,wBAAwB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC7E,OAAO,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IACpD,CAAC;CAAA;AAHD,8DAGC;AAED,
|
|
1
|
+
{"version":3,"file":"get-extend-customer-filters.js","sourceRoot":"","sources":["../../src/utils/get-extend-customer-filters.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oFAA2D;AAC3D,uDAA+B;AAE/B,SAAe,wBAAwB,CAAC,SAAc,EAAE,MAAc;;QAClE,MAAM,eAAe,GAAa,gBAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,uBAAuB,IAAI,EAAE,CAAC;QAE9F,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,0BAAe,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAClG,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAErF,OAAO,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,OAAO,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChF,CAAC;CAAA;AAED;;;GAGG;AACH,SAAsB,yBAAyB,CAAC,OAAY,EAAE,SAAc,EAAE,MAAc;;QACxF,MAAM,kBAAkB,GAAG,MAAM,wBAAwB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC7E,OAAO,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IACpD,CAAC;CAAA;AAHD,8DAGC;AAED,SAAgB,WAAW,CAAC,GAAG,OAAkB;IAC7C,OAAO,OAAO;SACb,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;SAC7D,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,GAAG,CAAC;SAC5B,IAAI,CAAC,OAAO,CAAC,CAAC;AACnB,CAAC;AALD,kCAKC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Filter from "../model/Filter";
|
|
2
|
+
import { ICustomerRequestInfo } from "../types/main";
|
|
3
|
+
/**
|
|
4
|
+
* @description Функция для получения необходимы значения для фильтра. В фильтре находятся поля, которые необходим
|
|
5
|
+
* высчитать. Эта функция принимает эти поля и для каждого находит необходимо значение. На данный момент они
|
|
6
|
+
* ограничены теми, что писаны в switch. После нужно расширить их.
|
|
7
|
+
*/
|
|
8
|
+
export default function getRequiredAttributeValues(filter: Filter, customerRequestInfo: ICustomerRequestInfo, preset: Record<string, any>): Promise<{
|
|
9
|
+
[k: string]: any;
|
|
10
|
+
}>;
|
|
11
|
+
//# sourceMappingURL=get-required-attribute-values.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-required-attribute-values.d.ts","sourceRoot":"","sources":["../../src/utils/get-required-attribute-values.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAC,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAGnD;;;;GAIG;AACH,wBAA8B,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;GA6B9I"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const account_service_1 = __importDefault(require("../services/account-service"));
|
|
16
|
+
/**
|
|
17
|
+
* @description Функция для получения необходимы значения для фильтра. В фильтре находятся поля, которые необходим
|
|
18
|
+
* высчитать. Эта функция принимает эти поля и для каждого находит необходимо значение. На данный момент они
|
|
19
|
+
* ограничены теми, что писаны в switch. После нужно расширить их.
|
|
20
|
+
*/
|
|
21
|
+
function getRequiredAttributeValues(filter, customerRequestInfo, preset) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const results = yield Promise.all(filter.requiredArguments.map((basename) => __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
switch (basename) {
|
|
25
|
+
case 'MyUser': return customerRequestInfo.userId;
|
|
26
|
+
case 'MyPerson': return customerRequestInfo.personId;
|
|
27
|
+
case 'Me':
|
|
28
|
+
case 'CCI': return customerRequestInfo.contextId;
|
|
29
|
+
case 'MyGroups': {
|
|
30
|
+
const accountService = new account_service_1.default(customerRequestInfo.token);
|
|
31
|
+
const organizations = yield accountService.getOrganizationListForPerson(customerRequestInfo.personId);
|
|
32
|
+
return organizations.map(org => org.id);
|
|
33
|
+
}
|
|
34
|
+
default: {
|
|
35
|
+
if (preset.hasOwnProperty(basename))
|
|
36
|
+
return preset[basename];
|
|
37
|
+
console.log('Unknown name', basename);
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
})));
|
|
42
|
+
return Object.fromEntries(filter.requiredArguments.map((key, index) => [key, results[index]]));
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
exports.default = getRequiredAttributeValues;
|
|
46
|
+
//# sourceMappingURL=get-required-attribute-values.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-required-attribute-values.js","sourceRoot":"","sources":["../../src/utils/get-required-attribute-values.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,kFAAyD;AAEzD;;;;GAIG;AACH,SAA8B,0BAA0B,CAAC,MAAc,EAAE,mBAAyC,EAAE,MAA2B;;QAC3I,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,MAAM,CAAC,iBAAiB,CAAC,GAAG,CACxB,CAAM,QAAQ,EAAC,EAAE;YACb,QAAQ,QAAQ,EAAE,CAAC;gBACf,KAAK,QAAQ,CAAC,CAAC,OAAO,mBAAmB,CAAC,MAAM,CAAC;gBACjD,KAAK,UAAU,CAAC,CAAC,OAAO,mBAAmB,CAAC,QAAQ,CAAC;gBACrD,KAAK,IAAI,CAAC;gBACV,KAAK,KAAK,CAAC,CAAC,OAAO,mBAAmB,CAAC,SAAS,CAAC;gBACjD,KAAK,UAAU,CAAC,CAAC,CAAC;oBACd,MAAM,cAAc,GAAG,IAAI,yBAAc,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;oBACrE,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBACtG,OAAO,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC5C,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACN,IAAI,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC;wBAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC7D,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;oBACtC,OAAO,IAAI,CAAC;gBAChB,CAAC;YACL,CAAC;QACL,CAAC,CAAA,CACJ,CACJ,CAAA;QAED,OAAO,MAAM,CAAC,WAAW,CACrB,MAAM,CAAC,iBAAiB,CAAC,GAAG,CACxB,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CACxC,CACJ,CAAA;IACL,CAAC;CAAA;AA7BD,6CA6BC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-config.d.ts","sourceRoot":"","sources":["../../src/utils/use-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-config.d.ts","sourceRoot":"","sources":["../../src/utils/use-config.ts"],"names":[],"mappings":"AAeA,MAAM,CAAC,OAAO,UAAU,SAAS,SA8EhC"}
|
package/dist/utils/use-config.js
CHANGED
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
13
|
};
|
|
@@ -13,6 +22,7 @@ const interface_store_1 = __importDefault(require("../store/interface-store"));
|
|
|
13
22
|
const usage_context_bind_store_1 = __importDefault(require("../store/usage-context-bind-store"));
|
|
14
23
|
const metadata_criterion_store_1 = __importDefault(require("../store/metadata-criterion-store"));
|
|
15
24
|
const intl_store_1 = __importDefault(require("../store/intl-store"));
|
|
25
|
+
const custom_filters_store_1 = __importDefault(require("../store/custom-filters-store"));
|
|
16
26
|
const CONFIG_FOLDER = 'Configs';
|
|
17
27
|
function useConfig() {
|
|
18
28
|
const projectDir = Server_1.default.instance.params.projectDir;
|
|
@@ -82,32 +92,47 @@ function useConfig() {
|
|
|
82
92
|
intl_store_1.default.save(parseName(filename).replace(/-/g, ''), source);
|
|
83
93
|
});
|
|
84
94
|
}));
|
|
95
|
+
bindFile(path_1.default.join(configPath, 'custom-filters-configuration.json'), data => {
|
|
96
|
+
custom_filters_store_1.default.init(data);
|
|
97
|
+
}, JSON.parse, JSON.stringify({}));
|
|
85
98
|
}
|
|
86
99
|
exports.default = useConfig;
|
|
87
100
|
/**
|
|
88
101
|
* @param {String} filePath Path to file
|
|
89
102
|
* @param onRead callback function witch will be launched with received data from provided file
|
|
90
103
|
* @param parser any
|
|
104
|
+
* @param defaultValue any
|
|
91
105
|
*/
|
|
92
|
-
function bindFile(filePath, onRead, parser = JSON.parse) {
|
|
93
|
-
function
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
106
|
+
function bindFile(filePath, onRead, parser = JSON.parse, defaultValue) {
|
|
107
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
108
|
+
function readData() {
|
|
109
|
+
return fs_1.default.promises.readFile(filePath, 'utf8')
|
|
110
|
+
.then(file => {
|
|
111
|
+
const data = parser(file);
|
|
112
|
+
onRead(data);
|
|
113
|
+
use_logger_1.Logger.info("File %s has been read.", filePath);
|
|
114
|
+
})
|
|
115
|
+
.catch(err => {
|
|
116
|
+
use_logger_1.Logger.error("Binding config to file. Could not process or find the file %s. %s", filePath, err);
|
|
117
|
+
});
|
|
101
118
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
119
|
+
return Promise.resolve()
|
|
120
|
+
.then(() => fs_1.default.promises.access(filePath, fs_1.default.promises.constants.R_OK))
|
|
121
|
+
.catch((err) => {
|
|
105
122
|
use_logger_1.Logger.error(err);
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
123
|
+
if (defaultValue) {
|
|
124
|
+
use_logger_1.Logger.info('File %s will be create automatically.', filePath);
|
|
125
|
+
return fs_1.default.promises.writeFile(filePath, defaultValue);
|
|
126
|
+
}
|
|
127
|
+
return Promise.reject(`Default value is not provided for ${filePath}, watching the file is disabled.`);
|
|
128
|
+
})
|
|
129
|
+
.then(() => {
|
|
130
|
+
fs_1.default.watch(filePath, readData);
|
|
131
|
+
readData();
|
|
132
|
+
})
|
|
133
|
+
.catch(err => {
|
|
134
|
+
use_logger_1.Logger.error(err);
|
|
135
|
+
});
|
|
111
136
|
});
|
|
112
137
|
}
|
|
113
138
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-config.js","sourceRoot":"","sources":["../../src/utils/use-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-config.js","sourceRoot":"","sources":["../../src/utils/use-config.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eservices-back-core",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.37",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
"jwt-decode": "^3.1.2",
|
|
41
41
|
"mustache": "^4.2.0",
|
|
42
42
|
"node-fetch": "2.6.7",
|
|
43
|
+
"openid-client": "^5.6.5",
|
|
43
44
|
"ts-node": "^10.8.1",
|
|
44
45
|
"uuid": "^8.3.2",
|
|
45
46
|
"winston": "^3.8.1",
|
|
@@ -52,7 +53,7 @@
|
|
|
52
53
|
"@types/express": "^4.17.21",
|
|
53
54
|
"@types/express-http-proxy": "^1.6.3",
|
|
54
55
|
"@types/express-session": "^1.17.3",
|
|
55
|
-
"@types/jest": "^29.5.
|
|
56
|
+
"@types/jest": "^29.5.12",
|
|
56
57
|
"@types/mustache": "^4.2.5",
|
|
57
58
|
"@types/uuid": "^8.3.4",
|
|
58
59
|
"@types/ws": "^8.5.7",
|