bruce-cesium 2.9.1 → 2.9.3

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.
@@ -46,9 +46,6 @@ var RelationsRenderManager;
46
46
  // If true, this menu item is disposed and should not be used.
47
47
  // Any rendering will be ignored.
48
48
  this.disposed = false;
49
- // Record of the currently drawn entity IDs.
50
- // This is to avoid re-queueing already drawn entities when Init is called multiple times.
51
- this.drawnIds = [];
52
49
  var apiGetter = params.apiGetter, item = params.item, register = params.register, viewer = params.viewer;
53
50
  this.apiGetter = apiGetter;
54
51
  this.item = item;
@@ -70,8 +67,6 @@ var RelationsRenderManager;
70
67
  * @returns
71
68
  */
72
69
  Manager.prototype.Init = function (params) {
73
- var _this = this;
74
- var _a;
75
70
  if (this.disposed) {
76
71
  return;
77
72
  }
@@ -83,10 +78,6 @@ var RelationsRenderManager;
83
78
  var regos = this.register.GetRegos({
84
79
  menuItemId: this.item.id
85
80
  });
86
- var entityIds = (_a = this.item.BruceEntity) === null || _a === void 0 ? void 0 : _a.EntityIds;
87
- if (!(entityIds === null || entityIds === void 0 ? void 0 : entityIds.length)) {
88
- entityIds = [];
89
- }
90
81
  for (var i = 0; i < regos.length; i++) {
91
82
  var rego = regos[i];
92
83
  if (!this.shouldRenderRelation(rego.relation)) {
@@ -99,10 +90,44 @@ var RelationsRenderManager;
99
90
  }
100
91
  }
101
92
  this.viewer.scene.requestRender();
102
- this.renderEntityIds({
103
- entityIds: entityIds.filter(function (x) { return !_this.drawnIds.includes(x); })
93
+ this.queueRenderRelations({
94
+ relations: this.item.relations
104
95
  });
105
- this.drawnIds = [].concat(entityIds);
96
+ };
97
+ /**
98
+ * Constructs the rendered state of the menu item from the visuals register.
99
+ * This will let us see the difference between what the menu item should render vs has rendered.
100
+ */
101
+ Manager.prototype.getRenderedState = function () {
102
+ var items = [];
103
+ var regos = this.register.GetRegos({
104
+ menuItemId: this.item.id
105
+ });
106
+ var _loop_1 = function (i) {
107
+ var rego = regos[i];
108
+ if (!(rego === null || rego === void 0 ? void 0 : rego.relation)) {
109
+ return "continue";
110
+ }
111
+ var relationTypeId = rego.relation["Relation.Type.ID"];
112
+ if (!relationTypeId) {
113
+ return "continue";
114
+ }
115
+ var group = items.find(function (x) { return x.relationTypeId == relationTypeId; });
116
+ var entityId = rego.relation["Principal.Entity.ID"];
117
+ if (!group) {
118
+ items.push({
119
+ relationTypeId: relationTypeId,
120
+ entityIds: [entityId]
121
+ });
122
+ }
123
+ else if (!group.entityIds.includes(entityId)) {
124
+ group.entityIds.push(entityId);
125
+ }
126
+ };
127
+ for (var i = 0; i < regos.length; i++) {
128
+ _loop_1(i);
129
+ }
130
+ return items;
106
131
  };
107
132
  Manager.prototype.Dispose = function () {
108
133
  if (this.disposed) {
@@ -118,141 +143,233 @@ var RelationsRenderManager;
118
143
  * @param params
119
144
  */
120
145
  Manager.prototype.ReRender = function (params) {
146
+ var _a;
121
147
  return __awaiter(this, void 0, void 0, function () {
122
- var entityIds, force;
123
- var _this = this;
124
- return __generator(this, function (_a) {
125
- entityIds = params.entityIds, force = params.force;
126
- if (entityIds == null) {
127
- this.renderEntityIds({
128
- entityIds: this.drawnIds
129
- });
130
- }
131
- else {
132
- this.renderEntityIds({
133
- // TODO: This is a guess and not a proper check.
134
- // We need to record rendered relationships and check against them rather than the ID stored as the ID can be a child or parent.
135
- dataEntityIds: entityIds.filter(function (x) { return !_this.drawnIds.includes(x); }),
136
- entityIds: entityIds.filter(function (x) { return _this.drawnIds.includes(x); })
137
- });
148
+ var entityIds, force, toReRender, toReRenderDataIds, regos, groups, _loop_2, i;
149
+ return __generator(this, function (_b) {
150
+ switch (_b.label) {
151
+ case 0:
152
+ entityIds = params.entityIds, force = params.force;
153
+ toReRenderDataIds = [];
154
+ if (entityIds == null) {
155
+ toReRender = this.item.relations;
156
+ }
157
+ else {
158
+ toReRender = [];
159
+ regos = this.register.GetRegos({
160
+ menuItemId: this.item.id
161
+ });
162
+ groups = this.item.relations;
163
+ _loop_2 = function (i) {
164
+ var group = groups[i];
165
+ var toRenderEntityIds = [];
166
+ if ((_a = group.entityIds) === null || _a === void 0 ? void 0 : _a.length) {
167
+ for (var i_1 = 0; i_1 < group.entityIds.length; i_1++) {
168
+ var groupEntityId = group.entityIds[i_1];
169
+ // Primary ID matches a re-render entity ID.
170
+ if (entityIds.includes(groupEntityId)) {
171
+ toRenderEntityIds.push(groupEntityId);
172
+ }
173
+ }
174
+ }
175
+ var groupRegos = regos.filter(function (x) { var _a; return ((_a = x.relation) === null || _a === void 0 ? void 0 : _a["Relation.Type.ID"]) == group.relationTypeId; });
176
+ if (groupRegos.length) {
177
+ for (var i_2 = 0; i_2 < groupRegos.length; i_2++) {
178
+ var rego = groupRegos[i_2];
179
+ var dataEntityId = rego.entityId;
180
+ // Data ID matches a re-render entity ID.
181
+ if (dataEntityId && entityIds.includes(dataEntityId) && rego.relation) {
182
+ // toRenderEntityIds.push(rego.relation["Principal.Entity.ID"]);
183
+ toReRenderDataIds.push(dataEntityId);
184
+ }
185
+ }
186
+ }
187
+ if (toRenderEntityIds.length) {
188
+ toReRender.push({
189
+ relationTypeId: group.relationTypeId,
190
+ entityIds: toRenderEntityIds
191
+ });
192
+ }
193
+ };
194
+ for (i = 0; i < groups.length; i++) {
195
+ _loop_2(i);
196
+ }
197
+ }
198
+ if (!toReRenderDataIds.length) return [3 /*break*/, 2];
199
+ return [4 /*yield*/, this.queueRenderDataIds({
200
+ dataEntityIds: toReRenderDataIds
201
+ })];
202
+ case 1:
203
+ _b.sent();
204
+ _b.label = 2;
205
+ case 2:
206
+ if (!toReRender.length) return [3 /*break*/, 4];
207
+ return [4 /*yield*/, this.queueRenderRelations({
208
+ relations: toReRender,
209
+ force: true
210
+ })];
211
+ case 3:
212
+ _b.sent();
213
+ _b.label = 4;
214
+ case 4: return [2 /*return*/];
138
215
  }
139
- return [2 /*return*/];
140
216
  });
141
217
  });
142
218
  };
143
- /**
144
- * Gets relationship records corresponding to provided IDs and requests a render for them.
145
- */
146
- Manager.prototype.renderEntityIds = function (params) {
219
+ Manager.prototype.queueRenderDataIds = function (params) {
147
220
  return __awaiter(this, void 0, void 0, function () {
148
- var entityIds, dataEntityIds, drawn, api, BATCH_SIZE, drawBatch, pending, onResolve, i, entityId, i, entityId;
149
- var _this = this;
221
+ var dataEntityIds, i, data, e_1;
150
222
  return __generator(this, function (_a) {
151
- if (this.disposed || this.viewer.isDestroyed()) {
152
- return [2 /*return*/];
153
- }
154
- entityIds = params.entityIds, dataEntityIds = params.dataEntityIds;
155
- if (!(entityIds === null || entityIds === void 0 ? void 0 : entityIds.length)) {
156
- entityIds = [];
157
- }
158
- if (!(dataEntityIds === null || dataEntityIds === void 0 ? void 0 : dataEntityIds.length)) {
159
- dataEntityIds = [];
160
- }
161
- drawn = [];
162
- api = this.apiGetter.getApi(this.apiGetter.accountId);
163
- BATCH_SIZE = 5;
164
- drawBatch = [];
165
- pending = entityIds.length + dataEntityIds.length;
166
- onResolve = function () {
167
- if (_this.disposed || _this.viewer.isDestroyed()) {
168
- return;
169
- }
170
- pending -= 1;
171
- if (pending <= 0) {
172
- if (drawBatch === null || drawBatch === void 0 ? void 0 : drawBatch.length) {
173
- _this.onGetterUpdate(drawBatch);
174
- }
175
- }
176
- };
177
- // Get relationships by their data entity ID.
178
- for (i = 0; i < dataEntityIds.length; i++) {
179
- entityId = dataEntityIds[i];
180
- bruce_models_1.EntityRelation.GetByDataEntityId({
181
- entityId: entityId,
182
- api: api
183
- }).then(function (data) {
223
+ switch (_a.label) {
224
+ case 0:
225
+ dataEntityIds = params.dataEntityIds;
226
+ i = 0;
227
+ _a.label = 1;
228
+ case 1:
229
+ if (!(i < dataEntityIds.length)) return [3 /*break*/, 6];
230
+ _a.label = 2;
231
+ case 2:
232
+ _a.trys.push([2, 4, , 5]);
233
+ return [4 /*yield*/, bruce_models_1.EntityRelation.GetByDataEntityId({
234
+ entityId: dataEntityIds[i],
235
+ api: this.apiGetter.getApi()
236
+ })];
237
+ case 3:
238
+ data = _a.sent();
184
239
  if (data.relation) {
185
- var relation = data.relation;
186
- var key_1 = relation_render_engine_1.RelationRenderEngine.GetRenderGroupId(relation);
187
- if (!drawn.find(function (x) { return x == key_1; })) {
188
- drawn.push(key_1);
189
- drawBatch.push(relation);
190
- if (drawBatch.length >= BATCH_SIZE) {
191
- _this.onGetterUpdate(drawBatch);
192
- drawBatch = [];
193
- }
240
+ if (this.shouldRenderRelation(data.relation)) {
241
+ this.onGetterUpdate([data.relation]);
194
242
  }
195
243
  }
196
- onResolve();
197
- }).catch(function (e) {
198
- onResolve();
199
- });
244
+ return [3 /*break*/, 5];
245
+ case 4:
246
+ e_1 = _a.sent();
247
+ console.error(e_1);
248
+ return [3 /*break*/, 5];
249
+ case 5:
250
+ i++;
251
+ return [3 /*break*/, 1];
252
+ case 6: return [2 /*return*/];
200
253
  }
201
- // Get relationships by either the parent or child ID.
202
- for (i = 0; i < entityIds.length; i++) {
203
- entityId = entityIds[i];
204
- bruce_models_1.EntityRelation.GetList({
205
- api: api,
206
- entityId: entityId,
207
- filter: {
208
- oneWayOnly: false,
209
- loadEntityData: false
254
+ });
255
+ });
256
+ };
257
+ Manager.prototype.queueRenderRelations = function (params) {
258
+ var _a;
259
+ return __awaiter(this, void 0, void 0, function () {
260
+ var relations, force, renderedState, toRender, _loop_3, i, allIds_1, _i, relations_1, relation, entityIds, i, entityId, data, toRender, j, relation, rego, e_2;
261
+ return __generator(this, function (_b) {
262
+ switch (_b.label) {
263
+ case 0:
264
+ _b.trys.push([0, 5, , 6]);
265
+ relations = params.relations, force = params.force;
266
+ if (force != true) {
267
+ renderedState = this.getRenderedState();
268
+ toRender = [];
269
+ _loop_3 = function (i) {
270
+ var typeId = relations[i].relationTypeId;
271
+ var group = renderedState.find(function (x) { return x.relationTypeId == typeId; });
272
+ if (!group || !((_a = group.entityIds) === null || _a === void 0 ? void 0 : _a.length)) {
273
+ toRender.push(relations[i]);
274
+ return "continue";
275
+ }
276
+ var entityIds = relations[i].entityIds;
277
+ if (!(entityIds === null || entityIds === void 0 ? void 0 : entityIds.length)) {
278
+ return "continue";
279
+ }
280
+ var toRenderEntityIds = [];
281
+ for (var j = 0; j < entityIds.length; j++) {
282
+ var entityId = entityIds[j];
283
+ if (!group.entityIds.includes(entityId) && !toRenderEntityIds.includes(entityId)) {
284
+ toRenderEntityIds.push(entityId);
285
+ }
286
+ }
287
+ if (toRenderEntityIds.length) {
288
+ toRender.push({
289
+ relationTypeId: typeId,
290
+ entityIds: toRenderEntityIds
291
+ });
292
+ }
293
+ };
294
+ for (i = 0; i < relations.length; i++) {
295
+ _loop_3(i);
296
+ }
297
+ if (!toRender.length) {
298
+ return [2 /*return*/];
299
+ }
300
+ relations = toRender;
301
+ }
302
+ allIds_1 = [];
303
+ for (_i = 0, relations_1 = relations; _i < relations_1.length; _i++) {
304
+ relation = relations_1[_i];
305
+ entityIds = relation.entityIds;
306
+ allIds_1.push.apply(allIds_1, entityIds);
210
307
  }
211
- }).then(function (data) {
212
- var relations = data.relations;
213
- var _loop_1 = function (j) {
214
- var relation = relations[j];
215
- var key = relation_render_engine_1.RelationRenderEngine.GetRenderGroupId(relation);
216
- if (!drawn.find(function (x) { return x == key; })) {
217
- drawn.push(key);
218
- drawBatch.push(relation);
219
- if (drawBatch.length >= BATCH_SIZE) {
220
- _this.onGetterUpdate(drawBatch);
221
- drawBatch = [];
308
+ allIds_1 = allIds_1.filter(function (id, index) {
309
+ return allIds_1.indexOf(id) === index;
310
+ });
311
+ i = 0;
312
+ _b.label = 1;
313
+ case 1:
314
+ if (!(i < allIds_1.length)) return [3 /*break*/, 4];
315
+ entityId = allIds_1[i];
316
+ return [4 /*yield*/, bruce_models_1.EntityRelation.GetList({
317
+ entityId: entityId,
318
+ filter: {
319
+ oneWayOnly: true,
320
+ loadEntityData: false
321
+ },
322
+ api: this.apiGetter.getApi()
323
+ })];
324
+ case 2:
325
+ data = _b.sent();
326
+ if (this.disposed || this.viewer.isDestroyed()) {
327
+ return [2 /*return*/];
328
+ }
329
+ toRender = [];
330
+ for (j = 0; j < data.relations.length; j++) {
331
+ relation = data.relations[j];
332
+ if (this.shouldRenderRelation(relation)) {
333
+ if (force != true) {
334
+ rego = this.register.GetRego({
335
+ relation: relation,
336
+ menuItemId: this.item.id
337
+ });
338
+ if (rego === null || rego === void 0 ? void 0 : rego.visual) {
339
+ continue;
340
+ }
222
341
  }
342
+ toRender.push(relation);
223
343
  }
224
- };
225
- for (var j = 0; j < relations.length; j++) {
226
- _loop_1(j);
227
344
  }
228
- onResolve();
229
- }).catch(function (e) {
230
- onResolve();
231
- });
345
+ if (toRender.length) {
346
+ this.onGetterUpdate(toRender);
347
+ }
348
+ _b.label = 3;
349
+ case 3:
350
+ i++;
351
+ return [3 /*break*/, 1];
352
+ case 4: return [3 /*break*/, 6];
353
+ case 5:
354
+ e_2 = _b.sent();
355
+ console.error(e_2);
356
+ return [3 /*break*/, 6];
357
+ case 6: return [2 /*return*/];
232
358
  }
233
- return [2 /*return*/];
234
359
  });
235
360
  });
236
361
  };
237
- /**
238
- * Returns if a relation should be rendered.
239
- * This is in case the menu item was updated and the relation is no longer relevant.
240
- * @param relation
241
- */
242
362
  Manager.prototype.shouldRenderRelation = function (relation) {
243
363
  var _a, _b;
244
- var renderedIds = (_b = (_a = this.item) === null || _a === void 0 ? void 0 : _a.BruceEntity) === null || _b === void 0 ? void 0 : _b.EntityIds;
245
- if (!renderedIds) {
364
+ var typeId = relation === null || relation === void 0 ? void 0 : relation["Relation.Type.ID"];
365
+ if (!typeId || !((_b = (_a = this.item) === null || _a === void 0 ? void 0 : _a.relations) === null || _b === void 0 ? void 0 : _b.length)) {
246
366
  return false;
247
367
  }
248
- var ids = [
249
- relation["Principal.Entity.ID"],
250
- relation["Related.Entity.ID"]
251
- ];
252
- if (relation["Data.Entity.ID"]) {
253
- ids.push(relation["Data.Entity.ID"]);
368
+ var group = this.item.relations.find(function (x) { return x.relationTypeId == typeId; });
369
+ if (!(group === null || group === void 0 ? void 0 : group.entityIds)) {
370
+ return false;
254
371
  }
255
- return ids.some(function (x) { return renderedIds.includes(x); });
372
+ return group.entityIds.includes(relation["Principal.Entity.ID"]);
256
373
  };
257
374
  /**
258
375
  * Renders batch of entity relationships.
@@ -263,7 +380,7 @@ var RelationsRenderManager;
263
380
  Manager.prototype.onGetterUpdate = function (relations) {
264
381
  var _a, _b;
265
382
  return __awaiter(this, void 0, void 0, function () {
266
- var killCEntity, cEntities, key, i, relation, key, cEntity, visual, e_1;
383
+ var killCEntity, cEntities, key, i, relation, rego, key, cEntity, visual, e_3;
267
384
  var _this = this;
268
385
  return __generator(this, function (_c) {
269
386
  switch (_c.label) {
@@ -298,6 +415,19 @@ var RelationsRenderManager;
298
415
  }
299
416
  for (i = 0; i < relations.length; i++) {
300
417
  relation = relations[i];
418
+ rego = this.register.GetRego({
419
+ menuItemId: this.item.id,
420
+ relation: relation
421
+ });
422
+ if (rego) {
423
+ this.register.RemoveRegos({
424
+ entityId: rego.entityId,
425
+ menuItemId: this.item.id,
426
+ relation: relation,
427
+ requestRender: false,
428
+ doUpdate: true
429
+ });
430
+ }
301
431
  key = relation_render_engine_1.RelationRenderEngine.GetRenderGroupId(relation);
302
432
  cEntity = cEntities[key];
303
433
  if (cEntity && this.shouldRenderRelation(relation)) {
@@ -332,8 +462,8 @@ var RelationsRenderManager;
332
462
  this.viewer.scene.requestRender();
333
463
  return [3 /*break*/, 3];
334
464
  case 2:
335
- e_1 = _c.sent();
336
- console.error(e_1);
465
+ e_3 = _c.sent();
466
+ console.error(e_3);
337
467
  return [3 /*break*/, 3];
338
468
  case 3: return [2 /*return*/];
339
469
  }
@@ -1 +1 @@
1
- {"version":3,"file":"relations-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/other/relations-render-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+E;AAI/E,uEAAoE;AAEpE,IAAiB,sBAAsB,CAwTtC;AAxTD,WAAiB,sBAAsB;IACnC;QAsBI,iBAAmB,MAKlB;YA1BD,8DAA8D;YAC9D,iCAAiC;YACzB,aAAQ,GAAG,KAAK,CAAC;YAczB,4CAA4C;YAC5C,0FAA0F;YAClF,aAAQ,GAAa,EAAE,CAAC;YASpB,IAAA,SAAS,GAA6B,MAAM,UAAnC,EAAE,IAAI,GAAuB,MAAM,KAA7B,EAAE,QAAQ,GAAa,MAAM,SAAnB,EAAE,MAAM,GAAK,MAAM,OAAX,CAAY;YACrD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACzB,CAAC;QA7BD,sBAAW,6BAAQ;iBAAnB;gBACI,OAAO,IAAI,CAAC,QAAQ,CAAC;YACzB,CAAC;;;WAAA;QAAA,CAAC;QA6BF;;;;;WAKG;QACI,sBAAI,GAAX,UAAY,MAEX;YAFD,iBAsCC;;YAnCG,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,OAAO;aACV;YACD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE;gBACd,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;aAC3B;YAED,oDAAoD;YACpD,iGAAiG;YACjG,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACjC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;aAC3B,CAAC,CAAC;YAEH,IAAI,SAAS,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,WAAW,0CAAE,SAAS,CAAC;YACjD,IAAI,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,EAAE;gBACpB,SAAS,GAAG,EAAE,CAAC;aAClB;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACnC,IAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAC3C,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;wBACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;wBACxB,aAAa,EAAE,KAAK;qBACvB,CAAC,CAAC;iBACN;aACJ;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YAElC,IAAI,CAAC,eAAe,CAAC;gBACjB,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,KAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAA1B,CAA0B,CAAC;aAC/D,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QAEM,yBAAO,GAAd;YACI,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,OAAO;aACV;YACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACtB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;aAC3B,CAAC,CAAC;QACP,CAAC;QAED;;;WAGG;QACU,0BAAQ,GAArB,UAAsB,MAGrB;;;;;oBACS,SAAS,GAAY,MAAM,UAAlB,EAAE,KAAK,GAAK,MAAM,MAAX,CAAY;oBAClC,IAAI,SAAS,IAAI,IAAI,EAAE;wBACnB,IAAI,CAAC,eAAe,CAAC;4BACjB,SAAS,EAAE,IAAI,CAAC,QAAQ;yBAC3B,CAAC,CAAA;qBACL;yBACI;wBACD,IAAI,CAAC,eAAe,CAAC;4BACjB,gDAAgD;4BAChD,gIAAgI;4BAChI,aAAa,EAAE,SAAS,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,KAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAA1B,CAA0B,CAAC;4BAChE,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,KAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAzB,CAAyB,CAAC;yBAC9D,CAAC,CAAC;qBACN;;;;SACJ;QAED;;WAEG;QACW,iCAAe,GAA7B,UAA8B,MAG7B;;;;;oBACG,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;wBAC5C,sBAAO;qBACV;oBACK,SAAS,GAAoB,MAAM,UAA1B,EAAE,aAAa,GAAK,MAAM,cAAX,CAAY;oBAC1C,IAAI,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,EAAE;wBACpB,SAAS,GAAG,EAAE,CAAC;qBAClB;oBACD,IAAI,CAAC,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,CAAA,EAAE;wBACxB,aAAa,GAAG,EAAE,CAAC;qBACtB;oBAEK,KAAK,GAAa,EAAE,CAAC;oBACrB,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;oBACtD,UAAU,GAAG,CAAC,CAAC;oBACjB,SAAS,GAAG,EAAE,CAAC;oBACf,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;oBAEhD,SAAS,GAAG;wBACd,IAAI,KAAI,CAAC,QAAQ,IAAI,KAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;4BAC5C,OAAO;yBACV;wBAED,OAAO,IAAI,CAAC,CAAC;wBACb,IAAI,OAAO,IAAI,CAAC,EAAE;4BACd,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,EAAE;gCACnB,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;6BAClC;yBACJ;oBACL,CAAC,CAAC;oBAEF,6CAA6C;oBAC7C,KAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACrC,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;wBAClC,6BAAc,CAAC,iBAAiB,CAAC;4BAC7B,QAAQ,UAAA;4BACR,GAAG,KAAA;yBACN,CAAC,CAAC,IAAI,CAAC,UAAC,IAAI;4BACT,IAAI,IAAI,CAAC,QAAQ,EAAE;gCACf,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gCAC/B,IAAM,KAAG,GAAG,6CAAoB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gCAC5D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,IAAI,KAAG,EAAR,CAAQ,CAAC,EAAE;oCAC5B,KAAK,CAAC,IAAI,CAAC,KAAG,CAAC,CAAC;oCAChB,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oCACzB,IAAI,SAAS,CAAC,MAAM,IAAI,UAAU,EAAE;wCAChC,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;wCAC/B,SAAS,GAAG,EAAE,CAAC;qCAClB;iCACJ;6BACJ;4BACD,SAAS,EAAE,CAAC;wBAChB,CAAC,CAAC,CAAC,KAAK,CAAC,UAAC,CAAC;4BACP,SAAS,EAAE,CAAC;wBAChB,CAAC,CAAC,CAAC;qBACN;oBAED,sDAAsD;oBACtD,KAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACjC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;wBAC9B,6BAAc,CAAC,OAAO,CAAC;4BACnB,GAAG,KAAA;4BACH,QAAQ,UAAA;4BACR,MAAM,EAAE;gCACJ,UAAU,EAAE,KAAK;gCACjB,cAAc,EAAE,KAAK;6BACxB;yBACJ,CAAC,CAAC,IAAI,CAAC,UAAC,IAAI;4BACT,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;oDACxB,CAAC;gCACN,IAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gCAC9B,IAAM,GAAG,GAAG,6CAAoB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gCAC5D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,IAAI,GAAG,EAAR,CAAQ,CAAC,EAAE;oCAC5B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oCAChB,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oCACzB,IAAI,SAAS,CAAC,MAAM,IAAI,UAAU,EAAE;wCAChC,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;wCAC/B,SAAS,GAAG,EAAE,CAAC;qCAClB;iCACJ;;4BAVL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;wCAAhC,CAAC;6BAWT;4BACD,SAAS,EAAE,CAAC;wBAChB,CAAC,CAAC,CAAC,KAAK,CAAC,UAAC,CAAC;4BACP,SAAS,EAAE,CAAC;wBAChB,CAAC,CAAC,CAAC;qBACN;;;;SACJ;QAED;;;;WAIG;QACK,sCAAoB,GAA5B,UAA6B,QAAkC;;YAC3D,IAAI,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,WAAW,0CAAE,SAAS,CAAC;YACpD,IAAI,CAAC,WAAW,EAAE;gBACd,OAAO,KAAK,CAAC;aAChB;YACD,IAAM,GAAG,GAAG;gBACR,QAAQ,CAAC,qBAAqB,CAAC;gBAC/B,QAAQ,CAAC,mBAAmB,CAAC;aAChC,CAAC;YACF,IAAI,QAAQ,CAAC,gBAAgB,CAAC,EAAE;gBAC5B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;aACxC;YACD,OAAO,GAAG,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAvB,CAAuB,CAAC,CAAC;QAClD,CAAC;QAED;;;;;WAKG;QACW,gCAAc,GAA5B,UAA6B,SAAqC;;;;;;;;;4BAE1D,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;gCAC5C,sBAAO;6BACV;4BAED,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,KAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAA5B,CAA4B,CAAC,CAAC;4BAO1D,WAAW,GAAG,UAAC,OAA8C;gCAC/D,IAAI,OAAO,IAAI,CAAC,KAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oCACjF,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;iCACxC;4BACL,CAAC,CAAC;4BAEgB,qBAAM,6CAAoB,CAAC,MAAM,CAAC;oCAChD,SAAS,EAAE,IAAI,CAAC,SAAS;oCACzB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;oCACxB,SAAS,EAAE,SAAS;oCACpB,MAAM,EAAE,IAAI,CAAC,MAAM;oCACnB,cAAc,EAAE,IAAI,CAAC,QAAQ;iCAChC,CAAC,EAAA;;4BANI,SAAS,GAAG,SAMhB;4BAEF,IAAI,IAAI,CAAC,QAAQ,EAAE;gCACf,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;oCACtB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;iCAC3B,CAAC,CAAC;gCACH,KAAW,GAAG,IAAI,SAAS,EAAE;oCACzB,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;iCAC/B;gCACD,sBAAO;6BACV;4BAED,KAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gCACjC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gCACxB,GAAG,GAAG,6CAAoB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gCACtD,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;gCAC/B,IAAI,OAAO,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE;oCAC1C,MAAM,GAAG,MAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;wCACjC,QAAQ,EAAE,QAAQ;wCAClB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;qCAC3B,CAAC,0CAAE,MAAM,CAAC;oCACX,IAAI,CAAC,MAAM,IAAI,MAAM,IAAI,OAAO,EAAE;wCAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;4CAClB,IAAI,EAAE;gDACF,QAAQ,EAAE,MAAA,QAAQ,CAAC,gBAAgB,CAAC,mCAAI,0BAAW,CAAC,GAAG,EAAE;gDACzD,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;gDACxB,QAAQ,EAAE,QAAQ;gDAClB,MAAM,EAAE,OAAO;gDACf,QAAQ,EAAE,CAAC;gDACX,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS;6CACtC;4CACD,aAAa,EAAE,KAAK;yCACvB,CAAC,CAAC;qCACN;iCACJ;qCACI;oCACD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;wCACtB,QAAQ,EAAE,QAAQ,CAAC,gBAAgB,CAAC;wCACpC,QAAQ,EAAE,QAAQ;wCAClB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;wCACxB,aAAa,EAAE,KAAK;qCACvB,CAAC,CAAC;oCACH,WAAW,CAAC,OAAO,CAAC,CAAC;iCACxB;6BACJ;4BACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;;;;4BAGlC,OAAO,CAAC,KAAK,CAAC,GAAC,CAAC,CAAC;;;;;;SAExB;QACL,cAAC;IAAD,CAAC,AAtTD,IAsTC;IAtTY,8BAAO,UAsTnB,CAAA;AACL,CAAC,EAxTgB,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAwTtC"}
1
+ {"version":3,"file":"relations-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/other/relations-render-manager.ts"],"names":[],"mappings":"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"}