@shapediver/viewer.session-engine.session-engine 2.2.5 → 2.3.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/implementation/OutputLoader.d.ts +2 -2
- package/dist/implementation/OutputLoader.d.ts.map +1 -1
- package/dist/implementation/OutputLoader.js +2 -3
- package/dist/implementation/OutputLoader.js.map +1 -1
- package/dist/implementation/SessionEngine.d.ts +13 -25
- package/dist/implementation/SessionEngine.d.ts.map +1 -1
- package/dist/implementation/SessionEngine.js +126 -21
- package/dist/implementation/SessionEngine.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/interfaces/ISessionEngine.d.ts +40 -22
- package/dist/interfaces/ISessionEngine.d.ts.map +1 -1
- package/dist/interfaces/ISessionEngine.js +1 -0
- package/dist/interfaces/ISessionEngine.js.map +1 -1
- package/package.json +8 -8
- package/src/implementation/OutputLoader.ts +2 -2
- package/src/implementation/SessionEngine.ts +129 -29
- package/src/index.ts +2 -2
- package/src/interfaces/ISessionEngine.ts +43 -25
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SessionTreeNode } from './SessionTreeNode';
|
|
2
|
-
import {
|
|
2
|
+
import { ShapeDiverResponseOutput } from '@shapediver/sdk.geometry-api-sdk-v2';
|
|
3
3
|
export declare class OutputLoader {
|
|
4
4
|
private readonly _dataEngine;
|
|
5
5
|
private readonly _loadedOutputNodes;
|
|
@@ -18,7 +18,7 @@ export declare class OutputLoader {
|
|
|
18
18
|
* @param outputs the outputs to load
|
|
19
19
|
* @returns promise with a scene graph node
|
|
20
20
|
*/
|
|
21
|
-
loadOutputs(
|
|
21
|
+
loadOutputs(nodeName: string, outputs: {
|
|
22
22
|
[key: string]: ShapeDiverResponseOutput;
|
|
23
23
|
}, outputsFreeze: {
|
|
24
24
|
[key: string]: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutputLoader.d.ts","sourceRoot":"","sources":["../../src/implementation/OutputLoader.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAGnD,OAAO,
|
|
1
|
+
{"version":3,"file":"OutputLoader.d.ts","sourceRoot":"","sources":["../../src/implementation/OutputLoader.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAGnD,OAAO,EAAyB,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AAGrG,qBAAa,YAAY;IAGrB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyD;IACrF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAI5B;IACP,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAE1B;IACP,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuF;IAM7H;;;;OAIG;;IAOH;;;;;;OAMG;IACW,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,wBAAwB,CAAC;KAAE,EAAE,aAAa,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IA4ExK,OAAO,CAAC,eAAe;IAuHvB,OAAO,CAAC,iBAAiB;CAqC5B"}
|
|
@@ -42,11 +42,10 @@ class OutputLoader {
|
|
|
42
42
|
* @param outputs the outputs to load
|
|
43
43
|
* @returns promise with a scene graph node
|
|
44
44
|
*/
|
|
45
|
-
loadOutputs(
|
|
46
|
-
var _a;
|
|
45
|
+
loadOutputs(nodeName, outputs, outputsFreeze) {
|
|
47
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
48
47
|
this._performanceEvaluator.startSection('outputLoading');
|
|
49
|
-
const node = new SessionTreeNode_1.SessionTreeNode(
|
|
48
|
+
const node = new SessionTreeNode_1.SessionTreeNode(nodeName);
|
|
50
49
|
let currentNodes = {};
|
|
51
50
|
let promises = [];
|
|
52
51
|
let promisesNodes = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutputLoader.js","sourceRoot":"","sources":["../../src/implementation/OutputLoader.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAAoC;AACpC,yEAA2G;AAC3G,+FAAuE;AACvE,iFAA+E;AAE/E,iEAA6D;AAC7D,uDAAmD;AACnD,2DAAuD;AACvD,+EAAyE;AAIzE,MAAa,YAAY;IAcrB,4BAA4B;IAE5B,2BAA2B;IAE3B;;;;OAIG;IACH;QAtBA,yBAAyB;QAER,gBAAW,GAA2B,oBAAS,CAAC,OAAO,CAAC,2CAAU,CAAC,CAAC;QACpE,uBAAkB,GAI/B,EAAE,CAAC;QACU,qBAAgB,GAE7B,EAAE,CAAC;QACU,0BAAqB,GAA+C,oBAAS,CAAC,OAAO,CAAC,6CAAoB,CAAC,CAAC;IAW9G,CAAC;IAEhB,8BAA8B;IAE9B,6BAA6B;IAE7B;;;;;;OAMG;
|
|
1
|
+
{"version":3,"file":"OutputLoader.js","sourceRoot":"","sources":["../../src/implementation/OutputLoader.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAAoC;AACpC,yEAA2G;AAC3G,+FAAuE;AACvE,iFAA+E;AAE/E,iEAA6D;AAC7D,uDAAmD;AACnD,2DAAuD;AACvD,+EAAyE;AAIzE,MAAa,YAAY;IAcrB,4BAA4B;IAE5B,2BAA2B;IAE3B;;;;OAIG;IACH;QAtBA,yBAAyB;QAER,gBAAW,GAA2B,oBAAS,CAAC,OAAO,CAAC,2CAAU,CAAC,CAAC;QACpE,uBAAkB,GAI/B,EAAE,CAAC;QACU,qBAAgB,GAE7B,EAAE,CAAC;QACU,0BAAqB,GAA+C,oBAAS,CAAC,OAAO,CAAC,6CAAoB,CAAC,CAAC;IAW9G,CAAC;IAEhB,8BAA8B;IAE9B,6BAA6B;IAE7B;;;;;;OAMG;IACW,WAAW,CAAC,QAAgB,EAAE,OAAqD,EAAE,aAA0C;;YACzI,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YACzD,MAAM,IAAI,GAAG,IAAI,iCAAe,CAAC,QAAQ,CAAC,CAAC;YAC3C,IAAI,YAAY,GAIZ,EAAE,CAAC;YACP,IAAI,QAAQ,GAAyB,EAAE,CAAC;YACxC,IAAI,aAAa,GAAuB,EAAE,CAAC;YAC3C,IAAI,QAAQ,GAAG,CAAC,CAAC;YAEjB,KAAK,IAAI,QAAQ,IAAI,OAAO,EAAE;gBAC1B,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAC5B,IAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC;oBACjC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAE3C,IAAG,aAAa,CAAC,QAAQ,CAAC,EAAE;oBACxB,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;iBACvF;qBAAM,IAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE;oBAC/B,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAM,CAAC,CAAC;iBAC3D;qBAAM,IAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE;oBACrE,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,iCAAe,CAAC,QAAQ,CAAC,CAAC;oBAClF,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,qCAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;oBACtG,IAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;wBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;4BACnE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;4BAC1E,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;yBACxE;qBACJ;iBACJ;qBAAM;oBACH,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;iBACpH;aACJ;YAED,IAAG,QAAQ;gBACP,MAAM,IAAI,2CAAoB,CAAC,QAAQ,CAAC,CAAC;YAE7C,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE5B,qFAAqF;YACrF,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE;gBACnC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YAEhD,4DAA4D;YAC5D,KAAK,IAAI,QAAQ,IAAI,OAAO,EAAE;gBAC1B,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;aACpE;YAED,+CAA+C;YAC/C,KAAK,IAAI,QAAQ,IAAI,OAAO,EAAE;gBAC1B,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACvC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;gBACjH,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;aACvF;YAED,KAAK,IAAI,QAAQ,IAAI,OAAO,EAAE;gBAC1B,IAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;wBACnE,IAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,EAAE;4BAChD,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;4BACzE,MAAM;yBACT;qBACJ;iBACJ;aACJ;YAED,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAED,gCAAgC;IAEhC,8BAA8B;IAEtB,eAAe,CAAC,IAAe;QACnC,MAAM,qBAAqB,GAAG,CAAC,IAAe,EAAE,QAA+B,EAAE,EAAE;YAC/E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,kCAAY,EAAE;oBACtC,MAAM,QAAQ,GAAiB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC5C,MAAM,eAAe,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC;oBACpD,IAAG,eAAe,KAAK,IAAI,IAAI,eAAe,CAAC,cAAc,KAAK,IAAI,EAAE;wBACpE,QAAQ,CAAC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;qBAC1C;iBACJ;aACJ;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAI,KAAK;oBAAE,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;aACrD;QACL,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,CAAC,IAAe,EAAE,YAAqC,EAAE,EAA2B,EAAE;YAC1G,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,0CAAoB,EAAE;oBAC9C,MAAM,QAAQ,GAA0B,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACrD,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;oBAC/B,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC5B;aACJ;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAG,CAAC,KAAK;oBAAE,SAAS;gBACpB,SAAS,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;aAC7C;YAED,OAAO,SAAS,CAAC;QACrB,CAAC,CAAA;QAED,MAAM,eAAe,GAAG,CAAC,IAAe,EAAE,aAA6B,EAAE,EAAkB,EAAE;YACzF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE;gBACrC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,kCAAY;oBACpC,UAAU,CAAC,IAAI,CAAe,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAEpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAG,CAAC,KAAK;oBAAE,SAAS;gBACpB,UAAU,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;aAC9C;YACD,OAAO,UAAU,CAAC;QACtB,CAAC,CAAA;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3C,iEAAiE;YACjE,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,UAAU;gBAAE,SAAS;YAE1B,2FAA2F;YAC3F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC7C,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,qCAAiB,CAAC;oBAAE,SAAS;gBAEjE,iEAAiE;gBACjE,kFAAkF;gBAClF,MAAM,iBAAiB,GAAsB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAEhE,iEAAiE;gBACjE,IAAG,iBAAiB,CAAC,cAAc,CAAC,QAAQ,EAAE;oBAC1C,IAAI,aAAa,GAAgB,EAAE,CAAC;oBACpC,iBAAiB;oBACjB,2BAA2B;oBAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBACtC,IAAI,CAAC,YAAY;4BAAE,SAAS;wBAC5B,IAAI,YAAY,CAAC,IAAI,KAAK,iBAAiB,CAAC,cAAc,CAAC,QAAQ;4BAC/D,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC;qBAC7C;oBAED,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC;oBAE1C,IAAG,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE;wBAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BAC3C,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;yBACjF;qBACJ;yBAAM;wBACH,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC;4BACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gCAC3C,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;6BACjF;qBACR;iBACJ;gBACD,wGAAwG;qBACnG;oBACD,wHAAwH;oBAExH,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC;oBACtE,IAAG,oBAAoB,KAAK,SAAS;wBAAE,SAAS;oBAEhD,MAAM,aAAa,GAAG,EAAE,CAAC;oBACzB,MAAM,aAAa,GAAG,EAAE,CAAC;oBACzB,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,oBAAoB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACjD,IAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE;4BAC9C,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;yBAC9C;6BAAM;4BACH,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;yBAC9C;qBACJ;oBAED,IAAG,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE;wBAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BAC3C,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;yBACjF;qBACJ;yBAAM;wBACH,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC;4BACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gCAC3C,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;6BACjF;qBACR;iBACJ;aACJ;SACJ;IACL,CAAC;IAEO,iBAAiB,CAAC,IAAsB;QAC5C,IAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;YAAE,OAAO;QAEvC,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,OAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;SACtC;QAED,MAAM,UAAU,GAAG,CAAC,KAAgB,EAAE,KAAgB,EAAE,EAAE;YACtD,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE;gBACrC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAEnC,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,IAAI,SAAS,CAAC;gBACd,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC3C,IAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;wBAClD,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBAC9B,MAAM;qBACT;iBACJ;gBACD,IAAG,CAAC,SAAS,EAAE;oBACX,SAAS,GAAG,IAAI,kCAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACjD,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;iBAC7B;gBAED,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;aAC5C;QACL,CAAC,CAAA;QAED,MAAM,QAAQ,GAAG,IAAI,kCAAQ,CAAC,eAAe,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACxB,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE;YACnC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;IACzC,CAAC;CAGJ;AA5QD,oCA4QC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SettingsEngine } from '@shapediver/viewer.shared.services';
|
|
2
|
-
import { ISessionEngine } from '../interfaces/ISessionEngine';
|
|
2
|
+
import { ISessionEngine, ISettingsSections } from '../interfaces/ISessionEngine';
|
|
3
3
|
import { ShapeDiverRequestGltfUploadQueryConversion, ShapeDiverResponseDto, ShapeDiverResponseExport } from '@shapediver/sdk.geometry-api-sdk-v2';
|
|
4
4
|
import { ISessionTreeNode } from '../interfaces/ISessionTreeNode';
|
|
5
5
|
import { ITreeNode } from '@shapediver/viewer.shared.node-tree';
|
|
@@ -93,29 +93,7 @@ export declare class SessionEngine implements ISessionEngine {
|
|
|
93
93
|
get updateCallback(): ((newNode: ITreeNode, oldNode: ITreeNode) => void) | null;
|
|
94
94
|
set updateCallback(value: ((newNode: ITreeNode, oldNode: ITreeNode) => void) | null);
|
|
95
95
|
get viewerSettings(): object | undefined;
|
|
96
|
-
applySettings(response: ShapeDiverResponseDto, sections?:
|
|
97
|
-
session?: {
|
|
98
|
-
parameter?: {
|
|
99
|
-
displayname?: boolean | undefined;
|
|
100
|
-
order?: boolean | undefined;
|
|
101
|
-
hidden?: boolean | undefined;
|
|
102
|
-
value?: boolean | undefined;
|
|
103
|
-
} | undefined;
|
|
104
|
-
export?: {
|
|
105
|
-
displayname?: boolean | undefined;
|
|
106
|
-
order?: boolean | undefined;
|
|
107
|
-
hidden?: boolean | undefined;
|
|
108
|
-
} | undefined;
|
|
109
|
-
} | undefined;
|
|
110
|
-
viewport?: {
|
|
111
|
-
ar?: boolean | undefined;
|
|
112
|
-
scene?: boolean | undefined;
|
|
113
|
-
camera?: boolean | undefined;
|
|
114
|
-
light?: boolean | undefined;
|
|
115
|
-
environment?: boolean | undefined;
|
|
116
|
-
general?: boolean | undefined;
|
|
117
|
-
} | undefined;
|
|
118
|
-
}): void;
|
|
96
|
+
applySettings(response: ShapeDiverResponseDto, sections?: ISettingsSections): void;
|
|
119
97
|
canGoBack(): boolean;
|
|
120
98
|
canGoForward(): boolean;
|
|
121
99
|
close(retry?: boolean): Promise<void>;
|
|
@@ -128,7 +106,7 @@ export declare class SessionEngine implements ISessionEngine {
|
|
|
128
106
|
customize(force?: boolean): Promise<ITreeNode>;
|
|
129
107
|
customizeParallel(parameterValues: {
|
|
130
108
|
[key: string]: string;
|
|
131
|
-
}
|
|
109
|
+
}): Promise<ITreeNode>;
|
|
132
110
|
goBack(): Promise<ITreeNode>;
|
|
133
111
|
goForward(): Promise<ITreeNode>;
|
|
134
112
|
/**
|
|
@@ -139,6 +117,15 @@ export declare class SessionEngine implements ISessionEngine {
|
|
|
139
117
|
init(parameterValues?: {
|
|
140
118
|
[key: string]: string;
|
|
141
119
|
}, retry?: boolean): Promise<void>;
|
|
120
|
+
/**
|
|
121
|
+
* Load the outputs and return the scene graph node of the result.
|
|
122
|
+
* In case the outputs have a delay property, another customization request with the parameter set is sent.
|
|
123
|
+
*
|
|
124
|
+
* @param parameters the parameter set to update the session
|
|
125
|
+
* @param outputs the outputs to load
|
|
126
|
+
* @returns promise with a scene graph node
|
|
127
|
+
*/
|
|
128
|
+
loadOutputsParallel(responseDto: ShapeDiverResponseDto, cancelRequest?: () => boolean, retry?: boolean): Promise<ISessionTreeNode>;
|
|
142
129
|
/**
|
|
143
130
|
* Load the outputs and return the scene graph node of the result.
|
|
144
131
|
* In case the outputs have a delay property, another customization request with the parameter set is sent.
|
|
@@ -151,6 +138,7 @@ export declare class SessionEngine implements ISessionEngine {
|
|
|
151
138
|
requestExport(exportId: string, parameters: {
|
|
152
139
|
[key: string]: string;
|
|
153
140
|
}, maxWaitTime: number, retry?: boolean): Promise<ShapeDiverResponseExport>;
|
|
141
|
+
resetSettings(sections?: ISettingsSections): void;
|
|
154
142
|
saveDefaultParameterValues(): Promise<boolean>;
|
|
155
143
|
saveDefaultParameters(retry?: boolean): Promise<boolean>;
|
|
156
144
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionEngine.d.ts","sourceRoot":"","sources":["../../src/implementation/SessionEngine.ts"],"names":[],"mappings":"AACA,OAAO,EAAoK,cAAc,EAAsE,MAAM,oCAAoC,CAAA;AAKzS,OAAO,EAAE,cAAc,EAAkB,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"SessionEngine.d.ts","sourceRoot":"","sources":["../../src/implementation/SessionEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -127,8 +127,8 @@ class SessionEngine {
|
|
|
127
127
|
return this._excludeViewports;
|
|
128
128
|
}
|
|
129
129
|
set excludeViewports(value) {
|
|
130
|
-
this._excludeViewports = value;
|
|
131
|
-
this._node.excludeViewports = value;
|
|
130
|
+
this._excludeViewports = JSON.parse(JSON.stringify(value));
|
|
131
|
+
this._node.excludeViewports = JSON.parse(JSON.stringify(value));
|
|
132
132
|
}
|
|
133
133
|
get exports() {
|
|
134
134
|
return this._exports;
|
|
@@ -200,15 +200,15 @@ class SessionEngine {
|
|
|
200
200
|
config = response.viewer.config;
|
|
201
201
|
}
|
|
202
202
|
else {
|
|
203
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSettingsError('
|
|
204
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.SETTINGS, '
|
|
203
|
+
const error = new viewer_shared_services_1.ShapeDiverViewerSettingsError('Session.applySettings: No config object available.');
|
|
204
|
+
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.SETTINGS, 'Session.applySettings', error);
|
|
205
205
|
}
|
|
206
206
|
try {
|
|
207
207
|
(0, viewer_settings_1.validate)(config);
|
|
208
208
|
}
|
|
209
209
|
catch (e) {
|
|
210
|
-
const error = new viewer_shared_services_1.ShapeDiverViewerSettingsError('
|
|
211
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.SETTINGS, '
|
|
210
|
+
const error = new viewer_shared_services_1.ShapeDiverViewerSettingsError('Session.applySettings: Was not able to validate config object.');
|
|
211
|
+
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.SETTINGS, 'Session.applySettings', error);
|
|
212
212
|
}
|
|
213
213
|
const settings = (0, viewer_settings_1.convert)(config, '3.1');
|
|
214
214
|
const exportMappingUid = {};
|
|
@@ -300,7 +300,7 @@ class SessionEngine {
|
|
|
300
300
|
catch (e) {
|
|
301
301
|
if (e instanceof viewer_shared_services_1.ShapeDiverViewerError || e instanceof sdk_geometry_api_sdk_v2_1.ShapeDiverError)
|
|
302
302
|
throw e;
|
|
303
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.GENERAL, '
|
|
303
|
+
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.GENERAL, 'Session.applySettings', e);
|
|
304
304
|
}
|
|
305
305
|
}
|
|
306
306
|
canGoBack() {
|
|
@@ -436,7 +436,7 @@ class SessionEngine {
|
|
|
436
436
|
for (const exportId in this.exports)
|
|
437
437
|
this.exports[exportId].updateExport();
|
|
438
438
|
this._warningCreator();
|
|
439
|
-
this.node.excludeViewports = this._excludeViewports;
|
|
439
|
+
this.node.excludeViewports = JSON.parse(JSON.stringify(this._excludeViewports));
|
|
440
440
|
for (let r in this._stateEngine.renderingEngines)
|
|
441
441
|
if (this._stateEngine.renderingEngines[r].busy.includes(customizationId))
|
|
442
442
|
this._stateEngine.renderingEngines[r].busy.splice(this._stateEngine.renderingEngines[r].busy.indexOf(customizationId), 1);
|
|
@@ -458,9 +458,23 @@ class SessionEngine {
|
|
|
458
458
|
}
|
|
459
459
|
});
|
|
460
460
|
}
|
|
461
|
-
customizeParallel(parameterValues
|
|
462
|
-
|
|
463
|
-
|
|
461
|
+
customizeParallel(parameterValues) {
|
|
462
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
463
|
+
try {
|
|
464
|
+
const parameterSet = {};
|
|
465
|
+
// create a set of the current validated parameter values
|
|
466
|
+
for (const parameterId in this.parameters)
|
|
467
|
+
parameterSet[parameterId] = parameterValues[parameterId] !== undefined ? (' ' + parameterValues[parameterId]).slice(1) : this.parameters[parameterId].stringify();
|
|
468
|
+
const newNode = yield this.customizeSession(parameterSet, () => false, true);
|
|
469
|
+
newNode.excludeViewports = JSON.parse(JSON.stringify(this._excludeViewports));
|
|
470
|
+
return newNode;
|
|
471
|
+
}
|
|
472
|
+
catch (e) {
|
|
473
|
+
if (e instanceof viewer_shared_services_1.ShapeDiverViewerError || e instanceof sdk_geometry_api_sdk_v2_1.ShapeDiverError)
|
|
474
|
+
throw e;
|
|
475
|
+
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.SESSION, `Session(${this.id}).customize`, e);
|
|
476
|
+
}
|
|
477
|
+
});
|
|
464
478
|
}
|
|
465
479
|
goBack() {
|
|
466
480
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -516,7 +530,10 @@ class SessionEngine {
|
|
|
516
530
|
}
|
|
517
531
|
try {
|
|
518
532
|
this._performanceEvaluator.startSection('sessionResponse');
|
|
519
|
-
|
|
533
|
+
const parameterSet = {};
|
|
534
|
+
for (const parameterId in parameterValues)
|
|
535
|
+
parameterSet[parameterId] = (' ' + parameterValues[parameterId]).slice(1);
|
|
536
|
+
this._responseDto = yield this._sdk.session.init(this._ticket, parameterSet);
|
|
520
537
|
this._performanceEvaluator.endSection('sessionResponse');
|
|
521
538
|
this._viewerSettings = (_a = this._responseDto.viewer) === null || _a === void 0 ? void 0 : _a.config;
|
|
522
539
|
this._settingsEngine.loadSettings(this._viewerSettings);
|
|
@@ -530,7 +547,7 @@ class SessionEngine {
|
|
|
530
547
|
throw new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.init: Initialization of session failed. ResponseDto did not have a sessionId.`);
|
|
531
548
|
if (!this._modelId)
|
|
532
549
|
throw new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.init: Initialization of session failed. ResponseDto did not have a model.id.`);
|
|
533
|
-
this.updateResponseDto(this._responseDto,
|
|
550
|
+
this.updateResponseDto(this._responseDto, parameterSet);
|
|
534
551
|
this._initialized = true;
|
|
535
552
|
}
|
|
536
553
|
catch (e) {
|
|
@@ -539,6 +556,62 @@ class SessionEngine {
|
|
|
539
556
|
}
|
|
540
557
|
});
|
|
541
558
|
}
|
|
559
|
+
/**
|
|
560
|
+
* Load the outputs and return the scene graph node of the result.
|
|
561
|
+
* In case the outputs have a delay property, another customization request with the parameter set is sent.
|
|
562
|
+
*
|
|
563
|
+
* @param parameters the parameter set to update the session
|
|
564
|
+
* @param outputs the outputs to load
|
|
565
|
+
* @returns promise with a scene graph node
|
|
566
|
+
*/
|
|
567
|
+
loadOutputsParallel(responseDto, cancelRequest = () => false, retry = false) {
|
|
568
|
+
var _a;
|
|
569
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
570
|
+
this.checkAvailability();
|
|
571
|
+
let outputs = {};
|
|
572
|
+
let outputsFreeze = {};
|
|
573
|
+
for (let outputId in responseDto.outputs) {
|
|
574
|
+
responseDto.outputs[outputId].id = outputId;
|
|
575
|
+
if (this.outputsFreeze[outputId] === undefined)
|
|
576
|
+
outputsFreeze[outputId] = false;
|
|
577
|
+
outputs[outputId] = new Output_1.Output(responseDto.outputs[outputId], this);
|
|
578
|
+
}
|
|
579
|
+
try {
|
|
580
|
+
const node = yield this._outputLoader.loadOutputs(((_a = this._responseDto.model) === null || _a === void 0 ? void 0 : _a.name) || 'model', outputs, outputsFreeze);
|
|
581
|
+
node.data.push(new SessionData_1.SessionData(responseDto));
|
|
582
|
+
return node;
|
|
583
|
+
}
|
|
584
|
+
catch (e) {
|
|
585
|
+
if (e instanceof OutputDelayException_1.OutputDelayException) {
|
|
586
|
+
yield this.timeout(e.delay);
|
|
587
|
+
}
|
|
588
|
+
else {
|
|
589
|
+
yield this.handleError(viewer_shared_services_1.LOGGING_TOPIC.SESSION, 'Session.loadOutputsParallel', e, retry);
|
|
590
|
+
if (cancelRequest())
|
|
591
|
+
return new SessionTreeNode_1.SessionTreeNode();
|
|
592
|
+
return yield this.loadOutputsParallel(responseDto, cancelRequest, true);
|
|
593
|
+
}
|
|
594
|
+
if (cancelRequest())
|
|
595
|
+
return new SessionTreeNode_1.SessionTreeNode();
|
|
596
|
+
let outputMapping = {};
|
|
597
|
+
for (let output in outputs)
|
|
598
|
+
outputMapping[output] = outputs[output].version;
|
|
599
|
+
try {
|
|
600
|
+
const responseDto = yield this._sdk.output.getCache(this._sessionId, outputMapping);
|
|
601
|
+
if (cancelRequest())
|
|
602
|
+
return new SessionTreeNode_1.SessionTreeNode();
|
|
603
|
+
this.updateResponseDto(responseDto);
|
|
604
|
+
return yield this.loadOutputsParallel(responseDto, cancelRequest);
|
|
605
|
+
}
|
|
606
|
+
catch (e) {
|
|
607
|
+
yield this.handleError(viewer_shared_services_1.LOGGING_TOPIC.SESSION, 'Session.loadOutputsParallel', e, retry);
|
|
608
|
+
if (cancelRequest())
|
|
609
|
+
return new SessionTreeNode_1.SessionTreeNode();
|
|
610
|
+
return yield this.loadOutputsParallel(responseDto, cancelRequest, true);
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
});
|
|
614
|
+
}
|
|
542
615
|
/**
|
|
543
616
|
* Load the outputs and return the scene graph node of the result.
|
|
544
617
|
* In case the outputs have a delay property, another customization request with the parameter set is sent.
|
|
@@ -548,12 +621,13 @@ class SessionEngine {
|
|
|
548
621
|
* @returns promise with a scene graph node
|
|
549
622
|
*/
|
|
550
623
|
loadOutputs(cancelRequest = () => false, retry = false) {
|
|
624
|
+
var _a;
|
|
551
625
|
return __awaiter(this, void 0, void 0, function* () {
|
|
552
626
|
this.checkAvailability();
|
|
553
627
|
const o = Object.assign({}, this._outputs);
|
|
554
628
|
const of = Object.assign({}, this._outputsFreeze);
|
|
555
629
|
try {
|
|
556
|
-
const node = yield this._outputLoader.loadOutputs(this._responseDto, o, of);
|
|
630
|
+
const node = yield this._outputLoader.loadOutputs(((_a = this._responseDto.model) === null || _a === void 0 ? void 0 : _a.name) || 'model', o, of);
|
|
557
631
|
node.data.push(new SessionData_1.SessionData(this._responseDto));
|
|
558
632
|
if (cancelRequest())
|
|
559
633
|
return node;
|
|
@@ -562,7 +636,7 @@ class SessionEngine {
|
|
|
562
636
|
this._node = node;
|
|
563
637
|
if (this._automaticSceneUpdate)
|
|
564
638
|
this._sceneTree.addNode(this._node);
|
|
565
|
-
this.node.excludeViewports = this._excludeViewports;
|
|
639
|
+
this.node.excludeViewports = JSON.parse(JSON.stringify(this._excludeViewports));
|
|
566
640
|
return node;
|
|
567
641
|
}
|
|
568
642
|
catch (e) {
|
|
@@ -600,7 +674,10 @@ class SessionEngine {
|
|
|
600
674
|
return __awaiter(this, void 0, void 0, function* () {
|
|
601
675
|
this.checkAvailability('export');
|
|
602
676
|
try {
|
|
603
|
-
const
|
|
677
|
+
const parameterSet = {};
|
|
678
|
+
for (const parameterId in parameters)
|
|
679
|
+
parameterSet[parameterId] = (' ' + parameters[parameterId]).slice(1);
|
|
680
|
+
const responseDto = yield this._sdk.utils.submitAndWaitForExport(this._sdk, this._sessionId, { exports: { id: exportId }, parameters: parameterSet }, maxWaitTime);
|
|
604
681
|
this.updateResponseDto(responseDto);
|
|
605
682
|
return this.exports[exportId];
|
|
606
683
|
}
|
|
@@ -610,6 +687,33 @@ class SessionEngine {
|
|
|
610
687
|
}
|
|
611
688
|
});
|
|
612
689
|
}
|
|
690
|
+
resetSettings(sections) {
|
|
691
|
+
if (!this._responseDto) {
|
|
692
|
+
const error = new viewer_shared_services_1.ShapeDiverViewerSessionError(`Session.resetSettings: responseDto not available.`);
|
|
693
|
+
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.SESSION, 'Session.resetSettings', error);
|
|
694
|
+
}
|
|
695
|
+
try {
|
|
696
|
+
sections = sections || {};
|
|
697
|
+
if (sections.session === undefined) {
|
|
698
|
+
sections.session = {
|
|
699
|
+
parameter: { displayname: true, order: true, hidden: true },
|
|
700
|
+
export: { displayname: true, order: true, hidden: true }
|
|
701
|
+
};
|
|
702
|
+
}
|
|
703
|
+
if (sections.session.parameter === undefined)
|
|
704
|
+
sections.session.parameter = { displayname: true, order: true, hidden: true, value: true };
|
|
705
|
+
if (sections.session.export === undefined)
|
|
706
|
+
sections.session.export = { displayname: true, order: true, hidden: true };
|
|
707
|
+
if (sections.viewport === undefined)
|
|
708
|
+
sections.viewport = { ar: true, scene: true, camera: true, light: true, environment: true, general: true };
|
|
709
|
+
return this.applySettings(this._responseDto, sections);
|
|
710
|
+
}
|
|
711
|
+
catch (e) {
|
|
712
|
+
if (e instanceof viewer_shared_services_1.ShapeDiverViewerError || e instanceof sdk_geometry_api_sdk_v2_1.ShapeDiverError)
|
|
713
|
+
throw e;
|
|
714
|
+
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.GENERAL, 'Session.resetSettings', e);
|
|
715
|
+
}
|
|
716
|
+
}
|
|
613
717
|
saveDefaultParameterValues() {
|
|
614
718
|
return __awaiter(this, void 0, void 0, function* () {
|
|
615
719
|
try {
|
|
@@ -816,7 +920,7 @@ class SessionEngine {
|
|
|
816
920
|
for (const exportId in this.exports)
|
|
817
921
|
this.exports[exportId].updateExport();
|
|
818
922
|
this._warningCreator();
|
|
819
|
-
this.node.excludeViewports = this.
|
|
923
|
+
this.node.excludeViewports = JSON.parse(JSON.stringify(this._excludeViewports));
|
|
820
924
|
for (let r in this._stateEngine.renderingEngines)
|
|
821
925
|
if (this._stateEngine.renderingEngines[r].busy.includes(customizationId))
|
|
822
926
|
this._stateEngine.renderingEngines[r].busy.splice(this._stateEngine.renderingEngines[r].busy.indexOf(customizationId), 1);
|
|
@@ -956,7 +1060,7 @@ class SessionEngine {
|
|
|
956
1060
|
return this.customizeSession(this._parameterValues, cancelRequest);
|
|
957
1061
|
});
|
|
958
1062
|
}
|
|
959
|
-
customizeSession(parameters, cancelRequest, retry = false) {
|
|
1063
|
+
customizeSession(parameters, cancelRequest, parallel = false, retry = false) {
|
|
960
1064
|
return __awaiter(this, void 0, void 0, function* () {
|
|
961
1065
|
this.checkAvailability('customize');
|
|
962
1066
|
try {
|
|
@@ -965,14 +1069,15 @@ class SessionEngine {
|
|
|
965
1069
|
this._performanceEvaluator.endSection('sessionResponse');
|
|
966
1070
|
if (cancelRequest())
|
|
967
1071
|
return new SessionTreeNode_1.SessionTreeNode();
|
|
968
|
-
|
|
969
|
-
|
|
1072
|
+
if (parallel === false)
|
|
1073
|
+
this.updateResponseDto(responseDto);
|
|
1074
|
+
return parallel === false ? this.loadOutputs(cancelRequest) : this.loadOutputsParallel(responseDto, cancelRequest);
|
|
970
1075
|
}
|
|
971
1076
|
catch (e) {
|
|
972
1077
|
yield this.handleError(viewer_shared_services_1.LOGGING_TOPIC.SESSION, 'Session.customizeSession', e, retry);
|
|
973
1078
|
if (cancelRequest())
|
|
974
1079
|
return new SessionTreeNode_1.SessionTreeNode();
|
|
975
|
-
return yield this.customizeSession(parameters, cancelRequest, true);
|
|
1080
|
+
return yield this.customizeSession(parameters, cancelRequest, parallel, true);
|
|
976
1081
|
}
|
|
977
1082
|
});
|
|
978
1083
|
}
|