summaryrefslogtreecommitdiffstats
path: root/src/elements
diff options
context:
space:
mode:
authorUlrich-Matthias Schäfer <ulima.ums@googlemail.com>2018-11-11 17:37:06 +0100
committerUlrich-Matthias Schäfer <ulima.ums@googlemail.com>2018-11-11 17:37:06 +0100
commitbf7703f5915c6154937f3febf812aad6483bff45 (patch)
tree384be2f9fff05e755669b14f2f8fa0a624dacf45 /src/elements
parentf2513baf3c9262190ee2c92fb98b2dd099bfbab2 (diff)
downloadsvg.js-bf7703f5915c6154937f3febf812aad6483bff45.tar.gz
svg.js-bf7703f5915c6154937f3febf812aad6483bff45.zip
make window and document exchangeable in case they are not globals alreay, make sure that init functions are chaninable
Diffstat (limited to 'src/elements')
-rw-r--r--src/elements/Bare.js3
-rw-r--r--src/elements/Doc.js3
-rw-r--r--src/elements/Dom.js4
-rw-r--r--src/elements/Element.js1
-rw-r--r--src/elements/Image.js3
-rw-r--r--src/elements/Shape.js1
-rw-r--r--src/elements/Style.js1
-rw-r--r--src/elements/Text.js3
8 files changed, 15 insertions, 4 deletions
diff --git a/src/elements/Bare.js b/src/elements/Bare.js
index 9415cd4..7162f3a 100644
--- a/src/elements/Bare.js
+++ b/src/elements/Bare.js
@@ -1,6 +1,9 @@
import { nodeOrNew, register, wrapWithAttrCheck } from '../utils/adopter.js'
import { registerMethods } from '../utils/methods.js'
import Container from './Container.js'
+import globals from '../utils/window.js'
+
+const { document } = globals
export default class Bare extends Container {
constructor (node, attrs) {
diff --git a/src/elements/Doc.js b/src/elements/Doc.js
index 0d862ba..952f1d3 100644
--- a/src/elements/Doc.js
+++ b/src/elements/Doc.js
@@ -8,6 +8,9 @@ import { ns, svgjs, xlink, xmlns } from '../modules/core/namespaces.js'
import { registerMethods } from '../utils/methods.js'
import Container from './Container.js'
import Defs from './Defs.js'
+import globals from '../utils/window.js'
+
+const { window } = globals
export default class Doc extends Container {
constructor (node) {
diff --git a/src/elements/Dom.js b/src/elements/Dom.js
index 87d0f5e..8fa053c 100644
--- a/src/elements/Dom.js
+++ b/src/elements/Dom.js
@@ -8,9 +8,11 @@ import {
} from '../utils/adopter.js'
import { map } from '../utils/utils.js'
import { ns } from '../modules/core/namespaces.js'
+import globals from '../utils/window.js'
import EventTarget from '../types/EventTarget.js'
import attr from '../modules/core/attr.js'
+const { window, document } = globals
export default class Dom extends EventTarget {
constructor (node, attrs) {
@@ -154,7 +156,7 @@ export default class Dom extends EventTarget {
if (!type) return parent
// loop trough ancestors if type is given
- while (parent && parent.node instanceof window.SVGElement) {
+ while (parent && parent.node instanceof window.SVGElement) { // FIXME: That shouldnt be neccessary
if (typeof type === 'string' ? parent.matches(type) : parent instanceof type) return parent
parent = adopt(parent.node.parentNode)
}
diff --git a/src/elements/Element.js b/src/elements/Element.js
index 7d491f9..03b5f07 100644
--- a/src/elements/Element.js
+++ b/src/elements/Element.js
@@ -4,7 +4,6 @@ import { reference } from '../modules/core/regex.js'
import Dom from './Dom.js'
import SVGNumber from '../types/SVGNumber.js'
-
const Doc = getClass(root)
export default class Element extends Dom {
diff --git a/src/elements/Image.js b/src/elements/Image.js
index c529439..6a01b8f 100644
--- a/src/elements/Image.js
+++ b/src/elements/Image.js
@@ -6,6 +6,9 @@ import { registerMethods } from '../utils/methods.js'
import { xlink } from '../modules/core/namespaces.js'
import Pattern from './Pattern.js'
import Shape from './Shape.js'
+import globals from '../utils/window.js'
+
+const { window } = globals
export default class Image extends Shape {
constructor (node) {
diff --git a/src/elements/Shape.js b/src/elements/Shape.js
index e2821fe..cdddc60 100644
--- a/src/elements/Shape.js
+++ b/src/elements/Shape.js
@@ -1,7 +1,6 @@
import { register } from '../utils/adopter.js'
import Element from './Element.js'
-
export default class Shape extends Element {}
register(Shape)
diff --git a/src/elements/Style.js b/src/elements/Style.js
index 1883184..50ec50e 100644
--- a/src/elements/Style.js
+++ b/src/elements/Style.js
@@ -3,7 +3,6 @@ import { registerMethods } from '../utils/methods.js'
import { unCamelCase } from '../utils/utils.js'
import Element from './Element.js'
-
function cssRule (selector, rule) {
if (!selector) return ''
if (!rule) return selector
diff --git a/src/elements/Text.js b/src/elements/Text.js
index b4ba0ad..41be916 100644
--- a/src/elements/Text.js
+++ b/src/elements/Text.js
@@ -9,8 +9,11 @@ import { attrs } from '../modules/core/defaults.js'
import { registerMethods } from '../utils/methods.js'
import SVGNumber from '../types/SVGNumber.js'
import Shape from './Shape.js'
+import globals from '../utils/window.js'
import * as textable from '../modules/core/textable.js'
+const { window } = globals
+
export default class Text extends Shape {
// Initialize node
constructor (node) {