@shapediver/sdk.geometry-api-sdk-v2 1.8.2 → 1.8.3
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/ShapeDiverSdk.js +2 -2
- package/dist/ShapeDiverSdk.js.map +1 -1
- package/dist/resources/ShapeDiverGltfApi.js +2 -2
- package/dist/resources/ShapeDiverGltfApi.js.map +1 -1
- package/dist/resources/ShapeDiverUtilsApi.js +8 -8
- package/dist/resources/ShapeDiverUtilsApi.js.map +1 -1
- package/dist/utils/utils.js +8 -9
- package/dist/utils/utils.js.map +1 -1
- package/package.json +9 -8
- package/src/ShapeDiverErrors.ts +33 -0
- package/src/ShapeDiverSdk.ts +113 -0
- package/src/index.ts +18 -0
- package/src/resources/ShapeDiverAnalyticsApi.ts +22 -0
- package/src/resources/ShapeDiverArSceneApi.ts +76 -0
- package/src/resources/ShapeDiverAssetApi.ts +189 -0
- package/src/resources/ShapeDiverExportApi.ts +85 -0
- package/src/resources/ShapeDiverFileApi.ts +123 -0
- package/src/resources/ShapeDiverGltfApi.ts +34 -0
- package/src/resources/ShapeDiverModelApi.ts +246 -0
- package/src/resources/ShapeDiverOutputApi.ts +64 -0
- package/src/resources/ShapeDiverSdtfApi.ts +61 -0
- package/src/resources/ShapeDiverSessionApi.ts +91 -0
- package/src/resources/ShapeDiverSystemApi.ts +80 -0
- package/src/resources/ShapeDiverTextureApi.ts +22 -0
- package/src/resources/ShapeDiverUtilsApi.ts +255 -0
- package/src/utils/utils.ts +89 -0
package/dist/ShapeDiverSdk.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ShapeDiverSdk =
|
|
3
|
+
exports.ShapeDiverSdk = void 0;
|
|
4
|
+
exports.create = create;
|
|
4
5
|
const sdk_geometry_api_sdk_core_1 = require("@shapediver/sdk.geometry-api-sdk-core");
|
|
5
6
|
const ShapeDiverAnalyticsApi_1 = require("./resources/ShapeDiverAnalyticsApi");
|
|
6
7
|
const ShapeDiverArSceneApi_1 = require("./resources/ShapeDiverArSceneApi");
|
|
@@ -18,7 +19,6 @@ const ShapeDiverUtilsApi_1 = require("./resources/ShapeDiverUtilsApi");
|
|
|
18
19
|
function create(baseUrl, jwt) {
|
|
19
20
|
return new ShapeDiverSdk(baseUrl, jwt);
|
|
20
21
|
}
|
|
21
|
-
exports.create = create;
|
|
22
22
|
class ShapeDiverSdk extends sdk_geometry_api_sdk_core_1.BaseShapeDiverSdk {
|
|
23
23
|
constructor(baseUrl, jwt) {
|
|
24
24
|
super(baseUrl);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShapeDiverSdk.js","sourceRoot":"","sources":["../src/ShapeDiverSdk.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ShapeDiverSdk.js","sourceRoot":"","sources":["../src/ShapeDiverSdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,8 +17,8 @@ class ShapeDiverGltfApi extends sdk_geometry_api_sdk_core_1.BaseResourceApi {
|
|
|
17
17
|
constructor(api) {
|
|
18
18
|
super(api);
|
|
19
19
|
}
|
|
20
|
-
upload(
|
|
21
|
-
return __awaiter(this,
|
|
20
|
+
upload(sessionId_1, body_1, type_1) {
|
|
21
|
+
return __awaiter(this, arguments, void 0, function* (sessionId, body, type, queryConvert = api_geometry_api_dto_v2_1.ShapeDiverRequestGltfUploadQueryConversion.NONE) {
|
|
22
22
|
return yield (0, utils_1.sendRequest)(() => __awaiter(this, void 0, void 0, function* () {
|
|
23
23
|
return (yield this.api.post(`${this.buildSessionUri(sessionId)}/gltf?conversion=${queryConvert}`, body, { contentType: type, responseType: sdk_geometry_api_sdk_core_1.ShapeDiverSdkApiResponseType.JSON }))[1];
|
|
24
24
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShapeDiverGltfApi.js","sourceRoot":"","sources":["../../src/resources/ShapeDiverGltfApi.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iFAAuH;AACvH,qFAAuH;AACvH,0CAA4C;AAE5C,MAAa,iBAAkB,SAAQ,2CAAe;IAElD,YAAa,GAAqB;QAC9B,KAAK,CAAC,GAAG,CAAC,CAAA;IACd,CAAC;IAUK,MAAM,
|
|
1
|
+
{"version":3,"file":"ShapeDiverGltfApi.js","sourceRoot":"","sources":["../../src/resources/ShapeDiverGltfApi.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iFAAuH;AACvH,qFAAuH;AACvH,0CAA4C;AAE5C,MAAa,iBAAkB,SAAQ,2CAAe;IAElD,YAAa,GAAqB;QAC9B,KAAK,CAAC,GAAG,CAAC,CAAA;IACd,CAAC;IAUK,MAAM;6DACR,SAAiB,EACjB,IAAiB,EACjB,IAAY,EACZ,eAA2D,oEAA0C,CAAC,IAAI;YAE1G,OAAO,MAAM,IAAA,mBAAW,EAAC,GAAS,EAAE;gBAChC,OAAA,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAChB,GAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAAE,oBAAqB,YAAa,EAAE,EACxE,IAAI,EACJ,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,wDAA4B,CAAC,IAAI,EAAE,CACzE,CAAC,CAAC,CAAC,CAAC,CAAA;cAAA,CACR,CAAA;QACL,CAAC;KAAA;CAEJ;AA7BD,8CA6BC"}
|
|
@@ -41,8 +41,8 @@ class ShapeDiverUtilsApi extends sdk_geometry_api_sdk_core_1.BaseResourceApi {
|
|
|
41
41
|
}));
|
|
42
42
|
});
|
|
43
43
|
}
|
|
44
|
-
submitAndWaitForCustomization(
|
|
45
|
-
return __awaiter(this,
|
|
44
|
+
submitAndWaitForCustomization(sdk_1, sessionId_1, body_1) {
|
|
45
|
+
return __awaiter(this, arguments, void 0, function* (sdk, sessionId, body, maxWaitMsec = -1) {
|
|
46
46
|
const startMsec = Date.now();
|
|
47
47
|
const dto = yield (0, utils_1.sendRequest)(() => __awaiter(this, void 0, void 0, function* () { return sdk.output.customize(sessionId, body); }));
|
|
48
48
|
const waitMsec = Date.now() - startMsec;
|
|
@@ -50,8 +50,8 @@ class ShapeDiverUtilsApi extends sdk_geometry_api_sdk_core_1.BaseResourceApi {
|
|
|
50
50
|
return ShapeDiverUtilsApi.waitForCustomizationResult(sdk, sessionId, dto, maxWaitMsec);
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
|
-
submitAndWaitForExport(
|
|
54
|
-
return __awaiter(this,
|
|
53
|
+
submitAndWaitForExport(sdk_1, sessionId_1, body_1) {
|
|
54
|
+
return __awaiter(this, arguments, void 0, function* (sdk, sessionId, body, maxWaitMsec = -1) {
|
|
55
55
|
const startMsec = Date.now();
|
|
56
56
|
const dto = yield (0, utils_1.sendRequest)(() => __awaiter(this, void 0, void 0, function* () { return sdk.export.compute(sessionId, body); }));
|
|
57
57
|
const waitMsec = Date.now() - startMsec;
|
|
@@ -59,8 +59,8 @@ class ShapeDiverUtilsApi extends sdk_geometry_api_sdk_core_1.BaseResourceApi {
|
|
|
59
59
|
return ShapeDiverUtilsApi.waitForExportResult(sdk, sessionId, body, dto, maxWaitMsec);
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
|
-
static waitForCustomizationResult(
|
|
63
|
-
return __awaiter(this,
|
|
62
|
+
static waitForCustomizationResult(sdk_1, sessionId_1, dto_1) {
|
|
63
|
+
return __awaiter(this, arguments, void 0, function* (sdk, sessionId, dto, maxWaitMsec = -1) {
|
|
64
64
|
if (!dto.outputs)
|
|
65
65
|
return dto;
|
|
66
66
|
const outputVersions = {};
|
|
@@ -86,8 +86,8 @@ class ShapeDiverUtilsApi extends sdk_geometry_api_sdk_core_1.BaseResourceApi {
|
|
|
86
86
|
return dto;
|
|
87
87
|
});
|
|
88
88
|
}
|
|
89
|
-
static waitForExportResult(
|
|
90
|
-
return __awaiter(this,
|
|
89
|
+
static waitForExportResult(sdk_1, sessionId_1, body_1, dto_1) {
|
|
90
|
+
return __awaiter(this, arguments, void 0, function* (sdk, sessionId, body, dto, maxWaitMsec = -1) {
|
|
91
91
|
let delay = ShapeDiverUtilsApi.getMaxExportDelay(dto, body);
|
|
92
92
|
const startMsec = Date.now();
|
|
93
93
|
while (delay > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShapeDiverUtilsApi.js","sourceRoot":"","sources":["../../src/resources/ShapeDiverUtilsApi.ts"],"names":[],"mappings":";;;;;;;;;;;;AAQA,qFAK8C;AAE9C,0CAAmD;AASnD,MAAa,kBAAmB,SAAQ,2CAAe;IAEnD,YAAY,GAAqB;QAC7B,KAAK,CAAC,GAAG,CAAC,CAAA;IACd,CAAC;IAWK,MAAM,CACR,GAAW,EACX,IAAgD,EAChD,WAAmB,EACnB,QAAiB;;YAEjB,OAAO,MAAM,IAAA,mBAAW,EAAC,GAAS,EAAE;gBAAC,OAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAM,GAAG,EAAE,IAAI,EAAE;oBAC9D,WAAW,EAAE,WAAW;oBACxB,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,yBAAyB,QAAQ,GAAG,CAAC,CAAC,CAAC,SAAS;oBACjF,YAAY,EAAE,wDAA4B,CAAC,IAAI;oBAC/C,oBAAoB,EAAE,IAAI;oBAC1B,oBAAoB,EAAE,IAAI;iBAC7B,CAAC,CAAA;cAAA,CAAC,CAAA;QACP,CAAC;KAAA;IASK,QAAQ,CAAyC,GAAW,EAAE,YAAe;;YAI/E,OAAO,MAAM,IAAA,mBAAW,EAAC,GAAS,EAAE;gBAAC,OAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAM,GAAG,EAAE;oBACxD,WAAW,EAAE,kBAAkB;oBAC/B,YAAY,EAAE,YAAY;oBAC1B,oBAAoB,EAAE,IAAI;oBAC1B,oBAAoB,EAAE,IAAI;iBAC7B,CAAC,CAAA;cAAA,CAAC,CAAA;QACP,CAAC;KAAA;IAYK,6BAA6B
|
|
1
|
+
{"version":3,"file":"ShapeDiverUtilsApi.js","sourceRoot":"","sources":["../../src/resources/ShapeDiverUtilsApi.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/utils.js
CHANGED
|
@@ -9,7 +9,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.isGBError = isGBError;
|
|
13
|
+
exports.isGBGenericError = isGBGenericError;
|
|
14
|
+
exports.isGBRequestError = isGBRequestError;
|
|
15
|
+
exports.isGBResponseError = isGBResponseError;
|
|
16
|
+
exports.sendRequest = sendRequest;
|
|
17
|
+
exports.sleep = sleep;
|
|
18
|
+
exports.encodeBase64 = encodeBase64;
|
|
13
19
|
const sdk_geometry_api_sdk_core_1 = require("@shapediver/sdk.geometry-api-sdk-core");
|
|
14
20
|
const ShapeDiverErrors_1 = require("../ShapeDiverErrors");
|
|
15
21
|
function isGBError(e) {
|
|
@@ -17,28 +23,24 @@ function isGBError(e) {
|
|
|
17
23
|
"errorType" in e &&
|
|
18
24
|
Object.values(sdk_geometry_api_sdk_core_1.ShapeDiverErrorType).includes(e.errorType);
|
|
19
25
|
}
|
|
20
|
-
exports.isGBError = isGBError;
|
|
21
26
|
function isGBGenericError(e) {
|
|
22
27
|
return e instanceof Error &&
|
|
23
28
|
"errorType" in e &&
|
|
24
29
|
e.errorType === sdk_geometry_api_sdk_core_1.ShapeDiverErrorType.Generic;
|
|
25
30
|
}
|
|
26
|
-
exports.isGBGenericError = isGBGenericError;
|
|
27
31
|
function isGBRequestError(e) {
|
|
28
32
|
return e instanceof Error &&
|
|
29
33
|
"errorType" in e &&
|
|
30
34
|
e.errorType === sdk_geometry_api_sdk_core_1.ShapeDiverErrorType.Request;
|
|
31
35
|
}
|
|
32
|
-
exports.isGBRequestError = isGBRequestError;
|
|
33
36
|
function isGBResponseError(e) {
|
|
34
37
|
return e instanceof Error &&
|
|
35
38
|
"errorType" in e &&
|
|
36
39
|
e.errorType === sdk_geometry_api_sdk_core_1.ShapeDiverErrorType.Response;
|
|
37
40
|
}
|
|
38
|
-
exports.isGBResponseError = isGBResponseError;
|
|
39
41
|
function sendRequest(call) {
|
|
40
|
-
var _a;
|
|
41
42
|
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
var _a;
|
|
42
44
|
const retryLimit = 5;
|
|
43
45
|
let retryCounter = 0;
|
|
44
46
|
while (retryCounter < retryLimit) {
|
|
@@ -67,11 +69,9 @@ function sendRequest(call) {
|
|
|
67
69
|
throw new sdk_geometry_api_sdk_core_1.ShapeDiverError("Could not send request: Retry-limit reached");
|
|
68
70
|
});
|
|
69
71
|
}
|
|
70
|
-
exports.sendRequest = sendRequest;
|
|
71
72
|
function sleep(ms) {
|
|
72
73
|
return new Promise(resolve => setTimeout(resolve, ms));
|
|
73
74
|
}
|
|
74
|
-
exports.sleep = sleep;
|
|
75
75
|
function encodeBase64(str) {
|
|
76
76
|
try {
|
|
77
77
|
return btoa(str);
|
|
@@ -80,5 +80,4 @@ function encodeBase64(str) {
|
|
|
80
80
|
return Buffer.from(str).toString("base64");
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
|
-
exports.encodeBase64 = encodeBase64;
|
|
84
83
|
//# sourceMappingURL=utils.js.map
|
package/dist/utils/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":";;;;;;;;;;;AASA,8BAKC;AAGD,4CAIC;AAGD,4CAIC;AAGD,8CAIC;AAMD,kCAiCC;AAGD,sBAEC;AAGD,oCAMC;AAxFD,qFAK8C;AAC9C,0DAA6D;AAG7D,SAAgB,SAAS,CAAC,CAAM;IAE5B,OAAO,CAAC,YAAY,KAAK;QACrB,WAAW,IAAI,CAAC;QAChB,MAAM,CAAC,MAAM,CAAC,+CAAmB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAgB,CAAC,CAAA;AACvE,CAAC;AAGD,SAAgB,gBAAgB,CAAC,CAAM;IACnC,OAAO,CAAC,YAAY,KAAK;QACrB,WAAW,IAAI,CAAC;QAChB,CAAC,CAAC,SAAS,KAAK,+CAAmB,CAAC,OAAO,CAAA;AACnD,CAAC;AAGD,SAAgB,gBAAgB,CAAC,CAAM;IACnC,OAAO,CAAC,YAAY,KAAK;QACrB,WAAW,IAAI,CAAC;QAChB,CAAC,CAAC,SAAS,KAAK,+CAAmB,CAAC,OAAO,CAAA;AACnD,CAAC;AAGD,SAAgB,iBAAiB,CAAC,CAAM;IACpC,OAAO,CAAC,YAAY,KAAK;QACrB,WAAW,IAAI,CAAC;QAChB,CAAC,CAAC,SAAS,KAAK,+CAAmB,CAAC,QAAQ,CAAA;AACpD,CAAC;AAMD,SAAsB,WAAW,CAAI,IAAsB;;;QACvD,MAAM,UAAU,GAAG,CAAC,CAAA;QACpB,IAAI,YAAY,GAAG,CAAC,CAAA;QAEpB,OAAO,YAAY,GAAG,UAAU,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACD,OAAO,MAAM,IAAI,EAAE,CAAA;YACvB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,YAAY,EAAE,CAAA;gBAEd,IAAI,CAAC,YAAY,mDAA2B,EAAE,CAAC;oBAE3C,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;wBAEnB,MAAM,OAAO,GAAG,MAAA,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,mCAAI,EAAE,CAAA;wBAC9C,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAA;wBACnC,SAAQ;oBAEZ,CAAC;yBAAM,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;wBAC1B,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;wBACjB,SAAQ;oBACZ,CAAC;oBAGD,MAAM,IAAI,0CAAuB,CAAC,CAAC,CAAC,CAAA;gBACxC,CAAC;qBAAM,CAAC;oBAEJ,MAAM,CAAC,CAAA;gBACX,CAAC;YACL,CAAC;QACL,CAAC;QAED,MAAM,IAAI,2CAAe,CAAC,6CAA6C,CAAC,CAAA;IAC5E,CAAC;CAAA;AAGD,SAAgB,KAAK,CAAC,EAAU;IAC5B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAC1D,CAAC;AAGD,SAAgB,YAAY,CAAC,GAAW;IACpC,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;IACpB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC9C,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shapediver/sdk.geometry-api-sdk-v2",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.3",
|
|
4
4
|
"description": "SDK to communicate with the Geometry API version 2",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"shapediver",
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
"test": "__tests__"
|
|
15
15
|
},
|
|
16
16
|
"files": [
|
|
17
|
-
"dist"
|
|
17
|
+
"dist",
|
|
18
|
+
"src"
|
|
18
19
|
],
|
|
19
20
|
"repository": {
|
|
20
21
|
"type": "git",
|
|
@@ -46,14 +47,14 @@
|
|
|
46
47
|
},
|
|
47
48
|
"devDependencies": {
|
|
48
49
|
"jest": "~29.7.0",
|
|
49
|
-
"lerna": "
|
|
50
|
-
"typescript": "~5.
|
|
51
|
-
"webpack": "~5.
|
|
50
|
+
"lerna": "8.1.3",
|
|
51
|
+
"typescript": "~5.5.2",
|
|
52
|
+
"webpack": "~5.92.1",
|
|
52
53
|
"webpack-cli": "~5.1.4",
|
|
53
|
-
"webpack-dev-server": "~
|
|
54
|
+
"webpack-dev-server": "~5.0.4"
|
|
54
55
|
},
|
|
55
56
|
"dependencies": {
|
|
56
|
-
"@shapediver/sdk.geometry-api-sdk-core": "~1.4.
|
|
57
|
-
"@shapediver/api.geometry-api-dto-v2": "~1.
|
|
57
|
+
"@shapediver/sdk.geometry-api-sdk-core": "~1.4.1",
|
|
58
|
+
"@shapediver/api.geometry-api-dto-v2": "~1.20.1"
|
|
58
59
|
}
|
|
59
60
|
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ShapeDiverResponseError as ShapeDiverResponseErrorDto,
|
|
3
|
+
ShapeDiverResponseErrorType,
|
|
4
|
+
} from "@shapediver/api.geometry-api-dto-v2"
|
|
5
|
+
import {
|
|
6
|
+
ShapeDiverError,
|
|
7
|
+
ShapeDiverErrorType,
|
|
8
|
+
ShapeDiverResponseError as ShapeDiverResponseErrorCore,
|
|
9
|
+
} from "@shapediver/sdk.geometry-api-sdk-core"
|
|
10
|
+
|
|
11
|
+
/* Replaces core/ShapeDiverErrors/ShapeDiverResponseError with DTOv2-types */
|
|
12
|
+
export class ShapeDiverResponseError
|
|
13
|
+
extends ShapeDiverError
|
|
14
|
+
implements ShapeDiverResponseErrorDto {
|
|
15
|
+
|
|
16
|
+
public readonly errorType: ShapeDiverErrorType = ShapeDiverErrorType.Response
|
|
17
|
+
|
|
18
|
+
public readonly status: number
|
|
19
|
+
public readonly error: ShapeDiverResponseErrorType
|
|
20
|
+
public readonly desc: string
|
|
21
|
+
|
|
22
|
+
constructor(e: ShapeDiverResponseErrorCore) {
|
|
23
|
+
super(e.message)
|
|
24
|
+
|
|
25
|
+
this.status = e.status
|
|
26
|
+
this.desc = e.desc
|
|
27
|
+
|
|
28
|
+
this.error = (Object.values(ShapeDiverResponseErrorType).includes(e.error as any))
|
|
29
|
+
? e.error as ShapeDiverResponseErrorType
|
|
30
|
+
: ShapeDiverResponseErrorType.UNKNOWN
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { BaseShapeDiverSdk, ShapeDiverSdkConfigType } from "@shapediver/sdk.geometry-api-sdk-core"
|
|
2
|
+
import { ShapeDiverAnalyticsApi } from "./resources/ShapeDiverAnalyticsApi"
|
|
3
|
+
import { ShapeDiverArSceneApi } from "./resources/ShapeDiverArSceneApi"
|
|
4
|
+
import { ShapeDiverAssetApi } from "./resources/ShapeDiverAssetApi"
|
|
5
|
+
import { ShapeDiverExportApi } from "./resources/ShapeDiverExportApi"
|
|
6
|
+
import { ShapeDiverFileApi } from "./resources/ShapeDiverFileApi"
|
|
7
|
+
import { ShapeDiverGltfApi } from "./resources/ShapeDiverGltfApi"
|
|
8
|
+
import { ShapeDiverModelApi } from "./resources/ShapeDiverModelApi"
|
|
9
|
+
import { ShapeDiverOutputApi } from "./resources/ShapeDiverOutputApi"
|
|
10
|
+
import { ShapeDiverSdtfApi } from "./resources/ShapeDiverSdtfApi"
|
|
11
|
+
import { ShapeDiverSessionApi } from "./resources/ShapeDiverSessionApi"
|
|
12
|
+
import { ShapeDiverSystemApi } from "./resources/ShapeDiverSystemApi"
|
|
13
|
+
import { ShapeDiverTextureApi } from "./resources/ShapeDiverTextureApi"
|
|
14
|
+
import { ShapeDiverUtilsApi } from "./resources/ShapeDiverUtilsApi"
|
|
15
|
+
|
|
16
|
+
export function create (baseUrl: string, jwt?: string): ShapeDiverSdk {
|
|
17
|
+
return new ShapeDiverSdk(baseUrl, jwt)
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export class ShapeDiverSdk extends BaseShapeDiverSdk {
|
|
21
|
+
|
|
22
|
+
private readonly _analytics: ShapeDiverAnalyticsApi
|
|
23
|
+
private readonly _arScene: ShapeDiverArSceneApi
|
|
24
|
+
private readonly _asset: ShapeDiverAssetApi
|
|
25
|
+
private readonly _export: ShapeDiverExportApi
|
|
26
|
+
private readonly _file: ShapeDiverFileApi
|
|
27
|
+
private readonly _gltf: ShapeDiverGltfApi
|
|
28
|
+
private readonly _model: ShapeDiverModelApi
|
|
29
|
+
private readonly _output: ShapeDiverOutputApi
|
|
30
|
+
private readonly _sdtf: ShapeDiverSdtfApi
|
|
31
|
+
private readonly _session: ShapeDiverSessionApi
|
|
32
|
+
private readonly _system: ShapeDiverSystemApi
|
|
33
|
+
private readonly _texture: ShapeDiverTextureApi
|
|
34
|
+
private readonly _utils: ShapeDiverUtilsApi
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* ShapeDiverSDK constructor
|
|
38
|
+
*
|
|
39
|
+
* @param baseUrl - the URL of the target system
|
|
40
|
+
* @param jwt - the client's jwt
|
|
41
|
+
*/
|
|
42
|
+
constructor (baseUrl: string, jwt?: string) {
|
|
43
|
+
super(baseUrl)
|
|
44
|
+
if (jwt) this.setConfigurationValue(ShapeDiverSdkConfigType.JWT_TOKEN, jwt)
|
|
45
|
+
|
|
46
|
+
this._analytics = new ShapeDiverAnalyticsApi(this.sdkApi)
|
|
47
|
+
this._arScene = new ShapeDiverArSceneApi(this.sdkApi)
|
|
48
|
+
this._asset = new ShapeDiverAssetApi(this.sdkApi)
|
|
49
|
+
this._export = new ShapeDiverExportApi(this.sdkApi)
|
|
50
|
+
this._file = new ShapeDiverFileApi(this.sdkApi)
|
|
51
|
+
this._gltf = new ShapeDiverGltfApi(this.sdkApi)
|
|
52
|
+
this._model = new ShapeDiverModelApi(this.sdkApi)
|
|
53
|
+
this._output = new ShapeDiverOutputApi(this.sdkApi)
|
|
54
|
+
this._sdtf = new ShapeDiverSdtfApi(this.sdkApi)
|
|
55
|
+
this._session = new ShapeDiverSessionApi(this.sdkApi)
|
|
56
|
+
this._system = new ShapeDiverSystemApi(this.sdkApi)
|
|
57
|
+
this._texture = new ShapeDiverTextureApi(this.sdkApi)
|
|
58
|
+
this._utils = new ShapeDiverUtilsApi(this.sdkApi)
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
get analytics (): ShapeDiverAnalyticsApi {
|
|
62
|
+
return this._analytics
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
get arScene (): ShapeDiverArSceneApi {
|
|
66
|
+
return this._arScene
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
get asset (): ShapeDiverAssetApi {
|
|
70
|
+
return this._asset
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
get export (): ShapeDiverExportApi {
|
|
74
|
+
return this._export
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
get file (): ShapeDiverFileApi {
|
|
78
|
+
return this._file
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
get gltf (): ShapeDiverGltfApi {
|
|
82
|
+
return this._gltf
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
get model (): ShapeDiverModelApi {
|
|
86
|
+
return this._model
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
get output (): ShapeDiverOutputApi {
|
|
90
|
+
return this._output
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
get sdtf (): ShapeDiverSdtfApi {
|
|
94
|
+
return this._sdtf
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
get session (): ShapeDiverSessionApi {
|
|
98
|
+
return this._session
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
get system (): ShapeDiverSystemApi {
|
|
102
|
+
return this._system
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
get texture (): ShapeDiverTextureApi {
|
|
106
|
+
return this._texture
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
get utils (): ShapeDiverUtilsApi {
|
|
110
|
+
return this._utils
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from "@shapediver/api.geometry-api-dto-v2"
|
|
2
|
+
export {
|
|
3
|
+
ShapeDiverError,
|
|
4
|
+
ShapeDiverRequestError,
|
|
5
|
+
ShapeDiverSdkApiResponseType,
|
|
6
|
+
ShapeDiverSdkConfig,
|
|
7
|
+
ShapeDiverSdkConfigType
|
|
8
|
+
} from "@shapediver/sdk.geometry-api-sdk-core"
|
|
9
|
+
export { ShapeDiverResponseError } from "./ShapeDiverErrors"
|
|
10
|
+
export { ShapeDiverSdk, create } from "./ShapeDiverSdk"
|
|
11
|
+
export { ShapeDiverResponseFileInfo } from "./resources/ShapeDiverFileApi"
|
|
12
|
+
export {
|
|
13
|
+
isGBError,
|
|
14
|
+
isGBGenericError,
|
|
15
|
+
isGBRequestError,
|
|
16
|
+
isGBResponseError
|
|
17
|
+
} from "./utils/utils"
|
|
18
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ShapeDiverRequestAnalyticsModel, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2"
|
|
2
|
+
import { BaseResourceApi, ShapeDiverSdkApi } from "@shapediver/sdk.geometry-api-sdk-core"
|
|
3
|
+
import { sendRequest } from "../utils/utils"
|
|
4
|
+
|
|
5
|
+
export class ShapeDiverAnalyticsApi extends BaseResourceApi {
|
|
6
|
+
|
|
7
|
+
constructor (api: ShapeDiverSdkApi) {
|
|
8
|
+
super(api)
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Get model session analytics.
|
|
13
|
+
*
|
|
14
|
+
* @param body
|
|
15
|
+
*/
|
|
16
|
+
async modelSessionStatistics (body: ShapeDiverRequestAnalyticsModel): Promise<ShapeDiverResponseDto> {
|
|
17
|
+
return await sendRequest(async () =>
|
|
18
|
+
(await this.api.put<ShapeDiverResponseDto>(this.buildAnalyticsUri() + "/session/model", body))[1],
|
|
19
|
+
)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import {
|
|
2
|
+
BaseResourceApi,
|
|
3
|
+
ShapeDiverResponseError,
|
|
4
|
+
ShapeDiverSdkApi,
|
|
5
|
+
ShapeDiverSdkApiResponseType,
|
|
6
|
+
} from "@shapediver/sdk.geometry-api-sdk-core"
|
|
7
|
+
import { sendRequest } from "../utils/utils"
|
|
8
|
+
|
|
9
|
+
export class ShapeDiverArSceneApi extends BaseResourceApi {
|
|
10
|
+
|
|
11
|
+
constructor (api: ShapeDiverSdkApi) {
|
|
12
|
+
super(api)
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Checks the existence of the specific AR scene.
|
|
17
|
+
* @param sceneId
|
|
18
|
+
* @returns `true` when the AR scene exists, otherwise `false`.
|
|
19
|
+
*/
|
|
20
|
+
async exists (sceneId: string): Promise<boolean> {
|
|
21
|
+
return await sendRequest(async () => {
|
|
22
|
+
try {
|
|
23
|
+
const [ _, status ] = await this.api.head(
|
|
24
|
+
`${ this.buildArSceneUri() }/${ sceneId }`,
|
|
25
|
+
{ disableAuthorization: true },
|
|
26
|
+
)
|
|
27
|
+
return status === 200
|
|
28
|
+
} catch (e) {
|
|
29
|
+
// A 404 HTTP status is returned when the AR scene was not found.
|
|
30
|
+
if (e instanceof ShapeDiverResponseError && e.status === 404) return false
|
|
31
|
+
else throw e
|
|
32
|
+
}
|
|
33
|
+
})
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Download the glTF file of the specified AR scene.
|
|
38
|
+
*
|
|
39
|
+
* @param sceneId - The ID of the AR scene.
|
|
40
|
+
* @returns Array of size 2: [0] = content data, [1] = content type
|
|
41
|
+
*/
|
|
42
|
+
async getGltf (sceneId: string): Promise<[ ArrayBuffer, string ]> {
|
|
43
|
+
return await sendRequest(async () => {
|
|
44
|
+
const [ header, data ] = await this.api.get<ArrayBuffer>(
|
|
45
|
+
`${ this.buildArSceneUri() }/${ sceneId }/gltf`,
|
|
46
|
+
{
|
|
47
|
+
responseType: ShapeDiverSdkApiResponseType.DATA,
|
|
48
|
+
disableAuthorization: true,
|
|
49
|
+
},
|
|
50
|
+
)
|
|
51
|
+
const contentType = header["Content-Type"] ?? header["content-type"]
|
|
52
|
+
return [ data, contentType ]
|
|
53
|
+
})
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Download the USDZ file of the specified AR scene.
|
|
58
|
+
*
|
|
59
|
+
* @param sceneId - The ID of the AR scene.
|
|
60
|
+
* @returns Array of size 2: [0] = content data, [1] = content type
|
|
61
|
+
*/
|
|
62
|
+
async getUsdz (sceneId: string): Promise<[ ArrayBuffer, string ]> {
|
|
63
|
+
return await sendRequest(async () => {
|
|
64
|
+
const [ header, data ] = await this.api.get<ArrayBuffer>(
|
|
65
|
+
`${ this.buildArSceneUri() }/${ sceneId }/usdz`,
|
|
66
|
+
{
|
|
67
|
+
responseType: ShapeDiverSdkApiResponseType.DATA,
|
|
68
|
+
disableAuthorization: true,
|
|
69
|
+
},
|
|
70
|
+
)
|
|
71
|
+
const contentType = header["Content-Type"] ?? header["content-type"]
|
|
72
|
+
return [ data, contentType ]
|
|
73
|
+
})
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
}
|