Socket
Socket
Sign inDemoInstall

@shapediver/sdk.geometry-api-sdk-v2

Package Overview
Dependencies
11
Maintainers
5
Versions
38
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.6.0 to 1.7.0

5

dist/resources/ShapeDiverAnalyticsApi.d.ts

@@ -5,9 +5,4 @@ import { ShapeDiverRequestAnalyticsModel, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* Get model session analytics.
*
* @param body
*/
modelSessionStatistics(body: ShapeDiverRequestAnalyticsModel): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverAnalyticsApi.d.ts.map

@@ -19,7 +19,2 @@ "use strict";

}
/**
* Get model session analytics.
*
* @param body
*/
modelSessionStatistics(body) {

@@ -26,0 +21,0 @@ return __awaiter(this, void 0, void 0, function* () {

import { BaseResourceApi, ShapeDiverSdkApi } from "@shapediver/sdk.geometry-api-sdk-core";
export declare class ShapeDiverArSceneApi extends BaseResourceApi {
constructor(api: ShapeDiverSdkApi);
/**
* Checks the existence of the specific AR scene.
* @param sceneId
* @returns `true` when the AR scene exists, otherwise `false`.
*/
exists(sceneId: string): Promise<boolean>;
/**
* Download the glTF file of the specified AR scene.
*
* @param sceneId - The ID of the AR scene.
* @returns Array of size 2: [0] = content data, [1] = content type
*/
getGltf(sceneId: string): Promise<[ArrayBuffer, string]>;
/**
* Download the USDZ file of the specified AR scene.
*
* @param sceneId - The ID of the AR scene.
* @returns Array of size 2: [0] = content data, [1] = content type
*/
getUsdz(sceneId: string): Promise<[ArrayBuffer, string]>;
}
//# sourceMappingURL=ShapeDiverArSceneApi.d.ts.map

@@ -19,7 +19,2 @@ "use strict";

}
/**
* Checks the existence of the specific AR scene.
* @param sceneId
* @returns `true` when the AR scene exists, otherwise `false`.
*/
exists(sceneId) {

@@ -33,3 +28,2 @@ return __awaiter(this, void 0, void 0, function* () {

catch (e) {
// A 404 HTTP status is returned when the AR scene was not found.
if (e instanceof sdk_geometry_api_sdk_core_1.ShapeDiverResponseError && e.status === 404)

@@ -43,8 +37,2 @@ return false;

}
/**
* Download the glTF file of the specified AR scene.
*
* @param sceneId - The ID of the AR scene.
* @returns Array of size 2: [0] = content data, [1] = content type
*/
getGltf(sceneId) {

@@ -63,8 +51,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download the USDZ file of the specified AR scene.
*
* @param sceneId - The ID of the AR scene.
* @returns Array of size 2: [0] = content data, [1] = content type
*/
getUsdz(sceneId) {

@@ -71,0 +53,0 @@ return __awaiter(this, void 0, void 0, function* () {

import { BaseResourceApi, ShapeDiverSdkApi } from "@shapediver/sdk.geometry-api-sdk-core";
export declare class ShapeDiverAssetApi extends BaseResourceApi {
constructor(api: ShapeDiverSdkApi);
/**
* Download an export.
*
* @param sessionId
* @param assetData
*/
getExport(sessionId: string, assetData: string): Promise<[ArrayBuffer, string]>;
/**
* Download an output.
*
* @param sessionId
* @param assetData
*/
getOutput(sessionId: string, assetData: string): Promise<[ArrayBuffer, string]>;
/**
* Downloads the JSON content part of a sdTF output.
*
* @param sessionId
* @param assetData
*/
getSdtfJsonContent(sessionId: string, assetData: string): Promise<Record<string, any>>;
/**
* Download a texture file.
*
* @param sessionId
* @param assetData
*/
getTexture(sessionId: string, assetData: string): Promise<[ArrayBuffer, string]>;
/**
* Download a glTF file.
*
* @param sessionId
* @param assetData
*/
getGltf(sessionId: string, assetData: string): Promise<ArrayBuffer>;
/**
* Download a USDZ file.
*
* @param sessionId
* @param assetData
*/
getUsdz(sessionId: string, assetData: string): Promise<ArrayBuffer>;
/**
* Download an image.
*
* @param sessionId
* @param url - The URL of the image that should be downloaded.
* @returns Array of size 2: [0] = content data, [1] = content type.
*/
downloadImage(sessionId: string, url: string): Promise<[ArrayBuffer, string]>;
/**
* Fetches a ShapeDiver asset of the following types:
* * Output
* * Export
* * Texture
*
* This function works similar to {@link getOutput}, {@link getExport} and {@link getTexture}, but does not require
* extracted _session ID_ and _asset data_ parameters.
*
* @param url - The URL of the asset that should be fetched.
* @returns Array of size 3: [0] = content data, [1] = content type, [2] = asset type.
* @throws {@link ShapeDiverError} when the given URL is not a valid ShapeDiver asset URL.
*/
getAsset(url: string): Promise<[ArrayBuffer, string, "output" | "export" | "texture"]>;
}
//# sourceMappingURL=ShapeDiverAssetApi.d.ts.map

63

dist/resources/ShapeDiverAssetApi.js

@@ -26,8 +26,2 @@ "use strict";

}
/**
* Download an export.
*
* @param sessionId
* @param assetData
*/
getExport(sessionId, assetData) {

@@ -43,8 +37,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download an output.
*
* @param sessionId
* @param assetData
*/
getOutput(sessionId, assetData) {

@@ -60,8 +48,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Downloads the JSON content part of a sdTF output.
*
* @param sessionId
* @param assetData
*/
getSdtfJsonContent(sessionId, assetData) {

@@ -77,8 +59,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download a texture file.
*
* @param sessionId
* @param assetData
*/
getTexture(sessionId, assetData) {

@@ -94,8 +70,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download a glTF file.
*
* @param sessionId
* @param assetData
*/
getGltf(sessionId, assetData) {

@@ -108,8 +78,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download a USDZ file.
*
* @param sessionId
* @param assetData
*/
getUsdz(sessionId, assetData) {

@@ -122,9 +86,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download an image.
*
* @param sessionId
* @param url - The URL of the image that should be downloaded.
* @returns Array of size 2: [0] = content data, [1] = content type.
*/
downloadImage(sessionId, url) {

@@ -134,7 +91,5 @@ return __awaiter(this, void 0, void 0, function* () {

if (apiAssetTextureUri.test(url) || cdnAssetTextureUri.test(url)) {
// Call ShapeDiver texture-asset URLs directly
targetUrl = url;
}
else {
// All other source URLs are called via the download-image endpoint
targetUrl = `${this.buildSessionUri(sessionId)}/image?url=${(0, utils_1.encodeBase64)(url)}`;

@@ -146,3 +101,3 @@ }

responseType: sdk_geometry_api_sdk_core_1.ShapeDiverSdkApiResponseType.DATA,
disableAuthorization: cdnAssetUri.test(url), // disable for CDN URLs
disableAuthorization: cdnAssetUri.test(url),
});

@@ -154,19 +109,5 @@ const contentType = (_a = header["Content-Type"]) !== null && _a !== void 0 ? _a : header["content-type"];

}
/**
* Fetches a ShapeDiver asset of the following types:
* * Output
* * Export
* * Texture
*
* This function works similar to {@link getOutput}, {@link getExport} and {@link getTexture}, but does not require
* extracted _session ID_ and _asset data_ parameters.
*
* @param url - The URL of the asset that should be fetched.
* @returns Array of size 3: [0] = content data, [1] = content type, [2] = asset type.
* @throws {@link ShapeDiverError} when the given URL is not a valid ShapeDiver asset URL.
*/
getAsset(url) {
return __awaiter(this, void 0, void 0, function* () {
let type;
// Check if the given URL is a valid API or CDN asset URL
if (apiAssetExportUri.test(url) || cdnAssetExportUri.test(url))

@@ -184,3 +125,3 @@ type = "export";

responseType: sdk_geometry_api_sdk_core_1.ShapeDiverSdkApiResponseType.DATA,
disableAuthorization: cdnAssetUri.test(url), // disable for CDN URLs
disableAuthorization: cdnAssetUri.test(url),
});

@@ -187,0 +128,0 @@ const contentType = (_a = header["Content-Type"]) !== null && _a !== void 0 ? _a : header["content-type"];

@@ -5,31 +5,7 @@ import { ShapeDiverRequestCache, ShapeDiverRequestExport, ShapeDiverRequestExportDefinition, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* Request a specific version of an export.
*
* @param sessionId
* @param body
*/
compute(sessionId: string, body: ShapeDiverRequestExport): Promise<ShapeDiverResponseDto>;
/**
* Check if a specific version of a requested export has been computed yet.
*
* @param sessionId
* @param body
*/
getCache(sessionId: string, body: ShapeDiverRequestCache | ShapeDiverRequestExport): Promise<ShapeDiverResponseDto>;
/**
* Updates the definitions of the given exports.
*
* @param modelId
* @param body
*/
updateDefinitions(modelId: string, body: ShapeDiverRequestExportDefinition): Promise<ShapeDiverResponseDto>;
/**
* List all cached versions of the specified export.
*
* @param sessionId
* @param exportId
*/
listVersions(sessionId: string, exportId: string): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverExportApi.d.ts.map

@@ -19,8 +19,2 @@ "use strict";

}
/**
* Request a specific version of an export.
*
* @param sessionId
* @param body
*/
compute(sessionId, body) {

@@ -33,8 +27,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Check if a specific version of a requested export has been computed yet.
*
* @param sessionId
* @param body
*/
getCache(sessionId, body) {

@@ -47,8 +35,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Updates the definitions of the given exports.
*
* @param modelId
* @param body
*/
updateDefinitions(modelId, body) {

@@ -61,8 +43,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* List all cached versions of the specified export.
*
* @param sessionId
* @param exportId
*/
listVersions(sessionId, exportId) {

@@ -69,0 +45,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -5,33 +5,7 @@ import { ShapeDiverRequestFileUpload, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* List all file-assets of the given parameter.
*
* @param sessionId
* @param paramId
*/
list(sessionId: string, paramId: string): Promise<ShapeDiverResponseDto>;
/**
* Download a file-asset.
*
* @param sessionId
* @param paramId
* @param fileId
*/
get(sessionId: string, paramId: string, fileId: string): Promise<ArrayBuffer>;
/**
* Delete a file-asset.
*
* @param sessionId
* @param paramId
* @param fileId
*/
delete(sessionId: string, paramId: string, fileId: string): Promise<ShapeDiverResponseDto>;
/**
* Request an Upload-URL for a file.
*
* @param sessionId
* @param body
*/
requestUpload(sessionId: string, body: ShapeDiverRequestFileUpload): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverFileApi.d.ts.map

@@ -19,8 +19,2 @@ "use strict";

}
/**
* List all file-assets of the given parameter.
*
* @param sessionId
* @param paramId
*/
list(sessionId, paramId) {

@@ -31,9 +25,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download a file-asset.
*
* @param sessionId
* @param paramId
* @param fileId
*/
get(sessionId, paramId, fileId) {

@@ -46,9 +33,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Delete a file-asset.
*
* @param sessionId
* @param paramId
* @param fileId
*/
delete(sessionId, paramId, fileId) {

@@ -59,8 +39,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Request an Upload-URL for a file.
*
* @param sessionId
* @param body
*/
requestUpload(sessionId, body) {

@@ -67,0 +41,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -5,12 +5,4 @@ import { ShapeDiverRequestGltfUploadQueryConversion, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* Upload a glTF file.
*
* @param sessionId
* @param body
* @param type
* @param queryConvert
*/
upload(sessionId: string, body: ArrayBuffer, type: string, queryConvert?: ShapeDiverRequestGltfUploadQueryConversion): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverGltfApi.d.ts.map

@@ -20,10 +20,2 @@ "use strict";

}
/**
* Upload a glTF file.
*
* @param sessionId
* @param body
* @param type
* @param queryConvert
*/
upload(sessionId, body, type, queryConvert = api_geometry_api_dto_v2_1.ShapeDiverRequestGltfUploadQueryConversion.NONE) {

@@ -30,0 +22,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -5,125 +5,19 @@ import { ShapeDiverRequestConfigure, ShapeDiverRequestCustomization, ShapeDiverRequestModel, ShapeDiverRequestModelComputationQueryOrder, ShapeDiverRequestModelComputationQueryStatus, ShapeDiverRequestModelComputationQueryType, ShapeDiverRequestParameterDefinition, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* Get information about a ShapeDiver Model.
*
* @param modelId
*/
get(modelId: string): Promise<ShapeDiverResponseDto>;
/**
* Create a new ShapeDiver Model.
*
* @param body
*/
create(body: ShapeDiverRequestModel): Promise<ShapeDiverResponseDto>;
/**
* Update properties of a ShapeDiver Model.
*
* @param modelId
* @param body
*/
update(modelId: string, body: ShapeDiverRequestModel): Promise<ShapeDiverResponseDto>;
/**
* Delete a ShapeDiver Model.
*
* @param modelId
*/
delete(modelId: string): Promise<ShapeDiverResponseDto>;
/**
* List models.
*/
list(): Promise<ShapeDiverResponseDto>;
/**
* Get configurations of the viewer.
*
* @param modelId
*/
getConfig(modelId: string): Promise<ShapeDiverResponseDto>;
/**
* Create viewer configurations.
*
* @param modelId
* @param body
*/
createConfig(modelId: string, body: ShapeDiverRequestConfigure): Promise<ShapeDiverResponseDto>;
/**
* Update viewer configurations.
*
* @param modelId
* @param body
*/
updateConfig(modelId: string, body: ShapeDiverRequestConfigure): Promise<ShapeDiverResponseDto>;
/**
* Download the Grasshopper file of the ShapeDiver Model.
*
* @param modelId
*/
getFile(modelId: string): Promise<ArrayBuffer>;
/**
* Set the default parameters for the ShapeDiver Model.
*
* @param modelId
* @param body
*/
setDefaultParams(modelId: string, body: ShapeDiverRequestCustomization): Promise<ShapeDiverResponseDto>;
/**
* Updates the definitions of the given parameters.
*
* @param modelId
* @param body
*/
updateParameterDefinitions(modelId: string, body: ShapeDiverRequestParameterDefinition): Promise<ShapeDiverResponseDto>;
/**
* Query model computation statistics.
*
* @param modelId
* @param timestampFrom - Timestamp to query from
* @param timestampTo - Timestamp to query to.
* @param limit - How many items to return at most.
* @param strictLimit - Whether the limit shall be attained (if there are enough items).
* @param order - Order in which to query computation stats items.
* @param status - Filter computations by the result status.
* @param type - Filter computations by type.
* @param offset - Continuation token for pagination.
*/
queryComputations(modelId: string, timestampFrom?: string, timestampTo?: string, limit?: number, strictLimit?: boolean, order?: ShapeDiverRequestModelComputationQueryOrder, status?: ShapeDiverRequestModelComputationQueryStatus, type?: ShapeDiverRequestModelComputationQueryType, offset?: string): Promise<ShapeDiverResponseDto>;
/**
* Delete all export components that have been last used at or before {@link untilLastSeen} timestamp.
*
* @param modelId
* @param untilLastSeen - Timestamp, inclusive limit.
* Allowed Patterns: YYYY, YYYYMM, YYYYMMDD, YYYYMMDDhh, YYYYMMDDhhmm, YYYYMMDDhhmmss, YYYYMMDDhhmmssSSS
* @example
* untilLastSeen = "20221104112923123"
* represents the date-time "2022-11-04T11:29:23.123"
*/
enqueueCleanupExports(modelId: string, untilLastSeen: string): Promise<ShapeDiverResponseDto>;
/**
* Delete all output components that have been last used at or before {@link untilLastSeen} timestamp.
*
* @param modelId
* @param untilLastSeen - Timestamp, inclusive limit.
* Allowed Patterns: YYYY, YYYYMM, YYYYMMDD, YYYYMMDDhh, YYYYMMDDhhmm, YYYYMMDDhhmmss, YYYYMMDDhhmmssSSS
* @example
* untilLastSeen = "20221104112923123"
* represents the date-time "2022-11-04T11:29:23.123"
*/
enqueueCleanupOutputs(modelId: string, untilLastSeen: string): Promise<ShapeDiverResponseDto>;
/**
* Delete all texture components that have been last used at or before {@link untilLastSeen} timestamp.
*
* @param modelId
* @param untilLastSeen - Timestamp, inclusive limit.
* Allowed Patterns: YYYY, YYYYMM, YYYYMMDD, YYYYMMDDhh, YYYYMMDDhhmm, YYYYMMDDhhmmss, YYYYMMDDhhmmssSSS
* @example
* untilLastSeen = "20221104112923123"
* represents the date-time "2022-11-04T11:29:23.123"
*/
enqueueCleanupTextures(modelId: string, untilLastSeen: string): Promise<ShapeDiverResponseDto>;
/**
* Get the status of all running model cleanup processes.
*
* @param modelId
*/
getCleanupStatus(modelId: string): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverModelApi.d.ts.map

@@ -19,7 +19,2 @@ "use strict";

}
/**
* Get information about a ShapeDiver Model.
*
* @param modelId
*/
get(modelId) {

@@ -30,7 +25,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Create a new ShapeDiver Model.
*
* @param body
*/
create(body) {

@@ -41,8 +31,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Update properties of a ShapeDiver Model.
*
* @param modelId
* @param body
*/
update(modelId, body) {

@@ -53,7 +37,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Delete a ShapeDiver Model.
*
* @param modelId
*/
delete(modelId) {

@@ -64,5 +43,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* List models.
*/
list() {

@@ -73,7 +49,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Get configurations of the viewer.
*
* @param modelId
*/
getConfig(modelId) {

@@ -84,8 +55,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Create viewer configurations.
*
* @param modelId
* @param body
*/
createConfig(modelId, body) {

@@ -96,8 +61,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Update viewer configurations.
*
* @param modelId
* @param body
*/
updateConfig(modelId, body) {

@@ -108,7 +67,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download the Grasshopper file of the ShapeDiver Model.
*
* @param modelId
*/
getFile(modelId) {

@@ -121,8 +75,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Set the default parameters for the ShapeDiver Model.
*
* @param modelId
* @param body
*/
setDefaultParams(modelId, body) {

@@ -133,8 +81,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Updates the definitions of the given parameters.
*
* @param modelId
* @param body
*/
updateParameterDefinitions(modelId, body) {

@@ -145,18 +87,4 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Query model computation statistics.
*
* @param modelId
* @param timestampFrom - Timestamp to query from
* @param timestampTo - Timestamp to query to.
* @param limit - How many items to return at most.
* @param strictLimit - Whether the limit shall be attained (if there are enough items).
* @param order - Order in which to query computation stats items.
* @param status - Filter computations by the result status.
* @param type - Filter computations by type.
* @param offset - Continuation token for pagination.
*/
queryComputations(modelId, timestampFrom, timestampTo, limit, strictLimit, order, status, type, offset) {
return __awaiter(this, void 0, void 0, function* () {
// Build queries
const queries = [];

@@ -182,12 +110,2 @@ if (timestampFrom !== undefined)

}
/**
* Delete all export components that have been last used at or before {@link untilLastSeen} timestamp.
*
* @param modelId
* @param untilLastSeen - Timestamp, inclusive limit.
* Allowed Patterns: YYYY, YYYYMM, YYYYMMDD, YYYYMMDDhh, YYYYMMDDhhmm, YYYYMMDDhhmmss, YYYYMMDDhhmmssSSS
* @example
* untilLastSeen = "20221104112923123"
* represents the date-time "2022-11-04T11:29:23.123"
*/
enqueueCleanupExports(modelId, untilLastSeen) {

@@ -198,12 +116,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Delete all output components that have been last used at or before {@link untilLastSeen} timestamp.
*
* @param modelId
* @param untilLastSeen - Timestamp, inclusive limit.
* Allowed Patterns: YYYY, YYYYMM, YYYYMMDD, YYYYMMDDhh, YYYYMMDDhhmm, YYYYMMDDhhmmss, YYYYMMDDhhmmssSSS
* @example
* untilLastSeen = "20221104112923123"
* represents the date-time "2022-11-04T11:29:23.123"
*/
enqueueCleanupOutputs(modelId, untilLastSeen) {

@@ -214,12 +122,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Delete all texture components that have been last used at or before {@link untilLastSeen} timestamp.
*
* @param modelId
* @param untilLastSeen - Timestamp, inclusive limit.
* Allowed Patterns: YYYY, YYYYMM, YYYYMMDD, YYYYMMDDhh, YYYYMMDDhhmm, YYYYMMDDhhmmss, YYYYMMDDhhmmssSSS
* @example
* untilLastSeen = "20221104112923123"
* represents the date-time "2022-11-04T11:29:23.123"
*/
enqueueCleanupTextures(modelId, untilLastSeen) {

@@ -230,7 +128,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Get the status of all running model cleanup processes.
*
* @param modelId
*/
getCleanupStatus(modelId) {

@@ -237,0 +130,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -5,31 +5,7 @@ import { ShapeDiverRequestCache, ShapeDiverRequestCustomization, ShapeDiverRequestOutputDefinition, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* Request a specific version of an output.
*
* @param sessionId
* @param body
*/
customize(sessionId: string, body: ShapeDiverRequestCustomization): Promise<ShapeDiverResponseDto>;
/**
* Check if a specific version of a requested output has been computed yet.
*
* @param sessionId
* @param body
*/
getCache(sessionId: string, body: ShapeDiverRequestCache): Promise<ShapeDiverResponseDto>;
/**
* Updates the definitions of the given outputs.
*
* @param modelId
* @param body
*/
updateDefinitions(modelId: string, body: ShapeDiverRequestOutputDefinition): Promise<ShapeDiverResponseDto>;
/**
* List all cached versions of the specified output.
*
* @param sessionId
* @param outputId
*/
listVersions(sessionId: string, outputId: string): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverOutputApi.d.ts.map

@@ -19,8 +19,2 @@ "use strict";

}
/**
* Request a specific version of an output.
*
* @param sessionId
* @param body
*/
customize(sessionId, body) {

@@ -31,8 +25,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Check if a specific version of a requested output has been computed yet.
*
* @param sessionId
* @param body
*/
getCache(sessionId, body) {

@@ -43,8 +31,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Updates the definitions of the given outputs.
*
* @param modelId
* @param body
*/
updateDefinitions(modelId, body) {

@@ -55,8 +37,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* List all cached versions of the specified output.
*
* @param sessionId
* @param outputId
*/
listVersions(sessionId, outputId) {

@@ -63,0 +39,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -5,31 +5,7 @@ import { ShapeDiverRequestSdtfUpload, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* List all sdTF-assets of the given namespace.
*
* @param sessionId
* @param namespace
*/
list(sessionId: string, namespace: string): Promise<ShapeDiverResponseDto>;
/**
* Download a sdTF-asset.
*
* @param sessionId
* @param sdtfId - Format: "<namespace>/<sdTF id>"
*/
get(sessionId: string, sdtfId: string): Promise<ArrayBuffer>;
/**
* Delete a sdTF-asset.
*
* @param sessionId
* @param sdtfId
*/
delete(sessionId: string, sdtfId: string): Promise<ShapeDiverResponseDto>;
/**
* Request an Upload-URL for a sdTF-asset.
*
* @param sessionId
* @param body
*/
requestUpload(sessionId: string, body: ShapeDiverRequestSdtfUpload): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverSdtfApi.d.ts.map

@@ -19,8 +19,2 @@ "use strict";

}
/**
* List all sdTF-assets of the given namespace.
*
* @param sessionId
* @param namespace
*/
list(sessionId, namespace) {

@@ -31,8 +25,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download a sdTF-asset.
*
* @param sessionId
* @param sdtfId - Format: "<namespace>/<sdTF id>"
*/
get(sessionId, sdtfId) {

@@ -45,8 +33,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Delete a sdTF-asset.
*
* @param sessionId
* @param sdtfId
*/
delete(sessionId, sdtfId) {

@@ -57,8 +39,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Request an Upload-URL for a sdTF-asset.
*
* @param sessionId
* @param body
*/
requestUpload(sessionId, body) {

@@ -65,0 +41,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -5,37 +5,8 @@ import { ShapeDiverRequestCustomization, ShapeDiverRequestExport, ShapeDiverRequestTicket, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* Create a new ticket that allows to initialize new sessions for the
* specified model.
*
* @param modelId
* @param body
*/
ticket(modelId: string, body: ShapeDiverRequestTicket): Promise<ShapeDiverResponseDto>;
/**
* Create a new session for a ShapeDiver Model via a ticket.
*
* @param ticket
* @param request - Optional customization or export request.
*/
init(ticket: string, request?: ShapeDiverRequestCustomization | ShapeDiverRequestExport): Promise<ShapeDiverResponseDto>;
/**
* Create a new session for a ShapeDiver Model.
*
* @param ticket
* @param request - Optional customization or export request.
*/
initForModel(modelId: string, request?: ShapeDiverRequestCustomization | ShapeDiverRequestExport): Promise<ShapeDiverResponseDto>;
/**
* Get the full description of a ShapeDiver Model.
*
* @param sessionId
*/
default(sessionId: string): Promise<ShapeDiverResponseDto>;
/**
* Close the specified session.
*
* @param sessionId
*/
close(sessionId: string): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverSessionApi.d.ts.map

@@ -19,9 +19,2 @@ "use strict";

}
/**
* Create a new ticket that allows to initialize new sessions for the
* specified model.
*
* @param modelId
* @param body
*/
ticket(modelId, body) {

@@ -34,8 +27,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Create a new session for a ShapeDiver Model via a ticket.
*
* @param ticket
* @param request - Optional customization or export request.
*/
init(ticket, request) {

@@ -46,8 +33,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Create a new session for a ShapeDiver Model.
*
* @param ticket
* @param request - Optional customization or export request.
*/
initForModel(modelId, request) {

@@ -60,7 +41,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Get the full description of a ShapeDiver Model.
*
* @param sessionId
*/
default(sessionId) {

@@ -73,7 +49,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Close the specified session.
*
* @param sessionId
*/
close(sessionId) {

@@ -80,0 +51,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -5,38 +5,9 @@ import { ShapeDiverRequestAuthorizationGroup, ShapeDiverRequestLogMessage, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* Log the specified message.
*
* @param sessionId
* @param body
*/
log(sessionId: string, body: ShapeDiverRequestLogMessage): Promise<ShapeDiverResponseDto>;
/**
* Remove a model with all it's components.
*
* **WARNING: This operation cannot be undone!**
*
* @param modelId
*/
pruneModel(modelId: string): Promise<ShapeDiverResponseDto>;
/**
* Decrypt the given ticket.
*
* @param ticket
*/
decryptTicket(ticket: string): Promise<ShapeDiverResponseDto>;
/**
* Create a new authentication group.
*
* @param body
*/
authGroup(body: ShapeDiverRequestAuthorizationGroup): Promise<ShapeDiverResponseDto>;
/**
* Returns system information about the Geometry Minions.
*/
getMinionInfo(): Promise<ShapeDiverResponseDto>;
/**
* Returns system information about the Geometry Workers.
*/
getWorkerInfo(): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverSystemApi.d.ts.map

@@ -19,8 +19,2 @@ "use strict";

}
/**
* Log the specified message.
*
* @param sessionId
* @param body
*/
log(sessionId, body) {

@@ -31,9 +25,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Remove a model with all it's components.
*
* **WARNING: This operation cannot be undone!**
*
* @param modelId
*/
pruneModel(modelId) {

@@ -44,7 +31,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Decrypt the given ticket.
*
* @param ticket
*/
decryptTicket(ticket) {

@@ -55,7 +37,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Create a new authentication group.
*
* @param body
*/
authGroup(body) {

@@ -66,5 +43,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Returns system information about the Geometry Minions.
*/
getMinionInfo() {

@@ -75,5 +49,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Returns system information about the Geometry Workers.
*/
getWorkerInfo() {

@@ -80,0 +51,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -5,9 +5,4 @@ import { ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* List all textures of the specified model.
*
* @param sessionId
*/
listModelTextures(sessionId: string): Promise<ShapeDiverResponseDto>;
}
//# sourceMappingURL=ShapeDiverTextureApi.d.ts.map

@@ -19,7 +19,2 @@ "use strict";

}
/**
* List all textures of the specified model.
*
* @param sessionId
*/
listModelTextures(sessionId) {

@@ -26,0 +21,0 @@ return __awaiter(this, void 0, void 0, function* () {

@@ -7,17 +7,3 @@ import { ShapeDiverRequestCustomization, ShapeDiverRequestExport, ShapeDiverResponseDto } from "@shapediver/api.geometry-api-dto-v2";

constructor(api: ShapeDiverSdkApi);
/**
* Upload the given file to the specified URL.
*
* @param url - The target URL of the upload request.
* @param data - The data that should be uploaded.
* @param contentType - Indicate the original media type of the resource.
*/
upload(url: string, data: ArrayBuffer | Record<string, any> | string, contentType: string): Promise<any>;
/**
* Download from the given URL.
*
* @param url - The target URL of the download request.
* @param responseType - Indicates the type of data that the server should respond with if possible.
* @returns Array of size 2: [0] = response headers, [1] = response data
*/
download<T extends ShapeDiverSdkApiResponseType>(url: string, responseType: T): Promise<[

@@ -27,58 +13,7 @@ Record<string, any>,

]>;
/**
* Submit a customization request and wait for the result to be finished.
*
* @param sdk
* @param sessionId
* @param body
* @param maxWaitMsec - Maximum duration to wait for result (in milliseconds), pass value < 0 to disable limit.
* @throws {@link ShapeDiverError} in case a maximum duration has been specified and is exceeded.
* @returns
*/
submitAndWaitForCustomization(sdk: ShapeDiverSdk, sessionId: string, body: ShapeDiverRequestCustomization, maxWaitMsec?: number): Promise<ShapeDiverResponseDto>;
/**
* Submit an export request and wait for the result to be finished.
*
* @param sdk
* @param sessionId
* @param body
* @param maxWaitMsec - Maximum duration to wait for result (in milliseconds), pass value < 0 to disable limit.
* @throws {@link ShapeDiverError} in case a maximum duration has been specified and is exceeded.
* @returns
*/
submitAndWaitForExport(sdk: ShapeDiverSdk, sessionId: string, body: ShapeDiverRequestExport, maxWaitMsec?: number): Promise<ShapeDiverResponseDto>;
/**
* Given a DTO resulting from a customization request, wait for the results to be finished.
*
* @param sdk
* @param sessionId
* @param dto
* @param maxWaitMsec - Maximum duration to wait for result (in milliseconds), pass value < 0 to disable limit.
* @returns
*/
private static waitForCustomizationResult;
/**
* Given a DTO resulting from an export request, wait for the result to be finished.
*
* @param sdk
* @param sessionId
* @param dto
* @param exportIds
* @param outputIds
* @param maxWaitMsec - Maximum duration to wait for result (in milliseconds), pass value < 0 to disable limit.
* @returns
*/
private static waitForExportResult;
/**
* Get the maximum delay that was reported for output versions.
*
* @returns maximum delay, -1 in case no delay was reported
*/
private static getMaxOutputDelay;
/**
* Get the maximum delay that was reported for the exports. If outputs have been reported as
* well, their delay time is included too.
*
* @returns delay, -1 in case no delay was reported
*/
private static getMaxExportDelay;

@@ -85,0 +20,0 @@ }

@@ -19,9 +19,2 @@ "use strict";

}
/**
* Upload the given file to the specified URL.
*
* @param url - The target URL of the upload request.
* @param data - The data that should be uploaded.
* @param contentType - Indicate the original media type of the resource.
*/
upload(url, data, contentType) {

@@ -39,9 +32,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Download from the given URL.
*
* @param url - The target URL of the download request.
* @param responseType - Indicates the type of data that the server should respond with if possible.
* @returns Array of size 2: [0] = response headers, [1] = response data
*/
download(url, responseType) {

@@ -59,12 +45,2 @@ return __awaiter(this, void 0, void 0, function* () {

}
/**
* Submit a customization request and wait for the result to be finished.
*
* @param sdk
* @param sessionId
* @param body
* @param maxWaitMsec - Maximum duration to wait for result (in milliseconds), pass value < 0 to disable limit.
* @throws {@link ShapeDiverError} in case a maximum duration has been specified and is exceeded.
* @returns
*/
submitAndWaitForCustomization(sdk, sessionId, body, maxWaitMsec = -1) {

@@ -75,3 +51,2 @@ return __awaiter(this, void 0, void 0, function* () {

const waitMsec = Date.now() - startMsec;
// Reduce the total max waiting time by the amount the customization-request took
maxWaitMsec = (maxWaitMsec < 0) ? maxWaitMsec : Math.max(0, maxWaitMsec - waitMsec);

@@ -81,12 +56,2 @@ return ShapeDiverUtilsApi.waitForCustomizationResult(sdk, sessionId, dto, maxWaitMsec);

}
/**
* Submit an export request and wait for the result to be finished.
*
* @param sdk
* @param sessionId
* @param body
* @param maxWaitMsec - Maximum duration to wait for result (in milliseconds), pass value < 0 to disable limit.
* @throws {@link ShapeDiverError} in case a maximum duration has been specified and is exceeded.
* @returns
*/
submitAndWaitForExport(sdk, sessionId, body, maxWaitMsec = -1) {

@@ -97,3 +62,2 @@ return __awaiter(this, void 0, void 0, function* () {

const waitMsec = Date.now() - startMsec;
// Reduce the total max waiting time by the amount the compute-request took
maxWaitMsec = (maxWaitMsec < 0) ? maxWaitMsec : Math.max(0, maxWaitMsec - waitMsec);

@@ -103,11 +67,2 @@ return ShapeDiverUtilsApi.waitForExportResult(sdk, sessionId, body, dto, maxWaitMsec);

}
/**
* Given a DTO resulting from a customization request, wait for the results to be finished.
*
* @param sdk
* @param sessionId
* @param dto
* @param maxWaitMsec - Maximum duration to wait for result (in milliseconds), pass value < 0 to disable limit.
* @returns
*/
static waitForCustomizationResult(sdk, sessionId, dto, maxWaitMsec = -1) {

@@ -117,3 +72,2 @@ return __awaiter(this, void 0, void 0, function* () {

return dto;
// Build new cache request
const outputVersions = {};

@@ -126,3 +80,2 @@ Object

while (delay > 0) {
// Check whether maxWaitMsec has been reached
if (maxWaitMsec >= 0) {

@@ -138,3 +91,2 @@ const waitMsec = Date.now() - startMsec;

yield (0, utils_1.sleep)(delay);
// Send cache request
dto = yield (0, utils_1.sendRequest)(() => __awaiter(this, void 0, void 0, function* () { return sdk.output.getCache(sessionId, outputVersions); }));

@@ -146,13 +98,2 @@ delay = ShapeDiverUtilsApi.getMaxOutputDelay(dto);

}
/**
* Given a DTO resulting from an export request, wait for the result to be finished.
*
* @param sdk
* @param sessionId
* @param dto
* @param exportIds
* @param outputIds
* @param maxWaitMsec - Maximum duration to wait for result (in milliseconds), pass value < 0 to disable limit.
* @returns
*/
static waitForExportResult(sdk, sessionId, body, dto, maxWaitMsec = -1) {

@@ -163,3 +104,2 @@ return __awaiter(this, void 0, void 0, function* () {

while (delay > 0) {
// Check whether maxWaitMsec has been reached
if (maxWaitMsec >= 0) {

@@ -175,3 +115,2 @@ const waitMsec = Date.now() - startMsec;

yield (0, utils_1.sleep)(delay);
// Send cache request
dto = yield (0, utils_1.sendRequest)(() => __awaiter(this, void 0, void 0, function* () { return sdk.export.getCache(sessionId, body); }));

@@ -183,7 +122,2 @@ delay = ShapeDiverUtilsApi.getMaxExportDelay(dto, body);

}
/**
* Get the maximum delay that was reported for output versions.
*
* @returns maximum delay, -1 in case no delay was reported
*/
static getMaxOutputDelay(dto) {

@@ -194,8 +128,2 @@ return Math.max(...Object.values(dto.outputs)

}
/**
* Get the maximum delay that was reported for the exports. If outputs have been reported as
* well, their delay time is included too.
*
* @returns delay, -1 in case no delay was reported
*/
static getMaxExportDelay(dto, body) {

@@ -202,0 +130,0 @@ var _a, _b, _c;

@@ -6,3 +6,2 @@ "use strict";

const sdk_geometry_api_sdk_core_1 = require("@shapediver/sdk.geometry-api-sdk-core");
/* Replaces core/ShapeDiverErrors/ShapeDiverResponseError with DTOv2-types */
class ShapeDiverResponseError extends sdk_geometry_api_sdk_core_1.ShapeDiverError {

@@ -9,0 +8,0 @@ constructor(e) {

@@ -30,8 +30,2 @@ import { BaseShapeDiverSdk } from "@shapediver/sdk.geometry-api-sdk-core";

private readonly _utils;
/**
* ShapeDiverSDK constructor
*
* @param baseUrl - the URL of the target system
* @param jwt - the client's jwt
*/
constructor(baseUrl: string, jwt?: string);

@@ -38,0 +32,0 @@ get analytics(): ShapeDiverAnalyticsApi;

@@ -23,8 +23,2 @@ "use strict";

class ShapeDiverSdk extends sdk_geometry_api_sdk_core_1.BaseShapeDiverSdk {
/**
* ShapeDiverSDK constructor
*
* @param baseUrl - the URL of the target system
* @param jwt - the client's jwt
*/
constructor(baseUrl, jwt) {

@@ -31,0 +25,0 @@ super(baseUrl);

import { ShapeDiverError, ShapeDiverRequestError as ShapeDiverRequestErrorCore } from "@shapediver/sdk.geometry-api-sdk-core";
import { ShapeDiverResponseError } from "../ShapeDiverErrors";
/** Type guard for all error types of the Geometry Backend SDK package. */
export declare function isGBError(e: any): e is (ShapeDiverError & ShapeDiverRequestErrorCore & ShapeDiverResponseError);
/** Type guard for a Geometry Backend SDK generic error. */
export declare function isGBGenericError(e: any): e is ShapeDiverError;
/** Type guard for a Geometry Backend SDK request error. */
export declare function isGBRequestError(e: any): e is ShapeDiverRequestErrorCore;
/** Type guard for a Geometry Backend SDK response error. */
export declare function isGBResponseError(e: any): e is ShapeDiverResponseError;
/**
* Sends the given request, handles retries for the HTTP status 429, and maps
* the response error object to its typed representation.
*/
export declare function sendRequest<T>(call: () => Promise<T>): Promise<T>;
/** Delays the response for the given number of milliseconds */
export declare function sleep(ms: number): Promise<void>;
/** Encode the given string to base64 */
export declare function encodeBase64(str: string): string;
//# sourceMappingURL=utils.d.ts.map

@@ -15,3 +15,2 @@ "use strict";

const ShapeDiverErrors_1 = require("../ShapeDiverErrors");
/** Type guard for all error types of the Geometry Backend SDK package. */
function isGBError(e) {

@@ -23,3 +22,2 @@ return e instanceof Error &&

exports.isGBError = isGBError;
/** Type guard for a Geometry Backend SDK generic error. */
function isGBGenericError(e) {

@@ -31,3 +29,2 @@ return e instanceof Error &&

exports.isGBGenericError = isGBGenericError;
/** Type guard for a Geometry Backend SDK request error. */
function isGBRequestError(e) {

@@ -39,3 +36,2 @@ return e instanceof Error &&

exports.isGBRequestError = isGBRequestError;
/** Type guard for a Geometry Backend SDK response error. */
function isGBResponseError(e) {

@@ -47,6 +43,2 @@ return e instanceof Error &&

exports.isGBResponseError = isGBResponseError;
/**
* Sends the given request, handles retries for the HTTP status 429, and maps
* the response error object to its typed representation.
*/
function sendRequest(call) {

@@ -64,6 +56,4 @@ var _a;

if (e instanceof sdk_geometry_api_sdk_core_1.ShapeDiverResponseError) {
/* Check for special response statuses */
if (e.status === 429) {
// 429 Too Many Requests - Extract waiting time from Retry-After header if existing.
const seconds = (_a = e.headers["retry-after"]) !== null && _a !== void 0 ? _a : 60; // default is 1 minute
const seconds = (_a = e.headers["retry-after"]) !== null && _a !== void 0 ? _a : 60;
yield sleep(Number(seconds) * 1000);

@@ -73,10 +63,8 @@ continue;

else if (e.status === 502) {
yield sleep(1000); // 1 second
yield sleep(1000);
continue;
}
// Error mapping
throw new ShapeDiverErrors_1.ShapeDiverResponseError(e);
}
else {
// Not a response error -> something went wrong
throw e;

@@ -90,3 +78,2 @@ }

exports.sendRequest = sendRequest;
/** Delays the response for the given number of milliseconds */
function sleep(ms) {

@@ -96,3 +83,2 @@ return new Promise(resolve => setTimeout(resolve, ms));

exports.sleep = sleep;
/** Encode the given string to base64 */
function encodeBase64(str) {

@@ -99,0 +85,0 @@ try {

14

package.json
{
"name": "@shapediver/sdk.geometry-api-sdk-v2",
"version": "1.6.0",
"version": "1.7.0",
"description": "SDK to communicate with the Geometry API version 2",

@@ -48,6 +48,6 @@ "keywords": [

"devDependencies": {
"jest": "~29.6.2",
"lerna": "~7.1.5",
"typescript": "~5.1.6",
"webpack": "~5.88.2",
"jest": "~29.7.0",
"lerna": "~8.1.2",
"typescript": "~5.3.3",
"webpack": "~5.90.1",
"webpack-cli": "~5.1.4",

@@ -57,5 +57,5 @@ "webpack-dev-server": "~4.15.1"

"dependencies": {
"@shapediver/sdk.geometry-api-sdk-core": "~1.3.1",
"@shapediver/api.geometry-api-dto-v2": "~1.11.0"
"@shapediver/sdk.geometry-api-sdk-core": "~1.3.2",
"@shapediver/api.geometry-api-dto-v2": "~1.13.0"
}
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc