bruce-cesium 4.7.2 → 4.7.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.
@@ -69,5 +69,5 @@ __exportStar(require("./widgets/controls-view-bar/widget-control-view-bar-search
69
69
  __exportStar(require("./widgets/widget-left-panel"), exports);
70
70
  __exportStar(require("./widgets/tabs-left-panel/widget-left-panel-tab"), exports);
71
71
  __exportStar(require("./widgets/tabs-left-panel/widget-left-panel-tab-bookmarks"), exports);
72
- exports.VERSION = "4.7.2";
72
+ exports.VERSION = "4.7.3";
73
73
  //# sourceMappingURL=bruce-cesium.js.map
@@ -0,0 +1,219 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.DataLabRenderManager = void 0;
40
+ var bruce_models_1 = require("bruce-models");
41
+ var entity_render_engine_1 = require("../../entity-render-engine");
42
+ var batched_data_getter_1 = require("../../getters/batched-data-getter");
43
+ var DataLabRenderManager;
44
+ (function (DataLabRenderManager) {
45
+ var Manager = /** @class */ (function () {
46
+ function Manager(params) {
47
+ this.getter = null;
48
+ this.disposed = false;
49
+ var viewer = params.viewer, item = params.item, apiGetter = params.apiGetter, monitor = params.monitor, visualsRegister = params.visualsRegister;
50
+ this.viewer = viewer;
51
+ this.item = item;
52
+ this.apiGetter = apiGetter;
53
+ this.monitor = monitor;
54
+ this.visualsManager = visualsRegister;
55
+ }
56
+ Object.defineProperty(Manager.prototype, "Disposed", {
57
+ get: function () {
58
+ return this.disposed;
59
+ },
60
+ enumerable: false,
61
+ configurable: true
62
+ });
63
+ Manager.prototype.Init = function () {
64
+ var _this = this;
65
+ var _a;
66
+ if (this.disposed) {
67
+ throw new Error("This manager has already been disposed.");
68
+ }
69
+ if (!((_a = this.item.CameraZoomSettings) === null || _a === void 0 ? void 0 : _a.length)) {
70
+ this.item.CameraZoomSettings = [
71
+ {
72
+ MinZoom: 0,
73
+ MaxZoom: 200000,
74
+ DisplayType: bruce_models_1.ZoomControl.EDisplayType.Model3D,
75
+ LODCategoryID: "glb",
76
+ LODLevel: 0,
77
+ StyleID: 0
78
+ }
79
+ ];
80
+ }
81
+ // Perform the initial query and subscribe to updates
82
+ this.getter = new batched_data_getter_1.BatchedDataGetter.Getter([this.item.DataLabQueryID], this.monitor, 1);
83
+ this.getter.OnUpdate.Subscribe(function (queryIds) {
84
+ _this.onGetterUpdate(queryIds[0]);
85
+ });
86
+ this.getter.Start();
87
+ };
88
+ Manager.prototype.Dispose = function () {
89
+ if (this.disposed) {
90
+ return;
91
+ }
92
+ this.doDispose();
93
+ };
94
+ Manager.prototype.doDispose = function () {
95
+ var _a;
96
+ this.disposed = true;
97
+ (_a = this.getter) === null || _a === void 0 ? void 0 : _a.Dispose();
98
+ this.visualsManager.RemoveRegos({
99
+ menuItemId: this.item.id
100
+ });
101
+ };
102
+ Manager.prototype.onGetterUpdate = function (queryId) {
103
+ var _a;
104
+ return __awaiter(this, void 0, void 0, function () {
105
+ var api, result, query, queryResult, error_1;
106
+ var _b;
107
+ return __generator(this, function (_c) {
108
+ switch (_c.label) {
109
+ case 0:
110
+ if (this.disposed || this.viewer.isDestroyed()) {
111
+ return [2 /*return*/];
112
+ }
113
+ _c.label = 1;
114
+ case 1:
115
+ _c.trys.push([1, 4, , 5]);
116
+ api = this.apiGetter.getApi();
117
+ return [4 /*yield*/, bruce_models_1.DataLab.Get({ api: api, queryId: queryId })];
118
+ case 2:
119
+ result = _c.sent();
120
+ query = result.query;
121
+ return [4 /*yield*/, bruce_models_1.DataLab.Run({ api: api, query: (_b = {},
122
+ _b[bruce_models_1.DataLab.EReqKey.Primary] = {
123
+ Items: ((_a = query === null || query === void 0 ? void 0 : query.PrimarySelectionCriteria) === null || _a === void 0 ? void 0 : _a.Items) || [],
124
+ },
125
+ _b) })];
126
+ case 3:
127
+ queryResult = _c.sent();
128
+ this.renderDataLabEntities(queryResult.entities || []);
129
+ return [3 /*break*/, 5];
130
+ case 4:
131
+ error_1 = _c.sent();
132
+ console.error("Failed to perform query or render DataLab entities:", error_1);
133
+ return [3 /*break*/, 5];
134
+ case 5: return [2 /*return*/];
135
+ }
136
+ });
137
+ });
138
+ };
139
+ Manager.prototype.renderDataLabEntities = function (entities) {
140
+ return __awaiter(this, void 0, void 0, function () {
141
+ var _a, updated, cEntities, i, entity, id, cEntity, rego;
142
+ return __generator(this, function (_b) {
143
+ switch (_b.label) {
144
+ case 0:
145
+ if (this.disposed || this.viewer.isDestroyed()) {
146
+ return [2 /*return*/];
147
+ }
148
+ return [4 /*yield*/, entity_render_engine_1.EntityRenderEngine.Render({
149
+ viewer: this.viewer,
150
+ apiGetter: this.apiGetter,
151
+ entities: entities,
152
+ menuItemId: this.item.id,
153
+ visualRegister: this.visualsManager,
154
+ zoomControl: this.item.CameraZoomSettings
155
+ })];
156
+ case 1:
157
+ _a = _b.sent(), updated = _a.updated, cEntities = _a.entities;
158
+ for (i = 0; i < entities.length; i++) {
159
+ entity = entities[i];
160
+ id = entity.Bruce.ID;
161
+ cEntity = cEntities.get(id);
162
+ if (cEntity) {
163
+ rego = this.visualsManager.GetRego({
164
+ entityId: id,
165
+ menuItemId: this.item.id
166
+ });
167
+ if (!rego) {
168
+ this.visualsManager.AddRego({
169
+ rego: {
170
+ entityId: id,
171
+ menuItemId: this.item.id,
172
+ menuItemType: this.item.Type,
173
+ visual: cEntity,
174
+ priority: 0,
175
+ entityTypeId: entity.Bruce["EntityType.ID"],
176
+ accountId: this.apiGetter.accountId,
177
+ name: cEntity.name
178
+ },
179
+ requestRender: false
180
+ });
181
+ }
182
+ }
183
+ else {
184
+ this.visualsManager.RemoveRegos({
185
+ entityId: id,
186
+ menuItemId: this.item.id,
187
+ requestRender: false
188
+ });
189
+ }
190
+ }
191
+ this.viewer.scene.requestRender();
192
+ return [2 /*return*/];
193
+ }
194
+ });
195
+ });
196
+ };
197
+ Manager.prototype.ReRender = function () {
198
+ return __awaiter(this, void 0, void 0, function () {
199
+ return __generator(this, function (_a) {
200
+ switch (_a.label) {
201
+ case 0:
202
+ if (this.disposed) {
203
+ return [2 /*return*/];
204
+ }
205
+ // Re-perform the query and render again
206
+ return [4 /*yield*/, this.onGetterUpdate(this.item.DataLabQueryID)];
207
+ case 1:
208
+ // Re-perform the query and render again
209
+ _a.sent();
210
+ return [2 /*return*/];
211
+ }
212
+ });
213
+ });
214
+ };
215
+ return Manager;
216
+ }());
217
+ DataLabRenderManager.Manager = Manager;
218
+ })(DataLabRenderManager = exports.DataLabRenderManager || (exports.DataLabRenderManager = {}));
219
+ //# sourceMappingURL=datalab-render-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datalab-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/entities/datalab-render-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+F;AAE/F,mEAAgE;AAIhE,yEAAsE;AAGtE,IAAiB,oBAAoB,CA0JpC;AA1JD,WAAiB,oBAAoB;IACjC;QAYI,iBAAY,MAMX;YAZO,WAAM,GAA0C,IAAI,CAAC;YACrD,aAAQ,GAAY,KAAK,CAAC;YAYtB,IAAA,MAAM,GAAgD,MAAM,OAAtD,EAAE,IAAI,GAA0C,MAAM,KAAhD,EAAE,SAAS,GAA+B,MAAM,UAArC,EAAE,OAAO,GAAsB,MAAM,QAA5B,EAAE,eAAe,GAAK,MAAM,gBAAX,CAAY;YACrE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC;QAC1C,CAAC;QAjBD,sBAAW,6BAAQ;iBAAnB;gBACI,OAAO,IAAI,CAAC,QAAQ,CAAC;YACzB,CAAC;;;WAAA;QAiBM,sBAAI,GAAX;YAAA,iBA8BC;;YA7BG,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;aAC9D;YAED,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,0CAAE,MAAM,CAAA,EAAE;gBACvC,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG;oBAC3B;wBACI,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,MAAM;wBACf,WAAW,EAAE,0BAAW,CAAC,YAAY,CAAC,OAAO;wBAC7C,aAAa,EAAE,KAAK;wBACpB,QAAQ,EAAE,CAAC;wBACX,OAAO,EAAE,CAAC;qBACb;iBACJ,CAAC;aACL;YAED,qDAAqD;YACrD,IAAI,CAAC,MAAM,GAAG,IAAI,uCAAiB,CAAC,MAAM,CACtC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAC1B,IAAI,CAAC,OAAO,EACZ,CAAC,CACJ,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAC,QAAQ;gBACpC,KAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;QAEM,yBAAO,GAAd;YACI,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,OAAO;aACV;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACrB,CAAC;QAEO,2BAAS,GAAjB;;YACI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,MAAA,IAAI,CAAC,MAAM,0CAAE,OAAO,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;gBAC5B,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;aAC3B,CAAC,CAAC;QACP,CAAC;QAEa,gCAAc,GAA5B,UAA6B,OAAe;;;;;;;;4BACxC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;gCAC5C,sBAAO;6BACV;;;;4BAGS,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;4BACrB,qBAAM,sBAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAA,EAAE,OAAO,SAAA,EAAE,CAAC,EAAA;;4BAA5C,MAAM,GAAG,SAAmC;4BAC5C,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;4BACP,qBAAM,sBAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAA,EAAE,KAAK;wCAC/C,GAAC,sBAAO,CAAC,OAAO,CAAC,OAAO,IAAE;4CACzB,KAAK,EAAE,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,wBAAwB,0CAAE,KAAK,KAAI,EAAE;yCACnD;2CACH,EAAE,CAAC,EAAA;;4BAJE,WAAW,GAAG,SAIhB;4BACJ,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;;;;4BAEvD,OAAO,CAAC,KAAK,CAAC,qDAAqD,EAAE,OAAK,CAAC,CAAC;;;;;;SAEnF;QAEa,uCAAqB,GAAnC,UAAoC,QAA0B;;;;;;4BAC1D,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;gCAC5C,sBAAO;6BACV;4BAEwC,qBAAM,yCAAkB,CAAC,MAAM,CAAC;oCACrE,MAAM,EAAE,IAAI,CAAC,MAAM;oCACnB,SAAS,EAAE,IAAI,CAAC,SAAS;oCACzB,QAAQ,UAAA;oCACR,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;oCACxB,cAAc,EAAE,IAAI,CAAC,cAAc;oCACnC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,kBAAkB;iCAC5C,CAAC,EAAA;;4BAPI,KAAmC,SAOvC,EAPM,OAAO,aAAA,EAAY,SAAS,cAAA;4BASpC,KAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gCAChC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gCACrB,EAAE,GAAW,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gCAC7B,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gCAClC,IAAI,OAAO,EAAE;oCACH,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;wCACrC,QAAQ,EAAE,EAAE;wCACZ,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;qCAC3B,CAAC,CAAC;oCACH,IAAI,CAAC,IAAI,EAAE;wCACP,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;4CACxB,IAAI,EAAE;gDACF,QAAQ,EAAE,EAAE;gDACZ,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;gDACxB,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;gDAC5B,MAAM,EAAE,OAAO;gDACf,QAAQ,EAAE,CAAC;gDACX,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;gDAC3C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS;gDACnC,IAAI,EAAE,OAAO,CAAC,IAAI;6CACrB;4CACD,aAAa,EAAE,KAAK;yCACvB,CAAC,CAAC;qCACN;iCACJ;qCAAM;oCACH,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;wCAC5B,QAAQ,EAAE,EAAE;wCACZ,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;wCACxB,aAAa,EAAE,KAAK;qCACvB,CAAC,CAAC;iCACN;6BACJ;4BAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;;;;;SACrC;QAEY,0BAAQ,GAArB;;;;;4BACI,IAAI,IAAI,CAAC,QAAQ,EAAE;gCACf,sBAAO;6BACV;4BAED,wCAAwC;4BACxC,qBAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAA;;4BADnD,wCAAwC;4BACxC,SAAmD,CAAC;;;;;SACvD;QACL,cAAC;IAAD,CAAC,AAxJD,IAwJC;IAxJY,4BAAO,UAwJnB,CAAA;AACL,CAAC,EA1JgB,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QA0JpC"}
@@ -52,4 +52,4 @@ export * from "./widgets/controls-view-bar/widget-control-view-bar-search";
52
52
  export * from "./widgets/widget-left-panel";
53
53
  export * from "./widgets/tabs-left-panel/widget-left-panel-tab";
54
54
  export * from "./widgets/tabs-left-panel/widget-left-panel-tab-bookmarks";
55
- export declare const VERSION = "4.7.2";
55
+ export declare const VERSION = "4.7.3";
@@ -0,0 +1,30 @@
1
+ import { BruceApi, MenuItem } from "bruce-models";
2
+ import * as Cesium from "cesium";
3
+ import { VisualsRegister } from "../../visuals-register";
4
+ import { RenderManager } from "../render-manager";
5
+ import { CesiumViewMonitor } from "../../../viewer/cesium-view-monitor";
6
+ export declare namespace DataLabRenderManager {
7
+ class Manager implements RenderManager.IManager {
8
+ private viewer;
9
+ private item;
10
+ private apiGetter;
11
+ private visualsManager;
12
+ private monitor;
13
+ private getter;
14
+ private disposed;
15
+ get Disposed(): boolean;
16
+ constructor(params: {
17
+ viewer: Cesium.Viewer;
18
+ item: MenuItem.Item.IDataLab;
19
+ apiGetter: BruceApi.IGetter;
20
+ monitor: CesiumViewMonitor.Monitor;
21
+ visualsRegister: VisualsRegister.Register;
22
+ });
23
+ Init(): void;
24
+ Dispose(): void;
25
+ private doDispose;
26
+ private onGetterUpdate;
27
+ private renderDataLabEntities;
28
+ ReRender(): Promise<void>;
29
+ }
30
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bruce-cesium",
3
- "version": "4.7.2",
3
+ "version": "4.7.3",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/bruce-cesium.umd.js",
@@ -72,7 +72,8 @@
72
72
  "typescript": "^5.0.4"
73
73
  },
74
74
  "dependencies": {
75
- "bruce-models": "^5.4.5",
75
+ "bruce-models": "^5.5.1",
76
+ "gulp": "^5.0.0",
76
77
  "tslib": "^2.4.1"
77
78
  }
78
79
  }