@hypen-space/core 0.3.8 → 0.3.10
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/{src/app.js → app.js} +15 -2
- package/dist/{src/app.js.map → app.js.map} +3 -3
- package/dist/{src/components → components}/builtin.js +22 -7
- package/dist/{src/components → components}/builtin.js.map +4 -4
- package/dist/context.js +387 -0
- package/dist/context.js.map +12 -0
- package/dist/{src/discovery.js → discovery.js} +18 -4
- package/dist/{src/discovery.js.map → discovery.js.map} +4 -4
- package/dist/disposable.js +377 -0
- package/dist/disposable.js.map +11 -0
- package/dist/engine.browser.js +347 -0
- package/dist/engine.browser.js.map +11 -0
- package/dist/engine.js +320 -0
- package/dist/engine.js.map +11 -0
- package/dist/events.js +282 -0
- package/dist/events.js.map +11 -0
- package/dist/{src/index.browser.js → index.browser.js} +278 -229
- package/dist/index.browser.js.map +22 -0
- package/dist/{src/index.js → index.js} +1377 -1330
- package/dist/index.js.map +31 -0
- package/dist/loader.js +286 -0
- package/dist/loader.js.map +11 -0
- package/dist/plugin.js +334 -0
- package/dist/plugin.js.map +11 -0
- package/dist/{src/remote → remote}/client.js +215 -11
- package/dist/remote/client.js.map +14 -0
- package/dist/{src/remote → remote}/index.js +234 -210
- package/dist/remote/index.js.map +19 -0
- package/dist/remote/server.js +1442 -0
- package/dist/remote/server.js.map +16 -0
- package/dist/renderer.js +264 -0
- package/dist/renderer.js.map +11 -0
- package/dist/{src/router.js → router.js} +209 -8
- package/dist/router.js.map +12 -0
- package/package.json +72 -66
- package/src/components/builtin.ts +9 -6
- package/src/context.ts +10 -7
- package/src/discovery.ts +3 -2
- package/src/disposable.ts +6 -2
- package/src/engine.browser.ts +30 -11
- package/src/engine.ts +6 -3
- package/src/events.ts +5 -1
- package/src/index.browser.ts +20 -0
- package/src/index.ts +2 -0
- package/src/loader.ts +8 -8
- package/src/logger.ts +28 -0
- package/src/plugin.ts +2 -1
- package/src/remote/client.ts +8 -9
- package/src/remote/server.ts +6 -3
- package/src/renderer.ts +4 -5
- package/src/router.ts +10 -7
- package/wasm-browser/hypen_engine_bg.wasm +0 -0
- package/wasm-browser/package.json +1 -1
- package/wasm-node/hypen_engine_bg.wasm +0 -0
- package/wasm-node/package.json +4 -3
- package/dist/src/context.js +0 -182
- package/dist/src/context.js.map +0 -11
- package/dist/src/engine.browser.js +0 -137
- package/dist/src/engine.browser.js.map +0 -10
- package/dist/src/engine.js +0 -119
- package/dist/src/engine.js.map +0 -10
- package/dist/src/events.js +0 -80
- package/dist/src/events.js.map +0 -10
- package/dist/src/index.browser.js.map +0 -22
- package/dist/src/index.js.map +0 -31
- package/dist/src/loader.js +0 -85
- package/dist/src/loader.js.map +0 -10
- package/dist/src/plugin.js +0 -134
- package/dist/src/plugin.js.map +0 -10
- package/dist/src/remote/client.js.map +0 -13
- package/dist/src/remote/index.js.map +0 -19
- package/dist/src/renderer.js +0 -66
- package/dist/src/renderer.js.map +0 -10
- package/dist/src/router.js.map +0 -11
- /package/dist/{src/remote → remote}/types.js +0 -0
- /package/dist/{src/remote → remote}/types.js.map +0 -0
- /package/dist/{src/resolver.js → resolver.js} +0 -0
- /package/dist/{src/resolver.js.map → resolver.js.map} +0 -0
- /package/dist/{src/state.js → state.js} +0 -0
- /package/dist/{src/state.js.map → state.js.map} +0 -0
|
@@ -10,6 +10,205 @@ var __export = (target, all) => {
|
|
|
10
10
|
};
|
|
11
11
|
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
12
12
|
|
|
13
|
+
// src/logger.ts
|
|
14
|
+
function isProduction() {
|
|
15
|
+
if (typeof process !== "undefined" && process.env) {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
function setLogLevel(level) {
|
|
21
|
+
config.level = level;
|
|
22
|
+
}
|
|
23
|
+
function getLogLevel() {
|
|
24
|
+
return config.level;
|
|
25
|
+
}
|
|
26
|
+
function configureLogger(options) {
|
|
27
|
+
config = { ...config, ...options };
|
|
28
|
+
}
|
|
29
|
+
function enableLogging() {
|
|
30
|
+
config.level = "debug";
|
|
31
|
+
}
|
|
32
|
+
function disableLogging() {
|
|
33
|
+
config.level = "none";
|
|
34
|
+
}
|
|
35
|
+
function setDebugMode(enabled) {
|
|
36
|
+
config.level = enabled ? "debug" : "error";
|
|
37
|
+
}
|
|
38
|
+
function isDebugMode() {
|
|
39
|
+
return config.level === "debug";
|
|
40
|
+
}
|
|
41
|
+
function shouldLog(level) {
|
|
42
|
+
return LOG_LEVEL_ORDER[level] >= LOG_LEVEL_ORDER[config.level];
|
|
43
|
+
}
|
|
44
|
+
function formatTag(tag, level) {
|
|
45
|
+
const timestamp = config.timestamps ? `${new Date().toISOString()} ` : "";
|
|
46
|
+
if (config.colors && level !== "none") {
|
|
47
|
+
const color = LOG_LEVEL_COLORS[level];
|
|
48
|
+
return `${timestamp}${color}[${tag}]${RESET_COLOR}`;
|
|
49
|
+
}
|
|
50
|
+
return `${timestamp}[${tag}]`;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
class Logger {
|
|
54
|
+
tag;
|
|
55
|
+
constructor(tag) {
|
|
56
|
+
this.tag = tag;
|
|
57
|
+
}
|
|
58
|
+
debug(...args) {
|
|
59
|
+
if (!shouldLog("debug"))
|
|
60
|
+
return;
|
|
61
|
+
if (config.handler) {
|
|
62
|
+
config.handler.debug(this.tag, ...args);
|
|
63
|
+
} else {
|
|
64
|
+
console.log(formatTag(this.tag, "debug"), ...args);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
info(...args) {
|
|
68
|
+
if (!shouldLog("info"))
|
|
69
|
+
return;
|
|
70
|
+
if (config.handler) {
|
|
71
|
+
config.handler.info(this.tag, ...args);
|
|
72
|
+
} else {
|
|
73
|
+
console.info(formatTag(this.tag, "info"), ...args);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
warn(...args) {
|
|
77
|
+
if (!shouldLog("warn"))
|
|
78
|
+
return;
|
|
79
|
+
if (config.handler) {
|
|
80
|
+
config.handler.warn(this.tag, ...args);
|
|
81
|
+
} else {
|
|
82
|
+
console.warn(formatTag(this.tag, "warn"), ...args);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
error(...args) {
|
|
86
|
+
if (!shouldLog("error"))
|
|
87
|
+
return;
|
|
88
|
+
if (config.handler) {
|
|
89
|
+
config.handler.error(this.tag, ...args);
|
|
90
|
+
} else {
|
|
91
|
+
console.error(formatTag(this.tag, "error"), ...args);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
time(label, fn) {
|
|
95
|
+
if (!shouldLog("debug")) {
|
|
96
|
+
return fn();
|
|
97
|
+
}
|
|
98
|
+
const start = performance.now();
|
|
99
|
+
try {
|
|
100
|
+
return fn();
|
|
101
|
+
} finally {
|
|
102
|
+
const duration = performance.now() - start;
|
|
103
|
+
this.debug(`${label}: ${duration.toFixed(2)}ms`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
async timeAsync(label, fn) {
|
|
107
|
+
if (!shouldLog("debug")) {
|
|
108
|
+
return fn();
|
|
109
|
+
}
|
|
110
|
+
const start = performance.now();
|
|
111
|
+
try {
|
|
112
|
+
return await fn();
|
|
113
|
+
} finally {
|
|
114
|
+
const duration = performance.now() - start;
|
|
115
|
+
this.debug(`${label}: ${duration.toFixed(2)}ms`);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
child(subTag) {
|
|
119
|
+
return new Logger(`${this.tag}:${subTag}`);
|
|
120
|
+
}
|
|
121
|
+
debugIf(condition, ...args) {
|
|
122
|
+
if (condition)
|
|
123
|
+
this.debug(...args);
|
|
124
|
+
}
|
|
125
|
+
warnIf(condition, ...args) {
|
|
126
|
+
if (condition)
|
|
127
|
+
this.warn(...args);
|
|
128
|
+
}
|
|
129
|
+
errorIf(condition, ...args) {
|
|
130
|
+
if (condition)
|
|
131
|
+
this.error(...args);
|
|
132
|
+
}
|
|
133
|
+
loggedOnce = new Set;
|
|
134
|
+
warnOnce(key, ...args) {
|
|
135
|
+
if (this.loggedOnce.has(key))
|
|
136
|
+
return;
|
|
137
|
+
this.loggedOnce.add(key);
|
|
138
|
+
this.warn(...args);
|
|
139
|
+
}
|
|
140
|
+
debugOnce(key, ...args) {
|
|
141
|
+
if (this.loggedOnce.has(key))
|
|
142
|
+
return;
|
|
143
|
+
this.loggedOnce.add(key);
|
|
144
|
+
this.debug(...args);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
function createLogger(tag) {
|
|
148
|
+
return new Logger(tag);
|
|
149
|
+
}
|
|
150
|
+
var LOG_LEVEL_ORDER, LOG_LEVEL_COLORS, RESET_COLOR = "\x1B[0m", config, logger, log, frameworkLoggers;
|
|
151
|
+
var init_logger = __esm(() => {
|
|
152
|
+
LOG_LEVEL_ORDER = {
|
|
153
|
+
debug: 0,
|
|
154
|
+
info: 1,
|
|
155
|
+
warn: 2,
|
|
156
|
+
error: 3,
|
|
157
|
+
none: 4
|
|
158
|
+
};
|
|
159
|
+
LOG_LEVEL_COLORS = {
|
|
160
|
+
debug: "\x1B[36m",
|
|
161
|
+
info: "\x1B[32m",
|
|
162
|
+
warn: "\x1B[33m",
|
|
163
|
+
error: "\x1B[31m"
|
|
164
|
+
};
|
|
165
|
+
config = {
|
|
166
|
+
level: isProduction() ? "error" : "debug",
|
|
167
|
+
colors: true,
|
|
168
|
+
timestamps: false
|
|
169
|
+
};
|
|
170
|
+
logger = createLogger("Hypen");
|
|
171
|
+
log = {
|
|
172
|
+
debug: (tag, ...args) => {
|
|
173
|
+
if (!shouldLog("debug"))
|
|
174
|
+
return;
|
|
175
|
+
console.log(formatTag(tag, "debug"), ...args);
|
|
176
|
+
},
|
|
177
|
+
info: (tag, ...args) => {
|
|
178
|
+
if (!shouldLog("info"))
|
|
179
|
+
return;
|
|
180
|
+
console.info(formatTag(tag, "info"), ...args);
|
|
181
|
+
},
|
|
182
|
+
warn: (tag, ...args) => {
|
|
183
|
+
if (!shouldLog("warn"))
|
|
184
|
+
return;
|
|
185
|
+
console.warn(formatTag(tag, "warn"), ...args);
|
|
186
|
+
},
|
|
187
|
+
error: (tag, ...args) => {
|
|
188
|
+
if (!shouldLog("error"))
|
|
189
|
+
return;
|
|
190
|
+
console.error(formatTag(tag, "error"), ...args);
|
|
191
|
+
}
|
|
192
|
+
};
|
|
193
|
+
frameworkLoggers = {
|
|
194
|
+
hypen: createLogger("Hypen"),
|
|
195
|
+
engine: createLogger("Engine"),
|
|
196
|
+
router: createLogger("Router"),
|
|
197
|
+
state: createLogger("State"),
|
|
198
|
+
events: createLogger("Events"),
|
|
199
|
+
remote: createLogger("Remote"),
|
|
200
|
+
renderer: createLogger("Renderer"),
|
|
201
|
+
module: createLogger("Module"),
|
|
202
|
+
lifecycle: createLogger("Lifecycle"),
|
|
203
|
+
loader: createLogger("Loader"),
|
|
204
|
+
context: createLogger("Context"),
|
|
205
|
+
discovery: createLogger("Discovery"),
|
|
206
|
+
plugin: createLogger("Plugin"),
|
|
207
|
+
canvas: createLogger("Canvas"),
|
|
208
|
+
debug: createLogger("Debug")
|
|
209
|
+
};
|
|
210
|
+
});
|
|
211
|
+
|
|
13
212
|
// src/state.ts
|
|
14
213
|
function deepClone(obj) {
|
|
15
214
|
if (obj === null || typeof obj !== "object") {
|
|
@@ -396,192 +595,6 @@ var init_result = __esm(() => {
|
|
|
396
595
|
};
|
|
397
596
|
});
|
|
398
597
|
|
|
399
|
-
// src/logger.ts
|
|
400
|
-
function isProduction() {
|
|
401
|
-
if (typeof process !== "undefined" && process.env) {
|
|
402
|
-
return false;
|
|
403
|
-
}
|
|
404
|
-
return false;
|
|
405
|
-
}
|
|
406
|
-
function setLogLevel(level) {
|
|
407
|
-
config.level = level;
|
|
408
|
-
}
|
|
409
|
-
function getLogLevel() {
|
|
410
|
-
return config.level;
|
|
411
|
-
}
|
|
412
|
-
function configureLogger(options) {
|
|
413
|
-
config = { ...config, ...options };
|
|
414
|
-
}
|
|
415
|
-
function enableLogging() {
|
|
416
|
-
config.level = "debug";
|
|
417
|
-
}
|
|
418
|
-
function disableLogging() {
|
|
419
|
-
config.level = "none";
|
|
420
|
-
}
|
|
421
|
-
function shouldLog(level) {
|
|
422
|
-
return LOG_LEVEL_ORDER[level] >= LOG_LEVEL_ORDER[config.level];
|
|
423
|
-
}
|
|
424
|
-
function formatTag(tag, level) {
|
|
425
|
-
const timestamp = config.timestamps ? `${new Date().toISOString()} ` : "";
|
|
426
|
-
if (config.colors && level !== "none") {
|
|
427
|
-
const color = LOG_LEVEL_COLORS[level];
|
|
428
|
-
return `${timestamp}${color}[${tag}]${RESET_COLOR}`;
|
|
429
|
-
}
|
|
430
|
-
return `${timestamp}[${tag}]`;
|
|
431
|
-
}
|
|
432
|
-
|
|
433
|
-
class Logger {
|
|
434
|
-
tag;
|
|
435
|
-
constructor(tag) {
|
|
436
|
-
this.tag = tag;
|
|
437
|
-
}
|
|
438
|
-
debug(...args) {
|
|
439
|
-
if (!shouldLog("debug"))
|
|
440
|
-
return;
|
|
441
|
-
if (config.handler) {
|
|
442
|
-
config.handler.debug(this.tag, ...args);
|
|
443
|
-
} else {
|
|
444
|
-
console.log(formatTag(this.tag, "debug"), ...args);
|
|
445
|
-
}
|
|
446
|
-
}
|
|
447
|
-
info(...args) {
|
|
448
|
-
if (!shouldLog("info"))
|
|
449
|
-
return;
|
|
450
|
-
if (config.handler) {
|
|
451
|
-
config.handler.info(this.tag, ...args);
|
|
452
|
-
} else {
|
|
453
|
-
console.info(formatTag(this.tag, "info"), ...args);
|
|
454
|
-
}
|
|
455
|
-
}
|
|
456
|
-
warn(...args) {
|
|
457
|
-
if (!shouldLog("warn"))
|
|
458
|
-
return;
|
|
459
|
-
if (config.handler) {
|
|
460
|
-
config.handler.warn(this.tag, ...args);
|
|
461
|
-
} else {
|
|
462
|
-
console.warn(formatTag(this.tag, "warn"), ...args);
|
|
463
|
-
}
|
|
464
|
-
}
|
|
465
|
-
error(...args) {
|
|
466
|
-
if (!shouldLog("error"))
|
|
467
|
-
return;
|
|
468
|
-
if (config.handler) {
|
|
469
|
-
config.handler.error(this.tag, ...args);
|
|
470
|
-
} else {
|
|
471
|
-
console.error(formatTag(this.tag, "error"), ...args);
|
|
472
|
-
}
|
|
473
|
-
}
|
|
474
|
-
time(label, fn) {
|
|
475
|
-
if (!shouldLog("debug")) {
|
|
476
|
-
return fn();
|
|
477
|
-
}
|
|
478
|
-
const start = performance.now();
|
|
479
|
-
try {
|
|
480
|
-
return fn();
|
|
481
|
-
} finally {
|
|
482
|
-
const duration = performance.now() - start;
|
|
483
|
-
this.debug(`${label}: ${duration.toFixed(2)}ms`);
|
|
484
|
-
}
|
|
485
|
-
}
|
|
486
|
-
async timeAsync(label, fn) {
|
|
487
|
-
if (!shouldLog("debug")) {
|
|
488
|
-
return fn();
|
|
489
|
-
}
|
|
490
|
-
const start = performance.now();
|
|
491
|
-
try {
|
|
492
|
-
return await fn();
|
|
493
|
-
} finally {
|
|
494
|
-
const duration = performance.now() - start;
|
|
495
|
-
this.debug(`${label}: ${duration.toFixed(2)}ms`);
|
|
496
|
-
}
|
|
497
|
-
}
|
|
498
|
-
child(subTag) {
|
|
499
|
-
return new Logger(`${this.tag}:${subTag}`);
|
|
500
|
-
}
|
|
501
|
-
debugIf(condition, ...args) {
|
|
502
|
-
if (condition)
|
|
503
|
-
this.debug(...args);
|
|
504
|
-
}
|
|
505
|
-
warnIf(condition, ...args) {
|
|
506
|
-
if (condition)
|
|
507
|
-
this.warn(...args);
|
|
508
|
-
}
|
|
509
|
-
errorIf(condition, ...args) {
|
|
510
|
-
if (condition)
|
|
511
|
-
this.error(...args);
|
|
512
|
-
}
|
|
513
|
-
loggedOnce = new Set;
|
|
514
|
-
warnOnce(key, ...args) {
|
|
515
|
-
if (this.loggedOnce.has(key))
|
|
516
|
-
return;
|
|
517
|
-
this.loggedOnce.add(key);
|
|
518
|
-
this.warn(...args);
|
|
519
|
-
}
|
|
520
|
-
debugOnce(key, ...args) {
|
|
521
|
-
if (this.loggedOnce.has(key))
|
|
522
|
-
return;
|
|
523
|
-
this.loggedOnce.add(key);
|
|
524
|
-
this.debug(...args);
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
function createLogger(tag) {
|
|
528
|
-
return new Logger(tag);
|
|
529
|
-
}
|
|
530
|
-
var LOG_LEVEL_ORDER, LOG_LEVEL_COLORS, RESET_COLOR = "\x1B[0m", config, logger, log, frameworkLoggers;
|
|
531
|
-
var init_logger = __esm(() => {
|
|
532
|
-
LOG_LEVEL_ORDER = {
|
|
533
|
-
debug: 0,
|
|
534
|
-
info: 1,
|
|
535
|
-
warn: 2,
|
|
536
|
-
error: 3,
|
|
537
|
-
none: 4
|
|
538
|
-
};
|
|
539
|
-
LOG_LEVEL_COLORS = {
|
|
540
|
-
debug: "\x1B[36m",
|
|
541
|
-
info: "\x1B[32m",
|
|
542
|
-
warn: "\x1B[33m",
|
|
543
|
-
error: "\x1B[31m"
|
|
544
|
-
};
|
|
545
|
-
config = {
|
|
546
|
-
level: isProduction() ? "error" : "debug",
|
|
547
|
-
colors: true,
|
|
548
|
-
timestamps: false
|
|
549
|
-
};
|
|
550
|
-
logger = createLogger("Hypen");
|
|
551
|
-
log = {
|
|
552
|
-
debug: (tag, ...args) => {
|
|
553
|
-
if (!shouldLog("debug"))
|
|
554
|
-
return;
|
|
555
|
-
console.log(formatTag(tag, "debug"), ...args);
|
|
556
|
-
},
|
|
557
|
-
info: (tag, ...args) => {
|
|
558
|
-
if (!shouldLog("info"))
|
|
559
|
-
return;
|
|
560
|
-
console.info(formatTag(tag, "info"), ...args);
|
|
561
|
-
},
|
|
562
|
-
warn: (tag, ...args) => {
|
|
563
|
-
if (!shouldLog("warn"))
|
|
564
|
-
return;
|
|
565
|
-
console.warn(formatTag(tag, "warn"), ...args);
|
|
566
|
-
},
|
|
567
|
-
error: (tag, ...args) => {
|
|
568
|
-
if (!shouldLog("error"))
|
|
569
|
-
return;
|
|
570
|
-
console.error(formatTag(tag, "error"), ...args);
|
|
571
|
-
}
|
|
572
|
-
};
|
|
573
|
-
frameworkLoggers = {
|
|
574
|
-
engine: createLogger("Engine"),
|
|
575
|
-
router: createLogger("Router"),
|
|
576
|
-
state: createLogger("State"),
|
|
577
|
-
events: createLogger("Events"),
|
|
578
|
-
remote: createLogger("Remote"),
|
|
579
|
-
renderer: createLogger("Renderer"),
|
|
580
|
-
module: createLogger("Module"),
|
|
581
|
-
lifecycle: createLogger("Lifecycle")
|
|
582
|
-
};
|
|
583
|
-
});
|
|
584
|
-
|
|
585
598
|
// src/app.ts
|
|
586
599
|
var exports_app = {};
|
|
587
600
|
__export(exports_app, {
|
|
@@ -688,9 +701,9 @@ class HypenModuleInstance {
|
|
|
688
701
|
});
|
|
689
702
|
this.engine.setModule(definition.name || "AnonymousModule", definition.actions, definition.stateKeys, getStateSnapshot(this.state));
|
|
690
703
|
for (const [actionName, handler] of definition.handlers.onAction) {
|
|
691
|
-
|
|
704
|
+
log3.debug(`Registering action handler: ${actionName} for module ${definition.name}`);
|
|
692
705
|
this.engine.onAction(actionName, async (action) => {
|
|
693
|
-
|
|
706
|
+
log3.debug(`Action handler fired: ${actionName}`, action);
|
|
694
707
|
const actionCtx = {
|
|
695
708
|
name: action.name,
|
|
696
709
|
payload: action.payload,
|
|
@@ -712,7 +725,7 @@ class HypenModuleInstance {
|
|
|
712
725
|
throw result.error;
|
|
713
726
|
}
|
|
714
727
|
} else {
|
|
715
|
-
|
|
728
|
+
log3.debug(`Action handler completed: ${actionName}`);
|
|
716
729
|
}
|
|
717
730
|
});
|
|
718
731
|
}
|
|
@@ -767,7 +780,7 @@ class HypenModuleInstance {
|
|
|
767
780
|
}
|
|
768
781
|
}
|
|
769
782
|
} catch (handlerError) {
|
|
770
|
-
|
|
783
|
+
log3.error("Error in onError handler:", handlerError);
|
|
771
784
|
}
|
|
772
785
|
}
|
|
773
786
|
if (this.globalContext) {
|
|
@@ -778,7 +791,7 @@ class HypenModuleInstance {
|
|
|
778
791
|
context: eventContext
|
|
779
792
|
});
|
|
780
793
|
}
|
|
781
|
-
|
|
794
|
+
log3.error(`${context.actionName ? `Action "${context.actionName}"` : `Lifecycle "${context.lifecycle}"`} error:`, error);
|
|
782
795
|
return false;
|
|
783
796
|
}
|
|
784
797
|
async callCreatedHandler() {
|
|
@@ -808,17 +821,19 @@ class HypenModuleInstance {
|
|
|
808
821
|
Object.assign(this.state, patch);
|
|
809
822
|
}
|
|
810
823
|
}
|
|
811
|
-
var
|
|
824
|
+
var log3, app;
|
|
812
825
|
var init_app = __esm(() => {
|
|
813
826
|
init_result();
|
|
814
827
|
init_state();
|
|
815
828
|
init_logger();
|
|
816
|
-
|
|
829
|
+
log3 = createLogger("ModuleInstance");
|
|
817
830
|
app = new HypenApp;
|
|
818
831
|
});
|
|
819
832
|
|
|
820
833
|
// src/engine.ts
|
|
834
|
+
init_logger();
|
|
821
835
|
import { WasmEngine } from "../wasm-node/hypen_engine.js";
|
|
836
|
+
var log2 = frameworkLoggers.engine;
|
|
822
837
|
function unwrapForWasm(value) {
|
|
823
838
|
if (value === null || typeof value !== "object") {
|
|
824
839
|
return value;
|
|
@@ -879,13 +894,13 @@ class Engine {
|
|
|
879
894
|
return;
|
|
880
895
|
}
|
|
881
896
|
engine.updateStateSparse(paths, unwrapForWasm(values));
|
|
882
|
-
|
|
897
|
+
log2.debug("State changed (sparse):", paths);
|
|
883
898
|
}
|
|
884
899
|
notifyStateChangeFull(paths, currentState) {
|
|
885
900
|
const engine = this.ensureInitialized();
|
|
886
901
|
engine.updateState(unwrapForWasm(currentState));
|
|
887
902
|
if (paths.length > 0) {
|
|
888
|
-
|
|
903
|
+
log2.debug("State changed (full):", paths);
|
|
889
904
|
}
|
|
890
905
|
}
|
|
891
906
|
updateState(statePatch) {
|
|
@@ -899,7 +914,7 @@ class Engine {
|
|
|
899
914
|
onAction(actionName, handler) {
|
|
900
915
|
const engine = this.ensureInitialized();
|
|
901
916
|
engine.onAction(actionName, (action) => {
|
|
902
|
-
Promise.resolve(handler(action)).catch(
|
|
917
|
+
Promise.resolve(handler(action)).catch((err) => log2.error("Action handler error:", err));
|
|
903
918
|
});
|
|
904
919
|
}
|
|
905
920
|
setModule(name, actions, stateKeys, initialState) {
|
|
@@ -920,10 +935,9 @@ class Engine {
|
|
|
920
935
|
}
|
|
921
936
|
}
|
|
922
937
|
|
|
923
|
-
// src/remote/client.ts
|
|
924
|
-
init_result();
|
|
925
|
-
|
|
926
938
|
// src/disposable.ts
|
|
939
|
+
init_logger();
|
|
940
|
+
var log4 = frameworkLoggers.lifecycle;
|
|
927
941
|
function isDisposable(obj) {
|
|
928
942
|
return obj !== null && typeof obj === "object" && "dispose" in obj && typeof obj.dispose === "function";
|
|
929
943
|
}
|
|
@@ -955,7 +969,7 @@ class DisposableStack {
|
|
|
955
969
|
try {
|
|
956
970
|
item.dispose();
|
|
957
971
|
} catch (error) {
|
|
958
|
-
|
|
972
|
+
log4.error("Error during dispose:", error);
|
|
959
973
|
}
|
|
960
974
|
}
|
|
961
975
|
}
|
|
@@ -1046,7 +1060,7 @@ function compositeDisposable(...disposables) {
|
|
|
1046
1060
|
try {
|
|
1047
1061
|
d.dispose();
|
|
1048
1062
|
} catch (error) {
|
|
1049
|
-
|
|
1063
|
+
log4.error("Error during dispose:", error);
|
|
1050
1064
|
}
|
|
1051
1065
|
}
|
|
1052
1066
|
}
|
|
@@ -1069,6 +1083,9 @@ function usingSync(resource, fn) {
|
|
|
1069
1083
|
}
|
|
1070
1084
|
}
|
|
1071
1085
|
|
|
1086
|
+
// src/remote/client.ts
|
|
1087
|
+
init_result();
|
|
1088
|
+
|
|
1072
1089
|
// src/retry.ts
|
|
1073
1090
|
init_result();
|
|
1074
1091
|
var DEFAULT_OPTIONS = {
|
|
@@ -1196,6 +1213,9 @@ var RetryPresets = {
|
|
|
1196
1213
|
};
|
|
1197
1214
|
|
|
1198
1215
|
// src/remote/client.ts
|
|
1216
|
+
init_logger();
|
|
1217
|
+
var log5 = frameworkLoggers.remote;
|
|
1218
|
+
|
|
1199
1219
|
class RemoteEngine {
|
|
1200
1220
|
ws = null;
|
|
1201
1221
|
url;
|
|
@@ -1302,7 +1322,7 @@ class RemoteEngine {
|
|
|
1302
1322
|
}
|
|
1303
1323
|
dispatchAction(action, payload) {
|
|
1304
1324
|
if (this.state !== "connected" || !this.ws) {
|
|
1305
|
-
|
|
1325
|
+
log5.warn("Cannot dispatch action: not connected");
|
|
1306
1326
|
return;
|
|
1307
1327
|
}
|
|
1308
1328
|
const message = {
|
|
@@ -1375,7 +1395,7 @@ class RemoteEngine {
|
|
|
1375
1395
|
break;
|
|
1376
1396
|
}
|
|
1377
1397
|
} catch (e) {
|
|
1378
|
-
|
|
1398
|
+
log5.error("Error handling remote message:", e);
|
|
1379
1399
|
const error = e instanceof Error ? e : new Error(String(e));
|
|
1380
1400
|
this.errorCallbacks.forEach((cb) => cb(error));
|
|
1381
1401
|
}
|
|
@@ -1404,7 +1424,7 @@ class RemoteEngine {
|
|
|
1404
1424
|
}
|
|
1405
1425
|
handlePatch(message) {
|
|
1406
1426
|
if (message.revision <= this.currentRevision) {
|
|
1407
|
-
|
|
1427
|
+
log5.warn(`Out of order patch: expected > ${this.currentRevision}, got ${message.revision}`);
|
|
1408
1428
|
return;
|
|
1409
1429
|
}
|
|
1410
1430
|
this.currentRevision = message.revision;
|
|
@@ -1430,15 +1450,16 @@ class RemoteEngine {
|
|
|
1430
1450
|
maxDelayMs: 30000,
|
|
1431
1451
|
jitter: 0.1,
|
|
1432
1452
|
onRetry: (attempt, error) => {
|
|
1433
|
-
|
|
1453
|
+
log5.debug(`Reconnection attempt ${attempt}/${this.options.maxReconnectAttempts} failed: ${error.message}`);
|
|
1434
1454
|
}
|
|
1435
1455
|
}).catch((error) => {
|
|
1436
|
-
|
|
1456
|
+
log5.error("Max reconnection attempts reached:", error.message);
|
|
1437
1457
|
this.errorCallbacks.forEach((cb) => cb(new ConnectionError(this.url, error, this.options.maxReconnectAttempts)));
|
|
1438
1458
|
});
|
|
1439
1459
|
}, this.options.reconnectInterval);
|
|
1440
1460
|
}
|
|
1441
1461
|
}
|
|
1462
|
+
|
|
1442
1463
|
// src/remote/server.ts
|
|
1443
1464
|
init_app();
|
|
1444
1465
|
|
|
@@ -1567,6 +1588,9 @@ class SessionManager {
|
|
|
1567
1588
|
}
|
|
1568
1589
|
|
|
1569
1590
|
// src/remote/server.ts
|
|
1591
|
+
init_logger();
|
|
1592
|
+
var log6 = frameworkLoggers.remote;
|
|
1593
|
+
|
|
1570
1594
|
class RemoteServer {
|
|
1571
1595
|
_module = null;
|
|
1572
1596
|
_moduleName = "App";
|
|
@@ -1643,7 +1667,7 @@ class RemoteServer {
|
|
|
1643
1667
|
return new Response("Hypen Remote Server", { status: 200 });
|
|
1644
1668
|
}
|
|
1645
1669
|
});
|
|
1646
|
-
|
|
1670
|
+
log6.info(`Hypen app streaming on ws://${hostname}:${finalPort}`);
|
|
1647
1671
|
return this;
|
|
1648
1672
|
}
|
|
1649
1673
|
stop() {
|
|
@@ -1686,7 +1710,7 @@ class RemoteServer {
|
|
|
1686
1710
|
}
|
|
1687
1711
|
}, 1000);
|
|
1688
1712
|
} catch (error) {
|
|
1689
|
-
|
|
1713
|
+
log6.error("Error handling WebSocket open:", error);
|
|
1690
1714
|
ws.close(1011, "Internal server error");
|
|
1691
1715
|
}
|
|
1692
1716
|
}
|
|
@@ -1857,7 +1881,7 @@ class RemoteServer {
|
|
|
1857
1881
|
break;
|
|
1858
1882
|
}
|
|
1859
1883
|
} catch (error) {
|
|
1860
|
-
|
|
1884
|
+
log6.error("Error handling WebSocket message:", error);
|
|
1861
1885
|
}
|
|
1862
1886
|
}
|
|
1863
1887
|
async handleClose(ws) {
|
|
@@ -1942,4 +1966,4 @@ export {
|
|
|
1942
1966
|
RemoteEngine
|
|
1943
1967
|
};
|
|
1944
1968
|
|
|
1945
|
-
//# debugId=
|
|
1969
|
+
//# debugId=69D6C15931380C3D64756E2164756E21
|