juxscript 1.0.87 → 1.0.88

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.
@@ -2,7 +2,8 @@ import { List } from './list/component.js';
2
2
  import { Grid } from './grid/component.js';
3
3
  import { Input } from './input/component.js';
4
4
  import { Element } from './element/component.js';
5
- export { List, Grid, Input, Element };
5
+ import { JuxError } from './juxerror/component.js';
6
+ export { List, Grid, Input, Element, JuxError };
6
7
  export declare const tree: () => Record<string, any>;
7
8
  export declare const use: (query: string) => any;
8
9
  export declare const engines: () => string[];
@@ -21,6 +22,14 @@ export declare const juxV2: {
21
22
  List: typeof List;
22
23
  Grid: typeof Grid;
23
24
  Input: typeof Input;
25
+ JuxError: typeof JuxError;
26
+ Element: typeof Element;
27
+ reflection: {
28
+ tree: () => Record<string, any>;
29
+ use: (query: string) => any;
30
+ engines: () => string[];
31
+ log: () => void;
32
+ };
24
33
  events: import("./base/GlobalBus.js").JuxGlobalBus;
25
34
  plugins: {
26
35
  ServerSQLitePlugin: (config: import("./plugins/ServerSQLitePlugin.js").ServerSQLiteConfig) => import("./base/BaseEngine.js").JuxServiceContract<import("./base/BaseEngine.js").BaseEngine<any>>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAGjD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAwCtC,eAAO,MAAM,IAAI,2BAmGhB,CAAC;AAEF,eAAO,MAAM,GAAG,GAAI,OAAO,MAAM,QA8BhC,CAAC;AAEF,eAAO,MAAM,OAAO,gBAOnB,CAAC;AAEF,eAAO,MAAM,GAAG,YAsBf,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM;;iBArEQ,MAAM;;;CA0EhC,CAAC;AASF,eAAO,MAAM,KAAK;;;;;;;;;;;CAWjB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AAwChD,eAAO,MAAM,IAAI,2BAmGhB,CAAC;AAEF,eAAO,MAAM,GAAG,GAAI,OAAO,MAAM,QA8BhC,CAAC;AAEF,eAAO,MAAM,OAAO,gBAOnB,CAAC;AAEF,eAAO,MAAM,GAAG,YAsBf,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM;;iBArEQ,MAAM;;;CA0EhC,CAAC;AASF,eAAO,MAAM,KAAK;;;;;;;;qBAnFS,MAAM;;;;;;;;;;;CAiGhC,CAAC"}
@@ -7,8 +7,9 @@ import { List } from './list/component.js';
7
7
  import { Grid } from './grid/component.js';
8
8
  import { Input } from './input/component.js';
9
9
  import { Element } from './element/component.js';
10
+ import { JuxError } from './juxerror/component.js';
10
11
  // Export individually
11
- export { List, Grid, Input, Element };
12
+ export { List, Grid, Input, Element, JuxError };
12
13
  /**
13
14
  * Curated documentation for core framework capabilities.
14
15
  * These strings are appended to the reflection data in juxDef.tree.
@@ -208,6 +209,9 @@ export const juxV2 = {
208
209
  List,
209
210
  Grid,
210
211
  Input,
212
+ JuxError,
213
+ Element,
214
+ reflection: juxDef,
211
215
  events: GlobalBus,
212
216
  plugins: {
213
217
  ServerSQLitePlugin,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
@@ -12,8 +12,10 @@ import { Input } from './input/component.js';
12
12
 
13
13
  import { Element } from './element/component.js';
14
14
 
15
+ import { JuxError } from './juxerror/component.js';
16
+
15
17
  // Export individually
16
- export { List, Grid, Input, Element };
18
+ export { List, Grid, Input, Element, JuxError };
17
19
 
18
20
  /**
19
21
  * Curated documentation for core framework capabilities.
@@ -241,6 +243,9 @@ export const juxV2 = {
241
243
  List,
242
244
  Grid,
243
245
  Input,
246
+ JuxError,
247
+ Element,
248
+ reflection: juxDef,
244
249
  events: GlobalBus,
245
250
  plugins: {
246
251
  ServerSQLitePlugin,
@@ -0,0 +1,28 @@
1
+ import { JuxErrorEngine, JuxErrorOptions } from './engine.js';
2
+ import { JuxErrorSkin } from './skin.js';
3
+ export type JuxErrorComponent = JuxErrorEngine & {
4
+ render: (target?: string | HTMLElement) => JuxErrorComponent;
5
+ injectCSS: (id: string, cssContent: string) => void;
6
+ installGlobalHandler: () => JuxErrorComponent;
7
+ uninstallGlobalHandler: () => JuxErrorComponent;
8
+ };
9
+ /**
10
+ * Factory Function
11
+ * usage: jux.error('my-error').render().installGlobalHandler()
12
+ *
13
+ * Strategy: FUNCTIONAL COMPOSITION
14
+ * We instantiate the pure Logic (Engine) and the View (Skin).
15
+ * We augment the Engine instance with a function, .render(), that delegates to the Skin method, renderSkin().
16
+ * This keeps the Engine class pure/headless, while offering a convenient API.
17
+ */
18
+ export declare function JuxError(id?: string, options?: JuxErrorOptions): JuxErrorComponent;
19
+ export declare namespace JuxError {
20
+ var getInstance: () => JuxErrorComponent;
21
+ var show: (error: Error | string) => void;
22
+ var showCompileError: (file: string, line: number, message: string, code?: string) => void;
23
+ var showNetworkError: (url: string, status: number, message: string) => void;
24
+ var dismiss: () => void;
25
+ }
26
+ export { JuxErrorEngine, JuxErrorSkin };
27
+ export type { JuxErrorState, StackFrame } from './engine.js';
28
+ //# sourceMappingURL=component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG;IAC7C,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,KAAK,iBAAiB,CAAC;IAC7D,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;IAC9C,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;CACnD,CAAC;AAMF;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,EAAE,GAAE,MAAoB,EAAE,OAAO,GAAE,eAAoB,GAAG,iBAAiB,CAuDnG;yBAvDe,QAAQ;2BA8DG,iBAAiB;sBAYpB,KAAK,GAAG,MAAM,KAAG,IAAI;iCAOV,MAAM,QAAQ,MAAM,WAAW,MAAM,SAAS,MAAM,KAAG,IAAI;gCAO5D,MAAM,UAAU,MAAM,WAAW,MAAM,KAAG,IAAI;uBAOzD,IAAI;;AAI3B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC;AACxC,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { JuxErrorEngine } from './engine.js';
2
+ import { JuxErrorSkin } from './skin.js';
3
+ // Module-level singleton reference
4
+ let _instance = null;
5
+ let _cleanupGlobalHandler = null;
6
+ /**
7
+ * Factory Function
8
+ * usage: jux.error('my-error').render().installGlobalHandler()
9
+ *
10
+ * Strategy: FUNCTIONAL COMPOSITION
11
+ * We instantiate the pure Logic (Engine) and the View (Skin).
12
+ * We augment the Engine instance with a function, .render(), that delegates to the Skin method, renderSkin().
13
+ * This keeps the Engine class pure/headless, while offering a convenient API.
14
+ */
15
+ export function JuxError(id = 'jux-error', options = {}) {
16
+ // 1. Create the Logic
17
+ const engine = new JuxErrorEngine(id, options);
18
+ // Registration (Debug/Introspection)
19
+ if (typeof window !== 'undefined') {
20
+ // @ts-ignore
21
+ window.juxEngines = window.juxEngines || {};
22
+ // @ts-ignore
23
+ window.juxEngines[id] = engine;
24
+ // @ts-ignore
25
+ window.juxEnginesKeys = Object.keys(window.juxEngines);
26
+ }
27
+ // 2. Create the View (wired to the engine)
28
+ const skin = new JuxErrorSkin(engine);
29
+ // 3. Augment the Engine with Render capability
30
+ // @ts-ignore - Dynamic augmentation
31
+ engine.render = (target) => {
32
+ const container = typeof target === 'string'
33
+ ? document.getElementById(target)
34
+ : target || document.body;
35
+ if (container) {
36
+ skin.renderSkin(container);
37
+ }
38
+ else {
39
+ console.warn(`Jux Error: Target ${target} not found.`);
40
+ }
41
+ return engine;
42
+ };
43
+ // 4. Augment with Styling capability
44
+ // @ts-ignore
45
+ engine.injectCSS = (id, cssContent) => skin.injectCSS(id, cssContent);
46
+ // 5. Augment with Global Handler capability
47
+ // @ts-ignore
48
+ engine.installGlobalHandler = () => {
49
+ if (!_cleanupGlobalHandler) {
50
+ _cleanupGlobalHandler = JuxErrorEngine.installGlobalHandler(engine);
51
+ }
52
+ return engine;
53
+ };
54
+ // @ts-ignore
55
+ engine.uninstallGlobalHandler = () => {
56
+ if (_cleanupGlobalHandler) {
57
+ _cleanupGlobalHandler();
58
+ _cleanupGlobalHandler = null;
59
+ }
60
+ return engine;
61
+ };
62
+ return engine;
63
+ }
64
+ // --- Static Singleton API ---
65
+ /**
66
+ * Get or create the singleton error overlay instance
67
+ */
68
+ JuxError.getInstance = () => {
69
+ if (!_instance) {
70
+ _instance = JuxError('jux-error-singleton')
71
+ .render()
72
+ .installGlobalHandler();
73
+ }
74
+ return _instance;
75
+ };
76
+ /**
77
+ * Quick show - uses singleton
78
+ */
79
+ JuxError.show = (error) => {
80
+ JuxError.getInstance().show(error);
81
+ };
82
+ /**
83
+ * Quick compile error - uses singleton
84
+ */
85
+ JuxError.showCompileError = (file, line, message, code) => {
86
+ JuxError.getInstance().showCompileError(file, line, message, code);
87
+ };
88
+ /**
89
+ * Quick network error - uses singleton
90
+ */
91
+ JuxError.showNetworkError = (url, status, message) => {
92
+ JuxError.getInstance().showNetworkError(url, status, message);
93
+ };
94
+ /**
95
+ * Quick dismiss - uses singleton
96
+ */
97
+ JuxError.dismiss = () => {
98
+ JuxError.getInstance().dismiss();
99
+ };
100
+ export { JuxErrorEngine, JuxErrorSkin };
101
+ //# sourceMappingURL=component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ import { JuxErrorEngine, JuxErrorOptions } from './engine.js';
2
+ import { JuxErrorSkin } from './skin.js';
3
+
4
+ // Define the Component Type (Engine + Render Capability)
5
+ export type JuxErrorComponent = JuxErrorEngine & {
6
+ render: (target?: string | HTMLElement) => JuxErrorComponent;
7
+ injectCSS: (id: string, cssContent: string) => void;
8
+ installGlobalHandler: () => JuxErrorComponent;
9
+ uninstallGlobalHandler: () => JuxErrorComponent;
10
+ };
11
+
12
+ // Module-level singleton reference
13
+ let _instance: JuxErrorComponent | null = null;
14
+ let _cleanupGlobalHandler: (() => void) | null = null;
15
+
16
+ /**
17
+ * Factory Function
18
+ * usage: jux.error('my-error').render().installGlobalHandler()
19
+ *
20
+ * Strategy: FUNCTIONAL COMPOSITION
21
+ * We instantiate the pure Logic (Engine) and the View (Skin).
22
+ * We augment the Engine instance with a function, .render(), that delegates to the Skin method, renderSkin().
23
+ * This keeps the Engine class pure/headless, while offering a convenient API.
24
+ */
25
+ export function JuxError(id: string = 'jux-error', options: JuxErrorOptions = {}): JuxErrorComponent {
26
+ // 1. Create the Logic
27
+ const engine = new JuxErrorEngine(id, options);
28
+
29
+ // Registration (Debug/Introspection)
30
+ if (typeof window !== 'undefined') {
31
+ // @ts-ignore
32
+ window.juxEngines = window.juxEngines || {};
33
+ // @ts-ignore
34
+ window.juxEngines[id] = engine;
35
+ // @ts-ignore
36
+ window.juxEnginesKeys = Object.keys(window.juxEngines);
37
+ }
38
+
39
+ // 2. Create the View (wired to the engine)
40
+ const skin = new JuxErrorSkin(engine);
41
+
42
+ // 3. Augment the Engine with Render capability
43
+ // @ts-ignore - Dynamic augmentation
44
+ engine.render = (target?: string | HTMLElement) => {
45
+ const container = typeof target === 'string'
46
+ ? document.getElementById(target)
47
+ : target || document.body;
48
+
49
+ if (container) {
50
+ skin.renderSkin(container);
51
+ } else {
52
+ console.warn(`Jux Error: Target ${target} not found.`);
53
+ }
54
+ return engine as JuxErrorComponent;
55
+ };
56
+
57
+ // 4. Augment with Styling capability
58
+ // @ts-ignore
59
+ engine.injectCSS = (id: string, cssContent: string) => skin.injectCSS(id, cssContent);
60
+
61
+ // 5. Augment with Global Handler capability
62
+ // @ts-ignore
63
+ engine.installGlobalHandler = () => {
64
+ if (!_cleanupGlobalHandler) {
65
+ _cleanupGlobalHandler = JuxErrorEngine.installGlobalHandler(engine);
66
+ }
67
+ return engine as JuxErrorComponent;
68
+ };
69
+
70
+ // @ts-ignore
71
+ engine.uninstallGlobalHandler = () => {
72
+ if (_cleanupGlobalHandler) {
73
+ _cleanupGlobalHandler();
74
+ _cleanupGlobalHandler = null;
75
+ }
76
+ return engine as JuxErrorComponent;
77
+ };
78
+
79
+ return engine as JuxErrorComponent;
80
+ }
81
+
82
+ // --- Static Singleton API ---
83
+
84
+ /**
85
+ * Get or create the singleton error overlay instance
86
+ */
87
+ JuxError.getInstance = (): JuxErrorComponent => {
88
+ if (!_instance) {
89
+ _instance = JuxError('jux-error-singleton')
90
+ .render()
91
+ .installGlobalHandler();
92
+ }
93
+ return _instance;
94
+ };
95
+
96
+ /**
97
+ * Quick show - uses singleton
98
+ */
99
+ JuxError.show = (error: Error | string): void => {
100
+ JuxError.getInstance().show(error);
101
+ };
102
+
103
+ /**
104
+ * Quick compile error - uses singleton
105
+ */
106
+ JuxError.showCompileError = (file: string, line: number, message: string, code?: string): void => {
107
+ JuxError.getInstance().showCompileError(file, line, message, code);
108
+ };
109
+
110
+ /**
111
+ * Quick network error - uses singleton
112
+ */
113
+ JuxError.showNetworkError = (url: string, status: number, message: string): void => {
114
+ JuxError.getInstance().showNetworkError(url, status, message);
115
+ };
116
+
117
+ /**
118
+ * Quick dismiss - uses singleton
119
+ */
120
+ JuxError.dismiss = (): void => {
121
+ JuxError.getInstance().dismiss();
122
+ };
123
+
124
+ export { JuxErrorEngine, JuxErrorSkin };
125
+ export type { JuxErrorState, StackFrame } from './engine.js';
@@ -0,0 +1,35 @@
1
+ import { BaseEngine, BaseState } from '../base/BaseEngine.js';
2
+ export interface StackFrame {
3
+ file: string;
4
+ line: number;
5
+ column: number;
6
+ function: string;
7
+ code?: string;
8
+ isUserCode: boolean;
9
+ }
10
+ export interface JuxErrorState extends BaseState {
11
+ title: string;
12
+ message: string;
13
+ stack: StackFrame[];
14
+ rawStack: string;
15
+ timestamp: number;
16
+ errorType: 'runtime' | 'compile' | 'network' | 'validation' | 'unknown';
17
+ culpritFrame: StackFrame | null;
18
+ expanded: boolean;
19
+ }
20
+ export interface JuxErrorOptions {
21
+ autoShow?: boolean;
22
+ }
23
+ export declare class JuxErrorEngine extends BaseEngine<JuxErrorState, JuxErrorOptions> {
24
+ #private;
25
+ constructor(id?: string, options?: JuxErrorOptions);
26
+ protected prepareState(id: string, options: JuxErrorOptions): JuxErrorState;
27
+ show(error: Error | string, type?: JuxErrorState['errorType']): this;
28
+ showCompileError(file: string, line: number, message: string, code?: string): this;
29
+ showNetworkError(url: string, status: number, message: string): this;
30
+ showValidationError(field: string, message: string): this;
31
+ dismiss(): this;
32
+ toggleExpanded(): this;
33
+ static installGlobalHandler(engine: JuxErrorEngine): () => void;
34
+ }
35
+ //# sourceMappingURL=engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAG9D,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC;IACxE,YAAY,EAAE,UAAU,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,qBAAa,cAAe,SAAQ,UAAU,CAAC,aAAa,EAAE,eAAe,CAAC;;gBAC9D,EAAE,GAAE,MAAoB,EAAE,OAAO,GAAE,eAAoB;IAInE,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,aAAa;IAuB3E,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,IAAI,GAAE,aAAa,CAAC,WAAW,CAAa,GAAG,IAAI;IAqB/E,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IA0BlF,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAiBpE,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAiBzD,OAAO,IAAI,IAAI;IAMf,cAAc,IAAI,IAAI;IA2EtB,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,IAAI;CAuBlE"}
@@ -0,0 +1,190 @@
1
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
+ };
6
+ var _JuxErrorEngine_instances, _JuxErrorEngine_parseStack, _JuxErrorEngine_parseStackLine, _JuxErrorEngine_cleanFilePath, _JuxErrorEngine_isUserCode, _JuxErrorEngine_findCulprit;
7
+ import { BaseEngine } from '../base/BaseEngine.js';
8
+ export class JuxErrorEngine extends BaseEngine {
9
+ constructor(id = 'jux-error', options = {}) {
10
+ super(id, options);
11
+ _JuxErrorEngine_instances.add(this);
12
+ }
13
+ prepareState(id, options) {
14
+ return {
15
+ // BaseState requirements
16
+ id,
17
+ classes: ['jux-error'],
18
+ visible: false,
19
+ disabled: false,
20
+ loading: false,
21
+ attributes: {},
22
+ // JuxErrorState specifics
23
+ title: '',
24
+ message: '',
25
+ stack: [],
26
+ rawStack: '',
27
+ timestamp: 0,
28
+ errorType: 'unknown',
29
+ culpritFrame: null,
30
+ expanded: false
31
+ };
32
+ }
33
+ // --- Public API ---
34
+ show(error, type = 'runtime') {
35
+ const err = typeof error === 'string' ? new Error(error) : error;
36
+ const stack = __classPrivateFieldGet(this, _JuxErrorEngine_instances, "m", _JuxErrorEngine_parseStack).call(this, err.stack || '');
37
+ const culprit = __classPrivateFieldGet(this, _JuxErrorEngine_instances, "m", _JuxErrorEngine_findCulprit).call(this, stack);
38
+ this.updateState({
39
+ visible: true,
40
+ title: err.name || 'Error',
41
+ message: err.message,
42
+ stack,
43
+ rawStack: err.stack || '',
44
+ timestamp: Date.now(),
45
+ errorType: type,
46
+ culpritFrame: culprit,
47
+ expanded: false
48
+ });
49
+ this.emit('error:show', { type, message: err.message });
50
+ return this;
51
+ }
52
+ showCompileError(file, line, message, code) {
53
+ const culprit = {
54
+ file,
55
+ line,
56
+ column: 0,
57
+ function: '<compile>',
58
+ code,
59
+ isUserCode: true
60
+ };
61
+ this.updateState({
62
+ visible: true,
63
+ title: 'Compile Error',
64
+ message,
65
+ stack: [culprit],
66
+ rawStack: '',
67
+ timestamp: Date.now(),
68
+ errorType: 'compile',
69
+ culpritFrame: culprit,
70
+ expanded: false
71
+ });
72
+ this.emit('error:compile', { file, line, message });
73
+ return this;
74
+ }
75
+ showNetworkError(url, status, message) {
76
+ this.updateState({
77
+ visible: true,
78
+ title: `Network Error (${status})`,
79
+ message: `${message}\n\nURL: ${url}`,
80
+ stack: [],
81
+ rawStack: '',
82
+ timestamp: Date.now(),
83
+ errorType: 'network',
84
+ culpritFrame: null,
85
+ expanded: false
86
+ });
87
+ this.emit('error:network', { url, status, message });
88
+ return this;
89
+ }
90
+ showValidationError(field, message) {
91
+ this.updateState({
92
+ visible: true,
93
+ title: 'Validation Error',
94
+ message: `${field}: ${message}`,
95
+ stack: [],
96
+ rawStack: '',
97
+ timestamp: Date.now(),
98
+ errorType: 'validation',
99
+ culpritFrame: null,
100
+ expanded: false
101
+ });
102
+ this.emit('error:validation', { field, message });
103
+ return this;
104
+ }
105
+ dismiss() {
106
+ this.updateState({ visible: false });
107
+ this.emit('error:dismiss', {});
108
+ return this;
109
+ }
110
+ toggleExpanded() {
111
+ this.updateState({ expanded: !this.state.expanded });
112
+ this.emit('error:toggle', { expanded: this.state.expanded });
113
+ return this;
114
+ }
115
+ // --- Global Error Handler ---
116
+ static installGlobalHandler(engine) {
117
+ const errorHandler = (event) => {
118
+ engine.show(event.error || event.message, 'runtime');
119
+ event.preventDefault();
120
+ };
121
+ const rejectionHandler = (event) => {
122
+ const error = event.reason instanceof Error
123
+ ? event.reason
124
+ : new Error(String(event.reason));
125
+ engine.show(error, 'runtime');
126
+ event.preventDefault();
127
+ };
128
+ window.addEventListener('error', errorHandler);
129
+ window.addEventListener('unhandledrejection', rejectionHandler);
130
+ // Return cleanup function
131
+ return () => {
132
+ window.removeEventListener('error', errorHandler);
133
+ window.removeEventListener('unhandledrejection', rejectionHandler);
134
+ };
135
+ }
136
+ }
137
+ _JuxErrorEngine_instances = new WeakSet(), _JuxErrorEngine_parseStack = function _JuxErrorEngine_parseStack(rawStack) {
138
+ const lines = rawStack.split('\n').slice(1);
139
+ const frames = [];
140
+ for (const line of lines) {
141
+ const frame = __classPrivateFieldGet(this, _JuxErrorEngine_instances, "m", _JuxErrorEngine_parseStackLine).call(this, line.trim());
142
+ if (frame)
143
+ frames.push(frame);
144
+ }
145
+ return frames;
146
+ }, _JuxErrorEngine_parseStackLine = function _JuxErrorEngine_parseStackLine(line) {
147
+ // Chrome/V8: "at functionName (file:line:column)" or "at file:line:column"
148
+ const chromeMatch = line.match(/^at\s+(?:(.+?)\s+\()?(.+?):(\d+):(\d+)\)?$/);
149
+ if (chromeMatch) {
150
+ const [, func, file, lineNum, col] = chromeMatch;
151
+ return {
152
+ function: func || '<anonymous>',
153
+ file: __classPrivateFieldGet(this, _JuxErrorEngine_instances, "m", _JuxErrorEngine_cleanFilePath).call(this, file),
154
+ line: parseInt(lineNum, 10),
155
+ column: parseInt(col, 10),
156
+ isUserCode: __classPrivateFieldGet(this, _JuxErrorEngine_instances, "m", _JuxErrorEngine_isUserCode).call(this, file)
157
+ };
158
+ }
159
+ // Firefox: "functionName@file:line:column"
160
+ const firefoxMatch = line.match(/^(.*)@(.+?):(\d+):(\d+)$/);
161
+ if (firefoxMatch) {
162
+ const [, func, file, lineNum, col] = firefoxMatch;
163
+ return {
164
+ function: func || '<anonymous>',
165
+ file: __classPrivateFieldGet(this, _JuxErrorEngine_instances, "m", _JuxErrorEngine_cleanFilePath).call(this, file),
166
+ line: parseInt(lineNum, 10),
167
+ column: parseInt(col, 10),
168
+ isUserCode: __classPrivateFieldGet(this, _JuxErrorEngine_instances, "m", _JuxErrorEngine_isUserCode).call(this, file)
169
+ };
170
+ }
171
+ return null;
172
+ }, _JuxErrorEngine_cleanFilePath = function _JuxErrorEngine_cleanFilePath(file) {
173
+ return file
174
+ .replace(/^https?:\/\/[^/]+/, '')
175
+ .replace(/\?.*$/, '');
176
+ }, _JuxErrorEngine_isUserCode = function _JuxErrorEngine_isUserCode(file) {
177
+ const nonUserPatterns = [
178
+ /node_modules/,
179
+ /^\[native code\]/,
180
+ /<anonymous>/,
181
+ /^internal\//,
182
+ /^node:/,
183
+ /extensions\//,
184
+ /juxscript\/lib\/componentsv2/
185
+ ];
186
+ return !nonUserPatterns.some(p => p.test(file));
187
+ }, _JuxErrorEngine_findCulprit = function _JuxErrorEngine_findCulprit(stack) {
188
+ return stack.find(frame => frame.isUserCode) || stack[0] || null;
189
+ };
190
+ //# sourceMappingURL=engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["engine.ts"],"names":[],"mappings":"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"}