31 lines
536 B
JavaScript
31 lines
536 B
JavaScript
|
'use strict';
|
||
|
|
||
|
function createLivePreview() {
|
||
|
let previewer;
|
||
|
return {update};
|
||
|
|
||
|
function update(data) {
|
||
|
if (!previewer) {
|
||
|
if (!data.id || !data.enabled) {
|
||
|
return;
|
||
|
}
|
||
|
previewer = createPreviewer();
|
||
|
}
|
||
|
previewer.update(data);
|
||
|
}
|
||
|
|
||
|
function createPreviewer() {
|
||
|
const port = chrome.runtime.connect({
|
||
|
name: 'livePreview'
|
||
|
});
|
||
|
port.onDisconnet.addListener(err => {
|
||
|
throw err;
|
||
|
});
|
||
|
return {update};
|
||
|
|
||
|
function update(data) {
|
||
|
port.postMessage(data);
|
||
|
}
|
||
|
}
|
||
|
}
|