@shapediver/viewer.data-engine.sdtf-engine 2.7.9 → 2.8.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/SDTFEngine.d.ts +2 -1
- package/dist/SDTFEngine.d.ts.map +1 -1
- package/dist/SDTFEngine.js +19 -36
- package/dist/SDTFEngine.js.map +1 -1
- package/package.json +8 -9
- package/src/SDTFEngine.ts +21 -25
package/dist/SDTFEngine.d.ts
CHANGED
|
@@ -2,8 +2,9 @@ import { ITreeNode } from '@shapediver/viewer.shared.node-tree';
|
|
|
2
2
|
import { ShapeDiverResponseOutputContent } from '@shapediver/sdk.geometry-api-sdk-v2';
|
|
3
3
|
export declare class SDTFEngine {
|
|
4
4
|
private readonly _logger;
|
|
5
|
+
private static _instance;
|
|
5
6
|
private _parsedFile;
|
|
6
|
-
|
|
7
|
+
static get instance(): SDTFEngine;
|
|
7
8
|
/**
|
|
8
9
|
* Load the sdtf content into a scene graph node.
|
|
9
10
|
*
|
package/dist/SDTFEngine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SDTFEngine.d.ts","sourceRoot":"","sources":["../src/SDTFEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,qCAAqC,CAAA;
|
|
1
|
+
{"version":3,"file":"SDTFEngine.d.ts","sourceRoot":"","sources":["../src/SDTFEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,qCAAqC,CAAA;AAGzE,OAAO,EAAE,+BAA+B,EAAE,MAAM,qCAAqC,CAAA;AAIrF,qBAAa,UAAU;IAGnB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;IAEnD,OAAO,CAAC,MAAM,CAAC,SAAS,CAAa;IAErC,OAAO,CAAC,WAAW,CAAsB;IAMzC,WAAkB,QAAQ,eAEzB;IAMD;;;;;OAKG;IACU,WAAW,CAAC,OAAO,EAAE,+BAA+B,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA4BzG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;YACW,kBAAkB;IA2EhC;;;;;OAKG;YACW,cAAc;IAmB5B;;;;;;OAMG;YACW,SAAS;IA2BvB;;;;;;OAMG;YACW,QAAQ;IAyBtB;;;;;;OAMG;YACW,QAAQ;CA4BzB"}
|
package/dist/SDTFEngine.js
CHANGED
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -20,19 +11,22 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
20
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
12
|
exports.SDTFEngine = void 0;
|
|
22
13
|
const viewer_shared_node_tree_1 = require("@shapediver/viewer.shared.node-tree");
|
|
23
|
-
const tsyringe_1 = require("tsyringe");
|
|
24
14
|
const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
|
|
25
15
|
const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
|
|
26
16
|
const sdk_sdtf_v1_1 = require("@shapediver/sdk.sdtf-v1");
|
|
27
17
|
const sdk_sdtf_primitives_1 = require("@shapediver/sdk.sdtf-primitives");
|
|
28
|
-
|
|
29
|
-
// #endregion Properties (2)
|
|
30
|
-
// #region Constructors (1)
|
|
18
|
+
class SDTFEngine {
|
|
31
19
|
constructor() {
|
|
32
|
-
// #region Properties (
|
|
33
|
-
this._logger =
|
|
20
|
+
// #region Properties (3)
|
|
21
|
+
this._logger = viewer_shared_services_1.Logger.instance;
|
|
22
|
+
// #endregion Private Methods (5)
|
|
34
23
|
}
|
|
35
|
-
// #endregion
|
|
24
|
+
// #endregion Properties (3)
|
|
25
|
+
// #region Public Static Accessors (1)
|
|
26
|
+
static get instance() {
|
|
27
|
+
return this._instance || (this._instance = new this());
|
|
28
|
+
}
|
|
29
|
+
// #endregion Public Static Accessors (1)
|
|
36
30
|
// #region Public Methods (1)
|
|
37
31
|
/**
|
|
38
32
|
* Load the sdtf content into a scene graph node.
|
|
@@ -44,27 +38,20 @@ let SDTFEngine = class SDTFEngine {
|
|
|
44
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
45
39
|
const node = new viewer_shared_node_tree_1.TreeNode('sdtf');
|
|
46
40
|
// We have to be safe and check if the content is a valid SDTF file
|
|
47
|
-
if (!content || (content && !content.href))
|
|
48
|
-
|
|
49
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.DATA_PROCESSING, `SDTFEngine.loadContent`, error);
|
|
50
|
-
}
|
|
41
|
+
if (!content || (content && !content.href))
|
|
42
|
+
throw new viewer_shared_services_1.ShapeDiverViewerDataProcessingError('SDTFEngine.loadContent: Invalid content was provided to geometry engine.');
|
|
51
43
|
// create the sdtf sdk
|
|
52
44
|
const sdk = jwtToken ? yield (0, sdk_sdtf_v1_1.create)({ authToken: jwtToken }) : yield (0, sdk_sdtf_v1_1.create)();
|
|
53
45
|
// crete the sdtf parser
|
|
54
46
|
const parser = sdk.createParser();
|
|
55
47
|
// parse the file
|
|
56
48
|
this._parsedFile = yield parser.readFromUrl(content.href);
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
return node;
|
|
64
|
-
}
|
|
65
|
-
catch (e) {
|
|
66
|
-
throw this._logger.handleError(viewer_shared_services_1.LOGGING_TOPIC.DATA_PROCESSING, `SDTFEngine.load`, e);
|
|
67
|
-
}
|
|
49
|
+
// crete the overview and save it in the node data
|
|
50
|
+
node.data.push(yield this.createSDTFOverview());
|
|
51
|
+
// add the loaded chunks to the node
|
|
52
|
+
for (let i = 0; i < this._parsedFile.chunks.length; i++)
|
|
53
|
+
node.children.push(yield this.loadChunk(this._parsedFile.chunks[i], i));
|
|
54
|
+
return node;
|
|
68
55
|
});
|
|
69
56
|
}
|
|
70
57
|
// #endregion Public Methods (1)
|
|
@@ -280,10 +267,6 @@ let SDTFEngine = class SDTFEngine {
|
|
|
280
267
|
return nodeDef;
|
|
281
268
|
});
|
|
282
269
|
}
|
|
283
|
-
}
|
|
284
|
-
SDTFEngine = __decorate([
|
|
285
|
-
(0, tsyringe_1.singleton)(),
|
|
286
|
-
__metadata("design:paramtypes", [])
|
|
287
|
-
], SDTFEngine);
|
|
270
|
+
}
|
|
288
271
|
exports.SDTFEngine = SDTFEngine;
|
|
289
272
|
//# sourceMappingURL=SDTFEngine.js.map
|
package/dist/SDTFEngine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SDTFEngine.js","sourceRoot":"","sources":["../src/SDTFEngine.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SDTFEngine.js","sourceRoot":"","sources":["../src/SDTFEngine.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shapediver/viewer.data-engine.sdtf-engine",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.8.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"author": "Michael Oppitz <michael@shapediver.com>",
|
|
@@ -41,14 +41,13 @@
|
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@shapediver/sdk.geometry-api-sdk-v2": "1.3.0",
|
|
43
43
|
"@shapediver/sdk.sdtf-v1": "1.2.1",
|
|
44
|
-
"@shapediver/viewer.data-engine.shared-types": "2.
|
|
45
|
-
"@shapediver/viewer.shared.build-data": "2.
|
|
46
|
-
"@shapediver/viewer.shared.node-tree": "2.
|
|
47
|
-
"@shapediver/viewer.shared.services": "2.
|
|
48
|
-
"@shapediver/viewer.shared.types": "2.
|
|
44
|
+
"@shapediver/viewer.data-engine.shared-types": "2.8.0",
|
|
45
|
+
"@shapediver/viewer.shared.build-data": "2.8.0",
|
|
46
|
+
"@shapediver/viewer.shared.node-tree": "2.8.0",
|
|
47
|
+
"@shapediver/viewer.shared.services": "2.8.0",
|
|
48
|
+
"@shapediver/viewer.shared.types": "2.8.0",
|
|
49
49
|
"axios": "^1.2.6",
|
|
50
|
-
"gl-matrix": "3.3.0"
|
|
51
|
-
"tsyringe": "^4.5.0"
|
|
50
|
+
"gl-matrix": "3.3.0"
|
|
52
51
|
},
|
|
53
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "9caee20107c5d71e43de33edc14ee19d62ec268b"
|
|
54
53
|
}
|
package/src/SDTFEngine.ts
CHANGED
|
@@ -1,26 +1,28 @@
|
|
|
1
1
|
import { ITreeNode, TreeNode } from '@shapediver/viewer.shared.node-tree'
|
|
2
|
-
import {
|
|
3
|
-
import { Logger, LOGGING_TOPIC, ShapeDiverViewerDataProcessingError } from '@shapediver/viewer.shared.services'
|
|
2
|
+
import { Logger, ShapeDiverViewerDataProcessingError } from '@shapediver/viewer.shared.services'
|
|
4
3
|
import { SDTFAttributesData, SDTFAttributeData, SDTFItemData, SDTFOverviewData } from '@shapediver/viewer.shared.types'
|
|
5
4
|
import { ShapeDiverResponseOutputContent } from '@shapediver/sdk.geometry-api-sdk-v2'
|
|
6
5
|
import { create, ISdtfReadableAsset, ISdtfReadableAttributes, ISdtfReadableChunk, ISdtfReadableDataItem, ISdtfReadableNode, SdtfTypeHintName } from '@shapediver/sdk.sdtf-v1'
|
|
7
6
|
import { SdtfPrimitiveTypeGuard } from '@shapediver/sdk.sdtf-primitives'
|
|
8
7
|
|
|
9
|
-
@singleton()
|
|
10
8
|
export class SDTFEngine {
|
|
11
|
-
// #region Properties (
|
|
9
|
+
// #region Properties (3)
|
|
12
10
|
|
|
13
|
-
private readonly _logger: Logger =
|
|
11
|
+
private readonly _logger: Logger = Logger.instance;
|
|
12
|
+
|
|
13
|
+
private static _instance: SDTFEngine;
|
|
14
14
|
|
|
15
15
|
private _parsedFile!: ISdtfReadableAsset;
|
|
16
16
|
|
|
17
|
-
// #endregion Properties (
|
|
17
|
+
// #endregion Properties (3)
|
|
18
18
|
|
|
19
|
-
// #region
|
|
19
|
+
// #region Public Static Accessors (1)
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
public static get instance() {
|
|
22
|
+
return this._instance || (this._instance = new this());
|
|
23
|
+
}
|
|
22
24
|
|
|
23
|
-
// #endregion
|
|
25
|
+
// #endregion Public Static Accessors (1)
|
|
24
26
|
|
|
25
27
|
// #region Public Methods (1)
|
|
26
28
|
|
|
@@ -34,10 +36,8 @@ export class SDTFEngine {
|
|
|
34
36
|
const node = new TreeNode('sdtf');
|
|
35
37
|
|
|
36
38
|
// We have to be safe and check if the content is a valid SDTF file
|
|
37
|
-
if (!content || (content && !content.href))
|
|
38
|
-
|
|
39
|
-
throw this._logger.handleError(LOGGING_TOPIC.DATA_PROCESSING, `SDTFEngine.loadContent`, error);
|
|
40
|
-
}
|
|
39
|
+
if (!content || (content && !content.href))
|
|
40
|
+
throw new ShapeDiverViewerDataProcessingError('SDTFEngine.loadContent: Invalid content was provided to geometry engine.');
|
|
41
41
|
|
|
42
42
|
// create the sdtf sdk
|
|
43
43
|
const sdk = jwtToken ? await create({ authToken: jwtToken }) : await create();
|
|
@@ -46,18 +46,14 @@ export class SDTFEngine {
|
|
|
46
46
|
// parse the file
|
|
47
47
|
this._parsedFile = await parser.readFromUrl(content.href!);
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
return node;
|
|
58
|
-
} catch (e) {
|
|
59
|
-
throw this._logger.handleError(LOGGING_TOPIC.DATA_PROCESSING, `SDTFEngine.load`, e);
|
|
60
|
-
}
|
|
49
|
+
// crete the overview and save it in the node data
|
|
50
|
+
node.data.push(await this.createSDTFOverview());
|
|
51
|
+
|
|
52
|
+
// add the loaded chunks to the node
|
|
53
|
+
for (let i = 0; i < this._parsedFile.chunks.length; i++)
|
|
54
|
+
node.children.push(await this.loadChunk(this._parsedFile.chunks[i], i));
|
|
55
|
+
|
|
56
|
+
return node;
|
|
61
57
|
}
|
|
62
58
|
|
|
63
59
|
// #endregion Public Methods (1)
|