@coherent.js/core 1.0.0-beta.2
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/LICENSE +21 -0
- package/README.md +130 -0
- package/dist/coherent.d.ts +472 -0
- package/dist/coherent.d.ts.map +1 -0
- package/dist/coherent.js +590 -0
- package/dist/coherent.js.map +1 -0
- package/dist/components/component-system.d.ts +1138 -0
- package/dist/components/component-system.d.ts.map +1 -0
- package/dist/components/component-system.js +2220 -0
- package/dist/components/component-system.js.map +1 -0
- package/dist/components/lifecycle.d.ts +212 -0
- package/dist/components/lifecycle.d.ts.map +1 -0
- package/dist/components/lifecycle.js +525 -0
- package/dist/components/lifecycle.js.map +1 -0
- package/dist/core/html-utils.d.ts +14 -0
- package/dist/core/html-utils.d.ts.map +1 -0
- package/dist/core/html-utils.js +166 -0
- package/dist/core/html-utils.js.map +1 -0
- package/dist/core/object-factory.d.ts +38 -0
- package/dist/core/object-factory.d.ts.map +1 -0
- package/dist/core/object-factory.js +63 -0
- package/dist/core/object-factory.js.map +1 -0
- package/dist/core/object-utils.d.ts +77 -0
- package/dist/core/object-utils.d.ts.map +1 -0
- package/dist/core/object-utils.js +502 -0
- package/dist/core/object-utils.js.map +1 -0
- package/dist/dev/dev-tools.d.ts +194 -0
- package/dist/dev/dev-tools.d.ts.map +1 -0
- package/dist/dev/dev-tools.js +846 -0
- package/dist/dev/dev-tools.js.map +1 -0
- package/dist/forms/validation.d.ts +271 -0
- package/dist/forms/validation.d.ts.map +1 -0
- package/dist/forms/validation.js +573 -0
- package/dist/forms/validation.js.map +1 -0
- package/dist/index.cjs +5281 -0
- package/dist/index.cjs.map +7 -0
- package/dist/index.js +5204 -0
- package/dist/index.js.map +7 -0
- package/dist/performance/bundle-optimizer.d.ts +95 -0
- package/dist/performance/bundle-optimizer.d.ts.map +1 -0
- package/dist/performance/bundle-optimizer.js +192 -0
- package/dist/performance/bundle-optimizer.js.map +1 -0
- package/dist/performance/cache-manager.d.ts +107 -0
- package/dist/performance/cache-manager.d.ts.map +1 -0
- package/dist/performance/cache-manager.js +314 -0
- package/dist/performance/cache-manager.js.map +1 -0
- package/dist/performance/component-cache.d.ts +120 -0
- package/dist/performance/component-cache.d.ts.map +1 -0
- package/dist/performance/component-cache.js +364 -0
- package/dist/performance/component-cache.js.map +1 -0
- package/dist/performance/monitor.d.ts +189 -0
- package/dist/performance/monitor.d.ts.map +1 -0
- package/dist/performance/monitor.js +347 -0
- package/dist/performance/monitor.js.map +1 -0
- package/dist/rendering/base-renderer.d.ts +140 -0
- package/dist/rendering/base-renderer.d.ts.map +1 -0
- package/dist/rendering/base-renderer.js +409 -0
- package/dist/rendering/base-renderer.js.map +1 -0
- package/dist/rendering/css-manager.d.ts +73 -0
- package/dist/rendering/css-manager.d.ts.map +1 -0
- package/dist/rendering/css-manager.js +176 -0
- package/dist/rendering/css-manager.js.map +1 -0
- package/dist/rendering/dom-renderer.d.ts +62 -0
- package/dist/rendering/dom-renderer.d.ts.map +1 -0
- package/dist/rendering/dom-renderer.js +252 -0
- package/dist/rendering/dom-renderer.js.map +1 -0
- package/dist/rendering/html-renderer.d.ts +67 -0
- package/dist/rendering/html-renderer.d.ts.map +1 -0
- package/dist/rendering/html-renderer.js +444 -0
- package/dist/rendering/html-renderer.js.map +1 -0
- package/dist/rendering/renderer-config.d.ts +282 -0
- package/dist/rendering/renderer-config.d.ts.map +1 -0
- package/dist/rendering/renderer-config.js +144 -0
- package/dist/rendering/renderer-config.js.map +1 -0
- package/dist/rendering/streaming-renderer.d.ts +117 -0
- package/dist/rendering/streaming-renderer.d.ts.map +1 -0
- package/dist/rendering/streaming-renderer.js +326 -0
- package/dist/rendering/streaming-renderer.js.map +1 -0
- package/dist/rendering/vdom-diff.d.ts +47 -0
- package/dist/rendering/vdom-diff.d.ts.map +1 -0
- package/dist/rendering/vdom-diff.js +416 -0
- package/dist/rendering/vdom-diff.js.map +1 -0
- package/dist/routing/router.d.ts +241 -0
- package/dist/routing/router.d.ts.map +1 -0
- package/dist/routing/router.js +648 -0
- package/dist/routing/router.js.map +1 -0
- package/dist/state/reactive-state.d.ts +166 -0
- package/dist/state/reactive-state.d.ts.map +1 -0
- package/dist/state/reactive-state.js +546 -0
- package/dist/state/reactive-state.js.map +1 -0
- package/dist/state/state-manager.d.ts +45 -0
- package/dist/state/state-manager.d.ts.map +1 -0
- package/dist/state/state-manager.js +151 -0
- package/dist/state/state-manager.js.map +1 -0
- package/dist/types/constants.d.ts +8 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/constants.js +36 -0
- package/dist/types/constants.js.map +1 -0
- package/dist/utils/dependency-utils.d.ts +43 -0
- package/dist/utils/dependency-utils.d.ts.map +1 -0
- package/dist/utils/dependency-utils.js +105 -0
- package/dist/utils/dependency-utils.js.map +1 -0
- package/dist/utils/error-handler.d.ts +148 -0
- package/dist/utils/error-handler.d.ts.map +1 -0
- package/dist/utils/error-handler.js +468 -0
- package/dist/utils/error-handler.js.map +1 -0
- package/dist/utils/normalization.d.ts +3 -0
- package/dist/utils/normalization.d.ts.map +1 -0
- package/dist/utils/normalization.js +24 -0
- package/dist/utils/normalization.js.map +1 -0
- package/dist/utils/validation.d.ts +10 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +32 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +44 -0
- package/types/index.d.ts +734 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reactive-state.js","sourceRoot":"","sources":["../../../../src/state/reactive-state.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates a state container for a request/render cycle
|
|
3
|
+
* @param {Object} initialState - Initial state object
|
|
4
|
+
* @returns {Object} State container
|
|
5
|
+
*/
|
|
6
|
+
export function createState(initialState?: Object): Object;
|
|
7
|
+
/**
|
|
8
|
+
* Context provider for passing data down the component tree
|
|
9
|
+
* @param {string} key - Context key
|
|
10
|
+
* @param {*} value - Context value
|
|
11
|
+
* @param {Object} children - Children to render with context
|
|
12
|
+
* @returns {Object} Children with context available
|
|
13
|
+
*/
|
|
14
|
+
export function provideContext(key: string, value: any): Object;
|
|
15
|
+
/**
|
|
16
|
+
* Create a context provider component that works with the rendering system
|
|
17
|
+
* @param {string} key - Context key
|
|
18
|
+
* @param {*} value - Context value
|
|
19
|
+
* @param {Object} children - Children to render with context
|
|
20
|
+
* @returns {Function} Component function that provides context
|
|
21
|
+
*/
|
|
22
|
+
export function createContextProvider(key: string, value: any, children: Object): Function;
|
|
23
|
+
/**
|
|
24
|
+
* Restore context to previous value
|
|
25
|
+
* @param {string} key - Context key
|
|
26
|
+
*/
|
|
27
|
+
export function restoreContext(key: string): void;
|
|
28
|
+
/**
|
|
29
|
+
* Clear all context stacks (useful for cleanup after rendering)
|
|
30
|
+
*/
|
|
31
|
+
export function clearAllContexts(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Context consumer to access provided context
|
|
34
|
+
* @param {string} key - Context key
|
|
35
|
+
* @returns {*} Context value
|
|
36
|
+
*/
|
|
37
|
+
export function useContext(key: string): any;
|
|
38
|
+
export namespace globalStateManager {
|
|
39
|
+
function set(key: any, value: any): void;
|
|
40
|
+
function get(key: any): any;
|
|
41
|
+
function has(key: any): boolean;
|
|
42
|
+
function clear(): void;
|
|
43
|
+
function createRequestState(): Object;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=state-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state-manager.d.ts","sourceRoot":"","sources":["../../../../src/state/state-manager.js"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,2CAHW,MAAM,GACJ,MAAM,CAmClB;AAiCD;;;;;;GAMG;AACH,oCALW,MAAM,SACN,GAAC,GAEC,MAAM,CAgBlB;AAED;;;;;;GAMG;AACH,2CALW,MAAM,SACN,GAAC,YACD,MAAM,YAsBhB;AAED;;;GAGG;AACH,oCAFW,MAAM,QAwBhB;AAED;;GAEG;AACH,yCAGC;AAED;;;;GAIG;AACH,gCAHW,MAAM,GACJ,GAAC,CAIb;;IAzHG,yCAEC;IAED,4BAEC;IAED,gCAEC;IAED,uBAEC;IAGD,sCAEC"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple state management for server-side rendering
|
|
3
|
+
* This is mainly for component state during rendering
|
|
4
|
+
*/
|
|
5
|
+
const globalState = new Map();
|
|
6
|
+
/**
|
|
7
|
+
* Creates a state container for a request/render cycle
|
|
8
|
+
* @param {Object} initialState - Initial state object
|
|
9
|
+
* @returns {Object} State container
|
|
10
|
+
*/
|
|
11
|
+
export function createState(initialState = {}) {
|
|
12
|
+
const state = new Map(Object.entries(initialState));
|
|
13
|
+
return {
|
|
14
|
+
get(key) {
|
|
15
|
+
return state.get(key);
|
|
16
|
+
},
|
|
17
|
+
set(key, value) {
|
|
18
|
+
state.set(key, value);
|
|
19
|
+
return this;
|
|
20
|
+
},
|
|
21
|
+
has(key) {
|
|
22
|
+
return state.has(key);
|
|
23
|
+
},
|
|
24
|
+
delete(key) {
|
|
25
|
+
return state.delete(key);
|
|
26
|
+
},
|
|
27
|
+
clear() {
|
|
28
|
+
state.clear();
|
|
29
|
+
return this;
|
|
30
|
+
},
|
|
31
|
+
toObject() {
|
|
32
|
+
return Object.fromEntries(state);
|
|
33
|
+
},
|
|
34
|
+
// For debugging
|
|
35
|
+
_internal: state
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Global state for sharing data across components during SSR
|
|
40
|
+
*/
|
|
41
|
+
export const globalStateManager = {
|
|
42
|
+
set(key, value) {
|
|
43
|
+
globalState.set(key, value);
|
|
44
|
+
},
|
|
45
|
+
get(key) {
|
|
46
|
+
return globalState.get(key);
|
|
47
|
+
},
|
|
48
|
+
has(key) {
|
|
49
|
+
return globalState.has(key);
|
|
50
|
+
},
|
|
51
|
+
clear() {
|
|
52
|
+
globalState.clear();
|
|
53
|
+
},
|
|
54
|
+
// Create isolated state for each request
|
|
55
|
+
createRequestState() {
|
|
56
|
+
return createState();
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Context stack for managing nested context providers
|
|
61
|
+
*/
|
|
62
|
+
const contextStacks = new Map();
|
|
63
|
+
/**
|
|
64
|
+
* Context provider for passing data down the component tree
|
|
65
|
+
* @param {string} key - Context key
|
|
66
|
+
* @param {*} value - Context value
|
|
67
|
+
* @param {Object} children - Children to render with context
|
|
68
|
+
* @returns {Object} Children with context available
|
|
69
|
+
*/
|
|
70
|
+
export function provideContext(key, value) {
|
|
71
|
+
// Initialize context stack if it doesn't exist
|
|
72
|
+
if (!contextStacks.has(key)) {
|
|
73
|
+
contextStacks.set(key, []);
|
|
74
|
+
}
|
|
75
|
+
const stack = contextStacks.get(key);
|
|
76
|
+
// Store previous value
|
|
77
|
+
const previousValue = globalState.get(key);
|
|
78
|
+
// Push previous value to stack and set new value
|
|
79
|
+
stack.push(previousValue);
|
|
80
|
+
globalState.set(key, value);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Create a context provider component that works with the rendering system
|
|
84
|
+
* @param {string} key - Context key
|
|
85
|
+
* @param {*} value - Context value
|
|
86
|
+
* @param {Object} children - Children to render with context
|
|
87
|
+
* @returns {Function} Component function that provides context
|
|
88
|
+
*/
|
|
89
|
+
export function createContextProvider(key, value, children) {
|
|
90
|
+
// Return a function that will render the children within the context
|
|
91
|
+
return (renderFunction) => {
|
|
92
|
+
try {
|
|
93
|
+
// Provide context
|
|
94
|
+
provideContext(key, value);
|
|
95
|
+
// If a render function is provided, use it to render children
|
|
96
|
+
// Otherwise return children to be rendered by the caller
|
|
97
|
+
if (renderFunction && typeof renderFunction === 'function') {
|
|
98
|
+
return renderFunction(children);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
return children;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
finally {
|
|
105
|
+
// Always restore context when done
|
|
106
|
+
restoreContext(key);
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Restore context to previous value
|
|
112
|
+
* @param {string} key - Context key
|
|
113
|
+
*/
|
|
114
|
+
export function restoreContext(key) {
|
|
115
|
+
if (!contextStacks.has(key))
|
|
116
|
+
return;
|
|
117
|
+
const stack = contextStacks.get(key);
|
|
118
|
+
// Restore previous value from stack
|
|
119
|
+
const previousValue = stack.pop();
|
|
120
|
+
if (stack.length === 0) {
|
|
121
|
+
// No more providers, delete the key if it was undefined before
|
|
122
|
+
if (previousValue === undefined) {
|
|
123
|
+
globalState.delete(key);
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
globalState.set(key, previousValue);
|
|
127
|
+
}
|
|
128
|
+
// Clean up empty stack
|
|
129
|
+
contextStacks.delete(key);
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
// Restore previous value
|
|
133
|
+
globalState.set(key, previousValue);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Clear all context stacks (useful for cleanup after rendering)
|
|
138
|
+
*/
|
|
139
|
+
export function clearAllContexts() {
|
|
140
|
+
contextStacks.clear();
|
|
141
|
+
// Note: This doesn't clear globalState as it might contain other data
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Context consumer to access provided context
|
|
145
|
+
* @param {string} key - Context key
|
|
146
|
+
* @returns {*} Context value
|
|
147
|
+
*/
|
|
148
|
+
export function useContext(key) {
|
|
149
|
+
return globalState.get(key);
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=state-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state-manager.js","sourceRoot":"","sources":["../../../../src/state/state-manager.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/types/constants.js"],"names":[],"mappings":";;;;;AAUA,wCAsBG;AAEH,wCAGG"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core constants and types for the Coherent framework
|
|
3
|
+
*/
|
|
4
|
+
export const CoherentTypes = {
|
|
5
|
+
OBJECT: 'coherent-object',
|
|
6
|
+
COMPONENT: 'coherent-component',
|
|
7
|
+
ELEMENT: 'coherent-element'
|
|
8
|
+
};
|
|
9
|
+
export const HTML_ELEMENTS = new Set([
|
|
10
|
+
'a', 'abbr', 'address', 'area', 'article', 'aside', 'audio',
|
|
11
|
+
'b', 'base', 'bdi', 'bdo', 'blockquote', 'body', 'br', 'button',
|
|
12
|
+
'canvas', 'caption', 'cite', 'code', 'col', 'colgroup',
|
|
13
|
+
'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt',
|
|
14
|
+
'em', 'embed',
|
|
15
|
+
'fieldset', 'figcaption', 'figure', 'footer', 'form',
|
|
16
|
+
'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hr', 'html',
|
|
17
|
+
'i', 'iframe', 'img', 'input', 'ins',
|
|
18
|
+
'kbd',
|
|
19
|
+
'label', 'legend', 'li', 'link',
|
|
20
|
+
'main', 'map', 'mark', 'meta', 'meter',
|
|
21
|
+
'nav', 'noscript',
|
|
22
|
+
'object', 'ol', 'optgroup', 'option', 'output',
|
|
23
|
+
'p', 'param', 'picture', 'pre', 'progress',
|
|
24
|
+
'q',
|
|
25
|
+
'rp', 'rt', 'ruby',
|
|
26
|
+
's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup',
|
|
27
|
+
'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track',
|
|
28
|
+
'u', 'ul',
|
|
29
|
+
'var', 'video',
|
|
30
|
+
'wbr'
|
|
31
|
+
]);
|
|
32
|
+
export const VOID_ELEMENTS = new Set([
|
|
33
|
+
'area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input',
|
|
34
|
+
'link', 'meta', 'param', 'source', 'track', 'wbr'
|
|
35
|
+
]);
|
|
36
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/types/constants.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG;IACzB,MAAM,EAAE,iBAAiB;IACzB,SAAS,EAAE,oBAAoB;IAC/B,OAAO,EAAE,kBAAkB;CAC9B,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IACjC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO;IAC3D,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ;IAC/D,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU;IACtD,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI;IAC9E,IAAI,EAAE,OAAO;IACb,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM;IACpD,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;IAClE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK;IACpC,KAAK;IACL,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;IAC/B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IACtC,KAAK,EAAE,UAAU;IACjB,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ;IAC9C,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU;IAC1C,GAAG;IACH,IAAI,EAAE,IAAI,EAAE,MAAM;IAClB,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK;IACjH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO;IACtG,GAAG,EAAE,IAAI;IACT,KAAK,EAAE,OAAO;IACd,KAAK;CACR,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IACjC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO;IAC1D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK;CACpD,CAAC,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for handling optional peer dependencies
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Check if a peer dependency is available
|
|
6
|
+
* @param {string} packageName - Name of the package to check
|
|
7
|
+
* @returns {boolean} - Whether the package is available
|
|
8
|
+
*/
|
|
9
|
+
export function isPeerDependencyAvailable(packageName: string): boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Dynamically import a peer dependency with error handling
|
|
12
|
+
* @param {string} packageName - Name of the package to import
|
|
13
|
+
* @param {string} integrationName - Human-readable name of the integration
|
|
14
|
+
* @returns {Promise<any>} - The imported module
|
|
15
|
+
* @throws {Error} - If the dependency is not available
|
|
16
|
+
*/
|
|
17
|
+
export function importPeerDependency(packageName: string, integrationName: string): Promise<any>;
|
|
18
|
+
/**
|
|
19
|
+
* Create a lazy-loaded integration that only imports dependencies when needed
|
|
20
|
+
* @param {string} packageName - Name of the package to import
|
|
21
|
+
* @param {string} integrationName - Human-readable name of the integration
|
|
22
|
+
* @param {Function} createIntegration - Function that creates the integration using the imported package
|
|
23
|
+
* @returns {Function} - Lazy-loaded integration function
|
|
24
|
+
*/
|
|
25
|
+
export function createLazyIntegration(packageName: string, integrationName: string, createIntegration: Function): Function;
|
|
26
|
+
/**
|
|
27
|
+
* Check multiple peer dependencies and provide helpful error messages
|
|
28
|
+
* @param {Array<{package: string, integration: string}>} dependencies - List of dependencies to check
|
|
29
|
+
* @returns {Object} - Object with availability status for each dependency
|
|
30
|
+
*/
|
|
31
|
+
export function checkPeerDependencies(dependencies: Array<{
|
|
32
|
+
package: string;
|
|
33
|
+
integration: string;
|
|
34
|
+
}>): Object;
|
|
35
|
+
/**
|
|
36
|
+
* Create a function that checks for a dependency before executing
|
|
37
|
+
* @param {string} packageName - Name of the package required
|
|
38
|
+
* @param {string} integrationName - Human-readable name of the integration
|
|
39
|
+
* @param {Function} fn - Function to execute if dependency is available
|
|
40
|
+
* @returns {Function} - Wrapped function with dependency check
|
|
41
|
+
*/
|
|
42
|
+
export function requirePeerDependency(packageName: string, integrationName: string, fn: Function): Function;
|
|
43
|
+
//# sourceMappingURL=dependency-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependency-utils.d.ts","sourceRoot":"","sources":["../../../../src/utils/dependency-utils.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,uDAHW,MAAM,GACJ,OAAO,CAUnB;AAED;;;;;;GAMG;AACH,kDALW,MAAM,mBACN,MAAM,GACJ,OAAO,CAAC,GAAG,CAAC,CAcxB;AAED;;;;;;GAMG;AACH,mDALW,MAAM,mBACN,MAAM,yCA0BhB;AAED;;;;GAIG;AACH,oDAHW,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAC,CAAC,GAC3C,MAAM,CA4BlB;AAED;;;;;;GAMG;AACH,mDALW,MAAM,mBACN,MAAM,0BAchB"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for handling optional peer dependencies
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Check if a peer dependency is available
|
|
6
|
+
* @param {string} packageName - Name of the package to check
|
|
7
|
+
* @returns {boolean} - Whether the package is available
|
|
8
|
+
*/
|
|
9
|
+
export function isPeerDependencyAvailable(packageName) {
|
|
10
|
+
try {
|
|
11
|
+
// Try to resolve the package
|
|
12
|
+
import.meta.resolve(packageName);
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Dynamically import a peer dependency with error handling
|
|
21
|
+
* @param {string} packageName - Name of the package to import
|
|
22
|
+
* @param {string} integrationName - Human-readable name of the integration
|
|
23
|
+
* @returns {Promise<any>} - The imported module
|
|
24
|
+
* @throws {Error} - If the dependency is not available
|
|
25
|
+
*/
|
|
26
|
+
export async function importPeerDependency(packageName, integrationName) {
|
|
27
|
+
try {
|
|
28
|
+
return await import(packageName);
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
throw new Error(`${integrationName} integration requires the '${packageName}' package to be installed.\n` +
|
|
32
|
+
`Please install it with: npm install ${packageName}\n` +
|
|
33
|
+
`Or with pnpm: pnpm add ${packageName}\n` +
|
|
34
|
+
`Or with yarn: yarn add ${packageName}`);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Create a lazy-loaded integration that only imports dependencies when needed
|
|
39
|
+
* @param {string} packageName - Name of the package to import
|
|
40
|
+
* @param {string} integrationName - Human-readable name of the integration
|
|
41
|
+
* @param {Function} createIntegration - Function that creates the integration using the imported package
|
|
42
|
+
* @returns {Function} - Lazy-loaded integration function
|
|
43
|
+
*/
|
|
44
|
+
export function createLazyIntegration(packageName, integrationName, createIntegration) {
|
|
45
|
+
let cachedIntegration = null;
|
|
46
|
+
let importPromise = null;
|
|
47
|
+
return async function (...args) {
|
|
48
|
+
// Return cached integration if available
|
|
49
|
+
if (cachedIntegration) {
|
|
50
|
+
return cachedIntegration(...args);
|
|
51
|
+
}
|
|
52
|
+
// Avoid multiple concurrent imports
|
|
53
|
+
if (!importPromise) {
|
|
54
|
+
importPromise = importPeerDependency(packageName, integrationName)
|
|
55
|
+
.then(module => {
|
|
56
|
+
cachedIntegration = createIntegration(module);
|
|
57
|
+
return cachedIntegration;
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
const integration = await importPromise;
|
|
61
|
+
return integration(...args);
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Check multiple peer dependencies and provide helpful error messages
|
|
66
|
+
* @param {Array<{package: string, integration: string}>} dependencies - List of dependencies to check
|
|
67
|
+
* @returns {Object} - Object with availability status for each dependency
|
|
68
|
+
*/
|
|
69
|
+
export function checkPeerDependencies(dependencies) {
|
|
70
|
+
const results = {};
|
|
71
|
+
const missing = [];
|
|
72
|
+
for (const { package: packageName, integration } of dependencies) {
|
|
73
|
+
const available = isPeerDependencyAvailable(packageName);
|
|
74
|
+
results[packageName] = available;
|
|
75
|
+
if (!available) {
|
|
76
|
+
missing.push({ package: packageName, integration });
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
if (missing.length > 0) {
|
|
80
|
+
const installCommands = missing.map(({ package: pkg }) => pkg).join(' ');
|
|
81
|
+
const integrationsList = missing.map(({ integration }) => integration).join(', ');
|
|
82
|
+
console.warn(`Optional dependencies missing for ${integrationsList} integration(s).\n` +
|
|
83
|
+
`To use these integrations, install: npm install ${installCommands}\n` +
|
|
84
|
+
`Or with pnpm: pnpm add ${installCommands}\n` +
|
|
85
|
+
`Or with yarn: yarn add ${installCommands}`);
|
|
86
|
+
}
|
|
87
|
+
return results;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Create a function that checks for a dependency before executing
|
|
91
|
+
* @param {string} packageName - Name of the package required
|
|
92
|
+
* @param {string} integrationName - Human-readable name of the integration
|
|
93
|
+
* @param {Function} fn - Function to execute if dependency is available
|
|
94
|
+
* @returns {Function} - Wrapped function with dependency check
|
|
95
|
+
*/
|
|
96
|
+
export function requirePeerDependency(packageName, integrationName, fn) {
|
|
97
|
+
return function (...args) {
|
|
98
|
+
if (!isPeerDependencyAvailable(packageName)) {
|
|
99
|
+
throw new Error(`${integrationName} integration requires the '${packageName}' package to be installed.\n` +
|
|
100
|
+
`Please install it with: npm install ${packageName}`);
|
|
101
|
+
}
|
|
102
|
+
return fn.apply(this, args);
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=dependency-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependency-utils.js","sourceRoot":"","sources":["../../../../src/utils/dependency-utils.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convenience functions for common error types
|
|
3
|
+
*/
|
|
4
|
+
export function throwValidationError(message: any, component: any, suggestions?: any[]): void;
|
|
5
|
+
export function throwRenderingError(message: any, component: any, context: any, suggestions?: any[]): void;
|
|
6
|
+
export function throwPerformanceError(message: any, metrics: any, suggestions?: any[]): void;
|
|
7
|
+
export function throwStateError(message: any, state: any, suggestions?: any[]): void;
|
|
8
|
+
/**
|
|
9
|
+
* Try-catch wrapper with enhanced error handling
|
|
10
|
+
*/
|
|
11
|
+
export function safeExecute(fn: any, context?: {}, fallback?: null): any;
|
|
12
|
+
/**
|
|
13
|
+
* Async try-catch wrapper
|
|
14
|
+
*/
|
|
15
|
+
export function safeExecuteAsync(fn: any, context?: {}, fallback?: null): Promise<any>;
|
|
16
|
+
/**
|
|
17
|
+
* Factory function to create an ErrorHandler instance
|
|
18
|
+
*
|
|
19
|
+
* @param {Object} options - ErrorHandler configuration
|
|
20
|
+
* @returns {ErrorHandler} ErrorHandler instance
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* const errorHandler = createErrorHandler({
|
|
24
|
+
* enableTracing: true,
|
|
25
|
+
* enableSuggestions: true
|
|
26
|
+
* });
|
|
27
|
+
*/
|
|
28
|
+
export function createErrorHandler(options?: Object): ErrorHandler;
|
|
29
|
+
/**
|
|
30
|
+
* Enhanced Error Handling System for Coherent.js
|
|
31
|
+
* Provides detailed error messages and debugging context
|
|
32
|
+
*/
|
|
33
|
+
/**
|
|
34
|
+
* Custom error types for better debugging
|
|
35
|
+
*/
|
|
36
|
+
export class CoherentError extends Error {
|
|
37
|
+
constructor(message: any, options?: {});
|
|
38
|
+
type: any;
|
|
39
|
+
component: any;
|
|
40
|
+
context: any;
|
|
41
|
+
suggestions: any;
|
|
42
|
+
timestamp: number;
|
|
43
|
+
toJSON(): {
|
|
44
|
+
name: string;
|
|
45
|
+
message: string;
|
|
46
|
+
type: any;
|
|
47
|
+
component: any;
|
|
48
|
+
context: any;
|
|
49
|
+
suggestions: any;
|
|
50
|
+
timestamp: number;
|
|
51
|
+
stack: string | undefined;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export class ComponentValidationError extends CoherentError {
|
|
55
|
+
constructor(message: any, component: any, suggestions?: any[]);
|
|
56
|
+
}
|
|
57
|
+
export class RenderingError extends CoherentError {
|
|
58
|
+
constructor(message: any, component: any, context: any, suggestions?: any[]);
|
|
59
|
+
}
|
|
60
|
+
export class PerformanceError extends CoherentError {
|
|
61
|
+
constructor(message: any, metrics: any, suggestions?: any[]);
|
|
62
|
+
}
|
|
63
|
+
export class StateError extends CoherentError {
|
|
64
|
+
constructor(message: any, state: any, suggestions?: any[]);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Error handler with context-aware reporting
|
|
68
|
+
*/
|
|
69
|
+
export class ErrorHandler {
|
|
70
|
+
constructor(options?: {});
|
|
71
|
+
options: {
|
|
72
|
+
enableStackTrace: boolean;
|
|
73
|
+
enableSuggestions: boolean;
|
|
74
|
+
enableLogging: boolean;
|
|
75
|
+
logLevel: any;
|
|
76
|
+
maxErrorHistory: any;
|
|
77
|
+
};
|
|
78
|
+
errorHistory: any[];
|
|
79
|
+
errorCounts: Map<any, any>;
|
|
80
|
+
suppressedErrors: Set<any>;
|
|
81
|
+
/**
|
|
82
|
+
* Handle and report errors with detailed context
|
|
83
|
+
*/
|
|
84
|
+
handle(error: any, context?: {}): CoherentError;
|
|
85
|
+
/**
|
|
86
|
+
* Enhance existing errors with more context
|
|
87
|
+
*/
|
|
88
|
+
enhanceError(error: any, context?: {}): CoherentError;
|
|
89
|
+
/**
|
|
90
|
+
* Classify error type based on message and context
|
|
91
|
+
*/
|
|
92
|
+
classifyError(error: any, context: any): "validation" | "rendering" | "performance" | "state" | "generic";
|
|
93
|
+
/**
|
|
94
|
+
* Generate helpful suggestions based on error
|
|
95
|
+
*/
|
|
96
|
+
generateSuggestions(error: any, context?: {}): string[];
|
|
97
|
+
/**
|
|
98
|
+
* Add error to history with deduplication
|
|
99
|
+
*/
|
|
100
|
+
addToHistory(error: any): void;
|
|
101
|
+
/**
|
|
102
|
+
* Log error with enhanced formatting
|
|
103
|
+
*/
|
|
104
|
+
logError(error: any): void;
|
|
105
|
+
/**
|
|
106
|
+
* Format component for logging
|
|
107
|
+
*/
|
|
108
|
+
formatComponent(component: any, maxDepth?: number, currentDepth?: number): any;
|
|
109
|
+
/**
|
|
110
|
+
* Suppress specific error types
|
|
111
|
+
*/
|
|
112
|
+
suppress(errorPattern: any): void;
|
|
113
|
+
/**
|
|
114
|
+
* Clear error history
|
|
115
|
+
*/
|
|
116
|
+
clearHistory(): void;
|
|
117
|
+
/**
|
|
118
|
+
* Get error statistics
|
|
119
|
+
*/
|
|
120
|
+
getStats(): {
|
|
121
|
+
totalErrors: any;
|
|
122
|
+
uniqueErrors: number;
|
|
123
|
+
errorsByType: {};
|
|
124
|
+
errorsByTime: {};
|
|
125
|
+
mostCommonErrors: {
|
|
126
|
+
name: any;
|
|
127
|
+
message: any;
|
|
128
|
+
count: any;
|
|
129
|
+
type: any;
|
|
130
|
+
}[];
|
|
131
|
+
recentErrors: any[];
|
|
132
|
+
};
|
|
133
|
+
/**
|
|
134
|
+
* Get most common errors
|
|
135
|
+
*/
|
|
136
|
+
getMostCommonErrors(limit?: number): {
|
|
137
|
+
name: any;
|
|
138
|
+
message: any;
|
|
139
|
+
count: any;
|
|
140
|
+
type: any;
|
|
141
|
+
}[];
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Global error handler instance
|
|
145
|
+
*/
|
|
146
|
+
export const globalErrorHandler: ErrorHandler;
|
|
147
|
+
export default ErrorHandler;
|
|
148
|
+
//# sourceMappingURL=error-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-handler.d.ts","sourceRoot":"","sources":["../../../../src/utils/error-handler.js"],"names":[],"mappings":"AAyeA;;GAEG;AACH,8FAEC;AAED,2GAEC;AAED,6FAEC;AAED,qFAEC;AAED;;GAEG;AACH,yEAYC;AAED;;GAEG;AACH,uFAYC;AAED;;;;;;;;;;;GAWG;AACH,6CATW,MAAM,GACJ,YAAY,CAUxB;AA5iBD;;;GAGG;AAEH;;GAEG;AACH;IACI,wCAYC;IATG,UAAqC;IACrC,eAAkC;IAClC,aAA8B;IAC9B,iBAA4C;IAC5C,kBAA2B;IAO/B;;;;;;;;;MAWC;CACJ;AAED;IACI,+DAYC;CACJ;AAED;IACI,6EAaC;CACJ;AAED;IACI,6DAYC;CACJ;AAED;IACI,2DAYC;CACJ;AAED;;GAEG;AACH;IACI,0BAaC;IAZG;;;;;;MAOC;IAED,oBAAsB;IACtB,2BAA4B;IAC5B,2BAAiC;IAGrC;;OAEG;IACH,gDAcC;IAED;;OAEG;IACH,sDA+CC;IAED;;OAEG;IACH,0GAiCC;IAED;;OAEG;IACH,wDA8EC;IAED;;OAEG;IACH,+BAwBC;IAED;;OAEG;IACH,2BAwCC;IAED;;OAEG;IACH,+EAmCC;IAED;;OAEG;IACH,kCAEC;IAED;;OAEG;IACH,qBAGC;IAED;;OAEG;IACH;;;;;;;;;;;;MAqBC;IAED;;OAEG;IACH;;;;;QAUC;CACJ;AAED;;GAEG;AACH,8CAAqD"}
|