@shapediver/viewer.session-engine.session-engine 3.14.8 → 3.14.9
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.map +1 -1
- package/dist/implementation/OutputLoader.js +19 -0
- package/dist/implementation/OutputLoader.js.map +1 -1
- package/dist/implementation/SessionEngine.d.ts.map +1 -1
- package/dist/implementation/SessionEngine.js +0 -4
- package/dist/implementation/SessionEngine.js.map +1 -1
- package/dist/implementation/SessionEngineCore.d.ts +49 -75
- package/dist/implementation/SessionEngineCore.d.ts.map +1 -1
- package/dist/implementation/SessionEngineCore.js +88 -265
- package/dist/implementation/SessionEngineCore.js.map +1 -1
- package/dist/implementation/SessionEngineFacade.d.ts +16 -11
- package/dist/implementation/SessionEngineFacade.d.ts.map +1 -1
- package/dist/implementation/SessionEngineFacade.js +19 -18
- package/dist/implementation/SessionEngineFacade.js.map +1 -1
- package/dist/implementation/managers/CustomizationManager.d.ts +41 -6
- package/dist/implementation/managers/CustomizationManager.d.ts.map +1 -1
- package/dist/implementation/managers/CustomizationManager.js +114 -56
- package/dist/implementation/managers/CustomizationManager.js.map +1 -1
- package/dist/implementation/managers/ExportManager.d.ts +49 -5
- package/dist/implementation/managers/ExportManager.d.ts.map +1 -1
- package/dist/implementation/managers/ExportManager.js +105 -42
- package/dist/implementation/managers/ExportManager.js.map +1 -1
- package/dist/implementation/managers/FileUploadManager.d.ts +41 -3
- package/dist/implementation/managers/FileUploadManager.d.ts.map +1 -1
- package/dist/implementation/managers/FileUploadManager.js +110 -67
- package/dist/implementation/managers/FileUploadManager.js.map +1 -1
- package/dist/implementation/managers/ModelStateManager.d.ts +42 -4
- package/dist/implementation/managers/ModelStateManager.d.ts.map +1 -1
- package/dist/implementation/managers/ModelStateManager.js +71 -24
- package/dist/implementation/managers/ModelStateManager.js.map +1 -1
- package/dist/implementation/managers/OutputManager.d.ts +48 -10
- package/dist/implementation/managers/OutputManager.d.ts.map +1 -1
- package/dist/implementation/managers/OutputManager.js +144 -84
- package/dist/implementation/managers/OutputManager.js.map +1 -1
- package/dist/implementation/managers/ParameterManager.d.ts +51 -4
- package/dist/implementation/managers/ParameterManager.d.ts.map +1 -1
- package/dist/implementation/managers/ParameterManager.js +164 -13
- package/dist/implementation/managers/ParameterManager.js.map +1 -1
- package/dist/implementation/managers/SettingsManager.d.ts +27 -2
- package/dist/implementation/managers/SettingsManager.d.ts.map +1 -1
- package/dist/implementation/managers/SettingsManager.js +120 -74
- package/dist/implementation/managers/SettingsManager.js.map +1 -1
- package/dist/implementation/managers/UtilsManager.d.ts +79 -17
- package/dist/implementation/managers/UtilsManager.d.ts.map +1 -1
- package/dist/implementation/managers/UtilsManager.js +191 -126
- package/dist/implementation/managers/UtilsManager.js.map +1 -1
- package/package.json +8 -8
|
@@ -1,16 +1,54 @@
|
|
|
1
|
-
import { ResGetModelState } from "@shapediver/sdk.geometry-api-sdk-v2";
|
|
1
|
+
import { ResGetModelState, ResModelState } from "@shapediver/sdk.geometry-api-sdk-v2";
|
|
2
2
|
import { ITreeNode } from "@shapediver/viewer.shared.node-tree";
|
|
3
3
|
import { SessionEngineCore } from "../SessionEngineCore";
|
|
4
|
+
/**
|
|
5
|
+
* Manager responsible for model states.
|
|
6
|
+
*
|
|
7
|
+
* The manager is created by the SessionEngineCore and can be accessed
|
|
8
|
+
* via the `modelStateManager` property.
|
|
9
|
+
*/
|
|
4
10
|
export declare class ModelStateManager {
|
|
5
|
-
private readonly _sessionEngineCore;
|
|
6
|
-
private readonly _utilsManager;
|
|
7
11
|
private readonly _converter;
|
|
8
12
|
private readonly _httpClient;
|
|
13
|
+
private readonly _sessionEngineCore;
|
|
14
|
+
private _modelState?;
|
|
15
|
+
private _modelStateId?;
|
|
16
|
+
private _modelStateValidationMode?;
|
|
9
17
|
constructor(sessionEngineCore: SessionEngineCore);
|
|
10
|
-
|
|
18
|
+
get modelState(): ResModelState | undefined;
|
|
19
|
+
set modelState(value: ResModelState | undefined);
|
|
20
|
+
get modelStateId(): string | undefined;
|
|
21
|
+
set modelStateId(value: string | undefined);
|
|
22
|
+
get modelStateValidationMode(): boolean | undefined;
|
|
23
|
+
set modelStateValidationMode(value: boolean | undefined);
|
|
24
|
+
/**
|
|
25
|
+
* Creates a new model state with the given parameter values and optional image and data.
|
|
26
|
+
*
|
|
27
|
+
* @param parameterValues Key-value pairs of parameter IDs and their corresponding values
|
|
28
|
+
* @param omitSessionParameterValues Whether to omit parameters that have not been explicitly set in the session
|
|
29
|
+
* @param image Optional image to associate with the model state
|
|
30
|
+
* @param data Optional additional data to associate with the model state
|
|
31
|
+
* @param arScene Optional AR scene to associate with the model state
|
|
32
|
+
* @param retry Whether to retry the request in case of failure
|
|
33
|
+
* @returns Promise with the ID of the created model state
|
|
34
|
+
*/
|
|
11
35
|
createModelState(parameterValues?: {
|
|
12
36
|
[key: string]: unknown;
|
|
13
37
|
}, omitSessionParameterValues?: boolean, image?: (() => string) | (() => Promise<string>) | string | Promise<string> | Blob | File, data?: Record<string, any>, arScene?: (() => Promise<ArrayBuffer>) | ArrayBuffer | (() => Promise<Blob>) | Blob | File, retry?: boolean): Promise<string>;
|
|
38
|
+
/**
|
|
39
|
+
* Customizes the session using the provided model state.
|
|
40
|
+
*
|
|
41
|
+
* @param modelState The model state ID or the model state response object
|
|
42
|
+
* @param retry Whether to retry the request in case of failure
|
|
43
|
+
* @returns Promise with the root tree node of the customized session
|
|
44
|
+
*/
|
|
14
45
|
customizeWithModelState(modelState: string | ResGetModelState, retry?: boolean): Promise<ITreeNode>;
|
|
46
|
+
/**
|
|
47
|
+
* Retrieves a model state by its ID.
|
|
48
|
+
*
|
|
49
|
+
* @param modelStateId The ID of the model state to retrieve. If undefined, the current model state ID is used.
|
|
50
|
+
* @returns Promise with the model state information
|
|
51
|
+
*/
|
|
52
|
+
getModelState(modelStateId?: string): Promise<ResGetModelState>;
|
|
15
53
|
}
|
|
16
54
|
//# sourceMappingURL=ModelStateManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelStateManager.d.ts","sourceRoot":"","sources":["../../../src/implementation/managers/ModelStateManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAKN,gBAAgB,
|
|
1
|
+
{"version":3,"file":"ModelStateManager.d.ts","sourceRoot":"","sources":["../../../src/implementation/managers/ModelStateManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAKN,gBAAgB,EAChB,aAAa,EAEb,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAC,SAAS,EAAW,MAAM,qCAAqC,CAAC;AAOxE,OAAO,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAEvD;;;;;GAKG;AACH,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoB;IAEvD,OAAO,CAAC,WAAW,CAAC,CAAgB;IACpC,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,yBAAyB,CAAC,CAAU;gBAEhC,iBAAiB,EAAE,iBAAiB;IAIhD,IAAW,UAAU,IAAI,aAAa,GAAG,SAAS,CAEjD;IAED,IAAW,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,EAGrD;IAED,IAAW,YAAY,IAAI,MAAM,GAAG,SAAS,CAE5C;IAED,IAAW,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAEhD;IAED,IAAW,wBAAwB,IAAI,OAAO,GAAG,SAAS,CAEzD;IAED,IAAW,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,EAE7D;IAED;;;;;;;;;;OAUG;IACU,gBAAgB,CAC5B,eAAe,GAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAM,EAC9C,0BAA0B,GAAE,OAAe,EAC3C,KAAK,CAAC,EACH,CAAC,MAAM,MAAM,CAAC,GACd,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,GACvB,MAAM,GACN,OAAO,CAAC,MAAM,CAAC,GACf,IAAI,GACJ,IAAI,EACP,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,OAAO,CAAC,EACL,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC,GAC5B,WAAW,GACX,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GACrB,IAAI,GACJ,IAAI,EACP,KAAK,UAAQ,GACX,OAAO,CAAC,MAAM,CAAC;IA8GlB;;;;;;OAMG;IACU,uBAAuB,CACnC,UAAU,EAAE,MAAM,GAAG,gBAAgB,EACrC,KAAK,UAAQ,GACX,OAAO,CAAC,SAAS,CAAC;IA+BrB;;;;;OAKG;IACU,aAAa,CACzB,YAAY,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,gBAAgB,CAAC;CAmB5B"}
|
|
@@ -13,31 +13,51 @@ exports.ModelStateManager = void 0;
|
|
|
13
13
|
const sdk_geometry_api_sdk_v2_1 = require("@shapediver/sdk.geometry-api-sdk-v2");
|
|
14
14
|
const viewer_shared_node_tree_1 = require("@shapediver/viewer.shared.node-tree");
|
|
15
15
|
const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
|
|
16
|
+
/**
|
|
17
|
+
* Manager responsible for model states.
|
|
18
|
+
*
|
|
19
|
+
* The manager is created by the SessionEngineCore and can be accessed
|
|
20
|
+
* via the `modelStateManager` property.
|
|
21
|
+
*/
|
|
16
22
|
class ModelStateManager {
|
|
17
23
|
constructor(sessionEngineCore) {
|
|
18
24
|
this._converter = viewer_shared_services_1.Converter.instance;
|
|
19
25
|
this._httpClient = viewer_shared_services_1.HttpClient.instance;
|
|
20
26
|
this._sessionEngineCore = sessionEngineCore;
|
|
21
|
-
this._utilsManager = sessionEngineCore.utilsManager;
|
|
22
27
|
}
|
|
23
|
-
|
|
24
|
-
return
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
});
|
|
28
|
+
get modelState() {
|
|
29
|
+
return this._modelState;
|
|
30
|
+
}
|
|
31
|
+
set modelState(value) {
|
|
32
|
+
this._modelState = value;
|
|
33
|
+
this._modelStateId = value === null || value === void 0 ? void 0 : value.id;
|
|
34
|
+
}
|
|
35
|
+
get modelStateId() {
|
|
36
|
+
return this._modelStateId;
|
|
37
|
+
}
|
|
38
|
+
set modelStateId(value) {
|
|
39
|
+
this._modelStateId = value;
|
|
37
40
|
}
|
|
41
|
+
get modelStateValidationMode() {
|
|
42
|
+
return this._modelStateValidationMode;
|
|
43
|
+
}
|
|
44
|
+
set modelStateValidationMode(value) {
|
|
45
|
+
this._modelStateValidationMode = value;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Creates a new model state with the given parameter values and optional image and data.
|
|
49
|
+
*
|
|
50
|
+
* @param parameterValues Key-value pairs of parameter IDs and their corresponding values
|
|
51
|
+
* @param omitSessionParameterValues Whether to omit parameters that have not been explicitly set in the session
|
|
52
|
+
* @param image Optional image to associate with the model state
|
|
53
|
+
* @param data Optional additional data to associate with the model state
|
|
54
|
+
* @param arScene Optional AR scene to associate with the model state
|
|
55
|
+
* @param retry Whether to retry the request in case of failure
|
|
56
|
+
* @returns Promise with the ID of the created model state
|
|
57
|
+
*/
|
|
38
58
|
createModelState(parameterValues = {}, omitSessionParameterValues = false, image, data, arScene, retry = false) {
|
|
39
59
|
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
-
this.
|
|
60
|
+
this._sessionEngineCore.utilsManager.checkAvailability();
|
|
41
61
|
try {
|
|
42
62
|
const promises = [];
|
|
43
63
|
// process the parameters
|
|
@@ -47,12 +67,12 @@ class ModelStateManager {
|
|
|
47
67
|
.then(() => {
|
|
48
68
|
// create a set of the current validated parameter values
|
|
49
69
|
for (const parameterId in this._sessionEngineCore
|
|
50
|
-
.parameters) {
|
|
70
|
+
.parameterManager.parameters) {
|
|
51
71
|
// if the parameter has not been set, we do not include it in the parameter set if the omitSessionParameterValues flag is set
|
|
52
72
|
if (!(omitSessionParameterValues === true &&
|
|
53
73
|
parameterValues[parameterId] === undefined)) {
|
|
54
74
|
parameterSet[parameterId] = (" " +
|
|
55
|
-
this._sessionEngineCore.parameters[parameterId].stringify(parameterValues[parameterId])).slice(1);
|
|
75
|
+
this._sessionEngineCore.parameterManager.parameters[parameterId].stringify(parameterValues[parameterId])).slice(1);
|
|
56
76
|
}
|
|
57
77
|
}
|
|
58
78
|
}));
|
|
@@ -60,7 +80,7 @@ class ModelStateManager {
|
|
|
60
80
|
let imageData;
|
|
61
81
|
let imageArrayBuffer;
|
|
62
82
|
if (image) {
|
|
63
|
-
promises.push(this.
|
|
83
|
+
promises.push(this._sessionEngineCore.utilsManager
|
|
64
84
|
.processImageInput(image)
|
|
65
85
|
.then((result) => {
|
|
66
86
|
imageData = result === null || result === void 0 ? void 0 : result.imageData;
|
|
@@ -94,14 +114,21 @@ class ModelStateManager {
|
|
|
94
114
|
return response.modelState.id;
|
|
95
115
|
}
|
|
96
116
|
catch (e) {
|
|
97
|
-
yield this.
|
|
117
|
+
yield this._sessionEngineCore.utilsManager.handleError(e, retry);
|
|
98
118
|
return yield this.createModelState(parameterValues, omitSessionParameterValues, image, data, arScene, true);
|
|
99
119
|
}
|
|
100
120
|
});
|
|
101
121
|
}
|
|
122
|
+
/**
|
|
123
|
+
* Customizes the session using the provided model state.
|
|
124
|
+
*
|
|
125
|
+
* @param modelState The model state ID or the model state response object
|
|
126
|
+
* @param retry Whether to retry the request in case of failure
|
|
127
|
+
* @returns Promise with the root tree node of the customized session
|
|
128
|
+
*/
|
|
102
129
|
customizeWithModelState(modelState, retry = false) {
|
|
103
130
|
return __awaiter(this, void 0, void 0, function* () {
|
|
104
|
-
this.
|
|
131
|
+
this._sessionEngineCore.utilsManager.checkAvailability();
|
|
105
132
|
try {
|
|
106
133
|
// get the model state if it is not already a response
|
|
107
134
|
let response;
|
|
@@ -115,16 +142,36 @@ class ModelStateManager {
|
|
|
115
142
|
return new viewer_shared_node_tree_1.TreeNode();
|
|
116
143
|
// read out the parameter values from the model state
|
|
117
144
|
for (const parameterId in response.modelState.parameters)
|
|
118
|
-
this._sessionEngineCore.parameters[parameterId].value =
|
|
119
|
-
response.modelState.parameters[parameterId];
|
|
145
|
+
this._sessionEngineCore.parameterManager.parameters[parameterId].value = response.modelState.parameters[parameterId];
|
|
120
146
|
return this._sessionEngineCore.customizationManager.customize();
|
|
121
147
|
}
|
|
122
148
|
catch (e) {
|
|
123
|
-
yield this.
|
|
149
|
+
yield this._sessionEngineCore.utilsManager.handleError(e, retry);
|
|
124
150
|
return yield this.customizeWithModelState(modelState, true);
|
|
125
151
|
}
|
|
126
152
|
});
|
|
127
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* Retrieves a model state by its ID.
|
|
156
|
+
*
|
|
157
|
+
* @param modelStateId The ID of the model state to retrieve. If undefined, the current model state ID is used.
|
|
158
|
+
* @returns Promise with the model state information
|
|
159
|
+
*/
|
|
160
|
+
getModelState(modelStateId) {
|
|
161
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
162
|
+
this._sessionEngineCore.utilsManager.checkAvailability();
|
|
163
|
+
try {
|
|
164
|
+
const id = modelStateId || this._modelStateId;
|
|
165
|
+
if (!id)
|
|
166
|
+
throw new viewer_shared_services_1.ShapeDiverViewerSessionError("Session.getModelState: No model state id available.");
|
|
167
|
+
const response = (yield new sdk_geometry_api_sdk_v2_1.ModelStateApi(this._sessionEngineCore.sdkConfig).getModelState(id)).data;
|
|
168
|
+
return response;
|
|
169
|
+
}
|
|
170
|
+
catch (e) {
|
|
171
|
+
throw this._httpClient.convertError(e);
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
}
|
|
128
175
|
}
|
|
129
176
|
exports.ModelStateManager = ModelStateManager;
|
|
130
177
|
//# sourceMappingURL=ModelStateManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelStateManager.js","sourceRoot":"","sources":["../../../src/implementation/managers/ModelStateManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"ModelStateManager.js","sourceRoot":"","sources":["../../../src/implementation/managers/ModelStateManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +1,59 @@
|
|
|
1
1
|
import { ResBase } from "@shapediver/sdk.geometry-api-sdk-v2";
|
|
2
2
|
import { ITreeNode } from "@shapediver/viewer.shared.node-tree";
|
|
3
3
|
import { ITaskEventDescription } from "@shapediver/viewer.shared.types";
|
|
4
|
+
import { IOutput } from "../../interfaces/dto/IOutput";
|
|
4
5
|
import { ISessionTreeNode } from "../../interfaces/ISessionTreeNode";
|
|
5
6
|
import { SessionEngineCore } from "../SessionEngineCore";
|
|
7
|
+
/**
|
|
8
|
+
* Manager responsible for outputs.
|
|
9
|
+
*
|
|
10
|
+
* The manager is created by the SessionEngineCore and can be accessed
|
|
11
|
+
* via the `outputManager` property.
|
|
12
|
+
*/
|
|
6
13
|
export declare class OutputManager {
|
|
7
|
-
private readonly _outputLoader;
|
|
8
|
-
private readonly _sessionEngineCore;
|
|
9
14
|
private readonly _eventEngine;
|
|
10
15
|
private readonly _logger;
|
|
11
|
-
private readonly
|
|
16
|
+
private readonly _outputLoader;
|
|
17
|
+
private readonly _outputs;
|
|
18
|
+
private readonly _outputsFreeze;
|
|
19
|
+
private readonly _sessionEngineCore;
|
|
12
20
|
private readonly _stateEngine;
|
|
13
|
-
private readonly
|
|
21
|
+
private readonly _uuidGenerator;
|
|
22
|
+
private _allowOutputLoading;
|
|
14
23
|
constructor(sessionEngineCore: SessionEngineCore);
|
|
15
|
-
|
|
24
|
+
init(): void;
|
|
25
|
+
get allowOutputLoading(): boolean;
|
|
26
|
+
set allowOutputLoading(value: boolean);
|
|
16
27
|
get jwtToken(): string | undefined;
|
|
28
|
+
get loadSdtf(): boolean;
|
|
29
|
+
get outputs(): {
|
|
30
|
+
[key: string]: IOutput;
|
|
31
|
+
};
|
|
32
|
+
get outputsFreeze(): {
|
|
33
|
+
[key: string]: boolean;
|
|
34
|
+
};
|
|
17
35
|
get reloadSdtf(): boolean;
|
|
18
36
|
set reloadSdtf(value: boolean);
|
|
37
|
+
/**
|
|
38
|
+
* Create outputs from the response DTO.
|
|
39
|
+
*/
|
|
40
|
+
createOutputsFromDto(): void;
|
|
19
41
|
getCurrentOutputVersions(): {
|
|
20
42
|
[key: string]: string;
|
|
21
43
|
};
|
|
44
|
+
/**
|
|
45
|
+
* Load cached outputs in parallel.
|
|
46
|
+
*
|
|
47
|
+
* @param outputMapping mapping of output ids to their versions
|
|
48
|
+
* @param taskEventInfo optional task event info
|
|
49
|
+
* @param retry whether to retry the request in case of failure
|
|
50
|
+
* @returns promise with a mapping of output ids to their scene graph nodes
|
|
51
|
+
*/
|
|
52
|
+
loadCachedOutputsParallel(outputMapping: {
|
|
53
|
+
[key: string]: string;
|
|
54
|
+
}, taskEventInfo?: ITaskEventDescription, retry?: boolean): Promise<{
|
|
55
|
+
[key: string]: ITreeNode | undefined;
|
|
56
|
+
}>;
|
|
22
57
|
/**
|
|
23
58
|
* Load the outputs and return the scene graph node of the result.
|
|
24
59
|
* In case the outputs have a delay property, another customization request with the parameter set is sent.
|
|
@@ -28,11 +63,6 @@ export declare class OutputManager {
|
|
|
28
63
|
* @returns promise with a scene graph node
|
|
29
64
|
*/
|
|
30
65
|
loadOutputs(cancelRequest: (() => boolean) | undefined, taskEventInfo: ITaskEventDescription, retry?: boolean): Promise<ISessionTreeNode>;
|
|
31
|
-
loadCachedOutputsParallel(outputMapping: {
|
|
32
|
-
[key: string]: string;
|
|
33
|
-
}, taskEventInfo?: ITaskEventDescription, retry?: boolean): Promise<{
|
|
34
|
-
[key: string]: ITreeNode | undefined;
|
|
35
|
-
}>;
|
|
36
66
|
/**
|
|
37
67
|
* Load the outputs and return the scene graph node of the result.
|
|
38
68
|
* In case the outputs have a delay property, another customization request with the parameter set is sent.
|
|
@@ -56,6 +86,14 @@ export declare class OutputManager {
|
|
|
56
86
|
tooltip: string;
|
|
57
87
|
};
|
|
58
88
|
}, retry?: boolean): Promise<boolean>;
|
|
89
|
+
/**
|
|
90
|
+
* Update the outputs and return the scene graph node of the result.
|
|
91
|
+
* In case the outputs have a delay property, another customization request with the parameter set is sent.
|
|
92
|
+
*
|
|
93
|
+
* @param taskEventInfo optional task event info
|
|
94
|
+
* @param waitForViewportUpdate whether to wait for the viewport update callbacks before returning
|
|
95
|
+
* @returns promise with a scene graph node
|
|
96
|
+
*/
|
|
59
97
|
updateOutputs(taskEventInfo?: ITaskEventDescription, waitForViewportUpdate?: boolean): Promise<ITreeNode>;
|
|
60
98
|
}
|
|
61
99
|
//# sourceMappingURL=OutputManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutputManager.d.ts","sourceRoot":"","sources":["../../../src/implementation/managers/OutputManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,OAAO,EAIP,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAC,SAAS,EAAC,MAAM,qCAAqC,CAAC;AAQ9D,OAAO,EAEN,qBAAqB,EAErB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAC,gBAAgB,EAAC,MAAM,mCAAmC,CAAC;AAKnE,OAAO,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"OutputManager.d.ts","sourceRoot":"","sources":["../../../src/implementation/managers/OutputManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,OAAO,EAIP,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAC,SAAS,EAAC,MAAM,qCAAqC,CAAC;AAQ9D,OAAO,EAEN,qBAAqB,EAErB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAC,OAAO,EAAC,MAAM,8BAA8B,CAAC;AACrD,OAAO,EAAC,gBAAgB,EAAC,MAAM,mCAAmC,CAAC;AAKnE,OAAO,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAGvD;;;;;GAKG;AACH,qBAAa,aAAa;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IACrD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IACnD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgC;IACzD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgC;IAC/D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoB;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqC;IAClE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IAEzD,OAAO,CAAC,mBAAmB,CAAiB;gBAEhC,iBAAiB,EAAE,iBAAiB;IAKzC,IAAI,IAAI,IAAI;IAInB,IAAW,kBAAkB,IAAI,OAAO,CAEvC;IAED,IAAW,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAE3C;IAED,IAAW,QAAQ,IAAI,MAAM,GAAG,SAAS,CAExC;IAED,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IAAW,OAAO,IAAI;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAE7C;IAED,IAAW,aAAa,IAAI;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAEnD;IAED,IAAW,UAAU,IAAI,OAAO,CAE/B;IAED,IAAW,UAAU,CAAC,KAAK,EAAE,OAAO,EAEnC;IAED;;OAEG;IACI,oBAAoB,IAAI,IAAI;IA0B5B,wBAAwB,IAAI;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC;IAI1D;;;;;;;OAOG;IACU,yBAAyB,CACrC,aAAa,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,EACtC,aAAa,CAAC,EAAE,qBAAqB,EACrC,KAAK,UAAQ,GACX,OAAO,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;KAAC,CAAC;IAwFlD;;;;;;;OAOG;IACU,WAAW,CACvB,aAAa,SAAQ,OAAO,aAAc,EAC1C,aAAa,EAAE,qBAAqB,EACpC,KAAK,UAAQ,GACX,OAAO,CAAC,gBAAgB,CAAC;IAmE5B;;;;;;;OAOG;IACU,mBAAmB,CAC/B,WAAW,EAAE,OAAO,EACpB,aAAa,SAAQ,OAAO,aAAc,EAC1C,aAAa,EAAE,qBAAqB,EACpC,KAAK,UAAQ,GACX,OAAO,CAAC,gBAAgB,CAAC;IAsF5B;;;;;OAKG;IACU,oBAAoB,CAChC,OAAO,EAAE;QACR,CAAC,GAAG,EAAE,MAAM,GAAG;YACd,WAAW,EAAE,MAAM,CAAC;YACpB,MAAM,EAAE,OAAO,CAAC;YAChB,KAAK,EAAE,MAAM,CAAC;YACd,OAAO,EAAE,MAAM,CAAC;SAChB,CAAC;KACF,EACD,KAAK,UAAQ,GACX,OAAO,CAAC,OAAO,CAAC;IAmBnB;;;;;;;OAOG;IACU,aAAa,CACzB,aAAa,CAAC,EAAE,qBAAqB,EACrC,qBAAqB,GAAE,OAAe,GACpC,OAAO,CAAC,SAAS,CAAC;CAwQrB"}
|