frontend-hamroun 1.2.74 → 1.2.77
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/Counter.d.ts +0 -0
- package/dist/batch/package.json +16 -0
- package/dist/client-router/package.json +16 -0
- package/dist/component/package.json +16 -0
- package/dist/context/package.json +16 -0
- package/dist/event-bus/package.json +16 -0
- package/dist/forms/package.json +16 -0
- package/dist/hooks/package.json +16 -0
- package/dist/hooks-0728361a.cjs +1 -0
- package/dist/hooks-b58f947c.js +133 -0
- package/dist/hooks.js +1 -0
- package/dist/hooks.mjs +13 -0
- package/dist/index.js +1 -384
- package/dist/index.mjs +130 -374
- package/dist/jsx-runtime/package.json +16 -0
- package/dist/jsx-runtime.js +1 -0
- package/dist/jsx-runtime.mjs +64 -0
- package/dist/lifecycle-events/package.json +16 -0
- package/dist/package.json +71 -0
- package/dist/render-component/package.json +16 -0
- package/dist/renderer/package.json +16 -0
- package/dist/renderer.js +1 -0
- package/dist/renderer.mjs +27 -0
- package/dist/router/package.json +16 -0
- package/dist/server/package.json +17 -0
- package/dist/server/src/batch.d.ts +3 -0
- package/dist/server/src/batch.js +23 -0
- package/dist/server/src/batch.js.map +1 -0
- package/dist/server/src/client-router.d.ts +60 -0
- package/dist/server/src/client-router.js +210 -0
- package/dist/server/src/client-router.js.map +1 -0
- package/dist/server/src/component.d.ts +14 -0
- package/dist/server/src/component.js +106 -0
- package/dist/server/src/component.js.map +1 -0
- package/dist/server/src/context.d.ts +13 -0
- package/dist/server/src/context.js +21 -0
- package/dist/server/src/context.js.map +1 -0
- package/dist/server/src/event-bus.d.ts +23 -0
- package/dist/server/src/event-bus.js +75 -0
- package/dist/server/src/event-bus.js.map +1 -0
- package/dist/server/src/forms.d.ts +40 -0
- package/dist/server/src/forms.js +148 -0
- package/dist/server/src/forms.js.map +1 -0
- package/dist/server/src/hooks.d.ts +12 -0
- package/dist/server/src/hooks.js +170 -0
- package/dist/server/src/hooks.js.map +1 -0
- package/dist/server/src/index.client.d.ts +12 -0
- package/dist/server/src/index.client.js +14 -0
- package/dist/server/src/index.client.js.map +1 -0
- package/dist/server/src/index.d.ts +88 -0
- package/dist/server/src/index.js +78 -0
- package/dist/server/src/index.js.map +1 -0
- package/dist/server/src/jsx-runtime/jsx-dev-runtime.d.ts +1 -0
- package/dist/server/src/jsx-runtime/jsx-dev-runtime.js +2 -0
- package/dist/server/src/jsx-runtime/jsx-dev-runtime.js.map +1 -0
- package/dist/server/src/jsx-runtime/jsx-runtime.d.ts +4 -0
- package/dist/server/src/jsx-runtime/jsx-runtime.js +41 -0
- package/dist/server/src/jsx-runtime/jsx-runtime.js.map +1 -0
- package/dist/server/src/jsx-runtime.d.ts +20 -0
- package/dist/server/src/jsx-runtime.js +105 -0
- package/dist/server/src/jsx-runtime.js.map +1 -0
- package/dist/server/src/lifecycle-events.d.ts +108 -0
- package/dist/server/src/lifecycle-events.js +177 -0
- package/dist/server/src/lifecycle-events.js.map +1 -0
- package/dist/server/src/renderComponent.d.ts +14 -0
- package/dist/server/src/renderComponent.js +25 -0
- package/dist/server/src/renderComponent.js.map +1 -0
- package/dist/server/src/renderer.d.ts +2 -0
- package/dist/server/src/renderer.js +31 -0
- package/dist/server/src/renderer.js.map +1 -0
- package/dist/server/src/router.d.ts +55 -0
- package/dist/server/src/router.js +166 -0
- package/dist/server/src/router.js.map +1 -0
- package/dist/server/src/server/api-router.d.ts +15 -0
- package/dist/server/src/server/api-router.js +111 -0
- package/dist/server/src/server/api-router.js.map +1 -0
- package/dist/server/src/server/auth.d.ts +32 -0
- package/dist/server/src/server/auth.js +80 -0
- package/dist/server/src/server/auth.js.map +1 -0
- package/dist/server/src/server/database.d.ts +24 -0
- package/dist/server/src/server/database.js +135 -0
- package/dist/server/src/server/database.js.map +1 -0
- package/dist/server/src/server/index.d.ts +127 -0
- package/dist/server/src/server/index.js +388 -0
- package/dist/server/src/server/index.js.map +1 -0
- package/dist/server/src/server/middleware.d.ts +11 -0
- package/dist/server/src/server/middleware.js +46 -0
- package/dist/server/src/server/middleware.js.map +1 -0
- package/dist/server/src/server/server.d.ts +9 -0
- package/dist/server/src/server/server.js +87 -0
- package/dist/server/src/server/server.js.map +1 -0
- package/dist/server/src/server/templates.d.ts +28 -0
- package/dist/server/src/server/templates.js +204 -0
- package/dist/server/src/server/templates.js.map +1 -0
- package/dist/server/src/server/types.d.ts +38 -0
- package/dist/server/src/server/types.js +4 -0
- package/dist/server/src/server/types.js.map +1 -0
- package/dist/server/src/server/utils.d.ts +70 -0
- package/dist/server/src/server/utils.js +156 -0
- package/dist/server/src/server/utils.js.map +1 -0
- package/dist/server/src/server/wasm.d.ts +9 -0
- package/dist/server/src/server/wasm.js +117 -0
- package/dist/server/src/server/wasm.js.map +1 -0
- package/dist/server/src/server-renderer.d.ts +5 -0
- package/dist/server/src/server-renderer.js +106 -0
- package/dist/server/src/server-renderer.js.map +1 -0
- package/dist/server/src/server-types.d.ts +42 -0
- package/dist/server/src/server-types.js +6 -0
- package/dist/server/src/server-types.js.map +1 -0
- package/dist/server/src/store.d.ts +41 -0
- package/dist/server/src/store.js +99 -0
- package/dist/server/src/store.js.map +1 -0
- package/dist/server/src/types.d.ts +19 -0
- package/dist/server/src/types.js +2 -0
- package/dist/server/src/types.js.map +1 -0
- package/dist/server/src/utils.d.ts +46 -0
- package/dist/server/src/utils.js +144 -0
- package/dist/server/src/utils.js.map +1 -0
- package/dist/server/src/vdom.d.ts +8 -0
- package/dist/server/src/vdom.js +22 -0
- package/dist/server/src/vdom.js.map +1 -0
- package/dist/server/src/wasm.d.ts +36 -0
- package/dist/server/src/wasm.js +159 -0
- package/dist/server/src/wasm.js.map +1 -0
- package/dist/server/tsconfig.server.tsbuildinfo +1 -0
- package/dist/server-renderer/package.json +16 -0
- package/dist/server-renderer.js +1 -0
- package/dist/server-renderer.mjs +64 -0
- package/dist/store/package.json +16 -0
- package/dist/types/package.json +16 -0
- package/dist/utils/package.json +16 -0
- package/dist/vdom/package.json +16 -0
- package/dist/wasm/package.json +16 -0
- package/dist/wasm.js +1 -0
- package/dist/wasm.mjs +103 -0
- package/package.json +14 -13
- package/templates/complete-app/build.js +284 -0
- package/templates/complete-app/package.json +40 -0
- package/templates/complete-app/public/styles.css +345 -0
- package/templates/complete-app/src/api/index.js +31 -0
- package/templates/complete-app/src/client.js +93 -0
- package/templates/complete-app/src/components/App.js +66 -0
- package/templates/complete-app/src/components/Footer.js +19 -0
- package/templates/complete-app/src/components/Header.js +38 -0
- package/templates/complete-app/src/pages/About.js +59 -0
- package/templates/complete-app/src/pages/Home.js +54 -0
- package/templates/complete-app/src/pages/WasmDemo.js +136 -0
- package/templates/complete-app/src/server.js +186 -0
- package/templates/complete-app/src/wasm/build.bat +16 -0
- package/templates/complete-app/src/wasm/build.sh +16 -0
- package/templates/complete-app/src/wasm/example.go +101 -0
- package/templates/fullstack-app/build/main.css +225 -15
- package/templates/fullstack-app/build/main.css.map +2 -2
- package/templates/fullstack-app/build/main.js +657 -372
- package/templates/fullstack-app/build/main.js.map +4 -4
- package/templates/fullstack-app/build.ts +3 -4
- package/templates/fullstack-app/public/styles.css +222 -15
- package/templates/fullstack-app/server.ts +46 -12
- package/templates/fullstack-app/src/components/ClientHome.tsx +0 -0
- package/templates/fullstack-app/src/components/ErrorBoundary.tsx +36 -0
- package/templates/fullstack-app/src/components/Layout.tsx +23 -26
- package/templates/fullstack-app/src/components/StateDemo.tsx +207 -0
- package/templates/fullstack-app/src/components/UserList.tsx +30 -13
- package/templates/fullstack-app/src/data/api.ts +173 -38
- package/templates/fullstack-app/src/main.tsx +88 -154
- package/templates/fullstack-app/src/middleware.ts +28 -0
- package/templates/fullstack-app/src/pages/404.tsx +28 -0
- package/templates/fullstack-app/src/pages/[id].tsx +0 -0
- package/templates/fullstack-app/src/pages/_app.tsx +11 -0
- package/templates/fullstack-app/src/pages/_document.tsx +25 -0
- package/templates/fullstack-app/src/pages/_error.tsx +45 -0
- package/templates/fullstack-app/src/pages/about.tsx +71 -0
- package/templates/fullstack-app/src/pages/api/users/[id].ts +73 -0
- package/templates/fullstack-app/src/pages/api/users/index.ts +43 -0
- package/templates/fullstack-app/src/pages/index.tsx +97 -20
- package/templates/fullstack-app/src/pages/users/[id].tsx +153 -0
- package/templates/fullstack-app/src/pages/wasm-demo.tsx +1 -0
- package/templates/go/build.sh +43 -43
- package/templates/go/example.go +99 -86
- package/templates/go-wasm-app/babel.config.js +8 -2
- package/templates/go-wasm-app/build-wasm.js +84 -84
- package/templates/go-wasm-app/build.config.js +62 -0
- package/templates/go-wasm-app/build.js +218 -0
- package/templates/go-wasm-app/package.json +21 -11
- package/templates/go-wasm-app/public/index.html +49 -53
- package/templates/go-wasm-app/server.js +56 -695
- package/templates/go-wasm-app/src/app.js +173 -0
- package/templates/go-wasm-app/vite.config.js +16 -5
- package/templates/ssr-template/client.js +54 -26
- package/templates/ssr-template/server.js +5 -28
- package/templates/ssr-template/vite.config.js +21 -5
- package/dist/index.d.ts +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index.mjs.map +0 -1
@@ -0,0 +1,78 @@
|
|
1
|
+
import { createElement } from './jsx-runtime';
|
2
|
+
import { loadGoWasm as loadGoWasmImpl, createTypedWasmFunction as createTypedWasmFunctionImpl, goValues as goValuesImpl } from './wasm';
|
3
|
+
// Import items needed for the default export
|
4
|
+
import { jsx, jsxs, Fragment } from './jsx-runtime';
|
5
|
+
import { render, hydrate } from './renderer';
|
6
|
+
import { useState, useEffect, useMemo, useRef, useContext, useErrorBoundary } from './hooks';
|
7
|
+
import { createContext } from './context';
|
8
|
+
import { renderToString } from './server-renderer';
|
9
|
+
import { batchUpdates } from './batch';
|
10
|
+
import { diff, shouldComponentUpdate } from './vdom';
|
11
|
+
import { Component } from './component';
|
12
|
+
// Re-export core modules with explicit names to ensure they appear in bundle
|
13
|
+
export { render, hydrate } from './renderer.js';
|
14
|
+
export { jsx, jsxs, jsxDEV, Fragment, createElement } from './jsx-runtime.js';
|
15
|
+
export { useState, useEffect, useMemo, useRef, useContext, useErrorBoundary, prepareRender, finishRender, setRenderCallback } from './hooks.js';
|
16
|
+
// Context API
|
17
|
+
export { createContext } from './context.js';
|
18
|
+
// Server-side rendering
|
19
|
+
export { renderToString } from './server-renderer.js';
|
20
|
+
// Batch updates utility
|
21
|
+
export { batchUpdates, isBatching, getIsBatching } from './batch.js';
|
22
|
+
// VDOM utilities
|
23
|
+
export { diff, shouldComponentUpdate } from './vdom.js';
|
24
|
+
// Export Component class
|
25
|
+
export { Component } from './component.js';
|
26
|
+
// Server module stub for browser environments
|
27
|
+
export const server = {
|
28
|
+
async getServer() {
|
29
|
+
throw new Error("Server module can only be used in Node.js environment");
|
30
|
+
}
|
31
|
+
};
|
32
|
+
// Export WASM functionality explicitly
|
33
|
+
export const loadGoWasm = loadGoWasmImpl;
|
34
|
+
export const createTypedWasmFunction = createTypedWasmFunctionImpl;
|
35
|
+
export const goValues = goValuesImpl;
|
36
|
+
// Add wasm object to ensure compatibility with existing dist/index.js
|
37
|
+
export const wasm = {
|
38
|
+
loadGoWasm: loadGoWasmImpl,
|
39
|
+
createTypedWasmFunction: createTypedWasmFunctionImpl,
|
40
|
+
goValues: goValuesImpl
|
41
|
+
};
|
42
|
+
// Export this so it can be properly identified in the bundle
|
43
|
+
export let isHydrating = false;
|
44
|
+
// Default export for compatibility with some module systems
|
45
|
+
export default {
|
46
|
+
Fragment: Fragment,
|
47
|
+
jsx: jsx,
|
48
|
+
jsxs: jsxs,
|
49
|
+
createElement: createElement,
|
50
|
+
render: render,
|
51
|
+
hydrate: hydrate,
|
52
|
+
useState: useState,
|
53
|
+
useEffect: useEffect,
|
54
|
+
useMemo: useMemo,
|
55
|
+
useRef: useRef,
|
56
|
+
useContext: useContext,
|
57
|
+
useErrorBoundary: useErrorBoundary,
|
58
|
+
createContext: createContext,
|
59
|
+
renderToString: renderToString,
|
60
|
+
batchUpdates: batchUpdates,
|
61
|
+
server: server,
|
62
|
+
loadGoWasm: loadGoWasm,
|
63
|
+
createTypedWasmFunction: createTypedWasmFunction,
|
64
|
+
goValues: goValues,
|
65
|
+
wasm: wasm,
|
66
|
+
Component: Component,
|
67
|
+
diff: diff,
|
68
|
+
shouldComponentUpdate: shouldComponentUpdate
|
69
|
+
};
|
70
|
+
//# sourceMappingURL=index.js.map
|
71
|
+
// This module is compatible with both ESM and CommonJS
|
72
|
+
if (typeof exports === 'object' && typeof module !== 'undefined') {
|
73
|
+
// CommonJS environment
|
74
|
+
module.exports = exports;
|
75
|
+
} else if (typeof define === 'function' && define.amd) {
|
76
|
+
// AMD environment
|
77
|
+
define(['exports'], factory);
|
78
|
+
} // ESM environment is handled by default exports
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"jsx-dev-runtime.js","sourceRoot":"","sources":["../../../../src/jsx-runtime/jsx-dev-runtime.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,4 @@
|
|
1
|
+
export declare function jsx(type: string | Function, props: any, key?: string): any;
|
2
|
+
export declare function jsxs(type: string | Function, props: any, key?: string): any;
|
3
|
+
export declare function createElement(vnode: any): HTMLElement | Text;
|
4
|
+
export declare const Fragment: unique symbol;
|
@@ -0,0 +1,41 @@
|
|
1
|
+
// This file serves as the entry point for the library, re-exporting core functionalities
|
2
|
+
export function jsx(type, props, key) {
|
3
|
+
return {
|
4
|
+
type,
|
5
|
+
props: props || {},
|
6
|
+
key
|
7
|
+
};
|
8
|
+
}
|
9
|
+
export function jsxs(type, props, key) {
|
10
|
+
return jsx(type, props, key);
|
11
|
+
}
|
12
|
+
export function createElement(vnode) {
|
13
|
+
if (typeof vnode === 'string' || typeof vnode === 'number') {
|
14
|
+
return document.createTextNode(String(vnode));
|
15
|
+
}
|
16
|
+
if (typeof vnode.type === 'function') {
|
17
|
+
const result = vnode.type(vnode.props);
|
18
|
+
return createElement(result);
|
19
|
+
}
|
20
|
+
const element = document.createElement(vnode.type);
|
21
|
+
Object.entries(vnode.props || {}).forEach(([name, value]) => {
|
22
|
+
if (name === 'children') {
|
23
|
+
const children = Array.isArray(value) ? value : [value];
|
24
|
+
children.forEach((child) => {
|
25
|
+
if (child != null) {
|
26
|
+
element.appendChild(createElement(child));
|
27
|
+
}
|
28
|
+
});
|
29
|
+
}
|
30
|
+
else if (name.startsWith('on')) {
|
31
|
+
const eventName = name.toLowerCase().substring(2);
|
32
|
+
element.addEventListener(eventName, value);
|
33
|
+
}
|
34
|
+
else {
|
35
|
+
element.setAttribute(name, value);
|
36
|
+
}
|
37
|
+
});
|
38
|
+
return element;
|
39
|
+
}
|
40
|
+
export const Fragment = Symbol('Fragment');
|
41
|
+
//# sourceMappingURL=jsx-runtime.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"jsx-runtime.js","sourceRoot":"","sources":["../../../../src/jsx-runtime/jsx-runtime.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,MAAM,UAAU,GAAG,CAAC,IAAuB,EAAE,KAAU,EAAE,GAAY;IACnE,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,KAAK,IAAI,EAAE;QAClB,GAAG;KACJ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,IAAuB,EAAE,KAAU,EAAE,GAAY;IACpE,OAAO,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAU;IACtC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC3D,OAAO,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEnD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAgB,EAAE,EAAE;QACzE,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACxD,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;gBAC9B,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;oBAClB,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
interface VNode {
|
2
|
+
type: string | Function;
|
3
|
+
props: Record<string, any>;
|
4
|
+
}
|
5
|
+
declare function jsx(type: string | Function, props: any): VNode;
|
6
|
+
declare const Fragment: ({ children }: {
|
7
|
+
children: any;
|
8
|
+
}) => any;
|
9
|
+
declare function createElement(vnode: VNode | any): Promise<Node>;
|
10
|
+
export { jsx, jsx as jsxs, jsx as jsxDEV, Fragment, createElement };
|
11
|
+
declare const jsxRuntime: {
|
12
|
+
jsx: typeof jsx;
|
13
|
+
jsxs: typeof jsx;
|
14
|
+
jsxDEV: typeof jsx;
|
15
|
+
Fragment: ({ children }: {
|
16
|
+
children: any;
|
17
|
+
}) => any;
|
18
|
+
createElement: typeof createElement;
|
19
|
+
};
|
20
|
+
export default jsxRuntime;
|
@@ -0,0 +1,105 @@
|
|
1
|
+
function jsx(type, props) {
|
2
|
+
console.log('JSX Transform:', { type, props });
|
3
|
+
const processedProps = { ...props };
|
4
|
+
// Handle children properly
|
5
|
+
if (arguments.length > 2) {
|
6
|
+
processedProps.children = Array.prototype.slice.call(arguments, 2);
|
7
|
+
}
|
8
|
+
return { type, props: processedProps };
|
9
|
+
}
|
10
|
+
const Fragment = ({ children }) => children;
|
11
|
+
async function createElement(vnode) {
|
12
|
+
console.log('Creating element from:', vnode);
|
13
|
+
// Handle primitives and null
|
14
|
+
if (vnode == null) {
|
15
|
+
return document.createTextNode('');
|
16
|
+
}
|
17
|
+
if (typeof vnode === 'boolean') {
|
18
|
+
return document.createTextNode('');
|
19
|
+
}
|
20
|
+
if (typeof vnode === 'number' || typeof vnode === 'string') {
|
21
|
+
return document.createTextNode(String(vnode));
|
22
|
+
}
|
23
|
+
// Handle arrays
|
24
|
+
if (Array.isArray(vnode)) {
|
25
|
+
const fragment = document.createDocumentFragment();
|
26
|
+
for (const child of vnode) {
|
27
|
+
const node = await createElement(child);
|
28
|
+
fragment.appendChild(node);
|
29
|
+
}
|
30
|
+
return fragment;
|
31
|
+
}
|
32
|
+
// Handle VNode
|
33
|
+
if ('type' in vnode && vnode.props !== undefined) {
|
34
|
+
const { type, props } = vnode;
|
35
|
+
// Handle function components
|
36
|
+
if (typeof type === 'function') {
|
37
|
+
try {
|
38
|
+
const result = await type(props || {});
|
39
|
+
const node = await createElement(result);
|
40
|
+
if (node instanceof Element) {
|
41
|
+
node.setAttribute('data-component-id', type.name || type.toString());
|
42
|
+
}
|
43
|
+
return node;
|
44
|
+
}
|
45
|
+
catch (error) {
|
46
|
+
console.error('Error rendering component:', error);
|
47
|
+
return document.createTextNode('');
|
48
|
+
}
|
49
|
+
}
|
50
|
+
// Create DOM element
|
51
|
+
const element = document.createElement(type);
|
52
|
+
// Handle props
|
53
|
+
for (const [key, value] of Object.entries(props || {})) {
|
54
|
+
if (key === 'children')
|
55
|
+
continue;
|
56
|
+
if (key.startsWith('on') && typeof value === 'function') {
|
57
|
+
const eventName = key.toLowerCase().slice(2);
|
58
|
+
// Remove existing event listener if any
|
59
|
+
const existingHandler = element.__events?.[eventName];
|
60
|
+
if (existingHandler) {
|
61
|
+
element.removeEventListener(eventName, existingHandler);
|
62
|
+
}
|
63
|
+
// Add new event listener
|
64
|
+
element.addEventListener(eventName, value);
|
65
|
+
if (!element.__events) {
|
66
|
+
element.__events = {};
|
67
|
+
}
|
68
|
+
element.__events[eventName] = value;
|
69
|
+
}
|
70
|
+
else if (key === 'style' && typeof value === 'object') {
|
71
|
+
Object.assign(element.style, value);
|
72
|
+
}
|
73
|
+
else if (key === 'className') {
|
74
|
+
element.setAttribute('class', String(value));
|
75
|
+
}
|
76
|
+
else if (key !== 'key' && key !== 'ref') {
|
77
|
+
element.setAttribute(key, String(value));
|
78
|
+
}
|
79
|
+
}
|
80
|
+
// Handle children
|
81
|
+
const children = props?.children;
|
82
|
+
if (children != null) {
|
83
|
+
const childArray = Array.isArray(children) ? children.flat() : [children];
|
84
|
+
for (const child of childArray) {
|
85
|
+
const childNode = await createElement(child);
|
86
|
+
element.appendChild(childNode);
|
87
|
+
}
|
88
|
+
}
|
89
|
+
return element;
|
90
|
+
}
|
91
|
+
// Handle other objects by converting to string
|
92
|
+
return document.createTextNode(String(vnode));
|
93
|
+
}
|
94
|
+
// Export named functions and aliases without duplicates
|
95
|
+
export { jsx, jsx as jsxs, jsx as jsxDEV, Fragment, createElement };
|
96
|
+
// Named exports object
|
97
|
+
const jsxRuntime = {
|
98
|
+
jsx,
|
99
|
+
jsxs: jsx,
|
100
|
+
jsxDEV: jsx,
|
101
|
+
Fragment,
|
102
|
+
createElement
|
103
|
+
};
|
104
|
+
export default jsxRuntime;
|
105
|
+
//# sourceMappingURL=jsx-runtime.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"jsx-runtime.js","sourceRoot":"","sources":["../../../src/jsx-runtime.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,108 @@
|
|
1
|
+
export declare enum LifecycleEvents {
|
2
|
+
APP_INIT = "app:init",
|
3
|
+
APP_MOUNTED = "app:mounted",
|
4
|
+
APP_UPDATED = "app:updated",
|
5
|
+
APP_ERROR = "app:error",
|
6
|
+
APP_DESTROYED = "app:destroyed",
|
7
|
+
COMPONENT_CREATED = "component:created",
|
8
|
+
COMPONENT_MOUNTED = "component:mounted",
|
9
|
+
COMPONENT_UPDATED = "component:updated",
|
10
|
+
COMPONENT_ERROR = "component:error",
|
11
|
+
COMPONENT_UNMOUNTED = "component:unmounted",
|
12
|
+
ROUTER_BEFORE_CHANGE = "router:before-change",
|
13
|
+
ROUTER_AFTER_CHANGE = "router:after-change",
|
14
|
+
ROUTER_ERROR = "router:error",
|
15
|
+
STORE_INITIALIZED = "store:initialized",
|
16
|
+
STORE_BEFORE_ACTION = "store:before-action",
|
17
|
+
STORE_AFTER_ACTION = "store:after-action",
|
18
|
+
STORE_ERROR = "store:error"
|
19
|
+
}
|
20
|
+
export interface ComponentInfo {
|
21
|
+
id: string;
|
22
|
+
name: string;
|
23
|
+
props: Record<string, any>;
|
24
|
+
path?: string;
|
25
|
+
}
|
26
|
+
export interface RouteChangeInfo {
|
27
|
+
from: string;
|
28
|
+
to: string;
|
29
|
+
params: Record<string, string>;
|
30
|
+
}
|
31
|
+
export interface StoreActionInfo {
|
32
|
+
type: string;
|
33
|
+
payload: any;
|
34
|
+
prevState: any;
|
35
|
+
nextState: any;
|
36
|
+
}
|
37
|
+
export declare function emitAppInit(data: any): void;
|
38
|
+
export declare function emitAppMounted(rootElement: HTMLElement): void;
|
39
|
+
export declare function emitAppUpdated(): void;
|
40
|
+
export declare function emitAppError(error: Error): void;
|
41
|
+
export declare function emitAppDestroyed(): void;
|
42
|
+
export declare function emitComponentCreated(info: ComponentInfo): void;
|
43
|
+
export declare function emitComponentMounted(info: ComponentInfo, element: HTMLElement): void;
|
44
|
+
export declare function emitComponentUpdated(info: ComponentInfo, prevProps: Record<string, any>, newProps: Record<string, any>): void;
|
45
|
+
export declare function emitComponentError(info: ComponentInfo, error: Error): void;
|
46
|
+
export declare function emitComponentUnmounted(info: ComponentInfo): void;
|
47
|
+
export declare function emitRouterBeforeChange(info: RouteChangeInfo): Promise<boolean>;
|
48
|
+
export declare function emitRouterAfterChange(info: RouteChangeInfo): void;
|
49
|
+
export declare function emitRouterError(error: Error, info?: Partial<RouteChangeInfo>): void;
|
50
|
+
export declare function emitStoreInitialized(state: any): void;
|
51
|
+
export declare function emitStoreBeforeAction(actionType: string, payload: any, state: any): void;
|
52
|
+
export declare function emitStoreAfterAction(info: StoreActionInfo): void;
|
53
|
+
export declare function emitStoreError(error: Error, actionType: string, payload: any): void;
|
54
|
+
export declare function onAppInit(handler: (data: any) => void): () => void;
|
55
|
+
export declare function onAppMounted(handler: (rootElement: HTMLElement) => void): () => void;
|
56
|
+
export declare function onAppUpdated(handler: () => void): () => void;
|
57
|
+
export declare function onAppError(handler: (error: Error) => void): () => void;
|
58
|
+
export declare function onAppDestroyed(handler: () => void): () => void;
|
59
|
+
export declare function onComponentCreated(handler: (info: ComponentInfo) => void): () => void;
|
60
|
+
export declare function onComponentMounted(handler: (info: ComponentInfo, element: HTMLElement) => void): () => void;
|
61
|
+
export declare function onComponentUpdated(handler: (info: ComponentInfo, prevProps: Record<string, any>, newProps: Record<string, any>) => void): () => void;
|
62
|
+
export declare function onComponentError(handler: (info: ComponentInfo, error: Error) => void): () => void;
|
63
|
+
export declare function onComponentUnmounted(handler: (info: ComponentInfo) => void): () => void;
|
64
|
+
export declare function onRouterBeforeChange(handler: (info: RouteChangeInfo, prevent: () => void) => void): () => void;
|
65
|
+
export declare function onRouterAfterChange(handler: (info: RouteChangeInfo) => void): () => void;
|
66
|
+
export declare function onRouterError(handler: (error: Error, info?: Partial<RouteChangeInfo>) => void): () => void;
|
67
|
+
export declare function onStoreInitialized(handler: (state: any) => void): () => void;
|
68
|
+
export declare function onStoreBeforeAction(handler: (actionType: string, payload: any, state: any) => void): () => void;
|
69
|
+
export declare function onStoreAfterAction(handler: (info: StoreActionInfo) => void): () => void;
|
70
|
+
export declare function onStoreError(handler: (error: Error, actionType: string, payload: any) => void): () => void;
|
71
|
+
declare const _default: {
|
72
|
+
LifecycleEvents: typeof LifecycleEvents;
|
73
|
+
emitAppInit: typeof emitAppInit;
|
74
|
+
emitAppMounted: typeof emitAppMounted;
|
75
|
+
emitAppUpdated: typeof emitAppUpdated;
|
76
|
+
emitAppError: typeof emitAppError;
|
77
|
+
emitAppDestroyed: typeof emitAppDestroyed;
|
78
|
+
emitComponentCreated: typeof emitComponentCreated;
|
79
|
+
emitComponentMounted: typeof emitComponentMounted;
|
80
|
+
emitComponentUpdated: typeof emitComponentUpdated;
|
81
|
+
emitComponentError: typeof emitComponentError;
|
82
|
+
emitComponentUnmounted: typeof emitComponentUnmounted;
|
83
|
+
emitRouterBeforeChange: typeof emitRouterBeforeChange;
|
84
|
+
emitRouterAfterChange: typeof emitRouterAfterChange;
|
85
|
+
emitRouterError: typeof emitRouterError;
|
86
|
+
emitStoreInitialized: typeof emitStoreInitialized;
|
87
|
+
emitStoreBeforeAction: typeof emitStoreBeforeAction;
|
88
|
+
emitStoreAfterAction: typeof emitStoreAfterAction;
|
89
|
+
emitStoreError: typeof emitStoreError;
|
90
|
+
onAppInit: typeof onAppInit;
|
91
|
+
onAppMounted: typeof onAppMounted;
|
92
|
+
onAppUpdated: typeof onAppUpdated;
|
93
|
+
onAppError: typeof onAppError;
|
94
|
+
onAppDestroyed: typeof onAppDestroyed;
|
95
|
+
onComponentCreated: typeof onComponentCreated;
|
96
|
+
onComponentMounted: typeof onComponentMounted;
|
97
|
+
onComponentUpdated: typeof onComponentUpdated;
|
98
|
+
onComponentError: typeof onComponentError;
|
99
|
+
onComponentUnmounted: typeof onComponentUnmounted;
|
100
|
+
onRouterBeforeChange: typeof onRouterBeforeChange;
|
101
|
+
onRouterAfterChange: typeof onRouterAfterChange;
|
102
|
+
onRouterError: typeof onRouterError;
|
103
|
+
onStoreInitialized: typeof onStoreInitialized;
|
104
|
+
onStoreBeforeAction: typeof onStoreBeforeAction;
|
105
|
+
onStoreAfterAction: typeof onStoreAfterAction;
|
106
|
+
onStoreError: typeof onStoreError;
|
107
|
+
};
|
108
|
+
export default _default;
|
@@ -0,0 +1,177 @@
|
|
1
|
+
/**
|
2
|
+
* Lifecycle events for components and application
|
3
|
+
*/
|
4
|
+
import { eventBus } from './event-bus';
|
5
|
+
export var LifecycleEvents;
|
6
|
+
(function (LifecycleEvents) {
|
7
|
+
LifecycleEvents["APP_INIT"] = "app:init";
|
8
|
+
LifecycleEvents["APP_MOUNTED"] = "app:mounted";
|
9
|
+
LifecycleEvents["APP_UPDATED"] = "app:updated";
|
10
|
+
LifecycleEvents["APP_ERROR"] = "app:error";
|
11
|
+
LifecycleEvents["APP_DESTROYED"] = "app:destroyed";
|
12
|
+
LifecycleEvents["COMPONENT_CREATED"] = "component:created";
|
13
|
+
LifecycleEvents["COMPONENT_MOUNTED"] = "component:mounted";
|
14
|
+
LifecycleEvents["COMPONENT_UPDATED"] = "component:updated";
|
15
|
+
LifecycleEvents["COMPONENT_ERROR"] = "component:error";
|
16
|
+
LifecycleEvents["COMPONENT_UNMOUNTED"] = "component:unmounted";
|
17
|
+
LifecycleEvents["ROUTER_BEFORE_CHANGE"] = "router:before-change";
|
18
|
+
LifecycleEvents["ROUTER_AFTER_CHANGE"] = "router:after-change";
|
19
|
+
LifecycleEvents["ROUTER_ERROR"] = "router:error";
|
20
|
+
LifecycleEvents["STORE_INITIALIZED"] = "store:initialized";
|
21
|
+
LifecycleEvents["STORE_BEFORE_ACTION"] = "store:before-action";
|
22
|
+
LifecycleEvents["STORE_AFTER_ACTION"] = "store:after-action";
|
23
|
+
LifecycleEvents["STORE_ERROR"] = "store:error";
|
24
|
+
})(LifecycleEvents || (LifecycleEvents = {}));
|
25
|
+
// Event emitters
|
26
|
+
export function emitAppInit(data) {
|
27
|
+
eventBus.emit(LifecycleEvents.APP_INIT, data);
|
28
|
+
}
|
29
|
+
export function emitAppMounted(rootElement) {
|
30
|
+
eventBus.emit(LifecycleEvents.APP_MOUNTED, rootElement);
|
31
|
+
}
|
32
|
+
export function emitAppUpdated() {
|
33
|
+
eventBus.emit(LifecycleEvents.APP_UPDATED);
|
34
|
+
}
|
35
|
+
export function emitAppError(error) {
|
36
|
+
eventBus.emit(LifecycleEvents.APP_ERROR, error);
|
37
|
+
}
|
38
|
+
export function emitAppDestroyed() {
|
39
|
+
eventBus.emit(LifecycleEvents.APP_DESTROYED);
|
40
|
+
}
|
41
|
+
export function emitComponentCreated(info) {
|
42
|
+
eventBus.emit(LifecycleEvents.COMPONENT_CREATED, info);
|
43
|
+
}
|
44
|
+
export function emitComponentMounted(info, element) {
|
45
|
+
eventBus.emit(LifecycleEvents.COMPONENT_MOUNTED, info, element);
|
46
|
+
}
|
47
|
+
export function emitComponentUpdated(info, prevProps, newProps) {
|
48
|
+
eventBus.emit(LifecycleEvents.COMPONENT_UPDATED, info, prevProps, newProps);
|
49
|
+
}
|
50
|
+
export function emitComponentError(info, error) {
|
51
|
+
eventBus.emit(LifecycleEvents.COMPONENT_ERROR, info, error);
|
52
|
+
}
|
53
|
+
export function emitComponentUnmounted(info) {
|
54
|
+
eventBus.emit(LifecycleEvents.COMPONENT_UNMOUNTED, info);
|
55
|
+
}
|
56
|
+
export function emitRouterBeforeChange(info) {
|
57
|
+
return new Promise(resolve => {
|
58
|
+
// Allow hooks to prevent navigation
|
59
|
+
let prevented = false;
|
60
|
+
const prevent = () => {
|
61
|
+
prevented = true;
|
62
|
+
};
|
63
|
+
eventBus.emit(LifecycleEvents.ROUTER_BEFORE_CHANGE, info, prevent);
|
64
|
+
// Resolve with whether navigation should continue
|
65
|
+
resolve(!prevented);
|
66
|
+
});
|
67
|
+
}
|
68
|
+
export function emitRouterAfterChange(info) {
|
69
|
+
eventBus.emit(LifecycleEvents.ROUTER_AFTER_CHANGE, info);
|
70
|
+
}
|
71
|
+
export function emitRouterError(error, info) {
|
72
|
+
eventBus.emit(LifecycleEvents.ROUTER_ERROR, error, info);
|
73
|
+
}
|
74
|
+
export function emitStoreInitialized(state) {
|
75
|
+
eventBus.emit(LifecycleEvents.STORE_INITIALIZED, state);
|
76
|
+
}
|
77
|
+
export function emitStoreBeforeAction(actionType, payload, state) {
|
78
|
+
eventBus.emit(LifecycleEvents.STORE_BEFORE_ACTION, actionType, payload, state);
|
79
|
+
}
|
80
|
+
export function emitStoreAfterAction(info) {
|
81
|
+
eventBus.emit(LifecycleEvents.STORE_AFTER_ACTION, info);
|
82
|
+
}
|
83
|
+
export function emitStoreError(error, actionType, payload) {
|
84
|
+
eventBus.emit(LifecycleEvents.STORE_ERROR, error, actionType, payload);
|
85
|
+
}
|
86
|
+
// Event listeners
|
87
|
+
export function onAppInit(handler) {
|
88
|
+
return eventBus.on(LifecycleEvents.APP_INIT, handler);
|
89
|
+
}
|
90
|
+
export function onAppMounted(handler) {
|
91
|
+
return eventBus.on(LifecycleEvents.APP_MOUNTED, handler);
|
92
|
+
}
|
93
|
+
export function onAppUpdated(handler) {
|
94
|
+
return eventBus.on(LifecycleEvents.APP_UPDATED, handler);
|
95
|
+
}
|
96
|
+
export function onAppError(handler) {
|
97
|
+
return eventBus.on(LifecycleEvents.APP_ERROR, handler);
|
98
|
+
}
|
99
|
+
export function onAppDestroyed(handler) {
|
100
|
+
return eventBus.on(LifecycleEvents.APP_DESTROYED, handler);
|
101
|
+
}
|
102
|
+
export function onComponentCreated(handler) {
|
103
|
+
return eventBus.on(LifecycleEvents.COMPONENT_CREATED, handler);
|
104
|
+
}
|
105
|
+
export function onComponentMounted(handler) {
|
106
|
+
return eventBus.on(LifecycleEvents.COMPONENT_MOUNTED, handler);
|
107
|
+
}
|
108
|
+
export function onComponentUpdated(handler) {
|
109
|
+
return eventBus.on(LifecycleEvents.COMPONENT_UPDATED, handler);
|
110
|
+
}
|
111
|
+
export function onComponentError(handler) {
|
112
|
+
return eventBus.on(LifecycleEvents.COMPONENT_ERROR, handler);
|
113
|
+
}
|
114
|
+
export function onComponentUnmounted(handler) {
|
115
|
+
return eventBus.on(LifecycleEvents.COMPONENT_UNMOUNTED, handler);
|
116
|
+
}
|
117
|
+
export function onRouterBeforeChange(handler) {
|
118
|
+
return eventBus.on(LifecycleEvents.ROUTER_BEFORE_CHANGE, handler);
|
119
|
+
}
|
120
|
+
export function onRouterAfterChange(handler) {
|
121
|
+
return eventBus.on(LifecycleEvents.ROUTER_AFTER_CHANGE, handler);
|
122
|
+
}
|
123
|
+
export function onRouterError(handler) {
|
124
|
+
return eventBus.on(LifecycleEvents.ROUTER_ERROR, handler);
|
125
|
+
}
|
126
|
+
export function onStoreInitialized(handler) {
|
127
|
+
return eventBus.on(LifecycleEvents.STORE_INITIALIZED, handler);
|
128
|
+
}
|
129
|
+
export function onStoreBeforeAction(handler) {
|
130
|
+
return eventBus.on(LifecycleEvents.STORE_BEFORE_ACTION, handler);
|
131
|
+
}
|
132
|
+
export function onStoreAfterAction(handler) {
|
133
|
+
return eventBus.on(LifecycleEvents.STORE_AFTER_ACTION, handler);
|
134
|
+
}
|
135
|
+
export function onStoreError(handler) {
|
136
|
+
return eventBus.on(LifecycleEvents.STORE_ERROR, handler);
|
137
|
+
}
|
138
|
+
export default {
|
139
|
+
LifecycleEvents,
|
140
|
+
// Emitters
|
141
|
+
emitAppInit,
|
142
|
+
emitAppMounted,
|
143
|
+
emitAppUpdated,
|
144
|
+
emitAppError,
|
145
|
+
emitAppDestroyed,
|
146
|
+
emitComponentCreated,
|
147
|
+
emitComponentMounted,
|
148
|
+
emitComponentUpdated,
|
149
|
+
emitComponentError,
|
150
|
+
emitComponentUnmounted,
|
151
|
+
emitRouterBeforeChange,
|
152
|
+
emitRouterAfterChange,
|
153
|
+
emitRouterError,
|
154
|
+
emitStoreInitialized,
|
155
|
+
emitStoreBeforeAction,
|
156
|
+
emitStoreAfterAction,
|
157
|
+
emitStoreError,
|
158
|
+
// Listeners
|
159
|
+
onAppInit,
|
160
|
+
onAppMounted,
|
161
|
+
onAppUpdated,
|
162
|
+
onAppError,
|
163
|
+
onAppDestroyed,
|
164
|
+
onComponentCreated,
|
165
|
+
onComponentMounted,
|
166
|
+
onComponentUpdated,
|
167
|
+
onComponentError,
|
168
|
+
onComponentUnmounted,
|
169
|
+
onRouterBeforeChange,
|
170
|
+
onRouterAfterChange,
|
171
|
+
onRouterError,
|
172
|
+
onStoreInitialized,
|
173
|
+
onStoreBeforeAction,
|
174
|
+
onStoreAfterAction,
|
175
|
+
onStoreError
|
176
|
+
};
|
177
|
+
//# sourceMappingURL=lifecycle-events.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"lifecycle-events.js","sourceRoot":"","sources":["../../../src/lifecycle-events.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
/**
|
2
|
+
* Helper function to render a component to a string
|
3
|
+
* Used by the server for SSR
|
4
|
+
*/
|
5
|
+
export declare function renderComponent(Component: any, props?: any): Promise<{
|
6
|
+
html: string;
|
7
|
+
success: boolean;
|
8
|
+
error?: undefined;
|
9
|
+
} | {
|
10
|
+
html: string;
|
11
|
+
success: boolean;
|
12
|
+
error: unknown;
|
13
|
+
}>;
|
14
|
+
export default renderComponent;
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import { renderToString } from './server-renderer';
|
2
|
+
/**
|
3
|
+
* Helper function to render a component to a string
|
4
|
+
* Used by the server for SSR
|
5
|
+
*/
|
6
|
+
export async function renderComponent(Component, props = {}) {
|
7
|
+
try {
|
8
|
+
// Create HTML string from component
|
9
|
+
const html = renderToString(Component(props));
|
10
|
+
return {
|
11
|
+
html,
|
12
|
+
success: true
|
13
|
+
};
|
14
|
+
}
|
15
|
+
catch (error) {
|
16
|
+
console.error('Error rendering component:', error);
|
17
|
+
return {
|
18
|
+
html: `<div class="error">Error rendering component</div>`,
|
19
|
+
success: false,
|
20
|
+
error
|
21
|
+
};
|
22
|
+
}
|
23
|
+
}
|
24
|
+
export default renderComponent;
|
25
|
+
//# sourceMappingURL=renderComponent.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"renderComponent.js","sourceRoot":"","sources":["../../../src/renderComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAc,EAAE,QAAa,EAAE;IACnE,IAAI,CAAC;QACH,oCAAoC;QACpC,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9C,OAAO;YACL,IAAI;YACJ,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACnD,OAAO;YACL,IAAI,EAAE,oDAAoD;YAC1D,OAAO,EAAE,KAAK;YACd,KAAK;SACN,CAAC;IACJ,CAAC;AACH,CAAC;AAED,eAAe,eAAe,CAAC"}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import { createElement } from './jsx-runtime';
|
2
|
+
import { prepareRender, finishRender, setRenderCallback } from './hooks';
|
3
|
+
import { batchUpdates } from './batch';
|
4
|
+
let isHydrating = false;
|
5
|
+
export async function hydrate(element, container) {
|
6
|
+
isHydrating = true;
|
7
|
+
try {
|
8
|
+
await render(element, container);
|
9
|
+
}
|
10
|
+
finally {
|
11
|
+
isHydrating = false;
|
12
|
+
}
|
13
|
+
}
|
14
|
+
export async function render(element, container) {
|
15
|
+
console.log('Rendering to:', container.id);
|
16
|
+
batchUpdates(async () => {
|
17
|
+
const rendererId = prepareRender();
|
18
|
+
try {
|
19
|
+
setRenderCallback(render, element, container);
|
20
|
+
const domNode = await createElement(element);
|
21
|
+
if (!isHydrating) {
|
22
|
+
container.innerHTML = '';
|
23
|
+
}
|
24
|
+
container.appendChild(domNode);
|
25
|
+
}
|
26
|
+
finally {
|
27
|
+
finishRender();
|
28
|
+
}
|
29
|
+
});
|
30
|
+
}
|
31
|
+
//# sourceMappingURL=renderer.js.map
|