socket-function 0.63.0 → 0.64.0
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/package.json +1 -1
- package/require/RequireController.ts +13 -3
package/package.json
CHANGED
|
@@ -110,8 +110,8 @@ const resolvedHTMLFile = isNodeTrue() && (
|
|
|
110
110
|
.replace(`<script src="./require.js"></script>`, `<script>${jsFile}</script>`)
|
|
111
111
|
);
|
|
112
112
|
|
|
113
|
-
let beforeEntryText: string[] = [];
|
|
114
|
-
function injectHTMLBeforeStartup(text: string) {
|
|
113
|
+
let beforeEntryText: (string | (() => Promise<string>))[] = [];
|
|
114
|
+
function injectHTMLBeforeStartup(text: string | (() => Promise<string>)) {
|
|
115
115
|
beforeEntryText.push(text);
|
|
116
116
|
}
|
|
117
117
|
|
|
@@ -133,7 +133,15 @@ class RequireControllerBase {
|
|
|
133
133
|
let { requireCalls } = config || {};
|
|
134
134
|
let result = resolvedHTMLFile;
|
|
135
135
|
if (beforeEntryText.length > 0) {
|
|
136
|
-
|
|
136
|
+
let resolved: string[] = [];
|
|
137
|
+
for (let text of beforeEntryText) {
|
|
138
|
+
if (typeof text === "string") {
|
|
139
|
+
resolved.push(text);
|
|
140
|
+
} else {
|
|
141
|
+
resolved.push(await text());
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
result = result.replace(BEFORE_ENTRY_TEMPLATE, resolved.join("\n"));
|
|
137
145
|
}
|
|
138
146
|
if (requireCalls) {
|
|
139
147
|
async function requireAll(calls: string[]) {
|
|
@@ -150,6 +158,8 @@ class RequireControllerBase {
|
|
|
150
158
|
}
|
|
151
159
|
}
|
|
152
160
|
result = result.replace(ENTRY_TEMPLATE, `<script>\n(${requireAll.toString()})(${JSON.stringify(requireCalls)});\n</script>`);
|
|
161
|
+
} else {
|
|
162
|
+
result = result.replace(ENTRY_TEMPLATE, "");
|
|
153
163
|
}
|
|
154
164
|
return setHTTPResultHeaders(Buffer.from(result), { "Content-Type": "text/html" });
|
|
155
165
|
}
|