github.com/brandur/modulir@v0.0.0-20240305213423-94ee82929cbd/js.go (about)

     1  //
     2  //
     3  // Code generated by: scripts/embed_js/main.go
     4  // DO NOT EDIT. Run go generate instead.
     5  //
     6  //
     7  
     8  package modulir
     9  
    10  // Source: websocket.js
    11  const websocketJS = "function connect() {\n" +
    12  	"  var url = \"ws://localhost:{{.Port}}/websocket\";\n" +
    13  	"\n" +
    14  	"  console.log(`Connecting to Modulir: ${url}`);\n" +
    15  	"  var socket = new WebSocket(url);\n" +
    16  	"\n" +
    17  	"  socket.onclose = function(event) {\n" +
    18  	"    console.log(\"Websocket connection closed or unable to connect; starting reconnect timeout\");\n" +
    19  	"\n" +
    20  	"    // Allow the last socket to be cleaned up.\n" +
    21  	"    socket = null;\n" +
    22  	"\n" +
    23  	"    // Set an interval to continue trying to reconnect periodically until we\n" +
    24  	"    // succeed.\n" +
    25  	"    setTimeout(function() {\n" +
    26  	"      connect();\n" +
    27  	"    }, 5000)\n" +
    28  	"  }\n" +
    29  	"\n" +
    30  	"  socket.onmessage = function(event) {\n" +
    31  	"    console.log(`Received event of type '${event.type}' data: ${event.data}`);\n" +
    32  	"\n" +
    33  	"    var data = JSON.parse(event.data);\n" +
    34  	"\n" +
    35  	"    switch(data.type) {\n" +
    36  	"      case \"build_complete\":\n" +
    37  	"        // 1000 = \"Normal closure\" and the second parameter is a human-readable\n" +
    38  	"        // reason.\n" +
    39  	"        socket.close(1000, \"Reloading page after receiving build_complete\");\n" +
    40  	"\n" +
    41  	"        console.log(\"Reloading page after receiving build_complete\");\n" +
    42  	"        location.reload(true);\n" +
    43  	"\n" +
    44  	"        break;\n" +
    45  	"\n" +
    46  	"      default:\n" +
    47  	"        console.log(`Don't know how to handle type '${data.type}'`);\n" +
    48  	"    }\n" +
    49  	"  }\n" +
    50  	"\n" +
    51  	"  socket.onopen = function(event) {\n" +
    52  	"    console.log(\"Websocket connected\");\n" +
    53  	"  }\n" +
    54  	"}\n" +
    55  	"\n" +
    56  	"connect();\n" +
    57  	""