node-opcua-service-filter 2.183.1 → 2.184.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/check_event_clause.d.ts +1 -0
- package/dist/check_event_clause.d.ts.map +1 -0
- package/dist/check_event_clause.js +23 -19
- package/dist/check_event_clause.js.map +1 -1
- package/dist/check_where_clause.d.ts +1 -0
- package/dist/check_where_clause.d.ts.map +1 -0
- package/dist/check_where_clause.js +112 -116
- package/dist/check_where_clause.js.map +1 -1
- package/dist/extract_event_field.d.ts +2 -1
- package/dist/extract_event_field.d.ts.map +1 -0
- package/dist/extract_event_field.js +14 -42
- package/dist/extract_event_field.js.map +1 -1
- package/dist/filter_context.d.ts +1 -0
- package/dist/filter_context.d.ts.map +1 -0
- package/dist/filter_context.js +1 -2
- package/dist/imports.d.ts +1 -0
- package/dist/imports.d.ts.map +1 -0
- package/dist/imports.js +1 -15
- package/dist/imports.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -26
- package/dist/index.js.map +1 -1
- package/dist/make_content_filter.d.ts +1 -0
- package/dist/make_content_filter.d.ts.map +1 -0
- package/dist/make_content_filter.js +47 -62
- package/dist/make_content_filter.js.map +1 -1
- package/dist/on_address_space/extract_event_fields.d.ts +1 -0
- package/dist/on_address_space/extract_event_fields.d.ts.map +1 -0
- package/dist/on_address_space/extract_event_fields.js +5 -8
- package/dist/on_address_space/extract_event_fields.js.map +1 -1
- package/dist/on_address_space/filter_context_on_address_space.d.ts +1 -0
- package/dist/on_address_space/filter_context_on_address_space.d.ts.map +1 -0
- package/dist/on_address_space/filter_context_on_address_space.js +21 -25
- package/dist/on_address_space/filter_context_on_address_space.js.map +1 -1
- package/dist/on_address_space/index.d.ts +1 -0
- package/dist/on_address_space/index.d.ts.map +1 -0
- package/dist/on_address_space/index.js +2 -18
- package/dist/on_address_space/index.js.map +1 -1
- package/dist/resolve_operand.d.ts +14 -0
- package/dist/resolve_operand.d.ts.map +1 -0
- package/dist/resolve_operand.js +66 -21
- package/dist/resolve_operand.js.map +1 -1
- package/dist/tools_event_filter.d.ts +1 -0
- package/dist/tools_event_filter.d.ts.map +1 -0
- package/dist/tools_event_filter.js +17 -22
- package/dist/tools_event_filter.js.map +1 -1
- package/package.json +18 -17
- package/source/check_event_clause.ts +11 -2
- package/source/check_where_clause.ts +2 -2
- package/source/extract_event_field.ts +7 -33
- package/source/resolve_operand.ts +53 -2
|
@@ -18,3 +18,4 @@ export declare function checkSelectClause(parentNode: BaseNode, selectClause: Si
|
|
|
18
18
|
* @return an array of StatusCode
|
|
19
19
|
*/
|
|
20
20
|
export declare function checkSelectClauses(eventTypeNode: UAObjectType, selectClauses: SimpleAttributeOperand[]): StatusCode[];
|
|
21
|
+
//# sourceMappingURL=check_event_clause.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check_event_clause.d.ts","sourceRoot":"","sources":["../source/check_event_clause.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI5E,OAAO,EAAE,KAAK,UAAU,EAAe,MAAM,wBAAwB,CAAC;AACtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAK/D;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,sBAAsB,GAAG,UAAU,CAkCxG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,sBAAsB,EAAE,GAAG,UAAU,EAAE,CAErH"}
|
|
@@ -1,42 +1,46 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* @module node-opcua-address-space
|
|
4
3
|
*/
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const node_opcua_status_code_1 = require("node-opcua-status-code");
|
|
12
|
-
const debugLog = (0, node_opcua_debug_1.make_debugLog)("check_event_clause");
|
|
13
|
-
const doDebug = (0, node_opcua_debug_1.checkDebugFlag)("check_event_clause");
|
|
4
|
+
import { NodeClass } from "node-opcua-data-model";
|
|
5
|
+
import { checkDebugFlag, make_debugLog } from "node-opcua-debug";
|
|
6
|
+
import { constructBrowsePathFromQualifiedName } from "node-opcua-service-translate-browse-path";
|
|
7
|
+
import { StatusCodes } from "node-opcua-status-code";
|
|
8
|
+
const debugLog = make_debugLog("check_event_clause");
|
|
9
|
+
const doDebug = checkDebugFlag("check_event_clause");
|
|
14
10
|
/**
|
|
15
11
|
|
|
16
12
|
* @param parentNode
|
|
17
13
|
* @param selectClause
|
|
18
14
|
* @return {Array<StatusCode>}
|
|
19
15
|
*/
|
|
20
|
-
function checkSelectClause(parentNode, selectClause) {
|
|
16
|
+
export function checkSelectClause(parentNode, selectClause) {
|
|
21
17
|
//
|
|
22
18
|
const addressSpace = parentNode.addressSpace;
|
|
23
|
-
|
|
19
|
+
/* c8 ignore next */
|
|
24
20
|
if (selectClause.typeDefinitionId.isEmpty()) {
|
|
25
|
-
return
|
|
21
|
+
return StatusCodes.Good;
|
|
26
22
|
}
|
|
27
23
|
const eventTypeNode = addressSpace.findEventType(selectClause.typeDefinitionId);
|
|
28
24
|
// the typeDefinitionId must reference an existing node ...
|
|
29
25
|
if (!eventTypeNode) {
|
|
30
|
-
return
|
|
26
|
+
return StatusCodes.BadNodeIdUnknown;
|
|
31
27
|
}
|
|
32
28
|
// ... and that node must be an ObjectType (an EventType)
|
|
33
|
-
if (eventTypeNode.nodeClass !==
|
|
34
|
-
|
|
29
|
+
if (eventTypeNode.nodeClass !== NodeClass.ObjectType) {
|
|
30
|
+
/* c8 ignore next */
|
|
35
31
|
doDebug && debugLog(" checkSelectClause", eventTypeNode.toString());
|
|
36
|
-
return
|
|
32
|
+
return StatusCodes.BadTypeMismatch;
|
|
33
|
+
}
|
|
34
|
+
// OPC 10000-4 7.4.4.5: an empty browsePath does not mean "nothing to do" here - it denotes the
|
|
35
|
+
// instance of typeDefinitionId itself (e.g. the ConditionId of an Alarms and Conditions event).
|
|
36
|
+
// typeDefinitionId has already been checked above to resolve to an existing EventType, so the
|
|
37
|
+
// operand is valid and must be reported Good; it is extractEventField's job, at delivery time, to
|
|
38
|
+
// resolve it against the actual event instance.
|
|
39
|
+
if (!selectClause.browsePath || selectClause.browsePath.length === 0) {
|
|
40
|
+
return StatusCodes.Good;
|
|
37
41
|
}
|
|
38
42
|
// navigate to the innerNode specified by the browsePath [ QualifiedName]
|
|
39
|
-
const browsePath =
|
|
43
|
+
const browsePath = constructBrowsePathFromQualifiedName(eventTypeNode, selectClause.browsePath);
|
|
40
44
|
const browsePathResult = addressSpace.browsePath(browsePath);
|
|
41
45
|
return browsePathResult.statusCode;
|
|
42
46
|
}
|
|
@@ -46,7 +50,7 @@ function checkSelectClause(parentNode, selectClause) {
|
|
|
46
50
|
* @param selectClauses
|
|
47
51
|
* @return an array of StatusCode
|
|
48
52
|
*/
|
|
49
|
-
function checkSelectClauses(eventTypeNode, selectClauses) {
|
|
53
|
+
export function checkSelectClauses(eventTypeNode, selectClauses) {
|
|
50
54
|
return selectClauses.map(checkSelectClause.bind(null, eventTypeNode));
|
|
51
55
|
}
|
|
52
56
|
//# sourceMappingURL=check_event_clause.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check_event_clause.js","sourceRoot":"","sources":["../source/check_event_clause.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"check_event_clause.js","sourceRoot":"","sources":["../source/check_event_clause.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,oCAAoC,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAAmB,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGtE,MAAM,QAAQ,GAAG,aAAa,CAAC,oBAAoB,CAAC,CAAC;AACrD,MAAM,OAAO,GAAG,cAAc,CAAC,oBAAoB,CAAC,CAAC;AAErD;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAoB,EAAE,YAAoC;IACxF,EAAE;IACF,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAE7C,oBAAoB;IACpB,IAAI,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1C,OAAO,WAAW,CAAC,IAAI,CAAC;IAC5B,CAAC;IACD,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;IAEhF,2DAA2D;IAC3D,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;IACD,yDAAyD;IACzD,IAAI,aAAa,CAAC,SAAS,KAAK,SAAS,CAAC,UAAU,EAAE,CAAC;QACnD,oBAAoB;QACpB,OAAO,IAAI,QAAQ,CAAC,oBAAoB,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpE,OAAO,WAAW,CAAC,eAAe,CAAC;IACvC,CAAC;IAED,+FAA+F;IAC/F,gGAAgG;IAChG,8FAA8F;IAC9F,kGAAkG;IAClG,gDAAgD;IAChD,IAAI,CAAC,YAAY,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnE,OAAO,WAAW,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,yEAAyE;IACzE,MAAM,UAAU,GAAG,oCAAoC,CAAC,aAAa,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IAChG,MAAM,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC7D,OAAO,gBAAgB,CAAC,UAAU,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,aAA2B,EAAE,aAAuC;IACnG,OAAO,aAAa,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -19,3 +19,4 @@ import type { FilterContext } from "./filter_context.js";
|
|
|
19
19
|
*/
|
|
20
20
|
export declare function validateContentFilter(filter: ContentFilter): StatusCode;
|
|
21
21
|
export declare function checkFilter(filterContext: FilterContext, contentFilter: ContentFilter): boolean;
|
|
22
|
+
//# sourceMappingURL=check_where_clause.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check_where_clause.d.ts","sourceRoot":"","sources":["../source/check_where_clause.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAe,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAEH,KAAK,aAAa,EAOrB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAgXzD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,UAAU,CA4EvE;AAED,wBAAgB,WAAW,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,GAAG,OAAO,CAK/F"}
|
|
@@ -1,46 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const node_opcua_types_1 = require("node-opcua-types");
|
|
10
|
-
const node_opcua_variant_1 = require("node-opcua-variant");
|
|
11
|
-
const resolve_operand_js_1 = require("./resolve_operand.js");
|
|
12
|
-
const warningLog = (0, node_opcua_debug_1.make_warningLog)("Filter");
|
|
1
|
+
import { NodeClass } from "node-opcua-data-model";
|
|
2
|
+
import { make_warningLog } from "node-opcua-debug";
|
|
3
|
+
import { sameNodeId } from "node-opcua-nodeid";
|
|
4
|
+
import { StatusCodes } from "node-opcua-status-code";
|
|
5
|
+
import { AttributeOperand, ElementOperand, FilterOperator, LiteralOperand, SimpleAttributeOperand } from "node-opcua-types";
|
|
6
|
+
import { DataType, Variant } from "node-opcua-variant";
|
|
7
|
+
import { resolveOperand } from "./resolve_operand.js";
|
|
8
|
+
const warningLog = make_warningLog("Filter");
|
|
13
9
|
function _coerceToBoolean(value) {
|
|
14
|
-
if (value instanceof
|
|
10
|
+
if (value instanceof Variant) {
|
|
15
11
|
return !!value.value;
|
|
16
12
|
}
|
|
17
13
|
return !!value;
|
|
18
14
|
}
|
|
19
15
|
function _coerceToCompareable(value) {
|
|
20
|
-
if (value instanceof
|
|
16
|
+
if (value instanceof Variant) {
|
|
21
17
|
switch (value.dataType) {
|
|
22
|
-
case
|
|
18
|
+
case DataType.String:
|
|
23
19
|
return value.value;
|
|
24
|
-
case
|
|
25
|
-
case
|
|
26
|
-
case
|
|
27
|
-
case
|
|
28
|
-
case
|
|
29
|
-
case
|
|
20
|
+
case DataType.Byte:
|
|
21
|
+
case DataType.SByte:
|
|
22
|
+
case DataType.Int16:
|
|
23
|
+
case DataType.Int32:
|
|
24
|
+
case DataType.UInt16:
|
|
25
|
+
case DataType.UInt32:
|
|
30
26
|
return value.value;
|
|
31
|
-
case
|
|
27
|
+
case DataType.Double:
|
|
32
28
|
return value.value;
|
|
33
|
-
case
|
|
29
|
+
case DataType.DateTime:
|
|
34
30
|
return value.value.getTime();
|
|
35
|
-
case
|
|
31
|
+
case DataType.Guid:
|
|
36
32
|
return value.value.toLowerCase();
|
|
37
|
-
case
|
|
33
|
+
case DataType.ByteString:
|
|
38
34
|
return value.value.toString("hex");
|
|
39
|
-
case
|
|
35
|
+
case DataType.XmlElement:
|
|
40
36
|
return value.value;
|
|
41
|
-
case
|
|
37
|
+
case DataType.LocalizedText:
|
|
42
38
|
return value.value.text;
|
|
43
|
-
case
|
|
39
|
+
case DataType.QualifiedName:
|
|
44
40
|
return value.value.name; // not sure about this one
|
|
45
41
|
default:
|
|
46
42
|
return "";
|
|
@@ -58,16 +54,16 @@ function _coerceToEqualable(value) {
|
|
|
58
54
|
// inferred from whichever coerce function is actually passed, and the casts below make that
|
|
59
55
|
// call-site contract explicit instead of silently typing the whole function `any`.
|
|
60
56
|
function evaluateOperand(filterContext, filter, operand, coerce) {
|
|
61
|
-
if (operand instanceof
|
|
62
|
-
return coerce(
|
|
57
|
+
if (operand instanceof AttributeOperand) {
|
|
58
|
+
return coerce(resolveOperand(filterContext, operand));
|
|
63
59
|
}
|
|
64
|
-
else if (operand instanceof
|
|
65
|
-
return coerce(
|
|
60
|
+
else if (operand instanceof SimpleAttributeOperand) {
|
|
61
|
+
return coerce(resolveOperand(filterContext, operand));
|
|
66
62
|
}
|
|
67
|
-
else if (operand instanceof
|
|
63
|
+
else if (operand instanceof LiteralOperand) {
|
|
68
64
|
return coerce(operand.value);
|
|
69
65
|
}
|
|
70
|
-
else if (operand instanceof
|
|
66
|
+
else if (operand instanceof ElementOperand) {
|
|
71
67
|
const index = operand.index;
|
|
72
68
|
return coerce(checkFilterAtIndex(filterContext, filter, index));
|
|
73
69
|
}
|
|
@@ -75,14 +71,14 @@ function evaluateOperand(filterContext, filter, operand, coerce) {
|
|
|
75
71
|
return coerce(null);
|
|
76
72
|
}
|
|
77
73
|
function checkOfType(filterContext, ofType) {
|
|
78
|
-
|
|
79
|
-
if (!ofType || !(ofType instanceof
|
|
74
|
+
/* c8 ignore next */
|
|
75
|
+
if (!ofType || !(ofType instanceof LiteralOperand)) {
|
|
80
76
|
warningLog("checkOfType : unsupported case ! ofType is not a LiteralOperand , ofType = ", ofType?.toString());
|
|
81
77
|
return false;
|
|
82
78
|
}
|
|
83
|
-
|
|
84
|
-
if (ofType.value.dataType !==
|
|
85
|
-
warningLog(`invalid operand type (expecting NodeId); got ${
|
|
79
|
+
/* c8 ignore next */
|
|
80
|
+
if (ofType.value.dataType !== DataType.NodeId) {
|
|
81
|
+
warningLog(`invalid operand type (expecting NodeId); got ${DataType[ofType.value.dataType]}`);
|
|
86
82
|
return false;
|
|
87
83
|
}
|
|
88
84
|
const ofTypeNode = ofType.value.value;
|
|
@@ -92,10 +88,10 @@ function checkOfType(filterContext, ofType) {
|
|
|
92
88
|
}
|
|
93
89
|
const ofTypeNodeNodeClass = filterContext.getNodeClass(ofTypeNode);
|
|
94
90
|
// c8 ignore next
|
|
95
|
-
if (ofTypeNodeNodeClass !==
|
|
96
|
-
ofTypeNodeNodeClass !==
|
|
97
|
-
ofTypeNodeNodeClass !==
|
|
98
|
-
ofTypeNodeNodeClass !==
|
|
91
|
+
if (ofTypeNodeNodeClass !== NodeClass.ObjectType &&
|
|
92
|
+
ofTypeNodeNodeClass !== NodeClass.VariableType &&
|
|
93
|
+
ofTypeNodeNodeClass !== NodeClass.DataType &&
|
|
94
|
+
ofTypeNodeNodeClass !== NodeClass.ReferenceType) {
|
|
99
95
|
warningLog(`operand should be a ObjectType ${ofTypeNode.toString()}`);
|
|
100
96
|
return false;
|
|
101
97
|
}
|
|
@@ -104,7 +100,7 @@ function checkOfType(filterContext, ofType) {
|
|
|
104
100
|
}
|
|
105
101
|
let sourceTypeDefinition = filterContext.eventSource;
|
|
106
102
|
const sourceNodeClass = filterContext.getNodeClass(filterContext.eventSource);
|
|
107
|
-
if (sourceNodeClass ===
|
|
103
|
+
if (sourceNodeClass === NodeClass.Object || sourceNodeClass === NodeClass.Variable) {
|
|
108
104
|
const typeDefinition = filterContext.getTypeDefinition(filterContext.eventSource);
|
|
109
105
|
if (!typeDefinition) {
|
|
110
106
|
return false;
|
|
@@ -158,39 +154,39 @@ function checkGreaterThanOrEqual(filterContext, filter, filteredOperands) {
|
|
|
158
154
|
}
|
|
159
155
|
const isVariantEqual = (a, b) => {
|
|
160
156
|
switch (a.dataType) {
|
|
161
|
-
case
|
|
162
|
-
return b.dataType ===
|
|
163
|
-
case
|
|
157
|
+
case DataType.Null:
|
|
158
|
+
return b.dataType === DataType.Null;
|
|
159
|
+
case DataType.Boolean:
|
|
164
160
|
return a.value === b.value;
|
|
165
|
-
case
|
|
166
|
-
case
|
|
167
|
-
case
|
|
168
|
-
case
|
|
169
|
-
case
|
|
170
|
-
case
|
|
161
|
+
case DataType.Byte:
|
|
162
|
+
case DataType.SByte:
|
|
163
|
+
case DataType.Int16:
|
|
164
|
+
case DataType.Int32:
|
|
165
|
+
case DataType.UInt16:
|
|
166
|
+
case DataType.UInt32:
|
|
171
167
|
return a.value === b.value;
|
|
172
|
-
case
|
|
168
|
+
case DataType.Double:
|
|
173
169
|
return a.value === b.value;
|
|
174
|
-
case
|
|
170
|
+
case DataType.String:
|
|
175
171
|
return a.value === b.value;
|
|
176
|
-
case
|
|
177
|
-
return
|
|
178
|
-
case
|
|
172
|
+
case DataType.NodeId:
|
|
173
|
+
return sameNodeId(a.value, b.value);
|
|
174
|
+
case DataType.DateTime:
|
|
179
175
|
return a.value?.getTime() === b.value.getTime();
|
|
180
|
-
case
|
|
176
|
+
case DataType.Guid:
|
|
181
177
|
return a.value.toLowerCase() === `${b.value || ""}`.toLowerCase();
|
|
182
|
-
case
|
|
183
|
-
if (b.dataType !==
|
|
178
|
+
case DataType.ByteString:
|
|
179
|
+
if (b.dataType !== DataType.ByteString) {
|
|
184
180
|
return false;
|
|
185
181
|
}
|
|
186
182
|
return a.value.toString("hex") === b.value.toString("hex");
|
|
187
|
-
case
|
|
183
|
+
case DataType.XmlElement:
|
|
188
184
|
return a.value === b.value;
|
|
189
|
-
case
|
|
185
|
+
case DataType.LocalizedText:
|
|
190
186
|
return a.value?.text === b.value?.text;
|
|
191
|
-
case
|
|
187
|
+
case DataType.QualifiedName:
|
|
192
188
|
return a.value?.namespaceIndex === b.value?.namespaceIndex && a.value?.name === b.value?.name;
|
|
193
|
-
case
|
|
189
|
+
case DataType.ExtensionObject:
|
|
194
190
|
console.log("isVariantEqual: Not implemented for DataType.ExtensionObject");
|
|
195
191
|
return false;
|
|
196
192
|
default:
|
|
@@ -237,14 +233,14 @@ function checkInList(context, filterOperands) {
|
|
|
237
233
|
}
|
|
238
234
|
const operand0 = filterOperands[0];
|
|
239
235
|
// c8 ignore next
|
|
240
|
-
if (!(operand0 instanceof
|
|
236
|
+
if (!(operand0 instanceof SimpleAttributeOperand)) {
|
|
241
237
|
// unsupported case
|
|
242
238
|
warningLog(`FilterOperator.InList operand0 is not a SimpleAttributeOperand ${operand0.constructor.name}`);
|
|
243
239
|
return false;
|
|
244
240
|
}
|
|
245
|
-
const value =
|
|
241
|
+
const value = resolveOperand(context, operand0);
|
|
246
242
|
// c8 ignore next
|
|
247
|
-
if (value.dataType !==
|
|
243
|
+
if (value.dataType !== DataType.NodeId) {
|
|
248
244
|
return false;
|
|
249
245
|
}
|
|
250
246
|
const nodeId = value.value;
|
|
@@ -253,19 +249,19 @@ function checkInList(context, filterOperands) {
|
|
|
253
249
|
return false;
|
|
254
250
|
}
|
|
255
251
|
function _is(nodeId1, operandX) {
|
|
256
|
-
if (operandX.value.dataType !==
|
|
252
|
+
if (operandX.value.dataType !== DataType.NodeId) {
|
|
257
253
|
return false;
|
|
258
254
|
}
|
|
259
255
|
const nodeId2 = operandX.value.value;
|
|
260
256
|
const nodeClass = context.getNodeClass(nodeId2);
|
|
261
|
-
if (nodeClass ===
|
|
257
|
+
if (nodeClass === NodeClass.Unspecified) {
|
|
262
258
|
return false;
|
|
263
259
|
}
|
|
264
|
-
return
|
|
260
|
+
return sameNodeId(nodeId1, nodeId2);
|
|
265
261
|
}
|
|
266
262
|
for (let i = 1; i < filterOperands.length; i++) {
|
|
267
263
|
const filterOperand = filterOperands[i];
|
|
268
|
-
if (filterOperand instanceof
|
|
264
|
+
if (filterOperand instanceof LiteralOperand && _is(nodeId, filterOperand)) {
|
|
269
265
|
return true;
|
|
270
266
|
}
|
|
271
267
|
}
|
|
@@ -282,33 +278,33 @@ function checkFilterAtIndex(filterContext, filter, index) {
|
|
|
282
278
|
}
|
|
283
279
|
const filterOperands = element.filterOperands || [];
|
|
284
280
|
switch (element.filterOperator) {
|
|
285
|
-
case
|
|
281
|
+
case FilterOperator.Equals:
|
|
286
282
|
return checkEquals(filterContext, filter, filterOperands);
|
|
287
|
-
case
|
|
283
|
+
case FilterOperator.LessThan:
|
|
288
284
|
return checkLessThan(filterContext, filter, filterOperands);
|
|
289
|
-
case
|
|
285
|
+
case FilterOperator.LessThanOrEqual:
|
|
290
286
|
return checkLessThanOrEqual(filterContext, filter, filterOperands);
|
|
291
|
-
case
|
|
287
|
+
case FilterOperator.GreaterThan:
|
|
292
288
|
return checkGreaterThan(filterContext, filter, filterOperands);
|
|
293
|
-
case
|
|
289
|
+
case FilterOperator.GreaterThanOrEqual:
|
|
294
290
|
return checkGreaterThanOrEqual(filterContext, filter, filterOperands);
|
|
295
|
-
case
|
|
291
|
+
case FilterOperator.Between:
|
|
296
292
|
return checkBetween(filterContext, filter, filterOperands);
|
|
297
|
-
case
|
|
293
|
+
case FilterOperator.And:
|
|
298
294
|
return checkAnd(filterContext, filter, filterOperands);
|
|
299
|
-
case
|
|
295
|
+
case FilterOperator.Or:
|
|
300
296
|
return checkOr(filterContext, filter, filterOperands);
|
|
301
|
-
case
|
|
297
|
+
case FilterOperator.Not:
|
|
302
298
|
return checkNot(filterContext, filter, filterOperands);
|
|
303
|
-
case
|
|
299
|
+
case FilterOperator.OfType:
|
|
304
300
|
return checkOfType(filterContext, element.filterOperands?.[0] ?? null);
|
|
305
|
-
case
|
|
301
|
+
case FilterOperator.InList:
|
|
306
302
|
return checkInList(filterContext, filterOperands);
|
|
307
303
|
default:
|
|
308
304
|
// from Spec OPC Unified Architecture, Part 4 133 Release 1.04
|
|
309
305
|
// Any basic FilterOperator in Table 119 may be used in the whereClause, however, only the
|
|
310
306
|
// OfType_14 FilterOperator from Table 120 is permitted.
|
|
311
|
-
warningLog(`checkFilter: operator ${
|
|
307
|
+
warningLog(`checkFilter: operator ${FilterOperator[element.filterOperator]} is currently not supported in filter`);
|
|
312
308
|
return false;
|
|
313
309
|
}
|
|
314
310
|
}
|
|
@@ -323,24 +319,24 @@ function checkFilterAtIndex(filterContext, filter, index) {
|
|
|
323
319
|
// the element with BadFilterOperandCountMismatch failed every Alarms and Conditions unit at
|
|
324
320
|
// its initialize step. An InList with no operand at all is still malformed.
|
|
325
321
|
const operandCountByOperator = {
|
|
326
|
-
[
|
|
327
|
-
[
|
|
328
|
-
[
|
|
329
|
-
[
|
|
330
|
-
[
|
|
331
|
-
[
|
|
332
|
-
[
|
|
333
|
-
[
|
|
334
|
-
[
|
|
335
|
-
[
|
|
336
|
-
[
|
|
337
|
-
[
|
|
338
|
-
[
|
|
339
|
-
[
|
|
340
|
-
[
|
|
341
|
-
[
|
|
342
|
-
[
|
|
343
|
-
[
|
|
322
|
+
[FilterOperator.Equals]: { min: 2, max: 2 },
|
|
323
|
+
[FilterOperator.IsNull]: { min: 1, max: 1 },
|
|
324
|
+
[FilterOperator.GreaterThan]: { min: 2, max: 2 },
|
|
325
|
+
[FilterOperator.LessThan]: { min: 2, max: 2 },
|
|
326
|
+
[FilterOperator.GreaterThanOrEqual]: { min: 2, max: 2 },
|
|
327
|
+
[FilterOperator.LessThanOrEqual]: { min: 2, max: 2 },
|
|
328
|
+
[FilterOperator.Like]: { min: 2, max: 2 },
|
|
329
|
+
[FilterOperator.Not]: { min: 1, max: 1 },
|
|
330
|
+
[FilterOperator.Between]: { min: 3, max: 3 },
|
|
331
|
+
[FilterOperator.InList]: { min: 1, max: Number.POSITIVE_INFINITY },
|
|
332
|
+
[FilterOperator.And]: { min: 2, max: 2 },
|
|
333
|
+
[FilterOperator.Or]: { min: 2, max: 2 },
|
|
334
|
+
[FilterOperator.Cast]: { min: 2, max: 2 },
|
|
335
|
+
[FilterOperator.BitwiseAnd]: { min: 2, max: 2 },
|
|
336
|
+
[FilterOperator.BitwiseOr]: { min: 2, max: 2 },
|
|
337
|
+
[FilterOperator.InView]: { min: 1, max: 1 },
|
|
338
|
+
[FilterOperator.OfType]: { min: 1, max: 1 },
|
|
339
|
+
[FilterOperator.RelatedTo]: { min: 6, max: 6 }
|
|
344
340
|
};
|
|
345
341
|
/**
|
|
346
342
|
* Validate the structure of a ContentFilter, returning a precise StatusCode (Good when valid).
|
|
@@ -358,11 +354,11 @@ const operandCountByOperator = {
|
|
|
358
354
|
* The traversal is iterative so that validating a deeply-nested filter cannot itself exhaust the
|
|
359
355
|
* stack.
|
|
360
356
|
*/
|
|
361
|
-
function validateContentFilter(filter) {
|
|
357
|
+
export function validateContentFilter(filter) {
|
|
362
358
|
const elements = filter.elements || [];
|
|
363
359
|
const n = elements.length;
|
|
364
360
|
if (n === 0) {
|
|
365
|
-
return
|
|
361
|
+
return StatusCodes.Good;
|
|
366
362
|
}
|
|
367
363
|
// inspect a single element: validate its operand count and collect the in-bounds indices it
|
|
368
364
|
// references through ElementOperands. `status` is non-Good when the element is malformed.
|
|
@@ -370,33 +366,33 @@ function validateContentFilter(filter) {
|
|
|
370
366
|
const element = elements[elementIndex];
|
|
371
367
|
// an element of the array may be null/undefined (e.g. a null ExtensionObject); see checkFilterAtIndex
|
|
372
368
|
if (!element) {
|
|
373
|
-
return { targets: [], status:
|
|
369
|
+
return { targets: [], status: StatusCodes.Good };
|
|
374
370
|
}
|
|
375
371
|
const operands = element.filterOperands || [];
|
|
376
372
|
const expected = operandCountByOperator[element.filterOperator];
|
|
377
373
|
if (expected && (operands.length < expected.min || operands.length > expected.max)) {
|
|
378
|
-
warningLog(`checkFilter: operator ${
|
|
374
|
+
warningLog(`checkFilter: operator ${FilterOperator[element.filterOperator]} of element #${elementIndex} ` +
|
|
379
375
|
`has ${operands.length} operand(s), expected ${expected.min}${expected.max === expected.min ? "" : `..${expected.max === Number.POSITIVE_INFINITY ? "n" : expected.max}`}`);
|
|
380
|
-
return { targets: [], status:
|
|
376
|
+
return { targets: [], status: StatusCodes.BadFilterOperandCountMismatch };
|
|
381
377
|
}
|
|
382
378
|
const targets = [];
|
|
383
379
|
for (const operand of operands) {
|
|
384
|
-
if (operand instanceof
|
|
380
|
+
if (operand instanceof ElementOperand) {
|
|
385
381
|
const index = operand.index;
|
|
386
382
|
if (index < 0 || index >= n) {
|
|
387
383
|
warningLog(`checkFilter: ElementOperand of element #${elementIndex} references out-of-bounds element #${index} ` +
|
|
388
384
|
`(elements.length = ${n})`);
|
|
389
|
-
return { targets: [], status:
|
|
385
|
+
return { targets: [], status: StatusCodes.BadFilterElementInvalid };
|
|
390
386
|
}
|
|
391
387
|
targets.push(index);
|
|
392
388
|
}
|
|
393
389
|
}
|
|
394
|
-
return { targets, status:
|
|
390
|
+
return { targets, status: StatusCodes.Good };
|
|
395
391
|
};
|
|
396
392
|
// 0 = unvisited, 1 = on the current DFS path, 2 = fully explored
|
|
397
393
|
const color = new Array(n).fill(0);
|
|
398
394
|
const root = inspect(0);
|
|
399
|
-
if (root.status.isNot(
|
|
395
|
+
if (root.status.isNot(StatusCodes.Good)) {
|
|
400
396
|
return root.status;
|
|
401
397
|
}
|
|
402
398
|
color[0] = 1;
|
|
@@ -412,21 +408,21 @@ function validateContentFilter(filter) {
|
|
|
412
408
|
if (color[next] === 1) {
|
|
413
409
|
// a back edge to an element still on the current path -> cycle
|
|
414
410
|
warningLog(`checkFilter: cyclic ElementOperand reference detected involving element #${next}`);
|
|
415
|
-
return
|
|
411
|
+
return StatusCodes.BadFilterElementInvalid;
|
|
416
412
|
}
|
|
417
413
|
if (color[next] === 0) {
|
|
418
414
|
const r = inspect(next);
|
|
419
|
-
if (r.status.isNot(
|
|
415
|
+
if (r.status.isNot(StatusCodes.Good)) {
|
|
420
416
|
return r.status;
|
|
421
417
|
}
|
|
422
418
|
color[next] = 1;
|
|
423
419
|
stack.push({ node: next, targets: r.targets, pos: 0 });
|
|
424
420
|
}
|
|
425
421
|
}
|
|
426
|
-
return
|
|
422
|
+
return StatusCodes.Good;
|
|
427
423
|
}
|
|
428
|
-
function checkFilter(filterContext, contentFilter) {
|
|
429
|
-
if (validateContentFilter(contentFilter).isNot(
|
|
424
|
+
export function checkFilter(filterContext, contentFilter) {
|
|
425
|
+
if (validateContentFilter(contentFilter).isNot(StatusCodes.Good)) {
|
|
430
426
|
return false;
|
|
431
427
|
}
|
|
432
428
|
return checkFilterAtIndex(filterContext, contentFilter, 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check_where_clause.js","sourceRoot":"","sources":["../source/check_where_clause.ts"],"names":[],"mappings":";;AAiZA,sDA4EC;AAED,kCAKC;AApeD,iEAAkD;AAClD,uDAAmD;AAEnD,yDAA4D;AAC5D,mEAAsE;AACtE,uDAS0B;AAC1B,2DAAuD;AAGvD,6DAAsD;AAEtD,MAAM,UAAU,GAAG,IAAA,kCAAe,EAAC,QAAQ,CAAC,CAAC;AAE7C,SAAS,gBAAgB,CAAC,KAAuC;IAC7D,IAAI,KAAK,YAAY,4BAAO,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,CAAC,KAAK,CAAC;AACnB,CAAC;AACD,SAAS,oBAAoB,CAAC,KAAc;IACxC,IAAI,KAAK,YAAY,4BAAO,EAAE,CAAC;QAC3B,QAAQ,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrB,KAAK,6BAAQ,CAAC,MAAM;gBAChB,OAAO,KAAK,CAAC,KAAK,CAAC;YACvB,KAAK,6BAAQ,CAAC,IAAI,CAAC;YACnB,KAAK,6BAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,6BAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,6BAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,6BAAQ,CAAC,MAAM,CAAC;YACrB,KAAK,6BAAQ,CAAC,MAAM;gBAChB,OAAO,KAAK,CAAC,KAAK,CAAC;YACvB,KAAK,6BAAQ,CAAC,MAAM;gBAChB,OAAO,KAAK,CAAC,KAAK,CAAC;YACvB,KAAK,6BAAQ,CAAC,QAAQ;gBAClB,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACjC,KAAK,6BAAQ,CAAC,IAAI;gBACd,OAAO,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACrC,KAAK,6BAAQ,CAAC,UAAU;gBACpB,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACvC,KAAK,6BAAQ,CAAC,UAAU;gBACpB,OAAO,KAAK,CAAC,KAAK,CAAC;YACvB,KAAK,6BAAQ,CAAC,aAAa;gBACvB,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5B,KAAK,6BAAQ,CAAC,aAAa;gBACvB,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,0BAA0B;YACvD;gBACI,OAAO,EAAE,CAAC;QAClB,CAAC;IACL,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACtC,OAAO,KAAK,CAAC;AACjB,CAAC;AACD,kFAAkF;AAClF,0FAA0F;AAC1F,4FAA4F;AAC5F,sFAAsF;AACtF,4FAA4F;AAC5F,mFAAmF;AACnF,SAAS,eAAe,CACpB,aAA4B,EAC5B,MAAqB,EACrB,OAAsB,EACtB,MAAyB;IAEzB,IAAI,OAAO,YAAY,mCAAgB,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,IAAA,mCAAc,EAAC,aAAa,EAAE,OAAO,CAAQ,CAAC,CAAC;IACjE,CAAC;SAAM,IAAI,OAAO,YAAY,yCAAsB,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC,IAAA,mCAAc,EAAC,aAAa,EAAE,OAAO,CAAQ,CAAC,CAAC;IACjE,CAAC;SAAM,IAAI,OAAO,YAAY,iCAAc,EAAE,CAAC;QAC3C,OAAO,MAAM,CAAC,OAAO,CAAC,KAAY,CAAC,CAAC;IACxC,CAAC;SAAM,IAAI,OAAO,YAAY,iCAAc,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,OAAO,MAAM,CAAC,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAQ,CAAC,CAAC;IAC3E,CAAC;IACD,kBAAkB;IAClB,OAAO,MAAM,CAAC,IAAW,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,aAA4B,EAAE,MAA8B;IAC7E,iBAAiB;IACjB,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,YAAY,iCAAc,CAAC,EAAE,CAAC;QACjD,UAAU,CAAC,6EAA6E,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9G,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,iBAAiB;IACjB,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,6BAAQ,CAAC,MAAM,EAAE,CAAC;QAC5C,UAAU,CAAC,gDAAgD,6BAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC9F,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,UAAU,GAAW,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;IAC9C,iBAAiB;IACjB,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,KAAK,CAAC,CAAC,yDAAyD;IAC3E,CAAC;IACD,MAAM,mBAAmB,GAAG,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAEnE,iBAAiB;IACjB,IACI,mBAAmB,KAAK,iCAAS,CAAC,UAAU;QAC5C,mBAAmB,KAAK,iCAAS,CAAC,YAAY;QAC9C,mBAAmB,KAAK,iCAAS,CAAC,QAAQ;QAC1C,mBAAmB,KAAK,iCAAS,CAAC,aAAa,EACjD,CAAC;QACC,UAAU,CAAC,kCAAkC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;QACpE,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,oBAAoB,GAAG,aAAa,CAAC,WAAW,CAAC;IACrD,MAAM,eAAe,GAAG,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAC9E,IAAI,eAAe,KAAK,iCAAS,CAAC,MAAM,IAAI,eAAe,KAAK,iCAAS,CAAC,QAAQ,EAAE,CAAC;QACjF,MAAM,cAAc,GAAG,aAAa,CAAC,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAClF,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,oBAAoB,GAAG,cAAc,CAAC;IAC1C,CAAC;IACD,OAAO,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,QAAQ,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACpG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,OAAO,CAAC,QAAQ,CAAC;AACrB,CAAC;AAED,SAAS,OAAO,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC;AACD;;;;;;;;GAQG;AACH,SAAS,QAAQ,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACpG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC;AACD,SAAS,aAAa,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACzG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,OAAO,QAAQ,GAAG,QAAQ,CAAC;AAC/B,CAAC;AAED,SAAS,oBAAoB,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IAChH,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC;AAED,SAAS,gBAAgB,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IAC5G,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,OAAO,QAAQ,GAAG,QAAQ,CAAC;AAC/B,CAAC;AAED,SAAS,uBAAuB,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACnH,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC;AAED,MAAM,cAAc,GAAG,CAAC,CAAU,EAAE,CAAU,EAAW,EAAE;IACvD,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;QACjB,KAAK,6BAAQ,CAAC,IAAI;YACd,OAAO,CAAC,CAAC,QAAQ,KAAK,6BAAQ,CAAC,IAAI,CAAC;QACxC,KAAK,6BAAQ,CAAC,OAAO;YACjB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,6BAAQ,CAAC,IAAI,CAAC;QACnB,KAAK,6BAAQ,CAAC,KAAK,CAAC;QACpB,KAAK,6BAAQ,CAAC,KAAK,CAAC;QACpB,KAAK,6BAAQ,CAAC,KAAK,CAAC;QACpB,KAAK,6BAAQ,CAAC,MAAM,CAAC;QACrB,KAAK,6BAAQ,CAAC,MAAM;YAChB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,6BAAQ,CAAC,MAAM;YAChB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,6BAAQ,CAAC,MAAM;YAChB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,6BAAQ,CAAC,MAAM;YAChB,OAAO,IAAA,8BAAU,EAAC,CAAC,CAAC,KAAe,EAAE,CAAC,CAAC,KAAe,CAAC,CAAC;QAC5D,KAAK,6BAAQ,CAAC,QAAQ;YAClB,OAAQ,CAAC,CAAC,KAAc,EAAE,OAAO,EAAE,KAAM,CAAC,CAAC,KAAc,CAAC,OAAO,EAAE,CAAC;QACxE,KAAK,6BAAQ,CAAC,IAAI;YACd,OAAO,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;QACtE,KAAK,6BAAQ,CAAC,UAAU;YACpB,IAAI,CAAC,CAAC,QAAQ,KAAK,6BAAQ,CAAC,UAAU,EAAE,CAAC;gBACrC,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,OAAO,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/D,KAAK,6BAAQ,CAAC,UAAU;YACpB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,6BAAQ,CAAC,aAAa;YACvB,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC;QAC3C,KAAK,6BAAQ,CAAC,aAAa;YACvB,OAAO,CAAC,CAAC,KAAK,EAAE,cAAc,KAAK,CAAC,CAAC,KAAK,EAAE,cAAc,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC;QAClG,KAAK,6BAAQ,CAAC,eAAe;YACzB,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;YAC5E,OAAO,KAAK,CAAC;QACjB;YACI,OAAO,KAAK,CAAC,CAAC,qBAAqB;IAC3C,CAAC;AACL,CAAC,CAAC;AAEF,SAAS,WAAW,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACvG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACjG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACjG,OAAO,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC9C,CAAC;AACD;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACxG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,UAAU,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACrG,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACtG,OAAO,QAAQ,IAAI,UAAU,IAAI,QAAQ,IAAI,WAAW,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,WAAW,CAAC,OAAsB,EAAE,cAA+B;IACxE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAEnC,iBAAiB;IACjB,IAAI,CAAC,CAAC,QAAQ,YAAY,yCAAsB,CAAC,EAAE,CAAC;QAChD,mBAAmB;QACnB,UAAU,CAAC,kEAAkE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1G,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAG,IAAA,mCAAc,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAEhD,iBAAiB;IACjB,IAAI,KAAK,CAAC,QAAQ,KAAK,6BAAQ,CAAC,MAAM,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAkB,KAAK,CAAC,KAAe,CAAC;IAEpD,iBAAiB;IACjB,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,SAAS,GAAG,CAAC,OAAe,EAAE,QAAwB;QAClD,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,KAAK,6BAAQ,CAAC,MAAM,EAAE,CAAC;YAC9C,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAe,CAAC;QAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,SAAS,KAAK,iCAAS,CAAC,WAAW,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,IAAA,8BAAU,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,aAAa,YAAY,iCAAc,IAAI,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC;YACxE,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,aAA4B,EAAE,MAAqB,EAAE,KAAa;IAC1F,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEvC,iBAAiB;IACjB,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,cAAc,GAAI,OAAO,CAAC,cAAyC,IAAI,EAAE,CAAC;IAEhF,QAAQ,OAAO,CAAC,cAAc,EAAE,CAAC;QAC7B,KAAK,iCAAc,CAAC,MAAM;YACtB,OAAO,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC9D,KAAK,iCAAc,CAAC,QAAQ;YACxB,OAAO,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAChE,KAAK,iCAAc,CAAC,eAAe;YAC/B,OAAO,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QACvE,KAAK,iCAAc,CAAC,WAAW;YAC3B,OAAO,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QACnE,KAAK,iCAAc,CAAC,kBAAkB;YAClC,OAAO,uBAAuB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC1E,KAAK,iCAAc,CAAC,OAAO;YACvB,OAAO,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAE/D,KAAK,iCAAc,CAAC,GAAG;YACnB,OAAO,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC3D,KAAK,iCAAc,CAAC,EAAE;YAClB,OAAO,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC1D,KAAK,iCAAc,CAAC,GAAG;YACnB,OAAO,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAE3D,KAAK,iCAAc,CAAC,MAAM;YACtB,OAAO,WAAW,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAC3E,KAAK,iCAAc,CAAC,MAAM;YACtB,OAAO,WAAW,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QACtD;YACI,+DAA+D;YAC/D,2FAA2F;YAC3F,yDAAyD;YACzD,UAAU,CAAC,yBAAyB,iCAAc,CAAC,OAAO,CAAC,cAAc,CAAC,uCAAuC,CAAC,CAAC;YACnH,OAAO,KAAK,CAAC;IACrB,CAAC;AACL,CAAC;AAED,gGAAgG;AAChG,2FAA2F;AAC3F,yCAAyC;AACzC,EAAE;AACF,8FAA8F;AAC9F,8FAA8F;AAC9F,yFAAyF;AACzF,6FAA6F;AAC7F,4FAA4F;AAC5F,4EAA4E;AAC5E,MAAM,sBAAsB,GAAyD;IACjF,CAAC,iCAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC3C,CAAC,iCAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC3C,CAAC,iCAAc,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAChD,CAAC,iCAAc,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC7C,CAAC,iCAAc,CAAC,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACvD,CAAC,iCAAc,CAAC,eAAe,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACpD,CAAC,iCAAc,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACzC,CAAC,iCAAc,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACxC,CAAC,iCAAc,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC5C,CAAC,iCAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,iBAAiB,EAAE;IAClE,CAAC,iCAAc,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACxC,CAAC,iCAAc,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACvC,CAAC,iCAAc,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACzC,CAAC,iCAAc,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC/C,CAAC,iCAAc,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC9C,CAAC,iCAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC3C,CAAC,iCAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC3C,CAAC,iCAAc,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;CACjD,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,qBAAqB,CAAC,MAAqB;IACvD,MAAM,QAAQ,GAAI,MAAM,CAAC,QAA0C,IAAI,EAAE,CAAC;IAC1E,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC1B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACV,OAAO,oCAAW,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,4FAA4F;IAC5F,0FAA0F;IAC1F,MAAM,OAAO,GAAG,CAAC,YAAoB,EAA6C,EAAE;QAChF,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvC,sGAAsG;QACtG,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,oCAAW,CAAC,IAAI,EAAE,CAAC;QACrD,CAAC;QACD,MAAM,QAAQ,GAAI,OAAO,CAAC,cAAyC,IAAI,EAAE,CAAC;QAC1E,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACjF,UAAU,CACN,yBAAyB,iCAAc,CAAC,OAAO,CAAC,cAAc,CAAC,gBAAgB,YAAY,GAAG;gBAC1F,OAAO,QAAQ,CAAC,MAAM,yBAAyB,QAAQ,CAAC,GAAG,GACvD,QAAQ,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,GAAG,KAAK,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAC5G,EAAE,CACT,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,oCAAW,CAAC,6BAA6B,EAAE,CAAC;QAC9E,CAAC;QACD,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,OAAO,YAAY,iCAAc,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;gBAC5B,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBAC1B,UAAU,CACN,2CAA2C,YAAY,sCAAsC,KAAK,GAAG;wBACjG,sBAAsB,CAAC,GAAG,CACjC,CAAC;oBACF,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,oCAAW,CAAC,uBAAuB,EAAE,CAAC;gBACxE,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,oCAAW,CAAC,IAAI,EAAE,CAAC;IACjD,CAAC,CAAC;IAEF,iEAAiE;IACjE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE3C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IACD,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACb,MAAM,KAAK,GAA4D,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAEpH,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,KAAK,CAAC,GAAG,EAAE,CAAC;YACZ,SAAS;QACb,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QACxC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,+DAA+D;YAC/D,UAAU,CAAC,4EAA4E,IAAI,EAAE,CAAC,CAAC;YAC/F,OAAO,oCAAW,CAAC,uBAAuB,CAAC;QAC/C,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,CAAC,MAAM,CAAC;YACpB,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;IACD,OAAO,oCAAW,CAAC,IAAI,CAAC;AAC5B,CAAC;AAED,SAAgB,WAAW,CAAC,aAA4B,EAAE,aAA4B;IAClF,IAAI,qBAAqB,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,oCAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/D,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,kBAAkB,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;AAC/D,CAAC"}
|
|
1
|
+
{"version":3,"file":"check_where_clause.js","sourceRoot":"","sources":["../source/check_where_clause.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAmB,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EACH,gBAAgB,EAGhB,cAAc,EAEd,cAAc,EACd,cAAc,EACd,sBAAsB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,UAAU,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;AAE7C,SAAS,gBAAgB,CAAC,KAAuC;IAC7D,IAAI,KAAK,YAAY,OAAO,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,CAAC,KAAK,CAAC;AACnB,CAAC;AACD,SAAS,oBAAoB,CAAC,KAAc;IACxC,IAAI,KAAK,YAAY,OAAO,EAAE,CAAC;QAC3B,QAAQ,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrB,KAAK,QAAQ,CAAC,MAAM;gBAChB,OAAO,KAAK,CAAC,KAAK,CAAC;YACvB,KAAK,QAAQ,CAAC,IAAI,CAAC;YACnB,KAAK,QAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,QAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,QAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,QAAQ,CAAC,MAAM,CAAC;YACrB,KAAK,QAAQ,CAAC,MAAM;gBAChB,OAAO,KAAK,CAAC,KAAK,CAAC;YACvB,KAAK,QAAQ,CAAC,MAAM;gBAChB,OAAO,KAAK,CAAC,KAAK,CAAC;YACvB,KAAK,QAAQ,CAAC,QAAQ;gBAClB,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACjC,KAAK,QAAQ,CAAC,IAAI;gBACd,OAAO,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACrC,KAAK,QAAQ,CAAC,UAAU;gBACpB,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACvC,KAAK,QAAQ,CAAC,UAAU;gBACpB,OAAO,KAAK,CAAC,KAAK,CAAC;YACvB,KAAK,QAAQ,CAAC,aAAa;gBACvB,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5B,KAAK,QAAQ,CAAC,aAAa;gBACvB,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,0BAA0B;YACvD;gBACI,OAAO,EAAE,CAAC;QAClB,CAAC;IACL,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACtC,OAAO,KAAK,CAAC;AACjB,CAAC;AACD,kFAAkF;AAClF,0FAA0F;AAC1F,4FAA4F;AAC5F,sFAAsF;AACtF,4FAA4F;AAC5F,mFAAmF;AACnF,SAAS,eAAe,CACpB,aAA4B,EAC5B,MAAqB,EACrB,OAAsB,EACtB,MAAyB;IAEzB,IAAI,OAAO,YAAY,gBAAgB,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,CAAQ,CAAC,CAAC;IACjE,CAAC;SAAM,IAAI,OAAO,YAAY,sBAAsB,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,CAAQ,CAAC,CAAC;IACjE,CAAC;SAAM,IAAI,OAAO,YAAY,cAAc,EAAE,CAAC;QAC3C,OAAO,MAAM,CAAC,OAAO,CAAC,KAAY,CAAC,CAAC;IACxC,CAAC;SAAM,IAAI,OAAO,YAAY,cAAc,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,OAAO,MAAM,CAAC,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAQ,CAAC,CAAC;IAC3E,CAAC;IACD,kBAAkB;IAClB,OAAO,MAAM,CAAC,IAAW,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,aAA4B,EAAE,MAA8B;IAC7E,oBAAoB;IACpB,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,YAAY,cAAc,CAAC,EAAE,CAAC;QACjD,UAAU,CAAC,6EAA6E,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9G,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,oBAAoB;IACpB,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC5C,UAAU,CAAC,gDAAgD,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC9F,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,UAAU,GAAW,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;IAC9C,iBAAiB;IACjB,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,KAAK,CAAC,CAAC,yDAAyD;IAC3E,CAAC;IACD,MAAM,mBAAmB,GAAG,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAEnE,iBAAiB;IACjB,IACI,mBAAmB,KAAK,SAAS,CAAC,UAAU;QAC5C,mBAAmB,KAAK,SAAS,CAAC,YAAY;QAC9C,mBAAmB,KAAK,SAAS,CAAC,QAAQ;QAC1C,mBAAmB,KAAK,SAAS,CAAC,aAAa,EACjD,CAAC;QACC,UAAU,CAAC,kCAAkC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;QACpE,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,oBAAoB,GAAG,aAAa,CAAC,WAAW,CAAC;IACrD,MAAM,eAAe,GAAG,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAC9E,IAAI,eAAe,KAAK,SAAS,CAAC,MAAM,IAAI,eAAe,KAAK,SAAS,CAAC,QAAQ,EAAE,CAAC;QACjF,MAAM,cAAc,GAAG,aAAa,CAAC,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAClF,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,oBAAoB,GAAG,cAAc,CAAC;IAC1C,CAAC;IACD,OAAO,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,QAAQ,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACpG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,OAAO,CAAC,QAAQ,CAAC;AACrB,CAAC;AAED,SAAS,OAAO,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC;AACD;;;;;;;;GAQG;AACH,SAAS,QAAQ,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACpG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/F,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC;AACD,SAAS,aAAa,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACzG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,OAAO,QAAQ,GAAG,QAAQ,CAAC;AAC/B,CAAC;AAED,SAAS,oBAAoB,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IAChH,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC;AAED,SAAS,gBAAgB,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IAC5G,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,OAAO,QAAQ,GAAG,QAAQ,CAAC;AAC/B,CAAC;AAED,SAAS,uBAAuB,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACnH,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC;AAED,MAAM,cAAc,GAAG,CAAC,CAAU,EAAE,CAAU,EAAW,EAAE;IACvD,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ,CAAC,IAAI;YACd,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,IAAI,CAAC;QACxC,KAAK,QAAQ,CAAC,OAAO;YACjB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,QAAQ,CAAC,IAAI,CAAC;QACnB,KAAK,QAAQ,CAAC,KAAK,CAAC;QACpB,KAAK,QAAQ,CAAC,KAAK,CAAC;QACpB,KAAK,QAAQ,CAAC,KAAK,CAAC;QACpB,KAAK,QAAQ,CAAC,MAAM,CAAC;QACrB,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,UAAU,CAAC,CAAC,CAAC,KAAe,EAAE,CAAC,CAAC,KAAe,CAAC,CAAC;QAC5D,KAAK,QAAQ,CAAC,QAAQ;YAClB,OAAQ,CAAC,CAAC,KAAc,EAAE,OAAO,EAAE,KAAM,CAAC,CAAC,KAAc,CAAC,OAAO,EAAE,CAAC;QACxE,KAAK,QAAQ,CAAC,IAAI;YACd,OAAO,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;QACtE,KAAK,QAAQ,CAAC,UAAU;YACpB,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACrC,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,OAAO,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/D,KAAK,QAAQ,CAAC,UAAU;YACpB,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;QAC/B,KAAK,QAAQ,CAAC,aAAa;YACvB,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC;QAC3C,KAAK,QAAQ,CAAC,aAAa;YACvB,OAAO,CAAC,CAAC,KAAK,EAAE,cAAc,KAAK,CAAC,CAAC,KAAK,EAAE,cAAc,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC;QAClG,KAAK,QAAQ,CAAC,eAAe;YACzB,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;YAC5E,OAAO,KAAK,CAAC;QACjB;YACI,OAAO,KAAK,CAAC,CAAC,qBAAqB;IAC3C,CAAC;AACL,CAAC,CAAC;AAEF,SAAS,WAAW,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACvG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACjG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACjG,OAAO,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC9C,CAAC;AACD;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,aAA4B,EAAE,MAAqB,EAAE,gBAAiC;IACxG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACnG,MAAM,UAAU,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACrG,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACtG,OAAO,QAAQ,IAAI,UAAU,IAAI,QAAQ,IAAI,WAAW,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,WAAW,CAAC,OAAsB,EAAE,cAA+B;IACxE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAEnC,iBAAiB;IACjB,IAAI,CAAC,CAAC,QAAQ,YAAY,sBAAsB,CAAC,EAAE,CAAC;QAChD,mBAAmB;QACnB,UAAU,CAAC,kEAAkE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1G,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAEhD,iBAAiB;IACjB,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAkB,KAAK,CAAC,KAAe,CAAC;IAEpD,iBAAiB;IACjB,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,SAAS,GAAG,CAAC,OAAe,EAAE,QAAwB;QAClD,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC9C,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAe,CAAC;QAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,SAAS,KAAK,SAAS,CAAC,WAAW,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,aAAa,YAAY,cAAc,IAAI,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC;YACxE,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,aAA4B,EAAE,MAAqB,EAAE,KAAa;IAC1F,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEvC,iBAAiB;IACjB,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,cAAc,GAAI,OAAO,CAAC,cAAyC,IAAI,EAAE,CAAC;IAEhF,QAAQ,OAAO,CAAC,cAAc,EAAE,CAAC;QAC7B,KAAK,cAAc,CAAC,MAAM;YACtB,OAAO,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC9D,KAAK,cAAc,CAAC,QAAQ;YACxB,OAAO,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAChE,KAAK,cAAc,CAAC,eAAe;YAC/B,OAAO,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QACvE,KAAK,cAAc,CAAC,WAAW;YAC3B,OAAO,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QACnE,KAAK,cAAc,CAAC,kBAAkB;YAClC,OAAO,uBAAuB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC1E,KAAK,cAAc,CAAC,OAAO;YACvB,OAAO,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAE/D,KAAK,cAAc,CAAC,GAAG;YACnB,OAAO,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC3D,KAAK,cAAc,CAAC,EAAE;YAClB,OAAO,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC1D,KAAK,cAAc,CAAC,GAAG;YACnB,OAAO,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAE3D,KAAK,cAAc,CAAC,MAAM;YACtB,OAAO,WAAW,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAC3E,KAAK,cAAc,CAAC,MAAM;YACtB,OAAO,WAAW,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QACtD;YACI,+DAA+D;YAC/D,2FAA2F;YAC3F,yDAAyD;YACzD,UAAU,CAAC,yBAAyB,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,uCAAuC,CAAC,CAAC;YACnH,OAAO,KAAK,CAAC;IACrB,CAAC;AACL,CAAC;AAED,gGAAgG;AAChG,2FAA2F;AAC3F,yCAAyC;AACzC,EAAE;AACF,8FAA8F;AAC9F,8FAA8F;AAC9F,yFAAyF;AACzF,6FAA6F;AAC7F,4FAA4F;AAC5F,4EAA4E;AAC5E,MAAM,sBAAsB,GAAyD;IACjF,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC3C,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC3C,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAChD,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC7C,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACvD,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACpD,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACzC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACxC,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC5C,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,iBAAiB,EAAE;IAClE,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACxC,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACvC,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACzC,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC/C,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC9C,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC3C,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAC3C,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;CACjD,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAqB;IACvD,MAAM,QAAQ,GAAI,MAAM,CAAC,QAA0C,IAAI,EAAE,CAAC;IAC1E,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC1B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACV,OAAO,WAAW,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,4FAA4F;IAC5F,0FAA0F;IAC1F,MAAM,OAAO,GAAG,CAAC,YAAoB,EAA6C,EAAE;QAChF,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvC,sGAAsG;QACtG,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;QACrD,CAAC;QACD,MAAM,QAAQ,GAAI,OAAO,CAAC,cAAyC,IAAI,EAAE,CAAC;QAC1E,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACjF,UAAU,CACN,yBAAyB,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,gBAAgB,YAAY,GAAG;gBAC1F,OAAO,QAAQ,CAAC,MAAM,yBAAyB,QAAQ,CAAC,GAAG,GACvD,QAAQ,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,GAAG,KAAK,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAC5G,EAAE,CACT,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,6BAA6B,EAAE,CAAC;QAC9E,CAAC;QACD,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,OAAO,YAAY,cAAc,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;gBAC5B,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBAC1B,UAAU,CACN,2CAA2C,YAAY,sCAAsC,KAAK,GAAG;wBACjG,sBAAsB,CAAC,GAAG,CACjC,CAAC;oBACF,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,uBAAuB,EAAE,CAAC;gBACxE,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;IACjD,CAAC,CAAC;IAEF,iEAAiE;IACjE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE3C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IACD,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACb,MAAM,KAAK,GAA4D,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAEpH,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,KAAK,CAAC,GAAG,EAAE,CAAC;YACZ,SAAS;QACb,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QACxC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,+DAA+D;YAC/D,UAAU,CAAC,4EAA4E,IAAI,EAAE,CAAC,CAAC;YAC/F,OAAO,WAAW,CAAC,uBAAuB,CAAC;QAC/C,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,CAAC,MAAM,CAAC;YACpB,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;IACD,OAAO,WAAW,CAAC,IAAI,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,aAA4B,EAAE,aAA4B;IAClF,IAAI,qBAAqB,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/D,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,kBAAkB,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;AAC/D,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SimpleAttributeOperand } from "node-opcua-types";
|
|
2
|
-
import { Variant } from "node-opcua-variant";
|
|
2
|
+
import type { Variant } from "node-opcua-variant";
|
|
3
3
|
import type { FilterContext } from "./filter_context.js";
|
|
4
4
|
/**
|
|
5
5
|
*
|
|
@@ -7,3 +7,4 @@ import type { FilterContext } from "./filter_context.js";
|
|
|
7
7
|
*/
|
|
8
8
|
export declare function extractEventField(context: FilterContext, operand: SimpleAttributeOperand): Variant;
|
|
9
9
|
export declare function extractEventFieldsBase(context: FilterContext, selectClauses: SimpleAttributeOperand[]): Variant[];
|
|
10
|
+
//# sourceMappingURL=extract_event_field.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extract_event_field.d.ts","sourceRoot":"","sources":["../source/extract_event_field.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAYlG;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,sBAAsB,EAAE,GAAG,OAAO,EAAE,CAIjH"}
|