@shapediver/viewer.shared.services 2.10.1-rc.0 → 2.12.0
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/converter/Converter.d.ts +15 -7
- package/dist/converter/Converter.d.ts.map +1 -1
- package/dist/converter/Converter.js +64 -55
- package/dist/converter/Converter.js.map +1 -1
- package/dist/dom-event-engine/DomEventEngine.js +9 -5
- package/dist/dom-event-engine/DomEventEngine.js.map +1 -1
- package/dist/dom-event-engine/IDomEventListener.js +2 -1
- package/dist/event-engine/EventEngine.js +16 -12
- package/dist/event-engine/EventEngine.js.map +1 -1
- package/dist/event-engine/EventTypes.d.ts +7 -2
- package/dist/event-engine/EventTypes.d.ts.map +1 -1
- package/dist/event-engine/EventTypes.js +24 -15
- package/dist/event-engine/EventTypes.js.map +1 -1
- package/dist/event-engine/interfaces/ICallback.js +2 -1
- package/dist/event-engine/interfaces/IEvent.js +2 -1
- package/dist/event-engine/interfaces/IEvent.js.map +1 -1
- package/dist/event-engine/interfaces/IListener.js +2 -1
- package/dist/http-client/HttpClient.d.ts +78 -2
- package/dist/http-client/HttpClient.d.ts.map +1 -1
- package/dist/http-client/HttpClient.js +177 -20
- package/dist/http-client/HttpClient.js.map +1 -1
- package/dist/http-client/HttpResponse.d.ts +1 -0
- package/dist/http-client/HttpResponse.d.ts.map +1 -1
- package/dist/http-client/HttpResponse.js +2 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +81 -32
- package/dist/index.js.map +1 -1
- package/dist/input-validator/InputValidator.js +16 -9
- package/dist/input-validator/InputValidator.js.map +1 -1
- package/dist/logger/ErrorTypeGuards.js +55 -35
- package/dist/logger/ErrorTypeGuards.js.map +1 -1
- package/dist/logger/Logger.js +7 -3
- package/dist/logger/Logger.js.map +1 -1
- package/dist/logger/ShapeDiverBackendErrors.js +13 -7
- package/dist/logger/ShapeDiverBackendErrors.js.map +1 -1
- package/dist/logger/ShapeDiverError.js +9 -4
- package/dist/logger/ShapeDiverError.js.map +1 -1
- package/dist/logger/ShapeDiverViewerErrors.js +40 -25
- package/dist/logger/ShapeDiverViewerErrors.js.map +1 -1
- package/dist/performance-evaluator/PerformanceEvaluator.d.ts +13 -0
- package/dist/performance-evaluator/PerformanceEvaluator.d.ts.map +1 -1
- package/dist/performance-evaluator/PerformanceEvaluator.js +39 -3
- package/dist/performance-evaluator/PerformanceEvaluator.js.map +1 -1
- package/dist/settings-engine/SettingsEngine.js +20 -16
- package/dist/settings-engine/SettingsEngine.js.map +1 -1
- package/dist/state-engine/StateEngine.d.ts +1 -0
- package/dist/state-engine/StateEngine.d.ts.map +1 -1
- package/dist/state-engine/StateEngine.js +8 -4
- package/dist/state-engine/StateEngine.js.map +1 -1
- package/dist/state-engine/StatePromise.js +5 -1
- package/dist/state-engine/StatePromise.js.map +1 -1
- package/dist/system-info/SystemInfo.js +10 -3
- package/dist/system-info/SystemInfo.js.map +1 -1
- package/dist/type-check/TypeChecker.js +5 -1
- package/dist/type-check/TypeChecker.js.map +1 -1
- package/dist/uuid-generator/UuidGenerator.js +10 -6
- package/dist/uuid-generator/UuidGenerator.js.map +1 -1
- package/package.json +4 -4
- package/src/converter/Converter.ts +69 -64
- package/src/event-engine/EventTypes.ts +8 -2
- package/src/http-client/HttpClient.ts +204 -26
- package/src/http-client/HttpResponse.ts +3 -1
- package/src/index.ts +2 -2
- package/src/performance-evaluator/PerformanceEvaluator.ts +33 -3
- package/src/settings-engine/SettingsEngine.ts +1 -1
- package/src/state-engine/StateEngine.ts +2 -0
|
@@ -1,17 +1,21 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EVENTTYPE = exports.EVENTTYPE_INTERACTION = exports.EVENTTYPE_TASK = exports.EVENTTYPE_OUTPUT = exports.EVENTTYPE_SESSION = exports.EVENTTYPE_VIEWPORT = exports.EVENTTYPE_SCENE = exports.EVENTTYPE_RENDERING = exports.EVENTTYPE_CAMERA = void 0;
|
|
4
|
+
var EVENTTYPE_CAMERA;
|
|
2
5
|
(function (EVENTTYPE_CAMERA) {
|
|
3
6
|
EVENTTYPE_CAMERA["CAMERA_START"] = "camera.start";
|
|
4
7
|
EVENTTYPE_CAMERA["CAMERA_MOVE"] = "camera.move";
|
|
5
8
|
EVENTTYPE_CAMERA["CAMERA_END"] = "camera.end";
|
|
6
|
-
})(EVENTTYPE_CAMERA || (EVENTTYPE_CAMERA = {}));
|
|
7
|
-
|
|
9
|
+
})(EVENTTYPE_CAMERA = exports.EVENTTYPE_CAMERA || (exports.EVENTTYPE_CAMERA = {}));
|
|
10
|
+
var EVENTTYPE_RENDERING;
|
|
8
11
|
(function (EVENTTYPE_RENDERING) {
|
|
9
12
|
EVENTTYPE_RENDERING["BEAUTY_RENDERING_FINISHED"] = "rendering.beautyRenderingFinished";
|
|
10
|
-
})(EVENTTYPE_RENDERING || (EVENTTYPE_RENDERING = {}));
|
|
11
|
-
|
|
13
|
+
})(EVENTTYPE_RENDERING = exports.EVENTTYPE_RENDERING || (exports.EVENTTYPE_RENDERING = {}));
|
|
14
|
+
var EVENTTYPE_SCENE;
|
|
12
15
|
(function (EVENTTYPE_SCENE) {
|
|
13
16
|
EVENTTYPE_SCENE["SCENE_BOUNDING_BOX_CHANGE"] = "scene.boundingBoxChange";
|
|
14
|
-
|
|
17
|
+
EVENTTYPE_SCENE["SCENE_BOUNDING_BOX_EMPTY"] = "scene.boundingBoxEmpty";
|
|
18
|
+
})(EVENTTYPE_SCENE = exports.EVENTTYPE_SCENE || (exports.EVENTTYPE_SCENE = {}));
|
|
15
19
|
// VIEWPORT
|
|
16
20
|
// FRAMERATE
|
|
17
21
|
// RENDER_INFO
|
|
@@ -20,7 +24,7 @@ export var EVENTTYPE_SCENE;
|
|
|
20
24
|
// RENDER_BEAUTY_END
|
|
21
25
|
// VISIBILITY_ON
|
|
22
26
|
// VISIBILITY_OFF
|
|
23
|
-
|
|
27
|
+
var EVENTTYPE_VIEWPORT;
|
|
24
28
|
(function (EVENTTYPE_VIEWPORT) {
|
|
25
29
|
EVENTTYPE_VIEWPORT["BUSY_MODE_ON"] = "viewport.busy.on";
|
|
26
30
|
EVENTTYPE_VIEWPORT["BUSY_MODE_OFF"] = "viewport.busy.off";
|
|
@@ -30,22 +34,26 @@ export var EVENTTYPE_VIEWPORT;
|
|
|
30
34
|
EVENTTYPE_VIEWPORT["VIEWPORT_SETTINGS_LOADED"] = "viewport.settingsLoaded";
|
|
31
35
|
EVENTTYPE_VIEWPORT["VIEWPORT_VISIBLE"] = "viewport.visible";
|
|
32
36
|
EVENTTYPE_VIEWPORT["VIEWPORT_HIDDEN"] = "viewport.hidden";
|
|
33
|
-
})(EVENTTYPE_VIEWPORT || (EVENTTYPE_VIEWPORT = {}));
|
|
34
|
-
|
|
37
|
+
})(EVENTTYPE_VIEWPORT = exports.EVENTTYPE_VIEWPORT || (exports.EVENTTYPE_VIEWPORT = {}));
|
|
38
|
+
var EVENTTYPE_SESSION;
|
|
35
39
|
(function (EVENTTYPE_SESSION) {
|
|
36
40
|
EVENTTYPE_SESSION["SESSION_CREATED"] = "session.created";
|
|
37
41
|
EVENTTYPE_SESSION["SESSION_CUSTOMIZED"] = "session.customized";
|
|
38
42
|
EVENTTYPE_SESSION["SESSION_CLOSED"] = "session.closed";
|
|
39
43
|
EVENTTYPE_SESSION["SESSION_INITIAL_OUTPUTS_LOADED"] = "session.initialOutputsLoaded";
|
|
40
|
-
})(EVENTTYPE_SESSION || (EVENTTYPE_SESSION = {}));
|
|
41
|
-
|
|
44
|
+
})(EVENTTYPE_SESSION = exports.EVENTTYPE_SESSION || (exports.EVENTTYPE_SESSION = {}));
|
|
45
|
+
var EVENTTYPE_OUTPUT;
|
|
46
|
+
(function (EVENTTYPE_OUTPUT) {
|
|
47
|
+
EVENTTYPE_OUTPUT["OUTPUT_UPDATED"] = "output.updated";
|
|
48
|
+
})(EVENTTYPE_OUTPUT = exports.EVENTTYPE_OUTPUT || (exports.EVENTTYPE_OUTPUT = {}));
|
|
49
|
+
var EVENTTYPE_TASK;
|
|
42
50
|
(function (EVENTTYPE_TASK) {
|
|
43
51
|
EVENTTYPE_TASK["TASK_START"] = "task.start";
|
|
44
52
|
EVENTTYPE_TASK["TASK_PROCESS"] = "task.process";
|
|
45
53
|
EVENTTYPE_TASK["TASK_END"] = "task.end";
|
|
46
54
|
EVENTTYPE_TASK["TASK_CANCEL"] = "task.cancel";
|
|
47
|
-
})(EVENTTYPE_TASK || (EVENTTYPE_TASK = {}));
|
|
48
|
-
|
|
55
|
+
})(EVENTTYPE_TASK = exports.EVENTTYPE_TASK || (exports.EVENTTYPE_TASK = {}));
|
|
56
|
+
var EVENTTYPE_INTERACTION;
|
|
49
57
|
(function (EVENTTYPE_INTERACTION) {
|
|
50
58
|
EVENTTYPE_INTERACTION["DRAG_START"] = "interaction.drag.start";
|
|
51
59
|
EVENTTYPE_INTERACTION["DRAG_MOVE"] = "interaction.drag.move";
|
|
@@ -54,9 +62,10 @@ export var EVENTTYPE_INTERACTION;
|
|
|
54
62
|
EVENTTYPE_INTERACTION["HOVER_OFF"] = "interaction.hover.off";
|
|
55
63
|
EVENTTYPE_INTERACTION["SELECT_ON"] = "interaction.select.on";
|
|
56
64
|
EVENTTYPE_INTERACTION["SELECT_OFF"] = "interaction.select.off";
|
|
57
|
-
})(EVENTTYPE_INTERACTION || (EVENTTYPE_INTERACTION = {}));
|
|
58
|
-
|
|
65
|
+
})(EVENTTYPE_INTERACTION = exports.EVENTTYPE_INTERACTION || (exports.EVENTTYPE_INTERACTION = {}));
|
|
66
|
+
exports.EVENTTYPE = {
|
|
59
67
|
CAMERA: EVENTTYPE_CAMERA,
|
|
68
|
+
OUTPUT: EVENTTYPE_OUTPUT,
|
|
60
69
|
RENDERING: EVENTTYPE_RENDERING,
|
|
61
70
|
SCENE: EVENTTYPE_SCENE,
|
|
62
71
|
SESSION: EVENTTYPE_SESSION,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventTypes.js","sourceRoot":"","sources":["../../src/event-engine/EventTypes.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"EventTypes.js","sourceRoot":"","sources":["../../src/event-engine/EventTypes.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,iDAA6B,CAAA;IAC7B,+CAA2B,CAAA;IAC3B,6CAAyB,CAAA;AAC7B,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B;AAED,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC3B,sFAA+D,CAAA;AACnE,CAAC,EAFW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAE9B;AAED,IAAY,eAGX;AAHD,WAAY,eAAe;IACvB,wEAAqD,CAAA;IACrD,sEAAmD,CAAA;AACvD,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B;AAED,WAAW;AACX,gBAAgB;AAChB,kBAAkB;AAClB,0BAA0B;AAC1B,2BAA2B;AAC3B,wBAAwB;AACxB,oBAAoB;AACpB,qBAAqB;AAErB,IAAY,kBASX;AATD,WAAY,kBAAkB;IAC1B,uDAAiC,CAAA;IACjC,yDAAmC,CAAA;IACnC,2DAAqC,CAAA;IACrC,2DAAqC,CAAA;IACrC,yDAAmC,CAAA;IACnC,0EAAoD,CAAA;IACpD,2DAAqC,CAAA;IACrC,yDAAmC,CAAA;AACvC,CAAC,EATW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAS7B;AAED,IAAY,iBAKX;AALD,WAAY,iBAAiB;IACzB,wDAAmC,CAAA;IACnC,8DAAyC,CAAA;IACzC,sDAAiC,CAAA;IACjC,oFAA+D,CAAA;AACnE,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AAED,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IACxB,qDAAiC,CAAA;AACrC,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B;AAED,IAAY,cAKX;AALD,WAAY,cAAc;IACtB,2CAAyB,CAAA;IACzB,+CAA6B,CAAA;IAC7B,uCAAqB,CAAA;IACrB,6CAA2B,CAAA;AAC/B,CAAC,EALW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAKzB;AAED,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC7B,8DAAqC,CAAA;IACrC,4DAAmC,CAAA;IACnC,0DAAiC,CAAA;IACjC,0DAAiC,CAAA;IACjC,4DAAmC,CAAA;IACnC,4DAAmC,CAAA;IACnC,8DAAqC,CAAA;AACzC,CAAC,EARW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAQhC;AAEY,QAAA,SAAS,GAAG;IACrB,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,mBAAmB;IAC9B,KAAK,EAAE,eAAe;IACtB,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE,kBAAkB;IAC5B,WAAW,EAAE,qBAAqB;IAClC,IAAI,EAAE,cAAc;CACvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IEvent.js","sourceRoot":"","sources":["../../../src/event-engine/interfaces/IEvent.ts"],"names":[],"mappings":"AAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"IEvent.js","sourceRoot":"","sources":["../../../src/event-engine/interfaces/IEvent.ts"],"names":[],"mappings":";;AAA0B,CAAC"}
|
|
@@ -3,9 +3,25 @@ import { ShapeDiverError as ShapeDiverBackendError } from '@shapediver/sdk.geome
|
|
|
3
3
|
import { HttpResponse } from './HttpResponse';
|
|
4
4
|
export declare class HttpClient {
|
|
5
5
|
private static _instance;
|
|
6
|
+
private _dataCache;
|
|
7
|
+
private _enableCaching;
|
|
8
|
+
private _excludedQueryParameters;
|
|
9
|
+
private _maxCacheSize;
|
|
6
10
|
private _sessionLoading;
|
|
7
11
|
private constructor();
|
|
8
12
|
static get instance(): HttpClient;
|
|
13
|
+
get enableCaching(): boolean;
|
|
14
|
+
set enableCaching(value: boolean);
|
|
15
|
+
get excludedQueryParameters(): string[];
|
|
16
|
+
set excludedQueryParameters(value: string[]);
|
|
17
|
+
get maxCacheSize(): number;
|
|
18
|
+
set maxCacheSize(value: number);
|
|
19
|
+
/**
|
|
20
|
+
* Add the data loading options from a session.
|
|
21
|
+
*
|
|
22
|
+
* @param sessionId
|
|
23
|
+
* @param callbacks
|
|
24
|
+
*/
|
|
9
25
|
addDataLoading(sessionId: string, callbacks: {
|
|
10
26
|
getAsset: (url: string) => Promise<[ArrayBuffer, string, string]>;
|
|
11
27
|
downloadTexture: (sessionId: string, url: string) => Promise<[ArrayBuffer, string]>;
|
|
@@ -20,9 +36,69 @@ export declare class HttpClient {
|
|
|
20
36
|
* @param e
|
|
21
37
|
*/
|
|
22
38
|
convertError(e: ShapeDiverBackendError | Error | unknown): void;
|
|
23
|
-
|
|
24
|
-
|
|
39
|
+
/**
|
|
40
|
+
* Get the requested resource either as a download or from the cache.
|
|
41
|
+
* If available, the registered session loading is used for download.
|
|
42
|
+
* Textures are downloaded via a specific endpoint and can be converted in this step as well.
|
|
43
|
+
* Depending on the provided caching options, the requested resource might already be cached.
|
|
44
|
+
*
|
|
45
|
+
* @param href
|
|
46
|
+
* @param config
|
|
47
|
+
* @param textureLoading
|
|
48
|
+
* @param textureConversion
|
|
49
|
+
* @returns
|
|
50
|
+
*/
|
|
51
|
+
get(href: string, config?: AxiosRequestConfig, textureLoading?: boolean): Promise<HttpResponse<unknown>>;
|
|
52
|
+
/**
|
|
53
|
+
* Get the requested texture either as a download or from the cache.
|
|
54
|
+
*
|
|
55
|
+
* @param href
|
|
56
|
+
* @returns
|
|
57
|
+
*/
|
|
58
|
+
loadTexture(href: string): Promise<HttpResponse<{
|
|
59
|
+
image: HTMLImageElement;
|
|
60
|
+
blob: Blob;
|
|
61
|
+
}>>;
|
|
62
|
+
/**
|
|
63
|
+
* Add the data loading options from a session.
|
|
64
|
+
*
|
|
65
|
+
* @param sessionId
|
|
66
|
+
*/
|
|
25
67
|
removeDataLoading(sessionId: string): void;
|
|
68
|
+
/**
|
|
69
|
+
* Add
|
|
70
|
+
*
|
|
71
|
+
* @param key
|
|
72
|
+
* @param value
|
|
73
|
+
*/
|
|
74
|
+
private addToCache;
|
|
75
|
+
/**
|
|
76
|
+
* Calculate the current cache size from all resolved promises.
|
|
77
|
+
*
|
|
78
|
+
* @returns
|
|
79
|
+
*/
|
|
80
|
+
private calculateCacheSize;
|
|
81
|
+
/**
|
|
82
|
+
* Get the value of an object from the cache.
|
|
83
|
+
*
|
|
84
|
+
* @param key
|
|
85
|
+
* @returns
|
|
86
|
+
*/
|
|
87
|
+
private getFromCache;
|
|
88
|
+
/**
|
|
89
|
+
* Get the session id of the provided href.
|
|
90
|
+
*
|
|
91
|
+
* @param href
|
|
92
|
+
* @returns
|
|
93
|
+
*/
|
|
26
94
|
private getSessionId;
|
|
95
|
+
/**
|
|
96
|
+
* Convert the provided href to a data cache key.
|
|
97
|
+
* In this conversion the excludedQueryParameters are removed from the href.
|
|
98
|
+
*
|
|
99
|
+
* @param href
|
|
100
|
+
* @returns
|
|
101
|
+
*/
|
|
102
|
+
private hrefToDataKey;
|
|
27
103
|
}
|
|
28
104
|
//# sourceMappingURL=HttpClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpClient.d.ts","sourceRoot":"","sources":["../../src/http-client/HttpClient.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,kBAAkB,EAAE,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"HttpClient.d.ts","sourceRoot":"","sources":["../../src/http-client/HttpClient.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,eAAe,IAAI,sBAAsB,EAAkD,MAAM,qCAAqC,CAAC;AAEhJ,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,qBAAa,UAAU;IAEnB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAa;IAErC,OAAO,CAAC,UAAU,CAOC;IACnB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,wBAAwB,CAAqD;IACrF,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,eAAe,CAKhB;IAOP,OAAO;IAMP,WAAkB,QAAQ,eAEzB;IAMD,IAAW,aAAa,IAAI,OAAO,CAElC;IAED,IAAW,aAAa,CAAC,KAAK,EAAE,OAAO,EAItC;IAED,IAAW,uBAAuB,IAAI,MAAM,EAAE,CAE7C;IAED,IAAW,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,EAEjD;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,YAAY,CAAC,KAAK,EAAE,MAAM,EAEpC;IAMD;;;;;OAKG;IACI,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE;QAChD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAClE,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;KACvF;IAID;;;;;;;;OAQG;IACI,YAAY,CAAC,CAAC,EAAE,sBAAsB,GAAG,KAAK,GAAG,OAAO;IAU/D;;;;;;;;;;;OAWG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,kBAAoD,EAAE,cAAc,GAAE,OAAe,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAgF7J;;;;;OAKG;IACU,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;QAAE,KAAK,EAAE,gBAAgB,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IAetG;;;;OAIG;IACI,iBAAiB,CAAC,SAAS,EAAE,MAAM;IAQ1C;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAmBlB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAMpB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAepB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;CAkBxB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,13 +8,24 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.HttpClient = void 0;
|
|
16
|
+
const axios_1 = __importDefault(require("axios"));
|
|
17
|
+
const sdk_geometry_api_sdk_v2_1 = require("@shapediver/sdk.geometry-api-sdk-v2");
|
|
18
|
+
const ShapeDiverBackendErrors_1 = require("../logger/ShapeDiverBackendErrors");
|
|
19
|
+
const Converter_1 = require("../converter/Converter");
|
|
20
|
+
class HttpClient {
|
|
21
|
+
// #endregion Properties (7)
|
|
15
22
|
// #region Constructors (1)
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
16
24
|
constructor() {
|
|
25
|
+
this._dataCache = new Map();
|
|
26
|
+
this._enableCaching = true;
|
|
27
|
+
this._excludedQueryParameters = ['Expires', 'Signature', 'Key-Pair-Id'];
|
|
28
|
+
this._maxCacheSize = 1024 * 1024 * 32;
|
|
17
29
|
this._sessionLoading = {};
|
|
18
30
|
}
|
|
19
31
|
// #endregion Constructors (1)
|
|
@@ -22,7 +34,35 @@ export class HttpClient {
|
|
|
22
34
|
return this._instance || (this._instance = new this());
|
|
23
35
|
}
|
|
24
36
|
// #endregion Public Static Accessors (1)
|
|
37
|
+
// #region Public Accessors (6)
|
|
38
|
+
get enableCaching() {
|
|
39
|
+
return this._enableCaching;
|
|
40
|
+
}
|
|
41
|
+
set enableCaching(value) {
|
|
42
|
+
this._enableCaching = value;
|
|
43
|
+
if (this._enableCaching === false)
|
|
44
|
+
this._dataCache.clear();
|
|
45
|
+
}
|
|
46
|
+
get excludedQueryParameters() {
|
|
47
|
+
return this._excludedQueryParameters;
|
|
48
|
+
}
|
|
49
|
+
set excludedQueryParameters(value) {
|
|
50
|
+
this._excludedQueryParameters = value;
|
|
51
|
+
}
|
|
52
|
+
get maxCacheSize() {
|
|
53
|
+
return this._maxCacheSize;
|
|
54
|
+
}
|
|
55
|
+
set maxCacheSize(value) {
|
|
56
|
+
this._maxCacheSize = value;
|
|
57
|
+
}
|
|
58
|
+
// #endregion Public Accessors (6)
|
|
25
59
|
// #region Public Methods (5)
|
|
60
|
+
/**
|
|
61
|
+
* Add the data loading options from a session.
|
|
62
|
+
*
|
|
63
|
+
* @param sessionId
|
|
64
|
+
* @param callbacks
|
|
65
|
+
*/
|
|
26
66
|
addDataLoading(sessionId, callbacks) {
|
|
27
67
|
this._sessionLoading[sessionId] = callbacks;
|
|
28
68
|
}
|
|
@@ -36,18 +76,34 @@ export class HttpClient {
|
|
|
36
76
|
* @param e
|
|
37
77
|
*/
|
|
38
78
|
convertError(e) {
|
|
39
|
-
if (isGBResponseError(e)) {
|
|
40
|
-
throw new ShapeDiverGeometryBackendResponseError(e.message, e.status, e.error, e.desc);
|
|
79
|
+
if ((0, sdk_geometry_api_sdk_v2_1.isGBResponseError)(e)) {
|
|
80
|
+
throw new ShapeDiverBackendErrors_1.ShapeDiverGeometryBackendResponseError(e.message, e.status, e.error, e.desc);
|
|
41
81
|
}
|
|
42
|
-
else if (isGBRequestError(e)) {
|
|
43
|
-
throw new ShapeDiverGeometryBackendRequestError(e.message, e.desc);
|
|
82
|
+
else if ((0, sdk_geometry_api_sdk_v2_1.isGBRequestError)(e)) {
|
|
83
|
+
throw new ShapeDiverBackendErrors_1.ShapeDiverGeometryBackendRequestError(e.message, e.desc);
|
|
44
84
|
}
|
|
45
|
-
else if (isGBError(e)) {
|
|
46
|
-
throw new ShapeDiverGeometryBackendError(e.message);
|
|
85
|
+
else if ((0, sdk_geometry_api_sdk_v2_1.isGBError)(e)) {
|
|
86
|
+
throw new ShapeDiverBackendErrors_1.ShapeDiverGeometryBackendError(e.message);
|
|
47
87
|
}
|
|
48
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* Get the requested resource either as a download or from the cache.
|
|
91
|
+
* If available, the registered session loading is used for download.
|
|
92
|
+
* Textures are downloaded via a specific endpoint and can be converted in this step as well.
|
|
93
|
+
* Depending on the provided caching options, the requested resource might already be cached.
|
|
94
|
+
*
|
|
95
|
+
* @param href
|
|
96
|
+
* @param config
|
|
97
|
+
* @param textureLoading
|
|
98
|
+
* @param textureConversion
|
|
99
|
+
* @returns
|
|
100
|
+
*/
|
|
49
101
|
get(href, config = { responseType: 'arraybuffer' }, textureLoading = false) {
|
|
50
102
|
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
const dataKey = this.hrefToDataKey(href);
|
|
104
|
+
// return element if it exists in cache
|
|
105
|
+
if (this._dataCache.has(dataKey))
|
|
106
|
+
return this.getFromCache(dataKey);
|
|
51
107
|
// try to get sessionId from href
|
|
52
108
|
let sessionId = this.getSessionId(href);
|
|
53
109
|
// if href does not have sessionId, use the first session, if available
|
|
@@ -57,38 +113,42 @@ export class HttpClient {
|
|
|
57
113
|
let sessionLoading;
|
|
58
114
|
if (sessionId)
|
|
59
115
|
sessionLoading = this._sessionLoading[sessionId];
|
|
116
|
+
let loadingPromise;
|
|
60
117
|
// separation texture vs everything else
|
|
61
118
|
if (textureLoading) {
|
|
62
119
|
// if we have a sessionId and the sessionLoading functions and the image is not a blob or data, we load it via the sdk
|
|
63
120
|
if (sessionLoading !== undefined && sessionId !== undefined && !href.startsWith('blob:') && !href.startsWith('data:')) {
|
|
64
121
|
// take first session to load a texture that is not session related
|
|
65
|
-
|
|
66
|
-
sessionLoading.downloadTexture(sessionId, href).then((result) => {
|
|
122
|
+
loadingPromise = new Promise((resolve, reject) => {
|
|
123
|
+
sessionLoading.downloadTexture(sessionId, href).then((result) => __awaiter(this, void 0, void 0, function* () {
|
|
67
124
|
resolve({
|
|
68
125
|
data: result[0],
|
|
69
126
|
headers: {
|
|
70
127
|
'content-type': result[1]
|
|
71
128
|
}
|
|
72
129
|
});
|
|
73
|
-
}).catch(e => reject(e));
|
|
130
|
+
})).catch(e => reject(e));
|
|
74
131
|
}).catch(e => { throw this.convertError(e); });
|
|
75
132
|
}
|
|
76
133
|
else {
|
|
77
134
|
// we can load blobs and data urls directly
|
|
78
135
|
// or load it directly if we don't have a session
|
|
79
|
-
|
|
136
|
+
loadingPromise = (0, axios_1.default)(href, Object.assign({ method: 'get' }, config))
|
|
137
|
+
.then((result) => __awaiter(this, void 0, void 0, function* () {
|
|
138
|
+
return result;
|
|
139
|
+
}))
|
|
80
140
|
.catch(e => { throw this.convertError(e); });
|
|
81
141
|
}
|
|
82
142
|
}
|
|
83
143
|
else {
|
|
84
144
|
if (!sessionLoading) {
|
|
85
145
|
// if there is no session to load from, we use the fallback option
|
|
86
|
-
|
|
146
|
+
loadingPromise = (0, axios_1.default)(href, Object.assign({ method: 'get' }, config))
|
|
87
147
|
.catch(e => { throw this.convertError(e); });
|
|
88
148
|
}
|
|
89
149
|
else {
|
|
90
150
|
// all data links where we could somehow find a session to load it with
|
|
91
|
-
|
|
151
|
+
loadingPromise = new Promise((resolve, reject) => {
|
|
92
152
|
sessionLoading.getAsset(href)
|
|
93
153
|
.then((result) => {
|
|
94
154
|
resolve({
|
|
@@ -100,25 +160,102 @@ export class HttpClient {
|
|
|
100
160
|
})
|
|
101
161
|
.catch(() => {
|
|
102
162
|
// if this fails, we just load it directly
|
|
103
|
-
const axiosPromise =
|
|
163
|
+
const axiosPromise = (0, axios_1.default)(href, Object.assign({ method: 'get' }, config));
|
|
104
164
|
axiosPromise.catch(e => reject(e));
|
|
105
165
|
resolve(axiosPromise);
|
|
106
166
|
});
|
|
107
167
|
}).catch(e => { throw this.convertError(e); });
|
|
108
168
|
}
|
|
109
169
|
}
|
|
170
|
+
if (this.enableCaching)
|
|
171
|
+
this.addToCache(dataKey, loadingPromise);
|
|
172
|
+
return loadingPromise;
|
|
110
173
|
});
|
|
111
174
|
}
|
|
175
|
+
/**
|
|
176
|
+
* Get the requested texture either as a download or from the cache.
|
|
177
|
+
*
|
|
178
|
+
* @param href
|
|
179
|
+
* @returns
|
|
180
|
+
*/
|
|
112
181
|
loadTexture(href) {
|
|
113
182
|
return __awaiter(this, void 0, void 0, function* () {
|
|
114
|
-
|
|
183
|
+
const response = yield this.get(href, undefined, true);
|
|
184
|
+
const arrayBufferView = new Uint8Array(response.data);
|
|
185
|
+
const blob = new Blob([arrayBufferView], { type: response.headers['content-type'] });
|
|
186
|
+
const image = yield Converter_1.Converter.instance.responseToImage(response, blob);
|
|
187
|
+
return {
|
|
188
|
+
data: {
|
|
189
|
+
image,
|
|
190
|
+
blob
|
|
191
|
+
},
|
|
192
|
+
size: response.data.byteLength,
|
|
193
|
+
headers: response.headers
|
|
194
|
+
};
|
|
115
195
|
});
|
|
116
196
|
}
|
|
197
|
+
/**
|
|
198
|
+
* Add the data loading options from a session.
|
|
199
|
+
*
|
|
200
|
+
* @param sessionId
|
|
201
|
+
*/
|
|
117
202
|
removeDataLoading(sessionId) {
|
|
118
203
|
delete this._sessionLoading[sessionId];
|
|
119
204
|
}
|
|
120
205
|
// #endregion Public Methods (5)
|
|
121
|
-
// #region Private Methods (
|
|
206
|
+
// #region Private Methods (5)
|
|
207
|
+
/**
|
|
208
|
+
* Add
|
|
209
|
+
*
|
|
210
|
+
* @param key
|
|
211
|
+
* @param value
|
|
212
|
+
*/
|
|
213
|
+
addToCache(key, value) {
|
|
214
|
+
// Remove items from the cache until the cache size is smaller than the maximum cache size.
|
|
215
|
+
// Only resolved promises are evaluated, as unresolved promises don't add any size.
|
|
216
|
+
while (this.calculateCacheSize() >= this._maxCacheSize) {
|
|
217
|
+
// Remove the oldest entry if the cache is full
|
|
218
|
+
const oldestKey = this._dataCache.keys().next().value;
|
|
219
|
+
this._dataCache.delete(oldestKey);
|
|
220
|
+
}
|
|
221
|
+
const timestamp = Date.now();
|
|
222
|
+
this._dataCache.set(key, { value, timestamp, resolved: false });
|
|
223
|
+
// once the promise resolves, set resolved and size properties
|
|
224
|
+
value.then((promiseResult) => {
|
|
225
|
+
const size = promiseResult.size ? promiseResult.size : promiseResult.data.byteLength;
|
|
226
|
+
this._dataCache.set(key, { value, timestamp, resolved: true, size });
|
|
227
|
+
}).catch(e => { throw this.convertError(e); });
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Calculate the current cache size from all resolved promises.
|
|
231
|
+
*
|
|
232
|
+
* @returns
|
|
233
|
+
*/
|
|
234
|
+
calculateCacheSize() {
|
|
235
|
+
let size = 0;
|
|
236
|
+
this._dataCache.forEach(value => {
|
|
237
|
+
if (value.resolved === true)
|
|
238
|
+
size += value.size;
|
|
239
|
+
});
|
|
240
|
+
return size;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Get the value of an object from the cache.
|
|
244
|
+
*
|
|
245
|
+
* @param key
|
|
246
|
+
* @returns
|
|
247
|
+
*/
|
|
248
|
+
getFromCache(key) {
|
|
249
|
+
const cachedObject = this._dataCache.get(key);
|
|
250
|
+
this._dataCache.set(key, { value: cachedObject.value, timestamp: Date.now(), resolved: cachedObject.resolved, size: cachedObject.size });
|
|
251
|
+
return cachedObject.value;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Get the session id of the provided href.
|
|
255
|
+
*
|
|
256
|
+
* @param href
|
|
257
|
+
* @returns
|
|
258
|
+
*/
|
|
122
259
|
getSessionId(href) {
|
|
123
260
|
// searching for "/session/SESSION_ID/{'output' | 'export' | 'texture'}/ASSET_DATA"
|
|
124
261
|
const parts = href.split('/');
|
|
@@ -133,5 +270,25 @@ export class HttpClient {
|
|
|
133
270
|
}
|
|
134
271
|
return;
|
|
135
272
|
}
|
|
273
|
+
/**
|
|
274
|
+
* Convert the provided href to a data cache key.
|
|
275
|
+
* In this conversion the excludedQueryParameters are removed from the href.
|
|
276
|
+
*
|
|
277
|
+
* @param href
|
|
278
|
+
* @returns
|
|
279
|
+
*/
|
|
280
|
+
hrefToDataKey(href) {
|
|
281
|
+
const url = new URL(href);
|
|
282
|
+
// Create a URLSearchParams object from the existing query parameters
|
|
283
|
+
const params = new URLSearchParams(url.search);
|
|
284
|
+
for (let i = 0; i < this._excludedQueryParameters.length; i++)
|
|
285
|
+
// Remove specific query parameters
|
|
286
|
+
params.delete(this._excludedQueryParameters[i]);
|
|
287
|
+
// Reconstruct the URL with the modified query parameters
|
|
288
|
+
url.search = params.toString();
|
|
289
|
+
const hrefAsKey = url.toString();
|
|
290
|
+
return window.btoa(hrefAsKey);
|
|
291
|
+
}
|
|
136
292
|
}
|
|
293
|
+
exports.HttpClient = HttpClient;
|
|
137
294
|
//# sourceMappingURL=HttpClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpClient.js","sourceRoot":"","sources":["../../src/http-client/HttpClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HttpClient.js","sourceRoot":"","sources":["../../src/http-client/HttpClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpResponse.d.ts","sourceRoot":"","sources":["../../src/http-client/HttpResponse.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HttpResponse.d.ts","sourceRoot":"","sources":["../../src/http-client/HttpResponse.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,GAAG;IACjC,IAAI,EAAE,CAAC,CAAC;IACR,OAAO,EAAE,GAAG,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EventEngine } from './event-engine/EventEngine';
|
|
2
|
-
import { EVENTTYPE, EVENTTYPE_CAMERA, EVENTTYPE_INTERACTION, EVENTTYPE_RENDERING, EVENTTYPE_SCENE, EVENTTYPE_SESSION, EVENTTYPE_TASK, EVENTTYPE_VIEWPORT, MainEventTypes } from './event-engine/EventTypes';
|
|
2
|
+
import { EVENTTYPE, EVENTTYPE_CAMERA, EVENTTYPE_INTERACTION, EVENTTYPE_OUTPUT, EVENTTYPE_RENDERING, EVENTTYPE_SCENE, EVENTTYPE_SESSION, EVENTTYPE_TASK, EVENTTYPE_VIEWPORT, MainEventTypes } from './event-engine/EventTypes';
|
|
3
3
|
import { SettingsEngine } from './settings-engine/SettingsEngine';
|
|
4
4
|
import { StateEngine } from './state-engine/StateEngine';
|
|
5
5
|
import { SystemInfo } from './system-info/SystemInfo';
|
|
@@ -20,7 +20,7 @@ import { HttpResponse } from './http-client/HttpResponse';
|
|
|
20
20
|
import { ShapeDiverGeometryBackendError, ShapeDiverGeometryBackendRequestError, ShapeDiverGeometryBackendResponseError } from './logger/ShapeDiverBackendErrors';
|
|
21
21
|
import { ShapeDiverResponseErrorType as ShapeDiverGeometryBackendResponseErrorType } from "@shapediver/sdk.geometry-api-sdk-v2";
|
|
22
22
|
import { isViewerError, isViewerUnknownError, isViewerDataProcessingError, isViewerEnvironmentMapError, isViewerWebGLError, isViewerSettingsError, isViewerSessionError, isViewerViewportError, isViewerLightError, isViewerCameraError, isARError, isViewerValidationError, isViewerInteractionError, isViewerGeometryBackendError, isViewerGeometryBackendGenericError, isViewerGeometryBackendRequestError, isViewerGeometryBackendResponseError } from './logger/ErrorTypeGuards';
|
|
23
|
-
export { EventEngine, EVENTTYPE, MainEventTypes, IEvent, EVENTTYPE_CAMERA, EVENTTYPE_RENDERING, EVENTTYPE_SCENE, EVENTTYPE_SESSION, EVENTTYPE_VIEWPORT, EVENTTYPE_INTERACTION, EVENTTYPE_TASK };
|
|
23
|
+
export { EventEngine, EVENTTYPE, MainEventTypes, IEvent, EVENTTYPE_CAMERA, EVENTTYPE_OUTPUT, EVENTTYPE_RENDERING, EVENTTYPE_SCENE, EVENTTYPE_SESSION, EVENTTYPE_VIEWPORT, EVENTTYPE_INTERACTION, EVENTTYPE_TASK };
|
|
24
24
|
export { SettingsEngine };
|
|
25
25
|
export { StateEngine, StatePromise };
|
|
26
26
|
export { SystemInfo };
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|