1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
Optimizer = {
options: null, // see setOptionsFrom in settings.js
start: function () {
this.worker = new Worker('./js/optimizer-worker.js')
this.worker.onmessage = function (event) {
switch (event.data.command) {
case 'optimized':
Optimizer.oncomplete(event.data.id, event.data.output, event.data.saved)
}
}
this.worker.onerror = function (event) {
console.error(event)
}
},
initialize: function() {
this.worker.postMessage({
command: 'initialize'
})
},
process: function (id, styles) {
this.worker.postMessage({
command: 'optimize',
id: id,
input: styles,
options: this.options
})
},
oncomplete: function () { /* noop */ }
}
Optimizer.start()
|