xplorajs 0.0.1
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/README.md +104 -0
- package/dist/app/page.js +7 -0
- package/dist/assets/react-refresh.js +338 -0
- package/dist/assets/style.css +230 -0
- package/dist/cli.js +11 -0
- package/dist/commands/build.js +314 -0
- package/dist/commands/dev.js +400 -0
- package/dist/commands/start.js +139 -0
- package/dist/dev.js +21 -0
- package/dist/node_modules/react-refresh/runtime.js +7 -0
- package/dist/pages/index.js +7 -0
- package/dist/server.js +391 -0
- package/package.json +37 -0
|
@@ -0,0 +1,400 @@
|
|
|
1
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
2
|
+
try {
|
|
3
|
+
var info = gen[key](arg);
|
|
4
|
+
var value = info.value;
|
|
5
|
+
} catch (error) {
|
|
6
|
+
reject(error);
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
if (info.done) {
|
|
10
|
+
resolve(value);
|
|
11
|
+
} else {
|
|
12
|
+
Promise.resolve(value).then(_next, _throw);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
function _async_to_generator(fn) {
|
|
16
|
+
return function() {
|
|
17
|
+
var self = this, args = arguments;
|
|
18
|
+
return new Promise(function(resolve, reject) {
|
|
19
|
+
var gen = fn.apply(self, args);
|
|
20
|
+
function _next(value) {
|
|
21
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
22
|
+
}
|
|
23
|
+
function _throw(err) {
|
|
24
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
25
|
+
}
|
|
26
|
+
_next(undefined);
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
function _ts_generator(thisArg, body) {
|
|
31
|
+
var f, y, t, _ = {
|
|
32
|
+
label: 0,
|
|
33
|
+
sent: function() {
|
|
34
|
+
if (t[0] & 1) throw t[1];
|
|
35
|
+
return t[1];
|
|
36
|
+
},
|
|
37
|
+
trys: [],
|
|
38
|
+
ops: []
|
|
39
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
40
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
41
|
+
return this;
|
|
42
|
+
}), g;
|
|
43
|
+
function verb(n) {
|
|
44
|
+
return function(v) {
|
|
45
|
+
return step([
|
|
46
|
+
n,
|
|
47
|
+
v
|
|
48
|
+
]);
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function step(op) {
|
|
52
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
53
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
54
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
55
|
+
if (y = 0, t) op = [
|
|
56
|
+
op[0] & 2,
|
|
57
|
+
t.value
|
|
58
|
+
];
|
|
59
|
+
switch(op[0]){
|
|
60
|
+
case 0:
|
|
61
|
+
case 1:
|
|
62
|
+
t = op;
|
|
63
|
+
break;
|
|
64
|
+
case 4:
|
|
65
|
+
_.label++;
|
|
66
|
+
return {
|
|
67
|
+
value: op[1],
|
|
68
|
+
done: false
|
|
69
|
+
};
|
|
70
|
+
case 5:
|
|
71
|
+
_.label++;
|
|
72
|
+
y = op[1];
|
|
73
|
+
op = [
|
|
74
|
+
0
|
|
75
|
+
];
|
|
76
|
+
continue;
|
|
77
|
+
case 7:
|
|
78
|
+
op = _.ops.pop();
|
|
79
|
+
_.trys.pop();
|
|
80
|
+
continue;
|
|
81
|
+
default:
|
|
82
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
83
|
+
_ = 0;
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
87
|
+
_.label = op[1];
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
91
|
+
_.label = t[1];
|
|
92
|
+
t = op;
|
|
93
|
+
break;
|
|
94
|
+
}
|
|
95
|
+
if (t && _.label < t[2]) {
|
|
96
|
+
_.label = t[2];
|
|
97
|
+
_.ops.push(op);
|
|
98
|
+
break;
|
|
99
|
+
}
|
|
100
|
+
if (t[2]) _.ops.pop();
|
|
101
|
+
_.trys.pop();
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
op = body.call(thisArg, _);
|
|
105
|
+
} catch (e) {
|
|
106
|
+
op = [
|
|
107
|
+
6,
|
|
108
|
+
e
|
|
109
|
+
];
|
|
110
|
+
y = 0;
|
|
111
|
+
} finally{
|
|
112
|
+
f = t = 0;
|
|
113
|
+
}
|
|
114
|
+
if (op[0] & 5) throw op[1];
|
|
115
|
+
return {
|
|
116
|
+
value: op[0] ? op[1] : void 0,
|
|
117
|
+
done: true
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
import { readFileSync } from "node:fs";
|
|
122
|
+
import { join } from "node:path";
|
|
123
|
+
import { serve } from "bun";
|
|
124
|
+
import { watch } from "chokidar";
|
|
125
|
+
import React from "react";
|
|
126
|
+
import { WebSocketServer } from "ws";
|
|
127
|
+
import { renderToStream } from "xplora-react";
|
|
128
|
+
import { build } from "./build";
|
|
129
|
+
// biome-ignore lint/suspicious/noExplicitAny: <intended>
|
|
130
|
+
var pages = new Map();
|
|
131
|
+
function loadPages() {
|
|
132
|
+
return _async_to_generator(function() {
|
|
133
|
+
var routes, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, route, _require_cache, _require, abs, _, _tmp, err;
|
|
134
|
+
return _ts_generator(this, function(_state) {
|
|
135
|
+
switch(_state.label){
|
|
136
|
+
case 0:
|
|
137
|
+
pages.clear();
|
|
138
|
+
return [
|
|
139
|
+
4,
|
|
140
|
+
loadRoutes()
|
|
141
|
+
];
|
|
142
|
+
case 1:
|
|
143
|
+
routes = _state.sent();
|
|
144
|
+
_iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
145
|
+
_state.label = 2;
|
|
146
|
+
case 2:
|
|
147
|
+
_state.trys.push([
|
|
148
|
+
2,
|
|
149
|
+
7,
|
|
150
|
+
8,
|
|
151
|
+
9
|
|
152
|
+
]);
|
|
153
|
+
_iterator = routes[Symbol.iterator]();
|
|
154
|
+
_state.label = 3;
|
|
155
|
+
case 3:
|
|
156
|
+
if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
|
|
157
|
+
3,
|
|
158
|
+
6
|
|
159
|
+
];
|
|
160
|
+
route = _step.value;
|
|
161
|
+
abs = join(process.cwd(), route.file);
|
|
162
|
+
(_require = import.meta.require) === null || _require === void 0 ? true : (_require_cache = _require.cache) === null || _require_cache === void 0 ? true : delete _require_cache[abs];
|
|
163
|
+
// biome-ignore lint/suspicious/noExplicitAny: <intended>
|
|
164
|
+
_ = pages.set;
|
|
165
|
+
_tmp = [
|
|
166
|
+
route.path
|
|
167
|
+
];
|
|
168
|
+
return [
|
|
169
|
+
4,
|
|
170
|
+
import(abs)
|
|
171
|
+
];
|
|
172
|
+
case 4:
|
|
173
|
+
_.apply(pages, _tmp.concat([
|
|
174
|
+
_state.sent().default
|
|
175
|
+
]));
|
|
176
|
+
_state.label = 5;
|
|
177
|
+
case 5:
|
|
178
|
+
_iteratorNormalCompletion = true;
|
|
179
|
+
return [
|
|
180
|
+
3,
|
|
181
|
+
3
|
|
182
|
+
];
|
|
183
|
+
case 6:
|
|
184
|
+
return [
|
|
185
|
+
3,
|
|
186
|
+
9
|
|
187
|
+
];
|
|
188
|
+
case 7:
|
|
189
|
+
err = _state.sent();
|
|
190
|
+
_didIteratorError = true;
|
|
191
|
+
_iteratorError = err;
|
|
192
|
+
return [
|
|
193
|
+
3,
|
|
194
|
+
9
|
|
195
|
+
];
|
|
196
|
+
case 8:
|
|
197
|
+
try {
|
|
198
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
199
|
+
_iterator.return();
|
|
200
|
+
}
|
|
201
|
+
} finally{
|
|
202
|
+
if (_didIteratorError) {
|
|
203
|
+
throw _iteratorError;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
return [
|
|
207
|
+
7
|
|
208
|
+
];
|
|
209
|
+
case 9:
|
|
210
|
+
return [
|
|
211
|
+
2
|
|
212
|
+
];
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
})();
|
|
216
|
+
}
|
|
217
|
+
function loadRoutes() {
|
|
218
|
+
return _async_to_generator(function() {
|
|
219
|
+
var routesPath, routesContent;
|
|
220
|
+
return _ts_generator(this, function(_state) {
|
|
221
|
+
try {
|
|
222
|
+
routesPath = join(process.cwd(), ".xplora", "routes.json");
|
|
223
|
+
routesContent = readFileSync(routesPath, "utf-8");
|
|
224
|
+
return [
|
|
225
|
+
2,
|
|
226
|
+
JSON.parse(routesContent).routes
|
|
227
|
+
];
|
|
228
|
+
} catch (e) {
|
|
229
|
+
return [
|
|
230
|
+
2,
|
|
231
|
+
[]
|
|
232
|
+
];
|
|
233
|
+
}
|
|
234
|
+
return [
|
|
235
|
+
2
|
|
236
|
+
];
|
|
237
|
+
});
|
|
238
|
+
})();
|
|
239
|
+
}
|
|
240
|
+
export function dev() {
|
|
241
|
+
return _async_to_generator(function() {
|
|
242
|
+
var wss, watcher;
|
|
243
|
+
return _ts_generator(this, function(_state) {
|
|
244
|
+
switch(_state.label){
|
|
245
|
+
case 0:
|
|
246
|
+
console.log("Starting development server...");
|
|
247
|
+
// Start WebSocket server for HMR
|
|
248
|
+
wss = new WebSocketServer({
|
|
249
|
+
port: 3001
|
|
250
|
+
});
|
|
251
|
+
// Watch for file changes
|
|
252
|
+
watcher = watch([
|
|
253
|
+
"src/**/*"
|
|
254
|
+
], {
|
|
255
|
+
ignored: /(^|[\/\\])\../,
|
|
256
|
+
persistent: true
|
|
257
|
+
});
|
|
258
|
+
watcher.on("change", function(path) {
|
|
259
|
+
return _async_to_generator(function() {
|
|
260
|
+
var _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, client;
|
|
261
|
+
return _ts_generator(this, function(_state) {
|
|
262
|
+
switch(_state.label){
|
|
263
|
+
case 0:
|
|
264
|
+
console.log("File ".concat(path, " has been changed"));
|
|
265
|
+
return [
|
|
266
|
+
4,
|
|
267
|
+
build()
|
|
268
|
+
];
|
|
269
|
+
case 1:
|
|
270
|
+
_state.sent();
|
|
271
|
+
return [
|
|
272
|
+
4,
|
|
273
|
+
loadPages()
|
|
274
|
+
];
|
|
275
|
+
case 2:
|
|
276
|
+
_state.sent();
|
|
277
|
+
_iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
278
|
+
try {
|
|
279
|
+
// Notify clients about the change
|
|
280
|
+
for(_iterator = wss.clients[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
281
|
+
client = _step.value;
|
|
282
|
+
if (client.readyState === WebSocket.OPEN) {
|
|
283
|
+
client.send(JSON.stringify({
|
|
284
|
+
type: "reload"
|
|
285
|
+
}));
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
} catch (err) {
|
|
289
|
+
_didIteratorError = true;
|
|
290
|
+
_iteratorError = err;
|
|
291
|
+
} finally{
|
|
292
|
+
try {
|
|
293
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
294
|
+
_iterator.return();
|
|
295
|
+
}
|
|
296
|
+
} finally{
|
|
297
|
+
if (_didIteratorError) {
|
|
298
|
+
throw _iteratorError;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
return [
|
|
303
|
+
2
|
|
304
|
+
];
|
|
305
|
+
}
|
|
306
|
+
});
|
|
307
|
+
})();
|
|
308
|
+
});
|
|
309
|
+
// Initial build and page load
|
|
310
|
+
return [
|
|
311
|
+
4,
|
|
312
|
+
build()
|
|
313
|
+
];
|
|
314
|
+
case 1:
|
|
315
|
+
_state.sent();
|
|
316
|
+
return [
|
|
317
|
+
4,
|
|
318
|
+
loadPages()
|
|
319
|
+
];
|
|
320
|
+
case 2:
|
|
321
|
+
_state.sent();
|
|
322
|
+
// Start development server
|
|
323
|
+
serve({
|
|
324
|
+
port: 3000,
|
|
325
|
+
fetch: function fetch(req) {
|
|
326
|
+
return _async_to_generator(function() {
|
|
327
|
+
var url, f, Page, stream, head, foot;
|
|
328
|
+
return _ts_generator(this, function(_state) {
|
|
329
|
+
switch(_state.label){
|
|
330
|
+
case 0:
|
|
331
|
+
url = new URL(req.url).pathname;
|
|
332
|
+
if (!url.startsWith("/assets/")) return [
|
|
333
|
+
3,
|
|
334
|
+
2
|
|
335
|
+
];
|
|
336
|
+
f = Bun.file(join(process.cwd(), "dist", url));
|
|
337
|
+
return [
|
|
338
|
+
4,
|
|
339
|
+
f.exists()
|
|
340
|
+
];
|
|
341
|
+
case 1:
|
|
342
|
+
if (_state.sent()) return [
|
|
343
|
+
2,
|
|
344
|
+
new Response(f)
|
|
345
|
+
];
|
|
346
|
+
_state.label = 2;
|
|
347
|
+
case 2:
|
|
348
|
+
Page = pages.get(url);
|
|
349
|
+
if (!Page) return [
|
|
350
|
+
2,
|
|
351
|
+
new Response("Not Found", {
|
|
352
|
+
status: 404
|
|
353
|
+
})
|
|
354
|
+
];
|
|
355
|
+
return [
|
|
356
|
+
4,
|
|
357
|
+
renderToStream(React.createElement(Page))
|
|
358
|
+
];
|
|
359
|
+
case 3:
|
|
360
|
+
stream = _state.sent();
|
|
361
|
+
head = '<!DOCTYPE html><html><head>\n <meta charset="utf-8"/>\n <link rel="stylesheet" href="/assets/style.css"/>\n <script>window.process={env:{NODE_ENV:"development"}};</script>\n </head><body><div id="root">';
|
|
362
|
+
foot = '</div>\n <script type="module">\n import * as RefreshRuntime from "https://esm.sh/react-refresh@0.17.0/runtime";\n if (window.process?.env?.NODE_ENV === "development") {\n console.log("Fast refresh runtime loaded in development mode");\n }\n RefreshRuntime.injectIntoGlobalHook(window);\n window.$RefreshReg$=()=>{};\n window.$RefreshSig$=()=>t=>t;\n </script>\n <script>\n const ws=new WebSocket("ws://localhost:3001");\n ws.onmessage=async e=>{\n if(e.data==="css"){\n document.querySelectorAll(\'link[rel="stylesheet"]\').forEach(l=>l.href="/assets/style.css?v="+Date.now());\n }\n if(e.data==="reload"){\n console.log("Reloading...");\n location.reload();\n }\n };\n </script>\n </body></html>';
|
|
363
|
+
return [
|
|
364
|
+
2,
|
|
365
|
+
new Response(new ReadableStream({
|
|
366
|
+
start: function start(ctrl) {
|
|
367
|
+
ctrl.enqueue(new TextEncoder().encode(head));
|
|
368
|
+
if (typeof stream === "string") {
|
|
369
|
+
ctrl.enqueue(new TextEncoder().encode(stream));
|
|
370
|
+
} else {
|
|
371
|
+
stream.pipeTo(new WritableStream({
|
|
372
|
+
write: function write(c) {
|
|
373
|
+
ctrl.enqueue(c);
|
|
374
|
+
},
|
|
375
|
+
close: function close() {
|
|
376
|
+
ctrl.enqueue(new TextEncoder().encode(foot));
|
|
377
|
+
ctrl.close();
|
|
378
|
+
}
|
|
379
|
+
}));
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
}), {
|
|
383
|
+
headers: {
|
|
384
|
+
"Content-Type": "text/html; charset=utf-8"
|
|
385
|
+
}
|
|
386
|
+
})
|
|
387
|
+
];
|
|
388
|
+
}
|
|
389
|
+
});
|
|
390
|
+
})();
|
|
391
|
+
}
|
|
392
|
+
});
|
|
393
|
+
console.log("Development server running at http://localhost:3000");
|
|
394
|
+
return [
|
|
395
|
+
2
|
|
396
|
+
];
|
|
397
|
+
}
|
|
398
|
+
});
|
|
399
|
+
})();
|
|
400
|
+
}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
2
|
+
try {
|
|
3
|
+
var info = gen[key](arg);
|
|
4
|
+
var value = info.value;
|
|
5
|
+
} catch (error) {
|
|
6
|
+
reject(error);
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
if (info.done) {
|
|
10
|
+
resolve(value);
|
|
11
|
+
} else {
|
|
12
|
+
Promise.resolve(value).then(_next, _throw);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
function _async_to_generator(fn) {
|
|
16
|
+
return function() {
|
|
17
|
+
var self = this, args = arguments;
|
|
18
|
+
return new Promise(function(resolve, reject) {
|
|
19
|
+
var gen = fn.apply(self, args);
|
|
20
|
+
function _next(value) {
|
|
21
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
22
|
+
}
|
|
23
|
+
function _throw(err) {
|
|
24
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
25
|
+
}
|
|
26
|
+
_next(undefined);
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
function _ts_generator(thisArg, body) {
|
|
31
|
+
var f, y, t, _ = {
|
|
32
|
+
label: 0,
|
|
33
|
+
sent: function() {
|
|
34
|
+
if (t[0] & 1) throw t[1];
|
|
35
|
+
return t[1];
|
|
36
|
+
},
|
|
37
|
+
trys: [],
|
|
38
|
+
ops: []
|
|
39
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
40
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
41
|
+
return this;
|
|
42
|
+
}), g;
|
|
43
|
+
function verb(n) {
|
|
44
|
+
return function(v) {
|
|
45
|
+
return step([
|
|
46
|
+
n,
|
|
47
|
+
v
|
|
48
|
+
]);
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function step(op) {
|
|
52
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
53
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
54
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
55
|
+
if (y = 0, t) op = [
|
|
56
|
+
op[0] & 2,
|
|
57
|
+
t.value
|
|
58
|
+
];
|
|
59
|
+
switch(op[0]){
|
|
60
|
+
case 0:
|
|
61
|
+
case 1:
|
|
62
|
+
t = op;
|
|
63
|
+
break;
|
|
64
|
+
case 4:
|
|
65
|
+
_.label++;
|
|
66
|
+
return {
|
|
67
|
+
value: op[1],
|
|
68
|
+
done: false
|
|
69
|
+
};
|
|
70
|
+
case 5:
|
|
71
|
+
_.label++;
|
|
72
|
+
y = op[1];
|
|
73
|
+
op = [
|
|
74
|
+
0
|
|
75
|
+
];
|
|
76
|
+
continue;
|
|
77
|
+
case 7:
|
|
78
|
+
op = _.ops.pop();
|
|
79
|
+
_.trys.pop();
|
|
80
|
+
continue;
|
|
81
|
+
default:
|
|
82
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
83
|
+
_ = 0;
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
87
|
+
_.label = op[1];
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
91
|
+
_.label = t[1];
|
|
92
|
+
t = op;
|
|
93
|
+
break;
|
|
94
|
+
}
|
|
95
|
+
if (t && _.label < t[2]) {
|
|
96
|
+
_.label = t[2];
|
|
97
|
+
_.ops.push(op);
|
|
98
|
+
break;
|
|
99
|
+
}
|
|
100
|
+
if (t[2]) _.ops.pop();
|
|
101
|
+
_.trys.pop();
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
op = body.call(thisArg, _);
|
|
105
|
+
} catch (e) {
|
|
106
|
+
op = [
|
|
107
|
+
6,
|
|
108
|
+
e
|
|
109
|
+
];
|
|
110
|
+
y = 0;
|
|
111
|
+
} finally{
|
|
112
|
+
f = t = 0;
|
|
113
|
+
}
|
|
114
|
+
if (op[0] & 5) throw op[1];
|
|
115
|
+
return {
|
|
116
|
+
value: op[0] ? op[1] : void 0,
|
|
117
|
+
done: true
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
export function start() {
|
|
122
|
+
return _async_to_generator(function() {
|
|
123
|
+
var server;
|
|
124
|
+
return _ts_generator(this, function(_state) {
|
|
125
|
+
console.log("Starting production server...");
|
|
126
|
+
server = Bun.serve({
|
|
127
|
+
port: 3000,
|
|
128
|
+
fetch: function fetch(req) {
|
|
129
|
+
// TODO: Implement production server logic
|
|
130
|
+
return new Response("Production server running...");
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
console.log("Production server running at http://localhost:".concat(server.port));
|
|
134
|
+
return [
|
|
135
|
+
2
|
|
136
|
+
];
|
|
137
|
+
});
|
|
138
|
+
})();
|
|
139
|
+
}
|
package/dist/dev.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { spawn } from "bun";
|
|
2
|
+
var bunBin = Bun.argv[0];
|
|
3
|
+
var cwd = import.meta.dir;
|
|
4
|
+
spawn([
|
|
5
|
+
bunBin,
|
|
6
|
+
"run",
|
|
7
|
+
"watch:css"
|
|
8
|
+
], {
|
|
9
|
+
cwd: cwd,
|
|
10
|
+
stdout: "inherit",
|
|
11
|
+
stderr: "inherit"
|
|
12
|
+
});
|
|
13
|
+
spawn([
|
|
14
|
+
bunBin,
|
|
15
|
+
"run",
|
|
16
|
+
"serve"
|
|
17
|
+
], {
|
|
18
|
+
cwd: cwd,
|
|
19
|
+
stdout: "inherit",
|
|
20
|
+
stderr: "inherit"
|
|
21
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export default function Home() {
|
|
2
|
+
return /*#__PURE__*/ React.createElement("section", {
|
|
3
|
+
className: "flex h-screen items-center justify-center bg-gray-100"
|
|
4
|
+
}, /*#__PURE__*/ React.createElement("h1", {
|
|
5
|
+
className: "text-4xl font-bold text-teal-600"
|
|
6
|
+
}, "Halo Xplora \uD83D\uDE80"));
|
|
7
|
+
}
|