@spirobel/mininext 0.2.2 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/html.d.ts CHANGED
@@ -51,5 +51,5 @@ export declare function isError(submissionResult: any | {
51
51
  error: HtmlString;
52
52
  };
53
53
  declare global {
54
- var Reloader: HtmlString | undefined;
54
+ var Reloader: string | undefined;
55
55
  }
package/dist/html.js CHANGED
@@ -168,7 +168,7 @@ export async function htmlResponder(mini, maybeUnresolved, head = default_head,
168
168
  flattend.unshift(/*html*/ `<!DOCTYPE html>
169
169
  <html>
170
170
  <head>
171
- ${Reloader} ${head}
171
+ ${Reloader || ""} ${head}
172
172
  </head>
173
173
  <body>
174
174
  `);
@@ -1,4 +1,5 @@
1
1
  import { url, Mini, type HtmlHandler } from "./url";
2
2
  import { html, isError, HtmlString, head } from "./html";
3
3
  declare function build(backendPath?: string): Promise<void>;
4
- export { url, html, head, build, isError, HtmlString, type HtmlHandler, Mini };
4
+ declare const standardDevReloader = "\n <script>\n function reloader() {\n let socket = null;\n\n function connectWebSocket() {\n if (socket) {\n return;\n }\n socket = new WebSocket(\"ws://localhost:3001/reload\");\n\n socket.addEventListener(\"message\", (event) => {\n window.location.reload();\n });\n\n socket.addEventListener(\"close\", (event) => {\n // Reestablish the connection after 1 second\n socket = null;\n });\n\n socket.addEventListener(\"error\", (event) => {\n socket = null;\n });\n }\n connectWebSocket(); // connect to reloader, if it does not work:\n setInterval(connectWebSocket, 1000); // retry every 1 second\n }\n reloader();\n </script>\n ";
5
+ export { url, html, head, build, isError, HtmlString, type HtmlHandler, Mini, standardDevReloader, };
package/dist/mininext.js CHANGED
@@ -2,7 +2,7 @@ import { url, Mini } from "./url";
2
2
  import { html, isError, HtmlString, head } from "./html";
3
3
  import { watch } from "fs/promises";
4
4
  import * as path from "path";
5
- const PROJECT_ROOT = import.meta.dir + "/../";
5
+ const PROJECT_ROOT = import.meta.dir + "/../../../../";
6
6
  async function build(backendPath = "backend/backend.ts") {
7
7
  await buildBackend(backendPath);
8
8
  if (Bun.argv[2] === "dev") {
@@ -112,4 +112,34 @@ async function devServer() {
112
112
  watchAndBuild("frontend");
113
113
  watchAndBuild("backend");
114
114
  }
115
- export { url, html, head, build, isError, HtmlString, Mini };
115
+ const standardDevReloader = /*html*/ `
116
+ <script>
117
+ function reloader() {
118
+ let socket = null;
119
+
120
+ function connectWebSocket() {
121
+ if (socket) {
122
+ return;
123
+ }
124
+ socket = new WebSocket("ws://localhost:3001/reload");
125
+
126
+ socket.addEventListener("message", (event) => {
127
+ window.location.reload();
128
+ });
129
+
130
+ socket.addEventListener("close", (event) => {
131
+ // Reestablish the connection after 1 second
132
+ socket = null;
133
+ });
134
+
135
+ socket.addEventListener("error", (event) => {
136
+ socket = null;
137
+ });
138
+ }
139
+ connectWebSocket(); // connect to reloader, if it does not work:
140
+ setInterval(connectWebSocket, 1000); // retry every 1 second
141
+ }
142
+ reloader();
143
+ </script>
144
+ `;
145
+ export { url, html, head, build, isError, HtmlString, Mini, standardDevReloader, };
package/mininext/html.ts CHANGED
@@ -217,7 +217,7 @@ export async function htmlResponder(
217
217
  flattend.unshift(/*html*/ `<!DOCTYPE html>
218
218
  <html>
219
219
  <head>
220
- ${Reloader} ${head}
220
+ ${Reloader || ""} ${head}
221
221
  </head>
222
222
  <body>
223
223
  `);
@@ -258,5 +258,5 @@ export function isError(
258
258
  }
259
259
 
260
260
  declare global {
261
- var Reloader: HtmlString | undefined;
261
+ var Reloader: string | undefined;
262
262
  }
@@ -2,7 +2,7 @@ import { url, Mini, type HtmlHandler } from "./url";
2
2
  import { html, isError, HtmlString, head } from "./html";
3
3
  import { watch } from "fs/promises";
4
4
  import * as path from "path";
5
- const PROJECT_ROOT = import.meta.dir + "/../";
5
+ const PROJECT_ROOT = import.meta.dir + "/../../../../";
6
6
 
7
7
  async function build(backendPath: string = "backend/backend.ts") {
8
8
  await buildBackend(backendPath);
@@ -121,5 +121,45 @@ async function devServer() {
121
121
  watchAndBuild("frontend");
122
122
  watchAndBuild("backend");
123
123
  }
124
+ const standardDevReloader = /*html*/ `
125
+ <script>
126
+ function reloader() {
127
+ let socket = null;
124
128
 
125
- export { url, html, head, build, isError, HtmlString, type HtmlHandler, Mini };
129
+ function connectWebSocket() {
130
+ if (socket) {
131
+ return;
132
+ }
133
+ socket = new WebSocket("ws://localhost:3001/reload");
134
+
135
+ socket.addEventListener("message", (event) => {
136
+ window.location.reload();
137
+ });
138
+
139
+ socket.addEventListener("close", (event) => {
140
+ // Reestablish the connection after 1 second
141
+ socket = null;
142
+ });
143
+
144
+ socket.addEventListener("error", (event) => {
145
+ socket = null;
146
+ });
147
+ }
148
+ connectWebSocket(); // connect to reloader, if it does not work:
149
+ setInterval(connectWebSocket, 1000); // retry every 1 second
150
+ }
151
+ reloader();
152
+ </script>
153
+ `;
154
+
155
+ export {
156
+ url,
157
+ html,
158
+ head,
159
+ build,
160
+ isError,
161
+ HtmlString,
162
+ type HtmlHandler,
163
+ Mini,
164
+ standardDevReloader,
165
+ };
package/package.json CHANGED
@@ -5,10 +5,14 @@
5
5
  "main": "dist/mininext.js",
6
6
  "types": "dist/mininext.d.ts",
7
7
  "scripts": {
8
- "build": "tsc"
8
+ "publish": "npm publish",
9
+ "build": "tsc",
10
+ "postversion": "git push --follow-tags",
11
+ "preversion": "bun run build"
12
+
9
13
  },
10
14
  "files": ["dist", "mininext"],
11
- "version": "0.2.2",
15
+ "version": "0.2.4",
12
16
  "devDependencies": {
13
17
  "@types/bun": "latest"
14
18
  },