aboutsummaryrefslogtreecommitdiff
path: root/node_modules/vue/src/platforms/weex/runtime/node-ops.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/vue/src/platforms/weex/runtime/node-ops.js')
-rwxr-xr-xnode_modules/vue/src/platforms/weex/runtime/node-ops.js91
1 files changed, 91 insertions, 0 deletions
diff --git a/node_modules/vue/src/platforms/weex/runtime/node-ops.js b/node_modules/vue/src/platforms/weex/runtime/node-ops.js
new file mode 100755
index 00000000..0438ec5c
--- /dev/null
+++ b/node_modules/vue/src/platforms/weex/runtime/node-ops.js
@@ -0,0 +1,91 @@
+/* @flow */
+declare var document: WeexDocument;
+
+import TextNode from 'weex/runtime/text-node'
+
+export const namespaceMap = {}
+
+export function createElement (tagName: string): WeexElement {
+ return document.createElement(tagName)
+}
+
+export function createElementNS (namespace: string, tagName: string): WeexElement {
+ return document.createElement(namespace + ':' + tagName)
+}
+
+export function createTextNode (text: string) {
+ return new TextNode(text)
+}
+
+export function createComment (text: string) {
+ return document.createComment(text)
+}
+
+export function insertBefore (
+ node: WeexElement,
+ target: WeexElement,
+ before: WeexElement
+) {
+ if (target.nodeType === 3) {
+ if (node.type === 'text') {
+ node.setAttr('value', target.text)
+ target.parentNode = node
+ } else {
+ const text = createElement('text')
+ text.setAttr('value', target.text)
+ node.insertBefore(text, before)
+ }
+ return
+ }
+ node.insertBefore(target, before)
+}
+
+export function removeChild (node: WeexElement, child: WeexElement) {
+ if (child.nodeType === 3) {
+ node.setAttr('value', '')
+ return
+ }
+ node.removeChild(child)
+}
+
+export function appendChild (node: WeexElement, child: WeexElement) {
+ if (child.nodeType === 3) {
+ if (node.type === 'text') {
+ node.setAttr('value', child.text)
+ child.parentNode = node
+ } else {
+ const text = createElement('text')
+ text.setAttr('value', child.text)
+ node.appendChild(text)
+ }
+ return
+ }
+
+ node.appendChild(child)
+}
+
+export function parentNode (node: WeexElement): WeexElement | void {
+ return node.parentNode
+}
+
+export function nextSibling (node: WeexElement): WeexElement | void {
+ return node.nextSibling
+}
+
+export function tagName (node: WeexElement): string {
+ return node.type
+}
+
+export function setTextContent (node: WeexElement, text: string) {
+ if (node.parentNode) {
+ node.parentNode.setAttr('value', text)
+ }
+}
+
+export function setAttribute (node: WeexElement, key: string, val: any) {
+ node.setAttr(key, val)
+}
+
+export function setStyleScope (node: WeexElement, scopeId: string) {
+ node.setAttr('@styleScope', scopeId)
+}