1 | export function createLiveReloadScript({ port }: { port: number }) {
|
2 | return `
|
3 | <script>
|
4 | (function (global) {
|
5 | try {
|
6 | const socketio = document.createElement('script')
|
7 | socketio.src = 'https://unpkg.com/pocket.io@0.1.4/min.js'
|
8 | socketio.onload = function init () {
|
9 | var disconnected = false
|
10 | var socket = io('http://localhost:${port}', {
|
11 | reconnectionAttempts: 3
|
12 | })
|
13 | socket.on('connect', function() { console.log('presta connected on port ${port}') })
|
14 | socket.on('refresh', function() {
|
15 | global.location.reload()
|
16 | })
|
17 | socket.on('disconnect', function() {
|
18 | disconnected = true
|
19 | })
|
20 | socket.on('reconnect_failed', function(e) {
|
21 | if (disconnected) return
|
22 | console.error("presta - connection to server on :${port} failed")
|
23 | })
|
24 | }
|
25 | document.head.appendChild(socketio)
|
26 | } catch (e) {}
|
27 | })(this);
|
28 | </script>
|
29 | `
|
30 | }
|