improved examples
This commit is contained in:
		
							parent
							
								
									afa05b62a1
								
							
						
					
					
						commit
						b613630cef
					
				@ -1,14 +1,26 @@
 | 
			
		||||
/* global Y, Quill */
 | 
			
		||||
 | 
			
		||||
// initialize a shared object. This function call returns a promise!
 | 
			
		||||
var connector, serviceworker
 | 
			
		||||
 | 
			
		||||
// register yjs service worker
 | 
			
		||||
if ('serviceWorker' in navigator) {
 | 
			
		||||
  // service worker is supported by the browser
 | 
			
		||||
  connector = 'serviceworker'
 | 
			
		||||
  serviceworker = navigator.serviceWorker.register('../bower_components/y-serviceworker/yjs-service-worker.js')
 | 
			
		||||
} else {
 | 
			
		||||
  // use websockets for browsers that do not support service browser
 | 
			
		||||
  connector = 'websockets-client'
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// initialize a shared object. This function call returns a promise!
 | 
			
		||||
Y({
 | 
			
		||||
  db: {
 | 
			
		||||
    name: 'memory'
 | 
			
		||||
  },
 | 
			
		||||
  connector: {
 | 
			
		||||
    name: 'websockets-client',
 | 
			
		||||
    room: 'ServiceWorkerExample'
 | 
			
		||||
    name: connector,
 | 
			
		||||
    serviceworker: serviceworker,
 | 
			
		||||
    room: 'ServiceWorkerExample2'
 | 
			
		||||
  },
 | 
			
		||||
  sourceDir: '/bower_components',
 | 
			
		||||
  share: {
 | 
			
		||||
@ -33,19 +45,7 @@ Y({
 | 
			
		||||
      ]
 | 
			
		||||
    },
 | 
			
		||||
    theme: 'snow'
 | 
			
		||||
  });
 | 
			
		||||
  })
 | 
			
		||||
  // bind quill to richtext type
 | 
			
		||||
  y.share.richtext.bind(window.quill)
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
if ('serviceWorker' in navigator) {
 | 
			
		||||
  navigator.serviceWorker.register('./yjs-service-worker.js').then(function(registration) {
 | 
			
		||||
    // Registration was successful
 | 
			
		||||
    console.log('Yjs ServiceWorker registration successful with scope: ', registration.scope)
 | 
			
		||||
    registration.active.postMessage('hi sw')
 | 
			
		||||
    addEventListener('message', function () {console.log.apply(console, ['host received:'].concat(arguments))}, true)
 | 
			
		||||
  }).catch(function(err) {
 | 
			
		||||
    // registration failed :(
 | 
			
		||||
    console.log('Yjs ServiceWorker registration failed: ', err)
 | 
			
		||||
  });
 | 
			
		||||
}
 | 
			
		||||
})
 | 
			
		||||
@ -1,23 +0,0 @@
 | 
			
		||||
importScripts(
 | 
			
		||||
  '/bower_components/yjs/y.js',
 | 
			
		||||
  '/bower_components/y-memory/y-memory.js',
 | 
			
		||||
  '/bower_components/y-indexeddb/y-indexeddb.js',
 | 
			
		||||
  '/bower_components/y-websockets-client/y-websockets-client.js'
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
Y({
 | 
			
		||||
  db: {
 | 
			
		||||
    name: 'memory'
 | 
			
		||||
  },
 | 
			
		||||
  connector: {
 | 
			
		||||
    name: 'websockets-client',
 | 
			
		||||
    room: 'ServiceWorkerExample',
 | 
			
		||||
    options: { jsonp: false }
 | 
			
		||||
  }
 | 
			
		||||
}).then(function (y) {
 | 
			
		||||
  console.log('y sw init')
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
addEventListener('message', function () {
 | 
			
		||||
  console.log.apply(console, ['sw received:'].concat(arguments))
 | 
			
		||||
}, true)
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user