bruce-cesium 7.6.1 → 7.6.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.
Files changed (95) hide show
  1. package/dist/bruce-cesium.es5.js +2535 -385
  2. package/dist/bruce-cesium.es5.js.map +1 -1
  3. package/dist/bruce-cesium.umd.js +2524 -382
  4. package/dist/bruce-cesium.umd.js.map +1 -1
  5. package/dist/lib/bruce-cesium.js +3 -1
  6. package/dist/lib/bruce-cesium.js.map +1 -1
  7. package/dist/lib/rendering/cesium-animated-property.js +63 -107
  8. package/dist/lib/rendering/cesium-animated-property.js.map +1 -1
  9. package/dist/lib/rendering/entity-gatherer.js +11 -3
  10. package/dist/lib/rendering/entity-gatherer.js.map +1 -1
  11. package/dist/lib/rendering/menu-item-creator.js +44 -23
  12. package/dist/lib/rendering/menu-item-creator.js.map +1 -1
  13. package/dist/lib/rendering/menu-item-manager.js +199 -17
  14. package/dist/lib/rendering/menu-item-manager.js.map +1 -1
  15. package/dist/lib/rendering/menu-item-styles.js +151 -0
  16. package/dist/lib/rendering/menu-item-styles.js.map +1 -0
  17. package/dist/lib/rendering/relation-render-engine.js +24 -5
  18. package/dist/lib/rendering/relation-render-engine.js.map +1 -1
  19. package/dist/lib/rendering/render-managers/common/entity-label-group.js +13 -9
  20. package/dist/lib/rendering/render-managers/common/entity-label-group.js.map +1 -1
  21. package/dist/lib/rendering/render-managers/common/entity-label.js +68 -7
  22. package/dist/lib/rendering/render-managers/common/entity-label.js.map +1 -1
  23. package/dist/lib/rendering/render-managers/common/entity-rerender-maintain-state.js +44 -5
  24. package/dist/lib/rendering/render-managers/common/entity-rerender-maintain-state.js.map +1 -1
  25. package/dist/lib/rendering/render-managers/common/entity-simulation.js +483 -0
  26. package/dist/lib/rendering/render-managers/common/entity-simulation.js.map +1 -0
  27. package/dist/lib/rendering/render-managers/common/historic-trail.js +123 -0
  28. package/dist/lib/rendering/render-managers/common/historic-trail.js.map +1 -0
  29. package/dist/lib/rendering/render-managers/common/historic-utils.js +17 -6
  30. package/dist/lib/rendering/render-managers/common/historic-utils.js.map +1 -1
  31. package/dist/lib/rendering/render-managers/entities/entities-datalab-render-manager.js +13 -2
  32. package/dist/lib/rendering/render-managers/entities/entities-datalab-render-manager.js.map +1 -1
  33. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +20 -2
  34. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js.map +1 -1
  35. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js +13 -2
  36. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js.map +1 -1
  37. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js +66 -5
  38. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js.map +1 -1
  39. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js +11 -1
  40. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js.map +1 -1
  41. package/dist/lib/rendering/render-managers/other/assembly-render-manager.js +745 -106
  42. package/dist/lib/rendering/render-managers/other/assembly-render-manager.js.map +1 -1
  43. package/dist/lib/rendering/render-managers/other/legacy-relations-render-manager.js +23 -1
  44. package/dist/lib/rendering/render-managers/other/legacy-relations-render-manager.js.map +1 -1
  45. package/dist/lib/rendering/render-managers/other/relations-render-manager.js +23 -1
  46. package/dist/lib/rendering/render-managers/other/relations-render-manager.js.map +1 -1
  47. package/dist/lib/rendering/render-managers/render-manager.js.map +1 -1
  48. package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js +19 -0
  49. package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js.map +1 -1
  50. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +145 -40
  51. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +1 -1
  52. package/dist/lib/rendering/render-managers/tilesets/tileset-entities-render-manager.js +18 -0
  53. package/dist/lib/rendering/render-managers/tilesets/tileset-entities-render-manager.js.map +1 -1
  54. package/dist/lib/rendering/tileset-styler.js +1 -1
  55. package/dist/lib/rendering/tileset-styler.js.map +1 -1
  56. package/dist/lib/rendering/visual-register-culler.js +2 -0
  57. package/dist/lib/rendering/visual-register-culler.js.map +1 -1
  58. package/dist/lib/rendering/visuals-register.js +89 -20
  59. package/dist/lib/rendering/visuals-register.js.map +1 -1
  60. package/dist/lib/utils/entity-utils.js +43 -2
  61. package/dist/lib/utils/entity-utils.js.map +1 -1
  62. package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab-menu-items.js +64 -12
  63. package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab-menu-items.js.map +1 -1
  64. package/dist/lib/widgets/widget-info-view.js +20 -7
  65. package/dist/lib/widgets/widget-info-view.js.map +1 -1
  66. package/dist/types/bruce-cesium.d.ts +3 -1
  67. package/dist/types/rendering/cesium-animated-property.d.ts +8 -6
  68. package/dist/types/rendering/entity-gatherer.d.ts +6 -1
  69. package/dist/types/rendering/menu-item-manager.d.ts +58 -1
  70. package/dist/types/rendering/menu-item-styles.d.ts +30 -0
  71. package/dist/types/rendering/relation-render-engine.d.ts +10 -0
  72. package/dist/types/rendering/render-managers/common/entity-label-group.d.ts +3 -2
  73. package/dist/types/rendering/render-managers/common/entity-label.d.ts +4 -0
  74. package/dist/types/rendering/render-managers/common/entity-rerender-maintain-state.d.ts +20 -0
  75. package/dist/types/rendering/render-managers/common/entity-simulation.d.ts +126 -0
  76. package/dist/types/rendering/render-managers/common/historic-trail.d.ts +30 -0
  77. package/dist/types/rendering/render-managers/common/historic-utils.d.ts +4 -0
  78. package/dist/types/rendering/render-managers/entities/entities-datalab-render-manager.d.ts +7 -1
  79. package/dist/types/rendering/render-managers/entities/entities-ids-render-manager.d.ts +7 -1
  80. package/dist/types/rendering/render-managers/entities/entities-loaded-render-manager.d.ts +7 -1
  81. package/dist/types/rendering/render-managers/entities/entities-render-manager.d.ts +10 -1
  82. package/dist/types/rendering/render-managers/entities/entity-render-manager.d.ts +7 -1
  83. package/dist/types/rendering/render-managers/other/assembly-render-manager.d.ts +79 -2
  84. package/dist/types/rendering/render-managers/other/legacy-relations-render-manager.d.ts +5 -0
  85. package/dist/types/rendering/render-managers/other/relations-render-manager.d.ts +5 -0
  86. package/dist/types/rendering/render-managers/render-manager.d.ts +14 -1
  87. package/dist/types/rendering/render-managers/tilesets/tileset-arb-render-manager.d.ts +8 -1
  88. package/dist/types/rendering/render-managers/tilesets/tileset-cad-render-manager.d.ts +16 -2
  89. package/dist/types/rendering/render-managers/tilesets/tileset-entities-render-manager.d.ts +8 -1
  90. package/dist/types/rendering/tileset-styler.d.ts +2 -0
  91. package/dist/types/rendering/visuals-register.d.ts +13 -0
  92. package/dist/types/utils/entity-utils.d.ts +6 -0
  93. package/dist/types/widgets/tabs-left-panel/widget-left-panel-tab-menu-items.d.ts +1 -0
  94. package/dist/types/widgets/widget-info-view.d.ts +1 -0
  95. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"entity-gatherer.js","sourceRoot":"","sources":["../../../src/rendering/entity-gatherer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-gatherer.js","sourceRoot":"","sources":["../../../src/rendering/entity-gatherer.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MenuItemCreator = void 0;
4
4
  const bruce_models_1 = require("bruce-models");
5
5
  const viewer_utils_1 = require("../viewer/viewer-utils");
6
+ const menu_item_styles_1 = require("./menu-item-styles");
6
7
  /**
7
8
  * Utility to help generate menu items for rendering various data.
8
9
  */
@@ -304,33 +305,50 @@ var MenuItemCreator;
304
305
  }
305
306
  const renderedItemIds = [];
306
307
  if ((menuItems === null || menuItems === void 0 ? void 0 : menuItems.length) && (enabledIds === null || enabledIds === void 0 ? void 0 : enabledIds.length)) {
307
- const traverseItems = async (item) => {
308
+ const alternateItems = (item) => {
309
+ var _a, _b, _c, _d;
310
+ // The project view menu item contains the instruction to enable tags, the bookmark specifies which ones.
311
+ if (item.Type == bruce_models_1.MenuItem.EType.Entities && ((_a = item.BruceEntity) === null || _a === void 0 ? void 0 : _a.ExpandLayers)) {
312
+ const eItem = item;
313
+ // A setting the bookmark leaves out gets the view's own value back, not the last bookmark's.
314
+ const authored = manager.GetAuthoredAlternation(item);
315
+ const eItemAlt = alternations[item.id];
316
+ const tags = (_b = eItemAlt === null || eItemAlt === void 0 ? void 0 : eItemAlt.BruceEntity) === null || _b === void 0 ? void 0 : _b.SelectedExpandLayers;
317
+ eItem.BruceEntity = {
318
+ ...eItem.BruceEntity,
319
+ SelectedExpandLayers: tags !== undefined ? tags : (_c = authored.BruceEntity) === null || _c === void 0 ? void 0 : _c.SelectedExpandLayers,
320
+ };
321
+ }
322
+ else if (item.Type == bruce_models_1.MenuItem.EType.EntityTileset) {
323
+ const tItem = item;
324
+ const authored = manager.GetAuthoredAlternation(item);
325
+ const tItemAlt = alternations[item.id];
326
+ const hasAttenuation = (tItemAlt === null || tItemAlt === void 0 ? void 0 : tItemAlt.attenuation) !== undefined || (tItemAlt === null || tItemAlt === void 0 ? void 0 : tItemAlt.attenuationMax) !== undefined;
327
+ const source = hasAttenuation ? tItemAlt : authored;
328
+ tItem.attenuation = source.attenuation;
329
+ tItem.attenuationMax = source.attenuationMax;
330
+ }
331
+ (_d = item.Children) === null || _d === void 0 ? void 0 : _d.forEach(alternateItems);
332
+ };
333
+ /*
334
+ * Lays each picked style over a copy, so it never stays on the view's item for a later bookmark.
335
+ */
336
+ const styleItems = (item) => {
308
337
  var _a;
309
- if (alternations[item.id]) {
310
- // The only alternation we support right now is tag menu item ones.
311
- // The project view menu item contains the instruction to enable tags, the bookmark specifies which ones.
312
- if (item.Type == bruce_models_1.MenuItem.EType.Entities) {
313
- const eItem = item;
314
- if (eItem.BruceEntity.ExpandLayers) {
315
- const eItemAlt = alternations[item.id];
316
- eItem.BruceEntity = {
317
- ...eItem.BruceEntity,
318
- SelectedExpandLayers: (_a = eItemAlt.BruceEntity) === null || _a === void 0 ? void 0 : _a.SelectedExpandLayers,
319
- };
320
- }
321
- }
322
- else if (item.Type == bruce_models_1.MenuItem.EType.EntityTileset) {
323
- const tItem = item;
324
- const tItemAlt = alternations[item.id];
325
- tItem.attenuation = tItemAlt.attenuation;
326
- tItem.attenuationMax = tItemAlt.attenuationMax;
327
- }
338
+ let next = alternations[item.id] ? menu_item_styles_1.MenuItemStyles.ApplyAlternation(item, alternations[item.id]) : item;
339
+ const children = (_a = item.Children) === null || _a === void 0 ? void 0 : _a.map(styleItems);
340
+ if (children === null || children === void 0 ? void 0 : children.some((child, i) => child !== item.Children[i])) {
341
+ next = { ...next, Children: children };
328
342
  }
343
+ return next;
344
+ };
345
+ const traverseItems = async (item) => {
329
346
  if (enabledIds.includes(item.id)) {
330
347
  const itemId = await manager.RenderItem({
331
348
  item: item,
332
349
  getters: getters,
333
- modelSpace: contentType === bruce_models_1.ProjectViewBookmark.EContentType.WEB_3D_MODEL_SPACE
350
+ modelSpace: contentType === bruce_models_1.ProjectViewBookmark.EContentType.WEB_3D_MODEL_SPACE,
351
+ preferredIds: enabledIds
334
352
  });
335
353
  renderedItemIds.push(itemId);
336
354
  }
@@ -340,8 +358,11 @@ var MenuItemCreator;
340
358
  }
341
359
  }
342
360
  };
343
- for (let i = 0; i < menuItems.length; i++) {
344
- await traverseItems(menuItems[i]);
361
+ // Tag and attenuation alternations write into the view's items, since Navigator's tag tree reads them back.
362
+ menuItems.forEach(alternateItems);
363
+ const styled = menuItems.map(styleItems);
364
+ for (let i = 0; i < styled.length; i++) {
365
+ await traverseItems(styled[i]);
345
366
  }
346
367
  }
347
368
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item-creator.js","sourceRoot":"","sources":["../../../src/rendering/menu-item-creator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menu-item-creator.js","sourceRoot":"","sources":["../../../src/rendering/menu-item-creator.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ const tileset_cad_render_manager_1 = require("./render-managers/tilesets/tileset
11
11
  const entities_datalab_render_manager_1 = require("./render-managers/entities/entities-datalab-render-manager");
12
12
  const shared_getters_1 = require("./render-managers/common/shared-getters");
13
13
  const shared_getters_historic_1 = require("./render-managers/common/shared-getters-historic");
14
+ const entity_simulation_1 = require("./render-managers/common/entity-simulation");
14
15
  const cesium_view_monitor_1 = require("../viewer/cesium-view-monitor");
15
16
  const tileset_osm_render_manager_1 = require("./render-managers/tilesets/tileset-osm-render-manager");
16
17
  const tileset_entities_render_manager_1 = require("./render-managers/tilesets/tileset-entities-render-manager");
@@ -24,6 +25,7 @@ const data_source_static_csv_manager_1 = require("./render-managers/data-source/
24
25
  const tileset_i3s_render_manager_1 = require("./render-managers/tilesets/tileset-i3s-render-manager");
25
26
  const google_search_render_manager_1 = require("./render-managers/other/google-search-render-manager");
26
27
  const assembly_render_manager_1 = require("./render-managers/other/assembly-render-manager");
28
+ const menu_item_styles_1 = require("./menu-item-styles");
27
29
  /**
28
30
  * Util to batch Tileset and Root Entity coord requests between Menu Items.
29
31
  * This avoids per-menu-item requests and allows for them to request together if enabled within N ms of each other.
@@ -259,12 +261,17 @@ var MenuItemManager;
259
261
  this.OnSeriesUpdated.Trigger({ itemId, segments: [] });
260
262
  }
261
263
  }
264
+ get Simulation() {
265
+ return this.simulation;
266
+ }
262
267
  get Monitor() {
263
268
  return this.sharedMonitor;
264
269
  }
265
270
  constructor(params) {
266
271
  this.items = [];
267
272
  this.pendingHandoffPool = [];
273
+ // The settings bookmark alternations overwrite on a view's items, as that view authored them.
274
+ this.authoredAlternations = new WeakMap();
268
275
  this.onUpdate = null;
269
276
  // Segments discovered so far per menu item ID.
270
277
  this.seriesSegments = new Map();
@@ -284,6 +291,7 @@ var MenuItemManager;
284
291
  this.visualsRegister = visualsRegister;
285
292
  this.sharedGetters = new shared_getters_1.SharedGetters.Cache();
286
293
  this.sharedHistoric = new shared_getters_historic_1.SharedHistoricGetters.Cache();
294
+ this.simulation = entity_simulation_1.EntitySimulation.Get(this.viewer);
287
295
  this.sharedMonitor = new cesium_view_monitor_1.CesiumViewMonitor.Monitor(this.viewer);
288
296
  this.tilesetInitQueue = new InitQueueTileset(this.getters);
289
297
  }
@@ -319,7 +327,7 @@ var MenuItemManager;
319
327
  * @returns
320
328
  */
321
329
  RenderItem(params) {
322
- var _a, _b, _c, _d, _e, _f, _g;
330
+ var _a, _b, _c, _d, _e, _f, _g, _h;
323
331
  if (this.viewer.isDestroyed()) {
324
332
  return null;
325
333
  }
@@ -343,13 +351,21 @@ var MenuItemManager;
343
351
  if (params.modelSpace == null) {
344
352
  params.modelSpace = false;
345
353
  }
354
+ // An item with a style set renders its first style unless the caller already picked one of them.
355
+ params = { ...params, item: menu_item_styles_1.MenuItemStyles.Resolve(params.item) };
346
356
  let rItem = this.items.find(x => x.id == params.item.id);
347
357
  let create = true;
348
358
  // Item already exists so we'll check if we should re-create it.
349
359
  if (rItem) {
360
+ // Only the picked style changed, so what is drawn gets restyled rather than rebuilt.
361
+ if (menu_item_styles_1.MenuItemStyles.IsStyleChangeOnly(rItem.item, params.item) && this.isStyleSwapCapable(rItem.renderManager)) {
362
+ rItem.renderManager.SwapStyle(params.item);
363
+ rItem.item = params.item;
364
+ create = false;
365
+ }
350
366
  // This means we're updating an entities menu item re-using the same id.
351
367
  // Eg: a bookmark swap that keeps the same item but changes tags, style, or zoom settings.
352
- if (rItem.type == bruce_models_1.MenuItem.EType.Entities && params.item.Type == bruce_models_1.MenuItem.EType.Entities) {
368
+ else if (rItem.type == bruce_models_1.MenuItem.EType.Entities && params.item.Type == bruce_models_1.MenuItem.EType.Entities) {
353
369
  rItem.renderManager.Init({
354
370
  item: params.item,
355
371
  });
@@ -497,7 +513,8 @@ var MenuItemManager;
497
513
  monitor: this.sharedMonitor,
498
514
  item: params.item,
499
515
  sharedGetters: this.sharedGetters,
500
- onSeriesDiscovered: (segment) => this.RecordSeriesSegment(rItem.id, segment)
516
+ onSeriesDiscovered: (segment) => this.RecordSeriesSegment(rItem.id, segment),
517
+ simulation: this.simulation
501
518
  });
502
519
  break;
503
520
  case bruce_models_1.MenuItem.EType.EntitiesLoaded:
@@ -506,7 +523,8 @@ var MenuItemManager;
506
523
  register: this.visualsRegister,
507
524
  apiGetter: params.apiGetter,
508
525
  monitor: this.sharedMonitor,
509
- item: params.item
526
+ item: params.item,
527
+ simulation: this.simulation
510
528
  });
511
529
  break;
512
530
  case bruce_models_1.MenuItem.EType.EntitiesIds:
@@ -516,7 +534,8 @@ var MenuItemManager;
516
534
  apiGetter: params.apiGetter,
517
535
  monitor: this.sharedMonitor,
518
536
  item: params.item,
519
- sharedHistoric: this.sharedHistoric
537
+ sharedHistoric: this.sharedHistoric,
538
+ simulation: this.simulation
520
539
  });
521
540
  break;
522
541
  case bruce_models_1.MenuItem.EType.Entity:
@@ -525,7 +544,8 @@ var MenuItemManager;
525
544
  register: this.visualsRegister,
526
545
  apiGetter: params.apiGetter,
527
546
  monitor: this.sharedMonitor,
528
- item: params.item
547
+ item: params.item,
548
+ simulation: this.simulation
529
549
  });
530
550
  break;
531
551
  case bruce_models_1.MenuItem.EType.CadTileset:
@@ -535,7 +555,8 @@ var MenuItemManager;
535
555
  getters: this.getters,
536
556
  item: params.item,
537
557
  modelSpace: params.modelSpace,
538
- initQueue: this.tilesetInitQueue
558
+ initQueue: this.tilesetInitQueue,
559
+ simulation: this.simulation
539
560
  });
540
561
  break;
541
562
  case bruce_models_1.MenuItem.EType.Assembly:
@@ -545,6 +566,7 @@ var MenuItemManager;
545
566
  getters: params.getters,
546
567
  item: params.item,
547
568
  modelSpace: params.modelSpace,
569
+ simulation: this.simulation
548
570
  });
549
571
  break;
550
572
  case bruce_models_1.MenuItem.EType.Osm:
@@ -572,7 +594,8 @@ var MenuItemManager;
572
594
  getters: this.getters,
573
595
  monitor: this.sharedMonitor,
574
596
  item: params.item,
575
- initQueue: this.tilesetInitQueue
597
+ initQueue: this.tilesetInitQueue,
598
+ simulation: this.simulation
576
599
  });
577
600
  break;
578
601
  case bruce_models_1.MenuItem.EType.Kml:
@@ -596,7 +619,8 @@ var MenuItemManager;
596
619
  getters: params.getters,
597
620
  item: params.item,
598
621
  viewer: this.viewer,
599
- register: this.visualsRegister
622
+ register: this.visualsRegister,
623
+ simulation: this.simulation
600
624
  });
601
625
  break;
602
626
  // Deprecated to support a few demos until new one is phased in.
@@ -606,7 +630,8 @@ var MenuItemManager;
606
630
  apiGetter: params.apiGetter,
607
631
  item: params.item,
608
632
  register: this.visualsRegister,
609
- viewer: this.viewer
633
+ viewer: this.viewer,
634
+ simulation: this.simulation
610
635
  });
611
636
  break;
612
637
  case bruce_models_1.MenuItem.EType.Relationships:
@@ -614,7 +639,8 @@ var MenuItemManager;
614
639
  apiGetter: params.apiGetter,
615
640
  item: params.item,
616
641
  register: this.visualsRegister,
617
- viewer: this.viewer
642
+ viewer: this.viewer,
643
+ simulation: this.simulation
618
644
  });
619
645
  break;
620
646
  case bruce_models_1.MenuItem.EType.GooglePhotoTileset:
@@ -646,7 +672,8 @@ var MenuItemManager;
646
672
  item: params.item,
647
673
  apiGetter: params.apiGetter,
648
674
  monitor: this.sharedMonitor,
649
- visualsRegister: this.visualsRegister
675
+ visualsRegister: this.visualsRegister,
676
+ simulation: this.simulation
650
677
  });
651
678
  break;
652
679
  // Any "none" type can be ignored. These are just containers for other items.
@@ -673,7 +700,17 @@ var MenuItemManager;
673
700
  // We no longer support folder items being both a folder and an action.
674
701
  // Now an item must have no action to be a folder.
675
702
  const isFolder = !params.item.Type || params.item.Type == bruce_models_1.MenuItem.EType.None;
676
- if (params.item.Children && params.recursive != false && isFolder) {
703
+ const isRadioFolder = isFolder && Boolean(params.item.childrenAsRadios);
704
+ if (((_f = params.item.Children) === null || _f === void 0 ? void 0 : _f.length) && params.recursive != false && isRadioFolder) {
705
+ const picked = this.pickRadioChild(params.item.Children, params.preferredIds);
706
+ const others = params.item.Children.filter(x => x !== picked && this.items.some(y => y.id === x.id));
707
+ const childId = this.renderInPlaceOf(others.map(x => x.id), () => this.RenderItem({
708
+ ...params,
709
+ item: picked
710
+ }));
711
+ rItem.childIds = childId ? [childId] : [];
712
+ }
713
+ else if (params.item.Children && params.recursive != false && isFolder) {
677
714
  for (let i = 0; i < params.item.Children.length; i++) {
678
715
  const childId = this.RenderItem({
679
716
  ...params,
@@ -682,8 +719,8 @@ var MenuItemManager;
682
719
  rItem.childIds.push(childId);
683
720
  }
684
721
  }
685
- if (rItem.renderManager && !((_f = rItem.renderManager) === null || _f === void 0 ? void 0 : _f.Disposed)) {
686
- (_g = this.onUpdate) === null || _g === void 0 ? void 0 : _g.Trigger({ isEnabling: true, itemId: rItem.id });
722
+ if (rItem.renderManager && !((_g = rItem.renderManager) === null || _g === void 0 ? void 0 : _g.Disposed)) {
723
+ (_h = this.onUpdate) === null || _h === void 0 ? void 0 : _h.Trigger({ isEnabling: true, itemId: rItem.id });
687
724
  }
688
725
  return rItem.id;
689
726
  }
@@ -732,9 +769,74 @@ var MenuItemManager;
732
769
  (_b = this.onUpdate) === null || _b === void 0 ? void 0 : _b.Trigger({ isEnabling: false, itemId: item.id });
733
770
  }
734
771
  }
772
+ /**
773
+ * Replaces enabled menu items with another, which reuses their graphics where both draw the same data.
774
+ */
775
+ SwapItem(params) {
776
+ const { fromIds, item, modelSpace } = params;
777
+ const parents = this.items.filter(x => x.childIds.some(id => fromIds.includes(id)));
778
+ const id = this.renderInPlaceOf(fromIds, () => this.RenderItem({
779
+ item,
780
+ modelSpace
781
+ }));
782
+ // Keeps a radio folder's removal reaching the child that replaced its old one.
783
+ for (const parent of parents) {
784
+ const kept = parent.childIds.filter(x => !fromIds.includes(x));
785
+ parent.childIds = id && !kept.includes(id) ? kept.concat(id) : kept;
786
+ }
787
+ return id;
788
+ }
789
+ /**
790
+ * Restyles an enabled menu item in place with another of its own styles, returning false when it cannot.
791
+ */
792
+ SetItemStyle(params) {
793
+ var _a;
794
+ const { menuItemId, styleId } = params;
795
+ const rItem = this.items.find(x => x.id === menuItemId);
796
+ if (!rItem || !this.isStyleSwapCapable(rItem.renderManager) || rItem.renderManager.Disposed) {
797
+ return false;
798
+ }
799
+ const next = menu_item_styles_1.MenuItemStyles.WithStyleId(rItem.item, styleId);
800
+ if (!next) {
801
+ return false;
802
+ }
803
+ rItem.renderManager.SwapStyle(next);
804
+ rItem.item = next;
805
+ (_a = this.onUpdate) === null || _a === void 0 ? void 0 : _a.Trigger({ isEnabling: true, itemId: rItem.id });
806
+ return true;
807
+ }
808
+ /*
809
+ * Picks the child the caller asked for, else the one already enabled, else the first.
810
+ */
811
+ pickRadioChild(children, preferredIds) {
812
+ var _a, _b;
813
+ return ((_b = (_a = children.find(x => preferredIds === null || preferredIds === void 0 ? void 0 : preferredIds.includes(x.id))) !== null && _a !== void 0 ? _a : children.find(x => this.items.some(y => y.id === x.id))) !== null && _b !== void 0 ? _b : children[0]);
814
+ }
815
+ /*
816
+ * Removes the items so the render can claim their graphics, then disposes whatever it left unclaimed.
817
+ */
818
+ renderInPlaceOf(removeIds, render) {
819
+ const pooledBefore = new Set(this.pendingHandoffPool);
820
+ for (const id of removeIds) {
821
+ this.RemoveItemById({
822
+ menuItemId: id,
823
+ allowHandoff: true
824
+ });
825
+ }
826
+ const pooled = this.pendingHandoffPool.filter(x => !pooledBefore.has(x));
827
+ try {
828
+ return render();
829
+ }
830
+ finally {
831
+ this.disposePooled(x => pooled.includes(x));
832
+ }
833
+ }
735
834
  isHandoffCapable(renderManager) {
736
835
  return Boolean(renderManager) && typeof renderManager.PrepareHandoff === "function";
737
836
  }
837
+ isStyleSwapCapable(renderManager) {
838
+ return Boolean(renderManager) && typeof renderManager.SwapStyle === "function";
839
+ }
738
840
  // Resolves the hand-off key a menu item's data would have.
739
841
  computeHandoffKey(item, modelSpace) {
740
842
  if (item.Type === bruce_models_1.MenuItem.EType.CadTileset) {
@@ -810,12 +912,15 @@ var MenuItemManager;
810
912
  }
811
913
  // Disposes everything left unclaimed in the pending-hand-off pool.
812
914
  FlushPendingHandoffs() {
915
+ this.disposePooled(() => true);
916
+ }
917
+ disposePooled(match) {
813
918
  var _a;
814
919
  if (!this.pendingHandoffPool.length) {
815
920
  return;
816
921
  }
817
- const pool = this.pendingHandoffPool;
818
- this.pendingHandoffPool = [];
922
+ const pool = this.pendingHandoffPool.filter(match);
923
+ this.pendingHandoffPool = this.pendingHandoffPool.filter(x => !match(x));
819
924
  for (const item of pool) {
820
925
  try {
821
926
  (_a = item.renderManager) === null || _a === void 0 ? void 0 : _a.Dispose();
@@ -826,6 +931,26 @@ var MenuItemManager;
826
931
  this.ClearSeriesSegments(item.id);
827
932
  }
828
933
  }
934
+ /**
935
+ * Returns the tags and attenuation the item's view authored, before any bookmark wrote over them.
936
+ */
937
+ GetAuthoredAlternation(item) {
938
+ var _a;
939
+ let authored = this.authoredAlternations.get(item);
940
+ if (!authored) {
941
+ const eItem = item;
942
+ const tItem = item;
943
+ authored = JSON.parse(JSON.stringify({
944
+ id: item.id,
945
+ Type: item.Type,
946
+ BruceEntity: { SelectedExpandLayers: (_a = eItem.BruceEntity) === null || _a === void 0 ? void 0 : _a.SelectedExpandLayers },
947
+ attenuation: tItem.attenuation,
948
+ attenuationMax: tItem.attenuationMax
949
+ }));
950
+ this.authoredAlternations.set(item, authored);
951
+ }
952
+ return authored;
953
+ }
829
954
  GetEnabledItemIds() {
830
955
  return this.items.map(x => x.id);
831
956
  }
@@ -859,6 +984,63 @@ var MenuItemManager;
859
984
  }
860
985
  }
861
986
  }
987
+ /**
988
+ * Draws Entities from data given here as well as, or instead of, the API's, until ClearSimulation is called.
989
+ * @param params.set the simulation this belongs to, so it can be cleared apart from others. Default "default".
990
+ * @param params.entities stand-ins that replace each Entity's record; API data for them is ignored.
991
+ * @param params.patches partial Entities laid over each Entity; live API data shows where a patch is silent.
992
+ * @param params.records historic records naming entityId, dateTime and only the data they change.
993
+ * @param params.menuItemIds the items to redraw. By default every item already drawing one of the Entities.
994
+ */
995
+ async Simulate(params) {
996
+ const { set, entities, patches, records, menuItemIds } = params;
997
+ this.simulation.SetEntities(entities, set);
998
+ this.simulation.SetPatches(patches, set);
999
+ this.simulation.SetRecords(records, set);
1000
+ const entityIds = [
1001
+ ...(entities || []).map(x => { var _a; return (_a = x === null || x === void 0 ? void 0 : x.Bruce) === null || _a === void 0 ? void 0 : _a.ID; }),
1002
+ ...(patches || []).map(x => { var _a; return (_a = x === null || x === void 0 ? void 0 : x.Bruce) === null || _a === void 0 ? void 0 : _a.ID; }),
1003
+ ...(records || []).map(x => x === null || x === void 0 ? void 0 : x.entityId)
1004
+ ];
1005
+ await this.reRenderSimulated(entityIds, menuItemIds);
1006
+ }
1007
+ /**
1008
+ * Stops simulating these Entities, or every Entity when none are named, and redraws them.
1009
+ * @param params.set the simulation to clear. By default every one.
1010
+ * @param params.entities clear the stand-ins and patches. Default true.
1011
+ * @param params.records clear the historic records. Default true.
1012
+ */
1013
+ async ClearSimulation(params) {
1014
+ var _a;
1015
+ const entityIds = (_a = params === null || params === void 0 ? void 0 : params.entityIds) !== null && _a !== void 0 ? _a : [
1016
+ ...this.simulation.GetEntityIds(),
1017
+ ...this.simulation.GetRecordEntityIds()
1018
+ ];
1019
+ this.simulation.Clear({ set: params === null || params === void 0 ? void 0 : params.set, entityIds, entities: params === null || params === void 0 ? void 0 : params.entities, records: params === null || params === void 0 ? void 0 : params.records });
1020
+ await this.reRenderSimulated(entityIds, params === null || params === void 0 ? void 0 : params.menuItemIds);
1021
+ }
1022
+ /*
1023
+ * Redraws simulated Entities only in the items holding a visual for them, unless the caller names the items.
1024
+ */
1025
+ async reRenderSimulated(entityIds, menuItemIds) {
1026
+ const ids = Array.from(new Set(entityIds.filter(x => !!x)));
1027
+ if (!ids.length) {
1028
+ return;
1029
+ }
1030
+ const items = (menuItemIds === null || menuItemIds === void 0 ? void 0 : menuItemIds.length) ? this.items.filter(x => menuItemIds.includes(x.id)) : this.items;
1031
+ for (const item of items) {
1032
+ // Some managers follow the store themselves, and redrawing them here would only repeat that.
1033
+ if (!item.renderManager || item.renderManager.FollowsSimulation) {
1034
+ continue;
1035
+ }
1036
+ const drawn = (menuItemIds === null || menuItemIds === void 0 ? void 0 : menuItemIds.length)
1037
+ ? ids
1038
+ : ids.filter(id => this.visualsRegister.GetRego({ entityId: id, menuItemId: item.id }));
1039
+ if (drawn.length) {
1040
+ await item.renderManager.ReRender({ entityIds: drawn, force: true });
1041
+ }
1042
+ }
1043
+ }
862
1044
  }
863
1045
  MenuItemManager.Manager = Manager;
864
1046
  })(MenuItemManager = exports.MenuItemManager || (exports.MenuItemManager = {}));