@shapediver/viewer.session-engine.session-engine 1.15.6 → 2.0.1
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/implementation/OutputLoader.d.ts +1 -1
- package/dist/implementation/OutputLoader.d.ts.map +1 -1
- package/dist/implementation/OutputLoader.js +2 -5
- package/dist/implementation/OutputLoader.js.map +1 -1
- package/dist/implementation/SessionData.d.ts +4 -3
- package/dist/implementation/SessionData.d.ts.map +1 -1
- package/dist/implementation/SessionData.js.map +1 -1
- package/dist/implementation/{Session.d.ts → SessionEngine.d.ts} +79 -17
- package/dist/implementation/SessionEngine.d.ts.map +1 -0
- package/dist/implementation/SessionEngine.js +1132 -0
- package/dist/implementation/SessionEngine.js.map +1 -0
- package/dist/implementation/SessionOutputData.d.ts +4 -3
- package/dist/implementation/SessionOutputData.d.ts.map +1 -1
- package/dist/implementation/SessionOutputData.js.map +1 -1
- package/dist/implementation/SessionTreeNode.d.ts +4 -4
- package/dist/implementation/SessionTreeNode.d.ts.map +1 -1
- package/dist/implementation/SessionTreeNode.js +1 -4
- package/dist/implementation/SessionTreeNode.js.map +1 -1
- package/dist/implementation/dto/Export.d.ts +37 -0
- package/dist/implementation/dto/Export.d.ts.map +1 -0
- package/dist/implementation/dto/Export.js +204 -0
- package/dist/implementation/dto/Export.js.map +1 -0
- package/dist/implementation/dto/FileParameter.d.ts +10 -0
- package/dist/implementation/dto/FileParameter.d.ts.map +1 -0
- package/dist/implementation/dto/FileParameter.js +99 -0
- package/dist/implementation/dto/FileParameter.js.map +1 -0
- package/dist/implementation/dto/Output.d.ts +42 -0
- package/dist/implementation/dto/Output.d.ts.map +1 -0
- package/dist/implementation/dto/Output.js +200 -0
- package/dist/implementation/dto/Output.js.map +1 -0
- package/dist/implementation/dto/Parameter.d.ts +39 -0
- package/dist/implementation/dto/Parameter.d.ts.map +1 -0
- package/dist/implementation/dto/Parameter.js +341 -0
- package/dist/implementation/dto/Parameter.js.map +1 -0
- package/dist/index.d.ts +15 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -3
- package/dist/index.js.map +1 -1
- package/dist/interfaces/ISessionData.d.ts +7 -0
- package/dist/interfaces/ISessionData.d.ts.map +1 -0
- package/dist/interfaces/ISessionData.js +3 -0
- package/dist/interfaces/ISessionData.js.map +1 -0
- package/dist/interfaces/ISessionEngine.d.ts +123 -0
- package/dist/interfaces/ISessionEngine.d.ts.map +1 -0
- package/dist/interfaces/ISessionEngine.js +59 -0
- package/dist/interfaces/ISessionEngine.js.map +1 -0
- package/dist/interfaces/ISessionOutputData.d.ts +7 -0
- package/dist/interfaces/ISessionOutputData.d.ts.map +1 -0
- package/dist/interfaces/ISessionOutputData.js +3 -0
- package/dist/interfaces/ISessionOutputData.js.map +1 -0
- package/dist/interfaces/ISessionTreeNode.d.ts +5 -0
- package/dist/interfaces/ISessionTreeNode.d.ts.map +1 -0
- package/dist/interfaces/ISessionTreeNode.js +3 -0
- package/dist/interfaces/ISessionTreeNode.js.map +1 -0
- package/dist/interfaces/dto/IExport.d.ts +10 -0
- package/dist/interfaces/dto/IExport.d.ts.map +1 -0
- package/dist/interfaces/{ISession.js → dto/IExport.js} +1 -1
- package/dist/interfaces/dto/IExport.js.map +1 -0
- package/dist/interfaces/dto/IFileParameter.d.ts +5 -0
- package/dist/interfaces/dto/IFileParameter.d.ts.map +1 -0
- package/dist/interfaces/dto/IFileParameter.js +3 -0
- package/dist/interfaces/dto/IFileParameter.js.map +1 -0
- package/dist/interfaces/dto/IOutput.d.ts +25 -0
- package/dist/interfaces/dto/IOutput.d.ts.map +1 -0
- package/dist/interfaces/dto/IOutput.js +3 -0
- package/dist/interfaces/dto/IOutput.js.map +1 -0
- package/dist/interfaces/dto/IParameter.d.ts +10 -0
- package/dist/interfaces/dto/IParameter.d.ts.map +1 -0
- package/dist/interfaces/dto/IParameter.js +3 -0
- package/dist/interfaces/dto/IParameter.js.map +1 -0
- package/package.json +18 -11
- package/src/implementation/OutputDelayException.ts +22 -0
- package/src/implementation/OutputLoader.ts +281 -0
- package/src/implementation/SessionData.ts +43 -0
- package/src/implementation/SessionEngine.ts +1267 -0
- package/src/implementation/SessionOutputData.ts +43 -0
- package/src/implementation/SessionTreeNode.ts +41 -0
- package/src/implementation/dto/Export.ts +223 -0
- package/src/implementation/dto/FileParameter.ts +71 -0
- package/src/implementation/dto/Output.ts +221 -0
- package/src/implementation/dto/Parameter.ts +340 -0
- package/src/index.ts +26 -0
- package/src/interfaces/ISessionData.ts +16 -0
- package/src/interfaces/ISessionEngine.ts +123 -0
- package/src/interfaces/ISessionOutputData.ts +16 -0
- package/src/interfaces/ISessionTreeNode.ts +9 -0
- package/src/interfaces/dto/IExport.ts +17 -0
- package/src/interfaces/dto/IFileParameter.ts +9 -0
- package/src/interfaces/dto/IOutput.ts +45 -0
- package/src/interfaces/dto/IParameter.ts +19 -0
- package/tsconfig.json +17 -0
- package/dist/implementation/Session.d.ts.map +0 -1
- package/dist/implementation/Session.js +0 -536
- package/dist/implementation/Session.js.map +0 -1
- package/dist/interfaces/ISession.d.ts +0 -32
- package/dist/interfaces/ISession.d.ts.map +0 -1
- package/dist/interfaces/ISession.js.map +0 -1
|
@@ -1,536 +0,0 @@
|
|
|
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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.Session = void 0;
|
|
13
|
-
const tsyringe_1 = require("tsyringe");
|
|
14
|
-
const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
|
|
15
|
-
const OutputDelayException_1 = require("./OutputDelayException");
|
|
16
|
-
const OutputLoader_1 = require("./OutputLoader");
|
|
17
|
-
const SessionTreeNode_1 = require("./SessionTreeNode");
|
|
18
|
-
const SessionData_1 = require("./SessionData");
|
|
19
|
-
const sdk_geometry_api_sdk_v2_1 = require("@shapediver/sdk.geometry-api-sdk-v2");
|
|
20
|
-
class Session {
|
|
21
|
-
// #endregion Properties (22)
|
|
22
|
-
// #region Constructors (1)
|
|
23
|
-
/**
|
|
24
|
-
* Can be use to initialize a session with the ticket and modelViewUrl and returns a scene graph node with the result.
|
|
25
|
-
* Can be use to customize the session with updated parameters to get the updated scene graph node.
|
|
26
|
-
*/
|
|
27
|
-
constructor(properties) {
|
|
28
|
-
// #region Properties (22)
|
|
29
|
-
this._converter = tsyringe_1.container.resolve(viewer_shared_services_1.Converter);
|
|
30
|
-
this._exports = {};
|
|
31
|
-
this._httpClient = tsyringe_1.container.resolve(viewer_shared_services_1.HttpClient);
|
|
32
|
-
this._logger = tsyringe_1.container.resolve(viewer_shared_services_1.Logger);
|
|
33
|
-
this._outputs = {};
|
|
34
|
-
this._outputsFreeze = {};
|
|
35
|
-
this._parameterValues = {};
|
|
36
|
-
this._parameters = {};
|
|
37
|
-
this._performanceEvaluator = tsyringe_1.container.resolve(viewer_shared_services_1.PerformanceEvaluator);
|
|
38
|
-
this._sessionEngineId = tsyringe_1.container.resolve(viewer_shared_services_1.UuidGenerator).create();
|
|
39
|
-
this._closed = false;
|
|
40
|
-
this._headers = {
|
|
41
|
-
"X-ShapeDiver-Origin": tsyringe_1.container.resolve(viewer_shared_services_1.SystemInfo).origin,
|
|
42
|
-
"X-ShapeDiver-SessionEngineId": this._sessionEngineId,
|
|
43
|
-
"X-ShapeDiver-BuildVersion": '',
|
|
44
|
-
"X-ShapeDiver-BuildDate": ''
|
|
45
|
-
};
|
|
46
|
-
this._initialized = false;
|
|
47
|
-
this._retryCounter = 0;
|
|
48
|
-
this._dataCache = {};
|
|
49
|
-
this._id = properties.id;
|
|
50
|
-
this._ticket = properties.ticket;
|
|
51
|
-
this._modelViewUrl = properties.modelViewUrl;
|
|
52
|
-
this._closeOnFailure = properties.closeOnFailure;
|
|
53
|
-
this._bearerToken = properties.bearerToken;
|
|
54
|
-
this._headers['X-ShapeDiver-BuildDate'] = properties.buildDate;
|
|
55
|
-
this._headers['X-ShapeDiver-BuildVersion'] = properties.buildVersion;
|
|
56
|
-
this._outputLoader = new OutputLoader_1.OutputLoader();
|
|
57
|
-
this._sdk = sdk_geometry_api_sdk_v2_1.create(this._modelViewUrl, this._bearerToken);
|
|
58
|
-
this._sdk.setConfigurationValue(sdk_geometry_api_sdk_v2_1.ShapeDiverSdkConfigType.REQUEST_HEADERS, this._headers);
|
|
59
|
-
}
|
|
60
|
-
// #endregion Constructors (1)
|
|
61
|
-
// #region Public Accessors (13)
|
|
62
|
-
get bearerToken() {
|
|
63
|
-
return this._bearerToken;
|
|
64
|
-
}
|
|
65
|
-
set bearerToken(value) {
|
|
66
|
-
this._bearerToken = value;
|
|
67
|
-
this._sdk.setConfigurationValue(sdk_geometry_api_sdk_v2_1.ShapeDiverSdkConfigType.JWT_TOKEN, value);
|
|
68
|
-
}
|
|
69
|
-
get canUploadGLTF() {
|
|
70
|
-
try {
|
|
71
|
-
this.checkAvailability('gltf-upload');
|
|
72
|
-
return true;
|
|
73
|
-
}
|
|
74
|
-
catch (e) {
|
|
75
|
-
return false;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
get exports() {
|
|
79
|
-
return this._exports;
|
|
80
|
-
}
|
|
81
|
-
get id() {
|
|
82
|
-
return this._id;
|
|
83
|
-
}
|
|
84
|
-
get initialized() {
|
|
85
|
-
return this._initialized;
|
|
86
|
-
}
|
|
87
|
-
get modelViewUrl() {
|
|
88
|
-
return this._modelViewUrl;
|
|
89
|
-
}
|
|
90
|
-
get outputs() {
|
|
91
|
-
return this._outputs;
|
|
92
|
-
}
|
|
93
|
-
get outputsFreeze() {
|
|
94
|
-
return this._outputsFreeze;
|
|
95
|
-
}
|
|
96
|
-
get parameterValues() {
|
|
97
|
-
return this._parameterValues;
|
|
98
|
-
}
|
|
99
|
-
get parameters() {
|
|
100
|
-
return this._parameters;
|
|
101
|
-
}
|
|
102
|
-
set refreshBearerToken(value) {
|
|
103
|
-
this._refreshBearerToken = value;
|
|
104
|
-
}
|
|
105
|
-
get ticket() {
|
|
106
|
-
return this._ticket;
|
|
107
|
-
}
|
|
108
|
-
get viewerSettings() {
|
|
109
|
-
return this._viewerSettings;
|
|
110
|
-
}
|
|
111
|
-
handleError(topic, scope, e, retry = false) {
|
|
112
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
113
|
-
if (e instanceof sdk_geometry_api_sdk_v2_1.ShapeDiverResponseError) {
|
|
114
|
-
if (e.error === sdk_geometry_api_sdk_v2_1.ShapeDiverResponseErrorType.SESSION_GONE_ERROR) {
|
|
115
|
-
// case 1: the session is no longer available
|
|
116
|
-
// we try to re-initialize the session 3 times, if that does not work, we close it
|
|
117
|
-
this._logger.warn(topic, `The session has been closed, trying to re-initialize.`);
|
|
118
|
-
if (this._retryCounter < 3) {
|
|
119
|
-
// we retry this 3 times, the `retry` option in the init function is set to true and passed on
|
|
120
|
-
this._retryCounter = retry ? this._retryCounter + 1 : 1;
|
|
121
|
-
try {
|
|
122
|
-
this._initialized = false;
|
|
123
|
-
yield this.init(this.parameterValues, true);
|
|
124
|
-
}
|
|
125
|
-
catch (e) {
|
|
126
|
-
if (e instanceof viewer_shared_services_1.ShapeDiverViewerError || e instanceof sdk_geometry_api_sdk_v2_1.ShapeDiverError)
|
|
127
|
-
throw e;
|
|
128
|
-
throw this._logger.handleError(topic, scope, e);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
// the retries were exceeded, we close the session
|
|
133
|
-
this._logger.warn(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Tried to retry the connect multiple times, bearer token still not valid. Closing Session.');
|
|
134
|
-
try {
|
|
135
|
-
yield this._closeOnFailure();
|
|
136
|
-
}
|
|
137
|
-
catch (e) { }
|
|
138
|
-
throw this._logger.handleError(topic, scope, e);
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
else if (e.error === sdk_geometry_api_sdk_v2_1.ShapeDiverResponseErrorType.JWT_VALIDATION_ERROR) {
|
|
142
|
-
// if any of the above errors occur, we try to get a new bearer token
|
|
143
|
-
// if we get a new one, we retry 3 times (by requiring new bearer tokens every time)
|
|
144
|
-
if (this._retryCounter < 3) {
|
|
145
|
-
if (this._refreshBearerToken) {
|
|
146
|
-
this.bearerToken = yield this._refreshBearerToken();
|
|
147
|
-
this._retryCounter = retry ? this._retryCounter + 1 : 1;
|
|
148
|
-
this._logger.warn(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Re-trying with new bearer token.');
|
|
149
|
-
}
|
|
150
|
-
else {
|
|
151
|
-
// no bearer tokens are supplied, we close the session
|
|
152
|
-
this._logger.warn(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'No retry possible, no new bearer token was supplied. Closing Session.');
|
|
153
|
-
try {
|
|
154
|
-
yield this._closeOnFailure();
|
|
155
|
-
}
|
|
156
|
-
catch (e) { }
|
|
157
|
-
throw this._logger.handleError(topic, scope, e);
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
// the retries were exceeded, we close the session
|
|
162
|
-
this._logger.warn(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Tried to retry the connect multiple times, bearer token still not valid. Closing Session.');
|
|
163
|
-
try {
|
|
164
|
-
yield this._closeOnFailure();
|
|
165
|
-
}
|
|
166
|
-
catch (e) { }
|
|
167
|
-
throw this._logger.handleError(topic, scope, e);
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
else {
|
|
171
|
-
throw this._logger.handleError(topic, scope, e);
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
else {
|
|
175
|
-
throw this._logger.handleError(topic, scope, e);
|
|
176
|
-
}
|
|
177
|
-
});
|
|
178
|
-
}
|
|
179
|
-
// #endregion Public Accessors (13)
|
|
180
|
-
// #region Public Methods (13)
|
|
181
|
-
close(retry = false) {
|
|
182
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
183
|
-
this.checkAvailability('close');
|
|
184
|
-
try {
|
|
185
|
-
this._httpClient.removeDataLoading(this._sessionId);
|
|
186
|
-
yield this._sdk.session.close(this._sessionId);
|
|
187
|
-
this._closed = true;
|
|
188
|
-
return true;
|
|
189
|
-
}
|
|
190
|
-
catch (e) {
|
|
191
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.close', e, retry);
|
|
192
|
-
return yield this.close(true);
|
|
193
|
-
}
|
|
194
|
-
});
|
|
195
|
-
}
|
|
196
|
-
/**
|
|
197
|
-
* Customizes the session with updated parameters to get the updated scene graph node.
|
|
198
|
-
*
|
|
199
|
-
* @param parameters the parameter set to update the session
|
|
200
|
-
* @returns promise with a scene graph node
|
|
201
|
-
*/
|
|
202
|
-
customize(cancelRequest) {
|
|
203
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
204
|
-
return this.customizeSession(this._parameterValues, cancelRequest);
|
|
205
|
-
});
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* Initializes the session with the ticket and modelViewUrl.
|
|
209
|
-
*
|
|
210
|
-
* @returns promise with a scene graph node
|
|
211
|
-
*/
|
|
212
|
-
init(parameterValues, retry = false) {
|
|
213
|
-
var _a, _b;
|
|
214
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
215
|
-
if (this._initialized === true) {
|
|
216
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError('Session.init: Session already initialized.');
|
|
217
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.init', error);
|
|
218
|
-
}
|
|
219
|
-
try {
|
|
220
|
-
this._performanceEvaluator.startSection('sessionResponse');
|
|
221
|
-
this._responseDto = yield this._sdk.session.init(this._ticket, parameterValues);
|
|
222
|
-
this._performanceEvaluator.endSection('sessionResponse');
|
|
223
|
-
this._viewerSettings = (_a = this._responseDto.viewer) === null || _a === void 0 ? void 0 : _a.config;
|
|
224
|
-
this._sessionId = this._responseDto.sessionId;
|
|
225
|
-
this._modelId = (_b = this._responseDto.model) === null || _b === void 0 ? void 0 : _b.id;
|
|
226
|
-
this._httpClient.addDataLoading(this._sessionId, {
|
|
227
|
-
getOutput: this._sdk.asset.getOutput.bind(this._sdk.asset),
|
|
228
|
-
getTexture: this._sdk.asset.getTexture.bind(this._sdk.asset),
|
|
229
|
-
getExport: this._sdk.asset.getExport.bind(this._sdk.asset),
|
|
230
|
-
downloadTexture: this._sdk.asset.downloadImage.bind(this._sdk.asset),
|
|
231
|
-
});
|
|
232
|
-
if (!this._sessionId)
|
|
233
|
-
throw new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.init: Initialization of session failed. ResponseDto did not have a sessionId.`);
|
|
234
|
-
if (!this._modelId)
|
|
235
|
-
throw new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.init: Initialization of session failed. ResponseDto did not have a model.id.`);
|
|
236
|
-
this.updateResponseDto(this._responseDto);
|
|
237
|
-
this._initialized = true;
|
|
238
|
-
}
|
|
239
|
-
catch (e) {
|
|
240
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.init', e, retry);
|
|
241
|
-
return yield this.init(parameterValues, true);
|
|
242
|
-
}
|
|
243
|
-
});
|
|
244
|
-
}
|
|
245
|
-
/**
|
|
246
|
-
* Load the outputs and return the scene graph node of the result.
|
|
247
|
-
* In case the outputs have a delay property, another customization request with the parameter set is sent.
|
|
248
|
-
*
|
|
249
|
-
* @param parameters the parameter set to update the session
|
|
250
|
-
* @param outputs the outputs to load
|
|
251
|
-
* @returns promise with a scene graph node
|
|
252
|
-
*/
|
|
253
|
-
loadOutputs(cancelRequest = () => false, retry = false) {
|
|
254
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
255
|
-
this.checkAvailability();
|
|
256
|
-
const o = Object.assign({}, this._outputs);
|
|
257
|
-
const of = Object.assign({}, this._outputsFreeze);
|
|
258
|
-
try {
|
|
259
|
-
const node = yield this._outputLoader.loadOutputs(this._responseDto, o, of, cancelRequest);
|
|
260
|
-
node.data.push(new SessionData_1.SessionData(this._responseDto));
|
|
261
|
-
return node;
|
|
262
|
-
}
|
|
263
|
-
catch (e) {
|
|
264
|
-
if (e instanceof OutputDelayException_1.OutputDelayException) {
|
|
265
|
-
yield this.timeout(e.delay);
|
|
266
|
-
}
|
|
267
|
-
else {
|
|
268
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.loadOutputs', e, retry);
|
|
269
|
-
if (cancelRequest())
|
|
270
|
-
return new SessionTreeNode_1.SessionTreeNode();
|
|
271
|
-
return yield this.loadOutputs(cancelRequest, true);
|
|
272
|
-
}
|
|
273
|
-
if (cancelRequest())
|
|
274
|
-
return new SessionTreeNode_1.SessionTreeNode();
|
|
275
|
-
let outputMapping = {};
|
|
276
|
-
for (let output in o)
|
|
277
|
-
outputMapping[output] = o[output].version;
|
|
278
|
-
try {
|
|
279
|
-
const responseDto = yield this._sdk.output.getCache(this._sessionId, outputMapping);
|
|
280
|
-
if (cancelRequest())
|
|
281
|
-
return new SessionTreeNode_1.SessionTreeNode();
|
|
282
|
-
this.updateResponseDto(responseDto);
|
|
283
|
-
return yield this.loadOutputs(cancelRequest);
|
|
284
|
-
}
|
|
285
|
-
catch (e) {
|
|
286
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.loadOutputs', e, retry);
|
|
287
|
-
if (cancelRequest())
|
|
288
|
-
return new SessionTreeNode_1.SessionTreeNode();
|
|
289
|
-
return yield this.loadOutputs(cancelRequest, true);
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
});
|
|
293
|
-
}
|
|
294
|
-
requestExport(exportId, parameters, maxWaitTime, retry = false) {
|
|
295
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
296
|
-
this.checkAvailability('export');
|
|
297
|
-
try {
|
|
298
|
-
const responseDto = yield this._sdk.utils.submitAndWaitForExport(this._sdk, this._sessionId, { exports: { id: exportId }, parameters }, maxWaitTime);
|
|
299
|
-
this.updateResponseDto(responseDto);
|
|
300
|
-
return this.exports[exportId];
|
|
301
|
-
}
|
|
302
|
-
catch (e) {
|
|
303
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.requestExport', e, retry);
|
|
304
|
-
return yield this.requestExport(exportId, parameters, maxWaitTime, true);
|
|
305
|
-
}
|
|
306
|
-
});
|
|
307
|
-
}
|
|
308
|
-
saveDefaultParameters(retry = false) {
|
|
309
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
310
|
-
this.checkAvailability('defaultparam', true);
|
|
311
|
-
try {
|
|
312
|
-
yield this._sdk.model.setDefaultParams(this._modelId, this._parameterValues);
|
|
313
|
-
return true;
|
|
314
|
-
}
|
|
315
|
-
catch (e) {
|
|
316
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.saveDefaultParameters', e, retry);
|
|
317
|
-
return yield this.saveDefaultParameters(true);
|
|
318
|
-
}
|
|
319
|
-
});
|
|
320
|
-
}
|
|
321
|
-
/**
|
|
322
|
-
* Save the export properties for displayname, order, tooltip and hidden
|
|
323
|
-
*
|
|
324
|
-
* @param exports
|
|
325
|
-
* @returns
|
|
326
|
-
*/
|
|
327
|
-
saveExportProperties(exports, retry = false) {
|
|
328
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
329
|
-
this.checkAvailability('export-definition', true);
|
|
330
|
-
try {
|
|
331
|
-
yield this._sdk.export.updateDefinitions(this._modelId, exports);
|
|
332
|
-
return true;
|
|
333
|
-
}
|
|
334
|
-
catch (e) {
|
|
335
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.saveExportProperties', e, retry);
|
|
336
|
-
return yield this.saveExportProperties(exports, true);
|
|
337
|
-
}
|
|
338
|
-
});
|
|
339
|
-
}
|
|
340
|
-
/**
|
|
341
|
-
* Save the output properties for displayname, order, tooltip and hidden
|
|
342
|
-
*
|
|
343
|
-
* @param outputs
|
|
344
|
-
* @returns
|
|
345
|
-
*/
|
|
346
|
-
saveOutputProperties(outputs, retry = false) {
|
|
347
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
348
|
-
this.checkAvailability('output-definition', true);
|
|
349
|
-
try {
|
|
350
|
-
yield this._sdk.output.updateDefinitions(this._modelId, outputs);
|
|
351
|
-
return true;
|
|
352
|
-
}
|
|
353
|
-
catch (e) {
|
|
354
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.saveOutputProperties', e, retry);
|
|
355
|
-
return yield this.saveOutputProperties(outputs, true);
|
|
356
|
-
}
|
|
357
|
-
});
|
|
358
|
-
}
|
|
359
|
-
/**
|
|
360
|
-
* Save the parameter properties for displayname, order, tooltip and hidden
|
|
361
|
-
*
|
|
362
|
-
* @param parameters
|
|
363
|
-
* @returns
|
|
364
|
-
*/
|
|
365
|
-
saveParameterProperties(parameters, retry = false) {
|
|
366
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
367
|
-
this.checkAvailability('parameter-definition', true);
|
|
368
|
-
try {
|
|
369
|
-
yield this._sdk.model.updateParameterDefinitions(this._modelId, parameters);
|
|
370
|
-
return true;
|
|
371
|
-
}
|
|
372
|
-
catch (e) {
|
|
373
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.saveParameterProperties', e, retry);
|
|
374
|
-
return yield this.saveParameterProperties(parameters, true);
|
|
375
|
-
}
|
|
376
|
-
});
|
|
377
|
-
}
|
|
378
|
-
saveSettings(json, retry = false) {
|
|
379
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
380
|
-
this.checkAvailability('configure', true);
|
|
381
|
-
try {
|
|
382
|
-
yield this._sdk.model.updateConfig(this._modelId, json);
|
|
383
|
-
return true;
|
|
384
|
-
}
|
|
385
|
-
catch (e) {
|
|
386
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.saveSettings', e, retry);
|
|
387
|
-
return yield this.saveSettings(json, true);
|
|
388
|
-
}
|
|
389
|
-
});
|
|
390
|
-
}
|
|
391
|
-
uploadFile(parameterId, data, type, retry = false) {
|
|
392
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
393
|
-
this.checkAvailability('file-upload');
|
|
394
|
-
try {
|
|
395
|
-
const responseDto = yield this._sdk.file.requestUpload(this._sessionId, {
|
|
396
|
-
[parameterId]: { size: data.size, format: type }
|
|
397
|
-
});
|
|
398
|
-
if (responseDto && responseDto.asset && responseDto.asset.file && responseDto.asset.file[parameterId]) {
|
|
399
|
-
const fileAsset = responseDto.asset.file[parameterId];
|
|
400
|
-
yield this._sdk.utils.upload(fileAsset.href, yield data.arrayBuffer(), type);
|
|
401
|
-
return fileAsset.id;
|
|
402
|
-
}
|
|
403
|
-
else {
|
|
404
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.uploadFile: Upload reply has not the required format.`);
|
|
405
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.uploadFile', error);
|
|
406
|
-
}
|
|
407
|
-
}
|
|
408
|
-
catch (e) {
|
|
409
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.uploadFile', e, retry);
|
|
410
|
-
return yield this.uploadFile(parameterId, data, type, true);
|
|
411
|
-
}
|
|
412
|
-
});
|
|
413
|
-
}
|
|
414
|
-
uploadGLTF(blob, conversion = sdk_geometry_api_sdk_v2_1.ShapeDiverRequestGltfUploadQueryConversion.NONE, retry = false) {
|
|
415
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
416
|
-
this.checkAvailability('gltf-upload');
|
|
417
|
-
try {
|
|
418
|
-
const responseDto = yield this._sdk.gltf.upload(this._sessionId, yield blob.arrayBuffer(), 'model/gltf-binary', conversion);
|
|
419
|
-
if (!responseDto || !responseDto.gltf || !responseDto.gltf.href) {
|
|
420
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.uploadGLTF: Upload reply has not the required format.`);
|
|
421
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.uploadGLTF', error);
|
|
422
|
-
}
|
|
423
|
-
return responseDto.gltf.href;
|
|
424
|
-
}
|
|
425
|
-
catch (e) {
|
|
426
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.uploadGLTF', e, retry);
|
|
427
|
-
return yield this.uploadGLTF(blob, conversion, true);
|
|
428
|
-
}
|
|
429
|
-
});
|
|
430
|
-
}
|
|
431
|
-
// #endregion Public Methods (13)
|
|
432
|
-
// #region Private Methods (5)
|
|
433
|
-
checkAvailability(action, checkForModelId = false) {
|
|
434
|
-
var _a;
|
|
435
|
-
if (!this._responseDto) {
|
|
436
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.checkAvailability: responseDto not available.`);
|
|
437
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.checkAvailability', error);
|
|
438
|
-
}
|
|
439
|
-
if (!this._sessionId) {
|
|
440
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.checkAvailability: sessionId not available.`);
|
|
441
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.checkAvailability', error);
|
|
442
|
-
}
|
|
443
|
-
if (checkForModelId && !this._modelId) {
|
|
444
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.checkAvailability: modelId not available.`);
|
|
445
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.checkAvailability', error);
|
|
446
|
-
}
|
|
447
|
-
if (action && !this._responseDto.actions) {
|
|
448
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.checkAvailability: actions not available.`);
|
|
449
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.checkAvailability', error);
|
|
450
|
-
}
|
|
451
|
-
const responseDtoAction = (_a = this._responseDto.actions) === null || _a === void 0 ? void 0 : _a.find(a => a.name === action);
|
|
452
|
-
if (action && !responseDtoAction) {
|
|
453
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.checkAvailability: action ${action} not available.`);
|
|
454
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.checkAvailability', error);
|
|
455
|
-
}
|
|
456
|
-
}
|
|
457
|
-
customizeSession(parameters, cancelRequest, retry = false) {
|
|
458
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
459
|
-
this.checkAvailability('customize');
|
|
460
|
-
try {
|
|
461
|
-
this._performanceEvaluator.startSection('sessionResponse');
|
|
462
|
-
const responseDto = yield this._sdk.utils.submitAndWaitForCustomization(this._sdk, this._sessionId, parameters);
|
|
463
|
-
this._performanceEvaluator.endSection('sessionResponse');
|
|
464
|
-
if (cancelRequest())
|
|
465
|
-
return new SessionTreeNode_1.SessionTreeNode();
|
|
466
|
-
this.updateResponseDto(responseDto);
|
|
467
|
-
return this.loadOutputs(cancelRequest);
|
|
468
|
-
}
|
|
469
|
-
catch (e) {
|
|
470
|
-
yield this.handleError(viewer_shared_services_1.LOGGINGTOPIC.SESSION, 'Session.customizeSession', e, retry);
|
|
471
|
-
if (cancelRequest())
|
|
472
|
-
return new SessionTreeNode_1.SessionTreeNode();
|
|
473
|
-
return yield this.customizeSession(parameters, cancelRequest, true);
|
|
474
|
-
}
|
|
475
|
-
});
|
|
476
|
-
}
|
|
477
|
-
/**
|
|
478
|
-
* Returns a promise that resolves after the amount of milliseconds provided.
|
|
479
|
-
*
|
|
480
|
-
* @param ms the milliseconds
|
|
481
|
-
* @returns promise that resolve after specified milliseconds
|
|
482
|
-
*/
|
|
483
|
-
timeout(ms) {
|
|
484
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
485
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
486
|
-
});
|
|
487
|
-
}
|
|
488
|
-
updateResponseDto(responseDto) {
|
|
489
|
-
if (!this._responseDto) {
|
|
490
|
-
this._responseDto = responseDto;
|
|
491
|
-
return;
|
|
492
|
-
}
|
|
493
|
-
// convert parameters
|
|
494
|
-
if (responseDto.parameters) {
|
|
495
|
-
for (let parameterId in responseDto.parameters) {
|
|
496
|
-
this._responseDto.parameters = this._responseDto.parameters || {};
|
|
497
|
-
this._responseDto.parameters[parameterId] = this._responseDto.parameters[parameterId] || responseDto.parameters[parameterId];
|
|
498
|
-
}
|
|
499
|
-
}
|
|
500
|
-
// convert outputs
|
|
501
|
-
if (responseDto.outputs) {
|
|
502
|
-
for (let outputId in responseDto.outputs) {
|
|
503
|
-
this._responseDto.outputs = this._responseDto.outputs || {};
|
|
504
|
-
if ('version' in responseDto.outputs[outputId] || !(this._responseDto.outputs[outputId] && 'version' in this._responseDto.outputs[outputId]))
|
|
505
|
-
this._responseDto.outputs[outputId] = responseDto.outputs[outputId];
|
|
506
|
-
}
|
|
507
|
-
}
|
|
508
|
-
// convert exports
|
|
509
|
-
if (responseDto.exports) {
|
|
510
|
-
for (let exportId in responseDto.exports) {
|
|
511
|
-
this._responseDto.exports = this._responseDto.exports || {};
|
|
512
|
-
if ('version' in responseDto.exports[exportId] || !(this._responseDto.exports[exportId] && 'version' in this._responseDto.exports[exportId]))
|
|
513
|
-
this._responseDto.exports[exportId] = responseDto.exports[exportId];
|
|
514
|
-
}
|
|
515
|
-
}
|
|
516
|
-
for (let parameterId in this._responseDto.parameters) {
|
|
517
|
-
if (this.parameters[parameterId])
|
|
518
|
-
continue;
|
|
519
|
-
this.parameters[parameterId] = this._responseDto.parameters[parameterId];
|
|
520
|
-
this.parameters[parameterId].id = parameterId;
|
|
521
|
-
}
|
|
522
|
-
for (let exportId in this._responseDto.exports)
|
|
523
|
-
if (this._responseDto.exports[exportId].type === sdk_geometry_api_sdk_v2_1.ShapeDiverResponseExportDefinitionType.EMAIL || this._responseDto.exports[exportId].type === sdk_geometry_api_sdk_v2_1.ShapeDiverResponseExportDefinitionType.DOWNLOAD) {
|
|
524
|
-
this.exports[exportId] = this._responseDto.exports[exportId];
|
|
525
|
-
this.exports[exportId].id = exportId;
|
|
526
|
-
}
|
|
527
|
-
for (let outputId in this._responseDto.outputs) {
|
|
528
|
-
this.outputs[outputId] = this._responseDto.outputs[outputId];
|
|
529
|
-
this.outputs[outputId].id = outputId;
|
|
530
|
-
if (this.outputsFreeze[outputId] === undefined)
|
|
531
|
-
this.outputsFreeze[outputId] = false;
|
|
532
|
-
}
|
|
533
|
-
}
|
|
534
|
-
}
|
|
535
|
-
exports.Session = Session;
|
|
536
|
-
//# sourceMappingURL=Session.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Session.js","sourceRoot":"","sources":["../../src/implementation/Session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { ShapeDiverRequestGltfUploadQueryConversion, ShapeDiverResponseExport, ShapeDiverResponseOutput, ShapeDiverResponseParameter } from '@shapediver/sdk.geometry-api-sdk-v2';
|
|
2
|
-
import { TreeNode } from '@shapediver/viewer.shared.node-tree';
|
|
3
|
-
export interface ISession {
|
|
4
|
-
bearerToken?: string;
|
|
5
|
-
canUploadGLTF: boolean;
|
|
6
|
-
exports: {
|
|
7
|
-
[key: string]: ShapeDiverResponseExport;
|
|
8
|
-
};
|
|
9
|
-
id: string;
|
|
10
|
-
initialized: boolean;
|
|
11
|
-
modelViewUrl: string;
|
|
12
|
-
outputs: {
|
|
13
|
-
[key: string]: ShapeDiverResponseOutput;
|
|
14
|
-
};
|
|
15
|
-
parameters: {
|
|
16
|
-
[key: string]: ShapeDiverResponseParameter;
|
|
17
|
-
};
|
|
18
|
-
refreshBearerToken: () => Promise<string>;
|
|
19
|
-
ticket: string;
|
|
20
|
-
viewerSettings?: object;
|
|
21
|
-
customize(cancelRequest: () => boolean): Promise<TreeNode>;
|
|
22
|
-
init(parameterValues?: {
|
|
23
|
-
[key: string]: string;
|
|
24
|
-
}): Promise<void>;
|
|
25
|
-
loadOutputs(cancelRequest: () => boolean): Promise<TreeNode>;
|
|
26
|
-
requestExport(exportId: string, parameters: {
|
|
27
|
-
[key: string]: string;
|
|
28
|
-
}, maxWaitTime: number): Promise<ShapeDiverResponseExport>;
|
|
29
|
-
uploadFile(parameterId: string, data: File, type: string): Promise<string>;
|
|
30
|
-
uploadGLTF(blob: Blob, conversion?: ShapeDiverRequestGltfUploadQueryConversion): Promise<string>;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=ISession.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ISession.d.ts","sourceRoot":"","sources":["../../src/interfaces/ISession.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0CAA0C,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAClL,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAA;AAE9D,MAAM,WAAW,QAAQ;IAGrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,wBAAwB,CAAA;KAAE,CAAC;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,wBAAwB,CAAA;KAAE,CAAC;IACrD,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,2BAA2B,CAAA;KAAE,CAAC;IAC3D,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IAMxB,SAAS,CAAC,aAAa,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3D,IAAI,CAAC,eAAe,CAAC,EAAE;QACrB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,WAAW,CAAC,aAAa,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7D,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC/H,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3E,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,0CAA0C,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAGpG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ISession.js","sourceRoot":"","sources":["../../src/interfaces/ISession.ts"],"names":[],"mappings":""}
|