rez_core 4.0.241 → 4.0.243
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.
|
@@ -42,26 +42,16 @@ let EntityJSONService = class EntityJSONService extends entity_service_impl_serv
|
|
|
42
42
|
.select(['rel.target_entity_type'])
|
|
43
43
|
.where('rel.source_entity_type = :entityType', { entityType })
|
|
44
44
|
.andWhere('rel.organization_id = :orgId', { orgId })
|
|
45
|
-
.andWhere('rel.relation_type = :relationType', {
|
|
46
|
-
relationType: 'ONE_TO_ONE',
|
|
47
|
-
})
|
|
45
|
+
.andWhere('rel.relation_type = :relationType', { relationType: 'ONE_TO_ONE' })
|
|
48
46
|
.getRawMany();
|
|
49
|
-
const relatedTypesList = relatedEntityTypes.map(
|
|
47
|
+
const relatedTypesList = relatedEntityTypes.map(x => x.rel_target_entity_type);
|
|
50
48
|
await this.loggerService.log('debug', 'EntityJSONService', 'getAttributeForFlatJSON', `Found ${relatedTypesList.length} ONE-TO-ONE related entity types`);
|
|
51
49
|
const relatedAttributes = relatedTypesList.length
|
|
52
50
|
? await this.dataSource
|
|
53
51
|
.getRepository(attribute_master_entity_1.AttributeMaster)
|
|
54
52
|
.createQueryBuilder('attr')
|
|
55
|
-
.select([
|
|
56
|
-
'attr.
|
|
57
|
-
'attr.name',
|
|
58
|
-
'attr.flat_json_key',
|
|
59
|
-
'attr.mapped_entity_type',
|
|
60
|
-
'attr.attribute_key',
|
|
61
|
-
])
|
|
62
|
-
.where('attr.mapped_entity_type IN (:...types)', {
|
|
63
|
-
types: relatedTypesList,
|
|
64
|
-
})
|
|
53
|
+
.select(['attr.id', 'attr.name', 'attr.flat_json_key', 'attr.mapped_entity_type', 'attr.attribute_key'])
|
|
54
|
+
.where('attr.mapped_entity_type IN (:...types)', { types: relatedTypesList })
|
|
65
55
|
.andWhere('attr.organization_id = :orgId', { orgId })
|
|
66
56
|
.getMany()
|
|
67
57
|
: [];
|
|
@@ -76,46 +66,29 @@ let EntityJSONService = class EntityJSONService extends entity_service_impl_serv
|
|
|
76
66
|
'fla.attribute_key AS target_attribute_key',
|
|
77
67
|
'fla.saved_filter_code AS saved_filter_code',
|
|
78
68
|
'attr.name AS name',
|
|
79
|
-
'attr.id AS id'
|
|
69
|
+
'attr.id AS id',
|
|
80
70
|
])
|
|
81
71
|
.where('attr.organization_id = :orgId', { orgId })
|
|
82
72
|
.getRawMany();
|
|
83
73
|
await this.loggerService.log('debug', 'EntityJSONService', 'getAttributeForFlatJSON', `Loaded ${linkedAttributes.length} linked attributes`);
|
|
84
74
|
if (flag === 'flat_json' || flag === 'all') {
|
|
85
75
|
const result = {};
|
|
86
|
-
mainAttributes.forEach(
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
result[attr.flat_json_key] = null;
|
|
93
|
-
});
|
|
94
|
-
linkedAttributes.forEach((link) => {
|
|
95
|
-
if (link.target_attribute_key)
|
|
96
|
-
result[link.target_attribute_key] = null;
|
|
97
|
-
});
|
|
76
|
+
mainAttributes.forEach(attr => { if (attr.flat_json_key)
|
|
77
|
+
result[attr.flat_json_key] = null; });
|
|
78
|
+
relatedAttributes.forEach(attr => { if (attr.flat_json_key)
|
|
79
|
+
result[attr.flat_json_key] = null; });
|
|
80
|
+
linkedAttributes.forEach(link => { if (link.target_attribute_key)
|
|
81
|
+
result[link.target_attribute_key] = null; });
|
|
98
82
|
if (flag === 'all') {
|
|
99
|
-
return {
|
|
100
|
-
flat_json: result,
|
|
101
|
-
attributes: { mainAttributes, relatedAttributes, linkedAttributes }
|
|
102
|
-
};
|
|
83
|
+
return { flat_json: result, attributes: { mainAttributes, relatedAttributes, linkedAttributes } };
|
|
103
84
|
}
|
|
104
85
|
return result;
|
|
105
86
|
}
|
|
106
87
|
const dropdown = [];
|
|
107
|
-
dropdown.push(...mainAttributes.map(
|
|
108
|
-
dropdown.push(...relatedAttributes.map(
|
|
109
|
-
label: a.name,
|
|
110
|
-
value: a.flat_json_key,
|
|
111
|
-
})));
|
|
88
|
+
dropdown.push(...mainAttributes.map(a => ({ label: a.name, value: a.flat_json_key })));
|
|
89
|
+
dropdown.push(...relatedAttributes.map(a => ({ label: a.name, value: a.flat_json_key })));
|
|
112
90
|
if (linkedAttributes.length > 0) {
|
|
113
|
-
dropdown.push({
|
|
114
|
-
...linkedAttributes.map((a) => ({
|
|
115
|
-
label: a.name,
|
|
116
|
-
value: a.attribute_key,
|
|
117
|
-
})),
|
|
118
|
-
});
|
|
91
|
+
dropdown.push(...linkedAttributes.map(a => ({ label: a.name, value: a.attribute_key })));
|
|
119
92
|
}
|
|
120
93
|
return dropdown;
|
|
121
94
|
}
|
|
@@ -136,10 +109,8 @@ let EntityJSONService = class EntityJSONService extends entity_service_impl_serv
|
|
|
136
109
|
};
|
|
137
110
|
const attrMap = {};
|
|
138
111
|
const allAttrs = [...safeAttributes.mainAttributes, ...safeAttributes.relatedAttributes];
|
|
139
|
-
allAttrs.forEach(attr => {
|
|
140
|
-
|
|
141
|
-
attrMap[attr.attribute_key] = attr.flat_json_key || attr.attribute_key;
|
|
142
|
-
});
|
|
112
|
+
allAttrs.forEach(attr => { if (attr.attribute_key)
|
|
113
|
+
attrMap[attr.attribute_key] = attr.flat_json_key || attr.attribute_key; });
|
|
143
114
|
const mainData = await this.getResolvedEntityData(entityType, entityId, loggedInUser);
|
|
144
115
|
this.mergeEntityDataIntoFlatJson(flatJson, mainData, attrMap);
|
|
145
116
|
const relations = await this.dataSource
|
|
@@ -161,15 +132,15 @@ let EntityJSONService = class EntityJSONService extends entity_service_impl_serv
|
|
|
161
132
|
if (!childEntityType || !sourceKey || !targetKey)
|
|
162
133
|
continue;
|
|
163
134
|
const mappingValue = mainData?.[sourceKey] ?? null;
|
|
164
|
-
const value = await this.applyLinkedFilterUsingSavedFilter(childEntityType, linkAttr.
|
|
135
|
+
const value = await this.applyLinkedFilterUsingSavedFilter(childEntityType, linkAttr.saved_filter_code, sourceKey, mappingValue, targetKey, loggedInUser, entityId);
|
|
165
136
|
if (value !== null && value !== undefined) {
|
|
166
|
-
|
|
167
|
-
flatJson[flatKey] = value;
|
|
137
|
+
flatJson[targetKey] = value;
|
|
168
138
|
}
|
|
169
139
|
}
|
|
140
|
+
await this.loggerService.log('info', 'EntityJSONService', 'updateEntityJSON', `Saving flat JSON for entity: ${entityType}#${entityId}`);
|
|
170
141
|
await this.dataSource.query(`INSERT INTO frm_entity_json (entity_type, entity_id, json_data, created_by)
|
|
171
|
-
|
|
172
|
-
|
|
142
|
+
VALUES (?, ?, ?, ?)
|
|
143
|
+
ON DUPLICATE KEY UPDATE json_data = VALUES(json_data), updated_by = VALUES(created_by)`, [entityType, entityId, JSON.stringify(flatJson), loggedInUser.id]);
|
|
173
144
|
return flatJson;
|
|
174
145
|
}
|
|
175
146
|
mergeEntityDataIntoFlatJson(flatJson, entityData, attrMap) {
|
|
@@ -186,8 +157,7 @@ let EntityJSONService = class EntityJSONService extends entity_service_impl_serv
|
|
|
186
157
|
}
|
|
187
158
|
}
|
|
188
159
|
async applyLinkedFilterUsingSavedFilter(childEntityType, savedFilterCode, childFilterAttribute, mappingValue, targetAttribute, loggedInUser, entity_id) {
|
|
189
|
-
if (!savedFilterCode &&
|
|
190
|
-
(mappingValue === null || mappingValue === undefined))
|
|
160
|
+
if (!savedFilterCode && (mappingValue === null || mappingValue === undefined))
|
|
191
161
|
return null;
|
|
192
162
|
const dto = {
|
|
193
163
|
entity_type: childEntityType,
|
|
@@ -196,23 +166,13 @@ let EntityJSONService = class EntityJSONService extends entity_service_impl_serv
|
|
|
196
166
|
page: 1,
|
|
197
167
|
size: 1,
|
|
198
168
|
};
|
|
199
|
-
if (mappingValue !== null &&
|
|
200
|
-
mappingValue !== undefined &&
|
|
201
|
-
mappingValue !== '') {
|
|
169
|
+
if (mappingValue !== null && mappingValue !== undefined && mappingValue !== '') {
|
|
202
170
|
dto.quickFilter = [
|
|
203
|
-
{
|
|
204
|
-
filter_attribute: childFilterAttribute,
|
|
205
|
-
filter_operator: 'equal',
|
|
206
|
-
filter_value: mappingValue,
|
|
207
|
-
},
|
|
171
|
+
{ filter_attribute: childFilterAttribute, filter_operator: 'equal', filter_value: mappingValue },
|
|
208
172
|
];
|
|
209
173
|
}
|
|
210
174
|
dto.quickFilter = [
|
|
211
|
-
{
|
|
212
|
-
filter_attribute: 'parent_id',
|
|
213
|
-
filter_operator: 'equal',
|
|
214
|
-
filter_value: [entity_id],
|
|
215
|
-
},
|
|
175
|
+
{ filter_attribute: 'parent_id', filter_operator: 'equal', filter_value: [entity_id] },
|
|
216
176
|
];
|
|
217
177
|
const result = await this.filterService.applyFilter(dto);
|
|
218
178
|
const rows = result?.data?.entity_list || [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity_json.service.js","sourceRoot":"","sources":["../../../../src/module/entity_json/service/entity_json.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,wEAAyE;AACzE,oGAA+F;AAC/F,uFAAiF;AACjF,qFAA+E;AAC/E,gGAAwF;AACxF,oFAAuE;AACvE,qCAAqC;AAG9B,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,+CAAiB;IACtD,YACmB,UAAsB,EACtB,aAA4B,EAC5B,aAA6B;QAE9C,KAAK,EAAE,CAAC;QAJS,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAgB;IAGhD,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,UAAkB,EAClB,YAAiB,EACjB,IAAuC;QAEvC,MAAM,KAAK,GAAG,YAAY,CAAC,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"entity_json.service.js","sourceRoot":"","sources":["../../../../src/module/entity_json/service/entity_json.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,wEAAyE;AACzE,oGAA+F;AAC/F,uFAAiF;AACjF,qFAA+E;AAC/E,gGAAwF;AACxF,oFAAuE;AACvE,qCAAqC;AAG9B,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,+CAAiB;IACtD,YACmB,UAAsB,EACtB,aAA4B,EAC5B,aAA6B;QAE9C,KAAK,EAAE,CAAC;QAJS,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAgB;IAGhD,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,UAAkB,EAClB,YAAiB,EACjB,IAAuC;QAEvC,MAAM,KAAK,GAAG,YAAY,CAAC,eAAe,CAAC;QAE3C,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,kCAAkC,UAAU,UAAU,KAAK,EAAE,CAAC,CAAC;QAEpJ,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU;aACzC,aAAa,CAAC,yCAAe,CAAC;aAC9B,kBAAkB,CAAC,MAAM,CAAC;aAC1B,MAAM,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;aAC5E,KAAK,CAAC,uCAAuC,EAAE,EAAE,UAAU,EAAE,CAAC;aAC9D,QAAQ,CAAC,+BAA+B,EAAE,EAAE,KAAK,EAAE,CAAC;aACpD,OAAO,EAAE,CAAC;QAEb,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,UAAU,cAAc,CAAC,MAAM,kBAAkB,CAAC,CAAC;QAEzI,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,UAAU;aAC7C,aAAa,CAAC,uCAAc,CAAC;aAC7B,kBAAkB,CAAC,KAAK,CAAC;aACzB,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;aAClC,KAAK,CAAC,sCAAsC,EAAE,EAAE,UAAU,EAAE,CAAC;aAC7D,QAAQ,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,CAAC;aACnD,QAAQ,CAAC,mCAAmC,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;aAC7E,UAAU,EAAE,CAAC;QAEhB,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;QAE/E,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,SAAS,gBAAgB,CAAC,MAAM,kCAAkC,CAAC,CAAC;QAE1J,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,MAAM;YAC/C,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU;iBAClB,aAAa,CAAC,yCAAe,CAAC;iBAC9B,kBAAkB,CAAC,MAAM,CAAC;iBAC1B,MAAM,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,oBAAoB,CAAC,CAAC;iBACvG,KAAK,CAAC,wCAAwC,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;iBAC5E,QAAQ,CAAC,+BAA+B,EAAE,EAAE,KAAK,EAAE,CAAC;iBACpD,OAAO,EAAE;YACd,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,UAAU,iBAAiB,CAAC,MAAM,qBAAqB,CAAC,CAAC;QAE/I,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU;aAC3C,aAAa,CAAC,0CAAgB,CAAC;aAC/B,kBAAkB,CAAC,KAAK,CAAC;aACzB,SAAS,CACR,yCAAe,EACf,MAAM,EACN,4GAA4G,CAC7G;aACA,MAAM,CAAC;YACN,sDAAsD;YACtD,0DAA0D;YAC1D,2CAA2C;YAC3C,4CAA4C;YAC5C,mBAAmB;YACnB,eAAe;SAChB,CAAC;aACD,KAAK,CAAC,+BAA+B,EAAE,EAAE,KAAK,EAAE,CAAC;aACjD,UAAU,EAAE,CAAC;QAEhB,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,UAAU,gBAAgB,CAAC,MAAM,oBAAoB,CAAC,CAAC;QAE7I,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAyB,EAAE,CAAC;YACxC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,aAAa;gBAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/F,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,aAAa;gBAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAClG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,oBAAoB;gBAAE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAE/G,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,CAAC;YACpG,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,QAAQ,GAAU,EAAE,CAAC;QAC3B,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;QACvF,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1F,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,QAAQ,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3F,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAkB,EAAE,QAAgB,EAAE,YAAY;QACvE,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kCAAkC,UAAU,IAAI,QAAQ,EAAE,CAAC,CAAC;QAE1I,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;QAErF,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,WAAW,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YACnG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,6DAA6D,CAAC,CAAC;YAC9I,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;QACrD,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,MAAM,cAAc,GAAG;YACrB,cAAc,EAAE,UAAU,CAAC,cAAc,IAAI,EAAE;YAC/C,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,IAAI,EAAE;YACrD,gBAAgB,EAAE,UAAU,CAAC,gBAAgB,IAAI,EAAE;SACpD,CAAC;QAEF,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,CAAC,GAAG,cAAc,CAAC,cAAc,EAAE,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAC;QACzF,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,aAAa;YAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAE9H,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QACtF,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAE9D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU;aACpC,aAAa,CAAC,0BAA0B,CAAC;aACzC,kBAAkB,CAAC,KAAK,CAAC;aACzB,MAAM,CAAC,CAAC,0CAA0C,EAAE,8CAA8C,CAAC,CAAC;aACpG,KAAK,CAAC,sCAAsC,EAAE,EAAE,UAAU,EAAE,CAAC;aAC7D,QAAQ,CAAC,kCAAkC,EAAE,EAAE,QAAQ,EAAE,CAAC;aAC1D,QAAQ,CAAC,yBAAyB,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC;aACzD,UAAU,EAAE,CAAC;QAEhB,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,kBAAkB,EAAE,GAAG,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;YACjH,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACnE,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,cAAc,CAAC,gBAAgB,EAAE,CAAC;YACvD,MAAM,eAAe,GAAG,QAAQ,CAAC,sBAAsB,CAAC;YACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,wBAAwB,CAAC;YACpD,MAAM,SAAS,GAAG,QAAQ,CAAC,oBAAoB,CAAC;YAEhD,IAAI,CAAC,eAAe,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS;gBAAE,SAAS;YAE3D,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;YAEnD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,iCAAiC,CACxD,eAAe,EACf,QAAQ,CAAC,iBAAiB,EAC1B,SAAS,EACT,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,QAAQ,CACT,CAAC;YAEF,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC1C,QAAQ,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gCAAgC,UAAU,IAAI,QAAQ,EAAE,CAAC,CAAC;QACxI,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACzB;;8FAEwF,EACxF,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC,CAClE,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,2BAA2B,CAAC,QAA6B,EAAE,UAAuB,EAAE,OAA+B;QACzH,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAEtE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,SAAS;YACpD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;gBACpC,IAAI,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;oBACrC,QAAQ,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iCAAiC,CAC7C,eAAuB,EACvB,eAAuB,EACvB,oBAA4B,EAC5B,YAAiB,EACjB,eAAuB,EACvB,YAAY,EACZ,SAAS;QAET,IAAI,CAAC,eAAe,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,YAAY,KAAK,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QAE3F,MAAM,GAAG,GAAQ;YACf,WAAW,EAAE,eAAe;YAC5B,YAAY;YACZ,eAAe;YACf,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,CAAC;SACR,CAAC;QAEF,IAAI,YAAY,KAAK,IAAI,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;YAC/E,GAAG,CAAC,WAAW,GAAG;gBAChB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE;aACjG,CAAC;QACJ,CAAC;QAED,GAAG,CAAC,WAAW,GAAG;YAChB,EAAE,gBAAgB,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,SAAS,CAAC,EAAE;SACvF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,EAAE,WAAW,IAAI,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,CAAC;CACF,CAAA;AA3NY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;qCAGoB,oBAAU;QACP,8BAAa;QACb,oCAAc;GAJrC,iBAAiB,CA2N7B"}
|