baraqex 1.0.43 → 1.0.44
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/bin/baraqex.js +1 -1
- package/dist/browser.js +137 -782
- package/dist/browser.js.map +4 -4
- package/dist/index.js +214 -883
- package/dist/index.js.map +4 -4
- package/dist/server/index.js +79 -214
- package/dist/server/index.js.map +4 -4
- package/package.json +2 -2
- package/templates/ssr-template/index.html +35 -0
- package/templates/ssr-template/package-lock.json +2664 -445
- package/templates/ssr-template/package.json +20 -14
- package/templates/ssr-template/src/App.tsx +65 -42
- package/templates/ssr-template/src/client.tsx +2 -10
- package/templates/ssr-template/src/server.ts +1 -1
package/dist/server/index.js
CHANGED
|
@@ -15,236 +15,101 @@ var __export = (target, all) => {
|
|
|
15
15
|
import path4 from "path";
|
|
16
16
|
import fs4 from "fs";
|
|
17
17
|
|
|
18
|
-
// node_modules/frontend-hamroun/dist/index.
|
|
19
|
-
var contexts = /* @__PURE__ */ new Map();
|
|
20
|
-
function createContext(defaultValue) {
|
|
21
|
-
const contextId = Symbol("context");
|
|
22
|
-
const Provider = ({ value, children }) => {
|
|
23
|
-
contexts.set(contextId, value);
|
|
24
|
-
return children;
|
|
25
|
-
};
|
|
26
|
-
const Consumer = ({ children }) => {
|
|
27
|
-
const value = contexts.get(contextId) ?? defaultValue;
|
|
28
|
-
return children(value);
|
|
29
|
-
};
|
|
30
|
-
const context = {
|
|
31
|
-
Provider,
|
|
32
|
-
Consumer,
|
|
33
|
-
displayName: "Context"
|
|
34
|
-
};
|
|
35
|
-
return context;
|
|
36
|
-
}
|
|
18
|
+
// node_modules/frontend-hamroun/dist/index.mjs
|
|
37
19
|
var currentRender = 0;
|
|
38
|
-
var isSSR = false;
|
|
39
|
-
var states = /* @__PURE__ */ new Map();
|
|
40
20
|
var stateIndices = /* @__PURE__ */ new Map();
|
|
41
|
-
|
|
21
|
+
var isServer = typeof window === "undefined";
|
|
22
|
+
var serverStates = /* @__PURE__ */ new Map();
|
|
23
|
+
function prepareRender() {
|
|
42
24
|
currentRender++;
|
|
43
|
-
isSSR = isServerSideRender;
|
|
44
25
|
stateIndices.set(currentRender, 0);
|
|
45
|
-
if (!states.has(currentRender)) {
|
|
46
|
-
states.set(currentRender, []);
|
|
47
|
-
}
|
|
48
26
|
return currentRender;
|
|
49
27
|
}
|
|
50
28
|
function finishRender() {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
prepareRender(element);
|
|
54
|
-
try {
|
|
55
|
-
const html = await renderNodeToString(element);
|
|
56
|
-
return html;
|
|
57
|
-
} finally {
|
|
29
|
+
if (isServer) {
|
|
30
|
+
serverStates.delete(currentRender);
|
|
58
31
|
}
|
|
32
|
+
currentRender = 0;
|
|
33
|
+
}
|
|
34
|
+
function renderToString(vnode) {
|
|
35
|
+
prepareRender();
|
|
36
|
+
const html = renderNodeToString(vnode);
|
|
37
|
+
finishRender();
|
|
38
|
+
return html;
|
|
59
39
|
}
|
|
60
|
-
|
|
61
|
-
|
|
40
|
+
function renderNodeToString(vnode) {
|
|
41
|
+
var _a, _b, _c;
|
|
42
|
+
if (vnode === null || vnode === void 0)
|
|
62
43
|
return "";
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
if (
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
44
|
+
if (typeof vnode === "boolean")
|
|
45
|
+
return "";
|
|
46
|
+
if (typeof vnode === "number" || typeof vnode === "string")
|
|
47
|
+
return escapeHtml(String(vnode));
|
|
48
|
+
if (typeof vnode.type === "function") {
|
|
49
|
+
const Component2 = vnode.type;
|
|
50
|
+
const renderedNode = Component2(vnode.props || {});
|
|
51
|
+
return renderNodeToString(renderedNode);
|
|
52
|
+
}
|
|
53
|
+
if (typeof vnode.type === "string") {
|
|
54
|
+
const tag = vnode.type;
|
|
55
|
+
let attrs = "";
|
|
56
|
+
let children = "";
|
|
57
|
+
if (vnode.props) {
|
|
58
|
+
for (const [key, value] of Object.entries(vnode.props)) {
|
|
59
|
+
if (key === "children")
|
|
60
|
+
continue;
|
|
61
|
+
if (key.startsWith("on"))
|
|
62
|
+
continue;
|
|
63
|
+
if (key === "className") {
|
|
64
|
+
attrs += ` class="${escapeHtml(value)}"`;
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
if (typeof value === "string" || typeof value === "number") {
|
|
68
|
+
attrs += ` ${key}="${escapeHtml(String(value))}"`;
|
|
69
|
+
} else if (value === true) {
|
|
70
|
+
attrs += ` ${key}`;
|
|
81
71
|
}
|
|
82
|
-
} catch (error) {
|
|
83
|
-
console.error("Error rendering component:", error);
|
|
84
|
-
return `<!-- Error rendering component: ${error.message} -->`;
|
|
85
72
|
}
|
|
86
73
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
key = "class";
|
|
123
|
-
if (value === true)
|
|
124
|
-
return key;
|
|
125
|
-
if (key === "style" && typeof value === "object" && value !== null) {
|
|
126
|
-
const styleString = Object.entries(value).map(([prop, val]) => `${kebabCase(prop)}:${val}`).join(";");
|
|
127
|
-
return `style="${escapeHtml(styleString)}"`;
|
|
128
|
-
}
|
|
129
|
-
return `${key}="${escapeHtml(String(value))}"`;
|
|
130
|
-
}).join(" ");
|
|
131
|
-
const openTag = `<${tagName}${attributeString ? " " + attributeString : ""}>`;
|
|
132
|
-
if (voidElements.has(tagName)) {
|
|
133
|
-
return openTag.slice(0, -1) + "/>";
|
|
134
|
-
}
|
|
135
|
-
const closeTag = `</${tagName}>`;
|
|
136
|
-
if (children != null) {
|
|
137
|
-
const childrenString = await renderNodeToString(children);
|
|
138
|
-
return openTag + childrenString + closeTag;
|
|
139
|
-
}
|
|
140
|
-
return openTag + closeTag;
|
|
74
|
+
const childrenArray = ((_a = vnode.props) == null ? void 0 : _a.children) ? Array.isArray(vnode.props.children) ? vnode.props.children : [vnode.props.children] : [];
|
|
75
|
+
for (const child of childrenArray) {
|
|
76
|
+
children += renderNodeToString(child);
|
|
77
|
+
}
|
|
78
|
+
const selfClosing = [
|
|
79
|
+
"area",
|
|
80
|
+
"base",
|
|
81
|
+
"br",
|
|
82
|
+
"col",
|
|
83
|
+
"embed",
|
|
84
|
+
"hr",
|
|
85
|
+
"img",
|
|
86
|
+
"input",
|
|
87
|
+
"link",
|
|
88
|
+
"meta",
|
|
89
|
+
"param",
|
|
90
|
+
"source",
|
|
91
|
+
"track",
|
|
92
|
+
"wbr"
|
|
93
|
+
];
|
|
94
|
+
if (selfClosing.includes(tag)) {
|
|
95
|
+
return `<${tag}${attrs}/>`;
|
|
96
|
+
}
|
|
97
|
+
return `<${tag}${attrs}>${children}</${tag}>`;
|
|
98
|
+
}
|
|
99
|
+
if (vnode.type === Symbol.for("react.fragment")) {
|
|
100
|
+
let fragmentOutput = "";
|
|
101
|
+
const children = Array.isArray((_b = vnode.props) == null ? void 0 : _b.children) ? vnode.props.children : ((_c = vnode.props) == null ? void 0 : _c.children) ? [vnode.props.children] : [];
|
|
102
|
+
for (const child of children) {
|
|
103
|
+
fragmentOutput += renderNodeToString(child);
|
|
104
|
+
}
|
|
105
|
+
return fragmentOutput;
|
|
106
|
+
}
|
|
107
|
+
console.warn("Unknown vnode type:", vnode.type);
|
|
108
|
+
return "";
|
|
141
109
|
}
|
|
142
110
|
function escapeHtml(text) {
|
|
143
|
-
|
|
144
|
-
"&": "&",
|
|
145
|
-
"<": "<",
|
|
146
|
-
">": ">",
|
|
147
|
-
'"': """,
|
|
148
|
-
"'": "'",
|
|
149
|
-
"/": "/"
|
|
150
|
-
};
|
|
151
|
-
return text.replace(/[&<>"'/]/g, (match) => htmlEscapes[match]);
|
|
152
|
-
}
|
|
153
|
-
function kebabCase(str) {
|
|
154
|
-
return str.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);
|
|
155
|
-
}
|
|
156
|
-
var RouterContext = createContext({
|
|
157
|
-
location: {
|
|
158
|
-
pathname: "/",
|
|
159
|
-
search: "",
|
|
160
|
-
hash: ""
|
|
161
|
-
},
|
|
162
|
-
params: {},
|
|
163
|
-
navigate: () => {
|
|
164
|
-
},
|
|
165
|
-
match: () => false
|
|
166
|
-
});
|
|
167
|
-
function createEventBus() {
|
|
168
|
-
const events = /* @__PURE__ */ new Map();
|
|
169
|
-
const onceHandlers = /* @__PURE__ */ new WeakMap();
|
|
170
|
-
const on = (event, handler) => {
|
|
171
|
-
if (!events.has(event)) {
|
|
172
|
-
events.set(event, /* @__PURE__ */ new Set());
|
|
173
|
-
}
|
|
174
|
-
events.get(event).add(handler);
|
|
175
|
-
return () => off(event, handler);
|
|
176
|
-
};
|
|
177
|
-
const once = (event, handler) => {
|
|
178
|
-
const onceWrapper = (...args) => {
|
|
179
|
-
off(event, onceWrapper);
|
|
180
|
-
handler(...args);
|
|
181
|
-
};
|
|
182
|
-
onceHandlers.set(handler, onceWrapper);
|
|
183
|
-
return on(event, onceWrapper);
|
|
184
|
-
};
|
|
185
|
-
const off = (event, handler) => {
|
|
186
|
-
if (!handler) {
|
|
187
|
-
events.delete(event);
|
|
188
|
-
return;
|
|
189
|
-
}
|
|
190
|
-
const wrappedHandler = onceHandlers.get(handler);
|
|
191
|
-
const handlerToRemove = wrappedHandler || handler;
|
|
192
|
-
if (events.has(event)) {
|
|
193
|
-
events.get(event).delete(handlerToRemove);
|
|
194
|
-
if (events.get(event).size === 0) {
|
|
195
|
-
events.delete(event);
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
};
|
|
199
|
-
const emit = (event, ...args) => {
|
|
200
|
-
if (!events.has(event)) {
|
|
201
|
-
return;
|
|
202
|
-
}
|
|
203
|
-
const handlers = Array.from(events.get(event));
|
|
204
|
-
for (const handler of handlers) {
|
|
205
|
-
handler(...args);
|
|
206
|
-
}
|
|
207
|
-
};
|
|
208
|
-
const clear = (event) => {
|
|
209
|
-
if (event) {
|
|
210
|
-
events.delete(event);
|
|
211
|
-
} else {
|
|
212
|
-
events.clear();
|
|
213
|
-
}
|
|
214
|
-
};
|
|
215
|
-
return { on, once, off, emit, clear };
|
|
111
|
+
return text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
216
112
|
}
|
|
217
|
-
var globalEventBus = createEventBus();
|
|
218
|
-
var StoreContext = createContext({
|
|
219
|
-
store: {
|
|
220
|
-
getState: () => ({}),
|
|
221
|
-
dispatch: () => {
|
|
222
|
-
},
|
|
223
|
-
subscribe: () => () => {
|
|
224
|
-
}
|
|
225
|
-
},
|
|
226
|
-
state: {}
|
|
227
|
-
});
|
|
228
|
-
var LifecycleEvents;
|
|
229
|
-
(function(LifecycleEvents2) {
|
|
230
|
-
LifecycleEvents2["APP_INIT"] = "app:init";
|
|
231
|
-
LifecycleEvents2["APP_MOUNTED"] = "app:mounted";
|
|
232
|
-
LifecycleEvents2["APP_UPDATED"] = "app:updated";
|
|
233
|
-
LifecycleEvents2["APP_ERROR"] = "app:error";
|
|
234
|
-
LifecycleEvents2["APP_DESTROYED"] = "app:destroyed";
|
|
235
|
-
LifecycleEvents2["COMPONENT_CREATED"] = "component:created";
|
|
236
|
-
LifecycleEvents2["COMPONENT_MOUNTED"] = "component:mounted";
|
|
237
|
-
LifecycleEvents2["COMPONENT_UPDATED"] = "component:updated";
|
|
238
|
-
LifecycleEvents2["COMPONENT_ERROR"] = "component:error";
|
|
239
|
-
LifecycleEvents2["COMPONENT_UNMOUNTED"] = "component:unmounted";
|
|
240
|
-
LifecycleEvents2["ROUTER_BEFORE_CHANGE"] = "router:before-change";
|
|
241
|
-
LifecycleEvents2["ROUTER_AFTER_CHANGE"] = "router:after-change";
|
|
242
|
-
LifecycleEvents2["ROUTER_ERROR"] = "router:error";
|
|
243
|
-
LifecycleEvents2["STORE_INITIALIZED"] = "store:initialized";
|
|
244
|
-
LifecycleEvents2["STORE_BEFORE_ACTION"] = "store:before-action";
|
|
245
|
-
LifecycleEvents2["STORE_AFTER_ACTION"] = "store:after-action";
|
|
246
|
-
LifecycleEvents2["STORE_ERROR"] = "store:error";
|
|
247
|
-
})(LifecycleEvents || (LifecycleEvents = {}));
|
|
248
113
|
|
|
249
114
|
// src/server/database.ts
|
|
250
115
|
var Database = class {
|