domql 1.5.5 → 1.5.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "DOM rendering Javascript framework at early stage.",
|
|
4
4
|
"private": false,
|
|
5
5
|
"author": "rackai",
|
|
6
|
-
"version": "1.5.
|
|
6
|
+
"version": "1.5.7",
|
|
7
7
|
"repository": "https://github.com/rackai/domql",
|
|
8
8
|
"publishConfig": {
|
|
9
9
|
"registry": "https://registry.npmjs.org"
|
package/src/element/create.js
CHANGED
|
@@ -5,7 +5,7 @@ import createNode from './node'
|
|
|
5
5
|
import { appendNode, assignNode } from './assign'
|
|
6
6
|
import { applyExtend } from './extend'
|
|
7
7
|
import nodes from './nodes'
|
|
8
|
-
import set from './set'
|
|
8
|
+
import set, { removeContentElement } from './set'
|
|
9
9
|
import createState from './state'
|
|
10
10
|
import createProps from './props'
|
|
11
11
|
import update from './update'
|
|
@@ -95,6 +95,7 @@ const create = (element, parent, key, options = {}) => {
|
|
|
95
95
|
element.set = set
|
|
96
96
|
element.update = update
|
|
97
97
|
element.remove = remove
|
|
98
|
+
element.removeContent = removeContentElement
|
|
98
99
|
element.setProps = setProps
|
|
99
100
|
element.lookup = lookup
|
|
100
101
|
element.parse = parse
|
package/src/element/methods.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
'use strict'
|
|
2
2
|
|
|
3
|
-
import { isObject, isObjectLike } from '../utils'
|
|
3
|
+
import { isFunction, isObject, isObjectLike } from '../utils'
|
|
4
4
|
import { registry } from './mixins'
|
|
5
|
+
import { removeContentElement } from './set'
|
|
6
|
+
|
|
7
|
+
const ENV = process.env.NODE_ENV
|
|
5
8
|
|
|
6
9
|
// TODO: update these files
|
|
7
10
|
export const lookup = function (key) {
|
|
@@ -18,7 +21,11 @@ export const lookup = function (key) {
|
|
|
18
21
|
|
|
19
22
|
export const remove = function (params) {
|
|
20
23
|
const element = this
|
|
21
|
-
element.node.remove()
|
|
24
|
+
if (isFunction(element.node.remove)) element.node.remove()
|
|
25
|
+
else if (ENV === 'test' || ENV === 'development') {
|
|
26
|
+
console.warn('This item cant be removed')
|
|
27
|
+
element.log()
|
|
28
|
+
}
|
|
22
29
|
delete element.parent[element.key]
|
|
23
30
|
}
|
|
24
31
|
|
|
@@ -94,6 +101,7 @@ export const isMethod = function (param) {
|
|
|
94
101
|
return param === 'set' ||
|
|
95
102
|
param === 'update' ||
|
|
96
103
|
param === 'remove' ||
|
|
104
|
+
param === 'removeContent' ||
|
|
97
105
|
param === 'lookup' ||
|
|
98
106
|
param === 'keys' ||
|
|
99
107
|
param === 'parse' ||
|
package/src/element/set.js
CHANGED
|
@@ -4,8 +4,9 @@ import create from './create'
|
|
|
4
4
|
import { isEqualDeep } from '../utils'
|
|
5
5
|
import { registry } from './mixins'
|
|
6
6
|
|
|
7
|
-
const removeContentElement = (
|
|
8
|
-
|
|
7
|
+
export const removeContentElement = function (el) {
|
|
8
|
+
const element = el || this
|
|
9
|
+
if (element.content) {
|
|
9
10
|
if (element.content.node) {
|
|
10
11
|
if (element.content.tag === 'fragment') element.node.innerHTML = ''
|
|
11
12
|
else element.node.removeChild(element.content.node)
|
|
@@ -20,13 +21,13 @@ const removeContentElement = (params, element) => {
|
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
|
|
23
|
-
const set = function (params, options) {
|
|
24
|
-
const element = this
|
|
24
|
+
const set = function (params, options, el) {
|
|
25
|
+
const element = el || this
|
|
25
26
|
|
|
26
27
|
const isEqual = isEqualDeep(params, element.content)
|
|
27
28
|
if (isEqual && element.content.__cached) return element
|
|
28
29
|
|
|
29
|
-
removeContentElement(
|
|
30
|
+
removeContentElement(element)
|
|
30
31
|
|
|
31
32
|
if (params) {
|
|
32
33
|
const { childExtend } = params
|