UNPKG

@shapediver/sdk.sdtf-v1

Version:
36 lines 1.58 kB
"use strict"; 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