bruce-cesium 4.2.7 → 4.2.8
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 +6222 -5720
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +6473 -5969
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/bruce-cesium.js +13 -1
- package/dist/lib/bruce-cesium.js.map +1 -1
- package/dist/lib/viewer/viewer-utils.js +48 -14
- package/dist/lib/viewer/viewer-utils.js.map +1 -1
- package/dist/lib/widgets/left-panel-tabs/widget-left-panel-tab-bookmarks.js +141 -0
- package/dist/lib/widgets/left-panel-tabs/widget-left-panel-tab-bookmarks.js.map +1 -0
- package/dist/lib/widgets/left-panel-tabs/widget-left-panel-tab.js +42 -0
- package/dist/lib/widgets/left-panel-tabs/widget-left-panel-tab.js.map +1 -0
- package/dist/lib/widgets/widget-bookmarks.js +5 -2
- package/dist/lib/widgets/widget-bookmarks.js.map +1 -1
- package/dist/lib/widgets/widget-branding.js +8 -1
- package/dist/lib/widgets/widget-branding.js.map +1 -1
- package/dist/lib/widgets/widget-cursorbar.js +8 -1
- package/dist/lib/widgets/widget-cursorbar.js.map +1 -1
- package/dist/lib/widgets/widget-left-panel.js +323 -0
- package/dist/lib/widgets/widget-left-panel.js.map +1 -0
- package/dist/lib/widgets/widget.js +33 -0
- package/dist/lib/widgets/widget.js.map +1 -1
- package/dist/types/bruce-cesium.d.ts +13 -1
- package/dist/types/viewer/viewer-utils.d.ts +10 -0
- package/dist/types/widgets/left-panel-tabs/widget-left-panel-tab-bookmarks.d.ts +11 -0
- package/dist/types/widgets/left-panel-tabs/widget-left-panel-tab.d.ts +17 -0
- package/dist/types/widgets/widget-bookmarks.d.ts +1 -0
- package/dist/types/widgets/widget-left-panel.d.ts +62 -0
- package/dist/types/widgets/widget.d.ts +3 -0
- package/package.json +1 -1
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
27
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
28
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
29
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
30
|
+
function step(op) {
|
|
31
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
32
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
33
|
+
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;
|
|
34
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
35
|
+
switch (op[0]) {
|
|
36
|
+
case 0: case 1: t = op; break;
|
|
37
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
38
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
39
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
40
|
+
default:
|
|
41
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
42
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
43
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
44
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
45
|
+
if (t[2]) _.ops.pop();
|
|
46
|
+
_.trys.pop(); continue;
|
|
47
|
+
}
|
|
48
|
+
op = body.call(thisArg, _);
|
|
49
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
50
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
|
+
exports.WidgetLeftPanel = exports.VIEWER_LEFT_PANEL_CSS_VAR_LEFT = exports.VIEWER_LEFT_PANEL_WIDGET_KEY = void 0;
|
|
55
|
+
var bruce_models_1 = require("bruce-models");
|
|
56
|
+
var widget_left_panel_tab_bookmarks_1 = require("./left-panel-tabs/widget-left-panel-tab-bookmarks");
|
|
57
|
+
var widget_1 = require("./widget");
|
|
58
|
+
var view_render_engine_1 = require("../rendering/view-render-engine");
|
|
59
|
+
exports.VIEWER_LEFT_PANEL_WIDGET_KEY = "_viewerLeftPanelWidget";
|
|
60
|
+
exports.VIEWER_LEFT_PANEL_CSS_VAR_LEFT = "--nextspace-left-panel-width";
|
|
61
|
+
var WidgetLeftPanel = /** @class */ (function (_super) {
|
|
62
|
+
__extends(WidgetLeftPanel, _super);
|
|
63
|
+
function WidgetLeftPanel(params) {
|
|
64
|
+
var _this = _super.call(this, params) || this;
|
|
65
|
+
_this.STYLESHEET_ID = "nextspace-left-panel-stylesheet";
|
|
66
|
+
// Keeping the bookmark list and loading here at top level.
|
|
67
|
+
// This allows us to share the data between tabs.
|
|
68
|
+
_this.bookmarks = [];
|
|
69
|
+
_this._lastEnabledBookmarkId = null;
|
|
70
|
+
// Map of custom tabs added by external devs by calling AddPanelTab.
|
|
71
|
+
// This is a mapping of the provided tab key + content class.
|
|
72
|
+
_this.customTabs = new Map();
|
|
73
|
+
_this._viewId = params.viewId;
|
|
74
|
+
_this._generateStyles();
|
|
75
|
+
_this._generateElement();
|
|
76
|
+
_this._viewer[exports.VIEWER_LEFT_PANEL_WIDGET_KEY] = _this;
|
|
77
|
+
_this._loading = _this.loadBookmarks();
|
|
78
|
+
_this._loading.then(function () {
|
|
79
|
+
if (params.runFirstBookmark && _this.bookmarks.length) {
|
|
80
|
+
_this.SelectBookmark(_this.bookmarks[0]);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
return _this;
|
|
84
|
+
}
|
|
85
|
+
Object.defineProperty(WidgetLeftPanel.prototype, "ViewId", {
|
|
86
|
+
get: function () {
|
|
87
|
+
return this._viewId;
|
|
88
|
+
},
|
|
89
|
+
set: function (value) {
|
|
90
|
+
var isChanged = this._viewId != value;
|
|
91
|
+
if (isChanged) {
|
|
92
|
+
this._viewId = value;
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
enumerable: false,
|
|
96
|
+
configurable: true
|
|
97
|
+
});
|
|
98
|
+
Object.defineProperty(WidgetLeftPanel.prototype, "Bookmarks", {
|
|
99
|
+
get: function () {
|
|
100
|
+
return this.bookmarks;
|
|
101
|
+
},
|
|
102
|
+
enumerable: false,
|
|
103
|
+
configurable: true
|
|
104
|
+
});
|
|
105
|
+
Object.defineProperty(WidgetLeftPanel.prototype, "LastEnabledBookmarkId", {
|
|
106
|
+
get: function () {
|
|
107
|
+
return this._lastEnabledBookmarkId;
|
|
108
|
+
},
|
|
109
|
+
set: function (value) {
|
|
110
|
+
this._lastEnabledBookmarkId = value;
|
|
111
|
+
},
|
|
112
|
+
enumerable: false,
|
|
113
|
+
configurable: true
|
|
114
|
+
});
|
|
115
|
+
Object.defineProperty(WidgetLeftPanel.prototype, "Loading", {
|
|
116
|
+
get: function () {
|
|
117
|
+
return this._loading;
|
|
118
|
+
},
|
|
119
|
+
enumerable: false,
|
|
120
|
+
configurable: true
|
|
121
|
+
});
|
|
122
|
+
// Getters for protected properties so that tabs can access them.
|
|
123
|
+
WidgetLeftPanel.prototype._getManager = function () {
|
|
124
|
+
return this._manager;
|
|
125
|
+
};
|
|
126
|
+
WidgetLeftPanel.prototype._getViewer = function () {
|
|
127
|
+
return this._viewer;
|
|
128
|
+
};
|
|
129
|
+
WidgetLeftPanel.prototype._getApiGetters = function () {
|
|
130
|
+
return this._apiGetters;
|
|
131
|
+
};
|
|
132
|
+
WidgetLeftPanel.prototype.loadBookmarks = function () {
|
|
133
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
134
|
+
var api, viewId, data, e_1;
|
|
135
|
+
return __generator(this, function (_a) {
|
|
136
|
+
switch (_a.label) {
|
|
137
|
+
case 0:
|
|
138
|
+
_a.trys.push([0, 2, , 3]);
|
|
139
|
+
api = this._apiGetters.GetBruceApi();
|
|
140
|
+
viewId = this._viewId;
|
|
141
|
+
if (!viewId) {
|
|
142
|
+
this.bookmarks = [];
|
|
143
|
+
return [2 /*return*/];
|
|
144
|
+
}
|
|
145
|
+
return [4 /*yield*/, bruce_models_1.ProjectViewBookmark.GetList({
|
|
146
|
+
viewId: viewId,
|
|
147
|
+
api: api
|
|
148
|
+
})];
|
|
149
|
+
case 1:
|
|
150
|
+
data = _a.sent();
|
|
151
|
+
this.bookmarks = data.bookmarks;
|
|
152
|
+
return [3 /*break*/, 3];
|
|
153
|
+
case 2:
|
|
154
|
+
e_1 = _a.sent();
|
|
155
|
+
console.error(e_1);
|
|
156
|
+
this.bookmarks = [];
|
|
157
|
+
return [3 /*break*/, 3];
|
|
158
|
+
case 3: return [2 /*return*/];
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
};
|
|
163
|
+
WidgetLeftPanel.prototype.Dispose = function () {
|
|
164
|
+
_super.prototype.Dispose.call(this);
|
|
165
|
+
if (this._enabledTabContent) {
|
|
166
|
+
this._enabledTabContent.Dispose();
|
|
167
|
+
this._enabledTabContent = null;
|
|
168
|
+
}
|
|
169
|
+
this.resetCssVars();
|
|
170
|
+
};
|
|
171
|
+
WidgetLeftPanel.prototype._generateStyles = function () {
|
|
172
|
+
if (document.getElementById(this.STYLESHEET_ID)) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
var style = document.createElement("style");
|
|
176
|
+
style.id = this.STYLESHEET_ID;
|
|
177
|
+
style.innerHTML = "\n .NextspaceLeftPanel {\n align-items: center;\n background-color: #21272a;\n cursor: default;\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n height: 100%;\n padding-bottom: 15px;\n padding-top: 15px;\n position: absolute;\n width: 50px;\n z-index: 1;\n top: 0;\n left: 0;\n }\n\n .NextspaceLeftPanel * {\n box-sizing: border-box;\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelBreaker {\n background-color: hsla(0,0%,50%,.231);\n flex-shrink: 0;\n height: 2px;\n margin-bottom: 15px;\n width: calc(100% - 8px);\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelButton {\n border-radius: 3px;\n color: #fff;\n cursor: pointer;\n font-size: 18px;\n height: 32px;\n overflow: hidden;\n width: 32px;\n margin-bottom: 15px;\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelButton:first-of-type {\n margin-bottom: 8px;\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelButton >.NextspaceLeftPanelButtonIcon {\n align-items: center;\n display: flex;\n justify-content: center;\n position: relative;\n transition: .3s ease;\n height: 100%;\n width: 100%;\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelButton >.NextspaceLeftPanelButtonIcon:hover {\n transform: scale(1.2);\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelButton >.NextspaceLeftPanelButtonIcon >svg {\n cursor: pointer;\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelButton[is-enabled=\"true\"] >.NextspaceLeftPanelButtonIcon {\n background-color: #fff;\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelButton[is-enabled=\"true\"] >.NextspaceLeftPanelButtonIcon >svg {\n filter: invert(1);\n }\n\n .NextspaceLeftPanel >.NextspaceLeftPanelTabContent {\n display: none;\n width: 300px;\n height: 100%;\n position: absolute;\n top: 0;\n left: 50px;\n background-color: #21272a;\n padding: 40px 30px 30px;\n flex-direction: column;\n flex-grow: 1;\n flex-shrink: 1;\n overflow: hidden;\n }\n ";
|
|
178
|
+
document.head.appendChild(style);
|
|
179
|
+
};
|
|
180
|
+
WidgetLeftPanel.prototype._generateElement = function () {
|
|
181
|
+
var element = document.createElement("div");
|
|
182
|
+
element.className = "NextspaceLeftPanel";
|
|
183
|
+
this.Container.appendChild(element);
|
|
184
|
+
this._element = element;
|
|
185
|
+
this._addPlaceholderTab("Dashboard", "\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M11 9C11 10.1046 10.1046 11 9 11C7.89543 11 7 10.1046 7 9C7 7.89543 7.89543 7 9 7C10.1046 7 11 7.89543 11 9ZM18 9C18 10.1046 17.1046 11 16 11C14.8954 11 14 10.1046 14 9C14 7.89543 14.8954 7 16 7C17.1046 7 18 7.89543 18 9ZM23 11C24.1046 11 25 10.1046 25 9C25 7.89543 24.1046 7 23 7C21.8954 7 21 7.89543 21 9C21 10.1046 21.8954 11 23 11ZM11 16C11 17.1046 10.1046 18 9 18C7.89543 18 7 17.1046 7 16C7 14.8954 7.89543 14 9 14C10.1046 14 11 14.8954 11 16ZM9 25C10.1046 25 11 24.1046 11 23C11 21.8954 10.1046 21 9 21C7.89543 21 7 21.8954 7 23C7 24.1046 7.89543 25 9 25ZM18 16C18 17.1046 17.1046 18 16 18C14.8954 18 14 17.1046 14 16C14 14.8954 14.8954 14 16 14C17.1046 14 18 14.8954 18 16ZM16 25C17.1046 25 18 24.1046 18 23C18 21.8954 17.1046 21 16 21C14.8954 21 14 21.8954 14 23C14 24.1046 14.8954 25 16 25ZM25 16C25 17.1046 24.1046 18 23 18C21.8954 18 21 17.1046 21 16C21 14.8954 21.8954 14 23 14C24.1046 14 25 14.8954 25 16ZM23 25C24.1046 25 25 24.1046 25 23C25 21.8954 24.1046 21 23 21C21.8954 21 21 21.8954 21 23C21 24.1046 21.8954 25 23 25Z\" fill=\"white\"></path>\n ");
|
|
186
|
+
var breaker = document.createElement("div");
|
|
187
|
+
breaker.className = "NextspaceLeftPanelBreaker";
|
|
188
|
+
this._element.appendChild(breaker);
|
|
189
|
+
this._addPanelTab("bookmarks", "Bookmarks", "\n <path d=\"M23 25V7H9V25L16 18L23 25Z\" fill=\"white\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n ");
|
|
190
|
+
var panelContent = document.createElement("div");
|
|
191
|
+
panelContent.className = "NextspaceLeftPanelTabContent";
|
|
192
|
+
this._element.appendChild(panelContent);
|
|
193
|
+
this._updatePanelStyles();
|
|
194
|
+
};
|
|
195
|
+
/**
|
|
196
|
+
* Adds a custom tab to the left panel.
|
|
197
|
+
* @param params
|
|
198
|
+
*/
|
|
199
|
+
WidgetLeftPanel.prototype.AddPanelTab = function (params) {
|
|
200
|
+
this.customTabs.set(params.tab, params.content);
|
|
201
|
+
this._addPanelTab(params.tab, params.title, params.svgStr);
|
|
202
|
+
};
|
|
203
|
+
WidgetLeftPanel.prototype._addPanelTab = function (tab, title, svgStr) {
|
|
204
|
+
var _this = this;
|
|
205
|
+
var tabButton = document.createElement("div");
|
|
206
|
+
tabButton.setAttribute("widget-left-panel-tab", tab);
|
|
207
|
+
tabButton.className = "NextspaceLeftPanelButton";
|
|
208
|
+
tabButton.title = title;
|
|
209
|
+
var buttonBookmarksIcon = document.createElement("div");
|
|
210
|
+
buttonBookmarksIcon.className = "NextspaceLeftPanelButtonIcon";
|
|
211
|
+
var buttonBookmarksIconSvg = document.createElementNS("http://www.w3.org/2000/svg", "svg");
|
|
212
|
+
buttonBookmarksIconSvg.setAttribute("viewBox", "0 0 32 32");
|
|
213
|
+
buttonBookmarksIconSvg.setAttribute("width", "32");
|
|
214
|
+
buttonBookmarksIconSvg.setAttribute("height", "32");
|
|
215
|
+
buttonBookmarksIconSvg.innerHTML = svgStr;
|
|
216
|
+
buttonBookmarksIcon.appendChild(buttonBookmarksIconSvg);
|
|
217
|
+
tabButton.appendChild(buttonBookmarksIcon);
|
|
218
|
+
tabButton.onclick = function () {
|
|
219
|
+
if (_this._enabledPanelTab === tab) {
|
|
220
|
+
_this._enabledPanelTab = "";
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
_this._enabledPanelTab = tab;
|
|
224
|
+
}
|
|
225
|
+
_this._updatePanelContent();
|
|
226
|
+
_this._updatePanelStyles();
|
|
227
|
+
};
|
|
228
|
+
this._element.appendChild(tabButton);
|
|
229
|
+
};
|
|
230
|
+
WidgetLeftPanel.prototype._addPlaceholderTab = function (title, svgStr) {
|
|
231
|
+
var tabButton = document.createElement("div");
|
|
232
|
+
tabButton.className = "NextspaceLeftPanelButton";
|
|
233
|
+
tabButton.title = title;
|
|
234
|
+
tabButton.style.opacity = "0.5";
|
|
235
|
+
tabButton.style.pointerEvents = "none";
|
|
236
|
+
var buttonBookmarksIcon = document.createElement("div");
|
|
237
|
+
buttonBookmarksIcon.className = "NextspaceLeftPanelButtonIcon";
|
|
238
|
+
var buttonBookmarksIconSvg = document.createElementNS("http://www.w3.org/2000/svg", "svg");
|
|
239
|
+
buttonBookmarksIconSvg.setAttribute("viewBox", "0 0 32 32");
|
|
240
|
+
buttonBookmarksIconSvg.setAttribute("width", "32");
|
|
241
|
+
buttonBookmarksIconSvg.setAttribute("height", "32");
|
|
242
|
+
buttonBookmarksIconSvg.innerHTML = svgStr;
|
|
243
|
+
buttonBookmarksIcon.appendChild(buttonBookmarksIconSvg);
|
|
244
|
+
tabButton.appendChild(buttonBookmarksIcon);
|
|
245
|
+
this._element.appendChild(tabButton);
|
|
246
|
+
};
|
|
247
|
+
/**
|
|
248
|
+
* Updates the panel styles based on the current state.
|
|
249
|
+
* Eg: if a tab is enabled, the button should be highlighted.
|
|
250
|
+
*/
|
|
251
|
+
WidgetLeftPanel.prototype._updatePanelStyles = function () {
|
|
252
|
+
var _this = this;
|
|
253
|
+
var buttons = this._element.querySelectorAll(".NextspaceLeftPanelButton");
|
|
254
|
+
buttons.forEach(function (button) {
|
|
255
|
+
var isEnabled = button.getAttribute("widget-left-panel-tab") === _this._enabledPanelTab;
|
|
256
|
+
button.setAttribute("is-enabled", isEnabled ? "true" : "false");
|
|
257
|
+
});
|
|
258
|
+
// Make the tab content visible/invisible based on the current state.
|
|
259
|
+
var contentDisplayState = this._enabledPanelTab ? "flex" : "none";
|
|
260
|
+
this._element.querySelector(".NextspaceLeftPanelTabContent").style.display = contentDisplayState;
|
|
261
|
+
// Update CSS variables so other widgets can be offset correctly.
|
|
262
|
+
this.updateCssVars();
|
|
263
|
+
};
|
|
264
|
+
/**
|
|
265
|
+
* Opens or closes a panel based on the current state.
|
|
266
|
+
*/
|
|
267
|
+
WidgetLeftPanel.prototype._updatePanelContent = function () {
|
|
268
|
+
if (this._enabledTabContent) {
|
|
269
|
+
this._enabledTabContent.Dispose();
|
|
270
|
+
this._enabledTabContent = null;
|
|
271
|
+
}
|
|
272
|
+
if (this._enabledPanelTab) {
|
|
273
|
+
var container = this._element.querySelector(".NextspaceLeftPanelTabContent");
|
|
274
|
+
var tabContent = void 0;
|
|
275
|
+
switch (this._enabledPanelTab) {
|
|
276
|
+
case "bookmarks":
|
|
277
|
+
tabContent = new widget_left_panel_tab_bookmarks_1.WidgetLeftPanelTabBookmarks({
|
|
278
|
+
widget: this,
|
|
279
|
+
container: container
|
|
280
|
+
});
|
|
281
|
+
break;
|
|
282
|
+
default:
|
|
283
|
+
tabContent = new (this.customTabs.get(this._enabledPanelTab)({
|
|
284
|
+
widget: this,
|
|
285
|
+
container: container
|
|
286
|
+
}));
|
|
287
|
+
break;
|
|
288
|
+
}
|
|
289
|
+
this._enabledTabContent = tabContent;
|
|
290
|
+
}
|
|
291
|
+
};
|
|
292
|
+
/**
|
|
293
|
+
* Update CSS variables so other widgets can be offset correctly.
|
|
294
|
+
* Eg: the cursor-bar will be pushed by the left panel as they're both on the left side.
|
|
295
|
+
*/
|
|
296
|
+
WidgetLeftPanel.prototype.updateCssVars = function () {
|
|
297
|
+
var left = this._element.clientWidth;
|
|
298
|
+
// Add content width if it's visible.
|
|
299
|
+
if (this._enabledPanelTab) {
|
|
300
|
+
left += this._element.querySelector(".NextspaceLeftPanelTabContent").clientWidth;
|
|
301
|
+
}
|
|
302
|
+
document.documentElement.style.setProperty(exports.VIEWER_LEFT_PANEL_CSS_VAR_LEFT, "".concat(left, "px"));
|
|
303
|
+
};
|
|
304
|
+
WidgetLeftPanel.prototype.resetCssVars = function () {
|
|
305
|
+
document.documentElement.style.setProperty(exports.VIEWER_LEFT_PANEL_CSS_VAR_LEFT, "0px");
|
|
306
|
+
};
|
|
307
|
+
WidgetLeftPanel.prototype.SelectBookmark = function (bookmark) {
|
|
308
|
+
var isFirstEnabled = !this._lastEnabledBookmarkId;
|
|
309
|
+
this._lastEnabledBookmarkId = bookmark.ID;
|
|
310
|
+
view_render_engine_1.ViewRenderEngine.Render({
|
|
311
|
+
apiGetter: this._apiGetters.GetBruceGetter(),
|
|
312
|
+
bookmark: bookmark,
|
|
313
|
+
bookmarkId: bookmark.ID,
|
|
314
|
+
manager: this._manager,
|
|
315
|
+
skipTransition: isFirstEnabled,
|
|
316
|
+
viewer: this._viewer,
|
|
317
|
+
viewId: this._viewId
|
|
318
|
+
});
|
|
319
|
+
};
|
|
320
|
+
return WidgetLeftPanel;
|
|
321
|
+
}(widget_1.Widget.AWidget));
|
|
322
|
+
exports.WidgetLeftPanel = WidgetLeftPanel;
|
|
323
|
+
//# sourceMappingURL=widget-left-panel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widget-left-panel.js","sourceRoot":"","sources":["../../../src/widgets/widget-left-panel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Widget = void 0;
|
|
4
|
+
var BModels = require("bruce-models");
|
|
4
5
|
/**
|
|
5
6
|
* Describes a Nextspace provided UI widget.
|
|
6
7
|
*/
|
|
@@ -8,6 +9,7 @@ var Widget;
|
|
|
8
9
|
(function (Widget) {
|
|
9
10
|
var AWidget = /** @class */ (function () {
|
|
10
11
|
function AWidget(params) {
|
|
12
|
+
this.widgetId = BModels.ObjectUtils.UId();
|
|
11
13
|
var viewer = params.viewer, container = params.container, manager = params.manager;
|
|
12
14
|
if (!container) {
|
|
13
15
|
container = viewer.container;
|
|
@@ -16,7 +18,17 @@ var Widget;
|
|
|
16
18
|
this._manager = manager;
|
|
17
19
|
this._container = container;
|
|
18
20
|
this._apiGetters = params.apiGetters;
|
|
21
|
+
if (viewer) {
|
|
22
|
+
markViewerWithWidget(viewer, this.widgetId, this);
|
|
23
|
+
}
|
|
19
24
|
}
|
|
25
|
+
Object.defineProperty(AWidget.prototype, "WidgetId", {
|
|
26
|
+
get: function () {
|
|
27
|
+
return this.widgetId;
|
|
28
|
+
},
|
|
29
|
+
enumerable: false,
|
|
30
|
+
configurable: true
|
|
31
|
+
});
|
|
20
32
|
Object.defineProperty(AWidget.prototype, "Viewer", {
|
|
21
33
|
get: function () {
|
|
22
34
|
return this._viewer;
|
|
@@ -42,9 +54,30 @@ var Widget;
|
|
|
42
54
|
if (this._element && this._element.parentElement) {
|
|
43
55
|
this._element.parentElement.removeChild(this._element);
|
|
44
56
|
}
|
|
57
|
+
if (this._viewer) {
|
|
58
|
+
unmarkViewerWithWidget(this._viewer, this.widgetId, this);
|
|
59
|
+
}
|
|
45
60
|
};
|
|
46
61
|
return AWidget;
|
|
47
62
|
}());
|
|
48
63
|
Widget.AWidget = AWidget;
|
|
64
|
+
function GetWidgets(viewer) {
|
|
65
|
+
if (viewer && viewer["_nextspaceWidgets"]) {
|
|
66
|
+
return Object.values(viewer["_nextspaceWidgets"]);
|
|
67
|
+
}
|
|
68
|
+
return [];
|
|
69
|
+
}
|
|
70
|
+
Widget.GetWidgets = GetWidgets;
|
|
49
71
|
})(Widget = exports.Widget || (exports.Widget = {}));
|
|
72
|
+
function markViewerWithWidget(viewer, widgetId, widget) {
|
|
73
|
+
if (!viewer["_nextspaceWidgets"]) {
|
|
74
|
+
viewer["_nextspaceWidgets"] = {};
|
|
75
|
+
}
|
|
76
|
+
viewer["_nextspaceWidgets"][widgetId] = widget;
|
|
77
|
+
}
|
|
78
|
+
function unmarkViewerWithWidget(viewer, widgetId, widget) {
|
|
79
|
+
if (viewer["_nextspaceWidgets"]) {
|
|
80
|
+
delete viewer["_nextspaceWidgets"][widgetId];
|
|
81
|
+
}
|
|
82
|
+
}
|
|
50
83
|
//# sourceMappingURL=widget.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../../../src/widgets/widget.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../../../src/widgets/widget.ts"],"names":[],"mappings":";;;AACA,sCAAwC;AAGxC;;GAEG;AACH,IAAiB,MAAM,CA6DtB;AA7DD,WAAiB,MAAM;IAUnB;QAoBI,iBAAY,MAAe;YAnBnB,aAAQ,GAAW,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;YAoB3C,IAAA,MAAM,GAAyB,MAAM,OAA/B,EAAE,SAAS,GAAc,MAAM,UAApB,EAAE,OAAO,GAAK,MAAM,QAAX,CAAY;YAC5C,IAAI,CAAC,SAAS,EAAE;gBACZ,SAAS,GAAG,MAAM,CAAC,SAAwB,CAAC;aAC/C;YACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;YACxB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC5B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;YAErC,IAAI,MAAM,EAAE;gBACR,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;aACrD;QACL,CAAC;QA/BD,sBAAW,6BAAQ;iBAAnB;gBACI,OAAO,IAAI,CAAC,QAAQ,CAAC;YACzB,CAAC;;;WAAA;QAED,sBAAW,2BAAM;iBAAjB;gBACI,OAAO,IAAI,CAAC,OAAO,CAAC;YACxB,CAAC;;;WAAA;QAED,sBAAW,8BAAS;iBAApB;gBACI,OAAO,IAAI,CAAC,UAAU,CAAC;YAC3B,CAAC;;;WAAA;QAED,sBAAW,4BAAO;iBAAlB;gBACI,OAAO,IAAI,CAAC,QAAQ,CAAC;YACzB,CAAC;;;WAAA;QAmBM,yBAAO,GAAd;YACI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;gBAC9C,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC1D;YACD,IAAI,IAAI,CAAC,OAAO,EAAE;gBACd,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;aAC7D;QACL,CAAC;QACL,cAAC;IAAD,CAAC,AA3CD,IA2CC;IA3CqB,cAAO,UA2C5B,CAAA;IAED,SAAgB,UAAU,CAAC,MAAqB;QAC5C,IAAI,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,EAAE;YACvC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;SACrD;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IALe,iBAAU,aAKzB,CAAA;AACL,CAAC,EA7DgB,MAAM,GAAN,cAAM,KAAN,cAAM,QA6DtB;AAED,SAAS,oBAAoB,CAAC,MAAqB,EAAE,QAAgB,EAAE,MAAsB;IACzF,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE;QAC9B,MAAM,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC;KACpC;IACD,MAAM,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;AACnD,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAqB,EAAE,QAAgB,EAAE,MAAsB;IAC3F,IAAI,MAAM,CAAC,mBAAmB,CAAC,EAAE;QAC7B,OAAO,MAAM,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,CAAC;KAChD;AACL,CAAC"}
|
|
@@ -33,4 +33,16 @@ export * from "./rendering/cesium-animated-property";
|
|
|
33
33
|
export * from "./rendering/cesium-animated-in-out";
|
|
34
34
|
export * from "./widgets/common/draw-3d-polygon";
|
|
35
35
|
export * from "./widgets/common/draw-3d-polyline";
|
|
36
|
-
export
|
|
36
|
+
export * from "./widgets/common/measure-creator";
|
|
37
|
+
export * from "./widgets/widget";
|
|
38
|
+
export * from "./widgets/widget-bookmarks";
|
|
39
|
+
export * from "./widgets/widget-branding";
|
|
40
|
+
export * from "./widgets/widget-cursorbar";
|
|
41
|
+
export * from "./widgets/widget-embedded-info-view";
|
|
42
|
+
export * from "./widgets/widget-info-view";
|
|
43
|
+
export * from "./widgets/widget-nav-compass";
|
|
44
|
+
export * from "./widgets/widget-searchbar";
|
|
45
|
+
export * from "./widgets/widget-left-panel";
|
|
46
|
+
export * from "./widgets/left-panel-tabs/widget-left-panel-tab";
|
|
47
|
+
export * from "./widgets/left-panel-tabs/widget-left-panel-tab-bookmarks";
|
|
48
|
+
export declare const VERSION = "4.2.8";
|
|
@@ -5,6 +5,7 @@ import { Widget } from "../widgets/widget";
|
|
|
5
5
|
interface IWidget {
|
|
6
6
|
isDestroyed: () => boolean;
|
|
7
7
|
destroy: () => void;
|
|
8
|
+
container: Element;
|
|
8
9
|
}
|
|
9
10
|
export declare namespace ViewerUtils {
|
|
10
11
|
/**
|
|
@@ -16,9 +17,16 @@ export declare namespace ViewerUtils {
|
|
|
16
17
|
destroyWidgets?: boolean;
|
|
17
18
|
styleContainer?: boolean;
|
|
18
19
|
nextspaceWidgets?: boolean;
|
|
20
|
+
widgetParams?: any;
|
|
19
21
|
}): {
|
|
20
22
|
widgets: IDictionary<Widget.AWidget>;
|
|
21
23
|
};
|
|
24
|
+
/**
|
|
25
|
+
* Destroys all widgets attached to the given viewer.
|
|
26
|
+
* All Nextspace widgets get auto-associated with the viewer they are created against.
|
|
27
|
+
* @param viewer
|
|
28
|
+
*/
|
|
29
|
+
function DisposeNextspaceWidgets(viewer: Cesium.Viewer): void;
|
|
22
30
|
function DestroyWidget(widget: IWidget): void;
|
|
23
31
|
/**
|
|
24
32
|
* Hides all unnecessary elements from the Cesium viewer container.
|
|
@@ -54,9 +62,11 @@ export declare namespace ViewerUtils {
|
|
|
54
62
|
cursorBar?: boolean;
|
|
55
63
|
searchBar?: boolean;
|
|
56
64
|
infoView?: boolean;
|
|
65
|
+
leftPanel?: boolean;
|
|
57
66
|
embeddedInfoView?: boolean;
|
|
58
67
|
bookmarks?: boolean;
|
|
59
68
|
viewId?: string;
|
|
69
|
+
runFirstBookmark?: boolean;
|
|
60
70
|
}): IDictionary<Widget.AWidget>;
|
|
61
71
|
/**
|
|
62
72
|
* Returns if the given token is valid or not.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { WidgetLeftPanelTab } from "./widget-left-panel-tab";
|
|
2
|
+
export declare class WidgetLeftPanelTabBookmarks extends WidgetLeftPanelTab.ATab {
|
|
3
|
+
STYLESHEET_ID: string;
|
|
4
|
+
constructor(params: WidgetLeftPanelTab.IParams);
|
|
5
|
+
Dispose(): void;
|
|
6
|
+
private _generateStyles;
|
|
7
|
+
private _generateElement;
|
|
8
|
+
private _updateBookmarks;
|
|
9
|
+
private _selectBookmark;
|
|
10
|
+
private _updateBookmark;
|
|
11
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { WidgetLeftPanel } from "../widget-left-panel";
|
|
2
|
+
export declare namespace WidgetLeftPanelTab {
|
|
3
|
+
interface IParams {
|
|
4
|
+
widget: WidgetLeftPanel;
|
|
5
|
+
container: HTMLElement;
|
|
6
|
+
}
|
|
7
|
+
abstract class ATab {
|
|
8
|
+
protected _widget: WidgetLeftPanel;
|
|
9
|
+
get WidgetLeftPanel(): WidgetLeftPanel;
|
|
10
|
+
protected _container: HTMLElement;
|
|
11
|
+
get Container(): HTMLElement;
|
|
12
|
+
protected _element: HTMLElement;
|
|
13
|
+
get Element(): HTMLElement;
|
|
14
|
+
constructor(params: IParams);
|
|
15
|
+
Dispose(): void;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Widget } from "./widget";
|
|
2
2
|
interface IParams extends Widget.IParams {
|
|
3
3
|
viewId: string;
|
|
4
|
+
runFirstBookmark?: boolean;
|
|
4
5
|
}
|
|
5
6
|
export declare const VIEWER_BOOKMARKS_WIDGET_KEY = "_viewerBookmarksWidget";
|
|
6
7
|
export declare class WidgetBookmarks extends Widget.AWidget {
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/// <reference types="cesium" />
|
|
2
|
+
import { ProjectViewBookmark } from "bruce-models";
|
|
3
|
+
import { Widget } from "./widget";
|
|
4
|
+
interface IParams extends Widget.IParams {
|
|
5
|
+
viewId: string;
|
|
6
|
+
runFirstBookmark?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare const VIEWER_LEFT_PANEL_WIDGET_KEY = "_viewerLeftPanelWidget";
|
|
9
|
+
export declare const VIEWER_LEFT_PANEL_CSS_VAR_LEFT = "--nextspace-left-panel-width";
|
|
10
|
+
export declare class WidgetLeftPanel extends Widget.AWidget {
|
|
11
|
+
STYLESHEET_ID: string;
|
|
12
|
+
private _viewId;
|
|
13
|
+
get ViewId(): string;
|
|
14
|
+
set ViewId(value: string);
|
|
15
|
+
private _enabledPanelTab;
|
|
16
|
+
private _enabledTabContent;
|
|
17
|
+
private bookmarks;
|
|
18
|
+
get Bookmarks(): ProjectViewBookmark.IBookmark[];
|
|
19
|
+
private _lastEnabledBookmarkId;
|
|
20
|
+
get LastEnabledBookmarkId(): string;
|
|
21
|
+
set LastEnabledBookmarkId(value: string);
|
|
22
|
+
private _loading;
|
|
23
|
+
get Loading(): Promise<void>;
|
|
24
|
+
_getManager(): import("../bruce-cesium").MenuItemManager.Manager;
|
|
25
|
+
_getViewer(): import("cesium").Viewer;
|
|
26
|
+
_getApiGetters(): import("bruce-models").ApiGetters;
|
|
27
|
+
private customTabs;
|
|
28
|
+
constructor(params: IParams);
|
|
29
|
+
private loadBookmarks;
|
|
30
|
+
Dispose(): void;
|
|
31
|
+
private _generateStyles;
|
|
32
|
+
private _generateElement;
|
|
33
|
+
/**
|
|
34
|
+
* Adds a custom tab to the left panel.
|
|
35
|
+
* @param params
|
|
36
|
+
*/
|
|
37
|
+
AddPanelTab(params: {
|
|
38
|
+
tab: string;
|
|
39
|
+
title: string;
|
|
40
|
+
svgStr: string;
|
|
41
|
+
content: any;
|
|
42
|
+
}): void;
|
|
43
|
+
private _addPanelTab;
|
|
44
|
+
private _addPlaceholderTab;
|
|
45
|
+
/**
|
|
46
|
+
* Updates the panel styles based on the current state.
|
|
47
|
+
* Eg: if a tab is enabled, the button should be highlighted.
|
|
48
|
+
*/
|
|
49
|
+
private _updatePanelStyles;
|
|
50
|
+
/**
|
|
51
|
+
* Opens or closes a panel based on the current state.
|
|
52
|
+
*/
|
|
53
|
+
private _updatePanelContent;
|
|
54
|
+
/**
|
|
55
|
+
* Update CSS variables so other widgets can be offset correctly.
|
|
56
|
+
* Eg: the cursor-bar will be pushed by the left panel as they're both on the left side.
|
|
57
|
+
*/
|
|
58
|
+
private updateCssVars;
|
|
59
|
+
private resetCssVars;
|
|
60
|
+
SelectBookmark(bookmark: ProjectViewBookmark.IBookmark): void;
|
|
61
|
+
}
|
|
62
|
+
export {};
|
|
@@ -12,6 +12,8 @@ export declare namespace Widget {
|
|
|
12
12
|
apiGetters?: BModels.ApiGetters;
|
|
13
13
|
}
|
|
14
14
|
abstract class AWidget {
|
|
15
|
+
private widgetId;
|
|
16
|
+
get WidgetId(): string;
|
|
15
17
|
protected _viewer: Cesium.Viewer;
|
|
16
18
|
get Viewer(): Cesium.Viewer;
|
|
17
19
|
protected _container: HTMLElement;
|
|
@@ -23,4 +25,5 @@ export declare namespace Widget {
|
|
|
23
25
|
constructor(params: IParams);
|
|
24
26
|
Dispose(): void;
|
|
25
27
|
}
|
|
28
|
+
function GetWidgets(viewer: Cesium.Viewer): Widget.AWidget[];
|
|
26
29
|
}
|