Compare commits

..

1 Commits

Author SHA1 Message Date
Kevin Jahns
cbe2abafbb v13.0.0-27 -- distribution files 2017-11-10 12:55:13 -08:00
12 changed files with 384 additions and 630 deletions

2
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{ {
"name": "yjs", "name": "yjs",
"version": "13.0.0-29", "version": "13.0.0-27",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {

View File

@@ -1,6 +1,6 @@
{ {
"name": "yjs", "name": "yjs",
"version": "13.0.0-29", "version": "13.0.0-27",
"description": "A framework for real-time p2p shared editing on any data", "description": "A framework for real-time p2p shared editing on any data",
"main": "./y.node.js", "main": "./y.node.js",
"browser": "./y.js", "browser": "./y.js",

View File

@@ -3,7 +3,7 @@ import commonjs from 'rollup-plugin-commonjs'
import multiEntry from 'rollup-plugin-multi-entry' import multiEntry from 'rollup-plugin-multi-entry'
export default { export default {
entry: 'test/y-xml.tests.js', entry: 'test/y-map.tests.js',
moduleName: 'y-tests', moduleName: 'y-tests',
format: 'umd', format: 'umd',
plugins: [ plugins: [

View File

@@ -20,13 +20,7 @@ export default class ItemJSON extends Item {
this._content = new Array(len) this._content = new Array(len)
for (let i = 0; i < len; i++) { for (let i = 0; i < len; i++) {
const ctnt = decoder.readVarString() const ctnt = decoder.readVarString()
let parsed this._content[i] = JSON.parse(ctnt)
if (ctnt === 'undefined') {
parsed = undefined
} else {
parsed = JSON.parse(ctnt)
}
this._content[i] = parsed
} }
return missing return missing
} }
@@ -35,14 +29,7 @@ export default class ItemJSON extends Item {
let len = this._content.length let len = this._content.length
encoder.writeVarUint(len) encoder.writeVarUint(len)
for (let i = 0; i < len; i++) { for (let i = 0; i < len; i++) {
let encoded encoder.writeVarString(JSON.stringify(this._content[i]))
let content = this._content[i]
if (content === undefined) {
encoded = 'undefined'
} else {
encoded = JSON.stringify(content)
}
encoder.writeVarString(encoded)
} }
} }
_logString () { _logString () {

View File

@@ -136,28 +136,6 @@ export function applyChangesFromDom (dom) {
} }
export function reflectChangesOnDom (events) { export function reflectChangesOnDom (events) {
// Make sure that no filtered attributes are applied to the structure
// if they were, delete them
/*
events.forEach(event => {
const target = event.target
const keys = this._domFilter(target.nodeName, Array.from(event.keysChanged))
if (keys === null) {
target._delete()
} else {
const removeKeys = new Set() // is a copy of event.keysChanged
event.keysChanged.forEach(key => { removeKeys.add(key) })
keys.forEach(key => {
// remove all accepted keys from removeKeys
removeKeys.delete(key)
})
// remove the filtered attribute
removeKeys.forEach(key => {
target.removeAttribute(key)
})
}
})
*/
this._mutualExclude(() => { this._mutualExclude(() => {
events.forEach(event => { events.forEach(event => {
const yxml = event.target const yxml = event.target

View File

@@ -41,8 +41,6 @@ test('basic map tests', async function map0 (t) {
test('Basic get&set of Map property (converge via sync)', async function map1 (t) { test('Basic get&set of Map property (converge via sync)', async function map1 (t) {
let { users, map0 } = await initArrays(t, { users: 2 }) let { users, map0 } = await initArrays(t, { users: 2 })
map0.set('stuff', 'stuffy') map0.set('stuff', 'stuffy')
map0.set('undefined', undefined)
map0.set('null', null)
t.compare(map0.get('stuff'), 'stuffy') t.compare(map0.get('stuff'), 'stuffy')
await flushAll(t, users) await flushAll(t, users)
@@ -50,8 +48,6 @@ test('Basic get&set of Map property (converge via sync)', async function map1 (t
for (let user of users) { for (let user of users) {
var u = user.get('map', Y.Map) var u = user.get('map', Y.Map)
t.compare(u.get('stuff'), 'stuffy') t.compare(u.get('stuff'), 'stuffy')
t.assert(u.get('undefined') === undefined, 'undefined')
t.compare(u.get('null'), null, 'null')
} }
await compareUsers(t, users) await compareUsers(t, users)
}) })

6
y.js

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,7 +1,7 @@
/** /**
* yjs - A framework for real-time p2p shared editing on any data * yjs - A framework for real-time p2p shared editing on any data
* @version v13.0.0-29 * @version v13.0.0-27
* @license MIT * @license MIT
*/ */
@@ -2091,13 +2091,7 @@ class ItemJSON extends Item {
this._content = new Array(len); this._content = new Array(len);
for (let i = 0; i < len; i++) { for (let i = 0; i < len; i++) {
const ctnt = decoder.readVarString(); const ctnt = decoder.readVarString();
let parsed; this._content[i] = JSON.parse(ctnt);
if (ctnt === 'undefined') {
parsed = undefined;
} else {
parsed = JSON.parse(ctnt);
}
this._content[i] = parsed;
} }
return missing return missing
} }
@@ -2106,14 +2100,7 @@ class ItemJSON extends Item {
let len = this._content.length; let len = this._content.length;
encoder.writeVarUint(len); encoder.writeVarUint(len);
for (let i = 0; i < len; i++) { for (let i = 0; i < len; i++) {
let encoded; encoder.writeVarString(JSON.stringify(this._content[i]));
let content = this._content[i];
if (content === undefined) {
encoded = 'undefined';
} else {
encoded = JSON.stringify(content);
}
encoder.writeVarString(encoded);
} }
} }
_logString () { _logString () {
@@ -2777,28 +2764,6 @@ function applyChangesFromDom (dom) {
} }
function reflectChangesOnDom (events) { function reflectChangesOnDom (events) {
// Make sure that no filtered attributes are applied to the structure
// if they were, delete them
/*
events.forEach(event => {
const target = event.target
const keys = this._domFilter(target.nodeName, Array.from(event.keysChanged))
if (keys === null) {
target._delete()
} else {
const removeKeys = new Set() // is a copy of event.keysChanged
event.keysChanged.forEach(key => { removeKeys.add(key) })
keys.forEach(key => {
// remove all accepted keys from removeKeys
removeKeys.delete(key)
})
// remove the filtered attribute
removeKeys.forEach(key => {
target.removeAttribute(key)
})
}
})
*/
this._mutualExclude(() => { this._mutualExclude(() => {
events.forEach(event => { events.forEach(event => {
const yxml = event.target; const yxml = event.target;

File diff suppressed because one or more lines are too long

912
y.test.js

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long