diff options
Diffstat (limited to 'node_modules/jsdom/lib/jsdom/living/svg/SVGAnimatedString-impl.js')
-rw-r--r-- | node_modules/jsdom/lib/jsdom/living/svg/SVGAnimatedString-impl.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/node_modules/jsdom/lib/jsdom/living/svg/SVGAnimatedString-impl.js b/node_modules/jsdom/lib/jsdom/living/svg/SVGAnimatedString-impl.js new file mode 100644 index 0000000..737b354 --- /dev/null +++ b/node_modules/jsdom/lib/jsdom/living/svg/SVGAnimatedString-impl.js @@ -0,0 +1,38 @@ +"use strict"; + +class SVGAnimatedStringImpl { + constructor(globalObject, args, privateData) { + this._element = privateData.element; + this._attribute = privateData.attribute; + this._attributeDeprecated = privateData.attributeDeprecated; // can be undefined + this._initialValue = privateData.initialValue; // can be undefined + } + + get baseVal() { + if (!this._element.hasAttributeNS(null, this._attribute)) { + if (this._attributeDeprecated !== undefined && this._element.hasAttributeNS(null, this._attributeDeprecated)) { + return this._element.getAttributeNS(null, this._attributeDeprecated); + } else if (this._initialValue !== undefined) { + return this._initialValue; + } + return ""; + } + return this._element.getAttributeNS(null, this._attribute); + } + + set baseVal(base) { + if (!this._element.hasAttributeNS(null, this._attribute) && + this._attributeDeprecated !== undefined && + this._element.hasAttributeNS(null, this._attributeDeprecated)) { + this._element.setAttributeNS(null, this._attributeDeprecated, base); + } else { + this._element.setAttributeNS(null, this._attribute, base); + } + } + + get animVal() { + return this.baseVal; + } +} + +exports.implementation = SVGAnimatedStringImpl; |