bruce-cesium 7.5.4 → 7.5.6
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/bruce-cesium.es5.js +850 -348
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +848 -346
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/bruce-cesium.js +1 -1
- package/dist/lib/internal/image-utils.js +24 -1
- package/dist/lib/internal/image-utils.js.map +1 -1
- package/dist/lib/rendering/entity-render-engine-point.js +16 -25
- package/dist/lib/rendering/entity-render-engine-point.js.map +1 -1
- package/dist/lib/rendering/entity-render-engine-polygon.js +16 -14
- package/dist/lib/rendering/entity-render-engine-polygon.js.map +1 -1
- package/dist/lib/rendering/render-managers/common/entity-label-group.js +178 -64
- package/dist/lib/rendering/render-managers/common/entity-label-group.js.map +1 -1
- package/dist/lib/rendering/render-managers/common/entity-label.js +437 -71
- package/dist/lib/rendering/render-managers/common/entity-label.js.map +1 -1
- package/dist/lib/rendering/render-managers/other/google-search-render-manager.js +32 -37
- package/dist/lib/rendering/render-managers/other/google-search-render-manager.js.map +1 -1
- package/dist/lib/rendering/visuals-register.js +16 -2
- package/dist/lib/rendering/visuals-register.js.map +1 -1
- package/dist/types/bruce-cesium.d.ts +1 -1
- package/dist/types/internal/image-utils.d.ts +1 -0
- package/dist/types/rendering/render-managers/common/entity-label-group.d.ts +9 -1
- package/dist/types/rendering/render-managers/common/entity-label.d.ts +13 -2
- package/dist/types/rendering/visuals-register.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-render-engine-polygon.js","sourceRoot":"","sources":["../../../src/rendering/entity-render-engine-polygon.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entity-render-engine-polygon.js","sourceRoot":"","sources":["../../../src/rendering/entity-render-engine-polygon.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,34 +44,40 @@ var EntityLabelGroup;
|
|
|
44
44
|
].some(Array.isArray);
|
|
45
45
|
}
|
|
46
46
|
EntityLabelGroup.NeedsEntityData = NeedsEntityData;
|
|
47
|
-
// How many entities
|
|
48
|
-
const HYDRATE_AT_ONCE =
|
|
47
|
+
// How many entities one read asks for, so a long hand-picked list does not arrive as one request.
|
|
48
|
+
const HYDRATE_AT_ONCE = 100;
|
|
49
49
|
/*
|
|
50
|
-
* Reads the entities behind items that name one without carrying it
|
|
50
|
+
* Reads the entities behind items that name one without carrying it, attachments included,
|
|
51
|
+
* so a label's default image needs no second request.
|
|
51
52
|
*/
|
|
52
53
|
async function Hydrate(items, api, signal) {
|
|
54
|
+
var _a, _b;
|
|
53
55
|
if (!api) {
|
|
54
56
|
return items;
|
|
55
57
|
}
|
|
56
58
|
const hydrated = items.slice();
|
|
57
|
-
|
|
59
|
+
const missing = hydrated.map((item, at) => (item === null || item === void 0 ? void 0 : item.entityId) && !item.entity ? at : -1).filter(at => at >= 0);
|
|
60
|
+
for (let start = 0; start < missing.length; start += HYDRATE_AT_ONCE) {
|
|
58
61
|
if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
|
|
59
62
|
return hydrated;
|
|
60
63
|
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
const chunk = missing.slice(start, start + HYDRATE_AT_ONCE);
|
|
65
|
+
try {
|
|
66
|
+
const { entities } = await bruce_models_1.Entity.GetListByIds({
|
|
67
|
+
api, entityIds: chunk.map(at => hydrated[at].entityId), expandAttachments: true, migrated: true
|
|
68
|
+
});
|
|
69
|
+
const found = new Map((entities !== null && entities !== void 0 ? entities : []).map(entity => { var _a; return [(_a = entity === null || entity === void 0 ? void 0 : entity.Bruce) === null || _a === void 0 ? void 0 : _a.ID, entity]; }));
|
|
70
|
+
for (const at of chunk) {
|
|
71
|
+
const entity = found.get(hydrated[at].entityId);
|
|
67
72
|
if (entity) {
|
|
68
|
-
|
|
73
|
+
// The API leaves Attachment out when there are none; an empty list records that they were read.
|
|
74
|
+
hydrated[at] = { ...hydrated[at], entity: { ...entity, Bruce: { ...entity.Bruce, Attachment: (_b = (_a = entity.Bruce) === null || _a === void 0 ? void 0 : _a.Attachment) !== null && _b !== void 0 ? _b : [] } } };
|
|
69
75
|
}
|
|
70
76
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
// Entities that cannot be read keep their labels, just without attribute data.
|
|
80
|
+
}
|
|
75
81
|
}
|
|
76
82
|
return hydrated;
|
|
77
83
|
}
|
|
@@ -158,6 +164,10 @@ var EntityLabelGroup;
|
|
|
158
164
|
return null;
|
|
159
165
|
}
|
|
160
166
|
}
|
|
167
|
+
// How many entities one attachment read asks for.
|
|
168
|
+
const IMAGES_AT_ONCE = 100;
|
|
169
|
+
// How long on-screen requests gather before they are read together.
|
|
170
|
+
const IMAGES_GATHER = 60;
|
|
161
171
|
/*
|
|
162
172
|
* Owns membership independently of manual labelled states, with atomic replacement and stale-load cancellation.
|
|
163
173
|
*/
|
|
@@ -173,6 +183,12 @@ var EntityLabelGroup;
|
|
|
173
183
|
this.definitions = new Map();
|
|
174
184
|
this.visibility = new Map();
|
|
175
185
|
this.errors = new Map();
|
|
186
|
+
// Default image per entity, null once read and found to have none. Shared by every group.
|
|
187
|
+
this.images = new Map();
|
|
188
|
+
// Members whose labels came on screen and are waiting on, or being read for, their default image.
|
|
189
|
+
this.imagesQueued = new Set();
|
|
190
|
+
this.imagesAsking = new Set();
|
|
191
|
+
this.imagesTimer = null;
|
|
176
192
|
}
|
|
177
193
|
notify() {
|
|
178
194
|
try {
|
|
@@ -318,7 +334,7 @@ var EntityLabelGroup;
|
|
|
318
334
|
return false;
|
|
319
335
|
}
|
|
320
336
|
Resolve(entityId, menuItemId) {
|
|
321
|
-
var _a, _b, _c, _d, _e
|
|
337
|
+
var _a, _b, _c, _d, _e;
|
|
322
338
|
const ids = Array.from(this.members.get(entityId) || []).reverse();
|
|
323
339
|
for (const id of ids) {
|
|
324
340
|
const group = this.active.get(id);
|
|
@@ -328,61 +344,145 @@ var EntityLabelGroup;
|
|
|
328
344
|
if (group.definition.menuItemId && group.definition.menuItemId !== menuItemId) {
|
|
329
345
|
continue;
|
|
330
346
|
}
|
|
347
|
+
const options = this.compose(group, entityId, menuItemId);
|
|
331
348
|
const item = group.items.get(entityId);
|
|
332
|
-
const
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
try {
|
|
336
|
-
iconPriority = bruce_models_1.Calculator.GetNumber(iconPriority, entity);
|
|
337
|
-
}
|
|
338
|
-
catch {
|
|
339
|
-
iconPriority = null;
|
|
340
|
-
}
|
|
349
|
+
const image = (_a = this.images.get(entityId)) !== null && _a !== void 0 ? _a : (Array.isArray((_c = (_b = item.entity) === null || _b === void 0 ? void 0 : _b.Bruce) === null || _c === void 0 ? void 0 : _c.Attachment) ? entity_label_1.EntityLabel.GetDefaultImageUrl(item.entity, (_d = this.register.ApiGetters) === null || _d === void 0 ? void 0 : _d.GetBruceApi()) : null);
|
|
350
|
+
if (image && !entity_label_1.EntityLabel.HasIcon(options)) {
|
|
351
|
+
(_e = options.photo) !== null && _e !== void 0 ? _e : (options.photo = image);
|
|
341
352
|
}
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
+
return { groupId: id, options, item };
|
|
354
|
+
}
|
|
355
|
+
return null;
|
|
356
|
+
}
|
|
357
|
+
/*
|
|
358
|
+
* One member's label settings, with any image its own text links to but before its default image.
|
|
359
|
+
*/
|
|
360
|
+
compose(group, entityId, menuItemId) {
|
|
361
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
362
|
+
const item = group.items.get(entityId);
|
|
363
|
+
const entity = (_a = item.entity) !== null && _a !== void 0 ? _a : { Bruce: { ID: entityId, Name: item.text } };
|
|
364
|
+
let iconPriority = (_b = group.definition.options) === null || _b === void 0 ? void 0 : _b.iconPriority;
|
|
365
|
+
if (Array.isArray(iconPriority)) {
|
|
366
|
+
try {
|
|
367
|
+
iconPriority = bruce_models_1.Calculator.GetNumber(iconPriority, entity);
|
|
368
|
+
}
|
|
369
|
+
catch {
|
|
370
|
+
iconPriority = null;
|
|
353
371
|
}
|
|
354
|
-
|
|
355
|
-
|
|
372
|
+
}
|
|
373
|
+
let iconScale = (_c = group.definition.options) === null || _c === void 0 ? void 0 : _c.iconScale;
|
|
374
|
+
if (Array.isArray(iconScale)) {
|
|
375
|
+
try {
|
|
376
|
+
iconScale = bruce_models_1.Calculator.GetNumber(iconScale, entity);
|
|
356
377
|
}
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
const expression = Array.isArray(textSetting);
|
|
360
|
-
if (expression && !(resolvedText === null || resolvedText === void 0 ? void 0 : resolvedText.trim())) {
|
|
361
|
-
resolvedText = undefined;
|
|
378
|
+
catch {
|
|
379
|
+
iconScale = null;
|
|
362
380
|
}
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
381
|
+
if (!Number.isFinite(iconScale)) {
|
|
382
|
+
iconScale = 1;
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
if (iconScale != null) {
|
|
386
|
+
iconScale = Math.max(0, iconScale);
|
|
387
|
+
}
|
|
388
|
+
const textSetting = (_d = group.definition.options) === null || _d === void 0 ? void 0 : _d.text;
|
|
389
|
+
let resolvedText = resolveIcon(textSetting, entity);
|
|
390
|
+
const expression = Array.isArray(textSetting);
|
|
391
|
+
if (expression && !(resolvedText === null || resolvedText === void 0 ? void 0 : resolvedText.trim())) {
|
|
392
|
+
resolvedText = undefined;
|
|
393
|
+
}
|
|
394
|
+
const fallbackText = [item.text, (_e = entity.Bruce) === null || _e === void 0 ? void 0 : _e.Name, (_f = this.register.GetRego({ entityId, menuItemId })) === null || _f === void 0 ? void 0 : _f.name, entityId]
|
|
395
|
+
.find(text => typeof text === "string" && text.trim().length > 0);
|
|
396
|
+
const options = {
|
|
397
|
+
...group.definition.options,
|
|
398
|
+
text: resolvedText !== null && resolvedText !== void 0 ? resolvedText : fallbackText,
|
|
399
|
+
iconScale: iconScale,
|
|
400
|
+
icon: resolveIcon((_g = group.definition.options) === null || _g === void 0 ? void 0 : _g.icon, entity),
|
|
401
|
+
iconUrl: resolveIcon((_h = group.definition.options) === null || _h === void 0 ? void 0 : _h.iconUrl, entity),
|
|
402
|
+
iconClass: resolveIcon((_j = group.definition.options) === null || _j === void 0 ? void 0 : _j.iconClass, entity),
|
|
403
|
+
iconColor: resolveIcon((_k = group.definition.options) === null || _k === void 0 ? void 0 : _k.iconColor, entity),
|
|
404
|
+
iconBackground: (_l = group.definition.options) === null || _l === void 0 ? void 0 : _l.iconBackground,
|
|
405
|
+
iconPriority: Number.isFinite(iconPriority) ? iconPriority : item.iconPriority,
|
|
406
|
+
iconStatus: (_o = resolveIcon((_m = group.definition.options) === null || _m === void 0 ? void 0 : _m.iconStatus, entity)) !== null && _o !== void 0 ? _o : item.iconStatus
|
|
407
|
+
};
|
|
408
|
+
if (options.attributes && item.entity && !(expression && resolvedText != null)) {
|
|
409
|
+
options.text = [
|
|
410
|
+
(_r = (_p = options.text) !== null && _p !== void 0 ? _p : (_q = item.entity.Bruce) === null || _q === void 0 ? void 0 : _q.Name) !== null && _r !== void 0 ? _r : entityId,
|
|
411
|
+
...options.attributes.map(path => bruce_models_1.Entity.GetValue({ entity: item.entity, path })).filter(value => value != null).map(String)
|
|
412
|
+
].join("\n");
|
|
413
|
+
}
|
|
414
|
+
if (!entity_label_1.EntityLabel.HasIcon(options) && typeof options.text === "string") {
|
|
415
|
+
const lines = options.text.split("\n");
|
|
416
|
+
const at = lines.findIndex(line => entity_label_1.EntityLabel.IsImageUrl(line));
|
|
417
|
+
if (at >= 0) {
|
|
418
|
+
const [url] = lines.splice(at, 1);
|
|
419
|
+
options.text = lines.join("\n");
|
|
420
|
+
options.photo = url.trim();
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
return options;
|
|
424
|
+
}
|
|
425
|
+
/*
|
|
426
|
+
* Queues a member's default image once its label is on screen, so members out of view never cost a read.
|
|
427
|
+
* Requests arriving close together are read as one.
|
|
428
|
+
*/
|
|
429
|
+
RequestImage(entityId) {
|
|
430
|
+
var _a, _b, _c, _d, _e, _f;
|
|
431
|
+
const api = (_a = this.register.ApiGetters) === null || _a === void 0 ? void 0 : _a.GetBruceApi();
|
|
432
|
+
if (!api || !entityId || this.images.has(entityId) || this.imagesAsking.has(entityId)) {
|
|
433
|
+
return;
|
|
434
|
+
}
|
|
435
|
+
// Members read with their attachments already know their image, or that they have none.
|
|
436
|
+
for (const id of this.members.get(entityId) || []) {
|
|
437
|
+
if (Array.isArray((_e = (_d = (_c = (_b = this.active.get(id)) === null || _b === void 0 ? void 0 : _b.items.get(entityId)) === null || _c === void 0 ? void 0 : _c.entity) === null || _d === void 0 ? void 0 : _d.Bruce) === null || _e === void 0 ? void 0 : _e.Attachment)) {
|
|
438
|
+
return;
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
if (!this.members.has(entityId)) {
|
|
442
|
+
return;
|
|
443
|
+
}
|
|
444
|
+
this.imagesAsking.add(entityId);
|
|
445
|
+
this.imagesQueued.add(entityId);
|
|
446
|
+
(_f = this.imagesTimer) !== null && _f !== void 0 ? _f : (this.imagesTimer = setTimeout(() => {
|
|
447
|
+
this.imagesTimer = null;
|
|
448
|
+
this.readImages(api).catch(error => console.error("Label images could not be loaded", error));
|
|
449
|
+
}, IMAGES_GATHER));
|
|
450
|
+
}
|
|
451
|
+
async readImages(api) {
|
|
452
|
+
var _a, _b;
|
|
453
|
+
const ids = Array.from(this.imagesQueued);
|
|
454
|
+
this.imagesQueued.clear();
|
|
455
|
+
for (let start = 0; start < ids.length; start += IMAGES_AT_ONCE) {
|
|
456
|
+
const chunk = ids.slice(start, start + IMAGES_AT_ONCE);
|
|
457
|
+
let entities;
|
|
458
|
+
try {
|
|
459
|
+
entities = (_a = (await bruce_models_1.Entity.GetListByIds({ api, entityIds: chunk, expandAttachments: true, migrated: true })).entities) !== null && _a !== void 0 ? _a : [];
|
|
460
|
+
}
|
|
461
|
+
catch {
|
|
462
|
+
// Left unread, so the next label to come on screen for these members asks again.
|
|
463
|
+
entities = null;
|
|
464
|
+
}
|
|
465
|
+
if (this.register.Disposed) {
|
|
466
|
+
return;
|
|
467
|
+
}
|
|
468
|
+
const found = new Map((entities !== null && entities !== void 0 ? entities : []).map(entity => { var _a; return [(_a = entity === null || entity === void 0 ? void 0 : entity.Bruce) === null || _a === void 0 ? void 0 : _a.ID, entity_label_1.EntityLabel.GetDefaultImageUrl(entity, api)]; }));
|
|
469
|
+
const gained = [];
|
|
470
|
+
for (const id of chunk) {
|
|
471
|
+
if (!this.imagesAsking.delete(id) || !entities) {
|
|
472
|
+
continue;
|
|
473
|
+
}
|
|
474
|
+
const url = (_b = found.get(id)) !== null && _b !== void 0 ? _b : null;
|
|
475
|
+
this.images.set(id, url);
|
|
476
|
+
if (url) {
|
|
477
|
+
gained.push(id);
|
|
478
|
+
}
|
|
479
|
+
}
|
|
480
|
+
// Reconfigured in place rather than through refresh, which would drop a standalone label and redraw it.
|
|
481
|
+
if (gained.length) {
|
|
482
|
+
this.register.ForceUpdate({ entityIds: gained });
|
|
483
|
+
this.register.Viewer.scene.requestRender();
|
|
382
484
|
}
|
|
383
|
-
return { groupId: id, options, item };
|
|
384
485
|
}
|
|
385
|
-
return null;
|
|
386
486
|
}
|
|
387
487
|
RefreshEntity(entityId) {
|
|
388
488
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
@@ -440,6 +540,11 @@ var EntityLabelGroup;
|
|
|
440
540
|
}
|
|
441
541
|
this.unindex(id);
|
|
442
542
|
this.active.delete(id);
|
|
543
|
+
for (const entityId of group.items.keys()) {
|
|
544
|
+
if (!this.members.has(entityId)) {
|
|
545
|
+
this.images.delete(entityId);
|
|
546
|
+
}
|
|
547
|
+
}
|
|
443
548
|
this.refresh(new Set(group.items.keys()));
|
|
444
549
|
this.notify();
|
|
445
550
|
}
|
|
@@ -448,6 +553,7 @@ var EntityLabelGroup;
|
|
|
448
553
|
controller.abort();
|
|
449
554
|
}
|
|
450
555
|
this.pending.clear();
|
|
556
|
+
this.clearImages();
|
|
451
557
|
const affected = new Set(this.members.keys());
|
|
452
558
|
this.active.clear();
|
|
453
559
|
this.members.clear();
|
|
@@ -464,6 +570,7 @@ var EntityLabelGroup;
|
|
|
464
570
|
for (const label of this.standalone.values()) {
|
|
465
571
|
label.Dispose();
|
|
466
572
|
}
|
|
573
|
+
this.clearImages();
|
|
467
574
|
this.pending.clear();
|
|
468
575
|
this.standalone.clear();
|
|
469
576
|
this.standaloneItems.clear();
|
|
@@ -473,6 +580,13 @@ var EntityLabelGroup;
|
|
|
473
580
|
this.visibility.clear();
|
|
474
581
|
this.errors.clear();
|
|
475
582
|
}
|
|
583
|
+
clearImages() {
|
|
584
|
+
clearTimeout(this.imagesTimer);
|
|
585
|
+
this.imagesTimer = null;
|
|
586
|
+
this.imagesQueued.clear();
|
|
587
|
+
this.imagesAsking.clear();
|
|
588
|
+
this.images.clear();
|
|
589
|
+
}
|
|
476
590
|
unindex(groupId) {
|
|
477
591
|
var _a;
|
|
478
592
|
for (const id of ((_a = this.active.get(groupId)) === null || _a === void 0 ? void 0 : _a.items.keys()) || []) {
|