@shapediver/sdk.sdtf-core
Version:
Base implementation for all sdTF TypeScript SDKs
31 lines • 900 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isSdtfError = isSdtfError;
exports.sdAssertUnreachable = sdAssertUnreachable;
exports.enumKeys = enumKeys;
exports.enumValues = enumValues;
exports.tryDeepCopy = tryDeepCopy;
const SdtfError_1 = require("../SdtfError");
function isSdtfError(e) {
return (e instanceof Error &&
'errorType' in e &&
Object.values(SdtfError_1.SdtfErrorType).includes(e.errorType));
}
function sdAssertUnreachable(_) {
throw new SdtfError_1.SdtfError('Reached unreachable block.');
}
function enumKeys(o) {
return Object.keys(o).filter((k) => Number.isNaN(+k));
}
function enumValues(o) {
return enumKeys(o).map((k) => o[k]);
}
function tryDeepCopy(original) {
try {
return structuredClone(original);
}
catch (e) {
return original;
}
}
//# sourceMappingURL=SdtfUtils.js.map