Rust implementation of NextGraph, a Decentralized and local-first web 3.0 ecosystem
https://nextgraph.org
byzantine-fault-tolerancecrdtsdappsdecentralizede2eeeventual-consistencyjson-ldlocal-firstmarkdownocapoffline-firstp2pp2p-networkprivacy-protectionrdfrich-text-editorself-hostedsemantic-websparqlweb3collaboration
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
624 B
28 lines
624 B
import { deepSignal, subscribeDeepMutations } from './dist/index.js';
|
|
|
|
const root = deepSignal({
|
|
mySet: new Set([
|
|
{ "@id": "obj1", value: 10 },
|
|
{ "@id": "obj2", value: 20 }
|
|
])
|
|
});
|
|
|
|
subscribeDeepMutations(root, (patches) => {
|
|
console.log('Patches:', JSON.stringify(patches, null, 2));
|
|
});
|
|
|
|
// Use .map() to get entries
|
|
const entries = root.mySet.values().map(entry => {
|
|
console.log('Entry:', entry);
|
|
return entry;
|
|
});
|
|
|
|
console.log('Got entries:', entries.length);
|
|
console.log('Modifying first entry...');
|
|
|
|
// Modify the first one
|
|
entries[0].value = 100;
|
|
|
|
setTimeout(() => {
|
|
console.log('Done');
|
|
}, 100);
|
|
|