@quilted/rollup 0.3.1 → 0.3.3
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/CHANGELOG.md +16 -0
- package/build/esm/app.mjs +4 -5
- package/build/esm/features/async.mjs +34 -31
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/typescript/app.d.ts +2 -2
- package/build/typescript/app.d.ts.map +1 -1
- package/build/typescript/features/async.d.ts +0 -1
- package/build/typescript/features/async.d.ts.map +1 -1
- package/build/typescript/module.d.ts +1 -1
- package/package.json +3 -3
- package/source/app.ts +13 -7
- package/source/features/async.ts +124 -37
|
@@ -90,9 +90,9 @@ export interface AppBrowserOptions extends AppBaseOptions {
|
|
|
90
90
|
* ```js
|
|
91
91
|
* quiltApp({
|
|
92
92
|
* browser: {
|
|
93
|
-
*
|
|
93
|
+
* entries: {
|
|
94
94
|
* '.': './main.tsx',
|
|
95
|
-
* './
|
|
95
|
+
* './styles.css': './styles.css',
|
|
96
96
|
* },
|
|
97
97
|
* },
|
|
98
98
|
* })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../source/app.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../source/app.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../source/features/async.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAA4B,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../source/features/async.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAA4B,MAAM,QAAQ,CAAC;AAM9D,MAAM,WAAW,OAAO;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,CAAC,OAAO,EAAE;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,GAAG,MAAM,CAAC;CAChD;AAED,wBAAgB,YAAY,CAAC,EAC3B,OAAc,EACd,OAAoB,EACpB,QAAQ,EAAE,WAA6B,GACxC,GAAE,OAAY,GAAG,MAAM,CA0DvB"}
|
|
@@ -84,7 +84,7 @@ export interface ModuleAssetsOptions extends Pick<RollupNodePluginOptions, 'bund
|
|
|
84
84
|
}
|
|
85
85
|
export declare function quiltModule({ root, entry, env, assets, graphql, runtime, }?: ModuleOptions): Promise<{
|
|
86
86
|
input: {
|
|
87
|
-
[
|
|
87
|
+
[k: string]: string;
|
|
88
88
|
};
|
|
89
89
|
plugins: InputPluginOption[];
|
|
90
90
|
output: {
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"access": "public",
|
|
7
7
|
"@quilted/registry": "https://registry.npmjs.org"
|
|
8
8
|
},
|
|
9
|
-
"version": "0.3.
|
|
9
|
+
"version": "0.3.3",
|
|
10
10
|
"engines": {
|
|
11
11
|
"node": ">=20.10.0"
|
|
12
12
|
},
|
|
@@ -138,8 +138,8 @@
|
|
|
138
138
|
"@babel/preset-typescript": "^7.26.0",
|
|
139
139
|
"@mdn/browser-compat-data": "^5.6.0",
|
|
140
140
|
"@quilted/assets": "^0.1.9",
|
|
141
|
-
"@quilted/babel": "^0.2.
|
|
142
|
-
"@quilted/graphql": "^3.3.
|
|
141
|
+
"@quilted/babel": "^0.2.4",
|
|
142
|
+
"@quilted/graphql": "^3.3.9",
|
|
143
143
|
"@rollup/plugin-alias": "^5.1.0",
|
|
144
144
|
"@rollup/plugin-babel": "^6.0.4",
|
|
145
145
|
"@rollup/plugin-commonjs": "^28.0.0",
|
package/source/app.ts
CHANGED
|
@@ -139,9 +139,9 @@ export interface AppBrowserOptions extends AppBaseOptions {
|
|
|
139
139
|
* ```js
|
|
140
140
|
* quiltApp({
|
|
141
141
|
* browser: {
|
|
142
|
-
*
|
|
142
|
+
* entries: {
|
|
143
143
|
* '.': './main.tsx',
|
|
144
|
-
* './
|
|
144
|
+
* './styles.css': './styles.css',
|
|
145
145
|
* },
|
|
146
146
|
* },
|
|
147
147
|
* })
|
|
@@ -694,7 +694,17 @@ export async function quiltAppBrowserPlugins({
|
|
|
694
694
|
if (entries) {
|
|
695
695
|
for (const [name, entry] of Object.entries(entries)) {
|
|
696
696
|
if (typeof entry === 'object' && entry.inline) {
|
|
697
|
-
|
|
697
|
+
const bareName = name.startsWith('./') ? name.slice(2) : name;
|
|
698
|
+
|
|
699
|
+
inline.add(
|
|
700
|
+
bareName === '.'
|
|
701
|
+
? path
|
|
702
|
+
.basename(getSourceFromCustomEntry(entry)!)
|
|
703
|
+
.split('.')
|
|
704
|
+
.slice(0, -1)
|
|
705
|
+
.join('.')
|
|
706
|
+
: bareName,
|
|
707
|
+
);
|
|
698
708
|
}
|
|
699
709
|
}
|
|
700
710
|
}
|
|
@@ -1295,8 +1305,6 @@ export function magicModuleAppRequestRouter({
|
|
|
1295
1305
|
alias: () => sourceEntryForAppServer({entry, root}) as Promise<string>,
|
|
1296
1306
|
async source() {
|
|
1297
1307
|
return multiline`
|
|
1298
|
-
import '@quilted/quilt/globals';
|
|
1299
|
-
|
|
1300
1308
|
import {jsx} from 'preact/jsx-runtime';
|
|
1301
1309
|
import {RequestRouter} from '@quilted/quilt/request-router';
|
|
1302
1310
|
import {renderAppToHTMLResponse} from '@quilted/quilt/server';
|
|
@@ -1337,8 +1345,6 @@ export function magicModuleAppBrowserEntry({
|
|
|
1337
1345
|
const reactRootFunction = hydrate ? 'hydrate' : 'render';
|
|
1338
1346
|
|
|
1339
1347
|
return multiline`
|
|
1340
|
-
import '@quilted/quilt/globals';
|
|
1341
|
-
|
|
1342
1348
|
import {jsx} from 'preact/jsx-runtime';
|
|
1343
1349
|
import {${reactRootFunction}} from 'preact';
|
|
1344
1350
|
|
package/source/features/async.ts
CHANGED
|
@@ -5,7 +5,6 @@ import {multiline} from '../shared/strings.ts';
|
|
|
5
5
|
import MagicString from 'magic-string';
|
|
6
6
|
|
|
7
7
|
const MODULE_PREFIX = 'quilt-async-module:';
|
|
8
|
-
export const IMPORT_PREFIX = 'quilt-async-import:';
|
|
9
8
|
|
|
10
9
|
export interface Options {
|
|
11
10
|
preload?: boolean;
|
|
@@ -23,9 +22,7 @@ export function asyncModules({
|
|
|
23
22
|
async resolveId(id, importer) {
|
|
24
23
|
let prefix: string;
|
|
25
24
|
|
|
26
|
-
if (id.startsWith(
|
|
27
|
-
prefix = IMPORT_PREFIX;
|
|
28
|
-
} else if (id.startsWith(MODULE_PREFIX)) {
|
|
25
|
+
if (id.startsWith(MODULE_PREFIX)) {
|
|
29
26
|
prefix = MODULE_PREFIX;
|
|
30
27
|
} else {
|
|
31
28
|
return null;
|
|
@@ -52,23 +49,6 @@ export function asyncModules({
|
|
|
52
49
|
}
|
|
53
50
|
`;
|
|
54
51
|
|
|
55
|
-
return code;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
if (id.startsWith(`\0${IMPORT_PREFIX}`)) {
|
|
59
|
-
const imported = id.replace(`\0${IMPORT_PREFIX}`, '');
|
|
60
|
-
const moduleID = getModuleID({imported});
|
|
61
|
-
|
|
62
|
-
const code = multiline`
|
|
63
|
-
import * as AsyncModule from ${JSON.stringify(imported)};
|
|
64
|
-
|
|
65
|
-
((globalThis[Symbol.for('quilt')] ||= {}).asyncModules ||= new Map).set(${JSON.stringify(
|
|
66
|
-
moduleID,
|
|
67
|
-
)}, AsyncModule);
|
|
68
|
-
|
|
69
|
-
export default AsyncModule;
|
|
70
|
-
`;
|
|
71
|
-
|
|
72
52
|
return {
|
|
73
53
|
code,
|
|
74
54
|
meta: {
|
|
@@ -79,19 +59,15 @@ export function asyncModules({
|
|
|
79
59
|
|
|
80
60
|
return null;
|
|
81
61
|
},
|
|
82
|
-
transform: baseURL
|
|
83
|
-
? (code) =>
|
|
84
|
-
code.replace(/__QUILT_ASSETS_BASE_URL__/g, JSON.stringify(baseURL))
|
|
85
|
-
: undefined,
|
|
86
62
|
async generateBundle(options, bundle) {
|
|
87
63
|
if (preload) {
|
|
88
64
|
switch (options.format) {
|
|
89
65
|
case 'es': {
|
|
90
|
-
await preloadAsyncAssetsInESMBundle(bundle);
|
|
66
|
+
await preloadAsyncAssetsInESMBundle(bundle, {baseURL});
|
|
91
67
|
break;
|
|
92
68
|
}
|
|
93
69
|
case 'system': {
|
|
94
|
-
await preloadAsyncAssetsInSystemJSBundle(bundle);
|
|
70
|
+
await preloadAsyncAssetsInSystemJSBundle(bundle, {baseURL});
|
|
95
71
|
break;
|
|
96
72
|
}
|
|
97
73
|
}
|
|
@@ -104,7 +80,10 @@ function defaultModuleID({imported}: {imported: string}) {
|
|
|
104
80
|
return path.relative(process.cwd(), imported).replace(/[\\/]/g, '-');
|
|
105
81
|
}
|
|
106
82
|
|
|
107
|
-
async function preloadAsyncAssetsInESMBundle(
|
|
83
|
+
async function preloadAsyncAssetsInESMBundle(
|
|
84
|
+
bundle: OutputBundle,
|
|
85
|
+
{baseURL = '/'}: {baseURL?: string} = {},
|
|
86
|
+
) {
|
|
108
87
|
const {parse: parseImports} = await import('es-module-lexer');
|
|
109
88
|
|
|
110
89
|
for (const chunk of Object.values(bundle)) {
|
|
@@ -112,10 +91,10 @@ async function preloadAsyncAssetsInESMBundle(bundle: OutputBundle) {
|
|
|
112
91
|
if (chunk.dynamicImports.length === 0) continue;
|
|
113
92
|
|
|
114
93
|
const {code} = chunk;
|
|
115
|
-
|
|
116
94
|
const newCode = new MagicString(code);
|
|
117
95
|
|
|
118
96
|
const imports = (await parseImports(code))[0];
|
|
97
|
+
let hasReplacements = false;
|
|
119
98
|
|
|
120
99
|
for (const imported of imports) {
|
|
121
100
|
const {s: start, e: end, ss: importStart, d: dynamicStart} = imported;
|
|
@@ -130,11 +109,13 @@ async function preloadAsyncAssetsInESMBundle(bundle: OutputBundle) {
|
|
|
130
109
|
importSource,
|
|
131
110
|
chunk,
|
|
132
111
|
bundle,
|
|
112
|
+
{baseURL},
|
|
133
113
|
);
|
|
134
114
|
|
|
135
115
|
// The only dependency is the file itself, no need to preload
|
|
136
116
|
if (dependencies.size === 1) continue;
|
|
137
117
|
|
|
118
|
+
hasReplacements = true;
|
|
138
119
|
const originalImport = code.slice(importStart, end + 1);
|
|
139
120
|
newCode.overwrite(
|
|
140
121
|
importStart,
|
|
@@ -143,22 +124,29 @@ async function preloadAsyncAssetsInESMBundle(bundle: OutputBundle) {
|
|
|
143
124
|
);
|
|
144
125
|
}
|
|
145
126
|
|
|
127
|
+
if (hasReplacements) {
|
|
128
|
+
newCode.prepend(getPreloadHelperFunction() + '\n');
|
|
129
|
+
}
|
|
130
|
+
|
|
146
131
|
chunk.code = newCode.toString();
|
|
147
132
|
}
|
|
148
133
|
}
|
|
149
134
|
|
|
150
|
-
async function preloadAsyncAssetsInSystemJSBundle(
|
|
135
|
+
async function preloadAsyncAssetsInSystemJSBundle(
|
|
136
|
+
bundle: OutputBundle,
|
|
137
|
+
{baseURL = '/'}: {baseURL?: string} = {},
|
|
138
|
+
) {
|
|
151
139
|
for (const chunk of Object.values(bundle)) {
|
|
152
140
|
if (chunk.type !== 'chunk') continue;
|
|
153
141
|
if (chunk.dynamicImports.length === 0) continue;
|
|
154
142
|
|
|
155
143
|
const {code} = chunk;
|
|
156
|
-
|
|
157
144
|
const newCode = new MagicString(code);
|
|
158
145
|
|
|
159
146
|
const systemDynamicImportRegex = /\bmodule\.import\(([^)]*)\)/g;
|
|
160
147
|
|
|
161
148
|
let match: RegExpExecArray | null;
|
|
149
|
+
let hasReplacements = false;
|
|
162
150
|
|
|
163
151
|
while ((match = systemDynamicImportRegex.exec(code))) {
|
|
164
152
|
const [originalImport, imported] = match;
|
|
@@ -170,10 +158,12 @@ async function preloadAsyncAssetsInSystemJSBundle(bundle: OutputBundle) {
|
|
|
170
158
|
importSource,
|
|
171
159
|
chunk,
|
|
172
160
|
bundle,
|
|
161
|
+
{baseURL},
|
|
173
162
|
);
|
|
174
163
|
|
|
175
164
|
if (dependencies.size === 1) continue;
|
|
176
165
|
|
|
166
|
+
hasReplacements = true;
|
|
177
167
|
newCode.overwrite(
|
|
178
168
|
match.index,
|
|
179
169
|
match.index + originalImport!.length,
|
|
@@ -181,6 +171,10 @@ async function preloadAsyncAssetsInSystemJSBundle(bundle: OutputBundle) {
|
|
|
181
171
|
);
|
|
182
172
|
}
|
|
183
173
|
|
|
174
|
+
if (hasReplacements) {
|
|
175
|
+
newCode.prepend(getPreloadHelperFunction() + '\n');
|
|
176
|
+
}
|
|
177
|
+
|
|
184
178
|
chunk.code = newCode.toString();
|
|
185
179
|
}
|
|
186
180
|
}
|
|
@@ -189,17 +183,14 @@ function preloadContentForDependencies(
|
|
|
189
183
|
dependencies: Iterable<string>,
|
|
190
184
|
originalExpression: string,
|
|
191
185
|
) {
|
|
192
|
-
return `
|
|
193
|
-
dependencies,
|
|
194
|
-
)
|
|
195
|
-
.map((dependency) => JSON.stringify(dependency))
|
|
196
|
-
.join(',')})).then(function(){return ${originalExpression}})`;
|
|
186
|
+
return `__quilt_preload(${JSON.stringify(Array.from(dependencies))}).then(() => {return ${originalExpression}})`;
|
|
197
187
|
}
|
|
198
188
|
|
|
199
189
|
function getDependenciesForImport(
|
|
200
190
|
imported: string,
|
|
201
191
|
chunk: OutputChunk,
|
|
202
192
|
bundle: OutputBundle,
|
|
193
|
+
{baseURL = '/'}: {baseURL?: string} = {},
|
|
203
194
|
) {
|
|
204
195
|
const originalFilename = chunk.fileName;
|
|
205
196
|
const dependencies = new Set<string>();
|
|
@@ -219,7 +210,9 @@ function getDependenciesForImport(
|
|
|
219
210
|
|
|
220
211
|
if (chunk == null) return;
|
|
221
212
|
|
|
222
|
-
|
|
213
|
+
const url = `${baseURL}${baseURL.endsWith('/') ? '' : '/'}${chunk.fileName}`;
|
|
214
|
+
|
|
215
|
+
dependencies.add(url);
|
|
223
216
|
|
|
224
217
|
if (chunk.type !== 'chunk') return;
|
|
225
218
|
|
|
@@ -232,3 +225,97 @@ function getDependenciesForImport(
|
|
|
232
225
|
|
|
233
226
|
return dependencies;
|
|
234
227
|
}
|
|
228
|
+
|
|
229
|
+
function getPreloadHelperFunction({
|
|
230
|
+
type = 'module',
|
|
231
|
+
}: {type?: 'module' | 'script'} = {}) {
|
|
232
|
+
const scriptRel = JSON.stringify(
|
|
233
|
+
type === 'module' ? 'modulepreload' : 'preload',
|
|
234
|
+
);
|
|
235
|
+
|
|
236
|
+
return multiline`
|
|
237
|
+
const __quilt_preload=(()=>{const o=new Map,f=${scriptRel};class QuiltPreloadError extends Error{constructor(e,{cause:l}={}){super(\`Unable to preload \${e}\`,{cause:l}),this.source=e}}class QuiltPreloadErrorEvent extends Event{constructor(e){super("quilt:preload-error",{cancelable:!0}),this.error=e}}return function __quilt_preload(e){return e.length===0?Promise.resolve():Promise.all(e.map(s=>{const r=s.startsWith("/")?s:"/"+s;if(o.has(r))return;o.set(r,!0);const i=r.endsWith(".css");if(document.querySelector(\`link[href="\${r}"]\`)!=null)return;const t=document.createElement("link");if(i?t.rel="stylesheet":(t.as="script",t.rel=f),t.crossOrigin="",t.href=r,document.head.appendChild(t),i)return new Promise(a=>{t.addEventListener("load",()=>a()),t.addEventListener("error",h=>a(new QuiltPreloadError(r,{cause:h})))})})).then(s=>{for(const r of s)r!=null&&d(r)})};function d(n){const e=new QuiltPreloadErrorEvent(n);if(window.dispatchEvent(e),!e.defaultPrevented)throw n}})();
|
|
238
|
+
`;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
// Source for minified code above:
|
|
242
|
+
//
|
|
243
|
+
// const __quilt_preload = (() => {
|
|
244
|
+
// const SEEN = new Map();
|
|
245
|
+
// const SCRIPT_REL = 'module';
|
|
246
|
+
|
|
247
|
+
// return function __quiltPreload(dependencies) {
|
|
248
|
+
// if (dependencies.length === 0) return Promise.resolve();
|
|
249
|
+
|
|
250
|
+
// const promise = Promise.all(
|
|
251
|
+
// dependencies.map((dependency) => {
|
|
252
|
+
// const resolved = dependency.startsWith('/')
|
|
253
|
+
// ? dependency
|
|
254
|
+
// : '/' + dependency;
|
|
255
|
+
|
|
256
|
+
// if (SEEN.has(resolved)) return;
|
|
257
|
+
// SEEN.set(resolved, true);
|
|
258
|
+
|
|
259
|
+
// const isCSS = resolved.endsWith('.css');
|
|
260
|
+
|
|
261
|
+
// if (document.querySelector(`link[href="${resolved}"]`) != null) {
|
|
262
|
+
// return;
|
|
263
|
+
// }
|
|
264
|
+
|
|
265
|
+
// const link = document.createElement('link');
|
|
266
|
+
|
|
267
|
+
// if (isCSS) {
|
|
268
|
+
// link.rel = 'stylesheet';
|
|
269
|
+
// } else {
|
|
270
|
+
// link.as = 'script';
|
|
271
|
+
// link.rel = scriptRel;
|
|
272
|
+
// }
|
|
273
|
+
|
|
274
|
+
// link.crossOrigin = '';
|
|
275
|
+
// link.href = resolved;
|
|
276
|
+
// document.head.appendChild(link);
|
|
277
|
+
|
|
278
|
+
// // We will only wait for CSS
|
|
279
|
+
// if (isCSS) {
|
|
280
|
+
// return new Promise((resolve) => {
|
|
281
|
+
// link.addEventListener('load', () => resolve());
|
|
282
|
+
// link.addEventListener('error', (error) =>
|
|
283
|
+
// resolve(new PreloadError(resolved, {cause: error})),
|
|
284
|
+
// );
|
|
285
|
+
// });
|
|
286
|
+
// }
|
|
287
|
+
// }),
|
|
288
|
+
// );
|
|
289
|
+
|
|
290
|
+
// return promise.then((results) => {
|
|
291
|
+
// for (const result of results) {
|
|
292
|
+
// if (result != null) {
|
|
293
|
+
// handlePreloadError(result);
|
|
294
|
+
// }
|
|
295
|
+
// }
|
|
296
|
+
// });
|
|
297
|
+
// };
|
|
298
|
+
|
|
299
|
+
// function handlePreloadError(error) {
|
|
300
|
+
// const event = new PreloadErrorEvent(error);
|
|
301
|
+
// window.dispatchEvent(event);
|
|
302
|
+
|
|
303
|
+
// if (!event.defaultPrevented) {
|
|
304
|
+
// throw error;
|
|
305
|
+
// }
|
|
306
|
+
// }
|
|
307
|
+
|
|
308
|
+
// class PreloadError extends Error {
|
|
309
|
+
// constructor(source, {cause} = {}) {
|
|
310
|
+
// super(`Unable to preload ${source}`, {cause});
|
|
311
|
+
// this.source = source;
|
|
312
|
+
// }
|
|
313
|
+
// }
|
|
314
|
+
|
|
315
|
+
// class PreloadErrorEvent extends Event {
|
|
316
|
+
// constructor(error) {
|
|
317
|
+
// super('quilt:preload-error', {cancelable: true});
|
|
318
|
+
// this.error = error;
|
|
319
|
+
// }
|
|
320
|
+
// }
|
|
321
|
+
// })();
|