@shapediver/sdk.sdtf-v1
Version:
Official sdTF SDK for TypeScript
36 lines • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SdtfWriteableAttribute = exports.SdtfWriteableAttributes = void 0;
const sdk_sdtf_core_1 = require("@shapediver/sdk.sdtf-core");
const SdtfBaseWriteableComponent_1 = require("./SdtfBaseWriteableComponent");
const SdtfWriteableAccessor_1 = require("./SdtfWriteableAccessor");
const SdtfWriteableTypeHint_1 = require("./SdtfWriteableTypeHint");
class SdtfWriteableAttributes extends SdtfBaseWriteableComponent_1.SdtfBaseWriteableComponent {
constructor() {
super(...arguments);
this.entries = {};
}
toDataObject() {
return this.entries;
}
static clone(original) {
const clone = new SdtfWriteableAttributes();
clone.entries = {};
Object.entries(original.entries).forEach(([name, attribute]) => (clone.entries[name] = SdtfWriteableAttribute.clone(attribute)));
return clone;
}
}
exports.SdtfWriteableAttributes = SdtfWriteableAttributes;
class SdtfWriteableAttribute {
static clone(original) {
const clone = new SdtfWriteableAttribute();
if (original.accessor)
clone.accessor = SdtfWriteableAccessor_1.SdtfWriteableAccessor.clone(original.accessor);
if (original.typeHint)
clone.typeHint = SdtfWriteableTypeHint_1.SdtfWriteableTypeHint.clone(original.typeHint);
clone.value = (0, sdk_sdtf_core_1.tryDeepCopy)(original.value);
return clone;
}
}
exports.SdtfWriteableAttribute = SdtfWriteableAttribute;
//# sourceMappingURL=SdtfWriteableAttributes.js.map